var check_lib = true;
var Errors = {getHTTPObject:function() {
  var http = null;
  if (typeof ActiveXObject != "undefined") {
    try {
      http = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        http = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        http = false;
      }
    }
  } else {
    if (window.XMLHttpRequest) {
      try {
        http = new XMLHttpRequest;
      } catch (e) {
        http = null;
      }
    }
  }
  return http;
}, load:function(srcUrl, callback, method) {
  var http = this.getHTTPObject();
  if (!http || !srcUrl) {
    return;
  }
  var url = srcUrl;
  url += url.indexOf("?") + 1 ? "&" : "?";
  url += "uid=" + (new Date).getTime();
  var parameters = null;
  if (method == "POST") {
    var parts = url.split("?");
    url = parts[0];
    parameters = parts[1];
  }
  http.open(method, url, true);
  if (method == "POST") {
    http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http.setRequestHeader("Content-length", parameters.length);
    http.setRequestHeader("Connection", "close");
  }
  http.onreadystatechange = function() {
    if (http.readyState == 4) {
      if (http.status == 200) {
        var result = "";
        if (http.responseText) {
          result = http.responseText;
        }
        if (callback) {
          callback(result);
        }
      }
    }
  };
  http.send(parameters);
}, handler:function(msg, url, line) {
  var error = '<b style="color:#ff0066">JavaScript Error</b>\n<br/>\n' + "Message: " + msg + "\n<br>\n" + "Url: " + url + "\n<br>\n" + "Line: " + line + "\n<br>\n";
  var error_alert = "JavaScript Error\n" + "Message: " + msg + "\n\n" + "Url: " + url + "\n\n" + "Line: " + line + "\n\n";
  if (navigator && navigator.userAgent) {
    error = error + "userAgent: " + navigator.userAgent;
  }
  var dialog = document.createElement("div");
  dialog.className = "errordialog";
  dialog.innerHTML = error;
  if (document && (document.body && document.body.appendChild)) {
    document.body.appendChild(dialog);
  } else {
    alert(error_alert);
  }
  Errors.post_error({msg:msg, url:url, line:line, userAgent:navigator.userAgent});
  return true;
}, post_error:function(params) {
  var url = "handlers/clientError.axd?";
  for (var i in params) {
    if (params.hasOwnProperty(i)) {
      url += i + "=" + encodeURI(params[i]) + "&";
    }
  }
  this.load(url, null, "POST");
}};
(function() {
  this.MooTools = {version:"1.4.5", build:"ab8ea8824dc3b24b6666867a2c4ed58ebb762cf0"};
  var typeOf = this.typeOf = function(item) {
    if (item == null) {
      return "null";
    }
    if (item.$family != null) {
      return item.$family();
    }
    if (item.nodeName) {
      if (item.nodeType == 1) {
        return "element";
      }
      if (item.nodeType == 3) {
        return/\S/.test(item.nodeValue) ? "textnode" : "whitespace";
      }
    } else {
      if (typeof item.length == "number") {
        if (item.callee) {
          return "arguments";
        }
        if ("item" in item) {
          return "collection";
        }
      }
    }
    return typeof item;
  };
  var instanceOf = this.instanceOf = function(item, object) {
    if (item == null) {
      return false;
    }
    var constructor = item.$constructor || item.constructor;
    while (constructor) {
      if (constructor === object) {
        return true;
      }
      constructor = constructor.parent;
    }
    if (!item.hasOwnProperty) {
      return false;
    }
    return item instanceof object;
  };
  var Function = this.Function;
  var enumerables = true;
  for (var i in{toString:1}) {
    enumerables = null;
  }
  if (enumerables) {
    enumerables = ["hasOwnProperty", "valueOf", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "constructor"];
  }
  Function.prototype.overloadSetter = function(usePlural) {
    var self = this;
    return function(a, b) {
      if (a == null) {
        return this;
      }
      if (usePlural || typeof a != "string") {
        for (var k in a) {
          self.call(this, k, a[k]);
        }
        if (enumerables) {
          for (var i = enumerables.length;i--;) {
            k = enumerables[i];
            if (a.hasOwnProperty(k)) {
              self.call(this, k, a[k]);
            }
          }
        }
      } else {
        self.call(this, a, b);
      }
      return this;
    };
  };
  Function.prototype.overloadGetter = function(usePlural) {
    var self = this;
    return function(a) {
      var args, result;
      if (typeof a != "string") {
        args = a;
      } else {
        if (arguments.length > 1) {
          args = arguments;
        } else {
          if (usePlural) {
            args = [a];
          }
        }
      }
      if (args) {
        result = {};
        for (var i = 0;i < args.length;i++) {
          result[args[i]] = self.call(this, args[i]);
        }
      } else {
        result = self.call(this, a);
      }
      return result;
    };
  };
  Function.prototype.extend = function(key, value) {
    this[key] = value;
  }.overloadSetter();
  Function.prototype.implement = function(key, value) {
    this.prototype[key] = value;
  }.overloadSetter();
  var slice = Array.prototype.slice;
  Function.from = function(item) {
    return typeOf(item) == "function" ? item : function() {
      return item;
    };
  };
  Array.from = function(item) {
    if (item == null) {
      return[];
    }
    return mooType.isEnumerable(item) && typeof item != "string" ? typeOf(item) == "array" ? item : slice.call(item) : [item];
  };
  Number.from = function(item) {
    var number = parseFloat(item);
    return isFinite(number) ? number : null;
  };
  String.from = function(item) {
    return item + "";
  };
  Function.implement({mHide:function() {
    this.$hidden = true;
    return this;
  }, protect:function() {
    this.$protected = true;
    return this;
  }});
  var mooType = this.mooType = this.mooType = function(name, object) {
    if (name) {
      var lower = name.toLowerCase();
      var typeCheck = function(item) {
        return typeOf(item) == lower;
      };
      mooType["is" + name] = typeCheck;
      if (object != null) {
        object.prototype.$family = function() {
          return lower;
        }.mHide();
      }
    }
    if (object == null) {
      return null;
    }
    object.extend(this);
    object.$constructor = mooType;
    object.prototype.$constructor = object;
    return object;
  };
  var toString = Object.prototype.toString;
  mooType.isEnumerable = function(item) {
    return item != null && (typeof item.length == "number" && toString.call(item) != "[object Function]");
  };
  var hooks = {};
  var hooksOf = function(object) {
    var type = typeOf(object.prototype);
    return hooks[type] || (hooks[type] = []);
  };
  var implement = function(name, method) {
    if (method && method.$hidden) {
      return;
    }
    var hooks = hooksOf(this);
    for (var i = 0;i < hooks.length;i++) {
      var hook = hooks[i];
      if (typeOf(hook) == "type") {
        implement.call(hook, name, method);
      } else {
        hook.call(this, name, method);
      }
    }
    var previous = this.prototype[name];
    if (previous == null || !previous.$protected) {
      this.prototype[name] = method;
    }
    if (this[name] == null && typeOf(method) == "function") {
      extend.call(this, name, function(item) {
        return method.apply(item, slice.call(arguments, 1));
      });
    }
  };
  var extend = function(name, method) {
    if (method && method.$hidden) {
      return;
    }
    var previous = this[name];
    if (previous == null || !previous.$protected) {
      this[name] = method;
    }
  };
  mooType.implement({implement:implement.overloadSetter(), extend:extend.overloadSetter(), alias:function(name, existing) {
    implement.call(this, name, this.prototype[existing]);
  }.overloadSetter(), mirror:function(hook) {
    hooksOf(this).push(hook);
    return this;
  }});
  new mooType("mooType", mooType);
  var force = function(name, object, methods) {
    var isType = object != Object, prototype = object.prototype;
    if (isType) {
      object = new mooType(name, object);
    }
    for (var i = 0, l = methods.length;i < l;i++) {
      var key = methods[i], generic = object[key], proto = prototype[key];
      if (generic) {
        generic.protect();
      }
      if (isType && proto) {
        object.implement(key, proto.protect());
      }
    }
    if (isType) {
      var methodsEnumerable = prototype.propertyIsEnumerable(methods[0]);
      object.forEachMethod = function(fn) {
        if (!methodsEnumerable) {
          for (var i = 0, l = methods.length;i < l;i++) {
            fn.call(prototype, prototype[methods[i]], methods[i]);
          }
        }
        for (var key in prototype) {
          fn.call(prototype, prototype[key], key);
        }
      };
    }
    return force;
  };
  force("String", String, ["charAt", "charCodeAt", "concat", "indexOf", "lastIndexOf", "match", "quote", "replace", "search", "slice", "split", "substr", "substring", "trim", "toLowerCase", "toUpperCase"])("Array", Array, ["pop", "push", "reverse", "shift", "sort", "splice", "unshift", "concat", "join", "slice", "indexOf", "lastIndexOf", "filter", "forEach", "every", "map", "some", "reduce", "reduceRight"])("Number", Number, ["toExponential", "toFixed", "toLocaleString", "toPrecision"])("Function", 
  Function, ["apply", "call", "bind"])("RegExp", RegExp, ["exec", "test"])("Object", Object, ["create", "defineProperty", "defineProperties", "keys", "getPrototypeOf", "getOwnPropertyDescriptor", "getOwnPropertyNames", "preventExtensions", "isExtensible", "seal", "isSealed", "freeze", "isFrozen"])("Date", Date, ["now"]);
  Object.extend = extend.overloadSetter();
  Date.extend("now", function() {
    return+new Date;
  });
  new mooType("Boolean", Boolean);
  Number.prototype.$family = function() {
    return isFinite(this) ? "number" : "null";
  }.mHide();
  Number.extend("random", function(min, max) {
    return Math.floor(Math.random() * (max - min + 1) + min);
  });
  var hasOwnProperty = Object.prototype.hasOwnProperty;
  Object.extend("forEach", function(object, fn, bind) {
    for (var key in object) {
      if (hasOwnProperty.call(object, key)) {
        fn.call(bind, object[key], key, object);
      }
    }
  });
  Object.each = Object.forEach;
  Array.implement({forEach:function(fn, bind) {
    for (var i = 0, l = this.length;i < l;i++) {
      if (i in this) {
        fn.call(bind, this[i], i, this);
      }
    }
  }, each:function(fn, bind) {
    Array.forEach(this, fn, bind);
    return this;
  }});
  var cloneOf = function(item) {
    switch(typeOf(item)) {
      case "array":
        return item.clone();
      case "object":
        return Object.clone(item);
      default:
        return item;
    }
  };
  Array.implement("clone", function() {
    var i = this.length, clone = new Array(i);
    while (i--) {
      clone[i] = cloneOf(this[i]);
    }
    return clone;
  });
  var mergeOne = function(source, key, current) {
    switch(typeOf(current)) {
      case "object":
        if (typeOf(source[key]) == "object") {
          Object.merge(source[key], current);
        } else {
          source[key] = Object.clone(current);
        }
        break;
      case "array":
        source[key] = current.clone();
        break;
      default:
        source[key] = current;
    }
    return source;
  };
  Object.extend({merge:function(source, k, v) {
    if (typeOf(k) == "string") {
      return mergeOne(source, k, v);
    }
    for (var i = 1, l = arguments.length;i < l;i++) {
      var object = arguments[i];
      for (var key in object) {
        mergeOne(source, key, object[key]);
      }
    }
    return source;
  }, clone:function(object) {
    var clone = {};
    for (var key in object) {
      clone[key] = cloneOf(object[key]);
    }
    return clone;
  }, append:function(original) {
    for (var i = 1, l = arguments.length;i < l;i++) {
      var extended = arguments[i] || {};
      for (var key in extended) {
        original[key] = extended[key];
      }
    }
    return original;
  }});
  ["Object", "WhiteSpace", "TextNode", "Collection", "Arguments"].each(function(name) {
    new mooType(name);
  });
  var UID = Date.now();
  String.extend("uniqueID", function() {
    return(UID++).toString(36);
  });
})();
Array.implement({every:function(fn, bind) {
  for (var i = 0, l = this.length >>> 0;i < l;i++) {
    if (i in this && !fn.call(bind, this[i], i, this)) {
      return false;
    }
  }
  return true;
}, filter:function(fn, bind) {
  var results = [];
  for (var value, i = 0, l = this.length >>> 0;i < l;i++) {
    if (i in this) {
      value = this[i];
      if (fn.call(bind, value, i, this)) {
        results.push(value);
      }
    }
  }
  return results;
}, indexOf:function(item, from) {
  var length = this.length >>> 0;
  for (var i = from < 0 ? Math.max(0, length + from) : from || 0;i < length;i++) {
    if (this[i] === item) {
      return i;
    }
  }
  return-1;
}, map:function(fn, bind) {
  var length = this.length >>> 0, results = Array(length);
  for (var i = 0;i < length;i++) {
    if (i in this) {
      results[i] = fn.call(bind, this[i], i, this);
    }
  }
  return results;
}, some:function(fn, bind) {
  for (var i = 0, l = this.length >>> 0;i < l;i++) {
    if (i in this && fn.call(bind, this[i], i, this)) {
      return true;
    }
  }
  return false;
}, clean:function() {
  return this.filter(function(item) {
    return item != null;
  });
}, invoke:function(methodName) {
  var args = Array.slice(arguments, 1);
  return this.map(function(item) {
    return item[methodName].apply(item, args);
  });
}, associate:function(keys) {
  var obj = {}, length = Math.min(this.length, keys.length);
  for (var i = 0;i < length;i++) {
    obj[keys[i]] = this[i];
  }
  return obj;
}, link:function(object) {
  var result = {};
  for (var i = 0, l = this.length;i < l;i++) {
    for (var key in object) {
      if (object[key](this[i])) {
        result[key] = this[i];
        delete object[key];
        break;
      }
    }
  }
  return result;
}, contains:function(item, from) {
  return this.indexOf(item, from) != -1;
}, append:function(array) {
  this.push.apply(this, array);
  return this;
}, getLast:function() {
  return this.length ? this[this.length - 1] : null;
}, getRandom:function() {
  return this.length ? this[Number.random(0, this.length - 1)] : null;
}, include:function(item) {
  if (!this.contains(item)) {
    this.push(item);
  }
  return this;
}, combine:function(array) {
  for (var i = 0, l = array.length;i < l;i++) {
    this.include(array[i]);
  }
  return this;
}, erase:function(item) {
  for (var i = this.length;i--;) {
    if (this[i] === item) {
      this.splice(i, 1);
    }
  }
  return this;
}, empty:function() {
  this.length = 0;
  return this;
}, flatten:function() {
  var array = [];
  for (var i = 0, l = this.length;i < l;i++) {
    var type = typeOf(this[i]);
    if (type == "null") {
      continue;
    }
    array = array.concat(type == "array" || (type == "collection" || (type == "arguments" || instanceOf(this[i], Array))) ? Array.flatten(this[i]) : this[i]);
  }
  return array;
}, pick:function() {
  for (var i = 0, l = this.length;i < l;i++) {
    if (this[i] != null) {
      return this[i];
    }
  }
  return null;
}, hexToRgb:function(array) {
  if (this.length != 3) {
    return null;
  }
  var rgb = this.map(function(value) {
    if (value.length == 1) {
      value += value;
    }
    return value.toInt(16);
  });
  return array ? rgb : "rgb(" + rgb + ")";
}, rgbToHex:function(array) {
  if (this.length < 3) {
    return null;
  }
  if (this.length == 4 && (this[3] == 0 && !array)) {
    return "transparent";
  }
  var hex = [];
  for (var i = 0;i < 3;i++) {
    var bit = (this[i] - 0).toString(16);
    hex.push(bit.length == 1 ? "0" + bit : bit);
  }
  return array ? hex : "#" + hex.join("");
}});
String.implement({test:function(regex, params) {
  return(typeOf(regex) == "regexp" ? regex : new RegExp("" + regex, params)).test(this);
}, contains:function(string, separator) {
  return separator ? (separator + this + separator).indexOf(separator + string + separator) > -1 : String(this).indexOf(string) > -1;
}, trim:function() {
  return String(this).replace(/^\s+|\s+$/g, "");
}, clean:function() {
  return String(this).replace(/\s+/g, " ").trim();
}, camelCase:function() {
  return String(this).replace(/-\D/g, function(match) {
    return match.charAt(1).toUpperCase();
  });
}, hyphenate:function() {
  return String(this).replace(/[A-Z]/g, function(match) {
    return "-" + match.charAt(0).toLowerCase();
  });
}, capitalize:function() {
  return String(this).replace(/\b[a-z]/g, function(match) {
    return match.toUpperCase();
  });
}, escapeRegExp:function() {
  return String(this).replace(/([-.*+?^${}()|[\]\/\\])/g, "\\$1");
}, toInt:function(base) {
  return parseInt(this, base || 10);
}, toFloat:function() {
  return parseFloat(this);
}, hexToRgb:function(array) {
  var hex = String(this).match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);
  return hex ? hex.slice(1).hexToRgb(array) : null;
}, rgbToHex:function(array) {
  var rgb = String(this).match(/\d{1,3}/g);
  return rgb ? rgb.rgbToHex(array) : null;
}, substitute:function(object, regexp) {
  return String(this).replace(regexp || /\\?\{([^{}]+)\}/g, function(match, name) {
    if (match.charAt(0) == "\\") {
      return match.slice(1);
    }
    return object[name] != null ? object[name] : "";
  });
}});
Function.extend({attempt:function() {
  for (var i = 0, l = arguments.length;i < l;i++) {
    try {
      return arguments[i]();
    } catch (e) {
    }
  }
  return null;
}});
Function.implement({attempt:function(args, bind) {
  try {
    return this.apply(bind, Array.from(args));
  } catch (e) {
  }
  return null;
}, bind:function(that) {
  var self = this, args = arguments.length > 1 ? Array.slice(arguments, 1) : null, F = function() {
  };
  var bound = function() {
    var context = that, length = arguments.length;
    if (this instanceof bound) {
      F.prototype = self.prototype;
      context = new F;
    }
    var result = !args && !length ? self.call(context) : self.apply(context, args && length ? args.concat(Array.slice(arguments)) : args || arguments);
    return context == that ? result : context;
  };
  return bound;
}, pass:function(args, bind) {
  var self = this;
  if (args != null) {
    args = Array.from(args);
  }
  return function() {
    return self.apply(bind, args || arguments);
  };
}, delay:function(delay, bind, args) {
  return setTimeout(this.pass(args == null ? [] : args, bind), delay);
}, periodical:function(periodical, bind, args) {
  return setInterval(this.pass(args == null ? [] : args, bind), periodical);
}});
Number.implement({limit:function(min, max) {
  return Math.min(max, Math.max(min, this));
}, round:function(precision) {
  precision = Math.pow(10, precision || 0).toFixed(precision < 0 ? -precision : 0);
  return Math.round(this * precision) / precision;
}, times:function(fn, bind) {
  for (var i = 0;i < this;i++) {
    fn.call(bind, i, this);
  }
}, toFloat:function() {
  return parseFloat(this);
}, toInt:function(base) {
  return parseInt(this, base || 10);
}});
Number.alias("each", "times");
(function(math) {
  var methods = {};
  math.each(function(name) {
    if (!Number[name]) {
      methods[name] = function() {
        return Math[name].apply(null, [this].concat(Array.from(arguments)));
      };
    }
  });
  Number.implement(methods);
})(["abs", "acos", "asin", "atan", "atan2", "ceil", "cos", "exp", "floor", "log", "max", "min", "pow", "sin", "sqrt", "tan"]);
(function() {
  var Class = this.Class = new mooType("Class", function(params) {
    if (instanceOf(params, Function)) {
      params = {initialize:params};
    }
    var newClass = function() {
      reset(this);
      if (newClass.$prototyping) {
        return this;
      }
      this.$caller = null;
      var value = this.initialize ? this.initialize.apply(this, arguments) : this;
      this.$caller = this.caller = null;
      return value;
    }.extend(this).implement(params);
    newClass.$constructor = Class;
    newClass.prototype.$constructor = newClass;
    newClass.prototype.parent = parent;
    return newClass;
  });
  var parent = function() {
    if (!this.$caller) {
      throw new Error('The method "parent" cannot be called.');
    }
    var name = this.$caller.$name, parent = this.$caller.$owner.parent, previous = parent ? parent.prototype[name] : null;
    if (!previous) {
      throw new Error('The method "' + name + '" has no parent.');
    }
    return previous.apply(this, arguments);
  };
  var reset = function(object) {
    for (var key in object) {
      var value = object[key];
      switch(typeOf(value)) {
        case "object":
          var F = function() {
          };
          F.prototype = value;
          object[key] = reset(new F);
          break;
        case "array":
          object[key] = value.clone();
          break;
      }
    }
    return object;
  };
  var wrap = function(self, key, method) {
    if (method.$origin) {
      method = method.$origin;
    }
    var wrapper = function() {
      if (method.$protected && this.$caller == null) {
        throw new Error('The method "' + key + '" cannot be called.');
      }
      var caller = this.caller, current = this.$caller;
      this.caller = current;
      this.$caller = wrapper;
      var result = method.apply(this, arguments);
      this.$caller = current;
      this.caller = caller;
      return result;
    }.extend({$owner:self, $origin:method, $name:key});
    return wrapper;
  };
  var implement = function(key, value, retain) {
    if (Class.Mutators.hasOwnProperty(key)) {
      value = Class.Mutators[key].call(this, value);
      if (value == null) {
        return this;
      }
    }
    if (typeOf(value) == "function") {
      if (value.$hidden) {
        return this;
      }
      this.prototype[key] = retain ? value : wrap(this, key, value);
    } else {
      Object.merge(this.prototype, key, value);
    }
    return this;
  };
  var getInstance = function(klass) {
    klass.$prototyping = true;
    var proto = new klass;
    delete klass.$prototyping;
    return proto;
  };
  Class.implement("implement", implement.overloadSetter());
  Class.Mutators = {Extends:function(parent) {
    this.parent = parent;
    this.prototype = getInstance(parent);
  }, Implements:function(items) {
    Array.from(items).each(function(item) {
      var instance = new item;
      for (var key in instance) {
        implement.call(this, key, instance[key], true);
      }
    }, this);
  }};
})();
(function($) {
  $.support.touch = "ontouchend" in document;
  if (!$.support.touch) {
    return;
  }
  var mouseProto = $.ui.mouse.prototype;
  var _mouseInit = mouseProto._mouseInit;
  var touchHandled;
  function simulateMouseEvent(event, simulatedType) {
    if (event.originalEvent.touches.length > 1) {
      return;
    }
    event.preventDefault();
    var t = event.originalEvent.changedTouches[0];
    var simulatedEvent = document.createEvent("MouseEvents");
    simulatedEvent.initMouseEvent(simulatedType, true, true, window, 1, t.screenX, t.screenY, t.clientX, t.clientY, false, false, false, false, 0, null);
    event.target.dispatchEvent(simulatedEvent);
  }
  mouseProto._touchStart = function(event) {
    var me = this;
    if (touchHandled || !me._mouseCapture(event.originalEvent.changedTouches[0])) {
      return;
    }
    touchHandled = true;
    me._touchMoved = false;
    simulateMouseEvent(event, "mouseover");
    simulateMouseEvent(event, "mousemove");
    simulateMouseEvent(event, "mousedown");
  };
  mouseProto._touchMove = function(event) {
    if (!touchHandled) {
      return;
    }
    this._touchMoved = true;
    simulateMouseEvent(event, "mousemove");
  };
  mouseProto._touchEnd = function(event) {
    if (!touchHandled) {
      return;
    }
    simulateMouseEvent(event, "mouseup");
    simulateMouseEvent(event, "mouseout");
    if (!this._touchMoved) {
      simulateMouseEvent(event, "click");
    }
    touchHandled = false;
  };
  mouseProto._mouseInit = function() {
    var me = this;
    me.element.bind("touchstart", $.proxy(me, "_touchStart")).bind("touchmove", $.proxy(me, "_touchMove")).bind("touchend", $.proxy(me, "_touchEnd"));
    _mouseInit.call(me);
  };
})(jQuery);
var _global_timer_ = null;
(function($) {
  $.fn.longClickContextMenu = function() {
    $(this).longclick(function(e) {
      var t = e.currentTarget;
      var o = $(e.currentTarget).offset();
      if (e.pageX - o.left > t.clientWidth) {
        return;
      }
      var element = $(e.target);
      element.contextMenu({x:e.clientX, y:e.clientY});
    });
  };
  var $_fn_click = $.fn.click;
  $.fn.click = function click(duration, handler) {
    if (!handler) {
      return $_fn_click.apply(this, arguments);
    }
    return $(this).bind(type, handler);
  };
  $.fn.longclick = function longclick() {
    var args = [].splice.call(arguments, 0), handler = args.pop(), duration = args.pop(), $this = $(this);
    return handler ? $this.click(duration, handler) : $this.trigger(type);
  };
  $.longclick = {duration:1E3};
  $.event.special.longclick = {setup:function(data, namespaces) {
    if (!/iphone|ipad|ipod/i.test(navigator.userAgent)) {
      $(this).bind(_mousedown_, schedule).bind([_mousemove_, _mouseup_, _mouseout_, _contextmenu_].join(" "), annul).bind(_click_, click);
    } else {
      touch_enabled(this).bind(_touchstart_, schedule).bind([_touchend_, _touchmove_, _touchcancel_].join(" "), annul).bind(_click_, click).css({WebkitUserSelect:"none"});
    }
  }, teardown:function(namespaces) {
    $(this).unbind(namespace);
  }};
  function touch_enabled(element) {
    $.each("touchstart touchmove touchend touchcancel".split(/ /), function bind(ix, it) {
      element.addEventListener(it, function trigger_jquery_event(event) {
        $(element).trigger(it);
      }, false);
    });
    return $(element);
  }
  function schedule(event) {
    if (_global_timer_) {
      return;
    }
    var element = this;
    var args = arguments;
    $(this).data(_fired_, false);
    _global_timer_ = setTimeout(scheduled, $.longclick.duration);
    function scheduled() {
      $(element).data(_fired_, true);
      event.type = type;
      jQuery.event.dispatch.apply(element, args);
    }
  }
  function annul(event) {
    if (_global_timer_) {
      clearTimeout(_global_timer_);
      _global_timer_ = null;
    }
  }
  function click(event) {
    if ($(this).data(_fired_)) {
      return event.stopImmediatePropagation() || false;
    }
  }
  var type = "longclick";
  var namespace = "." + type;
  var _mousedown_ = "mousedown" + namespace;
  var _click_ = "click" + namespace;
  var _mousemove_ = "mousemove" + namespace;
  var _mouseup_ = "mouseup" + namespace;
  var _mouseout_ = "mouseout" + namespace;
  var _contextmenu_ = "contextmenu" + namespace;
  var _touchstart_ = "touchstart" + namespace;
  var _touchend_ = "touchend" + namespace;
  var _touchmove_ = "touchmove" + namespace;
  var _touchcancel_ = "touchcancel" + namespace;
  var _duration_ = "duration" + namespace;
  var _timer_ = "timer" + namespace;
  var _fired_ = "fired" + namespace;
})(jQuery);
(function($) {
  $.fn.paginate = function(options) {
    var opts = $.extend({}, $.fn.paginate.defaults, options);
    return this.each(function() {
      $this = $(this);
      var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
      var selectedpage = o.start;
      $.fn.draw(o, $this, selectedpage);
    });
  };
  var outsidewidth_tmp = 0;
  var insidewidth = 0;
  var bName = navigator.appName;
  var bVer = navigator.appVersion;
  if (bVer.indexOf("MSIE 7.0") > 0) {
    var ver = "ie7"
  }
  $.fn.paginate.defaults = {count:5, start:12, display:5, border:true, border_color:"#fff", text_color:"#8cc59d", background_color:"black", border_hover_color:"#fff", text_hover_color:"#fff", background_hover_color:"#fff", rotate:true, images:true, mouse:"slide", onChange:function() {
    return false;
  }};
  $.fn.draw = function(o, obj, selectedpage) {
    if (o.display > o.count) {
      o.display = o.count;
    }
    $this.empty();
    if (o.images) {
      var spreviousclass = "jPag-sprevious-img";
      var previousclass = "jPag-previous-img";
      var snextclass = "jPag-snext-img";
      var nextclass = "jPag-next-img";
    } else {
      var spreviousclass = "jPag-sprevious";
      var previousclass = "jPag-previous";
      var snextclass = "jPag-snext";
      var nextclass = "jPag-next";
    }
    if (o.rotate) {
      var _rotleft = $("<div>&lt;</div>").jQButton({icons:{primary:"ui-icon-carat-1-w"}, text:false})
    }
    $this.html('<div id="wrapper1">' + '<div id="wrapper2">' + '<div id="maincol">' + '<div id="leftcol"></div>' + '<div id="rightcol"></div>' + '<div id="centercol"></div>' + "</div>" + "</div>" + "</div>");
    var _divwrapleft = $("#leftcol").addClass("jPag-control-back");
    _divwrapleft.append(_rotleft);
    var _ulwrapdiv = $('<table cellpadding="0" cellspacing="0">').css("overflow", "hidden");
    var _ul = $("<tr>").addClass("jPag-pages");
    var c = (o.display - 1) / 2;
    var first = selectedpage - c;
    var selobj;
    for (var i = 0;i < o.count;i++) {
      var val = i + 1;
      if (val == selectedpage) {
        var _obj = $('<td class="li">').html('<span class="jPag-current">' + val + "</span>");
        selobj = _obj;
        _ul.append(_obj);
      } else {
        var _obj = $('<td class="li">').html("<a>" + val + "</a>");
        _ul.append(_obj);
      }
    }
    _ulwrapdiv.append(_ul);
    if (o.rotate) {
      var _rotright = $("<div>&gt;</div>").jQButton({icons:{primary:"ui-icon-carat-1-e"}, text:false})
    }
    var _divwrapright = $("#rightcol").addClass("jPag-control-front");
    _divwrapright.append(_rotright);
    $("#centercol").append(_ulwrapdiv);
    var _outer = $("#centercol");
    var test_interval = null;
    function hideArrow() {
      $("#leftcol").hide();
      $("#rightcol").hide();
    }
    function showArrow() {
      $("#leftcol").show();
      $("#rightcol").show();
    }
    function testWidth() {
      if (_outer.width() == 0) {
        return;
      }
      clearInterval(test_interval);
      if (_ulwrapdiv.width() <= _outer.width()) {
        hideArrow();
      } else {
        showArrow();
      }
    }
    if (_outer.width() == 0) {
      test_interval = setInterval(testWidth, 500);
    } else {
      testWidth();
    }
    $this.addClass("jPaginate");
    if (!o.border) {
      if (o.background_color == "none") {
        var a_css = {"color":o.text_color}
      } else {
        var a_css = {"color":o.text_color, "background-color":o.background_color}
      }
      if (o.background_hover_color == "none") {
        var hover_css = {"color":o.text_hover_color}
      } else {
        var hover_css = {"color":o.text_hover_color, "background-color":o.background_hover_color}
      }
    } else {
      if (o.background_color == "none") {
        var a_css = {"color":o.text_color, "border":"1px solid " + o.border_color}
      } else {
        var a_css = {"color":o.text_color, "background-color":o.background_color, "border":"1px solid " + o.border_color}
      }
      if (o.background_hover_color == "none") {
        var hover_css = {"color":o.text_hover_color, "border":"1px solid " + o.border_hover_color}
      } else {
        var hover_css = {"color":o.text_hover_color, "background-color":o.background_hover_color, "border":"1px solid " + o.border_hover_color}
      }
    }
    $.fn.applystyle(o, $this, a_css, hover_css, _ul, _ulwrapdiv, _divwrapright);
    var outsidewidth = outsidewidth_tmp - 1;
    if (ver == "ie7") {
    } else {
    }
    if (o.mouse == "press") {
      _rotright.mousedown(function() {
        thumbs_mouse_interval = setInterval(function() {
          var left = _ulwrapdiv.parent().scrollLeft() + 5;
          _ulwrapdiv.parent().scrollLeft(left);
        }, 20);
      }).mouseup(function() {
        clearInterval(thumbs_mouse_interval);
      });
      _rotleft.mousedown(function() {
        thumbs_mouse_interval = setInterval(function() {
          var left = _ulwrapdiv.parent().scrollLeft() - 5;
          _ulwrapdiv.parent().scrollLeft(left);
        }, 20);
      }).mouseup(function() {
        clearInterval(thumbs_mouse_interval);
      });
    }
    _ulwrapdiv.find(".li").click(function(e) {
      selobj.html("<a>" + selobj.find(".jPag-current").html() + "</a>");
      var currval = $(this).find("a").html();
      $(this).html('<span class="jPag-current">' + currval + "</span>");
      selobj = $(this);
      $.fn.applystyle(o, $(this).parent().parent().parent(), a_css, hover_css, _ul, _ulwrapdiv, _divwrapright);
      var left = this.offsetLeft / 2;
      var left2 = _ulwrapdiv.scrollLeft() + left;
      var tmp = left - outsidewidth / 2;
      if (ver == "ie7") {
        _ulwrapdiv.animate({scrollLeft:left + tmp + 52 + "px"});
      } else {
        _ulwrapdiv.animate({scrollLeft:left + tmp + "px"});
      }
      o.onChange(currval);
    });
    var last = _ulwrapdiv.find(".li").eq(o.start - 1);
    last.attr("id", "tmp");
    var left = document.getElementById("tmp").offsetLeft / 2;
    last.removeAttr("id");
    var tmp = left - outsidewidth / 2;
    if (ver == "ie7") {
      _ulwrapdiv.animate({scrollLeft:left + tmp + 52 + "px"});
    } else {
      _ulwrapdiv.animate({scrollLeft:left + tmp + "px"});
    }
  };
  $.fn.applystyle = function(o, obj, a_css, hover_css, _ul, _ulwrapdiv, _divwrapright) {
    obj.find("a").css(a_css);
    obj.find("span.jPag-current").css(hover_css);
    obj.find("a").hover(function() {
      $(this).css(hover_css);
    }, function() {
      $(this).css(a_css);
    });
    insidewidth = 0;
    obj.find(".li").each(function(i, n) {
      if (i == o.display - 1) {
        outsidewidth_tmp = this.offsetLeft + this.offsetWidth;
      }
      insidewidth += this.offsetWidth;
    });
    insidewidth += 3;
  };
})(jQuery);
(function($) {
  $.extend({debounce:function(fn, timeout, ctx, invokeAsap) {
    var timer;
    return function() {
      var args = arguments;
      ctx = ctx || this;
      invokeAsap && (!timer && fn.apply(ctx, args));
      clearTimeout(timer);
      timer = setTimeout(function() {
        !invokeAsap && fn.apply(ctx, args);
        timer = null;
      }, timeout);
    };
  }, throttle:function(fn, timeout, ctx) {
    var timer, args, needInvoke;
    return function() {
      args = arguments;
      needInvoke = true;
      ctx = ctx || this;
      if (!timer) {
        (function() {
          if (needInvoke) {
            fn.apply(ctx, args);
            needInvoke = false;
            timer = setTimeout(arguments.callee, timeout);
          } else {
            timer = null;
          }
        })();
      }
    };
  }});
})(jQuery);
(function($) {
  var strings = {strConversion:{__repr:function(i) {
    switch(this.__getType(i)) {
      case "array":
      ;
      case "date":
      ;
      case "number":
        return i.toString();
      case "object":
        var o = [];
        for (x = 0;x < i.length;i++) {
          o.push(i + ": " + this.__repr(i[x]));
        }
        return o.join(", ");
      case "string":
        return i;
      default:
        return i;
    }
  }, __getType:function(i) {
    if (!i || !i.constructor) {
      return typeof i;
    }
    var match = i.constructor.toString().match(/Array|Number|String|Object|Date/);
    return match && match[0].toLowerCase() || typeof i;
  }, __pad:function(str, l, s, t) {
    var p = s || " ";
    var o = str;
    if (l - str.length > 0) {
      o = (new Array(Math.ceil(l / p.length))).join(p).substr(0, t = !t ? l : t == 1 ? 0 : Math.ceil(l / 2)) + str + p.substr(0, l - t);
    }
    return o;
  }, __getInput:function(arg, args) {
    var key = arg.getKey();
    switch(this.__getType(args)) {
      case "object":
        var keys = key.split(".");
        var obj = args;
        for (var subkey = 0;subkey < keys.length;subkey++) {
          obj = obj[keys[subkey]];
        }
        if (typeof obj != "undefined") {
          if (strings.strConversion.__getType(obj) == "array") {
            return arg.getFormat().match(/\.\*/) && obj[1] || obj;
          }
          return obj;
        } else {
        }
        break;
      case "array":
        key = parseInt(key, 10);
        if (arg.getFormat().match(/\.\*/) && typeof args[key + 1] != "undefined") {
          return args[key + 1];
        } else {
          if (typeof args[key] != "undefined") {
            return args[key];
          } else {
            return key;
          }
        }
        break;
    }
    return "{" + key + "}";
  }, __formatToken:function(token, args) {
    var arg = new Argument(token, args);
    return strings.strConversion[arg.getFormat().slice(-1)](this.__getInput(arg, args), arg);
  }, d:function(input, arg) {
    var o = parseInt(input, 10);
    var p = arg.getPaddingLength();
    if (p) {
      return this.__pad(o.toString(), p, arg.getPaddingString(), 0);
    } else {
      return o;
    }
  }, i:function(input, args) {
    return this.d(input, args);
  }, o:function(input, arg) {
    var o = input.toString(8);
    if (arg.isAlternate()) {
      o = this.__pad(o, o.length + 1, "0", 0);
    }
    return this.__pad(o, arg.getPaddingLength(), arg.getPaddingString(), 0);
  }, u:function(input, args) {
    return Math.abs(this.d(input, args));
  }, x:function(input, arg) {
    var o = parseInt(input, 10).toString(16);
    o = this.__pad(o, arg.getPaddingLength(), arg.getPaddingString(), 0);
    return arg.isAlternate() ? "0x" + o : o;
  }, X:function(input, arg) {
    return this.x(input, arg).toUpperCase();
  }, e:function(input, arg) {
    return parseFloat(input, 10).toExponential(arg.getPrecision());
  }, E:function(input, arg) {
    return this.e(input, arg).toUpperCase();
  }, f:function(input, arg) {
    return this.__pad(parseFloat(input, 10).toFixed(arg.getPrecision()), arg.getPaddingLength(), arg.getPaddingString(), 0);
  }, F:function(input, args) {
    return this.f(input, args);
  }, g:function(input, arg) {
    var o = parseFloat(input, 10);
    return o.toString().length > 6 ? Math.round(o.toExponential(arg.getPrecision())) : o;
  }, G:function(input, args) {
    return this.g(input, args);
  }, c:function(input, args) {
    var match = input.match(/\w|\d/);
    return match && match[0] || "";
  }, r:function(input, args) {
    return this.__repr(input);
  }, s:function(input, args) {
    return input.toString && input.toString() || "" + input;
  }}, format:function(str, args) {
    var end = 0;
    var start = 0;
    var match = false;
    var buffer = [];
    var token = "";
    var tmp = (str || "").split("");
    for (start = 0;start < tmp.length;start++) {
      if (tmp[start] == "{" && tmp[start + 1] != "{") {
        end = str.indexOf("}", start);
        token = tmp.slice(start + 1, end).join("");
        buffer.push(strings.strConversion.__formatToken(token, typeof arguments[1] != "object" ? arguments2Array(arguments, 2) : args || []));
      } else {
        if (start > end || buffer.length < 1) {
          buffer.push(tmp[start]);
        }
      }
    }
    return buffer.length > 1 ? buffer.join("") : buffer[0];
  }, calc:function(str, args) {
    return eval(format(str, args));
  }, repeat:function(s, n) {
    return(new Array(n + 1)).join(s);
  }, UTF8encode:function(s) {
    return unescape(encodeURIComponent(s));
  }, UTF8decode:function(s) {
    return decodeURIComponent(escape(s));
  }, tpl:function() {
    var out = "", render = true;
    if (arguments.length == 2 && $.isArray(arguments[1])) {
      this[arguments[0]] = arguments[1].join("");
      return jQuery;
    }
    if (arguments.length == 2 && $.isString(arguments[1])) {
      this[arguments[0]] = arguments[1];
      return jQuery;
    }
    if (arguments.length == 1) {
      return $(this[arguments[0]]);
    }
    if (arguments.length == 2 && arguments[1] == false) {
      return this[arguments[0]];
    }
    if (arguments.length == 2 && $.isObject(arguments[1])) {
      return $($.format(this[arguments[0]], arguments[1]));
    }
    if (arguments.length == 3 && $.isObject(arguments[1])) {
      return arguments[2] == true ? $.format(this[arguments[0]], arguments[1]) : $($.format(this[arguments[0]], arguments[1]));
    }
  }};
  var Argument = function(arg, args) {
    this.__arg = arg;
    this.__args = args;
    this.__max_precision = parseFloat("1." + (new Array(32)).join("1"), 10).toString().length - 3;
    this.__def_precision = 6;
    this.getString = function() {
      return this.__arg;
    };
    this.getKey = function() {
      return this.__arg.split(":")[0];
    };
    this.getFormat = function() {
      var match = this.getString().split(":");
      return match && match[1] ? match[1] : "s";
    };
    this.getPrecision = function() {
      var match = this.getFormat().match(/\.(\d+|\*)/g);
      if (!match) {
        return this.__def_precision;
      } else {
        match = match[0].slice(1);
        if (match != "*") {
          return parseInt(match, 10);
        } else {
          if (strings.strConversion.__getType(this.__args) == "array") {
            return this.__args[1] && this.__args[0] || this.__def_precision;
          } else {
            if (strings.strConversion.__getType(this.__args) == "object") {
              return this.__args[this.getKey()] && this.__args[this.getKey()][0] || this.__def_precision;
            } else {
              return this.__def_precision;
            }
          }
        }
      }
    };
    this.getPaddingLength = function() {
      var match = false;
      if (this.isAlternate()) {
        match = this.getString().match(/0?#0?(\d+)/);
        if (match && match[1]) {
          return parseInt(match[1], 10);
        }
      }
      match = this.getString().match(/(0|\.)(\d+|\*)/g);
      return match && parseInt(match[0].slice(1), 10) || 0;
    };
    this.getPaddingString = function() {
      var o = "";
      if (this.isAlternate()) {
        o = " ";
      }
      if (this.getFormat().match(/#0|0#|^0|\.\d+/)) {
        o = "0";
      }
      return o;
    };
    this.getFlags = function() {
      var match = this.getString().matc(/^(0|\#|\-|\+|\s)+/);
      return match && match[0].split("") || [];
    };
    this.isAlternate = function() {
      return!!this.getFormat().match(/^0?#/);
    };
  };
  var arguments2Array = function(args, shift) {
    var o = [];
    for (l = args.length, x = (shift || 0) - 1;x < l;x++) {
      o.push(args[x]);
    }
    return o;
  };
  $.extend(strings);
})(jQuery);
(function($) {
  $.toJSON = function(o) {
    if (typeof JSON == "object" && JSON.stringify) {
      return JSON.stringify(o);
    }
    var type = typeof o;
    if (o === null) {
      return "null";
    }
    if (type == "undefined") {
      return undefined;
    }
    if (type == "number" || type == "boolean") {
      return o + "";
    }
    if (type == "string") {
      return $.quoteString(o);
    }
    if (type == "object") {
      if (typeof o.toJSON == "function") {
        return $.toJSON(o.toJSON());
      }
      if (o.constructor === Date) {
        var month = o.getUTCMonth() + 1;
        if (month < 10) {
          month = "0" + month;
        }
        var day = o.getUTCDate();
        if (day < 10) {
          day = "0" + day;
        }
        var year = o.getUTCFullYear();
        var hours = o.getUTCHours();
        if (hours < 10) {
          hours = "0" + hours;
        }
        var minutes = o.getUTCMinutes();
        if (minutes < 10) {
          minutes = "0" + minutes;
        }
        var seconds = o.getUTCSeconds();
        if (seconds < 10) {
          seconds = "0" + seconds;
        }
        var milli = o.getUTCMilliseconds();
        if (milli < 100) {
          milli = "0" + milli;
        }
        if (milli < 10) {
          milli = "0" + milli;
        }
        return'"' + year + "-" + month + "-" + day + "T" + hours + ":" + minutes + ":" + seconds + "." + milli + 'Z"';
      }
      if (o.constructor === Array) {
        var ret = [];
        for (var i = 0;i < o.length;i++) {
          ret.push($.toJSON(o[i]) || "null");
        }
        return "[" + ret.join(",") + "]";
      }
      var pairs = [];
      for (var k in o) {
        var name;
        var type = typeof k;
        if (type == "number") {
          name = '"' + k + '"';
        } else {
          if (type == "string") {
            name = $.quoteString(k);
          } else {
            continue;
          }
        }
        if (typeof o[k] == "function") {
          continue;
        }
        var val = $.toJSON(o[k]);
        pairs.push(name + ":" + val);
      }
      return "{" + pairs.join(", ") + "}";
    }
  };
  $.evalJSON = function(src) {
    if (typeof JSON == "object" && JSON.parse) {
      return JSON.parse(src);
    }
    return eval("(" + src + ")");
  };
  $.secureEvalJSON = function(src) {
    if (typeof JSON == "object" && JSON.parse) {
      return JSON.parse(src);
    }
    var filtered = src;
    filtered = filtered.replace(/\\["\\\/bfnrtu]/g, "@");
    filtered = filtered.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]");
    filtered = filtered.replace(/(?:^|:|,)(?:\s*\[)+/g, "");
    if (/^[\],:{}\s]*$/.test(filtered)) {
      return eval("(" + src + ")");
    } else {
      throw new SyntaxError("Error parsing JSON, source is not valid.");
    }
  };
  $.quoteString = function(string) {
    if (string.match(_escapeable)) {
      return'"' + string.replace(_escapeable, function(a) {
        var c = _meta[a];
        if (typeof c === "string") {
          return c;
        }
        c = a.charCodeAt();
        return "\\u00" + Math.floor(c / 16).toString(16) + (c % 16).toString(16);
      }) + '"';
    }
    return'"' + string + '"';
  };
  var _escapeable = /["\\\x00-\x1f\x7f-\x9f]/g;
  var _meta = {"\b":"\\b", "\t":"\\t", "\n":"\\n", "\f":"\\f", "\r":"\\r", '"':'\\"', "\\":"\\\\"};
})(jQuery);
(function($) {
  $.fn.addOption = function() {
    var add = function(el, v, t, sO) {
      var option = document.createElement("option");
      option.value = v, option.text = t;
      var o = el.options;
      var oL = o.length;
      if (!el.cache) {
        el.cache = {};
        for (var i = 0;i < oL;i++) {
          el.cache[o[i].value] = i;
        }
      }
      if (typeof el.cache[v] == "undefined") {
        el.cache[v] = oL;
      }
      el.options[el.cache[v]] = option;
      if (sO) {
        option.selected = true;
      }
    };
    var a = arguments;
    if (a.length == 0) {
      return this;
    }
    var sO = true;
    var m = false;
    var items, v, t;
    if (typeof a[0] == "object") {
      m = true;
      items = a[0];
    }
    if (a.length >= 2) {
      if (typeof a[1] == "boolean") {
        sO = a[1];
      } else {
        if (typeof a[2] == "boolean") {
          sO = a[2];
        }
      }
      if (!m) {
        v = a[0];
        t = a[1];
      }
    }
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return;
      }
      if (m) {
        for (var item in items) {
          add(this, item, items[item], sO);
        }
      } else {
        add(this, v, t, sO);
      }
    });
    return this;
  };
  $.fn.ajaxAddOption = function(url, params, select, fn, args) {
    if (typeof url != "string") {
      return this;
    }
    if (typeof params != "object") {
      params = {};
    }
    if (typeof select != "boolean") {
      select = true;
    }
    this.each(function() {
      var el = this;
      $.getJSON(url, params, function(r) {
        $(el).addOption(r, select);
        if (typeof fn == "function") {
          if (typeof args == "object") {
            fn.apply(el, args);
          } else {
            fn.call(el);
          }
        }
      });
    });
    return this;
  };
  $.fn.removeOption = function() {
    var a = arguments;
    if (a.length == 0) {
      return this;
    }
    var ta = typeof a[0];
    var v, index;
    if (ta == "string" || (ta == "object" || ta == "function")) {
      v = a[0];
      if (v.constructor == Array) {
        var l = v.length;
        for (var i = 0;i < l;i++) {
          this.removeOption(v[i], a[1]);
        }
        return this;
      }
    } else {
      if (ta == "number") {
        index = a[0];
      } else {
        return this;
      }
    }
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return;
      }
      if (this.cache) {
        this.cache = null;
      }
      var remove = false;
      var o = this.options;
      if (!!v) {
        var oL = o.length;
        for (var i = oL - 1;i >= 0;i--) {
          if (v.constructor == RegExp) {
            if (o[i].value.match(v)) {
              remove = true;
            }
          } else {
            if (o[i].value == v) {
              remove = true;
            }
          }
          if (remove && a[1] === true) {
            remove = o[i].selected;
          }
          if (remove) {
            o[i] = null;
          }
          remove = false;
        }
      } else {
        if (a[1] === true) {
          remove = o[index].selected;
        } else {
          remove = true;
        }
        if (remove) {
          this.remove(index);
        }
      }
    });
    return this;
  };
  $.fn.sortOptions = function(ascending) {
    var sel = $(this).selectedValues();
    var a = typeof ascending == "undefined" ? true : !!ascending;
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return;
      }
      var o = this.options;
      var oL = o.length;
      var sA = [];
      for (var i = 0;i < oL;i++) {
        sA[i] = {v:o[i].value, t:o[i].text};
      }
      sA.sort(function(o1, o2) {
        o1t = o1.t.toLowerCase(), o2t = o2.t.toLowerCase();
        if (o1t == o2t) {
          return 0;
        }
        if (a) {
          return o1t < o2t ? -1 : 1;
        } else {
          return o1t > o2t ? -1 : 1;
        }
      });
      for (var i = 0;i < oL;i++) {
        o[i].text = sA[i].t;
        o[i].value = sA[i].v;
      }
    }).selectOptions(sel, true);
    return this;
  };
  $.fn.selectOptions = function(value, clear) {
    var v = value;
    var vT = typeof value;
    if (vT == "object" && v.constructor == Array) {
      var $this = this;
      $.each(v, function() {
        $this.selectOptions(this, clear);
      });
    }
    var c = clear || false;
    if (vT != "string" && (vT != "function" && vT != "object")) {
      return this;
    }
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return this;
      }
      var o = this.options;
      var oL = o.length;
      for (var i = 0;i < oL;i++) {
        if (v.constructor == RegExp) {
          if (o[i].value.match(v)) {
            o[i].selected = true;
          } else {
            if (c) {
              o[i].selected = false;
            }
          }
        } else {
          if (o[i].value == v) {
            o[i].selected = true;
          } else {
            if (c) {
              o[i].selected = false;
            }
          }
        }
      }
    });
    return this;
  };
  $.fn.copyOptions = function(to, which) {
    var w = which || "selected";
    if ($(to).size() == 0) {
      return this;
    }
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return this;
      }
      var o = this.options;
      var oL = o.length;
      for (var i = 0;i < oL;i++) {
        if (w == "all" || w == "selected" && o[i].selected) {
          $(to).addOption(o[i].value, o[i].text);
        }
      }
    });
    return this;
  };
  $.fn.containsOption = function(value, fn) {
    var found = false;
    var v = value;
    var vT = typeof v;
    var fT = typeof fn;
    if (vT != "string" && (vT != "function" && vT != "object")) {
      return fT == "function" ? this : found;
    }
    this.each(function() {
      if (this.nodeName.toLowerCase() != "select") {
        return this;
      }
      if (found && fT != "function") {
        return false;
      }
      var o = this.options;
      var oL = o.length;
      for (var i = 0;i < oL;i++) {
        if (v.constructor == RegExp) {
          if (o[i].value.match(v)) {
            found = true;
            if (fT == "function") {
              fn.call(o[i], i);
            }
          }
        } else {
          if (o[i].value == v) {
            found = true;
            if (fT == "function") {
              fn.call(o[i], i);
            }
          }
        }
      }
    });
    return fT == "function" ? this : found;
  };
  $.fn.selectedValues = function() {
    var v = [];
    this.selectedOptions().each(function() {
      v[v.length] = this.value;
    });
    return v;
  };
  $.fn.selectedTexts = function() {
    var t = [];
    this.selectedOptions().each(function() {
      t[t.length] = this.text;
    });
    return t;
  };
  $.fn.selectedOptions = function() {
    return this.find("option:selected");
  };
})(jQuery);
(function($) {
  $.extend($.fn, {swapClass:function(c1, c2) {
    var c1Elements = this.filter("." + c1);
    this.filter("." + c2).removeClass(c2).addClass(c1);
    c1Elements.removeClass(c1).addClass(c2);
    return this;
  }, replaceClass:function(c1, c2) {
    return this.filter("." + c1).removeClass(c1).addClass(c2).end();
  }, hoverClass:function(className) {
    className = className || "hover";
    return this.hover(function() {
      $(this).addClass(className);
    }, function() {
      $(this).removeClass(className);
    });
  }, heightToggle:function(animated, callback) {
    animated ? this.animate({height:"toggle"}, animated, callback) : this.each(function() {
      jQuery(this)[jQuery(this).is(":hidden") ? "show" : "hide"]();
      if (callback) {
        callback.apply(this, arguments);
      }
    });
  }, heightHide:function(animated, callback) {
    if (animated) {
      this.animate({height:"hide"}, animated, callback);
    } else {
      this.hide();
      if (callback) {
        this.each(callback);
      }
    }
  }, prepareBranches:function(settings) {
    if (!settings.prerendered) {
      this.filter(":last-child:not(ul)").addClass(CLASSES.last);
      this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
    }
    return this.filter(":has(>ul)");
  }, applyClasses:function(settings, toggler) {
    if (!settings.prerendered) {
      this.filter(":has(>ul:hidden)").addClass(CLASSES.expandable).replaceClass(CLASSES.last, CLASSES.lastExpandable);
      this.not(":has(>ul:hidden)").addClass(CLASSES.collapsable).replaceClass(CLASSES.last, CLASSES.lastCollapsable);
      this.prepend('<div class="' + CLASSES.hitarea + '"/>').find("div." + CLASSES.hitarea).each(function() {
        var classes = "";
        $.each($(this).parent().attr("class").split(" "), function() {
          classes += this + "-hitarea ";
        });
        $(this).addClass(classes);
      });
    }
    this.find("div." + CLASSES.hitarea).click(toggler);
  }, treeview:function(settings) {
    settings = $.extend({cookieId:"treeview"}, settings);
    if (settings.add) {
      return this.trigger("add", [settings.add]);
    }
    if (settings.toggle) {
      var callback = settings.toggle;
      settings.toggle = function() {
        return callback.apply($(this).parent()[0], arguments);
      };
    }
    function treeController(tree, control) {
      function handler(filter) {
        return function() {
          toggler.apply($("div." + CLASSES.hitarea, tree).filter(function() {
            return filter ? $(this).parent("." + filter).length : true;
          }));
          return false;
        };
      }
      $("a:eq(0)", control).click(handler(CLASSES.collapsable));
      $("a:eq(1)", control).click(handler(CLASSES.expandable));
      $("a:eq(2)", control).click(handler());
    }
    function toggler() {
      $(this).parent().find(">.hitarea").swapClass(CLASSES.collapsableHitarea, CLASSES.expandableHitarea).swapClass(CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea).end().swapClass(CLASSES.collapsable, CLASSES.expandable).swapClass(CLASSES.lastCollapsable, CLASSES.lastExpandable).find(">ul").heightToggle(settings.animated, settings.toggle);
      if (settings.unique) {
        $(this).parent().siblings().find(">.hitarea").replaceClass(CLASSES.collapsableHitarea, CLASSES.expandableHitarea).replaceClass(CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea).end().replaceClass(CLASSES.collapsable, CLASSES.expandable).replaceClass(CLASSES.lastCollapsable, CLASSES.lastExpandable).find(">ul").heightHide(settings.animated, settings.toggle);
      }
    }
    function serialize() {
      function binary(arg) {
        return arg ? 1 : 0;
      }
      var data = [];
      branches.each(function(i, e) {
        data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
      });
      $.cookie(settings.cookieId, data.join(""));
    }
    function deserialize() {
      var stored = $.cookie(settings.cookieId);
      if (stored) {
        var data = stored.split("");
        branches.each(function(i, e) {
          $(e).find(">ul")[parseInt(data[i]) ? "show" : "hide"]();
        });
      }
    }
    this.addClass("treeview");
    var branches = this.find("li").prepareBranches(settings);
    switch(settings.persist) {
      case "cookie":
        var toggleCallback = settings.toggle;
        settings.toggle = function() {
          serialize();
          if (toggleCallback) {
            toggleCallback.apply(this, arguments);
          }
        };
        deserialize();
        break;
      case "location":
        var current = this.find("a").filter(function() {
          return this.href.toLowerCase() == location.href.toLowerCase();
        });
        if (current.length) {
          current.addClass("selected").parents("ul, li").add(current.next()).show();
        }
        break;
    }
    branches.applyClasses(settings, toggler);
    if (settings.control) {
      treeController(this, settings.control);
      $(settings.control).show();
    }
    return this.bind("add", function(event, branches) {
      $(branches).prev().removeClass(CLASSES.last).removeClass(CLASSES.lastCollapsable).removeClass(CLASSES.lastExpandable).find(">.hitarea").removeClass(CLASSES.lastCollapsableHitarea).removeClass(CLASSES.lastExpandableHitarea);
      $(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, toggler);
    });
  }});
  var CLASSES = $.fn.treeview.classes = {open:"open", closed:"closed", expandable:"expandable", expandableHitarea:"expandable-hitarea", lastExpandableHitarea:"lastExpandable-hitarea", collapsable:"collapsable", collapsableHitarea:"collapsable-hitarea", lastCollapsableHitarea:"lastCollapsable-hitarea", lastCollapsable:"lastCollapsable", lastExpandable:"lastExpandable", last:"last", hitarea:"hitarea"};
  $.fn.Treeview = $.fn.treeview;
})(jQuery);
(function($, undefined) {
  $.support.htmlMenuitem = "HTMLMenuItemElement" in window;
  $.support.htmlCommand = "HTMLCommandElement" in window;
  $.support.eventSelectstart = "onselectstart" in document.documentElement;
  if (!$.ui || !$.ui.widget) {
    var _cleanData = $.cleanData;
    $.cleanData = function(elems) {
      for (var i = 0, elem;(elem = elems[i]) != null;i++) {
        try {
          $(elem).triggerHandler("remove");
        } catch (e) {
        }
      }
      _cleanData(elems);
    };
  }
  var $currentTrigger = null, initialized = false, $win = $(window), counter = 0, namespaces = {}, menus = {}, types = {}, defaults = {selector:null, appendTo:null, trigger:"right", autoHide:false, delay:200, reposition:false, determinePosition:function($menu) {
    if ($.ui && $.ui.position) {
      $menu.css("display", "block").position({my:"left top", at:"left bottom", of:this, offset:"0 5", collision:"fit"}).css("display", "none");
    } else {
      var offset = this.offset();
      offset.top += this.outerHeight();
      offset.left += this.outerWidth() / 2 - $menu.outerWidth() / 2;
      $menu.css(offset);
    }
  }, position:function(opt, x, y) {
    var $this = this, offset;
    if (!x && !y) {
      opt.determinePosition.call(this, opt.$menu);
      return;
    } else {
      if (x === "maintain" && y === "maintain") {
        offset = opt.$menu.position();
      } else {
        offset = {top:y, left:x};
      }
    }
    var bottom = $win.scrollTop() + $win.height(), right = $win.scrollLeft() + $win.width(), height = opt.$menu.height(), width = opt.$menu.width();
    if (offset.top + height > bottom) {
      offset.top -= height;
    }
    if (offset.top < 0) {
      offset.top = 0;
    }
    if (offset.left + width > right) {
      offset.left -= width;
    }
    opt.$menu.css(offset);
  }, positionSubmenu:function($menu) {
    if ($.ui && $.ui.position) {
      $menu.css("display", "block").position({my:"left top", at:"right top", of:this, collision:"flipfit fit"}).css("display", "");
    } else {
      var offset = {top:0, left:this.outerWidth()};
      $menu.css(offset);
    }
  }, zIndex:6101, animation:{duration:0, show:"slideDown", hide:"slideUp"}, events:{show:$.noop, hide:$.noop}, callback:null, items:{}}, hoveract = {timer:null, pageX:null, pageY:null}, zindex = function($t) {
    return 6100;
    var zin = 0, $tt = $t;
    while (true) {
      zin = Math.max(zin, parseInt($tt.css("z-index"), 10) || 0);
      $tt = $tt.parent();
      if (!$tt || (!$tt.length || "html body".indexOf($tt.prop("nodeName").toLowerCase()) > -1)) {
        break;
      }
    }
    return zin;
  }, handle = {abortevent:function(e) {
    e.preventDefault();
    e.stopImmediatePropagation();
  }, contextmenu:function(e) {
    var $this = $(this);
    if (e.data.trigger == "right") {
      e.preventDefault();
      e.stopImmediatePropagation();
    }
    if (e.data.trigger != "right" && e.originalEvent) {
      return;
    }
    if ($this.hasClass("context-menu-active")) {
      return;
    }
    if (!$this.hasClass("context-menu-disabled")) {
      $currentTrigger = $this;
      if (e.data.build) {
        var built = e.data.build($currentTrigger, e);
        if (built === false) {
          return;
        }
        if (built.callback !== undefined && built.callback != null) {
          e.data.callback = built.callback;
        }
        e.data = $.extend(true, {}, built, defaults, e.data || {});
        if (!e.data.items || $.isEmptyObject(e.data.items)) {
          if (window.console) {
            (console.error || console.log).call(console, "No items specified to show in contextMenu");
          }
          throw new Error("No Items specified");
        }
        e.data.$trigger = $currentTrigger;
        op.create(e.data);
      }
      op.show.call($this, e.data, e.pageX, e.pageY);
    }
  }, click:function(e) {
    e.preventDefault();
    e.stopImmediatePropagation();
    $(this).trigger($.Event("contextmenu", {data:e.data, pageX:e.pageX, pageY:e.pageY}));
  }, mousedown:function(e) {
    var $this = $(this);
    if ($currentTrigger && ($currentTrigger.length && !$currentTrigger.is($this))) {
      $currentTrigger.data("contextMenu").$menu.trigger("contextmenu:hide");
    }
    if (e.button == 2) {
      $currentTrigger = $this.data("contextMenuActive", true);
    }
  }, mouseup:function(e) {
    var $this = $(this);
    if ($this.data("contextMenuActive") && ($currentTrigger && ($currentTrigger.length && ($currentTrigger.is($this) && !$this.hasClass("context-menu-disabled"))))) {
      e.preventDefault();
      e.stopImmediatePropagation();
      $currentTrigger = $this;
      $this.trigger($.Event("contextmenu", {data:e.data, pageX:e.pageX, pageY:e.pageY}));
    }
    $this.removeData("contextMenuActive");
  }, mouseenter:function(e) {
    var $this = $(this), $related = $(e.relatedTarget), $document = $(document);
    if ($related.is(".context-menu-list") || $related.closest(".context-menu-list").length) {
      return;
    }
    if ($currentTrigger && $currentTrigger.length) {
      return;
    }
    hoveract.pageX = e.pageX;
    hoveract.pageY = e.pageY;
    hoveract.data = e.data;
    $document.on("mousemove.contextMenuShow", handle.mousemove);
    hoveract.timer = setTimeout(function() {
      hoveract.timer = null;
      $document.off("mousemove.contextMenuShow");
      $currentTrigger = $this;
      $this.trigger($.Event("contextmenu", {data:hoveract.data, pageX:hoveract.pageX, pageY:hoveract.pageY}));
    }, e.data.delay);
  }, mousemove:function(e) {
    hoveract.pageX = e.pageX;
    hoveract.pageY = e.pageY;
  }, mouseleave:function(e) {
    var $related = $(e.relatedTarget);
    if ($related.is(".context-menu-list") || $related.closest(".context-menu-list").length) {
      return;
    }
    try {
      clearTimeout(hoveract.timer);
    } catch (e) {
    }
    hoveract.timer = null;
  }, layerClick:function(e) {
    var $this = $(this), root = $this.data("contextMenuRoot"), button = e.button, x = e.pageX, y = e.pageY, target, offset;
    e.preventDefault();
    e.stopImmediatePropagation();
    setTimeout(function() {
      var $window;
      var triggerAction = root.trigger == "left" && button === 0 || root.trigger == "right" && button === 2;
      if (document.elementFromPoint && root.$layer) {
        root.$layer.hide();
        target = document.elementFromPoint(x - $win.scrollLeft(), y - $win.scrollTop());
        root.$layer.show();
      }
      if (root.reposition && triggerAction) {
        if (document.elementFromPoint) {
          if (root.$trigger.is(target) || root.$trigger.has(target).length) {
            root.position.call(root.$trigger, root, x, y);
            return;
          }
        } else {
          offset = root.$trigger.offset();
          $window = $(window);
          offset.top += $window.scrollTop();
          if (offset.top <= e.pageY) {
            offset.left += $window.scrollLeft();
            if (offset.left <= e.pageX) {
              offset.bottom = offset.top + root.$trigger.outerHeight();
              if (offset.bottom >= e.pageY) {
                offset.right = offset.left + root.$trigger.outerWidth();
                if (offset.right >= e.pageX) {
                  root.position.call(root.$trigger, root, x, y);
                  return;
                }
              }
            }
          }
        }
      }
      if (target && triggerAction) {
        root.$trigger.one("contextmenu:hidden", function() {
          $(target).contextMenu({x:x, y:y});
        });
      }
      root.$menu.trigger("contextmenu:hide");
    }, 50);
  }, keyStop:function(e, opt) {
    if (!opt.isInput) {
      e.preventDefault();
    }
    e.stopPropagation();
  }, key:function(e) {
    var opt = {};
    if ($currentTrigger) {
      opt = $currentTrigger.data("contextMenu") || {};
    }
    switch(e.keyCode) {
      case 9:
      ;
      case 38:
        handle.keyStop(e, opt);
        if (opt.isInput) {
          if (e.keyCode == 9 && e.shiftKey) {
            e.preventDefault();
            opt.$selected && opt.$selected.find("input, textarea, select").blur();
            opt.$menu.trigger("prevcommand");
            return;
          } else {
            if (e.keyCode == 38 && opt.$selected.find("input, textarea, select").prop("type") == "checkbox") {
              e.preventDefault();
              return;
            }
          }
        } else {
          if (e.keyCode != 9 || e.shiftKey) {
            opt.$menu.trigger("prevcommand");
            return;
          }
        }
      ;
      case 40:
        handle.keyStop(e, opt);
        if (opt.isInput) {
          if (e.keyCode == 9) {
            e.preventDefault();
            opt.$selected && opt.$selected.find("input, textarea, select").blur();
            opt.$menu.trigger("nextcommand");
            return;
          } else {
            if (e.keyCode == 40 && opt.$selected.find("input, textarea, select").prop("type") == "checkbox") {
              e.preventDefault();
              return;
            }
          }
        } else {
          opt.$menu.trigger("nextcommand");
          return;
        }
        break;
      case 37:
        handle.keyStop(e, opt);
        if (opt.isInput || (!opt.$selected || !opt.$selected.length)) {
          break;
        }
        if (!opt.$selected.parent().hasClass("context-menu-root")) {
          var $parent = opt.$selected.parent().parent();
          opt.$selected.trigger("contextmenu:blur");
          opt.$selected = $parent;
          return;
        }
        break;
      case 39:
        handle.keyStop(e, opt);
        if (opt.isInput || (!opt.$selected || !opt.$selected.length)) {
          break;
        }
        var itemdata = opt.$selected.data("contextMenu") || {};
        if (itemdata.$menu && opt.$selected.hasClass("context-menu-submenu")) {
          opt.$selected = null;
          itemdata.$selected = null;
          itemdata.$menu.trigger("nextcommand");
          return;
        }
        break;
      case 35:
      ;
      case 36:
        if (opt.$selected && opt.$selected.find("input, textarea, select").length) {
          return;
        } else {
          (opt.$selected && opt.$selected.parent() || opt.$menu).children(":not(.disabled, .not-selectable)")[e.keyCode == 36 ? "first" : "last"]().trigger("contextmenu:focus");
          e.preventDefault();
          return;
        }
        break;
      case 13:
        handle.keyStop(e, opt);
        if (opt.isInput) {
          if (opt.$selected && !opt.$selected.is("textarea, select")) {
            e.preventDefault();
            return;
          }
          break;
        }
        opt.$selected && opt.$selected.trigger("mouseup");
        return;
      case 32:
      ;
      case 33:
      ;
      case 34:
        handle.keyStop(e, opt);
        return;
      case 27:
        handle.keyStop(e, opt);
        opt.$menu.trigger("contextmenu:hide");
        return;
      default:
        var k = String.fromCharCode(e.keyCode).toUpperCase();
        if (opt.accesskeys && opt.accesskeys[k]) {
          opt.accesskeys[k].$node.trigger(opt.accesskeys[k].$menu ? "contextmenu:focus" : "mouseup");
          return;
        }
        break;
    }
    e.stopPropagation();
    opt.$selected && opt.$selected.trigger(e);
  }, prevItem:function(e) {
    e.stopPropagation();
    var opt = $(this).data("contextMenu") || {};
    if (opt.$selected) {
      var $s = opt.$selected;
      opt = opt.$selected.parent().data("contextMenu") || {};
      opt.$selected = $s;
    }
    var $children = opt.$menu.children(), $prev = !opt.$selected || !opt.$selected.prev().length ? $children.last() : opt.$selected.prev(), $round = $prev;
    while ($prev.hasClass("disabled") || $prev.hasClass("not-selectable")) {
      if ($prev.prev().length) {
        $prev = $prev.prev();
      } else {
        $prev = $children.last();
      }
      if ($prev.is($round)) {
        return;
      }
    }
    if (opt.$selected) {
      handle.itemMouseleave.call(opt.$selected.get(0), e);
    }
    handle.itemMouseenter.call($prev.get(0), e);
    var $input = $prev.find("input, textarea, select");
    if ($input.length) {
      $input.focus();
    }
  }, nextItem:function(e) {
    e.stopPropagation();
    var opt = $(this).data("contextMenu") || {};
    if (opt.$selected) {
      var $s = opt.$selected;
      opt = opt.$selected.parent().data("contextMenu") || {};
      opt.$selected = $s;
    }
    var $children = opt.$menu.children(), $next = !opt.$selected || !opt.$selected.next().length ? $children.first() : opt.$selected.next(), $round = $next;
    while ($next.hasClass("disabled") || $next.hasClass("not-selectable")) {
      if ($next.next().length) {
        $next = $next.next();
      } else {
        $next = $children.first();
      }
      if ($next.is($round)) {
        return;
      }
    }
    if (opt.$selected) {
      handle.itemMouseleave.call(opt.$selected.get(0), e);
    }
    handle.itemMouseenter.call($next.get(0), e);
    var $input = $next.find("input, textarea, select");
    if ($input.length) {
      $input.focus();
    }
  }, focusInput:function(e) {
    var $this = $(this).closest(".context-menu-item"), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot;
    root.$selected = opt.$selected = $this;
    root.isInput = opt.isInput = true;
  }, blurInput:function(e) {
    var $this = $(this).closest(".context-menu-item"), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot;
    root.isInput = opt.isInput = false;
  }, menuMouseenter:function(e) {
    var root = $(this).data().contextMenuRoot;
    root.hovering = true;
  }, menuMouseleave:function(e) {
    var root = $(this).data().contextMenuRoot;
    if (root.$layer && root.$layer.is(e.relatedTarget)) {
      root.hovering = false;
    }
  }, itemMouseenter:function(e) {
    var $this = $(this), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot;
    root.hovering = true;
    if (e && (root.$layer && root.$layer.is(e.relatedTarget))) {
      e.preventDefault();
      e.stopImmediatePropagation();
    }
    (opt.$menu ? opt : root).$menu.children(".hover").trigger("contextmenu:blur");
    if ($this.hasClass("disabled") || $this.hasClass("not-selectable")) {
      opt.$selected = null;
      return;
    }
    $this.trigger("contextmenu:focus");
  }, itemMouseleave:function(e) {
    var $this = $(this), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot;
    if (root !== opt && (root.$layer && root.$layer.is(e.relatedTarget))) {
      root.$selected && root.$selected.trigger("contextmenu:blur");
      e.preventDefault();
      e.stopImmediatePropagation();
      root.$selected = opt.$selected = opt.$node;
      return;
    }
    $this.trigger("contextmenu:blur");
  }, itemClick:function(e) {
    var $this = $(this), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot, key = data.contextMenuKey, callback;
    if (!opt.items[key] || $this.is(".disabled, .context-menu-submenu, .context-menu-separator, .not-selectable")) {
      return;
    }
    e.preventDefault();
    e.stopImmediatePropagation();
    if ($.isFunction(root.callbacks[key]) && Object.prototype.hasOwnProperty.call(root.callbacks, key)) {
      callback = root.callbacks[key];
    } else {
      if ($.isFunction(root.callback)) {
        callback = root.callback;
      } else {
        return;
      }
    }
    if (callback.call(root.$trigger, key, root, data) !== false) {
      root.$menu.trigger("contextmenu:hide");
    } else {
      if (root.$menu.parent().length) {
        op.update.call(root.$trigger, root);
      }
    }
  }, inputClick:function(e) {
    e.stopImmediatePropagation();
  }, hideMenu:function(e, data) {
    var root = $(this).data("contextMenuRoot");
    op.hide.call(root.$trigger, root, data && data.force);
  }, focusItem:function(e) {
    e.stopPropagation();
    var $this = $(this), data = $this.data(), opt = data.contextMenu, root = data.contextMenuRoot;
    $this.addClass("hover").siblings(".hover").trigger("contextmenu:blur");
    opt.$selected = root.$selected = $this;
    if (opt.$node) {
      root.positionSubmenu.call(opt.$node, opt.$menu);
    }
  }, blurItem:function(e) {
    e.stopPropagation();
    var $this = $(this), data = $this.data(), opt = data.contextMenu;
    $this.removeClass("hover");
    opt.$selected = null;
  }}, op = {show:function(opt, x, y) {
    if (typeof globalMenu != "undefined" && globalMenu) {
      return;
    }
    globalMenu = true;
    var $trigger = $(this), css = {};
    $("#context-menu-layer").trigger("mousedown");
    opt.$trigger = $trigger;
    opt.x = x;
    opt.y = y;
    if (opt.events.show.call($trigger, opt) === false) {
      $currentTrigger = null;
      return;
    }
    op.update.call($trigger, opt);
    opt.position.call($trigger, opt, x, y);
    if (opt.zIndex) {
      css.zIndex = zindex($trigger) + opt.zIndex;
    }
    op.layer.call(opt.$menu, opt, css.zIndex);
    opt.$menu.find("ul").css("zIndex", css.zIndex + 1);
    opt.$menu.css(css)[opt.animation.show](opt.animation.duration, function() {
      $trigger.trigger("contextmenu:visible");
    });
    $trigger.data("contextMenu", opt).addClass("context-menu-active");
    $(document).off("keydown.contextMenu").on("keydown.contextMenu", handle.key);
    if (opt.autoHide) {
      $(document).on("mousemove.contextMenuAutoHide", function(e) {
        var pos = $trigger.offset();
        pos.right = pos.left + $trigger.outerWidth();
        pos.bottom = pos.top + $trigger.outerHeight();
        if (opt.$layer && (!opt.hovering && (!(e.pageX >= pos.left && e.pageX <= pos.right) || !(e.pageY >= pos.top && e.pageY <= pos.bottom)))) {
          opt.$menu.trigger("contextmenu:hide");
        }
      });
    }
  }, hide:function(opt, force) {
    var $trigger = $(this);
    if (!opt) {
      opt = $trigger.data("contextMenu") || {};
    }
    if (!force && (opt.events && opt.events.hide.call($trigger, opt) === false)) {
      return;
    }
    $trigger.removeData("contextMenu").removeClass("context-menu-active");
    if (opt.$layer) {
      setTimeout(function($layer) {
        return function() {
          $layer.remove();
        };
      }(opt.$layer), 10);
      try {
        delete opt.$layer;
      } catch (e) {
        opt.$layer = null;
      }
    }
    $currentTrigger = null;
    opt.$menu.find(".hover").trigger("contextmenu:blur");
    opt.$selected = null;
    $(document).off(".contextMenuAutoHide").off("keydown.contextMenu");
    opt.$menu && opt.$menu[opt.animation.hide](opt.animation.duration, function() {
      if (opt.build) {
        opt.$menu.remove();
        $.each(opt, function(key, value) {
          switch(key) {
            case "ns":
            ;
            case "selector":
            ;
            case "build":
            ;
            case "trigger":
              return true;
            default:
              opt[key] = undefined;
              try {
                delete opt[key];
              } catch (e) {
              }
              return true;
          }
        });
      }
      setTimeout(function() {
        $trigger.trigger("contextmenu:hidden");
      }, 10);
    });
    globalMenu = false;
  }, create:function(opt, root) {
    if (root === undefined) {
      root = opt;
    }
    opt.$menu = $('<ul class="context-menu-list"></ul>').addClass(opt.className || "").data({"contextMenu":opt, "contextMenuRoot":root});
    $.each(["callbacks", "commands", "inputs"], function(i, k) {
      opt[k] = {};
      if (!root[k]) {
        root[k] = {};
      }
    });
    root.accesskeys || (root.accesskeys = {});
    $.each(opt.items, function(key, item) {
      var $t = $('<li class="context-menu-item"></li>').addClass(item.className || ""), $label = null, $input = null;
      $t.on("click", $.noop);
      item.$node = $t.data({"contextMenu":opt, "contextMenuRoot":root, "contextMenuKey":key});
      if (item.accesskey) {
        var aks = splitAccesskey(item.accesskey);
        for (var i = 0, ak;ak = aks[i];i++) {
          if (!root.accesskeys[ak]) {
            root.accesskeys[ak] = item;
            item._name = item.name.replace(new RegExp("(" + ak + ")", "i"), '<span class="context-menu-accesskey">$1</span>');
            break;
          }
        }
      }
      if (typeof item == "string") {
        $t.addClass("context-menu-separator not-selectable");
      } else {
        if (item.type && types[item.type]) {
          types[item.type].call($t, item, opt, root);
          $.each([opt, root], function(i, k) {
            k.commands[key] = item;
            if ($.isFunction(item.callback)) {
              k.callbacks[key] = item.callback;
            }
          });
        } else {
          if (item.type == "html") {
            $t.addClass("context-menu-html not-selectable");
          } else {
            if (item.type) {
              $label = $("<label></label>").appendTo($t);
              $("<span></span>").html(item._name || item.name).appendTo($label);
              $t.addClass("context-menu-input");
              opt.hasTypes = true;
              $.each([opt, root], function(i, k) {
                k.commands[key] = item;
                k.inputs[key] = item;
              });
            } else {
              if (item.items) {
                item.type = "sub";
              }
            }
          }
          switch(item.type) {
            case "text":
              $input = $('<input type="text" value="1" name="" value="">').attr("name", "context-menu-input-" + key).val(item.value || "").appendTo($label);
              break;
            case "textarea":
              $input = $('<textarea name=""></textarea>').attr("name", "context-menu-input-" + key).val(item.value || "").appendTo($label);
              if (item.height) {
                $input.height(item.height);
              }
              break;
            case "checkbox":
              $input = $('<input type="checkbox" value="1" name="" value="">').attr("name", "context-menu-input-" + key).val(item.value || "").prop("checked", !!item.selected).prependTo($label);
              break;
            case "radio":
              $input = $('<input type="radio" value="1" name="" value="">').attr("name", "context-menu-input-" + item.radio).val(item.value || "").prop("checked", !!item.selected).prependTo($label);
              break;
            case "select":
              $input = $('<select name="">').attr("name", "context-menu-input-" + key).appendTo($label);
              if (item.options) {
                $.each(item.options, function(value, text) {
                  $("<option></option>").val(value).text(text).appendTo($input);
                });
                $input.val(item.selected);
              }
              break;
            case "sub":
              $("<span></span>").html(item._name || item.name).appendTo($t);
              item.appendTo = item.$node;
              op.create(item, root);
              $t.data("contextMenu", item).addClass("context-menu-submenu");
              item.callback = null;
              break;
            case "html":
              $(item.html).appendTo($t);
              break;
            default:
              $.each([opt, root], function(i, k) {
                k.commands[key] = item;
                if ($.isFunction(item.callback)) {
                  k.callbacks[key] = item.callback;
                }
              });
              $("<span></span>").html(item._name || (item.name || "")).appendTo($t);
              break;
          }
          if (item.type && (item.type != "sub" && item.type != "html")) {
            $input.on("focus", handle.focusInput).on("blur", handle.blurInput);
            if (item.events) {
              $input.on(item.events, opt);
            }
          }
          if (item.icon) {
            $t.addClass("icon icon-" + item.icon);
          }
        }
      }
      item.$input = $input;
      item.$label = $label;
      $t.appendTo(opt.$menu);
      if (!opt.hasTypes && $.support.eventSelectstart) {
        $t.on("selectstart.disableTextSelect", handle.abortevent);
      }
    });
    if (!opt.$node) {
      opt.$menu.css("display", "none").addClass("context-menu-root");
    }
    opt.$menu.appendTo(opt.appendTo || document.body);
  }, resize:function($menu, nested) {
    $menu.css({position:"absolute", display:"block"});
    $menu.data("width", Math.ceil($menu.width()) + 1);
    $menu.css({position:"static", minWidth:"0px", maxWidth:"100000px"});
    $menu.find("> li > ul").each(function() {
      op.resize($(this), true);
    });
    if (!nested) {
      $menu.find("ul").addBack().css({position:"", display:"", minWidth:"", maxWidth:""}).width(function() {
        return $(this).data("width");
      });
    }
  }, update:function(opt, root) {
    var $trigger = this;
    if (root === undefined) {
      root = opt;
      op.resize(opt.$menu);
    }
    opt.$menu.children().each(function() {
      var $item = $(this), key = $item.data("contextMenuKey"), item = opt.items[key], disabled = $.isFunction(item.disabled) && item.disabled.call($trigger, key, root) || item.disabled === true;
      $item[disabled ? "addClass" : "removeClass"]("disabled");
      if (item.type) {
        $item.find("input, select, textarea").prop("disabled", disabled);
        switch(item.type) {
          case "text":
          ;
          case "textarea":
            item.$input.val(item.value || "");
            break;
          case "checkbox":
          ;
          case "radio":
            item.$input.val(item.value || "").prop("checked", !!item.selected);
            break;
          case "select":
            item.$input.val(item.selected || "");
            break;
        }
      }
      if (item.$menu) {
        op.update.call($trigger, item, root);
      }
    });
  }, layer:function(opt, zIndex) {
    var $l = $("#context-menu-layer");
    if ($l) {
      $l.remove();
    }
    var $layer = opt.$layer = $('<div id="context-menu-layer" style="position:fixed; z-index:' + zIndex + '; top:0; left:0; opacity: 0; filter: alpha(opacity=0); background-color: #000;"></div>').css({height:$win.height(), width:$win.width(), display:"block"}).data("contextMenuRoot", opt).insertBefore(this).on("contextmenu", handle.abortevent).on("mousedown", handle.layerClick);
    if (document.body.style.maxWidth === undefined) {
      $layer.css({"position":"absolute", "height":$(document).height()});
    }
    return $layer;
  }};
  function splitAccesskey(val) {
    var t = val.split(/\s+/), keys = [];
    for (var i = 0, k;k = t[i];i++) {
      k = k.charAt(0).toUpperCase();
      keys.push(k);
    }
    return keys;
  }
  $.fn.contextMenu = function(operation) {
    if (operation === undefined) {
      this.first().trigger("contextmenu");
    } else {
      if (operation.x && operation.y) {
        this.first().trigger($.Event("contextmenu", {pageX:operation.x, pageY:operation.y}));
      } else {
        if (operation === "hide") {
          var $menu = this.first().data("contextMenu") ? this.first().data("contextMenu").$menu : null;
          $menu && $menu.trigger("contextmenu:hide");
        } else {
          if (operation === "destroy") {
            $.contextMenu("destroy", {context:this});
          } else {
            if (operation === "element") {
              if (this.data("contextMenu") != null) {
                return this.data("contextMenu").$menu;
              }
              return[];
            } else {
              if ($.isPlainObject(operation)) {
                operation.context = this;
                $.contextMenu("create", operation);
              } else {
                if (operation) {
                  this.removeClass("context-menu-disabled");
                } else {
                  if (!operation) {
                    this.addClass("context-menu-disabled");
                  }
                }
              }
            }
          }
        }
      }
    }
    return this;
  };
  $.contextMenu = function(operation, options) {
    if (typeof operation != "string") {
      options = operation;
      operation = "create";
    }
    if (typeof options == "string") {
      options = {selector:options};
    } else {
      if (options === undefined) {
        options = {};
      }
    }
    var o = $.extend(true, {}, defaults, options || {});
    var $document = $(document);
    var $context = $document;
    var _hasContext = false;
    if (!o.context || !o.context.length) {
      o.context = document;
    } else {
      $context = $(o.context).first();
      o.context = $context.get(0);
      _hasContext = o.context !== document;
    }
    switch(operation) {
      case "create":
        if (!o.selector) {
          throw new Error("No selector specified");
        }
        if (o.selector.match(/.context-menu-(list|item|input)($|\s)/)) {
          throw new Error('Cannot bind to selector "' + o.selector + '" as it contains a reserved className');
        }
        if (!o.build && (!o.items || $.isEmptyObject(o.items))) {
          throw new Error("No Items specified");
        }
        counter++;
        o.ns = ".contextMenu" + counter;
        if (!_hasContext) {
          namespaces[o.selector] = o.ns;
        }
        menus[o.ns] = o;
        if (!o.trigger) {
          o.trigger = "right";
        }
        if (!initialized) {
          $document.on({"contextmenu:hide.contextMenu":handle.hideMenu, "prevcommand.contextMenu":handle.prevItem, "nextcommand.contextMenu":handle.nextItem, "contextmenu.contextMenu":handle.abortevent, "mouseenter.contextMenu":handle.menuMouseenter, "mouseleave.contextMenu":handle.menuMouseleave}, ".context-menu-list").on("mouseup.contextMenu", ".context-menu-input", handle.inputClick).on({"mouseup.contextMenu":handle.itemClick, "contextmenu:focus.contextMenu":handle.focusItem, "contextmenu:blur.contextMenu":handle.blurItem, 
          "contextmenu.contextMenu":handle.abortevent, "mouseenter.contextMenu":handle.itemMouseenter, "mouseleave.contextMenu":handle.itemMouseleave}, ".context-menu-item");
          initialized = true;
        }
        $context.on("contextmenu" + o.ns, o.selector, o, handle.contextmenu);
        if (_hasContext) {
          $context.on("remove" + o.ns, function() {
            $(this).contextMenu("destroy");
          });
        }
        switch(o.trigger) {
          case "hover":
            $context.on("mouseenter" + o.ns, o.selector, o, handle.mouseenter).on("mouseleave" + o.ns, o.selector, o, handle.mouseleave);
            break;
          case "left":
            $context.on("click" + o.ns, o.selector, o, handle.click);
            break;
        }
        if (!o.build) {
          op.create(o);
        }
        break;
      case "destroy":
        var $visibleMenu;
        if (_hasContext) {
          var context = o.context;
          $.each(menus, function(ns, o) {
            if (o.context !== context) {
              return true;
            }
            $visibleMenu = $(".context-menu-list").filter(":visible");
            if ($visibleMenu.length && $visibleMenu.data().contextMenuRoot.$trigger.is($(o.context).find(o.selector))) {
              $visibleMenu.trigger("contextmenu:hide", {force:true});
            }
            try {
              if (menus[o.ns].$menu) {
                menus[o.ns].$menu.remove();
              }
              delete menus[o.ns];
            } catch (e) {
              menus[o.ns] = null;
            }
            $(o.context).off(o.ns);
            return true;
          });
        } else {
          if (!o.selector) {
            $document.off(".contextMenu .contextMenuAutoHide");
            $.each(menus, function(ns, o) {
              $(o.context).off(o.ns);
            });
            namespaces = {};
            menus = {};
            counter = 0;
            initialized = false;
            $("#context-menu-layer, .context-menu-list").remove();
          } else {
            if (namespaces[o.selector]) {
              $visibleMenu = $(".context-menu-list").filter(":visible");
              if ($visibleMenu.length && $visibleMenu.data().contextMenuRoot.$trigger.is(o.selector)) {
                $visibleMenu.trigger("contextmenu:hide", {force:true});
              }
              try {
                if (menus[namespaces[o.selector]].$menu) {
                  menus[namespaces[o.selector]].$menu.remove();
                }
                delete menus[namespaces[o.selector]];
              } catch (e) {
                menus[namespaces[o.selector]] = null;
              }
              $document.off(namespaces[o.selector]);
            }
          }
        }
        break;
      case "html5":
        if (!$.support.htmlCommand && !$.support.htmlMenuitem || typeof options == "boolean" && options) {
          $('menu[type="context"]').each(function() {
            if (this.id) {
              $.contextMenu({selector:"[contextmenu=" + this.id + "]", items:$.contextMenu.fromMenu(this)});
            }
          }).css("display", "none");
        }
        break;
      default:
        throw new Error('Unknown operation "' + operation + '"');;
    }
    return this;
  };
  $.contextMenu.setInputValues = function(opt, data) {
    if (data === undefined) {
      data = {};
    }
    $.each(opt.inputs, function(key, item) {
      switch(item.type) {
        case "text":
        ;
        case "textarea":
          item.value = data[key] || "";
          break;
        case "checkbox":
          item.selected = data[key] ? true : false;
          break;
        case "radio":
          item.selected = (data[item.radio] || "") == item.value ? true : false;
          break;
        case "select":
          item.selected = data[key] || "";
          break;
      }
    });
  };
  $.contextMenu.getInputValues = function(opt, data) {
    if (data === undefined) {
      data = {};
    }
    $.each(opt.inputs, function(key, item) {
      switch(item.type) {
        case "text":
        ;
        case "textarea":
        ;
        case "select":
          data[key] = item.$input.val();
          break;
        case "checkbox":
          data[key] = item.$input.prop("checked");
          break;
        case "radio":
          if (item.$input.prop("checked")) {
            data[item.radio] = item.value;
          }
          break;
      }
    });
    return data;
  };
  function inputLabel(node) {
    return node.id && $('label[for="' + node.id + '"]').val() || node.name;
  }
  function menuChildren(items, $children, counter) {
    if (!counter) {
      counter = 0;
    }
    $children.each(function() {
      var $node = $(this), node = this, nodeName = this.nodeName.toLowerCase(), label, item;
      if (nodeName == "label" && $node.find("input, textarea, select").length) {
        label = $node.html();
        $node = $node.children().first();
        node = $node.get(0);
        nodeName = node.nodeName.toLowerCase();
      }
      switch(nodeName) {
        case "menu":
          item = {name:$node.attr("label"), items:{}};
          counter = menuChildren(item.items, $node.children(), counter);
          break;
        case "a":
        ;
        case "button":
          item = {name:$node.html(), disabled:!!$node.attr("disabled"), callback:function() {
            return function() {
              $node.click();
            };
          }()};
          break;
        case "menuitem":
        ;
        case "command":
          switch($node.attr("type")) {
            case undefined:
            ;
            case "command":
            ;
            case "menuitem":
              item = {name:$node.attr("label"), disabled:!!$node.attr("disabled"), callback:function() {
                return function() {
                  $node.click();
                };
              }()};
              break;
            case "checkbox":
              item = {type:"checkbox", disabled:!!$node.attr("disabled"), name:$node.attr("label"), selected:!!$node.attr("checked")};
              break;
            case "radio":
              item = {type:"radio", disabled:!!$node.attr("disabled"), name:$node.attr("label"), radio:$node.attr("radiogroup"), value:$node.attr("id"), selected:!!$node.attr("checked")};
              break;
            default:
              item = undefined;
          }
          break;
        case "hr":
          item = "-------";
          break;
        case "input":
          switch($node.attr("type")) {
            case "text":
              item = {type:"text", name:label || inputLabel(node), disabled:!!$node.attr("disabled"), value:$node.val()};
              break;
            case "checkbox":
              item = {type:"checkbox", name:label || inputLabel(node), disabled:!!$node.attr("disabled"), selected:!!$node.attr("checked")};
              break;
            case "radio":
              item = {type:"radio", name:label || inputLabel(node), disabled:!!$node.attr("disabled"), radio:!!$node.attr("name"), value:$node.val(), selected:!!$node.attr("checked")};
              break;
            default:
              item = undefined;
              break;
          }
          break;
        case "select":
          item = {type:"select", name:label || inputLabel(node), disabled:!!$node.attr("disabled"), selected:$node.val(), options:{}};
          $node.children().each(function() {
            item.options[this.value] = $(this).html();
          });
          break;
        case "textarea":
          item = {type:"textarea", name:label || inputLabel(node), disabled:!!$node.attr("disabled"), value:$node.val()};
          break;
        case "label":
          break;
        default:
          item = {type:"html", html:$node.clone(true)};
          break;
      }
      if (item) {
        counter++;
        items["key" + counter] = item;
      }
    });
    return counter;
  }
  $.contextMenu.fromMenu = function(element) {
    var $this = $(element), items = {};
    menuChildren(items, $this.children());
    return items;
  };
  $.contextMenu.defaults = defaults;
  $.contextMenu.types = types;
  $.contextMenu.handle = handle;
  $.contextMenu.op = op;
  $.contextMenu.menus = menus;
})(jQuery);
var EditableSelectWrapper = function(id) {
  this.id = id;
  this.element = null;
  this.values = new Array;
  this.list_height = 0;
  this.list_item_height = 20;
  this.UpdateValues = function(values) {
    delete this.values;
    this.values = new Array;
    var li = new Array;
    for (var i = 0;i < values.length;i++) {
      var value = values[i];
      li.push('<li value="' + i + '" class="' + value.cssClass + '">' + value.text + "</li>");
      this.values.push(value.value);
    }
    this.element.html("<ul>" + li.join("\n") + "</ul>");
    var me = this;
    this.element.bindEx("mouseup", function(e) {
      var li = e.target;
      if (li.tagName.toUpperCase() != "LI") {
        return;
      }
      var $li = $(e.target);
      e.stopPropagation();
      this.currentContext.pickListItem($li.text(), me.currentContext.getListValue(li.value));
    }, this).bindEx("mousedown", function(e) {
      e.stopPropagation();
    }, this);
    this.adjustHeight();
    this.checkScroll(10);
  };
  this.adjustHeight = function() {
    this.element.css("visibility", "hidden");
    this.element.show();
    var elements = this.element.find("li");
    if (elements.length > 0) {
      this.list_item_height = elements[0].offsetHeight;
    }
    this.element.css("visibility", "visible");
    this.element.hide();
  };
  this.checkScroll = function(items_then_scroll) {
    if (this.element.find("li").length > items_then_scroll) {
      this.list_height = this.list_item_height * items_then_scroll;
      this.element.css("height", this.list_height + "px");
      this.element.css("overflow", "auto");
    } else {
      this.element.css("height", "auto");
      this.element.css("overflow", "visible");
    }
  };
  this.getListValue = function(index) {
    return this.values[index];
  };
  this.clearHighlightMatches = function() {
    this.element.find("li").removeClass("match");
  };
  this.highlightSelected = function(text) {
    var current_value = toLower(text);
    this.clearHighlightMatches();
    var matches = this.getMatchItems(current_value);
    $(matches).addClass("match");
    if (matches.length > 0) {
      this.selectListItem($(matches[0]));
    } else {
      this.selectFirstListItem();
    }
  };
  this.getMatchItemNext = function(text) {
    var current_value = toLower(text);
    var matches = this.getMatchItems(current_value);
    var current = this.getSelectedListItem();
    if (current.length > 0 && matches.length > 1) {
      var index = matches.indexOf(current[0]);
      if (index < matches.length - 1) {
        return $(matches[index + 1]);
      } else {
        return $(matches[0]);
      }
    }
    return null;
  };
  this.getMatchItemPrev = function(text) {
    var current_value = toLower(text);
    var matches = this.getMatchItems(current_value);
    var current = this.getSelectedListItem();
    if (current.length > 0 && matches.length > 1) {
      var index = matches.indexOf(current[0]);
      if (index > 0) {
        return $(matches[index - 1]);
      } else {
        return $(matches[matches.length - 1]);
      }
    }
    return null;
  };
  this.getMatchItems = function(text) {
    var result = [];
    if (isEmpty(text)) {
      return result;
    }
    var pattern = text.replace(/([$-/:-?{-~!"^_`\[\]\\])/g, "\\$1");
    var elements = this.element.find("li");
    for (var i = 0;i < elements.length;i++) {
      var li = elements[i];
      var li_text = toLower(!isEmpty(li.textContent) ? li.textContent : li.innerText);
      var li_value = toLower(this.getListValue(li.value));
      if (QB.Web.Grid.QuickFilterInExpressionMatchFromBeginning) {
        pattern = "(^" + text + ")|([.]" + text + ")";
      }
      if (text == li_text || text == li_value) {
        result.push(li);
      } else {
        if (li_text.test(pattern) || li_value.test(pattern)) {
          result.push(li);
        }
      }
    }
    return result;
  };
  this.clearSelectedListItem = function() {
    this.element.find("li.selected").removeClass("selected");
  };
  this.selectNewListItem = function(text, direction, userEdit) {
    var li = this.getSelectedListItem();
    if (!li.length) {
      li = this.selectFirstListItem();
    }
    var sib = null;
    if (direction == "down") {
      if (userEdit) {
        sib = this.getMatchItemNext(text);
      }
      if (sib == null) {
        sib = li.next();
      }
    } else {
      if (direction == "up") {
        if (userEdit) {
          sib = this.getMatchItemPrev(text);
        }
        if (sib == null) {
          sib = li.prev();
        }
      }
    }
    if (sib != null) {
      this.selectListItem(sib);
      this.unselectListItem(li);
    }
  };
  this.selectListItem = function(li) {
    this.clearSelectedListItem();
    li.addClass("selected");
    this.scrollToListItem(li);
  };
  this.selectFirstListItem = function() {
    var first = this.element.find("li:first");
    this.selectListItem(first);
    return first;
  };
  this.unselectListItem = function(list_item) {
    list_item.removeClass("selected");
  };
  this.getSelectedListItem = function() {
    return this.element.find("li.selected");
  };
  this.scrollToListItem = function(list_item) {
    if (this.list_height && (list_item != null && list_item.length > 0)) {
      this.element.scrollTop(list_item[0].offsetTop - this.list_height / 2);
    }
  };
  this.init = function() {
    this.element = $('<div class="editable-select-options"></div>').appendTo($(document.body));
  };
  this.init();
};
var EditableSelectStatic = {wrappers:{}, instances:[], handlers:{}, inited:false, context:null, init:function() {
  this.initEvents();
  this.inited = true;
}, initEvents:function() {
}, GetWrapper:function(wrapperId) {
  if (isEmpty(wrapperId) || isEmpty(this.wrappers[wrapperId])) {
    this.wrappers[wrapperId] = new EditableSelectWrapper(wrapperId);
  }
  return this.wrappers[wrapperId];
}, UpdateWrapper:function(id, values) {
  this.GetWrapper(id).UpdateValues(values);
}};
(function($) {
  $.fn.editableSelect = function(options) {
    if (!EditableSelectStatic.inited) {
      EditableSelectStatic.init();
    }
    var me = this;
    var defaults = {bg_iframe:false, onSelect:true, items_then_scroll:10, case_sensitive:false};
    var settings = $.extend(defaults, options);
    var instance = false;
    $(this).each(function(i, domElement) {
      var element = $(domElement);
      if (element.data("editable-selecter") == undefined) {
        EditableSelectStatic.instances.push(new EditableSelect(domElement, settings));
        element.data("editable-selecter", EditableSelectStatic.instances.length - 1);
      }
    });
    return $(this);
  };
  $.fn.editableSelectInstances = function() {
    var ret = [];
    $(this).each(function() {
      if ($(this).data("editable-selecter") !== undefined) {
        ret[ret.length] = EditableSelectStatic.instances[$(this).data("editable-selecter")];
      }
    });
    return ret;
  };
  var EditableSelect = function(select, settings) {
    this.init(select, settings);
  };
  EditableSelect.prototype = {isActive:false, settings:false, textControl:false, select:false, wrapper:false, wrapperId:null, list_is_visible:false, hide_on_blur_timeout:false, bg_iframe:false, padding_right:13, current_value:"", options_value:[], userEdit:false, autoShow:false, init:function(select, settings) {
    this.settings = settings;
    this.wrapperId = this.settings.wrapperId;
    this.wrapper = EditableSelectStatic.GetWrapper(this.wrapperId);
    this.handler = this.settings.onSelect;
    if (!isEmpty(this.wrapperId)) {
      EditableSelectStatic.handlers[this.wrapperId] = this.settings.onSelect;
    }
    this.options = [];
    if (!isEmpty(this.settings.options)) {
      this.options = this.settings.options;
    }
    this.select = $(select);
    this.textControl = $('<input type="text">');
    this.textControl.attr("aria-label", this.select.attr("aria-label"));
    this.textControl.val(this.settings.value);
    this.textControl.attr("name", this.select.attr("name"));
    this.textControl.data("editable-selecter", this.select.data("editable-selecter"));
    this.select.attr("disabled", "disabled");
    var id = this.select.attr("id");
    if (!id) {
      id = "editable-select" + EditableSelectStatic.instances.length;
    }
    this.id = id;
    this.textControl.attr("id", id);
    this.textControl.attr("autocomplete", "off");
    this.textControl.addClass("editable-select");
    this.select.attr("id", id + "_hidden_select");
    this.initInputEvents(this.textControl, this);
    this.duplicateOptions();
    this.positionElements();
    this.setWidths();
    if (this.settings.bg_iframe) {
      var bg_iframe = $('<iframe frameborder="0" class="editable-select-iframe" src="about:blank;"></iframe>');
      $(document.body).append(bg_iframe);
      bg_iframe.width(this.select.width() + 2);
      bg_iframe.height(this.wrapper.element.height());
      bg_iframe.css({top:this.wrapper.element.css("top"), left:this.wrapper.element.css("left")});
      this.bg_iframe = bg_iframe;
    }
  }, duplicateOptions:function() {
    var me = this;
    var wrapperCleared = false;
    var values = new Array;
    this.select.find("option").each(function(index, option) {
      var $option = $(option);
      var text = $option.text();
      var val = $option.attr("value");
      var selected = false;
      if ($option.attr("selected") || option.selected) {
        me.textControl.val(text);
        me.current_value = text;
        me.current_options_value = val;
        selected = true;
      }
      var cssClass = $option.attr("class");
      values.push({selected:selected, text:text, value:val, cssClass:cssClass});
    });
    if (values.length > 0) {
      this.wrapper.UpdateValues(values);
      this.wrapper.element.addClass("disable-selection");
      this.wrapper.checkScroll(this.settings.items_then_scroll);
    }
  }, getControl:function() {
    return this.textControl;
  }, onSelect:function(e) {
    var context = this.wrapper.currentContext;
    if (typeof context.handler == "function") {
      context.handler.call(context, context.textControl, e);
    }
  }, editStart:function() {
    if (this.isActive) {
      return;
    }
    this.isActive = true;
    this.current_value = this.textControl.val();
    this.userEdit = false;
    this.adjustWrapper(this);
    if (this.autoShow) {
      this.showList();
    }
  }, editEnd:function(e) {
    if (!this.isActive) {
      return;
    }
    this.wrapper.clearSelectedListItem();
    this.hideList();
    this.onSelect(e);
    this.isActive = false;
  }, onTextboxChanged:function(reset_options_value) {
    if (this.textControl.val() != this.current_value) {
      this.userEdit = true;
      this.current_value = this.textControl.val();
      this.wrapper.highlightSelected(this.textControl.val());
    }
  }, initInputEvents:function(textControl, me2) {
    var me = this;
    var timer = false;
    textControl.focus(function(e) {
      me.editStart();
    }).blur(function(e) {
      if (!me.list_is_visible) {
        me.editEnd(e);
      }
    }).click(function(e) {
      e.stopPropagation();
      me.editStart();
      if (e.pageX - $(this).offset().left > $(this).width() - 16) {
        if (me.list_is_visible) {
          me.hideList();
        } else {
          me.showList();
        }
      }
    }).keydown(function(e) {
      me.isActive = true;
      switch(e.keyCode) {
        case 40:
          if (!me.listIsVisible()) {
            me.showList();
          } else {
            e.preventDefault();
            me.wrapper.selectNewListItem(me.textControl.val(), "down", me.userEdit);
          }
          break;
        case 38:
          if (me.listIsVisible()) {
            e.preventDefault();
            me.wrapper.selectNewListItem(me.textControl.val(), "up", me.userEdit);
          } else {
            me.showList();
          }
          break;
        case 9:
          if (me.listIsVisible()) {
            var $li = me.wrapper.getSelectedListItem();
            if ($li.length) {
              me.pickListItem($li.text(), me.getListValue($li[0].value));
            }
          } else {
            me.editEnd();
          }
          break;
        case 27:
          e.preventDefault();
          me.editEnd();
          return false;
          break;
        case 13:
          e.preventDefault();
          if (me.list_is_visible) {
            var $li = me.wrapper.getSelectedListItem();
            if ($li.length) {
              me.pickListItem($li.text(), me.getListValue($li[0].value));
            }
          } else {
            me.editEnd();
          }
          return false;
          break;
      }
    }).keyup($.debounce(me.onTextboxChanged, 100, me)).keypress(function(e) {
      if (e.keyCode == 13) {
        e.preventDefault();
        return false;
      }
    });
  }, pickListItem:function(text, val) {
    this.current_value = text;
    this.current_options_value = val;
    this.textControl.val(val);
    this.editEnd();
  }, listIsVisible:function() {
    return this.list_is_visible;
  }, adjustWrapper:function(context) {
    this.adjustWrapperPosition();
    this.adjustWrapperSize();
    EditableSelectStatic.context = context;
    this.wrapper.currentContext = context;
  }, adjustWrapperPosition:function() {
    var offset = this.textControl.offset();
    offset.top += this.textControl[0].offsetHeight;
    this.wrapper.element.css({top:offset.top + "px", left:offset.left + "px"});
  }, adjustWrapperSize:function() {
    var width = this.textControl[0].clientWidth;
    this.wrapper.element.width(width);
  }, showList:function() {
    this.hideOtherLists();
    this.overlay = new $.ui.editableSelectOverlay.overlay(this);
    this.wrapper.element.show();
    this.adjustWrapper(this);
    this.list_is_visible = true;
    if (this.settings.bg_iframe) {
      this.bg_iframe.show();
    }
    this.wrapper.checkScroll(10);
    this.wrapper.highlightSelected(this.textControl.val());
  }, getListValue:function(index) {
    return this.wrapper.values[index];
  }, hideList:function() {
    if (this.overlay != null) {
      this.overlay.destroy();
    }
    this.wrapper.element.hide();
    this.list_is_visible = false;
    if (this.settings.bg_iframe) {
      this.bg_iframe.hide();
    }
  }, hideOtherLists:function() {
    for (var i = 0;i < EditableSelectStatic.instances.length;i++) {
      if (i != this.select.data("editable-selecter")) {
        EditableSelectStatic.instances[i].hideList();
      }
    }
  }, positionElements:function() {
    this.select.after(this.textControl);
    this.select.hide();
    $(document.body).append(this.wrapper.element);
  }, setWidths:function() {
    var width = this.select.width() + 2 * 0;
    if (this.bg_iframe) {
      this.bg_iframe.width(width + 4);
    }
  }};
  $.ui.editableSelectOverlay = {overlay:function(dialog) {
    this.$el = $.ui.editableSelectOverlay.overlay.create(dialog);
  }};
  $.extend($.ui.editableSelectOverlay.overlay, {self:this, instances:[], oldInstances:[], maxZ:4E3, events:$.map("focus,mousedown,keydown,keypress".split(","), function(event) {
    return event + ".dialog-overlay";
  }).join(" "), create:function(dialog) {
    if (this.instances.length === 0) {
      $(window).bind("resize.dialog-overlay", $.ui.editableSelectOverlay.overlay.resize);
    }
    var $el = $('<div class="editable-select-options-overlay"></div>').appendTo(dialog.textControl.parent()).css({width:this.width(), height:this.height()});
    $el.bind("mousedown.dialog-overlay", function(event) {
      dialog.editEnd();
      var element = document.elementFromPoint(event.clientX, event.clientY);
      if (element != null) {
        try {
          var eventName = "click";
          if (element.dispatchEvent) {
            var e = document.createEvent("MouseEvent");
            e.initMouseEvent(eventName, true, true, window, 0, event.screenX, event.screenY, event.clientX, event.clientY, false, false, false, false, 0, null);
            element.dispatchEvent(e);
          } else {
            if (element.fireEvent) {
              element.fireEvent("on" + eventName);
            }
          }
        } catch (err) {
        }
      }
    });
    if ($.fn.bgiframe) {
      $el.bgiframe();
    }
    this.instances.push($el);
    return $el;
  }, destroy:function($el) {
    if ($el != null) {
      $el.remove();
    }
    if (this.instances.length === 0) {
      $([document, window]).unbind(".dialog-overlay");
    }
  }, height:function() {
    var scrollHeight, offsetHeight;
    return $(document).height() + "px";
  }, width:function() {
    var scrollWidth, offsetWidth;
    return $(document).width() + "px";
  }, resize:function() {
    var $overlays = $([]);
    $.each($.ui.editableSelectOverlay.overlay.instances, function() {
      $overlays = $overlays.add(this);
    });
    $overlays.css({width:0, height:0}).css({width:$.ui.editableSelectOverlay.overlay.width(), height:$.ui.editableSelectOverlay.overlay.height()});
  }});
  $.extend($.ui.editableSelectOverlay.overlay.prototype, {destroy:function() {
    $.ui.editableSelectOverlay.overlay.destroy(this.$el);
  }});
})(jQuery);
(function($) {
  var R = $.refresh = $.fn.refresh = function(a, b, c) {
    return R.setup(opts.apply(this, arguments));
  };
  function opts(a, b, c) {
    var r = $.extend({}, R);
    if (typeof a == "string") {
      r.url = a;
      if (b && !$.isFunction(b)) {
        r.time = b;
      } else {
        c = b;
      }
      if (c) {
        r.success = c;
      }
    } else {
      $.extend(r, a);
    }
    if (!r.method) {
      r.method = $.rest ? "Read" : "ajax";
    }
    if (!r.target) {
      r.target = this ? this : $;
    }
    if (!r.type && !$.rest) {
      r.type = "GET";
    }
    return r;
  }
  $.extend(R, {version:"0.5", url:null, time:178, success:null, method:null, setup:function(r) {
    if (r.cancel) {
      r.cancel();
    }
    r.id = setInterval(function() {
      r.refresh(r);
    }, r.time * 1E3);
    r.cancel = function() {
      clearInterval(r.id);
      return r;
    };
    return r;
  }, refresh:function(r) {
    if (r.lastReturn) {
      delete r.lastReturn;
    }
    r.lastReturn = r.target[r.method](r);
  }});
})(jQuery);
jQuery.tableDnD = {currentTable:null, dragObject:null, mouseOffset:null, oldY:0, build:function(options) {
  this.each(function() {
    this.tableDnDConfig = jQuery.extend({onDragStyle:null, onDropStyle:null, onDragClass:"tDnD_whileDrag", onDrop:null, onDragStart:null, scrollAmount:5, serializeRegexp:/[^\-]*$/, serializeParamName:null, dragHandle:null}, options || {});
    jQuery.tableDnD.makeDraggable(this);
  });
  jQuery(document).bind("mousemove", jQuery.tableDnD.mousemove).bind("mouseup", jQuery.tableDnD.mouseup);
  return this;
}, makeDraggable:function(table) {
  var config = table.tableDnDConfig;
  if (table.tableDnDConfig.dragHandle) {
    $(document).on("mousedown", "#qb-ui-grid td." + table.tableDnDConfig.dragHandle, function(ev) {
      if ($(ev.currentTarget).parents("tr:first").next().length == 0) {
        return;
      }
      jQuery.tableDnD.dragObject = this.parentNode;
      jQuery.tableDnD.currentTable = table;
      jQuery.tableDnD.mouseOffset = jQuery.tableDnD.getMouseOffset(this, ev);
      if (config.onDragStart) {
        config.onDragStart(table, this);
      }
      return false;
    });
  } else {
    $(document).on("mousedown", "#qb-ui-grid table td." + table.tableDnDConfig.dragHandle, function(ev) {
      if (ev.target.tagName == "TD") {
        jQuery.tableDnD.dragObject = this;
        jQuery.tableDnD.currentTable = table;
        jQuery.tableDnD.mouseOffset = jQuery.tableDnD.getMouseOffset(this, ev);
        if (config.onDragStart) {
          config.onDragStart(table, this);
        }
        return false;
      }
    });
  }
}, updateTables:function() {
  this.each(function() {
    if (this.tableDnDConfig) {
      jQuery.tableDnD.makeDraggable(this);
    }
  });
}, mouseCoords:function(ev) {
  if (ev.pageX || ev.pageY) {
    return{x:ev.pageX, y:ev.pageY};
  }
  return{x:ev.clientX + document.body.scrollLeft - document.body.clientLeft, y:ev.clientY + document.body.scrollTop - document.body.clientTop};
}, getMouseOffset:function(target, ev) {
  ev = ev || window.event;
  var docPos = this.getPosition(target);
  var mousePos = this.mouseCoords(ev);
  return{x:mousePos.x - docPos.x, y:mousePos.y - docPos.y};
}, getPosition:function(e) {
  var left = 0;
  var top = 0;
  if (e.offsetHeight == 0) {
    e = e.firstChild;
  }
  while (e.offsetParent) {
    left += e.offsetLeft;
    top += e.offsetTop;
    e = e.offsetParent;
  }
  left += e.offsetLeft;
  top += e.offsetTop;
  return{x:left, y:top};
}, mousemove:function(ev) {
  if (jQuery.tableDnD.dragObject == null) {
    return;
  }
  var dragObj = jQuery(jQuery.tableDnD.dragObject);
  var config = jQuery.tableDnD.currentTable.tableDnDConfig;
  var mousePos = jQuery.tableDnD.mouseCoords(ev);
  var y = mousePos.y - jQuery.tableDnD.mouseOffset.y;
  var yOffset = window.pageYOffset;
  if (document.all) {
    if (typeof document.compatMode != "undefined" && document.compatMode != "BackCompat") {
      yOffset = document.documentElement.scrollTop;
    } else {
      if (typeof document.body != "undefined") {
        yOffset = document.body.scrollTop;
      }
    }
  }
  if (mousePos.y - yOffset < config.scrollAmount) {
    window.scrollBy(0, -config.scrollAmount);
  } else {
    var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight;
    if (windowHeight - (mousePos.y - yOffset) < config.scrollAmount) {
      window.scrollBy(0, config.scrollAmount);
    }
  }
  if (y != jQuery.tableDnD.oldY) {
    var movingDown = y > jQuery.tableDnD.oldY;
    jQuery.tableDnD.oldY = y;
    if (config.onDragClass) {
      dragObj.addClass(config.onDragClass);
    } else {
      dragObj.css(config.onDragStyle);
    }
    var currentRow = jQuery.tableDnD.findDropTargetRow(dragObj, y);
    if (currentRow && currentRow.className != "ui-qb-grid-row-header") {
      if (movingDown && jQuery.tableDnD.dragObject != currentRow) {
        jQuery.tableDnD.dragObject.parentNode.insertBefore(jQuery.tableDnD.dragObject, currentRow.nextSibling);
      } else {
        if (!movingDown && jQuery.tableDnD.dragObject != currentRow) {
          jQuery.tableDnD.dragObject.parentNode.insertBefore(jQuery.tableDnD.dragObject, currentRow);
        }
      }
    }
  }
  return false;
}, findDropTargetRow:function(draggedRow, y) {
  var rows = jQuery.tableDnD.currentTable.rows;
  for (var i = 0;i < rows.length;i++) {
    var row = rows[i];
    if ($(row).next().length == 0) {
      return;
    }
    var rowY = this.getPosition(row).y;
    var rowHeight = parseInt(row.offsetHeight) / 2;
    if (row.offsetHeight == 0) {
      rowY = this.getPosition(row.firstChild).y;
      rowHeight = parseInt(row.firstChild.offsetHeight) / 2;
    }
    if (y > rowY - rowHeight && y < rowY + rowHeight) {
      if (row == draggedRow) {
        return null;
      }
      var config = jQuery.tableDnD.currentTable.tableDnDConfig;
      if (config.onAllowDrop) {
        if (config.onAllowDrop(draggedRow, row)) {
          return row;
        } else {
          return null;
        }
      } else {
        var nodrop = jQuery(row).hasClass("nodrop");
        if (!nodrop) {
          return row;
        } else {
          return null;
        }
      }
      return row;
    }
  }
  return null;
}, mouseup:function(e) {
  if (jQuery.tableDnD.currentTable && jQuery.tableDnD.dragObject) {
    var droppedRow = jQuery.tableDnD.dragObject;
    var config = jQuery.tableDnD.currentTable.tableDnDConfig;
    if (config.onDragClass) {
      jQuery(droppedRow).removeClass(config.onDragClass);
    } else {
      jQuery(droppedRow).css(config.onDropStyle);
    }
    jQuery.tableDnD.dragObject = null;
    if (config.onDrop) {
      config.onDrop(jQuery.tableDnD.currentTable, droppedRow);
    }
    jQuery.tableDnD.currentTable = null;
  }
}, serialize:function() {
  if (jQuery.tableDnD.currentTable) {
    return jQuery.tableDnD.serializeTable(jQuery.tableDnD.currentTable);
  } else {
    return "Error: No Table id set, you need to set an id on your table and every row";
  }
}, serializeTable:function(table) {
  var result = "";
  var tableId = table.id;
  var rows = table.rows;
  for (var i = 0;i < rows.length;i++) {
    if (result.length > 0) {
      result += "&";
    }
    var rowId = rows[i].id;
    if (rowId && (rowId && (table.tableDnDConfig && table.tableDnDConfig.serializeRegexp))) {
      rowId = rowId.match(table.tableDnDConfig.serializeRegexp)[0];
    }
    result += tableId + "[]=" + rowId;
  }
  return result;
}, serializeTables:function() {
  var result = "";
  this.each(function() {
    result += jQuery.tableDnD.serializeTable(this);
  });
  return result;
}};
jQuery.fn.extend({tableDnD:jQuery.tableDnD.build, tableDnDUpdate:jQuery.tableDnD.updateTables, tableDnDSerialize:jQuery.tableDnD.serializeTables});
(function($) {
  $.widget("ui.selectmenu", {options:{appendTo:"body", typeAhead:1E3, style:"dropdown", positionOptions:null, width:null, menuWidth:null, handleWidth:26, maxHeight:null, icons:null, format:null, escapeHtml:false, bgImage:function() {
  }}, _create:function() {
    var self = this, o = this.options;
    var selectmenuId = this.element.uniqueId().attr("id");
    this.ids = [selectmenuId, selectmenuId + "-button", selectmenuId + "-menu"];
    this._safemouseup = true;
    this.isOpen = false;
    this.newelement = $("<a />", {"class":"ui-selectmenu ui-widget ui-state-default ui-corner-all", "id":this.ids[1], "role":"button", "href":"#nogo", "tabindex":this.element.attr("disabled") ? 1 : 0, "aria-haspopup":true, "aria-owns":this.ids[2]});
    this.newelementWrap = $("<span />").append(this.newelement).insertAfter(this.element);
    var tabindex = this.element.attr("tabindex");
    if (tabindex) {
      this.newelement.attr("tabindex", tabindex);
    }
    this.newelement.data("selectelement", this.element);
    this.selectmenuIcon = $('<span class="ui-selectmenu-icon ui-icon"></span>').prependTo(this.newelement);
    this.newelement.prepend('<span class="ui-selectmenu-status" />');
    this.element.bind({"click.selectmenu":function(event) {
      self.newelement.focus();
      event.preventDefault();
    }});
    this.newelement.bind("mousedown.selectmenu", function(event) {
      self._toggle(event, true);
      if (o.style == "popup") {
        self._safemouseup = false;
        setTimeout(function() {
          self._safemouseup = true;
        }, 300);
      }
      event.preventDefault();
    }).bind("click.selectmenu", function(event) {
      event.preventDefault();
    }).bind("keydown.selectmenu", function(event) {
      var ret = false;
      switch(event.keyCode) {
        case $.ui.keyCode.ENTER:
          ret = true;
          break;
        case $.ui.keyCode.SPACE:
          self._toggle(event);
          break;
        case $.ui.keyCode.UP:
          if (event.altKey) {
            self.open(event);
          } else {
            self._moveSelection(-1);
          }
          break;
        case $.ui.keyCode.DOWN:
          if (event.altKey) {
            self.open(event);
          } else {
            self._moveSelection(1);
          }
          break;
        case $.ui.keyCode.LEFT:
          self._moveSelection(-1);
          break;
        case $.ui.keyCode.RIGHT:
          self._moveSelection(1);
          break;
        case $.ui.keyCode.TAB:
          ret = true;
          break;
        case $.ui.keyCode.PAGE_UP:
        ;
        case $.ui.keyCode.HOME:
          self.index(0);
          break;
        case $.ui.keyCode.PAGE_DOWN:
        ;
        case $.ui.keyCode.END:
          self.index(self._optionLis.length);
          break;
        default:
          ret = true;
      }
      return ret;
    }).bind("keypress.selectmenu", function(event) {
      if (event.which > 0) {
        self._typeAhead(event.which, "mouseup");
      }
      return true;
    }).bind("mouseover.selectmenu", function() {
      if (!o.disabled) {
        $(this).addClass("ui-state-hover");
      }
    }).bind("mouseout.selectmenu", function() {
      if (!o.disabled) {
        $(this).removeClass("ui-state-hover");
      }
    }).bind("focus.selectmenu", function() {
      if (!o.disabled) {
        $(this).addClass("ui-state-focus");
      }
    }).bind("blur.selectmenu", function() {
      if (!o.disabled) {
        $(this).removeClass("ui-state-focus");
      }
    });
    $(document).bind("mousedown.selectmenu-" + this.ids[0], function(event) {
      if (self.isOpen && !$(event.target).closest("#" + self.ids[1]).length) {
        self.close(event);
      }
    });
    this.element.bind("click.selectmenu", function() {
      self._refreshValue();
    }).bind("focus.selectmenu", function() {
      if (self.newelement) {
        self.newelement[0].focus();
      }
    });
    if (!o.width) {
      o.width = this.element.outerWidth();
    }
    this.newelement.width(o.width);
    this.element.hide();
    this.list = $("<ul />", {"class":"ui-widget ui-widget-content", "aria-hidden":true, "role":"listbox", "aria-labelledby":this.ids[1], "id":this.ids[2]});
    this.listWrap = $("<div />", {"class":"ui-selectmenu-menu"}).append(this.list).appendTo(o.appendTo);
    this.list.bind("keydown.selectmenu", function(event) {
      var ret = false;
      switch(event.keyCode) {
        case $.ui.keyCode.UP:
          if (event.altKey) {
            self.close(event, true);
          } else {
            self._moveFocus(-1);
          }
          break;
        case $.ui.keyCode.DOWN:
          if (event.altKey) {
            self.close(event, true);
          } else {
            self._moveFocus(1);
          }
          break;
        case $.ui.keyCode.LEFT:
          self._moveFocus(-1);
          break;
        case $.ui.keyCode.RIGHT:
          self._moveFocus(1);
          break;
        case $.ui.keyCode.HOME:
          self._moveFocus(":first");
          break;
        case $.ui.keyCode.PAGE_UP:
          self._scrollPage("up");
          break;
        case $.ui.keyCode.PAGE_DOWN:
          self._scrollPage("down");
          break;
        case $.ui.keyCode.END:
          self._moveFocus(":last");
          break;
        case $.ui.keyCode.ENTER:
        ;
        case $.ui.keyCode.SPACE:
          self.close(event, true);
          $(event.target).parents("li:eq(0)").trigger("mouseup");
          break;
        case $.ui.keyCode.TAB:
          ret = true;
          self.close(event, true);
          $(event.target).parents("li:eq(0)").trigger("mouseup");
          break;
        case $.ui.keyCode.ESCAPE:
          self.close(event, true);
          break;
        default:
          ret = true;
      }
      return ret;
    }).bind("keypress.selectmenu", function(event) {
      if (event.which > 0) {
        self._typeAhead(event.which, "focus");
      }
      return true;
    }).bind("mousedown.selectmenu mouseup.selectmenu", function() {
      return false;
    });
    $(window).bind("resize.selectmenu-" + this.ids[0], $.proxy(self.close, this));
  }, _init:function() {
    var self = this, o = this.options;
    var selectOptionData = [];
    this.element.find("option").each(function() {
      var opt = $(this);
      selectOptionData.push({value:opt.attr("value"), text:self._formatText(opt.text(), opt), selected:opt.attr("selected"), disabled:opt.attr("disabled"), classes:opt.attr("class"), typeahead:opt.attr("typeahead"), parentOptGroup:opt.parent("optgroup"), bgImage:o.bgImage.call(opt)});
    });
    var activeClass = self.options.style == "popup" ? " ui-state-active" : "";
    this.list.html("");
    if (selectOptionData.length) {
      for (var i = 0;i < selectOptionData.length;i++) {
        var thisLiAttr = {role:"presentation"};
        if (selectOptionData[i].disabled) {
          thisLiAttr["class"] = "ui-state-disabled";
        }
        var thisAAttr = {html:selectOptionData[i].text || "&nbsp;", href:"#nogo", tabindex:-1, role:"option", "aria-selected":false};
        if (selectOptionData[i].disabled) {
          thisAAttr["aria-disabled"] = true;
        }
        if (selectOptionData[i].typeahead) {
          thisAAttr["typeahead"] = selectOptionData[i].typeahead;
        }
        var thisA = $("<a/>", thisAAttr).bind("focus.selectmenu", function() {
          $(this).parent().mouseover();
        }).bind("blur.selectmenu", function() {
          $(this).parent().mouseout();
        });
        var thisLi = $("<li/>", thisLiAttr).append(thisA).data("index", i).addClass(selectOptionData[i].classes).data("optionClasses", selectOptionData[i].classes || "").bind("mouseup.selectmenu", function(event) {
          if (self._safemouseup && (!self._disabled(event.currentTarget) && !self._disabled($(event.currentTarget).parents("ul > li.ui-selectmenu-group ")))) {
            self.index($(this).data("index"));
            self.select(event);
            self.close(event, true);
          }
          return false;
        }).bind("click.selectmenu", function() {
          return false;
        }).bind("mouseover.selectmenu", function(e) {
          if (!$(this).hasClass("ui-state-disabled") && !$(this).parent("ul").parent("li").hasClass("ui-state-disabled")) {
            e.optionValue = self.element[0].options[$(this).data("index")].value;
            self._trigger("hover", e, self._uiHash());
            self._selectedOptionLi().addClass(activeClass);
            self._focusedOptionLi().removeClass("ui-selectmenu-item-focus ui-state-hover");
            $(this).removeClass("ui-state-active").addClass("ui-selectmenu-item-focus ui-state-hover");
          }
        }).bind("mouseout.selectmenu", function(e) {
          if ($(this).is(self._selectedOptionLi())) {
            $(this).addClass(activeClass);
          }
          e.optionValue = self.element[0].options[$(this).data("index")].value;
          self._trigger("blur", e, self._uiHash());
          $(this).removeClass("ui-selectmenu-item-focus ui-state-hover");
        });
        if (selectOptionData[i].parentOptGroup.length) {
          var optGroupName = "ui-selectmenu-group-" + this.element.find("optgroup").index(selectOptionData[i].parentOptGroup);
          if (this.list.find("li." + optGroupName).length) {
            this.list.find("li." + optGroupName + ":last ul").append(thisLi);
          } else {
            $('<li role="presentation" class="ui-selectmenu-group ' + optGroupName + (selectOptionData[i].parentOptGroup.attr("disabled") ? " " + 'ui-state-disabled" aria-disabled="true"' : '"') + '><span class="ui-selectmenu-group-label">' + selectOptionData[i].parentOptGroup.attr("label") + "</span><ul></ul></li>").appendTo(this.list).find("ul").append(thisLi);
          }
        } else {
          thisLi.appendTo(this.list);
        }
        if (o.icons) {
          for (var j in o.icons) {
            if (thisLi.is(o.icons[j].find)) {
              thisLi.data("optionClasses", selectOptionData[i].classes + " ui-selectmenu-hasIcon").addClass("ui-selectmenu-hasIcon");
              var iconClass = o.icons[j].icon || "";
              thisLi.find("a:eq(0)").prepend('<span class="ui-selectmenu-item-icon ui-icon ' + iconClass + '"></span>');
              if (selectOptionData[i].bgImage) {
                thisLi.find("span").css("background-image", selectOptionData[i].bgImage);
              }
            }
          }
        }
      }
    } else {
      $('<li role="presentation"><a href="#nogo" tabindex="-1" role="option"></a></li>').appendTo(this.list);
    }
    var isDropDown = o.style == "dropdown";
    this.newelement.toggleClass("ui-selectmenu-dropdown", isDropDown).toggleClass("ui-selectmenu-popup", !isDropDown);
    this.list.toggleClass("ui-selectmenu-menu-dropdown ui-corner-bottom", isDropDown).toggleClass("ui-selectmenu-menu-popup ui-corner-all", !isDropDown).find("li:first").toggleClass("ui-corner-top", !isDropDown).end().find("li:last").addClass("ui-corner-bottom");
    this.selectmenuIcon.toggleClass("ui-icon-triangle-1-s", isDropDown).toggleClass("ui-icon-triangle-2-n-s", !isDropDown);
    if (o.style == "dropdown") {
      this.list.width(o.menuWidth ? o.menuWidth : o.width);
    } else {
      this.list.width(o.menuWidth ? o.menuWidth : o.width - o.handleWidth);
    }
    if (!navigator.userAgent.match(/Android 2/)) {
      var listH = this.listWrap.height();
      var winH = $(window).height();
      var maxH = o.maxHeight ? Math.min(o.maxHeight, winH) : winH / 3;
      if (listH > maxH) {
        this.list.height(maxH);
      }
    }
    this._optionLis = this.list.find("li:not(.ui-selectmenu-group)");
    if (this.element.attr("disabled")) {
      this.disable();
    } else {
      this.enable();
    }
    this._refreshValue();
    this._selectedOptionLi().addClass("ui-selectmenu-item-focus");
    clearTimeout(this.refreshTimeout);
    this.refreshTimeout = window.setTimeout(function() {
      self._refreshPosition();
    }, 200);
  }, destroy:function() {
    this.element.removeData(this.widgetName).removeClass("ui-selectmenu-disabled" + " " + "ui-state-disabled").removeAttr("aria-disabled").unbind(".selectmenu");
    $(window).unbind(".selectmenu-" + this.ids[0]);
    $(document).unbind(".selectmenu-" + this.ids[0]);
    this.newelementWrap.remove();
    this.listWrap.remove();
    this.element.unbind(".selectmenu").show();
    $.Widget.prototype.destroy.apply(this, arguments);
  }, _typeAhead:function(code, eventType) {
    var self = this, c = String.fromCharCode(code).toLowerCase(), matchee = null, nextIndex = null;
    if (self._typeAhead_timer) {
      window.clearTimeout(self._typeAhead_timer);
      self._typeAhead_timer = undefined;
    }
    self._typeAhead_chars = (self._typeAhead_chars === undefined ? "" : self._typeAhead_chars).concat(c);
    if (self._typeAhead_chars.length < 2 || self._typeAhead_chars.substr(-2, 1) === c && self._typeAhead_cycling) {
      self._typeAhead_cycling = true;
      matchee = c;
    } else {
      self._typeAhead_cycling = false;
      matchee = self._typeAhead_chars;
    }
    var selectedIndex = (eventType !== "focus" ? this._selectedOptionLi().data("index") : this._focusedOptionLi().data("index")) || 0;
    for (var i = 0;i < this._optionLis.length;i++) {
      var thisText = this._optionLis.eq(i).text().substr(0, matchee.length).toLowerCase();
      if (thisText === matchee) {
        if (self._typeAhead_cycling) {
          if (nextIndex === null) {
            nextIndex = i;
          }
          if (i > selectedIndex) {
            nextIndex = i;
            break;
          }
        } else {
          nextIndex = i;
        }
      }
    }
    if (nextIndex !== null) {
      this._optionLis.eq(nextIndex).find("a").trigger(eventType);
    }
    self._typeAhead_timer = window.setTimeout(function() {
      self._typeAhead_timer = undefined;
      self._typeAhead_chars = undefined;
      self._typeAhead_cycling = undefined;
    }, self.options.typeAhead);
  }, _uiHash:function() {
    var index = this.index();
    return{index:index, option:$("option", this.element).get(index), value:this.element[0].value};
  }, open:function(event) {
    if (this.newelement.attr("aria-disabled") != "true") {
      var self = this, o = this.options, selected = this._selectedOptionLi(), link = selected.find("a");
      self._closeOthers(event);
      self.newelement.addClass("ui-state-active");
      self.list.attr("aria-hidden", false);
      self.listWrap.addClass("ui-selectmenu-open");
      if (o.style == "dropdown") {
        self.newelement.removeClass("ui-corner-all").addClass("ui-corner-top");
      } else {
        this.list.css("left", -5E3).scrollTop(this.list.scrollTop() + selected.position().top - this.list.outerHeight() / 2 + selected.outerHeight() / 2).css("left", "auto");
      }
      self._refreshPosition();
      if (link.length) {
        link[0].focus();
      }
      self.isOpen = true;
      self._trigger("open", event, self._uiHash());
    }
  }, close:function(event, retainFocus) {
    if (this.newelement.is(".ui-state-active")) {
      this.newelement.removeClass("ui-state-active");
      this.listWrap.removeClass("ui-selectmenu-open");
      this.list.attr("aria-hidden", true);
      if (this.options.style == "dropdown") {
        this.newelement.removeClass("ui-corner-top").addClass("ui-corner-all");
      }
      if (retainFocus) {
        this.newelement.focus();
      }
      this.isOpen = false;
      this._trigger("close", event, this._uiHash());
    }
  }, change:function(event) {
    this.element.trigger("change");
    this._trigger("change", event, this._uiHash());
  }, select:function(event) {
    if (this._disabled(event.currentTarget)) {
      return false;
    }
    this._trigger("select", event, this._uiHash());
  }, widget:function() {
    return this.listWrap.add(this.newelementWrap);
  }, _closeOthers:function(event) {
    $(".ui-selectmenu.ui-state-active").not(this.newelement).each(function() {
      $(this).data("selectelement").selectmenu("close", event);
    });
    $(".ui-selectmenu.ui-state-hover").trigger("mouseout");
  }, _toggle:function(event, retainFocus) {
    if (this.isOpen) {
      this.close(event, retainFocus);
    } else {
      this.open(event);
    }
  }, _formatText:function(text, opt) {
    if (this.options.format) {
      text = this.options.format(text, opt);
    } else {
      if (this.options.escapeHtml) {
        text = $("<div />").text(text).html();
      }
    }
    return text;
  }, _selectedIndex:function() {
    return this.element[0].selectedIndex;
  }, _selectedOptionLi:function() {
    return this._optionLis.eq(this._selectedIndex());
  }, _focusedOptionLi:function() {
    return this.list.find(".ui-selectmenu-item-focus");
  }, _moveSelection:function(amt, recIndex) {
    if (!this.options.disabled) {
      var currIndex = parseInt(this._selectedOptionLi().data("index") || 0, 10);
      var newIndex = currIndex + amt;
      if (newIndex < 0) {
        newIndex = 0;
      }
      if (newIndex > this._optionLis.size() - 1) {
        newIndex = this._optionLis.size() - 1;
      }
      if (newIndex === recIndex) {
        return false;
      }
      if (this._optionLis.eq(newIndex).hasClass("ui-state-disabled")) {
        amt > 0 ? ++amt : --amt;
        this._moveSelection(amt, newIndex);
      } else {
        this._optionLis.eq(newIndex).trigger("mouseover").trigger("mouseup");
      }
    }
  }, _moveFocus:function(amt, recIndex) {
    if (!isNaN(amt)) {
      var currIndex = parseInt(this._focusedOptionLi().data("index") || 0, 10);
      var newIndex = currIndex + amt;
    } else {
      var newIndex = parseInt(this._optionLis.filter(amt).data("index"), 10)
    }
    if (newIndex < 0) {
      newIndex = 0;
    }
    if (newIndex > this._optionLis.size() - 1) {
      newIndex = this._optionLis.size() - 1;
    }
    if (newIndex === recIndex) {
      return false;
    }
    var activeID = "ui-selectmenu-item-" + Math.round(Math.random() * 1E3);
    this._focusedOptionLi().find("a:eq(0)").attr("id", "");
    if (this._optionLis.eq(newIndex).hasClass("ui-state-disabled")) {
      amt > 0 ? ++amt : --amt;
      this._moveFocus(amt, newIndex);
    } else {
      this._optionLis.eq(newIndex).find("a:eq(0)").attr("id", activeID).focus();
    }
    this.list.attr("aria-activedescendant", activeID);
  }, _scrollPage:function(direction) {
    var numPerPage = Math.floor(this.list.outerHeight() / this._optionLis.first().outerHeight());
    numPerPage = direction == "up" ? -numPerPage : numPerPage;
    this._moveFocus(numPerPage);
  }, _setOption:function(key, value) {
    this.options[key] = value;
    if (key == "disabled") {
      if (value) {
        this.close();
      }
      this.element.add(this.newelement).add(this.list)[value ? "addClass" : "removeClass"]("ui-selectmenu-disabled " + "ui-state-disabled").attr("aria-disabled", value).attr("tabindex", value ? 1 : 0);
    }
  }, disable:function(index, type) {
    if (typeof index == "undefined") {
      this._setOption("disabled", true);
    } else {
      this._toggleEnabled(type || "option", index, false);
    }
  }, enable:function(index, type) {
    if (typeof index == "undefined") {
      this._setOption("disabled", false);
    } else {
      this._toggleEnabled(type || "option", index, true);
    }
  }, _disabled:function(elem) {
    return $(elem).hasClass("ui-state-disabled");
  }, _toggleEnabled:function(type, index, flag) {
    var element = this.element.find(type).eq(index), elements = type === "optgroup" ? this.list.find("li.ui-selectmenu-group-" + index) : this._optionLis.eq(index);
    if (elements) {
      elements.toggleClass("ui-state-disabled", !flag).attr("aria-disabled", !flag);
      if (flag) {
        element.removeAttr("disabled");
      } else {
        element.attr("disabled", "disabled");
      }
    }
  }, index:function(newIndex) {
    if (arguments.length) {
      if (!this._disabled($(this._optionLis[newIndex])) && newIndex != this._selectedIndex()) {
        this.element[0].selectedIndex = newIndex;
        this._refreshValue();
        this.change();
      } else {
        return false;
      }
    } else {
      return this._selectedIndex();
    }
  }, value:function(newValue) {
    if (arguments.length && newValue != this.element[0].value) {
      this.element[0].value = newValue;
      this._refreshValue();
      this.change();
    } else {
      return this.element[0].value;
    }
  }, _refreshValue:function() {
    var activeClass = this.options.style == "popup" ? " ui-state-active" : "";
    var activeID = "ui-selectmenu-item-" + Math.round(Math.random() * 1E3);
    this.list.find(".ui-selectmenu-item-selected").removeClass("ui-selectmenu-item-selected" + activeClass).find("a").attr("aria-selected", "false").attr("id", "");
    this._selectedOptionLi().addClass("ui-selectmenu-item-selected" + activeClass).find("a").attr("aria-selected", "true").attr("id", activeID);
    var currentOptionClasses = this.newelement.data("optionClasses") ? this.newelement.data("optionClasses") : "";
    var newOptionClasses = this._selectedOptionLi().data("optionClasses") ? this._selectedOptionLi().data("optionClasses") : "";
    this.newelement.removeClass(currentOptionClasses).data("optionClasses", newOptionClasses).addClass(newOptionClasses).find(".ui-selectmenu-status").html(this._selectedOptionLi().find("a:eq(0)").html());
    this.list.attr("aria-activedescendant", activeID);
  }, _refreshPosition:function() {
    var o = this.options, positionDefault = {of:this.newelement, my:"left top", at:"left bottom", collision:"flip"};
    if (o.style == "popup") {
      var selected = this._selectedOptionLi();
      positionDefault.my = "left top" + (this.list.offset().top - selected.offset().top - (this.newelement.outerHeight() + selected.outerHeight()) / 2);
      positionDefault.collision = "fit";
    }
    this.listWrap.removeAttr("style").zIndex(this.element.zIndex() + 2).position($.extend(positionDefault, o.positionOptions));
  }});
})(jQuery);
(function(factory) {
  if (typeof define === "function" && define.amd) {
    define(["jquery"], factory);
  } else {
    factory(jQuery);
  }
})(function($) {
  var table = $.widget("aw.table", {OVERSCROLL_FIX:1, DEFAULT_HEADER_BORDERS:0, alwaysScrollY:false, alwaysNoScrollY:false, defaultElement:"<table>", isVisible:false, colgroup:null, innerTable:null, headerRow:null, innerTableTbody:null, lastScrollY:false, options:{scrollable:["y"], columns:{resizable:null, minWidths:null, maxWidths:null}, width:null, height:null, keepColumnsTableWidth:true}, _getWidth:function(e) {
    var $e;
    if (e.length) {
      $e = e;
      e = e[0];
    } else {
      $e = $(e);
    }
    if (e.style.display == "none") {
      if (isEmpty(e.style.width)) {
        return 0;
      }
      return parseInt(e.style.width);
    }
    return $e.outerWidth();
  }, _setWidth:function(e, width, outerWidthDiff, setMaxWidth) {
    var $e;
    if (e.length) {
      $e = e;
      e = e[0];
    } else {
      $e = $(e);
    }
    if (outerWidthDiff == undefined || outerWidthDiff == null) {
      if (e.style.display != "none") {
        outerWidthDiff = $e.outerWidth() - $e.width();
      } else {
        outerWidthDiff = this.DEFAULT_HEADER_BORDERS;
      }
    }
    var trueWidth = width - outerWidthDiff;
    $e.width(trueWidth);
    if (setMaxWidth) {
    }
  }, _getHeight:function(e) {
    return $(e).outerHeight();
  }, _setHeight:function(e, outer) {
    var $e = $(e);
    var height = outer - ($e.outerHeight() - $e.height());
    $e.height(height);
  }, getHeaderCellByBodyCellIndexFiltered:function(cellIndex, headerCells) {
    var headerCell = this.getHeaderCellByBodyCellIndex(cellIndex, headerCells);
    if (headerCell != null) {
      if (headerCell.style.display == "none" || (!isEmpty(headerCell.attributes["colspan"]) || headerCell.nextSibling == null)) {
        headerCell = null;
      }
    }
    return headerCell;
  }, getHeaderCellByBodyCellIndex:function(cellIndex, headerCells) {
    var trueIndex = 0;
    var totalspan = 0;
    for (var i = 0;i < headerCells.length;i++) {
      var $th = headerCells[i];
      trueIndex = i + totalspan;
      if ($th.attributes["colspan"]) {
        var span = 0 + $th.attributes["colspan"].value - 1;
        if (trueIndex <= cellIndex && cellIndex <= trueIndex + span) {
          return $th;
        }
        totalspan += span;
      }
      if (trueIndex == cellIndex) {
        return $th;
      }
    }
    return null;
  }, _initWidths:function() {
    var that = this;
    var result = this._getBodyFirstRowCells().map(function(i, e) {
      var width = 0;
      if (e.style.display == "none") {
        width = $(e).outerWidth();
      } else {
        width = that._getWidth(e);
      }
      return width;
    }).get();
    return result;
  }, _getOriginalHeaderRow:function() {
    if (this.headerRow == null) {
      this.headerRow = this.element.find("> thead > tr:first-child").first();
    }
    if (this.headerRow.length == 0) {
      this.headerRow = 0;
    }
    return this.headerRow;
  }, _getHeaderRow:function() {
    if (this.headerRow == null) {
      this.headerRow = this.element.parent().find(".sticky-thead > thead > tr:first-child").first();
    }
    if (this.headerRow.length == 0) {
      this.headerRow = 0;
    }
    return this.headerRow;
  }, _getColgroup:function() {
    if (this.colgroup == null) {
      this.colgroup = this.element.find("colgroup");
    }
    if (this.colgroup.length == 0) {
      this.colgroup = null;
    }
    return this.colgroup;
  }, _geInnerTableTbody:function() {
    if (this.innerTableTbody == null) {
      this.innerTableTbody = this.element.find("> tbody:first");
    }
    if (this.innerTableTbody.length == 0) {
      this.innerTableTbody = null;
    }
    return this.innerTableTbody;
  }, _getInnerTable:function() {
    if (this.innerTable == null) {
      this.innerTable = this.element;
    }
    if (this.innerTable.length == 0) {
      this.innerTable = null;
    }
    return this.innerTable;
  }, _getBodyFirstRow:function() {
    return this.element.find("> tbody tr.ui-qb-grid-row:first-child");
  }, _getHeaderCells:function() {
    return this._getHeaderRow().children();
  }, _getBodyFirstRowCells:function() {
    return this._getBodyFirstRow().children();
  }, _getColgroupCells:function() {
    var colgroup = this._getColgroup();
    if (colgroup == null) {
      return[];
    }
    return colgroup.children();
  }, _hasScroll:function(element) {
    var $element = $(element);
    return{"x":$element.outerWidth() < $element.prop("scrollWidth"), "y":$element.outerHeight() < $element.prop("scrollHeight")};
  }, _hasScrollY:function() {
    if (this.alwaysScrollY) {
      return true;
    }
    if (this.alwaysNoScrollY) {
      return false;
    }
    var tbody = this._getOuterTbody()[0];
    var offsetHeight = tbody.offsetHeight;
    if (offsetHeight == 0) {
      offsetHeight = tbody.clientHeight;
    }
    return offsetHeight < tbody.scrollHeight;
  }, updateHeaderCellWidth:function(hasScrollY) {
    var that = this;
    if (hasScrollY == undefined) {
      hasScrollY = this._hasScrollY();
    }
    this._setTableHeaderWidth(this._getTotalWidthStatic(), hasScrollY);
    var colspan = 0;
    this._getHeaderCells().each(function(i, e) {
      var trueIndex = i + colspan;
      var width = 0;
      if (e.attributes["colspan"]) {
        var span = 0 + e.attributes["colspan"].value - 1;
        for (var j = 0;j <= span;j++) {
          width += that.columnWidths[trueIndex + j];
        }
        colspan += span;
      } else {
        width = that.columnWidths[trueIndex];
      }
      if (trueIndex == that.columnWidths.length - 1) {
        width += hasScrollY ? that.sbwidth : 0;
      }
      that._setWidth(e, width, null, true);
    });
  }, syncTable:function() {
    if (!this.element.is(":visible")) {
      return;
    }
    this._syncColWidths();
    this._setTableHeaderWidth();
  }, _setColCellWidth:function() {
    var that = this;
    this._getColgroupCells().each(function(i, e) {
      that._setWidth(e, that.columnWidths[i]);
    });
  }, _syncColWidths:function() {
    var that = this;
    var scrollY = this._hasScrollY();
    var width = this._getTotalWidthStatic();
    if (scrollY && !this.lastScrollY) {
      width -= this.sbwidth;
    }
    this.lastScrollY = scrollY;
    this._setTableBodyWidth(width);
    this._setColCellWidth();
    that.columnWidths = this._getBodyCellWidths();
    this.updateHeaderCellWidth();
    that.columnWidths = this._getBodyAndHeaderCellWidths();
    this._setColCellWidth();
    this.updateHeaderCellWidth();
    this._setTableBodyWidth(this.columnWidths);
  }, _getBodyAndHeaderCellWidths:function() {
    var that = this;
    var headerCells = this._getHeaderCells();
    var result = this._getBodyFirstRowCells().map(function(i, e) {
      var width = 0;
      if (e.style.display == "none") {
        width = $(e).outerWidth();
      } else {
        width = that._getWidth(e);
      }
      var headerCell = that.getHeaderCellByBodyCellIndexFiltered(i, headerCells);
      if (headerCell) {
        var headerWidth = that._getWidth(headerCell);
        width = Math.max(width, headerWidth);
      }
      return width;
    }).get();
    return result;
  }, _getBodyCellWidths:function() {
    var that = this;
    var result = this._getBodyFirstRowCells().map(function(i, e) {
      var width = 0;
      if (e.style.display == "none") {
        width = $(e).outerWidth();
      } else {
        width = that._getWidth(e);
      }
      return width;
    }).get();
    return result;
  }, _getTotalWidthStatic:function(columnWidths) {
    if (columnWidths == undefined) {
      columnWidths = this.columnWidths;
    }
    var total = 0;
    var cells = this._getColgroupCells();
    for (var i = 0;i < columnWidths.length;i++) {
      if (cells.length < i && (cells[i] != null && cells[i].style.display == "none")) {
        total += 0;
      } else {
        total += columnWidths[i];
      }
    }
    return total;
  }, _setTableWidth:function(width, hasScrollY) {
    if (width == undefined) {
      width = this.columnWidths;
    }
    if (Array.isArray(width)) {
      width = this._getTotalWidthStatic(width);
    }
    this._setTableBodyWidth(width);
    this._setTableHeaderWidth(width, hasScrollY);
  }, _setTableBodyWidth:function(width) {
    return;
    if (width == undefined) {
      width = this.columnWidths;
    }
    if (Array.isArray(width)) {
      width = this._getTotalWidthStatic(width);
    }
    var body = this._getInnerTable();
    body.width(width);
  }, _setTableHeaderWidth:function(width, hasScrollY) {
    return;
    if (width == undefined) {
      width = this.columnWidths;
    }
    if (Array.isArray(width)) {
      width = this._getTotalWidthStatic(width);
    }
    if (hasScrollY == undefined) {
      hasScrollY = this._hasScrollY();
    }
    var headerRow = this._getHeaderRow();
    var headerWidth = width + (hasScrollY ? this.sbwidth : 0);
    headerWidth = headerWidth;
    this.element.parent().find(".sticky-thead").width(headerWidth);
  }, _getOuterTbody:function() {
    if (this.outerTbody == null) {
      this.outerTbody = this.element.find("> tbody");
    }
    return this.outerTbody;
  }, _setBodyBounds:function() {
    var tbody_height = this.element.height() - this.element.find("thead").map(function(i, e) {
      return $(e).length ? $(e).outerHeight() : 0;
    }).get().reduce(function(prev, current) {
      return prev + current;
    }, 0);
  }, _createColGroup:function(widths) {
    var colgroup = $("<colgroup/>");
    var headerCells = this._getBodyFirstRowCells();
    for (var i = 0;i < headerCells.length;i++) {
      var cell = $(headerCells[i]);
      var col = $("<col />");
      var colspan = cell.attr("colspan");
      if (isEmpty(colspan)) {
        colspan = 1;
      } else {
        colspan = parseInt(colspan);
      }
      col.attr("span", colspan);
      col.attr("class", cell.attr("class"));
      if (cell.css("display") == "none") {
        col.css("display", cell.css("display"));
      }
      var width = widths[i];
      col.width(width);
      colgroup.append(col);
    }
    return colgroup;
  }, _create:function() {
    this._super();
    var that = this;
    this.columnWidths = [];
    this.resizeLock = false;
    var $table = this.$element = this.element;
    this.isVisible = this.element.is(":visible");
    this.sbwidth = jQuery.position.scrollbarWidth();
    this.size = this._parseSize(this.options.width, this.options.height);
    this.scrollable = this._parseScrollable(this.options.scrollable);
    this.columnCount = $table.find("> tbody > tr").children().length;
    this.columns = this._parseColumns(this.options.columns);
    this.styles = {};
    this.styles.table = $table.attr("style");
    this.styles.thead = $table.find("> thead").attr("style");
    this.styles.thead_tr = $table.find("> thead > tr").attr("style");
    this.styles.tfoot = $table.find("> tfoot").attr("style");
    this.styles.tfoot_tr = $table.find("> tfoot > tr").attr("style");
    this.styles.tbody = $table.find("> tbody").attr("style");
    this.size = {"width":this.size.width !== null ? this.size.width : this._getWidth($table), "height":this.size.height !== null ? this.size.height : this._getHeight($table)};
    this.innerSize = {"width":this.size.width - ($table.outerWidth() - $table.width()), "height":this.size.height - ($table.outerHeight() - $table.height())};
    var scrollY = this.alwaysScrollY ? "scroll" : "auto";
    var initW = $table.parent().width() - 3;
    this.columnWidths = this._initWidths();
    $table.css({});
    var headerHeight = $table.find("thead > tr").outerHeight();
    if (headerHeight <= 20) {
      headerHeightStr = headerHeight + "px";
    } else {
      headerHeightStr = "1.5em";
    }
    if (this.isVisible) {
      $table.find("> thead").css({"height":headerHeightStr});
      $table.css({"margin-top":headerHeightStr});
    }
    var top = $table.find("thead").outerHeight() + parseFloat($table.css("padding-top"));
    if (top < 10) {
      top = 22;
    }
    this._getInnerTable().attr("class", $table.attr("class"));
    this.newTable();
    $("#qb-ui-grid table")[0].style.width = initW + "px";
    $("#qb-ui-grid table")[0].style["min-width"] = initW + "px";
    if (this.isVisible) {
      this._setBodyBounds();
    }
    this.hasScroll = {};
    this.columnWidths = this._initWidths();
    this._setTableWidth(this.columnWidths);
    this.element.find("thead").remove();
    $("#qb-ui-grid table")[0].style.width = "";
    $("#qb-ui-grid table")[0].style["min-width"] = "";
    if (this.columns.resizable != null) {
      var resizable_params = this._getResizeableParams();
      this._getHeaderCells().each(function(i, e) {
        if (that.columns.resizable[i] && $(e).hasClass("allow-resize")) {
          if (that.columns.minWidths != null) {
            resizable_params["minWidth"] = that.columns.minWidths[i];
          }
          if (that.columns.maxWidths != null) {
            resizable_params["maxWidth"] = that.columns.maxWidths[i];
          }
          $(e).resizable(resizable_params);
        }
      });
    }
    if (!that.hasScroll.x) {
      that._on($table.find("> tbody").get(0), {"scroll":function(event) {
        var offset = -1 * $(event.target).scrollLeft();
        that._getHeaderRow().css("left", offset + "px");
      }});
      that.hasScroll.x = true;
    }
    var colgroup = this._createColGroup(this.columnWidths);
    this._geInnerTableTbody().before(colgroup);
    this.syncTable();
    if (true) {
      $(window).on("show", function() {
        if (!that.isVisible) {
          if (that.element.is(":visible")) {
            that.isVisible = true;
            that.syncTable();
          }
        }
      });
    }
    QBWebCoreGridResizeLock = false;
    $(window).resize(function() {
      if (QBWebCoreGridResizeLock === true) {
        return;
      }
      that.syncTable();
    });
  }, newTable:function() {
    this.$w = $(window);
    this.$t = this.element;
    this.$thead = this.$t.find("thead").clone();
    if (this.$t.hasClass("overflow-y")) {
      this.$t.removeClass("overflow-y").parent().addClass("overflow-y");
    }
    this.$t.after('<table class="sticky-thead" />');
    this.$stickyHead = this.element.siblings(".sticky-thead");
    this.$stickyWrap = this.element.parent(".sticky-wrap");
    this.$stickyHead.append(this.$thead);
    var me = this;
    this.$t.parent(".sticky-wrap").scroll(function() {
      me.repositionStickyHead();
    });
    this.$w.resize(function() {
      me.repositionStickyHead();
    }).scroll(function() {
      me.repositionStickyHead();
    });
  }, repositionStickyHead:function() {
    var allowance = 0;
    if (true || this.$t.height() > this.$stickyWrap.height()) {
      if (true || this.$stickyWrap.scrollTop() > 0) {
        this.$stickyHead.css({opacity:1, top:this.$stickyWrap.scrollTop()});
      } else {
        this.$stickyHead.css({opacity:1, top:0});
      }
    } else {
      if (this.$w.scrollTop() > this.$t.offset().top && this.$w.scrollTop() < this.$t.offset().top + this.$t.outerHeight() - allowance) {
        this.$stickyHead.css({top:this.$w.scrollTop() - this.$t.offset().top});
      } else {
        this.$stickyHead.css({top:0});
      }
    }
  }, _destroy:function() {
    var that = this;
    if (this.columns.resizable !== null) {
      this._getHeaderCells().each(function(i, e) {
        if (that.columns.resizable[i]) {
          $(e).resizable("destroy");
        }
      });
    }
    this._getInnerTable().find("tbody").unwrap().unwrap().unwrap().unwrap();
    this.element.find("> thead").find("> tr").attr("style", typeof this.styles.thead_tr === "undefined" ? null : this.styles.thead_tr).end().attr("style", typeof this.styles.thead === "undefined" ? null : this.styles.thead).end().find("> tfoot").find("> tr").attr("style", typeof this.styles.tfoot_tr === "undefined" ? null : this.styles.tfoot_tr).end().attr("style", typeof this.styles.tfoot === "undefined" ? null : this.styles.tfoot).end().find("> tbody").attr("style", typeof this.styles.tbody === 
    "undefined" ? null : this.styles.tbody).end().attr("style", typeof this.styles.table === "undefined" ? null : this.styles.table);
    this._getHeaderCells().each(function(i, e) {
      $(e).css("width", "");
    });
  }, _isNullorUndefined:function(value) {
    return value === null || typeof value == "undefined";
  }, _parseSize:function(width, height) {
    var size = {};
    if (this._isNullorUndefined(width) || !this._isPositiveNonZeroInt(width)) {
      size.width = null;
    } else {
      size.width = width;
    }
    if (this._isNullorUndefined(height) || !this._isPositiveNonZeroInt(height)) {
      size.height = null;
    } else {
      size.height = height;
    }
    return size;
  }, _parseScrollable:function(value) {
    var scrollable;
    if (value === true) {
      scrollable = {"x":true, "y":true};
    } else {
      if (value == "x") {
        scrollable = {"x":true, "y":false};
      } else {
        if (value == "y") {
          scrollable = {"x":false, "y":true};
        } else {
          if ($.isArray(value)) {
            scrollable = {"x":$.inArray("x", value), "y":$.inArray("y", value)};
          } else {
            scrollable = {"x":false, "y":false};
          }
        }
      }
    }
    return scrollable;
  }, _parseColumns:function(columns) {
    var temp = {};
    temp["resizable"] = this._isNullorUndefined(columns) ? null : this._parseResizable(columns.resizable);
    temp["minWidths"] = this._isNullorUndefined(columns) ? null : this._parseWidth(columns.minWidths);
    temp["maxWidths"] = this._isNullorUndefined(columns) ? null : this._parseWidth(columns.maxWidths);
    return temp;
  }, _parseResizable:function(resizable) {
    var temp = [];
    if (this._isNullorUndefined(resizable)) {
      return null;
    } else {
      if ($.isFunction(resizable)) {
        temp = resizable();
      } else {
        if ($.isArray(resizable)) {
          temp = resizable;
        } else {
          if (resizable === true) {
            for (var i = 0;i < this.columnCount;i++) {
              temp[i] = true;
            }
            return temp;
          } else {
            return null;
          }
        }
      }
    }
    if (!$.isArray(temp) || (temp.length != this.columnCount || !temp.every(function(value) {
      return value === true || value === false;
    }))) {
      return null;
    }
    return temp;
  }, _isInt:function(value) {
    return+value == Math.floor(+value);
  }, _isPositiveInt:function(value) {
    return+value == Math.floor(+value) && +value >= 0;
  }, _isPositiveNonZeroInt:function(value) {
    return+value == Math.floor(+value) && +value > 0;
  }, _parseWidth:function(width) {
    var temp = [];
    if (this._isNullorUndefined(width)) {
      return null;
    } else {
      if ($.isFunction(width)) {
        temp = width();
      } else {
        if ($.isArray(width)) {
          temp = width;
        } else {
          if (this._isPositiveInt(width)) {
            var value = +width;
            for (var i = 0;i < this.columnCount;i++) {
              temp[i] = value;
            }
            return temp;
          } else {
            return null;
          }
        }
      }
    }
    var that = this;
    if (!$.isArray(temp) || (temp.length != this.columnCount || !temp.every(function(value) {
      return that._isPositiveInt(value);
    }))) {
      return null;
    }
    return temp;
  }, _scale:function(widths, finalTotal, currentTotal) {
    if (typeof currentTotal == "undefined") {
      currentTotal = 0;
      for (var i = 0;i < widths.length;i++) {
        currentTotal += widths[i];
      }
    }
    var scale = finalTotal / currentTotal;
    var newWidths = [];
    var newTotal = 0;
    for (var i = 0;i < widths.length - 1;i++) {
      newWidths[i] = Math.round(scale * widths[i]);
      newTotal += newWidths[i];
    }
    newWidths[i] = finalTotal - newTotal;
    return newWidths;
  }, resize:function(width, height) {
    var that = this;
    var newsize = this._parseSize(width, height);
    var $table = this.element;
    if (newsize.width != null) {
      $table.css("width", width);
      this.size.width = newsize.width;
      this.innerSize.width = newsize.width - ($table.outerWidth() - $table.width());
      var total = this._getTotalWidthStatic();
      if (this.scrollable.x) {
        if (this.hasScroll.x || !this.options.keepColumnsTableWidth) {
          var hadScroll_x = this.hasScroll.x;
          var hasScroll_x = this._hasScroll($table.find("> tbody")).x;
          if (!hadScroll_x && hasScroll_x) {
            this._on($table.find("> tbody").get(0), {"scroll":function(event) {
              var offset = -1 * $(event.target).scrollLeft();
              that._getHeaderRow().css("left", offset + "px");
            }});
            this._setTableWidth(total);
            this.hasScroll.x = true;
          } else {
            if (hadScroll_x && !hasScroll_x) {
              this._off($table.find("> tbody"), "scroll");
              this.hasScroll.x = false;
            }
          }
        } else {
          this.columnWidths = this._scale(this.columnWidths, this.innerSize.width, total);
          if (this.hasScroll.x) {
            this._getInnerTable().find("tbody").css("width", "");
            this._getHeaderRow().width(this.innerSize.width + "px");
            this._off($table.find("> tbody"), "scroll");
            this.hasScroll.x = false;
          }
        }
      } else {
        if (total != this.innerSize.width) {
          this.columnWidths = this._scale(this.columnWidths, this.innerSize.width, total);
        }
      }
      $table.children().css("width", this.innerSize.width + "px");
    }
    if (height != null) {
      this.size.height = newsize.height;
      this.innerSize.height = newsize.height - ($table.outerHeight() - $table.height());
      this._setBodyBounds();
    }
    this.refresh();
  }, refresh:function() {
    this._syncColWidths();
  }, body:function(rows) {
    this._getInnerTable().find("tbody").html(rows);
    this.refresh();
  }, _getHeaderCellsIndex:function(element) {
    return $(element).index();
  }, _getHeaderCellsIndexTrue:function(element) {
    var headerCells = this._getHeaderCells();
    var result = 0;
    for (var i = 0;i < headerCells.length;i++) {
      var cell = headerCells[i];
      if (cell.attributes["colspan"]) {
        result += 0 + cell.attributes["colspan"].value - 1;
      }
      if (cell == element) {
        break;
      }
      result++;
    }
    return result;
  }, _getResizeableParams:function() {
    var that = this;
    var $table = this.element;
    var $headerCell;
    var bodyCell;
    var colIndex;
    var cellIndex;
    var resized_widths = [];
    var diff = 0;
    var hasScrollY;
    var cellOuterDiff;
    var totalWidth = 0;
    var colCell;
    var newWidth;
    var originalSize = 0;
    return{handles:"e", start:function(event, ui) {
      $headerCell = ui.element;
      originalSize = that._getWidth($headerCell);
      colIndex = that._getHeaderCellsIndexTrue(ui.element[0]);
      cellIndex = that._getHeaderCellsIndexTrue(ui.element[0]);
      colCell = that._getColgroupCells()[colIndex];
      bodyCell = that._getBodyFirstRowCells()[cellIndex];
      that.resizeLock = false;
      QBWebCoreGridResizeLock = true;
      hasScrollY = that._hasScrollY();
      cellOuterDiff = $(bodyCell).outerWidth() - $(bodyCell).width();
      totalWidth = that._getTotalWidthStatic();
    }, resize:function(event, ui) {
      if (that.resizeLock) {
        return;
      }
      that.resizeLock = true;
      var newDiff = ui.size.width - ui.originalSize.width;
      if (newDiff == diff) {
        return;
      }
      diff = newDiff;
      for (var i = 0;i < that.columnWidths.length;i++) {
        resized_widths[i] = that.columnWidths[i];
      }
      that._setTableWidth(totalWidth + diff, hasScrollY);
      that._setWidth(colCell, resized_widths[cellIndex] + diff);
      that._setWidth(bodyCell, resized_widths[cellIndex] + diff);
      newWidth = Math.max(that._getWidth(bodyCell), that._getWidth($headerCell));
      if (resized_widths[cellIndex] + diff < newWidth) {
        diff = newWidth - originalSize;
        that._setTableWidth(totalWidth + diff, hasScrollY);
        that._setWidth(colCell, resized_widths[cellIndex] + diff);
        that._setWidth(ui.element, resized_widths[cellIndex] + diff);
        that._setTableWidth(totalWidth + diff, hasScrollY);
      }
      that.resizeLock = false;
      resized_widths[cellIndex] += diff;
    }, stop:function(event, ui) {
      QBWebCoreGridResizeLock = false;
      that.resizeLock = false;
      for (var i = 0;i < that.columnWidths.length;i++) {
        that.columnWidths[i] = resized_widths[i];
      }
      that.syncTable();
    }};
  }});
});
(function(glob) {
  var version = "0.4.2", has = "hasOwnProperty", separator = /[\.\/]/, wildcard = "*", fun = function() {
  }, numsort = function(a, b) {
    return a - b;
  }, current_event, stop, events = {n:{}}, eve = function(name, scope) {
    name = String(name);
    var e = events, oldstop = stop, args = Array.prototype.slice.call(arguments, 2), listeners = eve.listeners(name), z = 0, f = false, l, indexed = [], queue = {}, out = [], ce = current_event, errors = [];
    current_event = name;
    stop = 0;
    for (var i = 0, ii = listeners.length;i < ii;i++) {
      if ("zIndex" in listeners[i]) {
        indexed.push(listeners[i].zIndex);
        if (listeners[i].zIndex < 0) {
          queue[listeners[i].zIndex] = listeners[i];
        }
      }
    }
    indexed.sort(numsort);
    while (indexed[z] < 0) {
      l = queue[indexed[z++]];
      out.push(l.apply(scope, args));
      if (stop) {
        stop = oldstop;
        return out;
      }
    }
    for (i = 0;i < ii;i++) {
      l = listeners[i];
      if ("zIndex" in l) {
        if (l.zIndex == indexed[z]) {
          out.push(l.apply(scope, args));
          if (stop) {
            break;
          }
          do {
            z++;
            l = queue[indexed[z]];
            l && out.push(l.apply(scope, args));
            if (stop) {
              break;
            }
          } while (l);
        } else {
          queue[l.zIndex] = l;
        }
      } else {
        out.push(l.apply(scope, args));
        if (stop) {
          break;
        }
      }
    }
    stop = oldstop;
    current_event = ce;
    return out.length ? out : null;
  };
  eve._events = events;
  eve.listeners = function(name) {
    var names = name.split(separator), e = events, item, items, k, i, ii, j, jj, nes, es = [e], out = [];
    for (i = 0, ii = names.length;i < ii;i++) {
      nes = [];
      for (j = 0, jj = es.length;j < jj;j++) {
        e = es[j].n;
        items = [e[names[i]], e[wildcard]];
        k = 2;
        while (k--) {
          item = items[k];
          if (item) {
            nes.push(item);
            out = out.concat(item.f || []);
          }
        }
      }
      es = nes;
    }
    return out;
  };
  eve.on = function(name, f) {
    name = String(name);
    if (typeof f != "function") {
      return function() {
      };
    }
    var names = name.split(separator), e = events;
    for (var i = 0, ii = names.length;i < ii;i++) {
      e = e.n;
      e = e.hasOwnProperty(names[i]) && e[names[i]] || (e[names[i]] = {n:{}});
    }
    e.f = e.f || [];
    for (i = 0, ii = e.f.length;i < ii;i++) {
      if (e.f[i] == f) {
        return fun;
      }
    }
    e.f.push(f);
    return function(zIndex) {
      if (+zIndex == +zIndex) {
        f.zIndex = +zIndex;
      }
    };
  };
  eve.f = function(event) {
    var attrs = [].slice.call(arguments, 1);
    return function() {
      eve.apply(null, [event, null].concat(attrs).concat([].slice.call(arguments, 0)));
    };
  };
  eve.stop = function() {
    stop = 1;
  };
  eve.nt = function(subname) {
    if (subname) {
      return(new RegExp("(?:\\.|\\/|^)" + subname + "(?:\\.|\\/|$)")).test(current_event);
    }
    return current_event;
  };
  eve.nts = function() {
    return current_event.split(separator);
  };
  eve.off = eve.unbind = function(name, f) {
    if (!name) {
      eve._events = events = {n:{}};
      return;
    }
    var names = name.split(separator), e, key, splice, i, ii, j, jj, cur = [events];
    for (i = 0, ii = names.length;i < ii;i++) {
      for (j = 0;j < cur.length;j += splice.length - 2) {
        splice = [j, 1];
        e = cur[j].n;
        if (names[i] != wildcard) {
          if (e[names[i]]) {
            splice.push(e[names[i]]);
          }
        } else {
          for (key in e) {
            if (e[has](key)) {
              splice.push(e[key]);
            }
          }
        }
        cur.splice.apply(cur, splice);
      }
    }
    for (i = 0, ii = cur.length;i < ii;i++) {
      e = cur[i];
      while (e.n) {
        if (f) {
          if (e.f) {
            for (j = 0, jj = e.f.length;j < jj;j++) {
              if (e.f[j] == f) {
                e.f.splice(j, 1);
                break;
              }
            }
            !e.f.length && delete e.f;
          }
          for (key in e.n) {
            if (e.n[has](key) && e.n[key].f) {
              var funcs = e.n[key].f;
              for (j = 0, jj = funcs.length;j < jj;j++) {
                if (funcs[j] == f) {
                  funcs.splice(j, 1);
                  break;
                }
              }
              !funcs.length && delete e.n[key].f;
            }
          }
        } else {
          delete e.f;
          for (key in e.n) {
            if (e.n[has](key) && e.n[key].f) {
              delete e.n[key].f;
            }
          }
        }
        e = e.n;
      }
    }
  };
  eve.once = function(name, f) {
    var f2 = function() {
      eve.unbind(name, f2);
      return f.apply(this, arguments);
    };
    return eve.on(name, f2);
  };
  eve.version = version;
  eve.toString = function() {
    return "You are running Eve " + version;
  };
  typeof module != "undefined" && module.exports ? module.exports = eve : typeof define != "undefined" ? define("eve", [], function() {
    return eve;
  }) : glob.eve = eve;
})(window || this);
(function(glob, factory) {
  if (typeof define === "function" && define.amd) {
    define(["eve"], function(eve) {
      return factory(glob, eve);
    });
  } else {
    factory(glob, glob.eve);
  }
})(this, function(window, eve) {
  function R(first) {
    if (R.is(first, "function")) {
      return loaded ? first() : eve.on("raphael.DOMload", first);
    } else {
      if (R.is(first, array)) {
        return R._engine.create[apply](R, first.splice(0, 3 + R.is(first[0], nu))).add(first);
      } else {
        var args = Array.prototype.slice.call(arguments, 0);
        if (R.is(args[args.length - 1], "function")) {
          var f = args.pop();
          return loaded ? f.call(R._engine.create[apply](R, args)) : eve.on("raphael.DOMload", function() {
            f.call(R._engine.create[apply](R, args));
          });
        } else {
          return R._engine.create[apply](R, arguments);
        }
      }
    }
  }
  R.version = "2.1.2";
  R.eve = eve;
  var loaded, separator = /[, ]+/, elements = {circle:1, rect:1, path:1, ellipse:1, text:1, image:1}, formatrg = /\{(\d+)\}/g, proto = "prototype", has = "hasOwnProperty", g = {doc:document, win:window}, oldRaphael = {was:Object.prototype[has].call(g.win, "Raphael"), is:g.win.Raphael}, Paper = function() {
    this.ca = this.customAttributes = {};
  }, paperproto, appendChild = "appendChild", apply = "apply", concat = "concat", supportsTouch = "ontouchstart" in g.win || g.win.DocumentTouch && g.doc instanceof DocumentTouch, E = "", S = " ", Str = String, split = "split", events = "click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[split](S), touchMap = {mousedown:"touchstart", mousemove:"touchmove", mouseup:"touchend"}, lowerCase = Str.prototype.toLowerCase, math = Math, mmax = math.max, 
  mmin = math.min, abs = math.abs, pow = math.pow, PI = math.PI, nu = "number", string = "string", array = "array", toString = "toString", fillString = "fill", objectToString = Object.prototype.toString, paper = {}, push = "push", ISURL = R._ISURL = /^url\(['"]?([^\)]+?)['"]?\)$/i, colourRegExp = /^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i, 
  isnan = {"NaN":1, "Infinity":1, "-Infinity":1}, bezierrg = /^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/, round = math.round, setAttribute = "setAttribute", toFloat = parseFloat, toInt = parseInt, upperCase = Str.prototype.toUpperCase, availableAttrs = R._availableAttrs = {"arrow-end":"none", "arrow-start":"none", blur:0, "clip-rect":"0 0 1e9 1e9", cursor:"default", cx:0, cy:0, fill:"#fff", "fill-opacity":1, font:'10px "Arial"', "font-family":'"Arial"', "font-size":"10", "font-style":"normal", 
  "font-weight":400, gradient:0, height:0, href:"http://raphaeljs.com/", "letter-spacing":0, opacity:1, path:"M0,0", r:0, rx:0, ry:0, src:"", stroke:"#000", "stroke-dasharray":"", "stroke-linecap":"butt", "stroke-linejoin":"butt", "stroke-miterlimit":0, "stroke-opacity":1, "stroke-width":1, target:"_blank", "text-anchor":"middle", title:"Raphael", transform:"", width:0, x:0, y:0}, availableAnimAttrs = R._availableAnimAttrs = {blur:nu, "clip-rect":"csv", cx:nu, cy:nu, fill:"colour", "fill-opacity":nu, 
  "font-size":nu, height:nu, opacity:nu, path:"path", r:nu, rx:nu, ry:nu, stroke:"colour", "stroke-opacity":nu, "stroke-width":nu, transform:"transform", width:nu, x:nu, y:nu}, whitespace = /[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]/g, commaSpaces = /[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/, 
  hsrg = {hs:1, rg:1}, p2s = /,?([achlmqrstvxz]),?/gi, pathCommand = /([achlmrqstvz])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/ig, 
  tCommand = /([rstm])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/ig, pathValues = /(-?\d*\.?\d*(?:e[\-+]?\d+)?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/ig, 
  radial_gradient = R._radial_gradient = /^r(?:\(([^,]+?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*([^\)]+?)\))?/, eldata = {}, sortByKey = function(a, b) {
    return a.key - b.key;
  }, sortByNumber = function(a, b) {
    return toFloat(a) - toFloat(b);
  }, fun = function() {
  }, pipe = function(x) {
    return x;
  }, rectPath = R._rectPath = function(x, y, w, h, r) {
    if (r) {
      return[["M", x + r, y], ["l", w - r * 2, 0], ["a", r, r, 0, 0, 1, r, r], ["l", 0, h - r * 2], ["a", r, r, 0, 0, 1, -r, r], ["l", r * 2 - w, 0], ["a", r, r, 0, 0, 1, -r, -r], ["l", 0, r * 2 - h], ["a", r, r, 0, 0, 1, r, -r], ["z"]];
    }
    return[["M", x, y], ["l", w, 0], ["l", 0, h], ["l", -w, 0], ["z"]];
  }, ellipsePath = function(x, y, rx, ry) {
    if (ry == null) {
      ry = rx;
    }
    return[["M", x, y], ["m", 0, -ry], ["a", rx, ry, 0, 1, 1, 0, 2 * ry], ["a", rx, ry, 0, 1, 1, 0, -2 * ry], ["z"]];
  }, getPath = R._getPath = {path:function(el) {
    return el.attr("path");
  }, circle:function(el) {
    var a = el.attrs;
    return ellipsePath(a.cx, a.cy, a.r);
  }, ellipse:function(el) {
    var a = el.attrs;
    return ellipsePath(a.cx, a.cy, a.rx, a.ry);
  }, rect:function(el) {
    var a = el.attrs;
    return rectPath(a.x, a.y, a.width, a.height, a.r);
  }, image:function(el) {
    var a = el.attrs;
    return rectPath(a.x, a.y, a.width, a.height);
  }, text:function(el) {
    var bbox = el._getBBox();
    return rectPath(bbox.x, bbox.y, bbox.width, bbox.height);
  }, set:function(el) {
    var bbox = el._getBBox();
    return rectPath(bbox.x, bbox.y, bbox.width, bbox.height);
  }}, mapPath = R.mapPath = function(path, matrix) {
    if (!matrix) {
      return path;
    }
    var x, y, i, j, ii, jj, pathi;
    path = path2curve(path);
    for (i = 0, ii = path.length;i < ii;i++) {
      pathi = path[i];
      for (j = 1, jj = pathi.length;j < jj;j += 2) {
        x = matrix.x(pathi[j], pathi[j + 1]);
        y = matrix.y(pathi[j], pathi[j + 1]);
        pathi[j] = x;
        pathi[j + 1] = y;
      }
    }
    return path;
  };
  R._g = g;
  R.type = g.win.SVGAngle || g.doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure", "1.1") ? "SVG" : "VML";
  if (R.type == "VML") {
    var d = g.doc.createElement("div"), b;
    d.innerHTML = '<v:shape adj="1"/>';
    b = d.firstChild;
    b.style.behavior = "url(#default#VML)";
    if (!(b && typeof b.adj == "object")) {
      return R.type = E;
    }
    d = null;
  }
  R.svg = !(R.vml = R.type == "VML");
  R._Paper = Paper;
  R.fn = paperproto = Paper.prototype = R.prototype;
  R._id = 0;
  R._oid = 0;
  R.is = function(o, type) {
    type = lowerCase.call(type);
    if (type == "finite") {
      return!isnan[has](+o);
    }
    if (type == "array") {
      return o instanceof Array;
    }
    return type == "null" && o === null || (type == typeof o && o !== null || (type == "object" && o === Object(o) || (type == "array" && (Array.isArray && Array.isArray(o)) || objectToString.call(o).slice(8, -1).toLowerCase() == type)));
  };
  function clone(obj) {
    if (typeof obj == "function" || Object(obj) !== obj) {
      return obj;
    }
    var res = new obj.constructor;
    for (var key in obj) {
      if (obj[has](key)) {
        res[key] = clone(obj[key]);
      }
    }
    return res;
  }
  R.angle = function(x1, y1, x2, y2, x3, y3) {
    if (x3 == null) {
      var x = x1 - x2, y = y1 - y2;
      if (!x && !y) {
        return 0;
      }
      return(180 + math.atan2(-y, -x) * 180 / PI + 360) % 360;
    } else {
      return R.angle(x1, y1, x3, y3) - R.angle(x2, y2, x3, y3);
    }
  };
  R.rad = function(deg) {
    return deg % 360 * PI / 180;
  };
  R.deg = function(rad) {
    return rad * 180 / PI % 360;
  };
  R.snapTo = function(values, value, tolerance) {
    tolerance = R.is(tolerance, "finite") ? tolerance : 10;
    if (R.is(values, array)) {
      var i = values.length;
      while (i--) {
        if (abs(values[i] - value) <= tolerance) {
          return values[i];
        }
      }
    } else {
      values = +values;
      var rem = value % values;
      if (rem < tolerance) {
        return value - rem;
      }
      if (rem > values - tolerance) {
        return value - rem + values;
      }
    }
    return value;
  };
  var createUUID = R.createUUID = function(uuidRegEx, uuidReplacer) {
    return function() {
      return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(uuidRegEx, uuidReplacer).toUpperCase();
    };
  }(/[xy]/g, function(c) {
    var r = math.random() * 16 | 0, v = c == "x" ? r : r & 3 | 8;
    return v.toString(16);
  });
  R.setWindow = function(newwin) {
    eve("raphael.setWindow", R, g.win, newwin);
    g.win = newwin;
    g.doc = g.win.document;
    if (R._engine.initWin) {
      R._engine.initWin(g.win);
    }
  };
  var toHex = function(color) {
    if (R.vml) {
      var trim = /^\s+|\s+$/g;
      var bod;
      try {
        var docum = new ActiveXObject("htmlfile");
        docum.write("<body>");
        docum.close();
        bod = docum.body;
      } catch (e) {
        bod = createPopup().document.body;
      }
      var range = bod.createTextRange();
      toHex = cacher(function(color) {
        try {
          bod.style.color = Str(color).replace(trim, E);
          var value = range.queryCommandValue("ForeColor");
          value = (value & 255) << 16 | value & 65280 | (value & 16711680) >>> 16;
          return "#" + ("000000" + value.toString(16)).slice(-6);
        } catch (e) {
          return "none";
        }
      });
    } else {
      var i = g.doc.createElement("i");
      i.title = "Rapha\u00ebl Colour Picker";
      i.style.display = "none";
      g.doc.body.appendChild(i);
      toHex = cacher(function(color) {
        i.style.color = color;
        return g.doc.defaultView.getComputedStyle(i, E).getPropertyValue("color");
      });
    }
    return toHex(color);
  }, hsbtoString = function() {
    return "hsb(" + [this.h, this.s, this.b] + ")";
  }, hsltoString = function() {
    return "hsl(" + [this.h, this.s, this.l] + ")";
  }, rgbtoString = function() {
    return this.hex;
  }, prepareRGB = function(r, g, b) {
    if (g == null && (R.is(r, "object") && ("r" in r && ("g" in r && "b" in r)))) {
      b = r.b;
      g = r.g;
      r = r.r;
    }
    if (g == null && R.is(r, string)) {
      var clr = R.getRGB(r);
      r = clr.r;
      g = clr.g;
      b = clr.b;
    }
    if (r > 1 || (g > 1 || b > 1)) {
      r /= 255;
      g /= 255;
      b /= 255;
    }
    return[r, g, b];
  }, packageRGB = function(r, g, b, o) {
    r *= 255;
    g *= 255;
    b *= 255;
    var rgb = {r:r, g:g, b:b, hex:R.rgb(r, g, b), toString:rgbtoString};
    R.is(o, "finite") && (rgb.opacity = o);
    return rgb;
  };
  R.color = function(clr) {
    var rgb;
    if (R.is(clr, "object") && ("h" in clr && ("s" in clr && "b" in clr))) {
      rgb = R.hsb2rgb(clr);
      clr.r = rgb.r;
      clr.g = rgb.g;
      clr.b = rgb.b;
      clr.hex = rgb.hex;
    } else {
      if (R.is(clr, "object") && ("h" in clr && ("s" in clr && "l" in clr))) {
        rgb = R.hsl2rgb(clr);
        clr.r = rgb.r;
        clr.g = rgb.g;
        clr.b = rgb.b;
        clr.hex = rgb.hex;
      } else {
        if (R.is(clr, "string")) {
          clr = R.getRGB(clr);
        }
        if (R.is(clr, "object") && ("r" in clr && ("g" in clr && "b" in clr))) {
          rgb = R.rgb2hsl(clr);
          clr.h = rgb.h;
          clr.s = rgb.s;
          clr.l = rgb.l;
          rgb = R.rgb2hsb(clr);
          clr.v = rgb.b;
        } else {
          clr = {hex:"none"};
          clr.r = clr.g = clr.b = clr.h = clr.s = clr.v = clr.l = -1;
        }
      }
    }
    clr.toString = rgbtoString;
    return clr;
  };
  R.hsb2rgb = function(h, s, v, o) {
    if (this.is(h, "object") && ("h" in h && ("s" in h && "b" in h))) {
      v = h.b;
      s = h.s;
      h = h.h;
      o = h.o;
    }
    h *= 360;
    var R, G, B, X, C;
    h = h % 360 / 60;
    C = v * s;
    X = C * (1 - abs(h % 2 - 1));
    R = G = B = v - C;
    h = ~~h;
    R += [C, X, 0, 0, X, C][h];
    G += [X, C, C, X, 0, 0][h];
    B += [0, 0, X, C, C, X][h];
    return packageRGB(R, G, B, o);
  };
  R.hsl2rgb = function(h, s, l, o) {
    if (this.is(h, "object") && ("h" in h && ("s" in h && "l" in h))) {
      l = h.l;
      s = h.s;
      h = h.h;
    }
    if (h > 1 || (s > 1 || l > 1)) {
      h /= 360;
      s /= 100;
      l /= 100;
    }
    h *= 360;
    var R, G, B, X, C;
    h = h % 360 / 60;
    C = 2 * s * (l < 0.5 ? l : 1 - l);
    X = C * (1 - abs(h % 2 - 1));
    R = G = B = l - C / 2;
    h = ~~h;
    R += [C, X, 0, 0, X, C][h];
    G += [X, C, C, X, 0, 0][h];
    B += [0, 0, X, C, C, X][h];
    return packageRGB(R, G, B, o);
  };
  R.rgb2hsb = function(r, g, b) {
    b = prepareRGB(r, g, b);
    r = b[0];
    g = b[1];
    b = b[2];
    var H, S, V, C;
    V = mmax(r, g, b);
    C = V - mmin(r, g, b);
    H = C == 0 ? null : V == r ? (g - b) / C : V == g ? (b - r) / C + 2 : (r - g) / C + 4;
    H = (H + 360) % 6 * 60 / 360;
    S = C == 0 ? 0 : C / V;
    return{h:H, s:S, b:V, toString:hsbtoString};
  };
  R.rgb2hsl = function(r, g, b) {
    b = prepareRGB(r, g, b);
    r = b[0];
    g = b[1];
    b = b[2];
    var H, S, L, M, m, C;
    M = mmax(r, g, b);
    m = mmin(r, g, b);
    C = M - m;
    H = C == 0 ? null : M == r ? (g - b) / C : M == g ? (b - r) / C + 2 : (r - g) / C + 4;
    H = (H + 360) % 6 * 60 / 360;
    L = (M + m) / 2;
    S = C == 0 ? 0 : L < 0.5 ? C / (2 * L) : C / (2 - 2 * L);
    return{h:H, s:S, l:L, toString:hsltoString};
  };
  R._path2string = function() {
    return this.join(",").replace(p2s, "$1");
  };
  function repush(array, item) {
    for (var i = 0, ii = array.length;i < ii;i++) {
      if (array[i] === item) {
        return array.push(array.splice(i, 1)[0]);
      }
    }
  }
  function cacher(f, scope, postprocessor) {
    function newf() {
      var arg = Array.prototype.slice.call(arguments, 0), args = arg.join("\u2400"), cache = newf.cache = newf.cache || {}, count = newf.count = newf.count || [];
      if (cache[has](args)) {
        repush(count, args);
        return postprocessor ? postprocessor(cache[args]) : cache[args];
      }
      count.length >= 1E3 && delete cache[count.shift()];
      count.push(args);
      cache[args] = f[apply](scope, arg);
      return postprocessor ? postprocessor(cache[args]) : cache[args];
    }
    return newf;
  }
  var preload = R._preload = function(src, f) {
    var img = g.doc.createElement("img");
    img.style.cssText = "position:absolute;left:-9999em;top:-9999em";
    img.onload = function() {
      f.call(this);
      this.onload = null;
      g.doc.body.removeChild(this);
    };
    img.onerror = function() {
      g.doc.body.removeChild(this);
    };
    g.doc.body.appendChild(img);
    img.src = src;
  };
  function clrToString() {
    return this.hex;
  }
  R.getRGB = cacher(function(colour) {
    if (!colour || !!((colour = Str(colour)).indexOf("-") + 1)) {
      return{r:-1, g:-1, b:-1, hex:"none", error:1, toString:clrToString};
    }
    if (colour == "none") {
      return{r:-1, g:-1, b:-1, hex:"none", toString:clrToString};
    }
    !(hsrg[has](colour.toLowerCase().substring(0, 2)) || colour.charAt() == "#") && (colour = toHex(colour));
    var res, red, green, blue, opacity, t, values, rgb = colour.match(colourRegExp);
    if (rgb) {
      if (rgb[2]) {
        blue = toInt(rgb[2].substring(5), 16);
        green = toInt(rgb[2].substring(3, 5), 16);
        red = toInt(rgb[2].substring(1, 3), 16);
      }
      if (rgb[3]) {
        blue = toInt((t = rgb[3].charAt(3)) + t, 16);
        green = toInt((t = rgb[3].charAt(2)) + t, 16);
        red = toInt((t = rgb[3].charAt(1)) + t, 16);
      }
      if (rgb[4]) {
        values = rgb[4][split](commaSpaces);
        red = toFloat(values[0]);
        values[0].slice(-1) == "%" && (red *= 2.55);
        green = toFloat(values[1]);
        values[1].slice(-1) == "%" && (green *= 2.55);
        blue = toFloat(values[2]);
        values[2].slice(-1) == "%" && (blue *= 2.55);
        rgb[1].toLowerCase().slice(0, 4) == "rgba" && (opacity = toFloat(values[3]));
        values[3] && (values[3].slice(-1) == "%" && (opacity /= 100));
      }
      if (rgb[5]) {
        values = rgb[5][split](commaSpaces);
        red = toFloat(values[0]);
        values[0].slice(-1) == "%" && (red *= 2.55);
        green = toFloat(values[1]);
        values[1].slice(-1) == "%" && (green *= 2.55);
        blue = toFloat(values[2]);
        values[2].slice(-1) == "%" && (blue *= 2.55);
        (values[0].slice(-3) == "deg" || values[0].slice(-1) == "\u00b0") && (red /= 360);
        rgb[1].toLowerCase().slice(0, 4) == "hsba" && (opacity = toFloat(values[3]));
        values[3] && (values[3].slice(-1) == "%" && (opacity /= 100));
        return R.hsb2rgb(red, green, blue, opacity);
      }
      if (rgb[6]) {
        values = rgb[6][split](commaSpaces);
        red = toFloat(values[0]);
        values[0].slice(-1) == "%" && (red *= 2.55);
        green = toFloat(values[1]);
        values[1].slice(-1) == "%" && (green *= 2.55);
        blue = toFloat(values[2]);
        values[2].slice(-1) == "%" && (blue *= 2.55);
        (values[0].slice(-3) == "deg" || values[0].slice(-1) == "\u00b0") && (red /= 360);
        rgb[1].toLowerCase().slice(0, 4) == "hsla" && (opacity = toFloat(values[3]));
        values[3] && (values[3].slice(-1) == "%" && (opacity /= 100));
        return R.hsl2rgb(red, green, blue, opacity);
      }
      rgb = {r:red, g:green, b:blue, toString:clrToString};
      rgb.hex = "#" + (16777216 | blue | green << 8 | red << 16).toString(16).slice(1);
      R.is(opacity, "finite") && (rgb.opacity = opacity);
      return rgb;
    }
    return{r:-1, g:-1, b:-1, hex:"none", error:1, toString:clrToString};
  }, R);
  R.hsb = cacher(function(h, s, b) {
    return R.hsb2rgb(h, s, b).hex;
  });
  R.hsl = cacher(function(h, s, l) {
    return R.hsl2rgb(h, s, l).hex;
  });
  R.rgb = cacher(function(r, g, b) {
    return "#" + (16777216 | b | g << 8 | r << 16).toString(16).slice(1);
  });
  R.getColor = function(value) {
    var start = this.getColor.start = this.getColor.start || {h:0, s:1, b:value || 0.75}, rgb = this.hsb2rgb(start.h, start.s, start.b);
    start.h += 0.075;
    if (start.h > 1) {
      start.h = 0;
      start.s -= 0.2;
      start.s <= 0 && (this.getColor.start = {h:0, s:1, b:start.b});
    }
    return rgb.hex;
  };
  R.getColor.reset = function() {
    delete this.start;
  };
  function catmullRom2bezier(crp, z) {
    var d = [];
    for (var i = 0, iLen = crp.length;iLen - 2 * !z > i;i += 2) {
      var p = [{x:+crp[i - 2], y:+crp[i - 1]}, {x:+crp[i], y:+crp[i + 1]}, {x:+crp[i + 2], y:+crp[i + 3]}, {x:+crp[i + 4], y:+crp[i + 5]}];
      if (z) {
        if (!i) {
          p[0] = {x:+crp[iLen - 2], y:+crp[iLen - 1]};
        } else {
          if (iLen - 4 == i) {
            p[3] = {x:+crp[0], y:+crp[1]};
          } else {
            if (iLen - 2 == i) {
              p[2] = {x:+crp[0], y:+crp[1]};
              p[3] = {x:+crp[2], y:+crp[3]};
            }
          }
        }
      } else {
        if (iLen - 4 == i) {
          p[3] = p[2];
        } else {
          if (!i) {
            p[0] = {x:+crp[i], y:+crp[i + 1]};
          }
        }
      }
      d.push(["C", (-p[0].x + 6 * p[1].x + p[2].x) / 6, (-p[0].y + 6 * p[1].y + p[2].y) / 6, (p[1].x + 6 * p[2].x - p[3].x) / 6, (p[1].y + 6 * p[2].y - p[3].y) / 6, p[2].x, p[2].y]);
    }
    return d;
  }
  R.parsePathString = function(pathString) {
    if (!pathString) {
      return null;
    }
    var pth = paths(pathString);
    if (pth.arr) {
      return pathClone(pth.arr);
    }
    var paramCounts = {a:7, c:6, h:1, l:2, m:2, r:4, q:4, s:4, t:2, v:1, z:0}, data = [];
    if (R.is(pathString, array) && R.is(pathString[0], array)) {
      data = pathClone(pathString);
    }
    if (!data.length) {
      Str(pathString).replace(pathCommand, function(a, b, c) {
        var params = [], name = b.toLowerCase();
        c.replace(pathValues, function(a, b) {
          b && params.push(+b);
        });
        if (name == "m" && params.length > 2) {
          data.push([b][concat](params.splice(0, 2)));
          name = "l";
          b = b == "m" ? "l" : "L";
        }
        if (name == "r") {
          data.push([b][concat](params));
        } else {
          while (params.length >= paramCounts[name]) {
            data.push([b][concat](params.splice(0, paramCounts[name])));
            if (!paramCounts[name]) {
              break;
            }
          }
        }
      });
    }
    data.toString = R._path2string;
    pth.arr = pathClone(data);
    return data;
  };
  R.parseTransformString = cacher(function(TString) {
    if (!TString) {
      return null;
    }
    var paramCounts = {r:3, s:4, t:2, m:6}, data = [];
    if (R.is(TString, array) && R.is(TString[0], array)) {
      data = pathClone(TString);
    }
    if (!data.length) {
      Str(TString).replace(tCommand, function(a, b, c) {
        var params = [], name = lowerCase.call(b);
        c.replace(pathValues, function(a, b) {
          b && params.push(+b);
        });
        data.push([b][concat](params));
      });
    }
    data.toString = R._path2string;
    return data;
  });
  var paths = function(ps) {
    var p = paths.ps = paths.ps || {};
    if (p[ps]) {
      p[ps].sleep = 100;
    } else {
      p[ps] = {sleep:100};
    }
    setTimeout(function() {
      for (var key in p) {
        if (p[has](key) && key != ps) {
          p[key].sleep--;
          !p[key].sleep && delete p[key];
        }
      }
    });
    return p[ps];
  };
  R.findDotsAtSegment = function(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t) {
    var t1 = 1 - t, t13 = pow(t1, 3), t12 = pow(t1, 2), t2 = t * t, t3 = t2 * t, x = t13 * p1x + t12 * 3 * t * c1x + t1 * 3 * t * t * c2x + t3 * p2x, y = t13 * p1y + t12 * 3 * t * c1y + t1 * 3 * t * t * c2y + t3 * p2y, mx = p1x + 2 * t * (c1x - p1x) + t2 * (c2x - 2 * c1x + p1x), my = p1y + 2 * t * (c1y - p1y) + t2 * (c2y - 2 * c1y + p1y), nx = c1x + 2 * t * (c2x - c1x) + t2 * (p2x - 2 * c2x + c1x), ny = c1y + 2 * t * (c2y - c1y) + t2 * (p2y - 2 * c2y + c1y), ax = t1 * p1x + t * c1x, ay = t1 * p1y + 
    t * c1y, cx = t1 * c2x + t * p2x, cy = t1 * c2y + t * p2y, alpha = 90 - math.atan2(mx - nx, my - ny) * 180 / PI;
    (mx > nx || my < ny) && (alpha += 180);
    return{x:x, y:y, m:{x:mx, y:my}, n:{x:nx, y:ny}, start:{x:ax, y:ay}, end:{x:cx, y:cy}, alpha:alpha};
  };
  R.bezierBBox = function(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y) {
    if (!R.is(p1x, "array")) {
      p1x = [p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y];
    }
    var bbox = curveDim.apply(null, p1x);
    return{x:bbox.min.x, y:bbox.min.y, x2:bbox.max.x, y2:bbox.max.y, width:bbox.max.x - bbox.min.x, height:bbox.max.y - bbox.min.y};
  };
  R.isPointInsideBBox = function(bbox, x, y) {
    return x >= bbox.x && (x <= bbox.x2 && (y >= bbox.y && y <= bbox.y2));
  };
  R.isBBoxIntersect = function(bbox1, bbox2) {
    var i = R.isPointInsideBBox;
    return i(bbox2, bbox1.x, bbox1.y) || (i(bbox2, bbox1.x2, bbox1.y) || (i(bbox2, bbox1.x, bbox1.y2) || (i(bbox2, bbox1.x2, bbox1.y2) || (i(bbox1, bbox2.x, bbox2.y) || (i(bbox1, bbox2.x2, bbox2.y) || (i(bbox1, bbox2.x, bbox2.y2) || (i(bbox1, bbox2.x2, bbox2.y2) || (bbox1.x < bbox2.x2 && bbox1.x > bbox2.x || bbox2.x < bbox1.x2 && bbox2.x > bbox1.x) && (bbox1.y < bbox2.y2 && bbox1.y > bbox2.y || bbox2.y < bbox1.y2 && bbox2.y > bbox1.y))))))));
  };
  function base3(t, p1, p2, p3, p4) {
    var t1 = -3 * p1 + 9 * p2 - 9 * p3 + 3 * p4, t2 = t * t1 + 6 * p1 - 12 * p2 + 6 * p3;
    return t * t2 - 3 * p1 + 3 * p2;
  }
  function bezlen(x1, y1, x2, y2, x3, y3, x4, y4, z) {
    if (z == null) {
      z = 1;
    }
    z = z > 1 ? 1 : z < 0 ? 0 : z;
    var z2 = z / 2, n = 12, Tvalues = [-0.1252, 0.1252, -0.3678, 0.3678, -0.5873, 0.5873, -0.7699, 0.7699, -0.9041, 0.9041, -0.9816, 0.9816], Cvalues = [0.2491, 0.2491, 0.2335, 0.2335, 0.2032, 0.2032, 0.1601, 0.1601, 0.1069, 0.1069, 0.0472, 0.0472], sum = 0;
    for (var i = 0;i < n;i++) {
      var ct = z2 * Tvalues[i] + z2, xbase = base3(ct, x1, x2, x3, x4), ybase = base3(ct, y1, y2, y3, y4), comb = xbase * xbase + ybase * ybase;
      sum += Cvalues[i] * math.sqrt(comb);
    }
    return z2 * sum;
  }
  function getTatLen(x1, y1, x2, y2, x3, y3, x4, y4, ll) {
    if (ll < 0 || bezlen(x1, y1, x2, y2, x3, y3, x4, y4) < ll) {
      return;
    }
    var t = 1, step = t / 2, t2 = t - step, l, e = 0.01;
    l = bezlen(x1, y1, x2, y2, x3, y3, x4, y4, t2);
    while (abs(l - ll) > e) {
      step /= 2;
      t2 += (l < ll ? 1 : -1) * step;
      l = bezlen(x1, y1, x2, y2, x3, y3, x4, y4, t2);
    }
    return t2;
  }
  function intersect(x1, y1, x2, y2, x3, y3, x4, y4) {
    if (mmax(x1, x2) < mmin(x3, x4) || (mmin(x1, x2) > mmax(x3, x4) || (mmax(y1, y2) < mmin(y3, y4) || mmin(y1, y2) > mmax(y3, y4)))) {
      return;
    }
    var nx = (x1 * y2 - y1 * x2) * (x3 - x4) - (x1 - x2) * (x3 * y4 - y3 * x4), ny = (x1 * y2 - y1 * x2) * (y3 - y4) - (y1 - y2) * (x3 * y4 - y3 * x4), denominator = (x1 - x2) * (y3 - y4) - (y1 - y2) * (x3 - x4);
    if (!denominator) {
      return;
    }
    var px = nx / denominator, py = ny / denominator, px2 = +px.toFixed(2), py2 = +py.toFixed(2);
    if (px2 < +mmin(x1, x2).toFixed(2) || (px2 > +mmax(x1, x2).toFixed(2) || (px2 < +mmin(x3, x4).toFixed(2) || (px2 > +mmax(x3, x4).toFixed(2) || (py2 < +mmin(y1, y2).toFixed(2) || (py2 > +mmax(y1, y2).toFixed(2) || (py2 < +mmin(y3, y4).toFixed(2) || py2 > +mmax(y3, y4).toFixed(2)))))))) {
      return;
    }
    return{x:px, y:py};
  }
  function inter(bez1, bez2) {
    return interHelper(bez1, bez2);
  }
  function interCount(bez1, bez2) {
    return interHelper(bez1, bez2, 1);
  }
  function interHelper(bez1, bez2, justCount) {
    var bbox1 = R.bezierBBox(bez1), bbox2 = R.bezierBBox(bez2);
    if (!R.isBBoxIntersect(bbox1, bbox2)) {
      return justCount ? 0 : [];
    }
    var l1 = bezlen.apply(0, bez1), l2 = bezlen.apply(0, bez2), n1 = mmax(~~(l1 / 5), 1), n2 = mmax(~~(l2 / 5), 1), dots1 = [], dots2 = [], xy = {}, res = justCount ? 0 : [];
    for (var i = 0;i < n1 + 1;i++) {
      var p = R.findDotsAtSegment.apply(R, bez1.concat(i / n1));
      dots1.push({x:p.x, y:p.y, t:i / n1});
    }
    for (i = 0;i < n2 + 1;i++) {
      p = R.findDotsAtSegment.apply(R, bez2.concat(i / n2));
      dots2.push({x:p.x, y:p.y, t:i / n2});
    }
    for (i = 0;i < n1;i++) {
      for (var j = 0;j < n2;j++) {
        var di = dots1[i], di1 = dots1[i + 1], dj = dots2[j], dj1 = dots2[j + 1], ci = abs(di1.x - di.x) < 0.001 ? "y" : "x", cj = abs(dj1.x - dj.x) < 0.001 ? "y" : "x", is = intersect(di.x, di.y, di1.x, di1.y, dj.x, dj.y, dj1.x, dj1.y);
        if (is) {
          if (xy[is.x.toFixed(4)] == is.y.toFixed(4)) {
            continue;
          }
          xy[is.x.toFixed(4)] = is.y.toFixed(4);
          var t1 = di.t + abs((is[ci] - di[ci]) / (di1[ci] - di[ci])) * (di1.t - di.t), t2 = dj.t + abs((is[cj] - dj[cj]) / (dj1[cj] - dj[cj])) * (dj1.t - dj.t);
          if (t1 >= 0 && (t1 <= 1.001 && (t2 >= 0 && t2 <= 1.001))) {
            if (justCount) {
              res++;
            } else {
              res.push({x:is.x, y:is.y, t1:mmin(t1, 1), t2:mmin(t2, 1)});
            }
          }
        }
      }
    }
    return res;
  }
  R.pathIntersection = function(path1, path2) {
    return interPathHelper(path1, path2);
  };
  R.pathIntersectionNumber = function(path1, path2) {
    return interPathHelper(path1, path2, 1);
  };
  function interPathHelper(path1, path2, justCount) {
    path1 = R._path2curve(path1);
    path2 = R._path2curve(path2);
    var x1, y1, x2, y2, x1m, y1m, x2m, y2m, bez1, bez2, res = justCount ? 0 : [];
    for (var i = 0, ii = path1.length;i < ii;i++) {
      var pi = path1[i];
      if (pi[0] == "M") {
        x1 = x1m = pi[1];
        y1 = y1m = pi[2];
      } else {
        if (pi[0] == "C") {
          bez1 = [x1, y1].concat(pi.slice(1));
          x1 = bez1[6];
          y1 = bez1[7];
        } else {
          bez1 = [x1, y1, x1, y1, x1m, y1m, x1m, y1m];
          x1 = x1m;
          y1 = y1m;
        }
        for (var j = 0, jj = path2.length;j < jj;j++) {
          var pj = path2[j];
          if (pj[0] == "M") {
            x2 = x2m = pj[1];
            y2 = y2m = pj[2];
          } else {
            if (pj[0] == "C") {
              bez2 = [x2, y2].concat(pj.slice(1));
              x2 = bez2[6];
              y2 = bez2[7];
            } else {
              bez2 = [x2, y2, x2, y2, x2m, y2m, x2m, y2m];
              x2 = x2m;
              y2 = y2m;
            }
            var intr = interHelper(bez1, bez2, justCount);
            if (justCount) {
              res += intr;
            } else {
              for (var k = 0, kk = intr.length;k < kk;k++) {
                intr[k].segment1 = i;
                intr[k].segment2 = j;
                intr[k].bez1 = bez1;
                intr[k].bez2 = bez2;
              }
              res = res.concat(intr);
            }
          }
        }
      }
    }
    return res;
  }
  R.isPointInsidePath = function(path, x, y) {
    var bbox = R.pathBBox(path);
    return R.isPointInsideBBox(bbox, x, y) && interPathHelper(path, [["M", x, y], ["H", bbox.x2 + 10]], 1) % 2 == 1;
  };
  R._removedFactory = function(methodname) {
    return function() {
      eve("raphael.log", null, "Rapha\u00ebl: you are calling to method \u201c" + methodname + "\u201d of removed object", methodname);
    };
  };
  var pathDimensions = R.pathBBox = function(path) {
    var pth = paths(path);
    if (pth.bbox) {
      return clone(pth.bbox);
    }
    if (!path) {
      return{x:0, y:0, width:0, height:0, x2:0, y2:0};
    }
    path = path2curve(path);
    var x = 0, y = 0, X = [], Y = [], p;
    for (var i = 0, ii = path.length;i < ii;i++) {
      p = path[i];
      if (p[0] == "M") {
        x = p[1];
        y = p[2];
        X.push(x);
        Y.push(y);
      } else {
        var dim = curveDim(x, y, p[1], p[2], p[3], p[4], p[5], p[6]);
        X = X[concat](dim.min.x, dim.max.x);
        Y = Y[concat](dim.min.y, dim.max.y);
        x = p[5];
        y = p[6];
      }
    }
    var xmin = mmin[apply](0, X), ymin = mmin[apply](0, Y), xmax = mmax[apply](0, X), ymax = mmax[apply](0, Y), width = xmax - xmin, height = ymax - ymin, bb = {x:xmin, y:ymin, x2:xmax, y2:ymax, width:width, height:height, cx:xmin + width / 2, cy:ymin + height / 2};
    pth.bbox = clone(bb);
    return bb;
  }, pathClone = function(pathArray) {
    var res = clone(pathArray);
    res.toString = R._path2string;
    return res;
  }, pathToRelative = R._pathToRelative = function(pathArray) {
    var pth = paths(pathArray);
    if (pth.rel) {
      return pathClone(pth.rel);
    }
    if (!R.is(pathArray, array) || !R.is(pathArray && pathArray[0], array)) {
      pathArray = R.parsePathString(pathArray);
    }
    var res = [], x = 0, y = 0, mx = 0, my = 0, start = 0;
    if (pathArray[0][0] == "M") {
      x = pathArray[0][1];
      y = pathArray[0][2];
      mx = x;
      my = y;
      start++;
      res.push(["M", x, y]);
    }
    for (var i = start, ii = pathArray.length;i < ii;i++) {
      var r = res[i] = [], pa = pathArray[i];
      if (pa[0] != lowerCase.call(pa[0])) {
        r[0] = lowerCase.call(pa[0]);
        switch(r[0]) {
          case "a":
            r[1] = pa[1];
            r[2] = pa[2];
            r[3] = pa[3];
            r[4] = pa[4];
            r[5] = pa[5];
            r[6] = +(pa[6] - x).toFixed(3);
            r[7] = +(pa[7] - y).toFixed(3);
            break;
          case "v":
            r[1] = +(pa[1] - y).toFixed(3);
            break;
          case "m":
            mx = pa[1];
            my = pa[2];
          default:
            for (var j = 1, jj = pa.length;j < jj;j++) {
              r[j] = +(pa[j] - (j % 2 ? x : y)).toFixed(3);
            }
          ;
        }
      } else {
        r = res[i] = [];
        if (pa[0] == "m") {
          mx = pa[1] + x;
          my = pa[2] + y;
        }
        for (var k = 0, kk = pa.length;k < kk;k++) {
          res[i][k] = pa[k];
        }
      }
      var len = res[i].length;
      switch(res[i][0]) {
        case "z":
          x = mx;
          y = my;
          break;
        case "h":
          x += +res[i][len - 1];
          break;
        case "v":
          y += +res[i][len - 1];
          break;
        default:
          x += +res[i][len - 2];
          y += +res[i][len - 1];
      }
    }
    res.toString = R._path2string;
    pth.rel = pathClone(res);
    return res;
  }, pathToAbsolute = R._pathToAbsolute = function(pathArray) {
    var pth = paths(pathArray);
    if (pth.abs) {
      return pathClone(pth.abs);
    }
    if (!R.is(pathArray, array) || !R.is(pathArray && pathArray[0], array)) {
      pathArray = R.parsePathString(pathArray);
    }
    if (!pathArray || !pathArray.length) {
      return[["M", 0, 0]];
    }
    var res = [], x = 0, y = 0, mx = 0, my = 0, start = 0;
    if (pathArray[0][0] == "M") {
      x = +pathArray[0][1];
      y = +pathArray[0][2];
      mx = x;
      my = y;
      start++;
      res[0] = ["M", x, y];
    }
    var crz = pathArray.length == 3 && (pathArray[0][0] == "M" && (pathArray[1][0].toUpperCase() == "R" && pathArray[2][0].toUpperCase() == "Z"));
    for (var r, pa, i = start, ii = pathArray.length;i < ii;i++) {
      res.push(r = []);
      pa = pathArray[i];
      if (pa[0] != upperCase.call(pa[0])) {
        r[0] = upperCase.call(pa[0]);
        switch(r[0]) {
          case "A":
            r[1] = pa[1];
            r[2] = pa[2];
            r[3] = pa[3];
            r[4] = pa[4];
            r[5] = pa[5];
            r[6] = +(pa[6] + x);
            r[7] = +(pa[7] + y);
            break;
          case "V":
            r[1] = +pa[1] + y;
            break;
          case "H":
            r[1] = +pa[1] + x;
            break;
          case "R":
            var dots = [x, y][concat](pa.slice(1));
            for (var j = 2, jj = dots.length;j < jj;j++) {
              dots[j] = +dots[j] + x;
              dots[++j] = +dots[j] + y;
            }
            res.pop();
            res = res[concat](catmullRom2bezier(dots, crz));
            break;
          case "M":
            mx = +pa[1] + x;
            my = +pa[2] + y;
          default:
            for (j = 1, jj = pa.length;j < jj;j++) {
              r[j] = +pa[j] + (j % 2 ? x : y);
            }
          ;
        }
      } else {
        if (pa[0] == "R") {
          dots = [x, y][concat](pa.slice(1));
          res.pop();
          res = res[concat](catmullRom2bezier(dots, crz));
          r = ["R"][concat](pa.slice(-2));
        } else {
          for (var k = 0, kk = pa.length;k < kk;k++) {
            r[k] = pa[k];
          }
        }
      }
      switch(r[0]) {
        case "Z":
          x = mx;
          y = my;
          break;
        case "H":
          x = r[1];
          break;
        case "V":
          y = r[1];
          break;
        case "M":
          mx = r[r.length - 2];
          my = r[r.length - 1];
        default:
          x = r[r.length - 2];
          y = r[r.length - 1];
      }
    }
    res.toString = R._path2string;
    pth.abs = pathClone(res);
    return res;
  }, l2c = function(x1, y1, x2, y2) {
    return[x1, y1, x2, y2, x2, y2];
  }, q2c = function(x1, y1, ax, ay, x2, y2) {
    var _13 = 1 / 3, _23 = 2 / 3;
    return[_13 * x1 + _23 * ax, _13 * y1 + _23 * ay, _13 * x2 + _23 * ax, _13 * y2 + _23 * ay, x2, y2];
  }, a2c = function(x1, y1, rx, ry, angle, large_arc_flag, sweep_flag, x2, y2, recursive) {
    var _120 = PI * 120 / 180, rad = PI / 180 * (+angle || 0), res = [], xy, rotate = cacher(function(x, y, rad) {
      var X = x * math.cos(rad) - y * math.sin(rad), Y = x * math.sin(rad) + y * math.cos(rad);
      return{x:X, y:Y};
    });
    if (!recursive) {
      xy = rotate(x1, y1, -rad);
      x1 = xy.x;
      y1 = xy.y;
      xy = rotate(x2, y2, -rad);
      x2 = xy.x;
      y2 = xy.y;
      var cos = math.cos(PI / 180 * angle), sin = math.sin(PI / 180 * angle), x = (x1 - x2) / 2, y = (y1 - y2) / 2;
      var h = x * x / (rx * rx) + y * y / (ry * ry);
      if (h > 1) {
        h = math.sqrt(h);
        rx = h * rx;
        ry = h * ry;
      }
      var rx2 = rx * rx, ry2 = ry * ry, k = (large_arc_flag == sweep_flag ? -1 : 1) * math.sqrt(abs((rx2 * ry2 - rx2 * y * y - ry2 * x * x) / (rx2 * y * y + ry2 * x * x))), cx = k * rx * y / ry + (x1 + x2) / 2, cy = k * -ry * x / rx + (y1 + y2) / 2, f1 = math.asin(((y1 - cy) / ry).toFixed(9)), f2 = math.asin(((y2 - cy) / ry).toFixed(9));
      f1 = x1 < cx ? PI - f1 : f1;
      f2 = x2 < cx ? PI - f2 : f2;
      f1 < 0 && (f1 = PI * 2 + f1);
      f2 < 0 && (f2 = PI * 2 + f2);
      if (sweep_flag && f1 > f2) {
        f1 = f1 - PI * 2;
      }
      if (!sweep_flag && f2 > f1) {
        f2 = f2 - PI * 2;
      }
    } else {
      f1 = recursive[0];
      f2 = recursive[1];
      cx = recursive[2];
      cy = recursive[3];
    }
    var df = f2 - f1;
    if (abs(df) > _120) {
      var f2old = f2, x2old = x2, y2old = y2;
      f2 = f1 + _120 * (sweep_flag && f2 > f1 ? 1 : -1);
      x2 = cx + rx * math.cos(f2);
      y2 = cy + ry * math.sin(f2);
      res = a2c(x2, y2, rx, ry, angle, 0, sweep_flag, x2old, y2old, [f2, f2old, cx, cy]);
    }
    df = f2 - f1;
    var c1 = math.cos(f1), s1 = math.sin(f1), c2 = math.cos(f2), s2 = math.sin(f2), t = math.tan(df / 4), hx = 4 / 3 * rx * t, hy = 4 / 3 * ry * t, m1 = [x1, y1], m2 = [x1 + hx * s1, y1 - hy * c1], m3 = [x2 + hx * s2, y2 - hy * c2], m4 = [x2, y2];
    m2[0] = 2 * m1[0] - m2[0];
    m2[1] = 2 * m1[1] - m2[1];
    if (recursive) {
      return[m2, m3, m4][concat](res);
    } else {
      res = [m2, m3, m4][concat](res).join()[split](",");
      var newres = [];
      for (var i = 0, ii = res.length;i < ii;i++) {
        newres[i] = i % 2 ? rotate(res[i - 1], res[i], rad).y : rotate(res[i], res[i + 1], rad).x;
      }
      return newres;
    }
  }, findDotAtSegment = function(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t) {
    var t1 = 1 - t;
    return{x:pow(t1, 3) * p1x + pow(t1, 2) * 3 * t * c1x + t1 * 3 * t * t * c2x + pow(t, 3) * p2x, y:pow(t1, 3) * p1y + pow(t1, 2) * 3 * t * c1y + t1 * 3 * t * t * c2y + pow(t, 3) * p2y};
  }, curveDim = cacher(function(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y) {
    var a = c2x - 2 * c1x + p1x - (p2x - 2 * c2x + c1x), b = 2 * (c1x - p1x) - 2 * (c2x - c1x), c = p1x - c1x, t1 = (-b + math.sqrt(b * b - 4 * a * c)) / 2 / a, t2 = (-b - math.sqrt(b * b - 4 * a * c)) / 2 / a, y = [p1y, p2y], x = [p1x, p2x], dot;
    abs(t1) > "1e12" && (t1 = 0.5);
    abs(t2) > "1e12" && (t2 = 0.5);
    if (t1 > 0 && t1 < 1) {
      dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
      x.push(dot.x);
      y.push(dot.y);
    }
    if (t2 > 0 && t2 < 1) {
      dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t2);
      x.push(dot.x);
      y.push(dot.y);
    }
    a = c2y - 2 * c1y + p1y - (p2y - 2 * c2y + c1y);
    b = 2 * (c1y - p1y) - 2 * (c2y - c1y);
    c = p1y - c1y;
    t1 = (-b + math.sqrt(b * b - 4 * a * c)) / 2 / a;
    t2 = (-b - math.sqrt(b * b - 4 * a * c)) / 2 / a;
    abs(t1) > "1e12" && (t1 = 0.5);
    abs(t2) > "1e12" && (t2 = 0.5);
    if (t1 > 0 && t1 < 1) {
      dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t1);
      x.push(dot.x);
      y.push(dot.y);
    }
    if (t2 > 0 && t2 < 1) {
      dot = findDotAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, t2);
      x.push(dot.x);
      y.push(dot.y);
    }
    return{min:{x:mmin[apply](0, x), y:mmin[apply](0, y)}, max:{x:mmax[apply](0, x), y:mmax[apply](0, y)}};
  }), path2curve = R._path2curve = cacher(function(path, path2) {
    var pth = !path2 && paths(path);
    if (!path2 && pth.curve) {
      return pathClone(pth.curve);
    }
    var p = pathToAbsolute(path), p2 = path2 && pathToAbsolute(path2), attrs = {x:0, y:0, bx:0, by:0, X:0, Y:0, qx:null, qy:null}, attrs2 = {x:0, y:0, bx:0, by:0, X:0, Y:0, qx:null, qy:null}, processPath = function(path, d, pcom) {
      var nx, ny, tq = {T:1, Q:1};
      if (!path) {
        return["C", d.x, d.y, d.x, d.y, d.x, d.y];
      }
      !(path[0] in tq) && (d.qx = d.qy = null);
      switch(path[0]) {
        case "M":
          d.X = path[1];
          d.Y = path[2];
          break;
        case "A":
          path = ["C"][concat](a2c[apply](0, [d.x, d.y][concat](path.slice(1))));
          break;
        case "S":
          if (pcom == "C" || pcom == "S") {
            nx = d.x * 2 - d.bx;
            ny = d.y * 2 - d.by;
          } else {
            nx = d.x;
            ny = d.y;
          }
          path = ["C", nx, ny][concat](path.slice(1));
          break;
        case "T":
          if (pcom == "Q" || pcom == "T") {
            d.qx = d.x * 2 - d.qx;
            d.qy = d.y * 2 - d.qy;
          } else {
            d.qx = d.x;
            d.qy = d.y;
          }
          path = ["C"][concat](q2c(d.x, d.y, d.qx, d.qy, path[1], path[2]));
          break;
        case "Q":
          d.qx = path[1];
          d.qy = path[2];
          path = ["C"][concat](q2c(d.x, d.y, path[1], path[2], path[3], path[4]));
          break;
        case "L":
          path = ["C"][concat](l2c(d.x, d.y, path[1], path[2]));
          break;
        case "H":
          path = ["C"][concat](l2c(d.x, d.y, path[1], d.y));
          break;
        case "V":
          path = ["C"][concat](l2c(d.x, d.y, d.x, path[1]));
          break;
        case "Z":
          path = ["C"][concat](l2c(d.x, d.y, d.X, d.Y));
          break;
      }
      return path;
    }, fixArc = function(pp, i) {
      if (pp[i].length > 7) {
        pp[i].shift();
        var pi = pp[i];
        while (pi.length) {
          pp.splice(i++, 0, ["C"][concat](pi.splice(0, 6)));
        }
        pp.splice(i, 1);
        ii = mmax(p.length, p2 && p2.length || 0);
      }
    }, fixM = function(path1, path2, a1, a2, i) {
      if (path1 && (path2 && (path1[i][0] == "M" && path2[i][0] != "M"))) {
        path2.splice(i, 0, ["M", a2.x, a2.y]);
        a1.bx = 0;
        a1.by = 0;
        a1.x = path1[i][1];
        a1.y = path1[i][2];
        ii = mmax(p.length, p2 && p2.length || 0);
      }
    };
    for (var i = 0, ii = mmax(p.length, p2 && p2.length || 0);i < ii;i++) {
      p[i] = processPath(p[i], attrs);
      fixArc(p, i);
      p2 && (p2[i] = processPath(p2[i], attrs2));
      p2 && fixArc(p2, i);
      fixM(p, p2, attrs, attrs2, i);
      fixM(p2, p, attrs2, attrs, i);
      var seg = p[i], seg2 = p2 && p2[i], seglen = seg.length, seg2len = p2 && seg2.length;
      attrs.x = seg[seglen - 2];
      attrs.y = seg[seglen - 1];
      attrs.bx = toFloat(seg[seglen - 4]) || attrs.x;
      attrs.by = toFloat(seg[seglen - 3]) || attrs.y;
      attrs2.bx = p2 && (toFloat(seg2[seg2len - 4]) || attrs2.x);
      attrs2.by = p2 && (toFloat(seg2[seg2len - 3]) || attrs2.y);
      attrs2.x = p2 && seg2[seg2len - 2];
      attrs2.y = p2 && seg2[seg2len - 1];
    }
    if (!p2) {
      pth.curve = pathClone(p);
    }
    return p2 ? [p, p2] : p;
  }, null, pathClone), parseDots = R._parseDots = cacher(function(gradient) {
    var dots = [];
    for (var i = 0, ii = gradient.length;i < ii;i++) {
      var dot = {}, par = gradient[i].match(/^([^:]*):?([\d\.]*)/);
      dot.color = R.getRGB(par[1]);
      if (dot.color.error) {
        return null;
      }
      dot.color = dot.color.hex;
      par[2] && (dot.offset = par[2] + "%");
      dots.push(dot);
    }
    for (i = 1, ii = dots.length - 1;i < ii;i++) {
      if (!dots[i].offset) {
        var start = toFloat(dots[i - 1].offset || 0), end = 0;
        for (var j = i + 1;j < ii;j++) {
          if (dots[j].offset) {
            end = dots[j].offset;
            break;
          }
        }
        if (!end) {
          end = 100;
          j = ii;
        }
        end = toFloat(end);
        var d = (end - start) / (j - i + 1);
        for (;i < j;i++) {
          start += d;
          dots[i].offset = start + "%";
        }
      }
    }
    return dots;
  }), tear = R._tear = function(el, paper) {
    el == paper.top && (paper.top = el.prev);
    el == paper.bottom && (paper.bottom = el.next);
    el.next && (el.next.prev = el.prev);
    el.prev && (el.prev.next = el.next);
  }, tofront = R._tofront = function(el, paper) {
    if (paper.top === el) {
      return;
    }
    tear(el, paper);
    el.next = null;
    el.prev = paper.top;
    paper.top.next = el;
    paper.top = el;
  }, toback = R._toback = function(el, paper) {
    if (paper.bottom === el) {
      return;
    }
    tear(el, paper);
    el.next = paper.bottom;
    el.prev = null;
    paper.bottom.prev = el;
    paper.bottom = el;
  }, insertafter = R._insertafter = function(el, el2, paper) {
    tear(el, paper);
    el2 == paper.top && (paper.top = el);
    el2.next && (el2.next.prev = el);
    el.next = el2.next;
    el.prev = el2;
    el2.next = el;
  }, insertbefore = R._insertbefore = function(el, el2, paper) {
    tear(el, paper);
    el2 == paper.bottom && (paper.bottom = el);
    el2.prev && (el2.prev.next = el);
    el.prev = el2.prev;
    el2.prev = el;
    el.next = el2;
  }, toMatrix = R.toMatrix = function(path, transform) {
    var bb = pathDimensions(path), el = {_:{transform:E}, getBBox:function() {
      return bb;
    }};
    extractTransform(el, transform);
    return el.matrix;
  }, transformPath = R.transformPath = function(path, transform) {
    return mapPath(path, toMatrix(path, transform));
  }, extractTransform = R._extractTransform = function(el, tstr) {
    if (tstr == null) {
      return el._.transform;
    }
    tstr = Str(tstr).replace(/\.{3}|\u2026/g, el._.transform || E);
    var tdata = R.parseTransformString(tstr), deg = 0, dx = 0, dy = 0, sx = 1, sy = 1, _ = el._, m = new Matrix;
    _.transform = tdata || [];
    if (tdata) {
      for (var i = 0, ii = tdata.length;i < ii;i++) {
        var t = tdata[i], tlen = t.length, command = Str(t[0]).toLowerCase(), absolute = t[0] != command, inver = absolute ? m.invert() : 0, x1, y1, x2, y2, bb;
        if (command == "t" && tlen == 3) {
          if (absolute) {
            x1 = inver.x(0, 0);
            y1 = inver.y(0, 0);
            x2 = inver.x(t[1], t[2]);
            y2 = inver.y(t[1], t[2]);
            m.translate(x2 - x1, y2 - y1);
          } else {
            m.translate(t[1], t[2]);
          }
        } else {
          if (command == "r") {
            if (tlen == 2) {
              bb = bb || el.getBBox(1);
              m.rotate(t[1], bb.x + bb.width / 2, bb.y + bb.height / 2);
              deg += t[1];
            } else {
              if (tlen == 4) {
                if (absolute) {
                  x2 = inver.x(t[2], t[3]);
                  y2 = inver.y(t[2], t[3]);
                  m.rotate(t[1], x2, y2);
                } else {
                  m.rotate(t[1], t[2], t[3]);
                }
                deg += t[1];
              }
            }
          } else {
            if (command == "s") {
              if (tlen == 2 || tlen == 3) {
                bb = bb || el.getBBox(1);
                m.scale(t[1], t[tlen - 1], bb.x + bb.width / 2, bb.y + bb.height / 2);
                sx *= t[1];
                sy *= t[tlen - 1];
              } else {
                if (tlen == 5) {
                  if (absolute) {
                    x2 = inver.x(t[3], t[4]);
                    y2 = inver.y(t[3], t[4]);
                    m.scale(t[1], t[2], x2, y2);
                  } else {
                    m.scale(t[1], t[2], t[3], t[4]);
                  }
                  sx *= t[1];
                  sy *= t[2];
                }
              }
            } else {
              if (command == "m" && tlen == 7) {
                m.add(t[1], t[2], t[3], t[4], t[5], t[6]);
              }
            }
          }
        }
        _.dirtyT = 1;
        el.matrix = m;
      }
    }
    el.matrix = m;
    _.sx = sx;
    _.sy = sy;
    _.deg = deg;
    _.dx = dx = m.e;
    _.dy = dy = m.f;
    if (sx == 1 && (sy == 1 && (!deg && _.bbox))) {
      _.bbox.x += +dx;
      _.bbox.y += +dy;
    } else {
      _.dirtyT = 1;
    }
  }, getEmpty = function(item) {
    var l = item[0];
    switch(l.toLowerCase()) {
      case "t":
        return[l, 0, 0];
      case "m":
        return[l, 1, 0, 0, 1, 0, 0];
      case "r":
        if (item.length == 4) {
          return[l, 0, item[2], item[3]];
        } else {
          return[l, 0];
        }
      ;
      case "s":
        if (item.length == 5) {
          return[l, 1, 1, item[3], item[4]];
        } else {
          if (item.length == 3) {
            return[l, 1, 1];
          } else {
            return[l, 1];
          }
        }
      ;
    }
  }, equaliseTransform = R._equaliseTransform = function(t1, t2) {
    t2 = Str(t2).replace(/\.{3}|\u2026/g, t1);
    t1 = R.parseTransformString(t1) || [];
    t2 = R.parseTransformString(t2) || [];
    var maxlength = mmax(t1.length, t2.length), from = [], to = [], i = 0, j, jj, tt1, tt2;
    for (;i < maxlength;i++) {
      tt1 = t1[i] || getEmpty(t2[i]);
      tt2 = t2[i] || getEmpty(tt1);
      if (tt1[0] != tt2[0] || (tt1[0].toLowerCase() == "r" && (tt1[2] != tt2[2] || tt1[3] != tt2[3]) || tt1[0].toLowerCase() == "s" && (tt1[3] != tt2[3] || tt1[4] != tt2[4]))) {
        return;
      }
      from[i] = [];
      to[i] = [];
      for (j = 0, jj = mmax(tt1.length, tt2.length);j < jj;j++) {
        j in tt1 && (from[i][j] = tt1[j]);
        j in tt2 && (to[i][j] = tt2[j]);
      }
    }
    return{from:from, to:to};
  };
  R._getContainer = function(x, y, w, h) {
    var container;
    container = h == null && !R.is(x, "object") ? g.doc.getElementById(x) : x;
    if (container == null) {
      return;
    }
    if (container.tagName) {
      if (y == null) {
        return{container:container, width:container.style.pixelWidth || container.offsetWidth, height:container.style.pixelHeight || container.offsetHeight};
      } else {
        return{container:container, width:y, height:w};
      }
    }
    return{container:1, x:x, y:y, width:w, height:h};
  };
  R.pathToRelative = pathToRelative;
  R._engine = {};
  R.path2curve = path2curve;
  R.matrix = function(a, b, c, d, e, f) {
    return new Matrix(a, b, c, d, e, f);
  };
  function Matrix(a, b, c, d, e, f) {
    if (a != null) {
      this.a = +a;
      this.b = +b;
      this.c = +c;
      this.d = +d;
      this.e = +e;
      this.f = +f;
    } else {
      this.a = 1;
      this.b = 0;
      this.c = 0;
      this.d = 1;
      this.e = 0;
      this.f = 0;
    }
  }
  (function(matrixproto) {
    matrixproto.add = function(a, b, c, d, e, f) {
      var out = [[], [], []], m = [[this.a, this.c, this.e], [this.b, this.d, this.f], [0, 0, 1]], matrix = [[a, c, e], [b, d, f], [0, 0, 1]], x, y, z, res;
      if (a && a instanceof Matrix) {
        matrix = [[a.a, a.c, a.e], [a.b, a.d, a.f], [0, 0, 1]];
      }
      for (x = 0;x < 3;x++) {
        for (y = 0;y < 3;y++) {
          res = 0;
          for (z = 0;z < 3;z++) {
            res += m[x][z] * matrix[z][y];
          }
          out[x][y] = res;
        }
      }
      this.a = out[0][0];
      this.b = out[1][0];
      this.c = out[0][1];
      this.d = out[1][1];
      this.e = out[0][2];
      this.f = out[1][2];
    };
    matrixproto.invert = function() {
      var me = this, x = me.a * me.d - me.b * me.c;
      return new Matrix(me.d / x, -me.b / x, -me.c / x, me.a / x, (me.c * me.f - me.d * me.e) / x, (me.b * me.e - me.a * me.f) / x);
    };
    matrixproto.clone = function() {
      return new Matrix(this.a, this.b, this.c, this.d, this.e, this.f);
    };
    matrixproto.translate = function(x, y) {
      this.add(1, 0, 0, 1, x, y);
    };
    matrixproto.scale = function(x, y, cx, cy) {
      y == null && (y = x);
      (cx || cy) && this.add(1, 0, 0, 1, cx, cy);
      this.add(x, 0, 0, y, 0, 0);
      (cx || cy) && this.add(1, 0, 0, 1, -cx, -cy);
    };
    matrixproto.rotate = function(a, x, y) {
      a = R.rad(a);
      x = x || 0;
      y = y || 0;
      var cos = +math.cos(a).toFixed(9), sin = +math.sin(a).toFixed(9);
      this.add(cos, sin, -sin, cos, x, y);
      this.add(1, 0, 0, 1, -x, -y);
    };
    matrixproto.x = function(x, y) {
      return x * this.a + y * this.c + this.e;
    };
    matrixproto.y = function(x, y) {
      return x * this.b + y * this.d + this.f;
    };
    matrixproto.get = function(i) {
      return+this[Str.fromCharCode(97 + i)].toFixed(4);
    };
    matrixproto.toString = function() {
      return R.svg ? "matrix(" + [this.get(0), this.get(1), this.get(2), this.get(3), this.get(4), this.get(5)].join() + ")" : [this.get(0), this.get(2), this.get(1), this.get(3), 0, 0].join();
    };
    matrixproto.toFilter = function() {
      return "progid:DXImageTransform.Microsoft.Matrix(M11=" + this.get(0) + ", M12=" + this.get(2) + ", M21=" + this.get(1) + ", M22=" + this.get(3) + ", Dx=" + this.get(4) + ", Dy=" + this.get(5) + ", sizingmethod='auto expand')";
    };
    matrixproto.offset = function() {
      return[this.e.toFixed(4), this.f.toFixed(4)];
    };
    function norm(a) {
      return a[0] * a[0] + a[1] * a[1];
    }
    function normalize(a) {
      var mag = math.sqrt(norm(a));
      a[0] && (a[0] /= mag);
      a[1] && (a[1] /= mag);
    }
    matrixproto.split = function() {
      var out = {};
      out.dx = this.e;
      out.dy = this.f;
      var row = [[this.a, this.c], [this.b, this.d]];
      out.scalex = math.sqrt(norm(row[0]));
      normalize(row[0]);
      out.shear = row[0][0] * row[1][0] + row[0][1] * row[1][1];
      row[1] = [row[1][0] - row[0][0] * out.shear, row[1][1] - row[0][1] * out.shear];
      out.scaley = math.sqrt(norm(row[1]));
      normalize(row[1]);
      out.shear /= out.scaley;
      var sin = -row[0][1], cos = row[1][1];
      if (cos < 0) {
        out.rotate = R.deg(math.acos(cos));
        if (sin < 0) {
          out.rotate = 360 - out.rotate;
        }
      } else {
        out.rotate = R.deg(math.asin(sin));
      }
      out.isSimple = !+out.shear.toFixed(9) && (out.scalex.toFixed(9) == out.scaley.toFixed(9) || !out.rotate);
      out.isSuperSimple = !+out.shear.toFixed(9) && (out.scalex.toFixed(9) == out.scaley.toFixed(9) && !out.rotate);
      out.noRotation = !+out.shear.toFixed(9) && !out.rotate;
      return out;
    };
    matrixproto.toTransformString = function(shorter) {
      var s = shorter || this[split]();
      if (s.isSimple) {
        s.scalex = +s.scalex.toFixed(4);
        s.scaley = +s.scaley.toFixed(4);
        s.rotate = +s.rotate.toFixed(4);
        return(s.dx || s.dy ? "t" + [s.dx, s.dy] : E) + (s.scalex != 1 || s.scaley != 1 ? "s" + [s.scalex, s.scaley, 0, 0] : E) + (s.rotate ? "r" + [s.rotate, 0, 0] : E);
      } else {
        return "m" + [this.get(0), this.get(1), this.get(2), this.get(3), this.get(4), this.get(5)];
      }
    };
  })(Matrix.prototype);
  var version = navigator.userAgent.match(/Version\/(.*?)\s/) || navigator.userAgent.match(/Chrome\/(\d+)/);
  if (navigator.vendor == "Apple Computer, Inc." && (version && version[1] < 4 || navigator.platform.slice(0, 2) == "iP") || navigator.vendor == "Google Inc." && (version && version[1] < 8)) {
    paperproto.safari = function() {
      var rect = this.rect(-99, -99, this.width + 99, this.height + 99).attr({stroke:"none"});
      setTimeout(function() {
        rect.remove();
      });
    };
  } else {
    paperproto.safari = fun;
  }
  var preventDefault = function() {
    this.returnValue = false;
  }, preventTouch = function() {
    return this.originalEvent.preventDefault();
  }, stopPropagation = function() {
    this.cancelBubble = true;
  }, stopTouch = function() {
    return this.originalEvent.stopPropagation();
  }, getEventPosition = function(e) {
    var scrollY = g.doc.documentElement.scrollTop || g.doc.body.scrollTop, scrollX = g.doc.documentElement.scrollLeft || g.doc.body.scrollLeft;
    return{x:e.clientX + scrollX, y:e.clientY + scrollY};
  }, addEvent = function() {
    if (g.doc.addEventListener) {
      return function(obj, type, fn, element) {
        var f = function(e) {
          var pos = getEventPosition(e);
          return fn.call(element, e, pos.x, pos.y);
        };
        obj.addEventListener(type, f, false);
        if (supportsTouch && touchMap[type]) {
          var _f = function(e) {
            var pos = getEventPosition(e), olde = e;
            for (var i = 0, ii = e.targetTouches && e.targetTouches.length;i < ii;i++) {
              if (e.targetTouches[i].target == obj) {
                e = e.targetTouches[i];
                e.originalEvent = olde;
                e.preventDefault = preventTouch;
                e.stopPropagation = stopTouch;
                break;
              }
            }
            return fn.call(element, e, pos.x, pos.y);
          };
          obj.addEventListener(touchMap[type], _f, false);
        }
        return function() {
          obj.removeEventListener(type, f, false);
          if (supportsTouch && touchMap[type]) {
            obj.removeEventListener(touchMap[type], f, false);
          }
          return true;
        };
      };
    } else {
      if (g.doc.attachEvent) {
        return function(obj, type, fn, element) {
          var f = function(e) {
            e = e || g.win.event;
            var scrollY = g.doc.documentElement.scrollTop || g.doc.body.scrollTop, scrollX = g.doc.documentElement.scrollLeft || g.doc.body.scrollLeft, x = e.clientX + scrollX, y = e.clientY + scrollY;
            e.preventDefault = e.preventDefault || preventDefault;
            e.stopPropagation = e.stopPropagation || stopPropagation;
            return fn.call(element, e, x, y);
          };
          obj.attachEvent("on" + type, f);
          var detacher = function() {
            obj.detachEvent("on" + type, f);
            return true;
          };
          return detacher;
        };
      }
    }
  }(), drag = [], dragMove = function(e) {
    var x = e.clientX, y = e.clientY, scrollY = g.doc.documentElement.scrollTop || g.doc.body.scrollTop, scrollX = g.doc.documentElement.scrollLeft || g.doc.body.scrollLeft, dragi, j = drag.length;
    while (j--) {
      dragi = drag[j];
      if (supportsTouch && e.touches) {
        var i = e.touches.length, touch;
        while (i--) {
          touch = e.touches[i];
          if (touch.identifier == dragi.el._drag.id) {
            x = touch.clientX;
            y = touch.clientY;
            (e.originalEvent ? e.originalEvent : e).preventDefault();
            break;
          }
        }
      } else {
        e.preventDefault();
      }
      var node = dragi.el.node, o, next = node.nextSibling, parent = node.parentNode, display = node.style.display;
      g.win.opera && parent.removeChild(node);
      node.style.display = "none";
      o = dragi.el.paper.getElementByPoint(x, y);
      node.style.display = display;
      g.win.opera && (next ? parent.insertBefore(node, next) : parent.appendChild(node));
      o && eve("raphael.drag.over." + dragi.el.id, dragi.el, o);
      x += scrollX;
      y += scrollY;
      eve("raphael.drag.move." + dragi.el.id, dragi.move_scope || dragi.el, x - dragi.el._drag.x, y - dragi.el._drag.y, x, y, e);
    }
  }, dragUp = function(e) {
    R.unmousemove(dragMove).unmouseup(dragUp);
    var i = drag.length, dragi;
    while (i--) {
      dragi = drag[i];
      dragi.el._drag = {};
      eve("raphael.drag.end." + dragi.el.id, dragi.end_scope || (dragi.start_scope || (dragi.move_scope || dragi.el)), e);
    }
    drag = [];
  }, elproto = R.el = {};
  for (var i = events.length;i--;) {
    (function(eventName) {
      R[eventName] = elproto[eventName] = function(fn, scope) {
        if (R.is(fn, "function")) {
          this.events = this.events || [];
          this.events.push({name:eventName, f:fn, unbind:addEvent(this.shape || (this.node || g.doc), eventName, fn, scope || this)});
        }
        return this;
      };
      R["un" + eventName] = elproto["un" + eventName] = function(fn) {
        var events = this.events || [], l = events.length;
        while (l--) {
          if (events[l].name == eventName && (R.is(fn, "undefined") || events[l].f == fn)) {
            events[l].unbind();
            events.splice(l, 1);
            !events.length && delete this.events;
          }
        }
        return this;
      };
    })(events[i]);
  }
  elproto.data = function(key, value) {
    var data = eldata[this.id] = eldata[this.id] || {};
    if (arguments.length == 0) {
      return data;
    }
    if (arguments.length == 1) {
      if (R.is(key, "object")) {
        for (var i in key) {
          if (key[has](i)) {
            this.data(i, key[i]);
          }
        }
        return this;
      }
      eve("raphael.data.get." + this.id, this, data[key], key);
      return data[key];
    }
    data[key] = value;
    eve("raphael.data.set." + this.id, this, value, key);
    return this;
  };
  elproto.removeData = function(key) {
    if (key == null) {
      eldata[this.id] = {};
    } else {
      eldata[this.id] && delete eldata[this.id][key];
    }
    return this;
  };
  elproto.getData = function() {
    return clone(eldata[this.id] || {});
  };
  elproto.hover = function(f_in, f_out, scope_in, scope_out) {
    return this.mouseover(f_in, scope_in).mouseout(f_out, scope_out || scope_in);
  };
  elproto.unhover = function(f_in, f_out) {
    return this.unmouseover(f_in).unmouseout(f_out);
  };
  var draggable = [];
  elproto.drag = function(onmove, onstart, onend, move_scope, start_scope, end_scope) {
    function start(e) {
      (e.originalEvent || e).preventDefault();
      var x = e.clientX, y = e.clientY, scrollY = g.doc.documentElement.scrollTop || g.doc.body.scrollTop, scrollX = g.doc.documentElement.scrollLeft || g.doc.body.scrollLeft;
      this._drag.id = e.identifier;
      if (supportsTouch && e.touches) {
        var i = e.touches.length, touch;
        while (i--) {
          touch = e.touches[i];
          this._drag.id = touch.identifier;
          if (touch.identifier == this._drag.id) {
            x = touch.clientX;
            y = touch.clientY;
            break;
          }
        }
      }
      this._drag.x = x + scrollX;
      this._drag.y = y + scrollY;
      !drag.length && R.mousemove(dragMove).mouseup(dragUp);
      drag.push({el:this, move_scope:move_scope, start_scope:start_scope, end_scope:end_scope});
      onstart && eve.on("raphael.drag.start." + this.id, onstart);
      onmove && eve.on("raphael.drag.move." + this.id, onmove);
      onend && eve.on("raphael.drag.end." + this.id, onend);
      eve("raphael.drag.start." + this.id, start_scope || (move_scope || this), e.clientX + scrollX, e.clientY + scrollY, e);
    }
    this._drag = {};
    draggable.push({el:this, start:start});
    this.mousedown(start);
    return this;
  };
  elproto.onDragOver = function(f) {
    f ? eve.on("raphael.drag.over." + this.id, f) : eve.unbind("raphael.drag.over." + this.id);
  };
  elproto.undrag = function() {
    var i = draggable.length;
    while (i--) {
      if (draggable[i].el == this) {
        this.unmousedown(draggable[i].start);
        draggable.splice(i, 1);
        eve.unbind("raphael.drag.*." + this.id);
      }
    }
    !draggable.length && R.unmousemove(dragMove).unmouseup(dragUp);
    drag = [];
  };
  paperproto.circle = function(x, y, r) {
    var out = R._engine.circle(this, x || 0, y || 0, r || 0);
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.rect = function(x, y, w, h, r) {
    var out = R._engine.rect(this, x || 0, y || 0, w || 0, h || 0, r || 0);
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.ellipse = function(x, y, rx, ry) {
    var out = R._engine.ellipse(this, x || 0, y || 0, rx || 0, ry || 0);
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.path = function(pathString) {
    pathString && (!R.is(pathString, string) && (!R.is(pathString[0], array) && (pathString += E)));
    var out = R._engine.path(R.format[apply](R, arguments), this);
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.image = function(src, x, y, w, h) {
    var out = R._engine.image(this, src || "about:blank", x || 0, y || 0, w || 0, h || 0);
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.text = function(x, y, text) {
    var out = R._engine.text(this, x || 0, y || 0, Str(text));
    this.__set__ && this.__set__.push(out);
    return out;
  };
  paperproto.set = function(itemsArray) {
    !R.is(itemsArray, "array") && (itemsArray = Array.prototype.splice.call(arguments, 0, arguments.length));
    var out = new Set(itemsArray);
    this.__set__ && this.__set__.push(out);
    out["paper"] = this;
    out["type"] = "set";
    return out;
  };
  paperproto.setStart = function(set) {
    this.__set__ = set || this.set();
  };
  paperproto.setFinish = function(set) {
    var out = this.__set__;
    delete this.__set__;
    return out;
  };
  paperproto.setSize = function(width, height) {
    return R._engine.setSize.call(this, width, height);
  };
  paperproto.setViewBox = function(x, y, w, h, fit) {
    return R._engine.setViewBox.call(this, x, y, w, h, fit);
  };
  paperproto.top = paperproto.bottom = null;
  paperproto.raphael = R;
  var getOffset = function(elem) {
    var box = elem.getBoundingClientRect(), doc = elem.ownerDocument, body = doc.body, docElem = doc.documentElement, clientTop = docElem.clientTop || (body.clientTop || 0), clientLeft = docElem.clientLeft || (body.clientLeft || 0), top = box.top + (g.win.pageYOffset || (docElem.scrollTop || body.scrollTop)) - clientTop, left = box.left + (g.win.pageXOffset || (docElem.scrollLeft || body.scrollLeft)) - clientLeft;
    return{y:top, x:left};
  };
  paperproto.getElementByPoint = function(x, y) {
    var paper = this, svg = paper.canvas, target = g.doc.elementFromPoint(x, y);
    if (g.win.opera && target.tagName == "svg") {
      var so = getOffset(svg), sr = svg.createSVGRect();
      sr.x = x - so.x;
      sr.y = y - so.y;
      sr.width = sr.height = 1;
      var hits = svg.getIntersectionList(sr, null);
      if (hits.length) {
        target = hits[hits.length - 1];
      }
    }
    if (!target) {
      return null;
    }
    while (target.parentNode && (target != svg.parentNode && !target.raphael)) {
      target = target.parentNode;
    }
    target == paper.canvas.parentNode && (target = svg);
    target = target && target.raphael ? paper.getById(target.raphaelid) : null;
    return target;
  };
  paperproto.getElementsByBBox = function(bbox) {
    var set = this.set();
    this.forEach(function(el) {
      if (R.isBBoxIntersect(el.getBBox(), bbox)) {
        set.push(el);
      }
    });
    return set;
  };
  paperproto.getById = function(id) {
    var bot = this.bottom;
    while (bot) {
      if (bot.id == id) {
        return bot;
      }
      bot = bot.next;
    }
    return null;
  };
  paperproto.forEach = function(callback, thisArg) {
    var bot = this.bottom;
    while (bot) {
      if (callback.call(thisArg, bot) === false) {
        return this;
      }
      bot = bot.next;
    }
    return this;
  };
  paperproto.getElementsByPoint = function(x, y) {
    var set = this.set();
    this.forEach(function(el) {
      if (el.isPointInside(x, y)) {
        set.push(el);
      }
    });
    return set;
  };
  function x_y() {
    return this.x + S + this.y;
  }
  function x_y_w_h() {
    return this.x + S + this.y + S + this.width + " \u00d7 " + this.height;
  }
  elproto.isPointInside = function(x, y) {
    var rp = this.realPath = getPath[this.type](this);
    if (this.attr("transform") && this.attr("transform").length) {
      rp = R.transformPath(rp, this.attr("transform"));
    }
    return R.isPointInsidePath(rp, x, y);
  };
  elproto.getBBox = function(isWithoutTransform) {
    if (this.removed) {
      return{};
    }
    var _ = this._;
    if (isWithoutTransform) {
      if (_.dirty || !_.bboxwt) {
        this.realPath = getPath[this.type](this);
        _.bboxwt = pathDimensions(this.realPath);
        _.bboxwt.toString = x_y_w_h;
        _.dirty = 0;
      }
      return _.bboxwt;
    }
    if (_.dirty || (_.dirtyT || !_.bbox)) {
      if (_.dirty || !this.realPath) {
        _.bboxwt = 0;
        this.realPath = getPath[this.type](this);
      }
      _.bbox = pathDimensions(mapPath(this.realPath, this.matrix));
      _.bbox.toString = x_y_w_h;
      _.dirty = _.dirtyT = 0;
    }
    return _.bbox;
  };
  elproto.clone = function() {
    if (this.removed) {
      return null;
    }
    var out = this.paper[this.type]().attr(this.attr());
    this.__set__ && this.__set__.push(out);
    return out;
  };
  elproto.glow = function(glow) {
    if (this.type == "text") {
      return null;
    }
    glow = glow || {};
    var s = {width:(glow.width || 10) + (+this.attr("stroke-width") || 1), fill:glow.fill || false, opacity:glow.opacity || 0.5, offsetx:glow.offsetx || 0, offsety:glow.offsety || 0, color:glow.color || "#000"}, c = s.width / 2, r = this.paper, out = r.set(), path = this.realPath || getPath[this.type](this);
    path = this.matrix ? mapPath(path, this.matrix) : path;
    for (var i = 1;i < c + 1;i++) {
      out.push(r.path(path).attr({stroke:s.color, fill:s.fill ? s.color : "none", "stroke-linejoin":"round", "stroke-linecap":"round", "stroke-width":+(s.width / c * i).toFixed(3), opacity:+(s.opacity / c).toFixed(3)}));
    }
    return out.insertBefore(this).translate(s.offsetx, s.offsety);
  };
  var curveslengths = {}, getPointAtSegmentLength = function(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, length) {
    if (length == null) {
      return bezlen(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y);
    } else {
      return R.findDotsAtSegment(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, getTatLen(p1x, p1y, c1x, c1y, c2x, c2y, p2x, p2y, length));
    }
  }, getLengthFactory = function(istotal, subpath) {
    return function(path, length, onlystart) {
      path = path2curve(path);
      var x, y, p, l, sp = "", subpaths = {}, point, len = 0;
      for (var i = 0, ii = path.length;i < ii;i++) {
        p = path[i];
        if (p[0] == "M") {
          x = +p[1];
          y = +p[2];
        } else {
          l = getPointAtSegmentLength(x, y, p[1], p[2], p[3], p[4], p[5], p[6]);
          if (len + l > length) {
            if (subpath && !subpaths.start) {
              point = getPointAtSegmentLength(x, y, p[1], p[2], p[3], p[4], p[5], p[6], length - len);
              sp += ["C" + point.start.x, point.start.y, point.m.x, point.m.y, point.x, point.y];
              if (onlystart) {
                return sp;
              }
              subpaths.start = sp;
              sp = ["M" + point.x, point.y + "C" + point.n.x, point.n.y, point.end.x, point.end.y, p[5], p[6]].join();
              len += l;
              x = +p[5];
              y = +p[6];
              continue;
            }
            if (!istotal && !subpath) {
              point = getPointAtSegmentLength(x, y, p[1], p[2], p[3], p[4], p[5], p[6], length - len);
              return{x:point.x, y:point.y, alpha:point.alpha};
            }
          }
          len += l;
          x = +p[5];
          y = +p[6];
        }
        sp += p.shift() + p;
      }
      subpaths.end = sp;
      point = istotal ? len : subpath ? subpaths : R.findDotsAtSegment(x, y, p[0], p[1], p[2], p[3], p[4], p[5], 1);
      point.alpha && (point = {x:point.x, y:point.y, alpha:point.alpha});
      return point;
    };
  };
  var getTotalLength = getLengthFactory(1), getPointAtLength = getLengthFactory(), getSubpathsAtLength = getLengthFactory(0, 1);
  R.getTotalLength = getTotalLength;
  R.getPointAtLength = getPointAtLength;
  R.getSubpath = function(path, from, to) {
    if (this.getTotalLength(path) - to < 1E-6) {
      return getSubpathsAtLength(path, from).end;
    }
    var a = getSubpathsAtLength(path, to, 1);
    return from ? getSubpathsAtLength(a, from).end : a;
  };
  elproto.getTotalLength = function() {
    var path = this.getPath();
    if (!path) {
      return;
    }
    if (this.node.getTotalLength) {
      return this.node.getTotalLength();
    }
    return getTotalLength(path);
  };
  elproto.getPointAtLength = function(length) {
    var path = this.getPath();
    if (!path) {
      return;
    }
    return getPointAtLength(path, length);
  };
  elproto.getPath = function() {
    var path, getPath = R._getPath[this.type];
    if (this.type == "text" || this.type == "set") {
      return;
    }
    if (getPath) {
      path = getPath(this);
    }
    return path;
  };
  elproto.getSubpath = function(from, to) {
    var path = this.getPath();
    if (!path) {
      return;
    }
    return R.getSubpath(path, from, to);
  };
  var ef = R.easing_formulas = {linear:function(n) {
    return n;
  }, "<":function(n) {
    return pow(n, 1.7);
  }, ">":function(n) {
    return pow(n, 0.48);
  }, "<>":function(n) {
    var q = 0.48 - n / 1.04, Q = math.sqrt(0.1734 + q * q), x = Q - q, X = pow(abs(x), 1 / 3) * (x < 0 ? -1 : 1), y = -Q - q, Y = pow(abs(y), 1 / 3) * (y < 0 ? -1 : 1), t = X + Y + 0.5;
    return(1 - t) * 3 * t * t + t * t * t;
  }, backIn:function(n) {
    var s = 1.70158;
    return n * n * ((s + 1) * n - s);
  }, backOut:function(n) {
    n = n - 1;
    var s = 1.70158;
    return n * n * ((s + 1) * n + s) + 1;
  }, elastic:function(n) {
    if (n == !!n) {
      return n;
    }
    return pow(2, -10 * n) * math.sin((n - 0.075) * (2 * PI) / 0.3) + 1;
  }, bounce:function(n) {
    var s = 7.5625, p = 2.75, l;
    if (n < 1 / p) {
      l = s * n * n;
    } else {
      if (n < 2 / p) {
        n -= 1.5 / p;
        l = s * n * n + 0.75;
      } else {
        if (n < 2.5 / p) {
          n -= 2.25 / p;
          l = s * n * n + 0.9375;
        } else {
          n -= 2.625 / p;
          l = s * n * n + 0.984375;
        }
      }
    }
    return l;
  }};
  ef.easeIn = ef["ease-in"] = ef["<"];
  ef.easeOut = ef["ease-out"] = ef[">"];
  ef.easeInOut = ef["ease-in-out"] = ef["<>"];
  ef["back-in"] = ef.backIn;
  ef["back-out"] = ef.backOut;
  var animationElements = [], requestAnimFrame = window.requestAnimationFrame || (window.webkitRequestAnimationFrame || (window.mozRequestAnimationFrame || (window.oRequestAnimationFrame || (window.msRequestAnimationFrame || function(callback) {
    setTimeout(callback, 16);
  })))), animation = function() {
    var Now = +new Date, l = 0;
    for (;l < animationElements.length;l++) {
      var e = animationElements[l];
      if (e.el.removed || e.paused) {
        continue;
      }
      var time = Now - e.start, ms = e.ms, easing = e.easing, from = e.from, diff = e.diff, to = e.to, t = e.t, that = e.el, set = {}, now, init = {}, key;
      if (e.initstatus) {
        time = (e.initstatus * e.anim.top - e.prev) / (e.percent - e.prev) * ms;
        e.status = e.initstatus;
        delete e.initstatus;
        e.stop && animationElements.splice(l--, 1);
      } else {
        e.status = (e.prev + (e.percent - e.prev) * (time / ms)) / e.anim.top;
      }
      if (time < 0) {
        continue;
      }
      if (time < ms) {
        var pos = easing(time / ms);
        for (var attr in from) {
          if (from[has](attr)) {
            switch(availableAnimAttrs[attr]) {
              case nu:
                now = +from[attr] + pos * ms * diff[attr];
                break;
              case "colour":
                now = "rgb(" + [upto255(round(from[attr].r + pos * ms * diff[attr].r)), upto255(round(from[attr].g + pos * ms * diff[attr].g)), upto255(round(from[attr].b + pos * ms * diff[attr].b))].join(",") + ")";
                break;
              case "path":
                now = [];
                for (var i = 0, ii = from[attr].length;i < ii;i++) {
                  now[i] = [from[attr][i][0]];
                  for (var j = 1, jj = from[attr][i].length;j < jj;j++) {
                    now[i][j] = +from[attr][i][j] + pos * ms * diff[attr][i][j];
                  }
                  now[i] = now[i].join(S);
                }
                now = now.join(S);
                break;
              case "transform":
                if (diff[attr].real) {
                  now = [];
                  for (i = 0, ii = from[attr].length;i < ii;i++) {
                    now[i] = [from[attr][i][0]];
                    for (j = 1, jj = from[attr][i].length;j < jj;j++) {
                      now[i][j] = from[attr][i][j] + pos * ms * diff[attr][i][j];
                    }
                  }
                } else {
                  var get = function(i) {
                    return+from[attr][i] + pos * ms * diff[attr][i];
                  };
                  now = [["m", get(0), get(1), get(2), get(3), get(4), get(5)]];
                }
                break;
              case "csv":
                if (attr == "clip-rect") {
                  now = [];
                  i = 4;
                  while (i--) {
                    now[i] = +from[attr][i] + pos * ms * diff[attr][i];
                  }
                }
                break;
              default:
                var from2 = [][concat](from[attr]);
                now = [];
                i = that.paper.customAttributes[attr].length;
                while (i--) {
                  now[i] = +from2[i] + pos * ms * diff[attr][i];
                }
                break;
            }
            set[attr] = now;
          }
        }
        that.attr(set);
        (function(id, that, anim) {
          setTimeout(function() {
            eve("raphael.anim.frame." + id, that, anim);
          });
        })(that.id, that, e.anim);
      } else {
        (function(f, el, a) {
          setTimeout(function() {
            eve("raphael.anim.frame." + el.id, el, a);
            eve("raphael.anim.finish." + el.id, el, a);
            R.is(f, "function") && f.call(el);
          });
        })(e.callback, that, e.anim);
        that.attr(to);
        animationElements.splice(l--, 1);
        if (e.repeat > 1 && !e.next) {
          for (key in to) {
            if (to[has](key)) {
              init[key] = e.totalOrigin[key];
            }
          }
          e.el.attr(init);
          runAnimation(e.anim, e.el, e.anim.percents[0], null, e.totalOrigin, e.repeat - 1);
        }
        if (e.next && !e.stop) {
          runAnimation(e.anim, e.el, e.next, null, e.totalOrigin, e.repeat);
        }
      }
    }
    R.svg && (that && (that.paper && that.paper.safari()));
    animationElements.length && requestAnimFrame(animation);
  }, upto255 = function(color) {
    return color > 255 ? 255 : color < 0 ? 0 : color;
  };
  elproto.animateWith = function(el, anim, params, ms, easing, callback) {
    var element = this;
    if (element.removed) {
      callback && callback.call(element);
      return element;
    }
    var a = params instanceof Animation ? params : R.animation(params, ms, easing, callback), x, y;
    runAnimation(a, element, a.percents[0], null, element.attr());
    for (var i = 0, ii = animationElements.length;i < ii;i++) {
      if (animationElements[i].anim == anim && animationElements[i].el == el) {
        animationElements[ii - 1].start = animationElements[i].start;
        break;
      }
    }
    return element;
  };
  function CubicBezierAtTime(t, p1x, p1y, p2x, p2y, duration) {
    var cx = 3 * p1x, bx = 3 * (p2x - p1x) - cx, ax = 1 - cx - bx, cy = 3 * p1y, by = 3 * (p2y - p1y) - cy, ay = 1 - cy - by;
    function sampleCurveX(t) {
      return((ax * t + bx) * t + cx) * t;
    }
    function solve(x, epsilon) {
      var t = solveCurveX(x, epsilon);
      return((ay * t + by) * t + cy) * t;
    }
    function solveCurveX(x, epsilon) {
      var t0, t1, t2, x2, d2, i;
      for (t2 = x, i = 0;i < 8;i++) {
        x2 = sampleCurveX(t2) - x;
        if (abs(x2) < epsilon) {
          return t2;
        }
        d2 = (3 * ax * t2 + 2 * bx) * t2 + cx;
        if (abs(d2) < 1E-6) {
          break;
        }
        t2 = t2 - x2 / d2;
      }
      t0 = 0;
      t1 = 1;
      t2 = x;
      if (t2 < t0) {
        return t0;
      }
      if (t2 > t1) {
        return t1;
      }
      while (t0 < t1) {
        x2 = sampleCurveX(t2);
        if (abs(x2 - x) < epsilon) {
          return t2;
        }
        if (x > x2) {
          t0 = t2;
        } else {
          t1 = t2;
        }
        t2 = (t1 - t0) / 2 + t0;
      }
      return t2;
    }
    return solve(t, 1 / (200 * duration));
  }
  elproto.onAnimation = function(f) {
    f ? eve.on("raphael.anim.frame." + this.id, f) : eve.unbind("raphael.anim.frame." + this.id);
    return this;
  };
  function Animation(anim, ms) {
    var percents = [], newAnim = {};
    this.ms = ms;
    this.times = 1;
    if (anim) {
      for (var attr in anim) {
        if (anim[has](attr)) {
          newAnim[toFloat(attr)] = anim[attr];
          percents.push(toFloat(attr));
        }
      }
      percents.sort(sortByNumber);
    }
    this.anim = newAnim;
    this.top = percents[percents.length - 1];
    this.percents = percents;
  }
  Animation.prototype.delay = function(delay) {
    var a = new Animation(this.anim, this.ms);
    a.times = this.times;
    a.del = +delay || 0;
    return a;
  };
  Animation.prototype.repeat = function(times) {
    var a = new Animation(this.anim, this.ms);
    a.del = this.del;
    a.times = math.floor(mmax(times, 0)) || 1;
    return a;
  };
  function runAnimation(anim, element, percent, status, totalOrigin, times) {
    percent = toFloat(percent);
    var params, isInAnim, isInAnimSet, percents = [], next, prev, timestamp, ms = anim.ms, from = {}, to = {}, diff = {};
    if (status) {
      for (i = 0, ii = animationElements.length;i < ii;i++) {
        var e = animationElements[i];
        if (e.el.id == element.id && e.anim == anim) {
          if (e.percent != percent) {
            animationElements.splice(i, 1);
            isInAnimSet = 1;
          } else {
            isInAnim = e;
          }
          element.attr(e.totalOrigin);
          break;
        }
      }
    } else {
      status = +to;
    }
    for (var i = 0, ii = anim.percents.length;i < ii;i++) {
      if (anim.percents[i] == percent || anim.percents[i] > status * anim.top) {
        percent = anim.percents[i];
        prev = anim.percents[i - 1] || 0;
        ms = ms / anim.top * (percent - prev);
        next = anim.percents[i + 1];
        params = anim.anim[percent];
        break;
      } else {
        if (status) {
          element.attr(anim.anim[anim.percents[i]]);
        }
      }
    }
    if (!params) {
      return;
    }
    if (!isInAnim) {
      for (var attr in params) {
        if (params[has](attr)) {
          if (availableAnimAttrs[has](attr) || element.paper.customAttributes[has](attr)) {
            from[attr] = element.attr(attr);
            from[attr] == null && (from[attr] = availableAttrs[attr]);
            to[attr] = params[attr];
            switch(availableAnimAttrs[attr]) {
              case nu:
                diff[attr] = (to[attr] - from[attr]) / ms;
                break;
              case "colour":
                from[attr] = R.getRGB(from[attr]);
                var toColour = R.getRGB(to[attr]);
                diff[attr] = {r:(toColour.r - from[attr].r) / ms, g:(toColour.g - from[attr].g) / ms, b:(toColour.b - from[attr].b) / ms};
                break;
              case "path":
                var pathes = path2curve(from[attr], to[attr]), toPath = pathes[1];
                from[attr] = pathes[0];
                diff[attr] = [];
                for (i = 0, ii = from[attr].length;i < ii;i++) {
                  diff[attr][i] = [0];
                  for (var j = 1, jj = from[attr][i].length;j < jj;j++) {
                    diff[attr][i][j] = (toPath[i][j] - from[attr][i][j]) / ms;
                  }
                }
                break;
              case "transform":
                var _ = element._, eq = equaliseTransform(_[attr], to[attr]);
                if (eq) {
                  from[attr] = eq.from;
                  to[attr] = eq.to;
                  diff[attr] = [];
                  diff[attr].real = true;
                  for (i = 0, ii = from[attr].length;i < ii;i++) {
                    diff[attr][i] = [from[attr][i][0]];
                    for (j = 1, jj = from[attr][i].length;j < jj;j++) {
                      diff[attr][i][j] = (to[attr][i][j] - from[attr][i][j]) / ms;
                    }
                  }
                } else {
                  var m = element.matrix || new Matrix, to2 = {_:{transform:_.transform}, getBBox:function() {
                    return element.getBBox(1);
                  }};
                  from[attr] = [m.a, m.b, m.c, m.d, m.e, m.f];
                  extractTransform(to2, to[attr]);
                  to[attr] = to2._.transform;
                  diff[attr] = [(to2.matrix.a - m.a) / ms, (to2.matrix.b - m.b) / ms, (to2.matrix.c - m.c) / ms, (to2.matrix.d - m.d) / ms, (to2.matrix.e - m.e) / ms, (to2.matrix.f - m.f) / ms];
                }
                break;
              case "csv":
                var values = Str(params[attr])[split](separator), from2 = Str(from[attr])[split](separator);
                if (attr == "clip-rect") {
                  from[attr] = from2;
                  diff[attr] = [];
                  i = from2.length;
                  while (i--) {
                    diff[attr][i] = (values[i] - from[attr][i]) / ms;
                  }
                }
                to[attr] = values;
                break;
              default:
                values = [][concat](params[attr]);
                from2 = [][concat](from[attr]);
                diff[attr] = [];
                i = element.paper.customAttributes[attr].length;
                while (i--) {
                  diff[attr][i] = ((values[i] || 0) - (from2[i] || 0)) / ms;
                }
                break;
            }
          }
        }
      }
      var easing = params.easing, easyeasy = R.easing_formulas[easing];
      if (!easyeasy) {
        easyeasy = Str(easing).match(bezierrg);
        if (easyeasy && easyeasy.length == 5) {
          var curve = easyeasy;
          easyeasy = function(t) {
            return CubicBezierAtTime(t, +curve[1], +curve[2], +curve[3], +curve[4], ms);
          };
        } else {
          easyeasy = pipe;
        }
      }
      timestamp = params.start || (anim.start || +new Date);
      e = {anim:anim, percent:percent, timestamp:timestamp, start:timestamp + (anim.del || 0), status:0, initstatus:status || 0, stop:false, ms:ms, easing:easyeasy, from:from, diff:diff, to:to, el:element, callback:params.callback, prev:prev, next:next, repeat:times || anim.times, origin:element.attr(), totalOrigin:totalOrigin};
      animationElements.push(e);
      if (status && (!isInAnim && !isInAnimSet)) {
        e.stop = true;
        e.start = new Date - ms * status;
        if (animationElements.length == 1) {
          return animation();
        }
      }
      if (isInAnimSet) {
        e.start = new Date - e.ms * status;
      }
      animationElements.length == 1 && requestAnimFrame(animation);
    } else {
      isInAnim.initstatus = status;
      isInAnim.start = new Date - isInAnim.ms * status;
    }
    eve("raphael.anim.start." + element.id, element, anim);
  }
  R.animation = function(params, ms, easing, callback) {
    if (params instanceof Animation) {
      return params;
    }
    if (R.is(easing, "function") || !easing) {
      callback = callback || (easing || null);
      easing = null;
    }
    params = Object(params);
    ms = +ms || 0;
    var p = {}, json, attr;
    for (attr in params) {
      if (params[has](attr) && (toFloat(attr) != attr && toFloat(attr) + "%" != attr)) {
        json = true;
        p[attr] = params[attr];
      }
    }
    if (!json) {
      return new Animation(params, ms);
    } else {
      easing && (p.easing = easing);
      callback && (p.callback = callback);
      return new Animation({100:p}, ms);
    }
  };
  elproto.animate = function(params, ms, easing, callback) {
    var element = this;
    if (element.removed) {
      callback && callback.call(element);
      return element;
    }
    var anim = params instanceof Animation ? params : R.animation(params, ms, easing, callback);
    runAnimation(anim, element, anim.percents[0], null, element.attr());
    return element;
  };
  elproto.setTime = function(anim, value) {
    if (anim && value != null) {
      this.status(anim, mmin(value, anim.ms) / anim.ms);
    }
    return this;
  };
  elproto.status = function(anim, value) {
    var out = [], i = 0, len, e;
    if (value != null) {
      runAnimation(anim, this, -1, mmin(value, 1));
      return this;
    } else {
      len = animationElements.length;
      for (;i < len;i++) {
        e = animationElements[i];
        if (e.el.id == this.id && (!anim || e.anim == anim)) {
          if (anim) {
            return e.status;
          }
          out.push({anim:e.anim, status:e.status});
        }
      }
      if (anim) {
        return 0;
      }
      return out;
    }
  };
  elproto.pause = function(anim) {
    for (var i = 0;i < animationElements.length;i++) {
      if (animationElements[i].el.id == this.id && (!anim || animationElements[i].anim == anim)) {
        if (eve("raphael.anim.pause." + this.id, this, animationElements[i].anim) !== false) {
          animationElements[i].paused = true;
        }
      }
    }
    return this;
  };
  elproto.resume = function(anim) {
    for (var i = 0;i < animationElements.length;i++) {
      if (animationElements[i].el.id == this.id && (!anim || animationElements[i].anim == anim)) {
        var e = animationElements[i];
        if (eve("raphael.anim.resume." + this.id, this, e.anim) !== false) {
          delete e.paused;
          this.status(e.anim, e.status);
        }
      }
    }
    return this;
  };
  elproto.stop = function(anim) {
    for (var i = 0;i < animationElements.length;i++) {
      if (animationElements[i].el.id == this.id && (!anim || animationElements[i].anim == anim)) {
        if (eve("raphael.anim.stop." + this.id, this, animationElements[i].anim) !== false) {
          animationElements.splice(i--, 1);
        }
      }
    }
    return this;
  };
  function stopAnimation(paper) {
    for (var i = 0;i < animationElements.length;i++) {
      if (animationElements[i].el.paper == paper) {
        animationElements.splice(i--, 1);
      }
    }
  }
  eve.on("raphael.remove", stopAnimation);
  eve.on("raphael.clear", stopAnimation);
  elproto.toString = function() {
    return "Rapha\u00ebl\u2019s object";
  };
  var Set = function(items) {
    this.items = [];
    this.length = 0;
    this.type = "set";
    if (items) {
      for (var i = 0, ii = items.length;i < ii;i++) {
        if (items[i] && (items[i].constructor == elproto.constructor || items[i].constructor == Set)) {
          this[this.items.length] = this.items[this.items.length] = items[i];
          this.length++;
        }
      }
    }
  }, setproto = Set.prototype;
  setproto.push = function() {
    var item, len;
    for (var i = 0, ii = arguments.length;i < ii;i++) {
      item = arguments[i];
      if (item && (item.constructor == elproto.constructor || item.constructor == Set)) {
        len = this.items.length;
        this[len] = this.items[len] = item;
        this.length++;
      }
    }
    return this;
  };
  setproto.pop = function() {
    this.length && delete this[this.length--];
    return this.items.pop();
  };
  setproto.forEach = function(callback, thisArg) {
    for (var i = 0, ii = this.items.length;i < ii;i++) {
      if (callback.call(thisArg, this.items[i], i) === false) {
        return this;
      }
    }
    return this;
  };
  for (var method in elproto) {
    if (elproto[has](method)) {
      setproto[method] = function(methodname) {
        return function() {
          var arg = arguments;
          return this.forEach(function(el) {
            el[methodname][apply](el, arg);
          });
        };
      }(method);
    }
  }
  setproto.attr = function(name, value) {
    if (name && (R.is(name, array) && R.is(name[0], "object"))) {
      for (var j = 0, jj = name.length;j < jj;j++) {
        this.items[j].attr(name[j]);
      }
    } else {
      for (var i = 0, ii = this.items.length;i < ii;i++) {
        this.items[i].attr(name, value);
      }
    }
    return this;
  };
  setproto.clear = function() {
    while (this.length) {
      this.pop();
    }
  };
  setproto.splice = function(index, count, insertion) {
    index = index < 0 ? mmax(this.length + index, 0) : index;
    count = mmax(0, mmin(this.length - index, count));
    var tail = [], todel = [], args = [], i;
    for (i = 2;i < arguments.length;i++) {
      args.push(arguments[i]);
    }
    for (i = 0;i < count;i++) {
      todel.push(this[index + i]);
    }
    for (;i < this.length - index;i++) {
      tail.push(this[index + i]);
    }
    var arglen = args.length;
    for (i = 0;i < arglen + tail.length;i++) {
      this.items[index + i] = this[index + i] = i < arglen ? args[i] : tail[i - arglen];
    }
    i = this.items.length = this.length -= count - arglen;
    while (this[i]) {
      delete this[i++];
    }
    return new Set(todel);
  };
  setproto.exclude = function(el) {
    for (var i = 0, ii = this.length;i < ii;i++) {
      if (this[i] == el) {
        this.splice(i, 1);
        return true;
      }
    }
  };
  setproto.animate = function(params, ms, easing, callback) {
    (R.is(easing, "function") || !easing) && (callback = easing || null);
    var len = this.items.length, i = len, item, set = this, collector;
    if (!len) {
      return this;
    }
    callback && (collector = function() {
      !--len && callback.call(set);
    });
    easing = R.is(easing, string) ? easing : collector;
    var anim = R.animation(params, ms, easing, collector);
    item = this.items[--i].animate(anim);
    while (i--) {
      this.items[i] && (!this.items[i].removed && this.items[i].animateWith(item, anim, anim));
      this.items[i] && !this.items[i].removed || len--;
    }
    return this;
  };
  setproto.insertAfter = function(el) {
    var i = this.items.length;
    while (i--) {
      this.items[i].insertAfter(el);
    }
    return this;
  };
  setproto.getBBox = function() {
    var x = [], y = [], x2 = [], y2 = [];
    for (var i = this.items.length;i--;) {
      if (!this.items[i].removed) {
        var box = this.items[i].getBBox();
        x.push(box.x);
        y.push(box.y);
        x2.push(box.x + box.width);
        y2.push(box.y + box.height);
      }
    }
    x = mmin[apply](0, x);
    y = mmin[apply](0, y);
    x2 = mmax[apply](0, x2);
    y2 = mmax[apply](0, y2);
    return{x:x, y:y, x2:x2, y2:y2, width:x2 - x, height:y2 - y};
  };
  setproto.clone = function(s) {
    s = this.paper.set();
    for (var i = 0, ii = this.items.length;i < ii;i++) {
      s.push(this.items[i].clone());
    }
    return s;
  };
  setproto.toString = function() {
    return "Rapha\u00ebl\u2018s set";
  };
  setproto.glow = function(glowConfig) {
    var ret = this.paper.set();
    this.forEach(function(shape, index) {
      var g = shape.glow(glowConfig);
      if (g != null) {
        g.forEach(function(shape2, index2) {
          ret.push(shape2);
        });
      }
    });
    return ret;
  };
  setproto.isPointInside = function(x, y) {
    var isPointInside = false;
    this.forEach(function(el) {
      if (el.isPointInside(x, y)) {
        isPointInside = true;
        return false;
      }
    });
    return isPointInside;
  };
  R.registerFont = function(font) {
    if (!font.face) {
      return font;
    }
    this.fonts = this.fonts || {};
    var fontcopy = {w:font.w, face:{}, glyphs:{}}, family = font.face["font-family"];
    for (var prop in font.face) {
      if (font.face[has](prop)) {
        fontcopy.face[prop] = font.face[prop];
      }
    }
    if (this.fonts[family]) {
      this.fonts[family].push(fontcopy);
    } else {
      this.fonts[family] = [fontcopy];
    }
    if (!font.svg) {
      fontcopy.face["units-per-em"] = toInt(font.face["units-per-em"], 10);
      for (var glyph in font.glyphs) {
        if (font.glyphs[has](glyph)) {
          var path = font.glyphs[glyph];
          fontcopy.glyphs[glyph] = {w:path.w, k:{}, d:path.d && "M" + path.d.replace(/[mlcxtrv]/g, function(command) {
            return{l:"L", c:"C", x:"z", t:"m", r:"l", v:"c"}[command] || "M";
          }) + "z"};
          if (path.k) {
            for (var k in path.k) {
              if (path[has](k)) {
                fontcopy.glyphs[glyph].k[k] = path.k[k];
              }
            }
          }
        }
      }
    }
    return font;
  };
  paperproto.getFont = function(family, weight, style, stretch) {
    stretch = stretch || "normal";
    style = style || "normal";
    weight = +weight || ({normal:400, bold:700, lighter:300, bolder:800}[weight] || 400);
    if (!R.fonts) {
      return;
    }
    var font = R.fonts[family];
    if (!font) {
      var name = new RegExp("(^|\\s)" + family.replace(/[^\w\d\s+!~.:_-]/g, E) + "(\\s|$)", "i");
      for (var fontName in R.fonts) {
        if (R.fonts[has](fontName)) {
          if (name.test(fontName)) {
            font = R.fonts[fontName];
            break;
          }
        }
      }
    }
    var thefont;
    if (font) {
      for (var i = 0, ii = font.length;i < ii;i++) {
        thefont = font[i];
        if (thefont.face["font-weight"] == weight && ((thefont.face["font-style"] == style || !thefont.face["font-style"]) && thefont.face["font-stretch"] == stretch)) {
          break;
        }
      }
    }
    return thefont;
  };
  paperproto.print = function(x, y, string, font, size, origin, letter_spacing, line_spacing) {
    origin = origin || "middle";
    letter_spacing = mmax(mmin(letter_spacing || 0, 1), -1);
    line_spacing = mmax(mmin(line_spacing || 1, 3), 1);
    var letters = Str(string)[split](E), shift = 0, notfirst = 0, path = E, scale;
    R.is(font, "string") && (font = this.getFont(font));
    if (font) {
      scale = (size || 16) / font.face["units-per-em"];
      var bb = font.face.bbox[split](separator), top = +bb[0], lineHeight = bb[3] - bb[1], shifty = 0, height = +bb[1] + (origin == "baseline" ? lineHeight + +font.face.descent : lineHeight / 2);
      for (var i = 0, ii = letters.length;i < ii;i++) {
        if (letters[i] == "\n") {
          shift = 0;
          curr = 0;
          notfirst = 0;
          shifty += lineHeight * line_spacing;
        } else {
          var prev = notfirst && font.glyphs[letters[i - 1]] || {}, curr = font.glyphs[letters[i]];
          shift += notfirst ? (prev.w || font.w) + (prev.k && prev.k[letters[i]] || 0) + font.w * letter_spacing : 0;
          notfirst = 1;
        }
        if (curr && curr.d) {
          path += R.transformPath(curr.d, ["t", shift * scale, shifty * scale, "s", scale, scale, top, height, "t", (x - top) / scale, (y - height) / scale]);
        }
      }
    }
    return this.path(path).attr({fill:"#000", stroke:"none"});
  };
  paperproto.add = function(json) {
    if (R.is(json, "array")) {
      var res = this.set(), i = 0, ii = json.length, j;
      for (;i < ii;i++) {
        j = json[i] || {};
        elements[has](j.type) && res.push(this[j.type]().attr(j));
      }
    }
    return res;
  };
  R.format = function(token, params) {
    var args = R.is(params, array) ? [0][concat](params) : arguments;
    token && (R.is(token, string) && (args.length - 1 && (token = token.replace(formatrg, function(str, i) {
      return args[++i] == null ? E : args[i];
    }))));
    return token || E;
  };
  R.fullfill = function() {
    var tokenRegex = /\{([^\}]+)\}/g, objNotationRegex = /(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g, replacer = function(all, key, obj) {
      var res = obj;
      key.replace(objNotationRegex, function(all, name, quote, quotedName, isFunc) {
        name = name || quotedName;
        if (res) {
          if (name in res) {
            res = res[name];
          }
          typeof res == "function" && (isFunc && (res = res()));
        }
      });
      res = (res == null || res == obj ? all : res) + "";
      return res;
    };
    return function(str, obj) {
      return String(str).replace(tokenRegex, function(all, key) {
        return replacer(all, key, obj);
      });
    };
  }();
  R.ninja = function() {
    oldRaphael.was ? g.win.Raphael = oldRaphael.is : delete Raphael;
    return R;
  };
  R.st = setproto;
  (function(doc, loaded, f) {
    if (doc.readyState == null && doc.addEventListener) {
      doc.addEventListener(loaded, f = function() {
        doc.removeEventListener(loaded, f, false);
        doc.readyState = "complete";
      }, false);
      doc.readyState = "loading";
    }
    function isLoaded() {
      /in/.test(doc.readyState) ? setTimeout(isLoaded, 9) : R.eve("raphael.DOMload");
    }
    isLoaded();
  })(document, "DOMContentLoaded");
  eve.on("raphael.DOMload", function() {
    loaded = true;
  });
  (function() {
    if (!R.svg) {
      return;
    }
    var has = "hasOwnProperty", Str = String, toFloat = parseFloat, toInt = parseInt, math = Math, mmax = math.max, abs = math.abs, pow = math.pow, separator = /[, ]+/, eve = R.eve, E = "", S = " ";
    var xlink = "http://www.w3.org/1999/xlink", markers = {block:"M5,0 0,2.5 5,5z", classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z", diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z", open:"M6,1 1,3.5 6,6", oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"}, markerCounter = {};
    R.toString = function() {
      return "Your browser supports SVG.\nYou are running Rapha\u00ebl " + this.version;
    };
    var $ = function(el, attr) {
      if (attr) {
        if (typeof el == "string") {
          el = $(el);
        }
        for (var key in attr) {
          if (attr[has](key)) {
            if (key.substring(0, 6) == "xlink:") {
              el.setAttributeNS(xlink, key.substring(6), Str(attr[key]));
            } else {
              el.setAttribute(key, Str(attr[key]));
            }
          }
        }
      } else {
        el = R._g.doc.createElementNS("http://www.w3.org/2000/svg", el);
        el.style && (el.style.webkitTapHighlightColor = "rgba(0,0,0,0)");
      }
      return el;
    }, addGradientFill = function(element, gradient) {
      var type = "linear", id = element.id + gradient, fx = 0.5, fy = 0.5, o = element.node, SVG = element.paper, s = o.style, el = R._g.doc.getElementById(id);
      if (!el) {
        gradient = Str(gradient).replace(R._radial_gradient, function(all, _fx, _fy) {
          type = "radial";
          if (_fx && _fy) {
            fx = toFloat(_fx);
            fy = toFloat(_fy);
            var dir = (fy > 0.5) * 2 - 1;
            pow(fx - 0.5, 2) + pow(fy - 0.5, 2) > 0.25 && ((fy = math.sqrt(0.25 - pow(fx - 0.5, 2)) * dir + 0.5) && (fy != 0.5 && (fy = fy.toFixed(5) - 1E-5 * dir)));
          }
          return E;
        });
        gradient = gradient.split(/\s*\-\s*/);
        if (type == "linear") {
          var angle = gradient.shift();
          angle = -toFloat(angle);
          if (isNaN(angle)) {
            return null;
          }
          var vector = [0, 0, math.cos(R.rad(angle)), math.sin(R.rad(angle))], max = 1 / (mmax(abs(vector[2]), abs(vector[3])) || 1);
          vector[2] *= max;
          vector[3] *= max;
          if (vector[2] < 0) {
            vector[0] = -vector[2];
            vector[2] = 0;
          }
          if (vector[3] < 0) {
            vector[1] = -vector[3];
            vector[3] = 0;
          }
        }
        var dots = R._parseDots(gradient);
        if (!dots) {
          return null;
        }
        id = id.replace(/[\(\)\s,\xb0#]/g, "_");
        if (element.gradient && id != element.gradient.id) {
          SVG.defs.removeChild(element.gradient);
          delete element.gradient;
        }
        if (!element.gradient) {
          el = $(type + "Gradient", {id:id});
          element.gradient = el;
          $(el, type == "radial" ? {fx:fx, fy:fy} : {x1:vector[0], y1:vector[1], x2:vector[2], y2:vector[3], gradientTransform:element.matrix.invert()});
          SVG.defs.appendChild(el);
          for (var i = 0, ii = dots.length;i < ii;i++) {
            el.appendChild($("stop", {offset:dots[i].offset ? dots[i].offset : i ? "100%" : "0%", "stop-color":dots[i].color || "#fff"}));
          }
        }
      }
      $(o, {fill:"url(#" + id + ")", opacity:1, "fill-opacity":1});
      s.fill = E;
      s.opacity = 1;
      s.fillOpacity = 1;
      return 1;
    }, updatePosition = function(o) {
      var bbox = o.getBBox(1);
      $(o.pattern, {patternTransform:o.matrix.invert() + " translate(" + bbox.x + "," + bbox.y + ")"});
    }, addArrow = function(o, value, isEnd) {
      if (o.type == "path") {
        var values = Str(value).toLowerCase().split("-"), p = o.paper, se = isEnd ? "end" : "start", node = o.node, attrs = o.attrs, stroke = attrs["stroke-width"], i = values.length, type = "classic", from, to, dx, refX, attr, w = 3, h = 3, t = 5;
        while (i--) {
          switch(values[i]) {
            case "block":
            ;
            case "classic":
            ;
            case "oval":
            ;
            case "diamond":
            ;
            case "open":
            ;
            case "none":
              type = values[i];
              break;
            case "wide":
              h = 5;
              break;
            case "narrow":
              h = 2;
              break;
            case "long":
              w = 5;
              break;
            case "short":
              w = 2;
              break;
          }
        }
        if (type == "open") {
          w += 2;
          h += 2;
          t += 2;
          dx = 1;
          refX = isEnd ? 4 : 1;
          attr = {fill:"none", stroke:attrs.stroke};
        } else {
          refX = dx = w / 2;
          attr = {fill:attrs.stroke, stroke:"none"};
        }
        if (o._.arrows) {
          if (isEnd) {
            o._.arrows.endPath && markerCounter[o._.arrows.endPath]--;
            o._.arrows.endMarker && markerCounter[o._.arrows.endMarker]--;
          } else {
            o._.arrows.startPath && markerCounter[o._.arrows.startPath]--;
            o._.arrows.startMarker && markerCounter[o._.arrows.startMarker]--;
          }
        } else {
          o._.arrows = {};
        }
        if (type != "none") {
          var pathId = "raphael-marker-" + type, markerId = "raphael-marker-" + se + type + w + h;
          if (!R._g.doc.getElementById(pathId)) {
            p.defs.appendChild($($("path"), {"stroke-linecap":"round", d:markers[type], id:pathId}));
            markerCounter[pathId] = 1;
          } else {
            markerCounter[pathId]++;
          }
          var marker = R._g.doc.getElementById(markerId), use;
          if (!marker) {
            marker = $($("marker"), {id:markerId, markerHeight:h, markerWidth:w, orient:"auto", refX:refX, refY:h / 2});
            use = $($("use"), {"xlink:href":"#" + pathId, transform:(isEnd ? "rotate(180 " + w / 2 + " " + h / 2 + ") " : E) + "scale(" + w / t + "," + h / t + ")", "stroke-width":(1 / ((w / t + h / t) / 2)).toFixed(4)});
            marker.appendChild(use);
            p.defs.appendChild(marker);
            markerCounter[markerId] = 1;
          } else {
            markerCounter[markerId]++;
            use = marker.getElementsByTagName("use")[0];
          }
          $(use, attr);
          var delta = dx * (type != "diamond" && type != "oval");
          if (isEnd) {
            from = o._.arrows.startdx * stroke || 0;
            to = R.getTotalLength(attrs.path) - delta * stroke;
          } else {
            from = delta * stroke;
            to = R.getTotalLength(attrs.path) - (o._.arrows.enddx * stroke || 0);
          }
          attr = {};
          attr["marker-" + se] = "url(#" + markerId + ")";
          if (to || from) {
            attr.d = R.getSubpath(attrs.path, from, to);
          }
          $(node, attr);
          o._.arrows[se + "Path"] = pathId;
          o._.arrows[se + "Marker"] = markerId;
          o._.arrows[se + "dx"] = delta;
          o._.arrows[se + "Type"] = type;
          o._.arrows[se + "String"] = value;
        } else {
          if (isEnd) {
            from = o._.arrows.startdx * stroke || 0;
            to = R.getTotalLength(attrs.path) - from;
          } else {
            from = 0;
            to = R.getTotalLength(attrs.path) - (o._.arrows.enddx * stroke || 0);
          }
          o._.arrows[se + "Path"] && $(node, {d:R.getSubpath(attrs.path, from, to)});
          delete o._.arrows[se + "Path"];
          delete o._.arrows[se + "Marker"];
          delete o._.arrows[se + "dx"];
          delete o._.arrows[se + "Type"];
          delete o._.arrows[se + "String"];
        }
        for (attr in markerCounter) {
          if (markerCounter[has](attr) && !markerCounter[attr]) {
            var item = R._g.doc.getElementById(attr);
            item && item.parentNode.removeChild(item);
          }
        }
      }
    }, dasharray = {"":[0], "none":[0], "-":[3, 1], ".":[1, 1], "-.":[3, 1, 1, 1], "-..":[3, 1, 1, 1, 1, 1], ". ":[1, 3], "- ":[4, 3], "--":[8, 3], "- .":[4, 3, 1, 3], "--.":[8, 3, 1, 3], "--..":[8, 3, 1, 3, 1, 3]}, addDashes = function(o, value, params) {
      value = dasharray[Str(value).toLowerCase()];
      if (value) {
        var width = o.attrs["stroke-width"] || "1", butt = {round:width, square:width, butt:0}[o.attrs["stroke-linecap"] || params["stroke-linecap"]] || 0, dashes = [], i = value.length;
        while (i--) {
          dashes[i] = value[i] * width + (i % 2 ? 1 : -1) * butt;
        }
        $(o.node, {"stroke-dasharray":dashes.join(",")});
      }
    }, setFillAndStroke = function(o, params) {
      var node = o.node, attrs = o.attrs, vis = node.style.visibility;
      node.style.visibility = "hidden";
      for (var att in params) {
        if (params[has](att)) {
          if (!R._availableAttrs[has](att)) {
            continue;
          }
          var value = params[att];
          attrs[att] = value;
          switch(att) {
            case "blur":
              o.blur(value);
              break;
            case "title":
              var title = node.getElementsByTagName("title");
              if (title.length && (title = title[0])) {
                title.firstChild.nodeValue = value;
              } else {
                title = $("title");
                var val = R._g.doc.createTextNode(value);
                title.appendChild(val);
                node.appendChild(title);
              }
              break;
            case "href":
            ;
            case "target":
              var pn = node.parentNode;
              if (pn.tagName.toLowerCase() != "a") {
                var hl = $("a");
                pn.insertBefore(hl, node);
                hl.appendChild(node);
                pn = hl;
              }
              if (att == "target") {
                pn.setAttributeNS(xlink, "show", value == "blank" ? "new" : value);
              } else {
                pn.setAttributeNS(xlink, att, value);
              }
              break;
            case "cursor":
              node.style.cursor = value;
              break;
            case "transform":
              o.transform(value);
              break;
            case "arrow-start":
              addArrow(o, value);
              break;
            case "arrow-end":
              addArrow(o, value, 1);
              break;
            case "clip-rect":
              var rect = Str(value).split(separator);
              if (rect.length == 4) {
                o.clip && o.clip.parentNode.parentNode.removeChild(o.clip.parentNode);
                var el = $("clipPath"), rc = $("rect");
                el.id = R.createUUID();
                $(rc, {x:rect[0], y:rect[1], width:rect[2], height:rect[3]});
                el.appendChild(rc);
                o.paper.defs.appendChild(el);
                $(node, {"clip-path":"url(#" + el.id + ")"});
                o.clip = rc;
              }
              if (!value) {
                var path = node.getAttribute("clip-path");
                if (path) {
                  var clip = R._g.doc.getElementById(path.replace(/(^url\(#|\)$)/g, E));
                  clip && clip.parentNode.removeChild(clip);
                  $(node, {"clip-path":E});
                  delete o.clip;
                }
              }
              break;
            case "path":
              if (o.type == "path") {
                $(node, {d:value ? attrs.path = R._pathToAbsolute(value) : "M0,0"});
                o._.dirty = 1;
                if (o._.arrows) {
                  "startString" in o._.arrows && addArrow(o, o._.arrows.startString);
                  "endString" in o._.arrows && addArrow(o, o._.arrows.endString, 1);
                }
              }
              break;
            case "width":
              node.setAttribute(att, value);
              o._.dirty = 1;
              if (attrs.fx) {
                att = "x";
                value = attrs.x;
              } else {
                break;
              }
            ;
            case "x":
              if (attrs.fx) {
                value = -attrs.x - (attrs.width || 0);
              }
            ;
            case "rx":
              if (att == "rx" && o.type == "rect") {
                break;
              }
            ;
            case "cx":
              node.setAttribute(att, value);
              o.pattern && updatePosition(o);
              o._.dirty = 1;
              break;
            case "height":
              node.setAttribute(att, value);
              o._.dirty = 1;
              if (attrs.fy) {
                att = "y";
                value = attrs.y;
              } else {
                break;
              }
            ;
            case "y":
              if (attrs.fy) {
                value = -attrs.y - (attrs.height || 0);
              }
            ;
            case "ry":
              if (att == "ry" && o.type == "rect") {
                break;
              }
            ;
            case "cy":
              node.setAttribute(att, value);
              o.pattern && updatePosition(o);
              o._.dirty = 1;
              break;
            case "r":
              if (o.type == "rect") {
                $(node, {rx:value, ry:value});
              } else {
                node.setAttribute(att, value);
              }
              o._.dirty = 1;
              break;
            case "src":
              if (o.type == "image") {
                node.setAttributeNS(xlink, "href", value);
              }
              break;
            case "stroke-width":
              if (o._.sx != 1 || o._.sy != 1) {
                value /= mmax(abs(o._.sx), abs(o._.sy)) || 1;
              }
              if (o.paper._vbSize) {
                value *= o.paper._vbSize;
              }
              node.setAttribute(att, value);
              if (attrs["stroke-dasharray"]) {
                addDashes(o, attrs["stroke-dasharray"], params);
              }
              if (o._.arrows) {
                "startString" in o._.arrows && addArrow(o, o._.arrows.startString);
                "endString" in o._.arrows && addArrow(o, o._.arrows.endString, 1);
              }
              break;
            case "stroke-dasharray":
              addDashes(o, value, params);
              break;
            case "fill":
              var isURL = Str(value).match(R._ISURL);
              if (isURL) {
                el = $("pattern");
                var ig = $("image");
                el.id = R.createUUID();
                $(el, {x:0, y:0, patternUnits:"userSpaceOnUse", height:1, width:1});
                $(ig, {x:0, y:0, "xlink:href":isURL[1]});
                el.appendChild(ig);
                (function(el) {
                  R._preload(isURL[1], function() {
                    var w = this.offsetWidth, h = this.offsetHeight;
                    $(el, {width:w, height:h});
                    $(ig, {width:w, height:h});
                    o.paper.safari();
                  });
                })(el);
                o.paper.defs.appendChild(el);
                $(node, {fill:"url(#" + el.id + ")"});
                o.pattern = el;
                o.pattern && updatePosition(o);
                break;
              }
              var clr = R.getRGB(value);
              if (!clr.error) {
                delete params.gradient;
                delete attrs.gradient;
                !R.is(attrs.opacity, "undefined") && (R.is(params.opacity, "undefined") && $(node, {opacity:attrs.opacity}));
                !R.is(attrs["fill-opacity"], "undefined") && (R.is(params["fill-opacity"], "undefined") && $(node, {"fill-opacity":attrs["fill-opacity"]}));
              } else {
                if ((o.type == "circle" || (o.type == "ellipse" || Str(value).charAt() != "r")) && addGradientFill(o, value)) {
                  if ("opacity" in attrs || "fill-opacity" in attrs) {
                    var gradient = R._g.doc.getElementById(node.getAttribute("fill").replace(/^url\(#|\)$/g, E));
                    if (gradient) {
                      var stops = gradient.getElementsByTagName("stop");
                      $(stops[stops.length - 1], {"stop-opacity":("opacity" in attrs ? attrs.opacity : 1) * ("fill-opacity" in attrs ? attrs["fill-opacity"] : 1)});
                    }
                  }
                  attrs.gradient = value;
                  attrs.fill = "none";
                  break;
                }
              }
              clr[has]("opacity") && $(node, {"fill-opacity":clr.opacity > 1 ? clr.opacity / 100 : clr.opacity});
            case "stroke":
              clr = R.getRGB(value);
              node.setAttribute(att, clr.hex);
              att == "stroke" && (clr[has]("opacity") && $(node, {"stroke-opacity":clr.opacity > 1 ? clr.opacity / 100 : clr.opacity}));
              if (att == "stroke" && o._.arrows) {
                "startString" in o._.arrows && addArrow(o, o._.arrows.startString);
                "endString" in o._.arrows && addArrow(o, o._.arrows.endString, 1);
              }
              break;
            case "gradient":
              (o.type == "circle" || (o.type == "ellipse" || Str(value).charAt() != "r")) && addGradientFill(o, value);
              break;
            case "opacity":
              if (attrs.gradient && !attrs[has]("stroke-opacity")) {
                $(node, {"stroke-opacity":value > 1 ? value / 100 : value});
              }
            ;
            case "fill-opacity":
              if (attrs.gradient) {
                gradient = R._g.doc.getElementById(node.getAttribute("fill").replace(/^url\(#|\)$/g, E));
                if (gradient) {
                  stops = gradient.getElementsByTagName("stop");
                  $(stops[stops.length - 1], {"stop-opacity":value});
                }
                break;
              }
            ;
            default:
              att == "font-size" && (value = toInt(value, 10) + "px");
              var cssrule = att.replace(/(\-.)/g, function(w) {
                return w.substring(1).toUpperCase();
              });
              node.style[cssrule] = value;
              o._.dirty = 1;
              node.setAttribute(att, value);
              break;
          }
        }
      }
      tuneText(o, params);
      node.style.visibility = vis;
    }, leading = 1.2, tuneText = function(el, params) {
      if (el.type != "text" || !(params[has]("text") || (params[has]("font") || (params[has]("font-size") || (params[has]("x") || params[has]("y")))))) {
        return;
      }
      var a = el.attrs, node = el.node, fontSize = node.firstChild ? toInt(R._g.doc.defaultView.getComputedStyle(node.firstChild, E).getPropertyValue("font-size"), 10) : 10;
      if (params[has]("text")) {
        a.text = params.text;
        while (node.firstChild) {
          node.removeChild(node.firstChild);
        }
        var texts = Str(params.text).split("\n"), tspans = [], tspan;
        for (var i = 0, ii = texts.length;i < ii;i++) {
          tspan = $("tspan");
          i && $(tspan, {dy:fontSize * leading, x:a.x});
          tspan.appendChild(R._g.doc.createTextNode(texts[i]));
          node.appendChild(tspan);
          tspans[i] = tspan;
        }
      } else {
        tspans = node.getElementsByTagName("tspan");
        for (i = 0, ii = tspans.length;i < ii;i++) {
          if (i) {
            $(tspans[i], {dy:fontSize * leading, x:a.x});
          } else {
            $(tspans[0], {dy:0});
          }
        }
      }
      $(node, {x:a.x, y:a.y});
      el._.dirty = 1;
      var bb = el._getBBox(), dif = a.y - (bb.y + bb.height / 2);
      dif && (R.is(dif, "finite") && $(tspans[0], {dy:dif}));
    }, Element = function(node, svg) {
      var X = 0, Y = 0;
      this[0] = this.node = node;
      node.raphael = true;
      this.id = R._oid++;
      node.raphaelid = this.id;
      this.matrix = R.matrix();
      this.realPath = null;
      this.paper = svg;
      this.attrs = this.attrs || {};
      this._ = {transform:[], sx:1, sy:1, deg:0, dx:0, dy:0, dirty:1};
      !svg.bottom && (svg.bottom = this);
      this.prev = svg.top;
      svg.top && (svg.top.next = this);
      svg.top = this;
      this.next = null;
    }, elproto = R.el;
    Element.prototype = elproto;
    elproto.constructor = Element;
    R._engine.path = function(pathString, SVG) {
      var el = $("path");
      SVG.canvas && SVG.canvas.appendChild(el);
      var p = new Element(el, SVG);
      p.type = "path";
      setFillAndStroke(p, {fill:"none", stroke:"#000", path:pathString});
      return p;
    };
    elproto.rotate = function(deg, cx, cy) {
      if (this.removed) {
        return this;
      }
      deg = Str(deg).split(separator);
      if (deg.length - 1) {
        cx = toFloat(deg[1]);
        cy = toFloat(deg[2]);
      }
      deg = toFloat(deg[0]);
      cy == null && (cx = cy);
      if (cx == null || cy == null) {
        var bbox = this.getBBox(1);
        cx = bbox.x + bbox.width / 2;
        cy = bbox.y + bbox.height / 2;
      }
      this.transform(this._.transform.concat([["r", deg, cx, cy]]));
      return this;
    };
    elproto.scale = function(sx, sy, cx, cy) {
      if (this.removed) {
        return this;
      }
      sx = Str(sx).split(separator);
      if (sx.length - 1) {
        sy = toFloat(sx[1]);
        cx = toFloat(sx[2]);
        cy = toFloat(sx[3]);
      }
      sx = toFloat(sx[0]);
      sy == null && (sy = sx);
      cy == null && (cx = cy);
      if (cx == null || cy == null) {
        var bbox = this.getBBox(1)
      }
      cx = cx == null ? bbox.x + bbox.width / 2 : cx;
      cy = cy == null ? bbox.y + bbox.height / 2 : cy;
      this.transform(this._.transform.concat([["s", sx, sy, cx, cy]]));
      return this;
    };
    elproto.translate = function(dx, dy) {
      if (this.removed) {
        return this;
      }
      dx = Str(dx).split(separator);
      if (dx.length - 1) {
        dy = toFloat(dx[1]);
      }
      dx = toFloat(dx[0]) || 0;
      dy = +dy || 0;
      this.transform(this._.transform.concat([["t", dx, dy]]));
      return this;
    };
    elproto.transform = function(tstr) {
      var _ = this._;
      if (tstr == null) {
        return _.transform;
      }
      R._extractTransform(this, tstr);
      this.clip && $(this.clip, {transform:this.matrix.invert()});
      this.pattern && updatePosition(this);
      this.node && $(this.node, {transform:this.matrix});
      if (_.sx != 1 || _.sy != 1) {
        var sw = this.attrs[has]("stroke-width") ? this.attrs["stroke-width"] : 1;
        this.attr({"stroke-width":sw});
      }
      return this;
    };
    elproto.hide = function() {
      !this.removed && this.paper.safari(this.node.style.display = "none");
      return this;
    };
    elproto.show = function() {
      !this.removed && this.paper.safari(this.node.style.display = "");
      return this;
    };
    elproto.remove = function() {
      if (this.removed || !this.node.parentNode) {
        return;
      }
      var paper = this.paper;
      paper.__set__ && paper.__set__.exclude(this);
      eve.unbind("raphael.*.*." + this.id);
      if (this.gradient) {
        paper.defs.removeChild(this.gradient);
      }
      R._tear(this, paper);
      if (this.node.parentNode.tagName.toLowerCase() == "a") {
        this.node.parentNode.parentNode.removeChild(this.node.parentNode);
      } else {
        this.node.parentNode.removeChild(this.node);
      }
      for (var i in this) {
        this[i] = typeof this[i] == "function" ? R._removedFactory(i) : null;
      }
      this.removed = true;
    };
    elproto._getBBox = function() {
      if (this.node.style.display == "none") {
        this.show();
        var hide = true;
      }
      var bbox = {};
      try {
        bbox = this.node.getBBox();
      } catch (e) {
      } finally {
        bbox = bbox || {};
      }
      hide && this.hide();
      return bbox;
    };
    elproto.attr = function(name, value) {
      if (this.removed) {
        return this;
      }
      if (name == null) {
        var res = {};
        for (var a in this.attrs) {
          if (this.attrs[has](a)) {
            res[a] = this.attrs[a];
          }
        }
        res.gradient && (res.fill == "none" && ((res.fill = res.gradient) && delete res.gradient));
        res.transform = this._.transform;
        return res;
      }
      if (value == null && R.is(name, "string")) {
        if (name == "fill" && (this.attrs.fill == "none" && this.attrs.gradient)) {
          return this.attrs.gradient;
        }
        if (name == "transform") {
          return this._.transform;
        }
        var names = name.split(separator), out = {};
        for (var i = 0, ii = names.length;i < ii;i++) {
          name = names[i];
          if (name in this.attrs) {
            out[name] = this.attrs[name];
          } else {
            if (R.is(this.paper.customAttributes[name], "function")) {
              out[name] = this.paper.customAttributes[name].def;
            } else {
              out[name] = R._availableAttrs[name];
            }
          }
        }
        return ii - 1 ? out : out[names[0]];
      }
      if (value == null && R.is(name, "array")) {
        out = {};
        for (i = 0, ii = name.length;i < ii;i++) {
          out[name[i]] = this.attr(name[i]);
        }
        return out;
      }
      if (value != null) {
        var params = {};
        params[name] = value;
      } else {
        if (name != null && R.is(name, "object")) {
          params = name;
        }
      }
      for (var key in params) {
        eve("raphael.attr." + key + "." + this.id, this, params[key]);
      }
      for (key in this.paper.customAttributes) {
        if (this.paper.customAttributes[has](key) && (params[has](key) && R.is(this.paper.customAttributes[key], "function"))) {
          var par = this.paper.customAttributes[key].apply(this, [].concat(params[key]));
          this.attrs[key] = params[key];
          for (var subkey in par) {
            if (par[has](subkey)) {
              params[subkey] = par[subkey];
            }
          }
        }
      }
      setFillAndStroke(this, params);
      return this;
    };
    elproto.toFront = function() {
      if (this.removed) {
        return this;
      }
      if (this.node.parentNode.tagName.toLowerCase() == "a") {
        this.node.parentNode.parentNode.appendChild(this.node.parentNode);
      } else {
        this.node.parentNode.appendChild(this.node);
      }
      var svg = this.paper;
      svg.top != this && R._tofront(this, svg);
      return this;
    };
    elproto.toBack = function() {
      if (this.removed) {
        return this;
      }
      var parent = this.node.parentNode;
      if (parent.tagName.toLowerCase() == "a") {
        parent.parentNode.insertBefore(this.node.parentNode, this.node.parentNode.parentNode.firstChild);
      } else {
        if (parent.firstChild != this.node) {
          parent.insertBefore(this.node, this.node.parentNode.firstChild);
        }
      }
      R._toback(this, this.paper);
      var svg = this.paper;
      return this;
    };
    elproto.insertAfter = function(element) {
      if (this.removed) {
        return this;
      }
      var node = element.node || element[element.length - 1].node;
      if (node.nextSibling) {
        node.parentNode.insertBefore(this.node, node.nextSibling);
      } else {
        node.parentNode.appendChild(this.node);
      }
      R._insertafter(this, element, this.paper);
      return this;
    };
    elproto.insertBefore = function(element) {
      if (this.removed) {
        return this;
      }
      var node = element.node || element[0].node;
      node.parentNode.insertBefore(this.node, node);
      R._insertbefore(this, element, this.paper);
      return this;
    };
    elproto.blur = function(size) {
      var t = this;
      if (+size !== 0) {
        var fltr = $("filter"), blur = $("feGaussianBlur");
        t.attrs.blur = size;
        fltr.id = R.createUUID();
        $(blur, {stdDeviation:+size || 1.5});
        fltr.appendChild(blur);
        t.paper.defs.appendChild(fltr);
        t._blur = fltr;
        $(t.node, {filter:"url(#" + fltr.id + ")"});
      } else {
        if (t._blur) {
          t._blur.parentNode.removeChild(t._blur);
          delete t._blur;
          delete t.attrs.blur;
        }
        t.node.removeAttribute("filter");
      }
      return t;
    };
    R._engine.circle = function(svg, x, y, r) {
      var el = $("circle");
      svg.canvas && svg.canvas.appendChild(el);
      var res = new Element(el, svg);
      res.attrs = {cx:x, cy:y, r:r, fill:"none", stroke:"#000"};
      res.type = "circle";
      $(el, res.attrs);
      return res;
    };
    R._engine.rect = function(svg, x, y, w, h, r) {
      var el = $("rect");
      svg.canvas && svg.canvas.appendChild(el);
      var res = new Element(el, svg);
      res.attrs = {x:x, y:y, width:w, height:h, r:r || 0, rx:r || 0, ry:r || 0, fill:"none", stroke:"#000"};
      res.type = "rect";
      $(el, res.attrs);
      return res;
    };
    R._engine.ellipse = function(svg, x, y, rx, ry) {
      var el = $("ellipse");
      svg.canvas && svg.canvas.appendChild(el);
      var res = new Element(el, svg);
      res.attrs = {cx:x, cy:y, rx:rx, ry:ry, fill:"none", stroke:"#000"};
      res.type = "ellipse";
      $(el, res.attrs);
      return res;
    };
    R._engine.image = function(svg, src, x, y, w, h) {
      var el = $("image");
      $(el, {x:x, y:y, width:w, height:h, preserveAspectRatio:"none"});
      el.setAttributeNS(xlink, "href", src);
      svg.canvas && svg.canvas.appendChild(el);
      var res = new Element(el, svg);
      res.attrs = {x:x, y:y, width:w, height:h, src:src};
      res.type = "image";
      return res;
    };
    R._engine.text = function(svg, x, y, text) {
      var el = $("text");
      svg.canvas && svg.canvas.appendChild(el);
      var res = new Element(el, svg);
      res.attrs = {x:x, y:y, "text-anchor":"middle", text:text, font:R._availableAttrs.font, stroke:"none", fill:"#000"};
      res.type = "text";
      setFillAndStroke(res, res.attrs);
      return res;
    };
    R._engine.setSize = function(width, height) {
      this.width = width || this.width;
      this.height = height || this.height;
      this.canvas.setAttribute("width", this.width);
      this.canvas.setAttribute("height", this.height);
      if (this._viewBox) {
        this.setViewBox.apply(this, this._viewBox);
      }
      return this;
    };
    R._engine.create = function() {
      var con = R._getContainer.apply(0, arguments), container = con && con.container, x = con.x, y = con.y, width = con.width, height = con.height;
      if (!container) {
        throw new Error("SVG container not found.");
      }
      var cnvs = $("svg"), css = "overflow:hidden;", isFloating;
      x = x || 0;
      y = y || 0;
      width = width || 512;
      height = height || 342;
      $(cnvs, {height:height, version:1.1, width:width, xmlns:"http://www.w3.org/2000/svg"});
      if (container == 1) {
        cnvs.style.cssText = css + "position:absolute;left:" + x + "px;top:" + y + "px";
        R._g.doc.body.appendChild(cnvs);
        isFloating = 1;
      } else {
        cnvs.style.cssText = css + "position:relative";
        if (container.firstChild) {
          container.insertBefore(cnvs, container.firstChild);
        } else {
          container.appendChild(cnvs);
        }
      }
      container = new R._Paper;
      container.width = width;
      container.height = height;
      container.canvas = cnvs;
      container.clear();
      container._left = container._top = 0;
      isFloating && (container.renderfix = function() {
      });
      container.renderfix();
      return container;
    };
    R._engine.setViewBox = function(x, y, w, h, fit) {
      eve("raphael.setViewBox", this, this._viewBox, [x, y, w, h, fit]);
      var size = mmax(w / this.width, h / this.height), top = this.top, aspectRatio = fit ? "meet" : "xMinYMin", vb, sw;
      if (x == null) {
        if (this._vbSize) {
          size = 1;
        }
        delete this._vbSize;
        vb = "0 0 " + this.width + S + this.height;
      } else {
        this._vbSize = size;
        vb = x + S + y + S + w + S + h;
      }
      $(this.canvas, {viewBox:vb, preserveAspectRatio:aspectRatio});
      while (size && top) {
        sw = "stroke-width" in top.attrs ? top.attrs["stroke-width"] : 1;
        top.attr({"stroke-width":sw});
        top._.dirty = 1;
        top._.dirtyT = 1;
        top = top.prev;
      }
      this._viewBox = [x, y, w, h, !!fit];
      return this;
    };
    R.prototype.renderfix = function() {
      var cnvs = this.canvas, s = cnvs.style, pos;
      try {
        pos = cnvs.getScreenCTM() || cnvs.createSVGMatrix();
      } catch (e) {
        pos = cnvs.createSVGMatrix();
      }
      var left = -pos.e % 1, top = -pos.f % 1;
      if (left || top) {
        if (left) {
          this._left = (this._left + left) % 1;
          s.left = this._left + "px";
        }
        if (top) {
          this._top = (this._top + top) % 1;
          s.top = this._top + "px";
        }
      }
    };
    R.prototype.clear = function() {
      R.eve("raphael.clear", this);
      var c = this.canvas;
      while (c.firstChild) {
        c.removeChild(c.firstChild);
      }
      this.bottom = this.top = null;
      (this.desc = $("desc")).appendChild(R._g.doc.createTextNode("Created with Rapha\u00ebl " + R.version));
      c.appendChild(this.desc);
      c.appendChild(this.defs = $("defs"));
    };
    R.prototype.remove = function() {
      eve("raphael.remove", this);
      this.canvas.parentNode && this.canvas.parentNode.removeChild(this.canvas);
      for (var i in this) {
        this[i] = typeof this[i] == "function" ? R._removedFactory(i) : null;
      }
    };
    var setproto = R.st;
    for (var method in elproto) {
      if (elproto[has](method) && !setproto[has](method)) {
        setproto[method] = function(methodname) {
          return function() {
            var arg = arguments;
            return this.forEach(function(el) {
              el[methodname].apply(el, arg);
            });
          };
        }(method);
      }
    }
  })();
  (function() {
    if (!R.vml) {
      return;
    }
    var has = "hasOwnProperty", Str = String, toFloat = parseFloat, math = Math, round = math.round, mmax = math.max, mmin = math.min, abs = math.abs, fillString = "fill", separator = /[, ]+/, eve = R.eve, ms = " progid:DXImageTransform.Microsoft", S = " ", E = "", map = {M:"m", L:"l", C:"c", Z:"x", m:"t", l:"r", c:"v", z:"x"}, bites = /([clmz]),?([^clmz]*)/gi, blurregexp = / progid:\S+Blur\([^\)]+\)/g, val = /-?[^,\s-]+/g, cssDot = "position:absolute;left:0;top:0;width:1px;height:1px", zoom = 21600, 
    pathTypes = {path:1, rect:1, image:1}, ovalTypes = {circle:1, ellipse:1}, path2vml = function(path) {
      var total = /[ahqstv]/ig, command = R._pathToAbsolute;
      Str(path).match(total) && (command = R._path2curve);
      total = /[clmz]/g;
      if (command == R._pathToAbsolute && !Str(path).match(total)) {
        var res = Str(path).replace(bites, function(all, command, args) {
          var vals = [], isMove = command.toLowerCase() == "m", res = map[command];
          args.replace(val, function(value) {
            if (isMove && vals.length == 2) {
              res += vals + map[command == "m" ? "l" : "L"];
              vals = [];
            }
            vals.push(round(value * zoom));
          });
          return res + vals;
        });
        return res;
      }
      var pa = command(path), p, r;
      res = [];
      for (var i = 0, ii = pa.length;i < ii;i++) {
        p = pa[i];
        r = pa[i][0].toLowerCase();
        r == "z" && (r = "x");
        for (var j = 1, jj = p.length;j < jj;j++) {
          r += round(p[j] * zoom) + (j != jj - 1 ? "," : E);
        }
        res.push(r);
      }
      return res.join(S);
    }, compensation = function(deg, dx, dy) {
      var m = R.matrix();
      m.rotate(-deg, 0.5, 0.5);
      return{dx:m.x(dx, dy), dy:m.y(dx, dy)};
    }, setCoords = function(p, sx, sy, dx, dy, deg) {
      var _ = p._, m = p.matrix, fillpos = _.fillpos, o = p.node, s = o.style, y = 1, flip = "", dxdy, kx = zoom / sx, ky = zoom / sy;
      s.visibility = "hidden";
      if (!sx || !sy) {
        return;
      }
      o.coordsize = abs(kx) + S + abs(ky);
      s.rotation = deg * (sx * sy < 0 ? -1 : 1);
      if (deg) {
        var c = compensation(deg, dx, dy);
        dx = c.dx;
        dy = c.dy;
      }
      sx < 0 && (flip += "x");
      sy < 0 && ((flip += " y") && (y = -1));
      s.flip = flip;
      o.coordorigin = dx * -kx + S + dy * -ky;
      if (fillpos || _.fillsize) {
        var fill = o.getElementsByTagName(fillString);
        fill = fill && fill[0];
        o.removeChild(fill);
        if (fillpos) {
          c = compensation(deg, m.x(fillpos[0], fillpos[1]), m.y(fillpos[0], fillpos[1]));
          fill.position = c.dx * y + S + c.dy * y;
        }
        if (_.fillsize) {
          fill.size = _.fillsize[0] * abs(sx) + S + _.fillsize[1] * abs(sy);
        }
        o.appendChild(fill);
      }
      s.visibility = "visible";
    };
    R.toString = function() {
      return "Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\u00ebl " + this.version;
    };
    var addArrow = function(o, value, isEnd) {
      var values = Str(value).toLowerCase().split("-"), se = isEnd ? "end" : "start", i = values.length, type = "classic", w = "medium", h = "medium";
      while (i--) {
        switch(values[i]) {
          case "block":
          ;
          case "classic":
          ;
          case "oval":
          ;
          case "diamond":
          ;
          case "open":
          ;
          case "none":
            type = values[i];
            break;
          case "wide":
          ;
          case "narrow":
            h = values[i];
            break;
          case "long":
          ;
          case "short":
            w = values[i];
            break;
        }
      }
      var stroke = o.node.getElementsByTagName("stroke")[0];
      stroke[se + "arrow"] = type;
      stroke[se + "arrowlength"] = w;
      stroke[se + "arrowwidth"] = h;
    }, setFillAndStroke = function(o, params) {
      o.attrs = o.attrs || {};
      var node = o.node, a = o.attrs, s = node.style, xy, newpath = pathTypes[o.type] && (params.x != a.x || (params.y != a.y || (params.width != a.width || (params.height != a.height || (params.cx != a.cx || (params.cy != a.cy || (params.rx != a.rx || (params.ry != a.ry || params.r != a.r)))))))), isOval = ovalTypes[o.type] && (a.cx != params.cx || (a.cy != params.cy || (a.r != params.r || (a.rx != params.rx || a.ry != params.ry)))), res = o;
      for (var par in params) {
        if (params[has](par)) {
          a[par] = params[par];
        }
      }
      if (newpath) {
        a.path = R._getPath[o.type](o);
        o._.dirty = 1;
      }
      params.href && (node.href = params.href);
      params.title && (node.title = params.title);
      params.target && (node.target = params.target);
      params.cursor && (s.cursor = params.cursor);
      "blur" in params && o.blur(params.blur);
      if (params.path && o.type == "path" || newpath) {
        node.path = path2vml(~Str(a.path).toLowerCase().indexOf("r") ? R._pathToAbsolute(a.path) : a.path);
        if (o.type == "image") {
          o._.fillpos = [a.x, a.y];
          o._.fillsize = [a.width, a.height];
          setCoords(o, 1, 1, 0, 0, 0);
        }
      }
      "transform" in params && o.transform(params.transform);
      if (isOval) {
        var cx = +a.cx, cy = +a.cy, rx = +a.rx || (+a.r || 0), ry = +a.ry || (+a.r || 0);
        node.path = R.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x", round((cx - rx) * zoom), round((cy - ry) * zoom), round((cx + rx) * zoom), round((cy + ry) * zoom), round(cx * zoom));
        o._.dirty = 1;
      }
      if ("clip-rect" in params) {
        var rect = Str(params["clip-rect"]).split(separator);
        if (rect.length == 4) {
          rect[2] = +rect[2] + +rect[0];
          rect[3] = +rect[3] + +rect[1];
          var div = node.clipRect || R._g.doc.createElement("div"), dstyle = div.style;
          dstyle.clip = R.format("rect({1}px {2}px {3}px {0}px)", rect);
          if (!node.clipRect) {
            dstyle.position = "absolute";
            dstyle.top = 0;
            dstyle.left = 0;
            dstyle.width = o.paper.width + "px";
            dstyle.height = o.paper.height + "px";
            node.parentNode.insertBefore(div, node);
            div.appendChild(node);
            node.clipRect = div;
          }
        }
        if (!params["clip-rect"]) {
          node.clipRect && (node.clipRect.style.clip = "auto");
        }
      }
      if (o.textpath) {
        var textpathStyle = o.textpath.style;
        params.font && (textpathStyle.font = params.font);
        params["font-family"] && (textpathStyle.fontFamily = '"' + params["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g, E) + '"');
        params["font-size"] && (textpathStyle.fontSize = params["font-size"]);
        params["font-weight"] && (textpathStyle.fontWeight = params["font-weight"]);
        params["font-style"] && (textpathStyle.fontStyle = params["font-style"]);
      }
      if ("arrow-start" in params) {
        addArrow(res, params["arrow-start"]);
      }
      if ("arrow-end" in params) {
        addArrow(res, params["arrow-end"], 1);
      }
      if (params.opacity != null || (params["stroke-width"] != null || (params.fill != null || (params.src != null || (params.stroke != null || (params["stroke-width"] != null || (params["stroke-opacity"] != null || (params["fill-opacity"] != null || (params["stroke-dasharray"] != null || (params["stroke-miterlimit"] != null || (params["stroke-linejoin"] != null || params["stroke-linecap"] != null))))))))))) {
        var fill = node.getElementsByTagName(fillString), newfill = false;
        fill = fill && fill[0];
        !fill && (newfill = fill = createNode(fillString));
        if (o.type == "image" && params.src) {
          fill.src = params.src;
        }
        params.fill && (fill.on = true);
        if (fill.on == null || (params.fill == "none" || params.fill === null)) {
          fill.on = false;
        }
        if (fill.on && params.fill) {
          var isURL = Str(params.fill).match(R._ISURL);
          if (isURL) {
            fill.parentNode == node && node.removeChild(fill);
            fill.rotate = true;
            fill.src = isURL[1];
            fill.type = "tile";
            var bbox = o.getBBox(1);
            fill.position = bbox.x + S + bbox.y;
            o._.fillpos = [bbox.x, bbox.y];
            R._preload(isURL[1], function() {
              o._.fillsize = [this.offsetWidth, this.offsetHeight];
            });
          } else {
            fill.color = R.getRGB(params.fill).hex;
            fill.src = E;
            fill.type = "solid";
            if (R.getRGB(params.fill).error && ((res.type in {circle:1, ellipse:1} || Str(params.fill).charAt() != "r") && addGradientFill(res, params.fill, fill))) {
              a.fill = "none";
              a.gradient = params.fill;
              fill.rotate = false;
            }
          }
        }
        if ("fill-opacity" in params || "opacity" in params) {
          var opacity = ((+a["fill-opacity"] + 1 || 2) - 1) * ((+a.opacity + 1 || 2) - 1) * ((+R.getRGB(params.fill).o + 1 || 2) - 1);
          opacity = mmin(mmax(opacity, 0), 1);
          fill.opacity = opacity;
          if (fill.src) {
            fill.color = "none";
          }
        }
        node.appendChild(fill);
        var stroke = node.getElementsByTagName("stroke") && node.getElementsByTagName("stroke")[0], newstroke = false;
        !stroke && (newstroke = stroke = createNode("stroke"));
        if (params.stroke && params.stroke != "none" || (params["stroke-width"] || (params["stroke-opacity"] != null || (params["stroke-dasharray"] || (params["stroke-miterlimit"] || (params["stroke-linejoin"] || params["stroke-linecap"])))))) {
          stroke.on = true;
        }
        (params.stroke == "none" || (params.stroke === null || (stroke.on == null || (params.stroke == 0 || params["stroke-width"] == 0)))) && (stroke.on = false);
        var strokeColor = R.getRGB(params.stroke);
        stroke.on && (params.stroke && (stroke.color = strokeColor.hex));
        opacity = ((+a["stroke-opacity"] + 1 || 2) - 1) * ((+a.opacity + 1 || 2) - 1) * ((+strokeColor.o + 1 || 2) - 1);
        var width = (toFloat(params["stroke-width"]) || 1) * 0.75;
        opacity = mmin(mmax(opacity, 0), 1);
        params["stroke-width"] == null && (width = a["stroke-width"]);
        params["stroke-width"] && (stroke.weight = width);
        width && (width < 1 && ((opacity *= width) && (stroke.weight = 1)));
        stroke.opacity = opacity;
        params["stroke-linejoin"] && (stroke.joinstyle = params["stroke-linejoin"] || "miter");
        stroke.miterlimit = params["stroke-miterlimit"] || 8;
        params["stroke-linecap"] && (stroke.endcap = params["stroke-linecap"] == "butt" ? "flat" : params["stroke-linecap"] == "square" ? "square" : "round");
        if ("stroke-dasharray" in params) {
          var dasharray = {"-":"shortdash", ".":"shortdot", "-.":"shortdashdot", "-..":"shortdashdotdot", ". ":"dot", "- ":"dash", "--":"longdash", "- .":"dashdot", "--.":"longdashdot", "--..":"longdashdotdot"};
          stroke.dashstyle = dasharray[has](params["stroke-dasharray"]) ? dasharray[params["stroke-dasharray"]] : E;
        }
        newstroke && node.appendChild(stroke);
      }
      if (res.type == "text") {
        res.paper.canvas.style.display = E;
        var span = res.paper.span, m = 100, fontSize = a.font && a.font.match(/\d+(?:\.\d*)?(?=px)/);
        s = span.style;
        a.font && (s.font = a.font);
        a["font-family"] && (s.fontFamily = a["font-family"]);
        a["font-weight"] && (s.fontWeight = a["font-weight"]);
        a["font-style"] && (s.fontStyle = a["font-style"]);
        fontSize = toFloat(a["font-size"] || fontSize && fontSize[0]) || 10;
        s.fontSize = fontSize * m + "px";
        res.textpath.string && (span.innerHTML = Str(res.textpath.string).replace(/</g, "&#60;").replace(/&/g, "&#38;").replace(/\n/g, "<br>"));
        var brect = span.getBoundingClientRect();
        res.W = a.w = (brect.right - brect.left) / m;
        res.H = a.h = (brect.bottom - brect.top) / m;
        res.X = a.x;
        res.Y = a.y + res.H / 2;
        ("x" in params || "y" in params) && (res.path.v = R.format("m{0},{1}l{2},{1}", round(a.x * zoom), round(a.y * zoom), round(a.x * zoom) + 1));
        var dirtyattrs = ["x", "y", "text", "font", "font-family", "font-weight", "font-style", "font-size"];
        for (var d = 0, dd = dirtyattrs.length;d < dd;d++) {
          if (dirtyattrs[d] in params) {
            res._.dirty = 1;
            break;
          }
        }
        switch(a["text-anchor"]) {
          case "start":
            res.textpath.style["v-text-align"] = "left";
            res.bbx = res.W / 2;
            break;
          case "end":
            res.textpath.style["v-text-align"] = "right";
            res.bbx = -res.W / 2;
            break;
          default:
            res.textpath.style["v-text-align"] = "center";
            res.bbx = 0;
            break;
        }
        res.textpath.style["v-text-kern"] = true;
      }
    }, addGradientFill = function(o, gradient, fill) {
      o.attrs = o.attrs || {};
      var attrs = o.attrs, pow = Math.pow, opacity, oindex, type = "linear", fxfy = ".5 .5";
      o.attrs.gradient = gradient;
      gradient = Str(gradient).replace(R._radial_gradient, function(all, fx, fy) {
        type = "radial";
        if (fx && fy) {
          fx = toFloat(fx);
          fy = toFloat(fy);
          pow(fx - 0.5, 2) + pow(fy - 0.5, 2) > 0.25 && (fy = math.sqrt(0.25 - pow(fx - 0.5, 2)) * ((fy > 0.5) * 2 - 1) + 0.5);
          fxfy = fx + S + fy;
        }
        return E;
      });
      gradient = gradient.split(/\s*\-\s*/);
      if (type == "linear") {
        var angle = gradient.shift();
        angle = -toFloat(angle);
        if (isNaN(angle)) {
          return null;
        }
      }
      var dots = R._parseDots(gradient);
      if (!dots) {
        return null;
      }
      o = o.shape || o.node;
      if (dots.length) {
        o.removeChild(fill);
        fill.on = true;
        fill.method = "none";
        fill.color = dots[0].color;
        fill.color2 = dots[dots.length - 1].color;
        var clrs = [];
        for (var i = 0, ii = dots.length;i < ii;i++) {
          dots[i].offset && clrs.push(dots[i].offset + S + dots[i].color);
        }
        fill.colors = clrs.length ? clrs.join() : "0% " + fill.color;
        if (type == "radial") {
          fill.type = "gradientTitle";
          fill.focus = "100%";
          fill.focussize = "0 0";
          fill.focusposition = fxfy;
          fill.angle = 0;
        } else {
          fill.type = "gradient";
          fill.angle = (270 - angle) % 360;
        }
        o.appendChild(fill);
      }
      return 1;
    }, Element = function(node, vml) {
      this[0] = this.node = node;
      node.raphael = true;
      this.id = R._oid++;
      node.raphaelid = this.id;
      this.X = 0;
      this.Y = 0;
      this.attrs = {};
      this.paper = vml;
      this.matrix = R.matrix();
      this._ = {transform:[], sx:1, sy:1, dx:0, dy:0, deg:0, dirty:1, dirtyT:1};
      !vml.bottom && (vml.bottom = this);
      this.prev = vml.top;
      vml.top && (vml.top.next = this);
      vml.top = this;
      this.next = null;
    };
    var elproto = R.el;
    Element.prototype = elproto;
    elproto.constructor = Element;
    elproto.transform = function(tstr) {
      if (tstr == null) {
        return this._.transform;
      }
      var vbs = this.paper._viewBoxShift, vbt = vbs ? "s" + [vbs.scale, vbs.scale] + "-1-1t" + [vbs.dx, vbs.dy] : E, oldt;
      if (vbs) {
        oldt = tstr = Str(tstr).replace(/\.{3}|\u2026/g, this._.transform || E);
      }
      R._extractTransform(this, vbt + tstr);
      var matrix = this.matrix.clone(), skew = this.skew, o = this.node, split, isGrad = ~Str(this.attrs.fill).indexOf("-"), isPatt = !Str(this.attrs.fill).indexOf("url(");
      matrix.translate(1, 1);
      if (isPatt || (isGrad || this.type == "image")) {
        skew.matrix = "1 0 0 1";
        skew.offset = "0 0";
        split = matrix.split();
        if (isGrad && split.noRotation || !split.isSimple) {
          o.style.filter = matrix.toFilter();
          var bb = this.getBBox(), bbt = this.getBBox(1), dx = bb.x - bbt.x, dy = bb.y - bbt.y;
          o.coordorigin = dx * -zoom + S + dy * -zoom;
          setCoords(this, 1, 1, dx, dy, 0);
        } else {
          o.style.filter = E;
          setCoords(this, split.scalex, split.scaley, split.dx, split.dy, split.rotate);
        }
      } else {
        o.style.filter = E;
        skew.matrix = Str(matrix);
        skew.offset = matrix.offset();
      }
      oldt && (this._.transform = oldt);
      return this;
    };
    elproto.rotate = function(deg, cx, cy) {
      if (this.removed) {
        return this;
      }
      if (deg == null) {
        return;
      }
      deg = Str(deg).split(separator);
      if (deg.length - 1) {
        cx = toFloat(deg[1]);
        cy = toFloat(deg[2]);
      }
      deg = toFloat(deg[0]);
      cy == null && (cx = cy);
      if (cx == null || cy == null) {
        var bbox = this.getBBox(1);
        cx = bbox.x + bbox.width / 2;
        cy = bbox.y + bbox.height / 2;
      }
      this._.dirtyT = 1;
      this.transform(this._.transform.concat([["r", deg, cx, cy]]));
      return this;
    };
    elproto.translate = function(dx, dy) {
      if (this.removed) {
        return this;
      }
      dx = Str(dx).split(separator);
      if (dx.length - 1) {
        dy = toFloat(dx[1]);
      }
      dx = toFloat(dx[0]) || 0;
      dy = +dy || 0;
      if (this._.bbox) {
        this._.bbox.x += dx;
        this._.bbox.y += dy;
      }
      this.transform(this._.transform.concat([["t", dx, dy]]));
      return this;
    };
    elproto.scale = function(sx, sy, cx, cy) {
      if (this.removed) {
        return this;
      }
      sx = Str(sx).split(separator);
      if (sx.length - 1) {
        sy = toFloat(sx[1]);
        cx = toFloat(sx[2]);
        cy = toFloat(sx[3]);
        isNaN(cx) && (cx = null);
        isNaN(cy) && (cy = null);
      }
      sx = toFloat(sx[0]);
      sy == null && (sy = sx);
      cy == null && (cx = cy);
      if (cx == null || cy == null) {
        var bbox = this.getBBox(1)
      }
      cx = cx == null ? bbox.x + bbox.width / 2 : cx;
      cy = cy == null ? bbox.y + bbox.height / 2 : cy;
      this.transform(this._.transform.concat([["s", sx, sy, cx, cy]]));
      this._.dirtyT = 1;
      return this;
    };
    elproto.hide = function() {
      !this.removed && (this.node.style.display = "none");
      return this;
    };
    elproto.show = function() {
      !this.removed && (this.node.style.display = E);
      return this;
    };
    elproto._getBBox = function() {
      if (this.removed) {
        return{};
      }
      return{x:this.X + (this.bbx || 0) - this.W / 2, y:this.Y - this.H, width:this.W, height:this.H};
    };
    elproto.remove = function() {
      if (this.removed || !this.node.parentNode) {
        return;
      }
      this.paper.__set__ && this.paper.__set__.exclude(this);
      R.eve.unbind("raphael.*.*." + this.id);
      R._tear(this, this.paper);
      this.node.parentNode.removeChild(this.node);
      this.shape && this.shape.parentNode.removeChild(this.shape);
      for (var i in this) {
        this[i] = typeof this[i] == "function" ? R._removedFactory(i) : null;
      }
      this.removed = true;
    };
    elproto.attr = function(name, value) {
      if (this.removed) {
        return this;
      }
      if (name == null) {
        var res = {};
        for (var a in this.attrs) {
          if (this.attrs[has](a)) {
            res[a] = this.attrs[a];
          }
        }
        res.gradient && (res.fill == "none" && ((res.fill = res.gradient) && delete res.gradient));
        res.transform = this._.transform;
        return res;
      }
      if (value == null && R.is(name, "string")) {
        if (name == fillString && (this.attrs.fill == "none" && this.attrs.gradient)) {
          return this.attrs.gradient;
        }
        var names = name.split(separator), out = {};
        for (var i = 0, ii = names.length;i < ii;i++) {
          name = names[i];
          if (name in this.attrs) {
            out[name] = this.attrs[name];
          } else {
            if (R.is(this.paper.customAttributes[name], "function")) {
              out[name] = this.paper.customAttributes[name].def;
            } else {
              out[name] = R._availableAttrs[name];
            }
          }
        }
        return ii - 1 ? out : out[names[0]];
      }
      if (this.attrs && (value == null && R.is(name, "array"))) {
        out = {};
        for (i = 0, ii = name.length;i < ii;i++) {
          out[name[i]] = this.attr(name[i]);
        }
        return out;
      }
      var params;
      if (value != null) {
        params = {};
        params[name] = value;
      }
      value == null && (R.is(name, "object") && (params = name));
      for (var key in params) {
        eve("raphael.attr." + key + "." + this.id, this, params[key]);
      }
      if (params) {
        for (key in this.paper.customAttributes) {
          if (this.paper.customAttributes[has](key) && (params[has](key) && R.is(this.paper.customAttributes[key], "function"))) {
            var par = this.paper.customAttributes[key].apply(this, [].concat(params[key]));
            this.attrs[key] = params[key];
            for (var subkey in par) {
              if (par[has](subkey)) {
                params[subkey] = par[subkey];
              }
            }
          }
        }
        if (params.text && this.type == "text") {
          this.textpath.string = params.text;
        }
        setFillAndStroke(this, params);
      }
      return this;
    };
    elproto.toFront = function() {
      !this.removed && this.node.parentNode.appendChild(this.node);
      this.paper && (this.paper.top != this && R._tofront(this, this.paper));
      return this;
    };
    elproto.toBack = function() {
      if (this.removed) {
        return this;
      }
      if (this.node.parentNode.firstChild != this.node) {
        this.node.parentNode.insertBefore(this.node, this.node.parentNode.firstChild);
        R._toback(this, this.paper);
      }
      return this;
    };
    elproto.insertAfter = function(element) {
      if (this.removed) {
        return this;
      }
      if (element.constructor == R.st.constructor) {
        element = element[element.length - 1];
      }
      if (element.node.nextSibling) {
        element.node.parentNode.insertBefore(this.node, element.node.nextSibling);
      } else {
        element.node.parentNode.appendChild(this.node);
      }
      R._insertafter(this, element, this.paper);
      return this;
    };
    elproto.insertBefore = function(element) {
      if (this.removed) {
        return this;
      }
      if (element.constructor == R.st.constructor) {
        element = element[0];
      }
      element.node.parentNode.insertBefore(this.node, element.node);
      R._insertbefore(this, element, this.paper);
      return this;
    };
    elproto.blur = function(size) {
      var s = this.node.runtimeStyle, f = s.filter;
      f = f.replace(blurregexp, E);
      if (+size !== 0) {
        this.attrs.blur = size;
        s.filter = f + S + ms + ".Blur(pixelradius=" + (+size || 1.5) + ")";
        s.margin = R.format("-{0}px 0 0 -{0}px", round(+size || 1.5));
      } else {
        s.filter = f;
        s.margin = 0;
        delete this.attrs.blur;
      }
      return this;
    };
    R._engine.path = function(pathString, vml) {
      var el = createNode("shape");
      el.style.cssText = cssDot;
      el.coordsize = zoom + S + zoom;
      el.coordorigin = vml.coordorigin;
      var p = new Element(el, vml), attr = {fill:"none", stroke:"#000"};
      pathString && (attr.path = pathString);
      p.type = "path";
      p.path = [];
      p.Path = E;
      setFillAndStroke(p, attr);
      vml.canvas.appendChild(el);
      var skew = createNode("skew");
      skew.on = true;
      el.appendChild(skew);
      p.skew = skew;
      p.transform(E);
      return p;
    };
    R._engine.rect = function(vml, x, y, w, h, r) {
      var path = R._rectPath(x, y, w, h, r), res = vml.path(path), a = res.attrs;
      res.X = a.x = x;
      res.Y = a.y = y;
      res.W = a.width = w;
      res.H = a.height = h;
      a.r = r;
      a.path = path;
      res.type = "rect";
      return res;
    };
    R._engine.ellipse = function(vml, x, y, rx, ry) {
      var res = vml.path(), a = res.attrs;
      res.X = x - rx;
      res.Y = y - ry;
      res.W = rx * 2;
      res.H = ry * 2;
      res.type = "ellipse";
      setFillAndStroke(res, {cx:x, cy:y, rx:rx, ry:ry});
      return res;
    };
    R._engine.circle = function(vml, x, y, r) {
      var res = vml.path(), a = res.attrs;
      res.X = x - r;
      res.Y = y - r;
      res.W = res.H = r * 2;
      res.type = "circle";
      setFillAndStroke(res, {cx:x, cy:y, r:r});
      return res;
    };
    R._engine.image = function(vml, src, x, y, w, h) {
      var path = R._rectPath(x, y, w, h), res = vml.path(path).attr({stroke:"none"}), a = res.attrs, node = res.node, fill = node.getElementsByTagName(fillString)[0];
      a.src = src;
      res.X = a.x = x;
      res.Y = a.y = y;
      res.W = a.width = w;
      res.H = a.height = h;
      a.path = path;
      res.type = "image";
      fill.parentNode == node && node.removeChild(fill);
      fill.rotate = true;
      fill.src = src;
      fill.type = "tile";
      res._.fillpos = [x, y];
      res._.fillsize = [w, h];
      node.appendChild(fill);
      setCoords(res, 1, 1, 0, 0, 0);
      return res;
    };
    R._engine.text = function(vml, x, y, text) {
      var el = createNode("shape"), path = createNode("path"), o = createNode("textpath");
      x = x || 0;
      y = y || 0;
      text = text || "";
      path.v = R.format("m{0},{1}l{2},{1}", round(x * zoom), round(y * zoom), round(x * zoom) + 1);
      path.textpathok = true;
      o.string = Str(text);
      o.on = true;
      el.style.cssText = cssDot;
      el.coordsize = zoom + S + zoom;
      el.coordorigin = "0 0";
      var p = new Element(el, vml), attr = {fill:"#000", stroke:"none", font:R._availableAttrs.font, text:text};
      p.shape = el;
      p.path = path;
      p.textpath = o;
      p.type = "text";
      p.attrs.text = Str(text);
      p.attrs.x = x;
      p.attrs.y = y;
      p.attrs.w = 1;
      p.attrs.h = 1;
      setFillAndStroke(p, attr);
      el.appendChild(o);
      el.appendChild(path);
      vml.canvas.appendChild(el);
      var skew = createNode("skew");
      skew.on = true;
      el.appendChild(skew);
      p.skew = skew;
      p.transform(E);
      return p;
    };
    R._engine.setSize = function(width, height) {
      var cs = this.canvas.style;
      this.width = width;
      this.height = height;
      width == +width && (width += "px");
      height == +height && (height += "px");
      cs.width = width;
      cs.height = height;
      cs.clip = "rect(0 " + width + " " + height + " 0)";
      if (this._viewBox) {
        R._engine.setViewBox.apply(this, this._viewBox);
      }
      return this;
    };
    R._engine.setViewBox = function(x, y, w, h, fit) {
      R.eve("raphael.setViewBox", this, this._viewBox, [x, y, w, h, fit]);
      var width = this.width, height = this.height, size = 1 / mmax(w / width, h / height), H, W;
      if (fit) {
        H = height / h;
        W = width / w;
        if (w * H < width) {
          x -= (width - w * H) / 2 / H;
        }
        if (h * W < height) {
          y -= (height - h * W) / 2 / W;
        }
      }
      this._viewBox = [x, y, w, h, !!fit];
      this._viewBoxShift = {dx:-x, dy:-y, scale:size};
      this.forEach(function(el) {
        el.transform("...");
      });
      return this;
    };
    var createNode;
    R._engine.initWin = function(win) {
      var doc = win.document;
      doc.createStyleSheet().addRule(".rvml", "behavior:url(#default#VML)");
      try {
        !doc.namespaces.rvml && doc.namespaces.add("rvml", "urn:schemas-microsoft-com:vml");
        createNode = function(tagName) {
          return doc.createElement("<rvml:" + tagName + ' class="rvml">');
        };
      } catch (e) {
        createNode = function(tagName) {
          return doc.createElement("<" + tagName + ' xmlns="urn:schemas-microsoft.com:vml" class="rvml">');
        };
      }
    };
    R._engine.initWin(R._g.win);
    R._engine.create = function() {
      var con = R._getContainer.apply(0, arguments), container = con.container, height = con.height, s, width = con.width, x = con.x, y = con.y;
      if (!container) {
        throw new Error("VML container not found.");
      }
      var res = new R._Paper, c = res.canvas = R._g.doc.createElement("div"), cs = c.style;
      x = x || 0;
      y = y || 0;
      width = width || 512;
      height = height || 342;
      res.width = width;
      res.height = height;
      width == +width && (width += "px");
      height == +height && (height += "px");
      res.coordsize = zoom * 1E3 + S + zoom * 1E3;
      res.coordorigin = "0 0";
      res.span = R._g.doc.createElement("span");
      res.span.style.cssText = "position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;";
      c.appendChild(res.span);
      cs.cssText = R.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden", width, height);
      if (container == 1) {
        R._g.doc.body.appendChild(c);
        cs.left = x + "px";
        cs.top = y + "px";
        cs.position = "absolute";
      } else {
        if (container.firstChild) {
          container.insertBefore(c, container.firstChild);
        } else {
          container.appendChild(c);
        }
      }
      res.renderfix = function() {
      };
      return res;
    };
    R.prototype.clear = function() {
      R.eve("raphael.clear", this);
      this.canvas.innerHTML = E;
      this.span = R._g.doc.createElement("span");
      this.span.style.cssText = "position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";
      this.canvas.appendChild(this.span);
      this.bottom = this.top = null;
    };
    R.prototype.remove = function() {
      R.eve("raphael.remove", this);
      this.canvas.parentNode.removeChild(this.canvas);
      for (var i in this) {
        this[i] = typeof this[i] == "function" ? R._removedFactory(i) : null;
      }
      return true;
    };
    var setproto = R.st;
    for (var method in elproto) {
      if (elproto[has](method) && !setproto[has](method)) {
        setproto[method] = function(methodname) {
          return function() {
            var arg = arguments;
            return this.forEach(function(el) {
              el[methodname].apply(el, arg);
            });
          };
        }(method);
      }
    }
  })();
  oldRaphael.was ? g.win.Raphael = R : Raphael = R;
  return R;
});
var QBWebCanvasLink = function(param) {
  this.color = null;
  this.thin = null;
  this.bg = null;
  this.line = null;
  this.startType = null;
  this.start = null;
  this.endType = null;
  this.end = null;
  this.object = null;
  this.graphics = null;
  this._init = function(param) {
  };
  this._init(param);
};
function getBBox(obj) {
  var box = {x:0, y:0, width:0, height:0};
  if (!obj.length) {
    return box;
  }
  var o = obj[0];
  function getBoxToParent(element, parentId) {
    box = {x:0, y:0, width:element.clientWidth, height:element.clientHeight};
    while (element) {
      if (element.id == parentId) {
        break;
      }
      box.x += element.offsetLeft - element.scrollLeft + element.clientLeft;
      box.y += element.offsetTop - element.scrollTop + element.clientTop;
      element = element.offsetParent;
    }
    return box;
  }
  if (o.tagName == "TR") {
    box = getBoxToParent(o, "qb-ui-canvas");
  } else {
    if (o.tagName == "TABLE") {
      box = getBoxToParent(o, "qb-ui-canvas");
    } else {
      if (o.tagName == "DIV") {
        box = getBoxToParent(o, "qb-ui-canvas");
      }
    }
  }
  return box;
}
function round1000(x) {
  return Math.round(x * 1E3) / 1E3;
}
function getLineCoord(bb1, bb2) {
  var minLeg = 15;
  var p1 = [{x:bb1.x, y:bb1.y + bb1.height / 2}, {x:bb1.x + bb1.width, y:bb1.y + bb1.height / 2}];
  var p2 = [{x:bb2.x, y:bb2.y + bb2.height / 2}, {x:bb2.x + bb2.width, y:bb2.y + bb2.height / 2}];
  var d = [], dis = [];
  for (var i1 = 0;i1 < p1.length;i1++) {
    for (var i2 = 0;i2 < p2.length;i2++) {
      var dx = Math.abs(p1[i1].x - p2[i2].x);
      var dy = Math.abs(p1[i1].y - p2[i2].y);
      var len = dx * dx + dy * dy;
      dis.push(len);
      d.push({i1:i1, i2:i2});
    }
  }
  var res = {i1:0, i2:0};
  var idx = -1;
  var min = -1;
  for (var i = 0;i < dis.length;i++) {
    if (min == -1 || dis[i] < min) {
      min = dis[i];
      idx = i;
    }
  }
  if (idx > 0) {
    res = d[idx];
  }
  var x1 = p1[res.i1].x, y1 = p1[res.i1].y, x4 = p2[res.i2].x, y4 = p2[res.i2].y, y2 = y1, y3 = y4;
  var dx = Math.max(Math.abs(x1 - x4) / 2, minLeg);
  var x2 = [x1 - dx, x1 + dx][res.i1];
  var x3 = [x4 - dx, x4 + dx][res.i2];
  return{x1:round1000(x1), y1:round1000(y1), x2:round1000(x2), y2:round1000(y2), x3:round1000(x3), y3:round1000(y3), x4:round1000(x4), y4:round1000(y4)};
}
function fixOutsideBounds(box, parentBox) {
  var R = Raphael == null ? defaults : Raphael;
  var first = box;
  if (R.is(box, "function")) {
    return parentBox ? first() : eve.on("raphael.DOMload", first);
  } else {
    if (R.is(first, true)) {
      return R._engine.create[box](R, first.splice(0, 3 + R.is(first[0], null))).add(first);
    } else {
      var args = Array.prototype.slice.call(arguments, 0);
      if (R.is(args[args.length - 1], "function")) {
        var f = args.pop();
        return first ? f.call(R._engine.create[box](R, args)) : eve.on("raphael.DOMload", function() {
          f.call(R._engine.create[box](R, args));
        });
      } else {
        return R._engine.create[box](R, arguments);
      }
    }
  }
}
Raphael.fn.UpdateConnection = function(link) {
  if (!link.Left || !link.Right) {
    return false;
  }
  if (!link.Left.field || !link.Right.field) {
    return false;
  }
  if (!link.Left.field.element || !link.Right.field.element) {
    return false;
  }
  var graph = link.graphics;
  var shortLeg = 8;
  var color = graph.color;
  var fromType = link.Left.Type;
  var toType = link.Right.Type;
  function calculateBox(link) {
    var linkBox = getBBox(link.field.element);
    if (link.table) {
      var tableBox = getBBox(link.table.element);
      linkBox.x = tableBox.x - 1;
      linkBox.width = tableBox.width + 2;
      if (linkBox.y < tableBox.y) {
        linkBox.y = tableBox.y;
      } else {
        if (linkBox.y > tableBox.y + tableBox.height - linkBox.height) {
          linkBox.y = tableBox.y + tableBox.height - linkBox.height;
        }
      }
    }
    return linkBox;
  }
  var leftBox = calculateBox(link.Left);
  var rightBox = calculateBox(link.Right);
  var lineCoord = getLineCoord(leftBox, rightBox);
  var startD = lineCoord.x1 < lineCoord.x2 ? 1 : -1;
  var endD = lineCoord.x4 < lineCoord.x3 ? 1 : -1;
  var path = ["M", lineCoord.x1, lineCoord.y1, "L", lineCoord.x1 + shortLeg * startD, lineCoord.y1, "C", lineCoord.x2, lineCoord.y2, lineCoord.x3, lineCoord.y3, lineCoord.x4 + shortLeg * endD, lineCoord.y4, "L", lineCoord.x4, lineCoord.y4].join(",");
  graph.start = configEnds(graph.start, toType, color, lineCoord.x1, lineCoord.y1, startD);
  graph.end = configEnds(graph.end, fromType, color, lineCoord.x4, lineCoord.y4, endD);
  if (graph.path = path && (graph.line && graph.bg)) {
    graph.bg.attr({path:path});
    graph.line.attr({path:path});
    $(graph.bg.node).addClass("link-context");
  }
  return true;
};
Raphael.fn.UpdateConnection;
Raphael.fn.CreateConnection = function(obj, attr) {
  var link = new QBWebCanvasLink;
  link.color = attr.split("|")[0] || "#000000";
  link.thin = attr.split("|")[1] || 3;
  link.thinBg = 15;
  link.line = this.path("M,0,0").attr({stroke:link.color, fill:"none", "stroke-width":link.thin, "stroke-linecap":"round", "stroke-linejoin":"round"});
  link.bg = this.path("M,0,0").attr({stroke:link.color, fill:"none", "stroke-width":link.thinBg, "stroke-opacity":0.01});
  link.startType = obj.Right.Type;
  link.start = configEnds(null, link.startType, link.color);
  link.endType = obj.Left.Type;
  link.end = configEnds(null, link.endType, link.color);
  link.object = obj;
  return link;
};
function configEnds(obj, type, color, x, y, d) {
  if (!x) {
    x = 0;
  }
  if (!y) {
    y = 0;
  }
  if (!d) {
    d = 1;
  }
  var typeMismatch = false;
  if (obj != null && obj.node) {
    switch(type) {
      case MetaData.JoinType.Inner:
        typeMismatch = obj.node.nodeName != "circle";
        break;
      case MetaData.JoinType.Outer:
        typeMismatch = obj.node.nodeName != "path";
        break;
    }
  }
  if (typeMismatch) {
    if (obj && obj.remove) {
      obj.remove();
    }
    obj = null;
  }
  if (obj == null) {
    switch(type) {
      case MetaData.JoinType.Inner:
        obj = QB.Web.Canvas.r.circle(0, 0, 5);
        obj.attr({fill:color, "stroke-width":0});
        break;
      case MetaData.JoinType.Outer:
        obj = QB.Web.Canvas.r.path("M,0,0");
        obj.attr({fill:color, "stroke-width":0});
        break;
    }
  }
  switch(type) {
    case MetaData.JoinType.Inner:
      obj.attr({cx:x, cy:y});
      break;
    case MetaData.JoinType.Outer:
      var dx = 8;
      var dy = 5;
      var path = ["M", x, y, "L", x, y + 1, x + dx * d, y + dy, x + dx * d, y - dy, x, y - 1, "Z"].join(",");
      obj.attr({path:path});
      break;
  }
  return obj;
}
;
/*
 * Packer
 * Javascript Compressor
 * http://dean.edwards.name/
 * http://www.smallsharptools.com/Projects/Packer/
*/

// ..\..\src\Common\Client\js\release\usr_v2_9_2.js
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('K WQ=1m;K Gp={Gf:1a(){K 6G=1c;if(2A sb!="2r"){6X{6G=1U sb("WR.Gc")}6U(e){6X{6G=1U sb("zx.Gc")}6U(E){6G=1j}}}1i{if(3n.Gd){6X{6G=1U Gd}6U(e){6G=1c}}}1b 6G},zW:1a(zo,1X,4h){K 6G=J.Gf();if(!6G||!zo){1b}K 5b=zo;5b+=5b.4S("?")+1?"&":"?";5b+="WS="+(1U 5A).RF();K vF=1c;if(4h=="rs"){K zv=5b.3C("?");5b=zv[0];vF=zv[1]}6G.72(4h,5b,1m);if(4h=="rs"){6G.zu("G7-1y","qA/x-pP-WM-WN");6G.zu("G7-1e",vF.1e);6G.zu("WO","5U")}6G.WX=1a(){if(6G.n5==4){if(6G.6N==hb){K 1J="";if(6G.G6){1J=6G.G6}if(1X){1X(1J)}}}};6G.WY(vF)},7W:1a(8a,5b,cN){K 5d=\'<b 2x="3F:#WW">x8 9T</b>\\n<br/>\\n\'+"fE: "+8a+"\\n<br>\\n"+"xf: "+5b+"\\n<br>\\n"+"Ga: "+cN+"\\n<br>\\n";K Gm="x8 9T\\n"+"fE: "+8a+"\\n\\n"+"xf: "+5b+"\\n\\n"+"Ga: "+cN+"\\n\\n";if(bO&&bO.eS){5d=5d+"eS: "+bO.eS}K 3B=2E.dC("2H");3B.c4="WU";3B.ot=5d;if(2E&&(2E.3x&&2E.3x.3W)){2E.3x.3W(3B)}1i{fS(Gm)}Gp.Gr({8a:8a,5b:5b,cN:cN,eS:bO.eS});1b 1m},Gr:1a(1z){K 5b="mK/WB.WC?";1o(K i in 1z){if(1z.81(i)){5b+=i+"="+WD(1z[i])+"&"}}J.zW(5b,1c,"rs")}};(1a(){J.WA={6d:"1.4.5",8R:"Wx"};K 7H=J.7H=1a(1h){if(1h==1c){1b"1c"}if(1h.$8A!=1c){1b 1h.$8A()}if(1h.8C){if(1h.Gi==1){1b"1f"}if(1h.Gi==3){1b/\\S/.9t(1h.Jr)?"Wy":"Ja"}}1i{if(2A 1h.1e=="aI"){if(1h.IZ){1b"2v"}if("1h"in 1h){1b"GX"}}}1b 2A 1h};K wd=J.wd=1a(1h,1F){if(1h==1c){1b 1j}K 5f=1h.$5f||1h.5f;44(5f){if(5f===1F){1b 1m}5f=5f.1N}if(!1h.81){1b 1j}1b 1h eM 1F};K 9Q=J.9Q;K i5=1m;1o(K i in{3D:1}){i5=1c}if(i5){i5=["81","Rn","Ro","rB","xX","3D","5f"]}9Q.2V.gn=1a(w0){K 2y=J;1b 1a(a,b){if(a==1c){1b J}if(w0||2A a!="4i"){1o(K k in a){2y.2B(J,k,a[k])}if(i5){1o(K i=i5.1e;i--;){k=i5[i];if(a.81(k)){2y.2B(J,k,a[k])}}}}1i{2y.2B(J,a,b)}1b J}};9Q.2V.Wz=1a(w0){K 2y=J;1b 1a(a){K 2k,1J;if(2A a!="4i"){2k=a}1i{if(2v.1e>1){2k=2v}1i{if(w0){2k=[a]}}}if(2k){1J={};1o(K i=0;i<2k.1e;i++){1J[2k[i]]=2y.2B(J,2k[i])}}1i{1J=2y.2B(J,a)}1b 1J}};9Q.2V.4q=1a(1q,1n){J[1q]=1n}.gn();9Q.2V.7o=1a(1q,1n){J.2V[1q]=1n}.gn();K 3N=3K.2V.3N;9Q.2D=1a(1h){1b 7H(1h)=="1a"?1h:1a(){1b 1h}};3K.2D=1a(1h){if(1h==1c){1b[]}1b 9R.FR(1h)&&2A 1h!="4i"?7H(1h)=="42"?1h:3N.2B(1h):[1h]};6n.2D=1a(1h){K aI=cm(1h);1b FV(aI)?aI:1c};5E.2D=1a(1h){1b 1h+""};9Q.7o({zJ:1a(){J.$6O=1m;1b J},zh:1a(){J.$w4=1m;1b J}});K 9R=J.9R=J.9R=1a(1x,1F){if(1x){K zc=1x.3P();K Gj=1a(1h){1b 7H(1h)==zc};9R["is"+1x]=Gj;if(1F!=1c){1F.2V.$8A=1a(){1b zc}.zJ()}}if(1F==1c){1b 1c}1F.4q(J);1F.$5f=9R;1F.2V.$5f=1F;1b 1F};K 3D=4I.2V.3D;9R.FR=1a(1h){1b 1h!=1c&&(2A 1h.1e=="aI"&&3D.2B(1h)!="[1F 9Q]")};K kC={};K zk=1a(1F){K 1y=7H(1F.2V);1b kC[1y]||(kC[1y]=[])};K 7o=1a(1x,4h){if(4h&&4h.$6O){1b}K kC=zk(J);1o(K i=0;i<kC.1e;i++){K ls=kC[i];if(7H(ls)=="1y"){7o.2B(ls,1x,4h)}1i{ls.2B(J,1x,4h)}}K cB=J.2V[1x];if(cB==1c||!cB.$w4){J.2V[1x]=4h}if(J[1x]==1c&&7H(4h)=="1a"){4q.2B(J,1x,1a(1h){1b 4h.3i(1h,3N.2B(2v,1))})}};K 4q=1a(1x,4h){if(4h&&4h.$6O){1b}K cB=J[1x];if(cB==1c||!cB.$w4){J[1x]=4h}};9R.7o({7o:7o.gn(),4q:4q.gn(),aH:1a(1x,8P){7o.2B(J,1x,J.2V[8P])}.gn(),WI:1a(ls){zk(J).1I(ls);1b J}});1U 9R("9R",9R);K fK=1a(1x,1F,bc){K vk=1F!=4I,2V=1F.2V;if(vk){1F=1U 9R(1x,1F)}1o(K i=0,l=bc.1e;i<l;i++){K 1q=bc[i],zl=1F[1q],kg=2V[1q];if(zl){zl.zh()}if(vk&&kg){1F.7o(1q,kg.zh())}}if(vk){K FN=2V.rB(bc[0]);1F.WE=1a(fn){if(!FN){1o(K i=0,l=bc.1e;i<l;i++){fn.2B(2V,2V[bc[i]],bc[i])}}1o(K 1q in 2V){fn.2B(2V,2V[1q],1q)}}}1b fK};fK("5E",5E,["bi","Kj","3L","4S","FO","3k","Jf","3p","WG","3N","3C","7r","gb","oA","3P","8Z"])("3K",3K,["dM","1I","Xj","cc","g5","5v","Xk","3L","54","3N","4S","FO","4G","9k","nf","bp","Gs","rq","Xl"])("6n",6n,["Ae","4J","xX","Xi"])("9Q",9Q,["3i","2B","2O"])("dQ",dQ,["Xf","9t"])("4I",4I,["7Q","Xg","Xh","88","Xq","Xr","Xs","Xp","Xm","Xn","Xo","Xe","X4"])("5A",5A,["7e"]);4I.4q=4q.gn();5A.4q("7e",1a(){1b+1U 5A});1U 9R("lo",lo);6n.2V.$8A=1a(){1b FV(J)?"aI":"1c"}.zJ();6n.4q("kj",1a(5H,47){1b 3m.ei(3m.kj()*(47-5H+1)+5H)});K 81=4I.2V.81;4I.4q("9k",1a(1F,fn,2O){1o(K 1q in 1F){if(81.2B(1F,1q)){fn.2B(2O,1F[1q],1q,1F)}}});4I.2g=4I.9k;3K.7o({9k:1a(fn,2O){1o(K i=0,l=J.1e;i<l;i++){if(i in J){fn.2B(2O,J[i],i,J)}}},2g:1a(fn,2O){3K.9k(J,fn,2O);1b J}});K zR=1a(1h){3E(7H(1h)){1p"42":1b 1h.65();1p"1F":1b 4I.65(1h);5m:1b 1h}};3K.7o("65",1a(){K i=J.1e,65=1U 3K(i);44(i--){65[i]=zR(J[i])}1b 65});K zK=1a(bD,1q,5I){3E(7H(5I)){1p"1F":if(7H(bD[1q])=="1F"){4I.yC(bD[1q],5I)}1i{bD[1q]=4I.65(5I)}1r;1p"42":bD[1q]=5I.65();1r;5m:bD[1q]=5I}1b bD};4I.4q({yC:1a(bD,k,v){if(7H(k)=="4i"){1b zK(bD,k,v)}1o(K i=1,l=2v.1e;i<l;i++){K 1F=2v[i];1o(K 1q in 1F){zK(bD,1q,1F[1q])}}1b bD},65:1a(1F){K 65={};1o(K 1q in 1F){65[1q]=zR(1F[1q])}1b 65},2X:1a(nU){1o(K i=1,l=2v.1e;i<l;i++){K zS=2v[i]||{};1o(K 1q in zS){nU[1q]=zS[1q]}}1b nU}});["4I","X3","X0","X1","X2"].2g(1a(1x){1U 9R(1x)});K FY=5A.7e();5E.4q("Xb",1a(){1b(FY++).3D(36)})})();3K.7o({nf:1a(fn,2O){1o(K i=0,l=J.1e>>>0;i<l;i++){if(i in J&&!fn.2B(2O,J[i],i,J)){1b 1j}}1b 1m},4G:1a(fn,2O){K fD=[];1o(K 1n,i=0,l=J.1e>>>0;i<l;i++){if(i in J){1n=J[i];if(fn.2B(2O,1n,i,J)){fD.1I(1n)}}}1b fD},4S:1a(1h,2D){K 1e=J.1e>>>0;1o(K i=2D<0?3m.47(0,1e+2D):2D||0;i<1e;i++){if(J[i]===1h){1b i}}1b-1},bp:1a(fn,2O){K 1e=J.1e>>>0,fD=3K(1e);1o(K i=0;i<1e;i++){if(i in J){fD[i]=fn.2B(2O,J[i],i,J)}}1b fD},Gs:1a(fn,2O){1o(K i=0,l=J.1e>>>0;i<l;i++){if(i in J&&fn.2B(2O,J[i],i,J)){1b 1m}}1b 1j},GO:1a(){1b J.4G(1a(1h){1b 1h!=1c})},Xa:1a(GU){K 2k=3K.3N(2v,1);1b J.bp(1a(1h){1b 1h[GU].3i(1h,2k)})},X8:1a(88){K 1w={},1e=3m.5H(J.1e,88.1e);1o(K i=0;i<1e;i++){1w[88[i]]=J[i]}1b 1w},29:1a(1F){K 1J={};1o(K i=0,l=J.1e;i<l;i++){1o(K 1q in 1F){if(1F[1q](J[i])){1J[1q]=J[i];4a 1F[1q];1r}}}1b 1J},iO:1a(1h,2D){1b J.4S(1h,2D)!=-1},2X:1a(42){J.1I.3i(J,42);1b J},X9:1a(){1b J.1e?J[J.1e-1]:1c},Ww:1a(){1b J.1e?J[6n.kj(0,J.1e-1)]:1c},GV:1a(1h){if(!J.iO(1h)){J.1I(1h)}1b J},VT:1a(42){1o(K i=0,l=42.1e;i<l;i++){J.GV(42[i])}1b J},VU:1a(1h){1o(K i=J.1e;i--;){if(J[i]===1h){J.5v(i,1)}}1b J},du:1a(){J.1e=0;1b J},GP:1a(){K 42=[];1o(K i=0,l=J.1e;i<l;i++){K 1y=7H(J[i]);if(1y=="1c"){bI}42=42.3L(1y=="42"||(1y=="GX"||(1y=="2v"||wd(J[i],3K)))?3K.GP(J[i]):J[i])}1b 42},VS:1a(){1o(K i=0,l=J.1e;i<l;i++){if(J[i]!=1c){1b J[i]}}1b 1c},yH:1a(42){if(J.1e!=3){1b 1c}K 3Y=J.bp(1a(1n){if(1n.1e==1){1n+=1n}1b 1n.ae(16)});1b 42?3Y:"3Y("+3Y+")"},yG:1a(42){if(J.1e<3){1b 1c}if(J.1e==4&&(J[3]==0&&!42)){1b"VP"}K 6j=[];1o(K i=0;i<3;i++){K vq=(J[i]-0).3D(16);6j.1I(vq.1e==1?"0"+vq:vq)}1b 42?6j:"#"+6j.54("")}});5E.7o({9t:1a(vo,1z){1b(7H(vo)=="yK"?vo:1U dQ(""+vo,1z)).9t(J)},iO:1a(4i,5B){1b 5B?(5B+J+5B).4S(5B+4i+5B)>-1:5E(J).4S(4i)>-1},oA:1a(){1b 5E(J).3p(/^\\s+|\\s+$/g,"")},GO:1a(){1b 5E(J).3p(/\\s+/g," ").oA()},VR:1a(){1b 5E(J).3p(/-\\D/g,1a(3k){1b 3k.bi(1).8Z()})},W0:1a(){1b 5E(J).3p(/[A-Z]/g,1a(3k){1b"-"+3k.bi(0).3P()})},W1:1a(){1b 5E(J).3p(/\\b[a-z]/g,1a(3k){1b 3k.8Z()})},W2:1a(){1b 5E(J).3p(/([-.*+?^${}()|[\\]\\/\\\\])/g,"\\\\$1")},ae:1a(hz){1b 61(J,hz||10)},3U:1a(){1b cm(J)},yH:1a(42){K 6j=5E(J).3k(/^#?(\\w{1,2})(\\w{1,2})(\\w{1,2})$/);1b 6j?6j.3N(1).yH(42):1c},yG:1a(42){K 3Y=5E(J).3k(/\\d{1,3}/g);1b 3Y?3Y.yG(42):1c},VX:1a(1F,yK){1b 5E(J).3p(yK||/\\\\?\\{([^{}]+)\\}/g,1a(3k,1x){if(3k.bi(0)=="\\\\"){1b 3k.3N(1)}1b 1F[1x]!=1c?1F[1x]:""})}});9Q.4q({GY:1a(){1o(K i=0,l=2v.1e;i<l;i++){6X{1b 2v[i]()}6U(e){}}1b 1c}});9Q.7o({GY:1a(2k,2O){6X{1b J.3i(2O,3K.2D(2k))}6U(e){}1b 1c},2O:1a(2P){K 2y=J,2k=2v.1e>1?3K.3N(2v,1):1c,F=1a(){};K yE=1a(){K 2M=2P,1e=2v.1e;if(J eM yE){F.2V=2y.2V;2M=1U F}K 1J=!2k&&!1e?2y.2B(2M):2y.3i(2M,2k&&1e?2k.3L(3K.3N(2v)):2k||2v);1b 2M==2P?1J:2M};1b yE},yy:1a(2k,2O){K 2y=J;if(2k!=1c){2k=3K.2D(2k)}1b 1a(){1b 2y.3i(2O,2k||2v)}},ha:1a(ha,2O,2k){1b 6A(J.yy(2k==1c?[]:2k,2O),ha)},yw:1a(yw,2O,2k){1b oC(J.yy(2k==1c?[]:2k,2O),yw)}});6n.7o({yb:1a(5H,47){1b 3m.5H(47,3m.47(5H,J))},4U:1a(g8){g8=3m.6g(10,g8||0).4J(g8<0?-g8:0);1b 3m.4U(J*g8)/g8},dE:1a(fn,2O){1o(K i=0;i<J;i++){fn.2B(2O,i,J)}},3U:1a(){1b cm(J)},ae:1a(hz){1b 61(J,hz||10)}});6n.aH("2g","dE");(1a(3M){K bc={};3M.2g(1a(1x){if(!6n[1x]){bc[1x]=1a(){1b 3m[1x].3i(1c,[J].3L(3K.2D(2v)))}}});6n.7o(bc)})(["4l","I4","s0","VO","Ce","ih","9n","VE","ei","l9","47","5H","6g","94","a8","IN"]);(1a(){K 6r=J.6r=1U 9R("6r",1a(1z){if(wd(1z,9Q)){1z={c9:1z}}K i4=1a(){mj(J);if(i4.$yB){1b J}J.$9F=1c;K 1n=J.c9?J.c9.3i(J,2v):J;J.$9F=J.9F=1c;1b 1n}.4q(J).7o(1z);i4.$5f=6r;i4.2V.$5f=i4;i4.2V.1N=1N;1b i4});K 1N=1a(){if(!J.$9F){93 1U 9T(\'rS 4h "1N" H6 be yn.\')}K 1x=J.$9F.$1x,1N=J.$9F.$H7.1N,cB=1N?1N.2V[1x]:1c;if(!cB){93 1U 9T(\'rS 4h "\'+1x+\'" 3A no 1N.\')}1b cB.3i(J,2v)};K mj=1a(1F){1o(K 1q in 1F){K 1n=1F[1q];3E(7H(1n)){1p"1F":K F=1a(){};F.2V=1n;1F[1q]=mj(1U F);1r;1p"42":1F[1q]=1n.65();1r}}1b 1F};K pw=1a(2y,1q,4h){if(4h.$gJ){4h=4h.$gJ}K 6f=1a(){if(4h.$w4&&J.$9F==1c){93 1U 9T(\'rS 4h "\'+1q+\'" H6 be yn.\')}K 9F=J.9F,5I=J.$9F;J.9F=5I;J.$9F=6f;K 1J=4h.3i(J,2v);J.$9F=5I;J.9F=9F;1b 1J}.4q({$H7:2y,$gJ:4h,$1x:1q});1b 6f};K 7o=1a(1q,1n,H0){if(6r.z5.81(1q)){1n=6r.z5[1q].2B(J,1n);if(1n==1c){1b J}}if(7H(1n)=="1a"){if(1n.$6O){1b J}J.2V[1q]=H0?1n:pw(J,1q,1n)}1i{4I.yC(J.2V,1q,1n)}1b J};K Gy=1a(wl){wl.$yB=1m;K kg=1U wl;4a wl.$yB;1b kg};6r.7o("7o",7o.gn());6r.z5={cA:1a(1N){J.1N=1N;J.2V=Gy(1N)},VK:1a(1H){3K.2D(1H).2g(1a(1h){K kJ=1U 1h;1o(K 1q in kJ){7o.2B(J,1q,kJ[1q],1m)}},J)}}})();(1a($){$.dZ.9V="VI"in 2E;if(!$.dZ.9V){1b}K lV=$.ui.r0.2V;K u9=lV.u9;K kT;1a gv(1K,GC){if(1K.dV.j7.1e>1){1b}1K.4o();K t=1K.dV.GB[0];K z6=2E.JM("VJ");z6.JN(GC,1m,1m,3n,1,t.JP,t.Kn,t.cT,t.cJ,1j,1j,1j,1j,0,1c);1K.3g.CZ(z6)}lV.Gx=1a(1K){K me=J;if(kT||!me.Wo(1K.dV.GB[0])){1b}kT=1m;me.zb=1j;gv(1K,"j9");gv(1K,"aa");gv(1K,"7v")};lV.GD=1a(1K){if(!kT){1b}J.zb=1m;gv(1K,"aa")};lV.GJ=1a(1K){if(!kT){1b}gv(1K,"6E");gv(1K,"fo");if(!J.zb){gv(1K,"3y")}kT=1j};lV.u9=1a(){K me=J;me.1f.2O("qd",$.ai(me,"Gx")).2O("qa",$.ai(me,"GD")).2O("qc",$.ai(me,"GJ"));u9.2B(me)}})(2C);K i9=1c;(1a($){$.fn.pH=1a(){$(J).h0(1a(e){K t=e.8j;K o=$(e.8j).2d();if(e.78-o.1W>t.mz){1b}K 1f=$(e.3g);1f.2G({x:e.cT,y:e.cJ})})};K $GE=$.fn.3y;$.fn.3y=1a 3y(5c,7W){if(!7W){1b $GE.3i(J,2v)}1b $(J).2O(1y,7W)};$.fn.h0=1a h0(){K 2k=[].5v.2B(2v,0),7W=2k.dM(),5c=2k.dM(),$J=$(J);1b 7W?$J.3y(5c,7W):$J.1O(1y)};$.h0={5c:9a};$.1K.Wt.h0={Cp:1a(1g,bB){if(!/Wu|Wv|Ws/i.9t(bO.eS)){$(J).2O(GH,yW).2O([Fx,FB,Fq,FJ].54(" "),zT).2O(AQ,3y)}1i{GG(J).2O(FE,yW).2O([FI,Fu,Ft].54(" "),zT).2O(AQ,3y).2F({Wp:"3j"})}},Wq:1a(bB){$(J).8q(9K)}};1a GG(1f){$.2g("qd qa qc D5".3C(/ /),1a 2O(ix,it){1f.c6(it,1a Wr(1K){$(1f).1O(it)},1j)});1b $(1f)}1a yW(1K){if(i9){1b}K 1f=J;K 2k=2v;$(J).1g(tz,1j);i9=6A(GI,$.h0.5c);1a GI(){$(1f).1g(tz,1m);1K.1y=1y;2C.1K.W8.3i(1f,2k)}}1a zT(1K){if(i9){jx(i9);i9=1c}}1a 3y(1K){if($(J).1g(tz)){1b 1K.ed()||1j}}K 1y="h0";K 9K="."+1y;K GH="7v"+9K;K AQ="3y"+9K;K Fx="aa"+9K;K FB="6E"+9K;K Fq="fo"+9K;K FJ="5e"+9K;K FE="qd"+9K;K FI="qc"+9K;K Fu="qa"+9K;K Ft="D5"+9K;K We="5c"+9K;K Wf="9i"+9K;K tz="KG"+9K})(2C);(1a($){$.fn.qT=1a(1v){K iS=$.4q({},$.fn.qT.cr,1v);1b J.2g(1a(){$J=$(J);K o=$.Wa?$.4q({},iS,$J.1g()):iS;K nM=o.2T;$.fn.jr(o,$J,nM)})};K AY=0;K ug=0;K Wb=bO.Wc;K FC=bO.Xt;if(FC.4S("YL 7.0")>0){K um="ut"}$.fn.qT.cr={6u:5,2T:12,4L:5,f3:1m,Ba:"#kO",jz:"#YM",jw:"YJ",Bh:"#kO",jt:"#kO",jv:"#kO",5F:1m,EE:1m,r0:"YG",oB:1a(){1b 1j}};$.fn.jr=1a(o,1w,nM){if(o.4L>o.6u){o.4L=o.6u}$J.du();if(o.EE){K FD="9W-Fz-cW";K FG="9W-cB-cW";K Fv="9W-H9-cW";K Jp="9W-3q-cW"}1i{K FD="9W-Fz";K FG="9W-cB";K Fv="9W-H9";K Jp="9W-3q"}if(o.5F){K Bg=$("<2H>&lt;</2H>").bk({b6:{pr:"ui-3H-Jn-1-w"},28:1j})}$J.3O(\'<2H id="YQ">\'+\'<2H id="YN">\'+\'<2H id="YO">\'+\'<2H id="uV"></2H>\'+\'<2H id="uU"></2H>\'+\'<2H id="qu"></2H>\'+"</2H>"+"</2H>"+"</2H>");K Jo=$("#uV").2o("9W-3f-ue");Jo.2X(Bg);K 8E=$(\'<1B vA="0" vz="0">\').2F("d5","6O");K hh=$("<tr>").2o("9W-YF");K c=(o.4L-1)/2;K 4c=nM-c;K nv;1o(K i=0;i<o.6u;i++){K 2a=i+1;if(2a==nM){K nW=$(\'<td 2u="li">\').3O(\'<2w 2u="9W-5I">\'+2a+"</2w>");nv=nW;hh.2X(nW)}1i{K nW=$(\'<td 2u="li">\').3O("<a>"+2a+"</a>");hh.2X(nW)}}8E.2X(hh);if(o.5F){K Bi=$("<2H>&gt;</2H>").bk({b6:{pr:"ui-3H-Jn-1-e"},28:1j})}K nk=$("#uU").2o("9W-3f-Yv");nk.2X(Bi);$("#qu").2X(8E);K uW=$("#qu");K Bb=1c;1a Jq(){$("#uV").3G();$("#uU").3G()}1a Jj(){$("#uV").4T();$("#uU").4T()}1a B9(){if(uW.1k()==0){1b}wH(Bb);if(8E.1k()<=uW.1k()){Jq()}1i{Jj()}}if(uW.1k()==0){Bb=oC(B9,o7)}1i{B9()}$J.2o("Yu");if(!o.f3){if(o.jw=="3j"){K fR={"3F":o.jz}}1i{K fR={"3F":o.jz,"jN-3F":o.jw}}if(o.jv=="3j"){K fm={"3F":o.jt}}1i{K fm={"3F":o.jt,"jN-3F":o.jv}}}1i{if(o.jw=="3j"){K fR={"3F":o.jz,"f3":"lk oS "+o.Ba}}1i{K fR={"3F":o.jz,"jN-3F":o.jw,"f3":"lk oS "+o.Ba}}if(o.jv=="3j"){K fm={"3F":o.jt,"f3":"lk oS "+o.Bh}}1i{K fm={"3F":o.jt,"jN-3F":o.jv,"f3":"lk oS "+o.Bh}}}$.fn.B2(o,$J,fR,fm,hh,8E,nk);K B8=AY-1;if(um=="ut"){}1i{}if(o.r0=="KV"){Bi.7v(1a(){uX=oC(1a(){K 1W=8E.1N().4P()+5;8E.1N().4P(1W)},20)}).6E(1a(){wH(uX)});Bg.7v(1a(){uX=oC(1a(){K 1W=8E.1N().4P()-5;8E.1N().4P(1W)},20)}).6E(1a(){wH(uX)})}8E.2h(".li").3y(1a(e){nv.3O("<a>"+nv.2h(".9W-5I").3O()+"</a>");K Be=$(J).2h("a").3O();$(J).3O(\'<2w 2u="9W-5I">\'+Be+"</2w>");nv=$(J);$.fn.B2(o,$(J).1N().1N().1N(),fR,fm,hh,8E,nk);K 1W=J.8z/2;K YC=8E.4P()+1W;K 8G=1W-B8/2;if(um=="ut"){8E.4D({4P:1W+8G+52+"px"})}1i{8E.4D({4P:1W+8G+"px"})}o.oB(Be)});K 7u=8E.2h(".li").eq(o.2T-1);7u.1l("id","8G");K 1W=2E.fP("8G").8z/2;7u.ln("id");K 8G=1W-B8/2;if(um=="ut"){8E.4D({4P:1W+8G+52+"px"})}1i{8E.4D({4P:1W+8G+"px"})}};$.fn.B2=1a(o,1w,fR,fm,hh,8E,nk){1w.2h("a").2F(fR);1w.2h("2w.9W-5I").2F(fm);1w.2h("a").6Q(1a(){$(J).2F(fm)},1a(){$(J).2F(fR)});ug=0;1w.2h(".li").2g(1a(i,n){if(i==o.4L-1){AY=J.8z+J.h7}ug+=J.h7});ug+=3}})(2C);(1a($){$.4q({hK:1a(fn,uv,9X,B7){K 9i;1b 1a(){K 2k=2v;9X=9X||J;B7&&(!9i&&fn.3i(9X,2k));jx(9i);9i=6A(1a(){!B7&&fn.3i(9X,2k);9i=1c},uv)}},Eh:1a(fn,uv,9X){K 9i,2k,uD;1b 1a(){2k=2v;uD=1m;9X=9X||J;if(!9i){(1a(){if(uD){fn.3i(9X,2k);uD=1j;9i=6A(2v.IZ,uv)}1i{9i=1c}})()}}}})})(2C);(1a($){K j5={ku:{Ac:1a(i){3E(J.kv(i)){1p"42":;1p"Zf":;1p"aI":1b i.3D();1p"1F":K o=[];1o(x=0;x<i.1e;i++){o.1I(i+": "+J.Ac(i[x]))}1b o.54(", ");1p"4i":1b i;5m:1b i}},kv:1a(i){if(!i||!i.5f){1b 2A i}K 3k=i.5f.3D().3k(/3K|6n|5E|4I|5A/);1b 3k&&3k[0].3P()||2A i},kY:1a(7s,l,s,t){K p=s||" ";K o=7s;if(l-7s.1e>0){o=(1U 3K(3m.ih(l/ p.1e))).54(p).7r(0, t = !t ? l : t == 1 ? 0 : 3m.ih(l /2))+7s+p.7r(0,l-t)}1b o},J2:1a(4r,2k){K 1q=4r.wb();3E(J.kv(2k)){1p"1F":K 88=1q.3C(".");K 1w=2k;1o(K c0=0;c0<88.1e;c0++){1w=1w[88[c0]]}if(2A 1w!="2r"){if(j5.ku.kv(1w)=="42"){1b 4r.je().3k(/\\.\\*/)&&1w[1]||1w}1b 1w}1i{}1r;1p"42":1q=61(1q,10);if(4r.je().3k(/\\.\\*/)&&2A 2k[1q+1]!="2r"){1b 2k[1q+1]}1i{if(2A 2k[1q]!="2r"){1b 2k[1q]}1i{1b 1q}}1r}1b"{"+1q+"}"},J0:1a(dD,2k){K 4r=1U IV(dD,2k);1b j5.ku[4r.je().3N(-1)](J.J2(4r,2k),4r)},d:1a(1Z,4r){K o=61(1Z,10);K p=4r.nL();if(p){1b J.kY(o.3D(),p,4r.nJ(),0)}1i{1b o}},i:1a(1Z,2k){1b J.d(1Z,2k)},o:1a(1Z,4r){K o=1Z.3D(8);if(4r.mh()){o=J.kY(o,o.1e+1,"0",0)}1b J.kY(o,4r.nL(),4r.nJ(),0)},u:1a(1Z,2k){1b 3m.4l(J.d(1Z,2k))},x:1a(1Z,4r){K o=61(1Z,10).3D(16);o=J.kY(o,4r.nL(),4r.nJ(),0);1b 4r.mh()?"Z9"+o:o},X:1a(1Z,4r){1b J.x(1Z,4r).8Z()},e:1a(1Z,4r){1b cm(1Z,10).Ae(4r.v8())},E:1a(1Z,4r){1b J.e(1Z,4r).8Z()},f:1a(1Z,4r){1b J.kY(cm(1Z,10).4J(4r.v8()),4r.nL(),4r.nJ(),0)},F:1a(1Z,2k){1b J.f(1Z,2k)},g:1a(1Z,4r){K o=cm(1Z,10);1b o.3D().1e>6?3m.4U(o.Ae(4r.v8())):o},G:1a(1Z,2k){1b J.g(1Z,2k)},c:1a(1Z,2k){K 3k=1Z.3k(/\\w|\\d/);1b 3k&&3k[0]||""},r:1a(1Z,2k){1b J.Ac(1Z)},s:1a(1Z,2k){1b 1Z.3D&&1Z.3D()||""+1Z}},6M:1a(7s,2k){K 4n=0;K 2T=0;K 3k=1j;K hq=[];K dD="";K 8G=(7s||"").3C("");1o(2T=0;2T<8G.1e;2T++){if(8G[2T]=="{"&&8G[2T+1]!="{"){4n=7s.4S("}",2T);dD=8G.3N(2T+1,4n).54("");hq.1I(j5.ku.J0(dD,2A 2v[1]!="1F"?JG(2v,2):2k||[]))}1i{if(2T>4n||hq.1e<1){hq.1I(8G[2T])}}}1b hq.1e>1?hq.54(""):hq[0]},Zb:1a(7s,2k){1b uB(6M(7s,2k))},lh:1a(s,n){1b(1U 3K(n+1)).54(s)},Zk:1a(s){1b Zl(Zm(s))},Zj:1a(s){1b Zg(Zh(s))},Zi:1a(){K 2q="",Z8=1m;if(2v.1e==2&&$.aM(2v[1])){J[2v[0]]=2v[1].54("");1b 2C}if(2v.1e==2&&$.YY(2v[1])){J[2v[0]]=2v[1];1b 2C}if(2v.1e==1){1b $(J[2v[0]])}if(2v.1e==2&&2v[1]==1j){1b J[2v[0]]}if(2v.1e==2&&$.IS(2v[1])){1b $($.6M(J[2v[0]],2v[1]))}if(2v.1e==3&&$.IS(2v[1])){1b 2v[2]==1m?$.6M(J[2v[0]],2v[1]):$($.6M(J[2v[0]],2v[1]))}}};K IV=1a(4r,2k){J.zY=4r;J.ji=2k;J.YZ=cm("1."+(1U 3K(32)).54("1"),10).3D().1e-3;J.nK=6;J.nH=1a(){1b J.zY};J.wb=1a(){1b J.zY.3C(":")[0]};J.je=1a(){K 3k=J.nH().3C(":");1b 3k&&3k[1]?3k[1]:"s"};J.v8=1a(){K 3k=J.je().3k(/\\.(\\d+|\\*)/g);if(!3k){1b J.nK}1i{3k=3k[0].3N(1);if(3k!="*"){1b 61(3k,10)}1i{if(j5.ku.kv(J.ji)=="42"){1b J.ji[1]&&J.ji[0]||J.nK}1i{if(j5.ku.kv(J.ji)=="1F"){1b J.ji[J.wb()]&&J.ji[J.wb()][0]||J.nK}1i{1b J.nK}}}}};J.nL=1a(){K 3k=1j;if(J.mh()){3k=J.nH().3k(/0?#0?(\\d+)/);if(3k&&3k[1]){1b 61(3k[1],10)}}3k=J.nH().3k(/(0|\\.)(\\d+|\\*)/g);1b 3k&&61(3k[0].3N(1),10)||0};J.nJ=1a(){K o="";if(J.mh()){o=" "}if(J.je().3k(/#0|0#|^0|\\.\\d+/)){o="0"}1b o};J.YW=1a(){K 3k=J.nH().Z5(/^(0|\\#|\\-|\\+|\\s)+/);1b 3k&&3k[0].3C("")||[]};J.mh=1a(){1b!!J.je().3k(/^0?#/)}};K JG=1a(2k,cc){K o=[];1o(l=2k.1e,x=(cc||0)-1;x<l;x++){o.1I(2k[x])}1b o};$.4q(j5)})(2C);(1a($){$.hp=1a(o){if(2A dT=="1F"&&dT.Kd){1b dT.Kd(o)}K 1y=2A o;if(o===1c){1b"1c"}if(1y=="2r"){1b 2r}if(1y=="aI"||1y=="oM"){1b o+""}if(1y=="4i"){1b $.An(o)}if(1y=="1F"){if(2A o.hp=="1a"){1b $.hp(o.hp())}if(o.5f===5A){K mT=o.Z1()+1;if(mT<10){mT="0"+mT}K mQ=o.Z2();if(mQ<10){mQ="0"+mQ}K K7=o.Z3();K mP=o.Yq();if(mP<10){mP="0"+mP}K mY=o.XN();if(mY<10){mY="0"+mY}K n0=o.XO();if(n0<10){n0="0"+n0}K gj=o.XP();if(gj<100){gj="0"+gj}if(gj<10){gj="0"+gj}1b\'"\'+K7+"-"+mT+"-"+mQ+"T"+mP+":"+mY+":"+n0+"."+gj+\'Z"\'}if(o.5f===3K){K 8c=[];1o(K i=0;i<o.1e;i++){8c.1I($.hp(o[i])||"1c")}1b"["+8c.54(",")+"]"}K Ao=[];1o(K k in o){K 1x;K 1y=2A k;if(1y=="aI"){1x=\'"\'+k+\'"\'}1i{if(1y=="4i"){1x=$.An(k)}1i{bI}}if(2A o[k]=="1a"){bI}K 2a=$.hp(o[k]);Ao.1I(1x+":"+2a)}1b"{"+Ao.54(", ")+"}"}};$.XM=1a(4k){if(2A dT=="1F"&&dT.w1){1b dT.w1(4k)}1b uB("("+4k+")")};$.XJ=1a(4k){if(2A dT=="1F"&&dT.w1){1b dT.w1(4k)}K gl=4k;gl=gl.3p(/\\\\["\\\\\\/XK]/g,"@");gl=gl.3p(/"[^"\\\\\\n\\r]*"|1m|1j|1c|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g,"]");gl=gl.3p(/(?:^|:|,)(?:\\s*\\[)+/g,"");if(/^[\\],:{}\\s]*$/.9t(gl)){1b uB("("+4k+")")}1i{93 1U XL("9T XU dT, bD is 5P XV.")}};$.An=1a(4i){if(4i.3k(Am)){1b\'"\'+4i.3p(Am,1a(a){K c=Kq[a];if(2A c==="4i"){1b c}c=a.Kj();1b"\\\\XT"+3m.ei(c/16).3D(16)+(c%16).3D(16)})+\'"\'}1b\'"\'+4i+\'"\'};K Am=/["\\\\\\XR-\\XS\\XI-\\Xy]/g;K Kq={"\\b":"\\\\b","\\t":"\\\\t","\\n":"\\\\n","\\f":"\\\\f","\\r":"\\\\r",\'"\':\'\\\\"\',"\\\\":"\\\\\\\\"}})(2C);(1a($){$.fn.x5=1a(){K 5l=1a(el,v,t,sO){K 2Y=2E.dC("2Y");2Y.1n=v,2Y.28=t;K o=el.1v;K oL=o.1e;if(!el.8p){el.8p={};1o(K i=0;i<oL;i++){el.8p[o[i].1n]=i}}if(2A el.8p[v]=="2r"){el.8p[v]=oL}el.1v[el.8p[v]]=2Y;if(sO){2Y.1V=1m}};K a=2v;if(a.1e==0){1b J}K sO=1m;K m=1j;K 1H,v,t;if(2A a[0]=="1F"){m=1m;1H=a[0]}if(a.1e>=2){if(2A a[1]=="oM"){sO=a[1]}1i{if(2A a[2]=="oM"){sO=a[2]}}if(!m){v=a[0];t=a[1]}}J.2g(1a(){if(J.8C.3P()!="2t"){1b}if(m){1o(K 1h in 1H){5l(J,1h,1H[1h],sO)}}1i{5l(J,v,t,sO)}});1b J};$.fn.XA=1a(5b,1z,2t,fn,2k){if(2A 5b!="4i"){1b J}if(2A 1z!="1F"){1z={}}if(2A 2t!="oM"){2t=1m}J.2g(1a(){K el=J;$.Xx(5b,1z,1a(r){$(el).x5(r,2t);if(2A fn=="1a"){if(2A 2k=="1F"){fn.3i(el,2k)}1i{fn.2B(el)}}})});1b J};$.fn.Kv=1a(){K a=2v;if(a.1e==0){1b J}K ta=2A a[0];K v,1T;if(ta=="4i"||(ta=="1F"||ta=="1a")){v=a[0];if(v.5f==3K){K l=v.1e;1o(K i=0;i<l;i++){J.Kv(v[i],a[1])}1b J}}1i{if(ta=="aI"){1T=a[0]}1i{1b J}}J.2g(1a(){if(J.8C.3P()!="2t"){1b}if(J.8p){J.8p=1c}K 3z=1j;K o=J.1v;if(!!v){K oL=o.1e;1o(K i=oL-1;i>=0;i--){if(v.5f==dQ){if(o[i].1n.3k(v)){3z=1m}}1i{if(o[i].1n==v){3z=1m}}if(3z&&a[1]===1m){3z=o[i].1V}if(3z){o[i]=1c}3z=1j}}1i{if(a[1]===1m){3z=o[1T].1V}1i{3z=1m}if(3z){J.3z(1T)}}});1b J};$.fn.Xv=1a(wM){K Kl=$(J).Ko();K a=2A wM=="2r"?1m:!!wM;J.2g(1a(){if(J.8C.3P()!="2t"){1b}K o=J.1v;K oL=o.1e;K sA=[];1o(K i=0;i<oL;i++){sA[i]={v:o[i].1n,t:o[i].28}}sA.g5(1a(o1,o2){vI=o1.t.3P(),vL=o2.t.3P();if(vI==vL){1b 0}if(a){1b vI<vL?-1:1}1i{1b vI>vL?-1:1}});1o(K i=0;i<oL;i++){o[i].28=sA[i].t;o[i].1n=sA[i].v}}).sn(Kl,1m);1b J};$.fn.sn=1a(1n,9J){K v=1n;K vT=2A 1n;if(vT=="1F"&&v.5f==3K){K $J=J;$.2g(v,1a(){$J.sn(J,9J)})}K c=9J||1j;if(vT!="4i"&&(vT!="1a"&&vT!="1F")){1b J}J.2g(1a(){if(J.8C.3P()!="2t"){1b J}K o=J.1v;K oL=o.1e;1o(K i=0;i<oL;i++){if(v.5f==dQ){if(o[i].1n.3k(v)){o[i].1V=1m}1i{if(c){o[i].1V=1j}}}1i{if(o[i].1n==v){o[i].1V=1m}1i{if(c){o[i].1V=1j}}}}});1b J};$.fn.XH=1a(to,jS){K w=jS||"1V";if($(to).3V()==0){1b J}J.2g(1a(){if(J.8C.3P()!="2t"){1b J}K o=J.1v;K oL=o.1e;1o(K i=0;i<oL;i++){if(w=="6D"||w=="1V"&&o[i].1V){$(to).x5(o[i].1n,o[i].28)}}});1b J};$.fn.XE=1a(1n,fn){K 9c=1j;K v=1n;K vT=2A v;K fT=2A fn;if(vT!="4i"&&(vT!="1a"&&vT!="1F")){1b fT=="1a"?J:9c}J.2g(1a(){if(J.8C.3P()!="2t"){1b J}if(9c&&fT!="1a"){1b 1j}K o=J.1v;K oL=o.1e;1o(K i=0;i<oL;i++){if(v.5f==dQ){if(o[i].1n.3k(v)){9c=1m;if(fT=="1a"){fn.2B(o[i],i)}}}1i{if(o[i].1n==v){9c=1m;if(fT=="1a"){fn.2B(o[i],i)}}}}});1b fT=="1a"?J:9c};$.fn.Ko=1a(){K v=[];J.x0().2g(1a(){v[v.1e]=J.1n});1b v};$.fn.XB=1a(){K t=[];J.x0().2g(1a(){t[t.1e]=J.28});1b t};$.fn.x0=1a(){1b J.2h("2Y:1V")}})(2C);(1a($){$.4q($.fn,{od:1a(c1,c2){K JS=J.4G("."+c1);J.4G("."+c2).3S(c2).2o(c1);JS.3S(c1).2o(c2);1b J},iz:1a(c1,c2){1b J.4G("."+c1).3S(c1).2o(c2).4n()},w2:1a(c4){c4=c4||"6Q";1b J.6Q(1a(){$(J).2o(c4)},1a(){$(J).3S(c4)})},JI:1a(ge,1X){ge?J.4D({1s:"dh"},ge,1X):J.2g(1a(){2C(J)[2C(J).is(":6O")?"4T":"3G"]();if(1X){1X.3i(J,2v)}})},JH:1a(ge,1X){if(ge){J.4D({1s:"3G"},ge,1X)}1i{J.3G();if(1X){J.2g(1X)}}},xb:1a(2Z){if(!2Z.JR){J.4G(":7u-vQ:5P(ul)").2o(59.7u);J.4G((2Z.dS?"":"."+59.x6)+":5P(."+59.72+")").2h(">ul").3G()}1b J.4G(":3A(>ul)")},x7:1a(2Z,lj){if(!2Z.JR){J.4G(":3A(>ul:6O)").2o(59.bm).iz(59.7u,59.iu);J.5P(":3A(>ul:6O)").2o(59.cC).iz(59.7u,59.ir);J.la(\'<2H 2u="\'+59.4z+\'"/>\').2h("2H."+59.4z).2g(1a(){K gA="";$.2g($(J).1N().1l("2u").3C(" "),1a(){gA+=J+"-4z "});$(J).2o(gA)})}J.2h("2H."+59.4z).3y(lj)},jV:1a(2Z){2Z=$.4q({wR:"jV"},2Z);if(2Z.5l){1b J.1O("5l",[2Z.5l])}if(2Z.dh){K 1X=2Z.dh;2Z.dh=1a(){1b 1X.3i($(J).1N()[0],2v)}}1a K0(4f,3f){1a 7W(4G){1b 1a(){lj.3i($("2H."+59.4z,4f).4G(1a(){1b 4G?$(J).1N("."+4G).1e:1m}));1b 1j}}$("a:eq(0)",3f).3y(7W(59.cC));$("a:eq(1)",3f).3y(7W(59.bm));$("a:eq(2)",3f).3y(7W())}1a lj(){$(J).1N().2h(">.4z").od(59.wZ,59.wL).od(59.uy,59.tU).4n().od(59.cC,59.bm).od(59.ir,59.iu).2h(">ul").JI(2Z.ge,2Z.dh);if(2Z.Yh){$(J).1N().BY().2h(">.4z").iz(59.wZ,59.wL).iz(59.uy,59.tU).4n().iz(59.cC,59.bm).iz(59.ir,59.iu).2h(">ul").JH(2Z.ge,2Z.dh)}}1a CR(){1a Yf(4r){1b 4r?1:0}K 1g=[];iE.2g(1a(i,e){1g[i]=$(e).is(":3A(>ul:5y)")?1:0});$.wV(2Z.wR,1g.54(""))}1a K1(){K wU=$.wV(2Z.wR);if(wU){K 1g=wU.3C("");iE.2g(1a(i,e){$(e).2h(">ul")[61(1g[i])?"4T":"3G"]()})}}J.2o("jV");K iE=J.2h("li").xb(2Z);3E(2Z.Yc){1p"wV":K wY=2Z.dh;2Z.dh=1a(){CR();if(wY){wY.3i(J,2v)}};K1();1r;1p"jc":K 5I=J.2h("a").4G(1a(){1b J.5h.3P()==jc.5h.3P()});if(5I.1e){5I.2o("1V").aN("ul, li").5l(5I.3q()).4T()}1r}iE.x7(2Z,lj);if(2Z.3f){K0(J,2Z.3f);$(2Z.3f).4T()}1b J.2O("5l",1a(1K,iE){$(iE).3I().3S(59.7u).3S(59.ir).3S(59.iu).2h(">.4z").3S(59.uy).3S(59.tU);$(iE).2h("li").Ye().xb(2Z).x7(2Z,lj)})}});K 59=$.fn.jV.gA={72:"72",x6:"x6",bm:"bm",wL:"bm-4z",tU:"iu-4z",cC:"cC",wZ:"cC-4z",uy:"ir-4z",ir:"ir",iu:"iu",7u:"7u",4z:"4z"};$.fn.Ym=$.fn.jV})(2C);(1a($,2r){$.dZ.IH="Yj"in 3n;$.dZ.IE="Yk"in 3n;$.dZ.HZ="Yl"in 2E.8s;if(!$.ui||!$.ui.8o){K HC=$.HJ;$.HJ=1a(xY){1o(K i=0,4g;(4g=xY[i])!=1c;i++){6X{$(4g).Yb("3z")}6U(e){}}HC(xY)}}K $86=1c,mt=1j,$5q=$(3n),bX=0,bB={},9O={},jP={},cr={43:1c,4y:1c,1O:"7O",Hy:1j,ha:hb,kM:1j,HB:1a($1S){if($.ui&&$.ui.2N){$1S.2F("4L","6F").2N({my:"1W 1C",at:"1W 4v",of:J,2d:"0 5",j1:"bK"}).2F("4L","3j")}1i{K 2d=J.2d();2d.1C+=J.6B();2d.1W+=J.8h()/ 2 - $1S.8h() /2;$1S.2F(2d)}},2N:1a(1D,x,y){K $J=J,2d;if(!x&&!y){1D.HB.2B(J,1D.$1S);1b}1i{if(x==="HM"&&y==="HM"){2d=1D.$1S.2N()}1i{2d={1C:y,1W:x}}}K 4v=$5q.4t()+$5q.1s(),7O=$5q.4P()+$5q.1k(),1s=1D.$1S.1s(),1k=1D.$1S.1k();if(2d.1C+1s>4v){2d.1C-=1s}if(2d.1C<0){2d.1C=0}if(2d.1W+1k>7O){2d.1W-=1k}1D.$1S.2F(2d)},Hu:1a($1S){if($.ui&&$.ui.2N){$1S.2F("4L","6F").2N({my:"1W 1C",at:"7O 1C",of:J,j1:"Y2 bK"}).2F("4L","")}1i{K 2d={1C:0,1W:J.8h()};$1S.2F(2d)}},4x:Y3,6H:{5c:0,4T:"Y0",3G:"XX"},4N:{4T:$.w8,3G:$.w8},1X:1c,1H:{}},aV={9i:1c,78:1c,7J:1c},Ht=1a($t){1b XY;K uF=0,$tt=$t;44(1m){uF=3m.47(uF,61($tt.2F("z-1T"),10)||0);$tt=$tt.1N();if(!$tt||(!$tt.1e||"3O 3x".4S($tt.6h("8C").3P())>-1)){1r}}1b uF},4X={qp:1a(e){e.4o();e.ed()},5e:1a(e){K $J=$(J);if(e.1g.1O=="7O"){e.4o();e.ed()}if(e.1g.1O!="7O"&&e.dV){1b}if($J.4H("2M-1S-9s")){1b}if(!$J.4H("2M-1S-2K")){$86=$J;if(e.1g.8R){K l6=e.1g.8R($86,e);if(l6===1j){1b}if(l6.1X!==2r&&l6.1X!=1c){e.1g.1X=l6.1X}e.1g=$.4q(1m,{},l6,cr,e.1g||{});if(!e.1g.1H||$.IB(e.1g.1H)){if(3n.ch){(ch.5d||ch.l9).2B(ch,"No 1H wa to 4T in 2G")}93 1U 9T("No 2W wa")}e.1g.$1O=$86;op.7Q(e.1g)}op.4T.2B($J,e.1g,e.78,e.7J)}},3y:1a(e){e.4o();e.ed();$(J).1O($.wc("5e",{1g:e.1g,78:e.78,7J:e.7J}))},7v:1a(e){K $J=$(J);if($86&&($86.1e&&!$86.is($J))){$86.1g("2G").$1S.1O("5e:3G")}if(e.3h==2){$86=$J.1g("y7",1m)}},6E:1a(e){K $J=$(J);if($J.1g("y7")&&($86&&($86.1e&&($86.is($J)&&!$J.4H("2M-1S-2K"))))){e.4o();e.ed();$86=$J;$J.1O($.wc("5e",{1g:e.1g,78:e.78,7J:e.7J}))}$J.q3("y7")},lX:1a(e){K $J=$(J),$lu=$(e.qE),$2E=$(2E);if($lu.is(".2M-1S-4Y")||$lu.hG(".2M-1S-4Y").1e){1b}if($86&&$86.1e){1b}aV.78=e.78;aV.7J=e.7J;aV.1g=e.1g;$2E.on("aa.He",4X.aa);aV.9i=6A(1a(){aV.9i=1c;$2E.dU("aa.He");$86=$J;$J.1O($.wc("5e",{1g:aV.1g,78:aV.78,7J:aV.7J}))},e.1g.ha)},aa:1a(e){aV.78=e.78;aV.7J=e.7J},qr:1a(e){K $lu=$(e.qE);if($lu.is(".2M-1S-4Y")||$lu.hG(".2M-1S-4Y").1e){1b}6X{jx(aV.9i)}6U(e){}aV.9i=1c},Iy:1a(e){K $J=$(J),2s=$J.1g("9M"),3h=e.3h,x=e.78,y=e.7J,3g,2d;e.4o();e.ed();6A(1a(){K $3n;K ym=2s.1O=="1W"&&3h===0||2s.1O=="7O"&&3h===2;if(2E.oI&&2s.$6v){2s.$6v.3G();3g=2E.oI(x-$5q.4P(),y-$5q.4t());2s.$6v.4T()}if(2s.kM&&ym){if(2E.oI){if(2s.$1O.is(3g)||2s.$1O.3A(3g).1e){2s.2N.2B(2s.$1O,2s,x,y);1b}}1i{2d=2s.$1O.2d();$3n=$(3n);2d.1C+=$3n.4t();if(2d.1C<=e.7J){2d.1W+=$3n.4P();if(2d.1W<=e.78){2d.4v=2d.1C+2s.$1O.6B();if(2d.4v>=e.7J){2d.7O=2d.1W+2s.$1O.8h();if(2d.7O>=e.78){2s.2N.2B(2s.$1O,2s,x,y);1b}}}}}}if(3g&&ym){2s.$1O.BZ("5e:6O",1a(){$(3g).2G({x:x,y:y})})}2s.$1S.1O("5e:3G")},50)},hd:1a(e,1D){if(!1D.e1){e.4o()}e.76()},1q:1a(e){K 1D={};if($86){1D=$86.1g("2G")||{}}3E(e.41){1p 9:;1p 38:4X.hd(e,1D);if(1D.e1){if(e.41==9&&e.ov){e.4o();1D.$1V&&1D.$1V.2h("1Z, 7P, 2t").57();1D.$1S.1O("xO");1b}1i{if(e.41==38&&1D.$1V.2h("1Z, 7P, 2t").6h("1y")=="8r"){e.4o();1b}}}1i{if(e.41!=9||e.ov){1D.$1S.1O("xO");1b}};1p 40:4X.hd(e,1D);if(1D.e1){if(e.41==9){e.4o();1D.$1V&&1D.$1V.2h("1Z, 7P, 2t").57();1D.$1S.1O("wj");1b}1i{if(e.41==40&&1D.$1V.2h("1Z, 7P, 2t").6h("1y")=="8r"){e.4o();1b}}}1i{1D.$1S.1O("wj");1b}1r;1p 37:4X.hd(e,1D);if(1D.e1||(!1D.$1V||!1D.$1V.1e)){1r}if(!1D.$1V.1N().4H("2M-1S-2s")){K $1N=1D.$1V.1N().1N();1D.$1V.1O("5e:57");1D.$1V=$1N;1b}1r;1p 39:4X.hd(e,1D);if(1D.e1||(!1D.$1V||!1D.$1V.1e)){1r}K tw=1D.$1V.1g("2G")||{};if(tw.$1S&&1D.$1V.4H("2M-1S-ye")){1D.$1V=1c;tw.$1V=1c;tw.$1S.1O("wj");1b}1r;1p 35:;1p 36:if(1D.$1V&&1D.$1V.2h("1Z, 7P, 2t").1e){1b}1i{(1D.$1V&&1D.$1V.1N()||1D.$1S).68(":5P(.2K, .5P-iL)")[e.41==36?"4c":"7u"]().1O("5e:3a");e.4o();1b}1r;1p 13:4X.hd(e,1D);if(1D.e1){if(1D.$1V&&!1D.$1V.is("7P, 2t")){e.4o();1b}1r}1D.$1V&&1D.$1V.1O("6E");1b;1p 32:;1p 33:;1p 34:4X.hd(e,1D);1b;1p 27:4X.hd(e,1D);1D.$1S.1O("5e:3G");1b;5m:K k=5E.El(e.41).8Z();if(1D.gV&&1D.gV[k]){1D.gV[k].$1u.1O(1D.gV[k].$1S?"5e:3a":"6E");1b}1r}e.76();1D.$1V&&1D.$1V.1O(e)},j0:1a(e){e.76();K 1D=$(J).1g("2G")||{};if(1D.$1V){K $s=1D.$1V;1D=1D.$1V.1N().1g("2G")||{};1D.$1V=$s}K $68=1D.$1S.68(),$3I=!1D.$1V||!1D.$1V.3I().1e?$68.7u():1D.$1V.3I(),$4U=$3I;44($3I.4H("2K")||$3I.4H("5P-iL")){if($3I.3I().1e){$3I=$3I.3I()}1i{$3I=$68.7u()}if($3I.is($4U)){1b}}if(1D.$1V){4X.w6.2B(1D.$1V.4b(0),e)}4X.wo.2B($3I.4b(0),e);K $1Z=$3I.2h("1Z, 7P, 2t");if($1Z.1e){$1Z.3a()}},j2:1a(e){e.76();K 1D=$(J).1g("2G")||{};if(1D.$1V){K $s=1D.$1V;1D=1D.$1V.1N().1g("2G")||{};1D.$1V=$s}K $68=1D.$1S.68(),$3q=!1D.$1V||!1D.$1V.3q().1e?$68.4c():1D.$1V.3q(),$4U=$3q;44($3q.4H("2K")||$3q.4H("5P-iL")){if($3q.3q().1e){$3q=$3q.3q()}1i{$3q=$68.4c()}if($3q.is($4U)){1b}}if(1D.$1V){4X.w6.2B(1D.$1V.4b(0),e)}4X.wo.2B($3q.4b(0),e);K $1Z=$3q.2h("1Z, 7P, 2t");if($1Z.1e){$1Z.3a()}},Hn:1a(e){K $J=$(J).hG(".2M-1S-1h"),1g=$J.1g(),1D=1g.2G,2s=1g.9M;2s.$1V=1D.$1V=$J;2s.e1=1D.e1=1m},Hs:1a(e){K $J=$(J).hG(".2M-1S-1h"),1g=$J.1g(),1D=1g.2G,2s=1g.9M;2s.e1=1D.e1=1j},Iu:1a(e){K 2s=$(J).1g().9M;2s.tK=1m},ID:1a(e){K 2s=$(J).1g().9M;if(2s.$6v&&2s.$6v.is(e.qE)){2s.tK=1j}},wo:1a(e){K $J=$(J),1g=$J.1g(),1D=1g.2G,2s=1g.9M;2s.tK=1m;if(e&&(2s.$6v&&2s.$6v.is(e.qE))){e.4o();e.ed()}(1D.$1S?1D:2s).$1S.68(".6Q").1O("5e:57");if($J.4H("2K")||$J.4H("5P-iL")){1D.$1V=1c;1b}$J.1O("5e:3a")},w6:1a(e){K $J=$(J),1g=$J.1g(),1D=1g.2G,2s=1g.9M;if(2s!==1D&&(2s.$6v&&2s.$6v.is(e.qE))){2s.$1V&&2s.$1V.1O("5e:57");e.4o();e.ed();2s.$1V=1D.$1V=1D.$1u;1b}$J.1O("5e:57")},IL:1a(e){K $J=$(J),1g=$J.1g(),1D=1g.2G,2s=1g.9M,1q=1g.yj,1X;if(!1D.1H[1q]||$J.is(".2K, .2M-1S-ye, .2M-1S-5B, .5P-iL")){1b}e.4o();e.ed();if($.b7(2s.lr[1q])&&4I.2V.81.2B(2s.lr,1q)){1X=2s.lr[1q]}1i{if($.b7(2s.1X)){1X=2s.1X}1i{1b}}if(1X.2B(2s.$1O,1q,2s,1g)!==1j){2s.$1S.1O("5e:3G")}1i{if(2s.$1S.1N().1e){op.7X.2B(2s.$1O,2s)}}},IM:1a(e){e.ed()},It:1a(e,1g){K 2s=$(J).1g("9M");op.3G.2B(2s.$1O,2s,1g&&1g.fK)},IK:1a(e){e.76();K $J=$(J),1g=$J.1g(),1D=1g.2G,2s=1g.9M;$J.2o("6Q").BY(".6Q").1O("5e:57");1D.$1V=2s.$1V=$J;if(1D.$1u){2s.Hu.2B(1D.$1u,1D.$1S)}},IO:1a(e){e.76();K $J=$(J),1g=$J.1g(),1D=1g.2G;$J.3S("6Q");1D.$1V=1c}},op={4T:1a(1D,x,y){if(2A tP!="2r"&&tP){1b}tP=1m;K $1O=$(J),2F={};$("#2M-1S-6v").1O("7v");1D.$1O=$1O;1D.x=x;1D.y=y;if(1D.4N.4T.2B($1O,1D)===1j){$86=1c;1b}op.7X.2B($1O,1D);1D.2N.2B($1O,1D,x,y);if(1D.4x){2F.4x=Ht($1O)+1D.4x}op.6v.2B(1D.$1S,1D,2F.4x);1D.$1S.2h("ul").2F("4x",2F.4x+1);1D.$1S.2F(2F)[1D.6H.4T](1D.6H.5c,1a(){$1O.1O("5e:5y")});$1O.1g("2G",1D).2o("2M-1S-9s");$(2E).dU("8f.2G").on("8f.2G",4X.1q);if(1D.Hy){$(2E).on("aa.xq",1a(e){K 3r=$1O.2d();3r.7O=3r.1W+$1O.8h();3r.4v=3r.1C+$1O.6B();if(1D.$6v&&(!1D.tK&&(!(e.78>=3r.1W&&e.78<=3r.7O)||!(e.7J>=3r.1C&&e.7J<=3r.4v)))){1D.$1S.1O("5e:3G")}})}},3G:1a(1D,fK){K $1O=$(J);if(!1D){1D=$1O.1g("2G")||{}}if(!fK&&(1D.4N&&1D.4N.3G.2B($1O,1D)===1j)){1b}$1O.q3("2G").3S("2M-1S-9s");if(1D.$6v){6A(1a($6v){1b 1a(){$6v.3z()}}(1D.$6v),10);6X{4a 1D.$6v}6U(e){1D.$6v=1c}}$86=1c;1D.$1S.2h(".6Q").1O("5e:57");1D.$1V=1c;$(2E).dU(".xq").dU("8f.2G");1D.$1S&&1D.$1S[1D.6H.3G](1D.6H.5c,1a(){if(1D.8R){1D.$1S.3z();$.2g(1D,1a(1q,1n){3E(1q){1p"ns":;1p"43":;1p"8R":;1p"1O":1b 1m;5m:1D[1q]=2r;6X{4a 1D[1q]}6U(e){}1b 1m}})}6A(1a(){$1O.1O("5e:6O")},10)});tP=1j},7Q:1a(1D,2s){if(2s===2r){2s=1D}1D.$1S=$(\'<ul 2u="2M-1S-4Y"></ul>\').2o(1D.c4||"").1g({"2G":1D,"9M":2s});$.2g(["lr","tV","ww"],1a(i,k){1D[k]={};if(!2s[k]){2s[k]={}}});2s.gV||(2s.gV={});$.2g(1D.1H,1a(1q,1h){K $t=$(\'<li 2u="2M-1S-1h"></li>\').2o(1h.c4||""),$3v=1c,$1Z=1c;$t.on("3y",$.w8);1h.$1u=$t.1g({"2G":1D,"9M":2s,"yj":1q});if(1h.yd){K Hp=Ix(1h.yd);1o(K i=0,ak;ak=Hp[i];i++){if(!2s.gV[ak]){2s.gV[ak]=1h;1h.tT=1h.1x.3p(1U dQ("("+ak+")","i"),\'<2w 2u="2M-1S-yd">$1</2w>\');1r}}}if(2A 1h=="4i"){$t.2o("2M-1S-5B 5P-iL")}1i{if(1h.1y&&jP[1h.1y]){jP[1h.1y].2B($t,1h,1D,2s);$.2g([1D,2s],1a(i,k){k.tV[1q]=1h;if($.b7(1h.1X)){k.lr[1q]=1h.1X}})}1i{if(1h.1y=="3O"){$t.2o("2M-1S-3O 5P-iL")}1i{if(1h.1y){$3v=$("<3v></3v>").4y($t);$("<2w></2w>").3O(1h.tT||1h.1x).4y($3v);$t.2o("2M-1S-1Z");1D.Hr=1m;$.2g([1D,2s],1a(i,k){k.tV[1q]=1h;k.ww[1q]=1h})}1i{if(1h.1H){1h.1y="hW"}}}3E(1h.1y){1p"28":$1Z=$(\'<1Z 1y="28" 1n="1" 1x="" 1n="">\').1l("1x","2M-1S-1Z-"+1q).2a(1h.1n||"").4y($3v);1r;1p"7P":$1Z=$(\'<7P 1x=""></7P>\').1l("1x","2M-1S-1Z-"+1q).2a(1h.1n||"").4y($3v);if(1h.1s){$1Z.1s(1h.1s)}1r;1p"8r":$1Z=$(\'<1Z 1y="8r" 1n="1" 1x="" 1n="">\').1l("1x","2M-1S-1Z-"+1q).2a(1h.1n||"").6h("3Q",!!1h.1V).Ci($3v);1r;1p"8Y":$1Z=$(\'<1Z 1y="8Y" 1n="1" 1x="" 1n="">\').1l("1x","2M-1S-1Z-"+1h.8Y).2a(1h.1n||"").6h("3Q",!!1h.1V).Ci($3v);1r;1p"2t":$1Z=$(\'<2t 1x="">\').1l("1x","2M-1S-1Z-"+1q).4y($3v);if(1h.1v){$.2g(1h.1v,1a(1n,28){$("<2Y></2Y>").2a(1n).28(28).4y($1Z)});$1Z.2a(1h.1V)}1r;1p"hW":$("<2w></2w>").3O(1h.tT||1h.1x).4y($t);1h.4y=1h.$1u;op.7Q(1h,2s);$t.1g("2G",1h).2o("2M-1S-ye");1h.1X=1c;1r;1p"3O":$(1h.3O).4y($t);1r;5m:$.2g([1D,2s],1a(i,k){k.tV[1q]=1h;if($.b7(1h.1X)){k.lr[1q]=1h.1X}});$("<2w></2w>").3O(1h.tT||(1h.1x||"")).4y($t);1r}if(1h.1y&&(1h.1y!="hW"&&1h.1y!="3O")){$1Z.on("3a",4X.Hn).on("57",4X.Hs);if(1h.4N){$1Z.on(1h.4N,1D)}}if(1h.3H){$t.2o("3H 3H-"+1h.3H)}}}1h.$1Z=$1Z;1h.$3v=$3v;$t.4y(1D.$1S);if(!1D.Hr&&$.dZ.HZ){$t.on("Sv.St",4X.qp)}});if(!1D.$1u){1D.$1S.2F("4L","3j").2o("2M-1S-2s")}1D.$1S.4y(1D.4y||2E.3x)},5K:1a($1S,Iz){$1S.2F({2N:"8H",4L:"6F"});$1S.1g("1k",3m.ih($1S.1k())+1);$1S.2F({2N:"Rt",8M:"Tk",bV:"Tl"});$1S.2h("> li > ul").2g(1a(){op.5K($(J),1m)});if(!Iz){$1S.2h("ul").Td().2F({2N:"",4L:"",8M:"",bV:""}).1k(1a(){1b $(J).1g("1k")})}},7X:1a(1D,2s){K $1O=J;if(2s===2r){2s=1D;op.5K(1D.$1S)}1D.$1S.68().2g(1a(){K $1h=$(J),1q=$1h.1g("yj"),1h=1D.1H[1q],2K=$.b7(1h.2K)&&1h.2K.2B($1O,1q,2s)||1h.2K===1m;$1h[2K?"2o":"3S"]("2K");if(1h.1y){$1h.2h("1Z, 2t, 7P").6h("2K",2K);3E(1h.1y){1p"28":;1p"7P":1h.$1Z.2a(1h.1n||"");1r;1p"8r":;1p"8Y":1h.$1Z.2a(1h.1n||"").6h("3Q",!!1h.1V);1r;1p"2t":1h.$1Z.2a(1h.1V||"");1r}}if(1h.$1S){op.7X.2B($1O,1h,2s)}})},6v:1a(1D,4x){K $l=$("#2M-1S-6v");if($l){$l.3z()}K $6v=1D.$6v=$(\'<2H id="2M-1S-6v" 2x="2N:Rz; z-1T:\'+4x+\'; 1C:0; 1W:0; 2Q: 0; 4G: e9(2Q=0); jN-3F: #d4;"></2H>\').2F({1s:$5q.1s(),1k:$5q.1k(),4L:"6F"}).1g("9M",1D).7n(J).on("5e",4X.qp).on("7v",4X.Iy);if(2E.3x.2x.bV===2r){$6v.2F({"2N":"8H","1s":$(2E).1s()})}1b $6v}};1a Ix(2a){K t=2a.3C(/\\s+/),88=[];1o(K i=0,k;k=t[i];i++){k=k.bi(0).8Z();88.1I(k)}1b 88}$.fn.2G=1a(7c){if(7c===2r){J.4c().1O("5e")}1i{if(7c.x&&7c.y){J.4c().1O($.wc("5e",{78:7c.x,7J:7c.y}))}1i{if(7c==="3G"){K $1S=J.4c().1g("2G")?J.4c().1g("2G").$1S:1c;$1S&&$1S.1O("5e:3G")}1i{if(7c==="5R"){$.2G("5R",{2M:J})}1i{if(7c==="1f"){if(J.1g("2G")!=1c){1b J.1g("2G").$1S}1b[]}1i{if($.Rf(7c)){7c.2M=J;$.2G("7Q",7c)}1i{if(7c){J.3S("2M-1S-2K")}1i{if(!7c){J.2o("2M-1S-2K")}}}}}}}}1b J};$.2G=1a(7c,1v){if(2A 7c!="4i"){1v=7c;7c="7Q"}if(2A 1v=="4i"){1v={43:1v}}1i{if(1v===2r){1v={}}}K o=$.4q(1m,{},cr,1v||{});K $2E=$(2E);K $2M=$2E;K pL=1j;if(!o.2M||!o.2M.1e){o.2M=2E}1i{$2M=$(o.2M).4c();o.2M=$2M.4b(0);pL=o.2M!==2E}3E(7c){1p"7Q":if(!o.43){93 1U 9T("No 43 wa")}if(o.43.3k(/.2M-1S-(4Y|1h|1Z)($|\\s)/)){93 1U 9T(\'SZ 2O to 43 "\'+o.43+\'" as it iO a T3 c4\')}if(!o.8R&&(!o.1H||$.IB(o.1H))){93 1U 9T("No 2W wa")}bX++;o.ns=".2G"+bX;if(!pL){bB[o.43]=o.ns}9O[o.ns]=o;if(!o.1O){o.1O="7O"}if(!mt){$2E.on({"5e:3G.2G":4X.It,"xO.2G":4X.j0,"wj.2G":4X.j2,"5e.2G":4X.qp,"lX.2G":4X.Iu,"qr.2G":4X.ID},".2M-1S-4Y").on("6E.2G",".2M-1S-1Z",4X.IM).on({"6E.2G":4X.IL,"5e:3a.2G":4X.IK,"5e:57.2G":4X.IO,"5e.2G":4X.qp,"lX.2G":4X.wo,"qr.2G":4X.w6},".2M-1S-1h");mt=1m}$2M.on("5e"+o.ns,o.43,o,4X.5e);if(pL){$2M.on("3z"+o.ns,1a(){$(J).2G("5R")})}3E(o.1O){1p"6Q":$2M.on("lX"+o.ns,o.43,o,4X.lX).on("qr"+o.ns,o.43,o,4X.qr);1r;1p"1W":$2M.on("3y"+o.ns,o.43,o,4X.3y);1r}if(!o.8R){op.7Q(o)}1r;1p"5R":K $fs;if(pL){K 2M=o.2M;$.2g(9O,1a(ns,o){if(o.2M!==2M){1b 1m}$fs=$(".2M-1S-4Y").4G(":5y");if($fs.1e&&$fs.1g().9M.$1O.is($(o.2M).2h(o.43))){$fs.1O("5e:3G",{fK:1m})}6X{if(9O[o.ns].$1S){9O[o.ns].$1S.3z()}4a 9O[o.ns]}6U(e){9O[o.ns]=1c}$(o.2M).dU(o.ns);1b 1m})}1i{if(!o.43){$2E.dU(".2G .xq");$.2g(9O,1a(ns,o){$(o.2M).dU(o.ns)});bB={};9O={};bX=0;mt=1j;$("#2M-1S-6v, .2M-1S-4Y").3z()}1i{if(bB[o.43]){$fs=$(".2M-1S-4Y").4G(":5y");if($fs.1e&&$fs.1g().9M.$1O.is(o.43)){$fs.1O("5e:3G",{fK:1m})}6X{if(9O[bB[o.43]].$1S){9O[bB[o.43]].$1S.3z()}4a 9O[bB[o.43]]}6U(e){9O[bB[o.43]]=1c}$2E.dU(bB[o.43])}}}1r;1p"Sl":if(!$.dZ.IE&&!$.dZ.IH||2A 1v=="oM"&&1v){$(\'1S[1y="2M"]\').2g(1a(){if(J.id){$.2G({43:"[5e="+J.id+"]",1H:$.2G.Ib(J)})}}).2F("4L","3j")}1r;5m:93 1U 9T(\'gX 7c "\'+7c+\'"\')}1b J};$.2G.SH=1a(1D,1g){if(1g===2r){1g={}}$.2g(1D.ww,1a(1q,1h){3E(1h.1y){1p"28":;1p"7P":1h.1n=1g[1q]||"";1r;1p"8r":1h.1V=1g[1q]?1m:1j;1r;1p"8Y":1h.1V=(1g[1h.8Y]||"")==1h.1n?1m:1j;1r;1p"2t":1h.1V=1g[1q]||"";1r}})};$.2G.SI=1a(1D,1g){if(1g===2r){1g={}}$.2g(1D.ww,1a(1q,1h){3E(1h.1y){1p"28":;1p"7P":;1p"2t":1g[1q]=1h.$1Z.2a();1r;1p"8r":1g[1q]=1h.$1Z.6h("3Q");1r;1p"8Y":if(1h.$1Z.6h("3Q")){1g[1h.8Y]=1h.1n}1r}});1b 1g};1a kH(1u){1b 1u.id&&$(\'3v[1o="\'+1u.id+\'"]\').2a()||1u.1x}1a xd(1H,$68,bX){if(!bX){bX=0}$68.2g(1a(){K $1u=$(J),1u=J,8C=J.8C.3P(),3v,1h;if(8C=="3v"&&$1u.2h("1Z, 7P, 2t").1e){3v=$1u.3O();$1u=$1u.68().4c();1u=$1u.4b(0);8C=1u.8C.3P()}3E(8C){1p"1S":1h={1x:$1u.1l("3v"),1H:{}};bX=xd(1h.1H,$1u.68(),bX);1r;1p"a":;1p"3h":1h={1x:$1u.3O(),2K:!!$1u.1l("2K"),1X:1a(){1b 1a(){$1u.3y()}}()};1r;1p"I6":;1p"8D":3E($1u.1l("1y")){1p 2r:;1p"8D":;1p"I6":1h={1x:$1u.1l("3v"),2K:!!$1u.1l("2K"),1X:1a(){1b 1a(){$1u.3y()}}()};1r;1p"8r":1h={1y:"8r",2K:!!$1u.1l("2K"),1x:$1u.1l("3v"),1V:!!$1u.1l("3Q")};1r;1p"8Y":1h={1y:"8Y",2K:!!$1u.1l("2K"),1x:$1u.1l("3v"),8Y:$1u.1l("SE"),1n:$1u.1l("id"),1V:!!$1u.1l("3Q")};1r;5m:1h=2r}1r;1p"hr":1h="-------";1r;1p"1Z":3E($1u.1l("1y")){1p"28":1h={1y:"28",1x:3v||kH(1u),2K:!!$1u.1l("2K"),1n:$1u.2a()};1r;1p"8r":1h={1y:"8r",1x:3v||kH(1u),2K:!!$1u.1l("2K"),1V:!!$1u.1l("3Q")};1r;1p"8Y":1h={1y:"8Y",1x:3v||kH(1u),2K:!!$1u.1l("2K"),8Y:!!$1u.1l("1x"),1n:$1u.2a(),1V:!!$1u.1l("3Q")};1r;5m:1h=2r;1r}1r;1p"2t":1h={1y:"2t",1x:3v||kH(1u),2K:!!$1u.1l("2K"),1V:$1u.2a(),1v:{}};$1u.68().2g(1a(){1h.1v[J.1n]=$(J).3O()});1r;1p"7P":1h={1y:"7P",1x:3v||kH(1u),2K:!!$1u.1l("2K"),1n:$1u.2a()};1r;1p"3v":1r;5m:1h={1y:"3O",3O:$1u.65(1m)};1r}if(1h){bX++;1H["1q"+bX]=1h}});1b bX}$.2G.Ib=1a(1f){K $J=$(1f),1H={};xd(1H,$J.68());1b 1H};$.2G.cr=cr;$.2G.jP=jP;$.2G.4X=4X;$.2G.op=op;$.2G.9O=9O})(2C);K Ia=1a(id){J.id=id;J.1f=1c;J.2S=1U 3K;J.oe=0;J.xk=20;J.DK=1a(2S){4a J.2S;J.2S=1U 3K;K li=1U 3K;1o(K i=0;i<2S.1e;i++){K 1n=2S[i];li.1I(\'<li 1n="\'+i+\'" 2u="\'+1n.bC+\'">\'+1n.28+"</li>");J.2S.1I(1n.1n)}J.1f.3O("<ul>"+li.54("\\n")+"</ul>");K me=J;J.1f.4E("6E",1a(e){K li=e.3g;if(li.6l.8Z()!="LI"){1b}K $li=$(e.3g);e.76();J.v6.tx($li.28(),me.v6.jA(li.1n))},J).4E("7v",1a(e){e.76()},J);J.I9();J.ux(10)};J.I9=1a(){J.1f.2F("i6","6O");J.1f.4T();K aC=J.1f.2h("li");if(aC.1e>0){J.xk=aC[0].8v}J.1f.2F("i6","5y");J.1f.3G()};J.ux=1a(pK){if(J.1f.2h("li").1e>pK){J.oe=J.xk*pK;J.1f.2F("1s",J.oe+"px");J.1f.2F("d5","5C")}1i{J.1f.2F("1s","5C");J.1f.2F("d5","5y")}};J.jA=1a(1T){1b J.2S[1T]};J.I1=1a(){J.1f.2h("li").3S("3k")};J.Bw=1a(28){K cH=l8(28);J.I1();K 9d=J.vi(cH);$(9d).2o("3k");if(9d.1e>0){J.vX($(9d[0]))}1i{J.xB()}};J.Ig=1a(28){K cH=l8(28);K 9d=J.vi(cH);K 5I=J.lN();if(5I.1e>0&&9d.1e>1){K 1T=9d.4S(5I[0]);if(1T<9d.1e-1){1b $(9d[1T+1])}1i{1b $(9d[0])}}1b 1c};J.If=1a(28){K cH=l8(28);K 9d=J.vi(cH);K 5I=J.lN();if(5I.1e>0&&9d.1e>1){K 1T=9d.4S(5I[0]);if(1T>0){1b $(9d[1T-1])}1i{1b $(9d[9d.1e-1])}}1b 1c};J.vi=1a(28){K 1J=[];if(1M(28)){1b 1J}K dn=28.3p(/([$-/:-?{-~!"^1Y`\\[\\]\\\\])/g, "\\\\$1");K aC=J.1f.2h("li");1o(K i=0;i<aC.1e;i++){K li=aC[i];K xL=l8(!1M(li.I5)?li.I5:li.To);K xx=l8(J.jA(li.1n));if(QB.1d.2J.wr){dn="(^"+28+")|([.]"+28+")"}if(28==xL||28==xx){1J.1I(li)}1i{if(xL.9t(dn)||xx.9t(dn)){1J.1I(li)}}}1b 1J};J.EW=1a(){J.1f.2h("li.1V").3S("1V")};J.F0=1a(28,d6,g9){K li=J.lN();if(!li.1e){li=J.xB()}K eO=1c;if(d6=="e8"){if(g9){eO=J.Ig(28)}if(eO==1c){eO=li.3q()}}1i{if(d6=="up"){if(g9){eO=J.If(28)}if(eO==1c){eO=li.3I()}}}if(eO!=1c){J.vX(eO);J.Im(li)}};J.vX=1a(li){J.EW();li.2o("1V");J.I3(li)};J.xB=1a(){K 4c=J.1f.2h("li:4c");J.vX(4c);1b 4c};J.Im=1a(kK){kK.3S("1V")};J.lN=1a(){1b J.1f.2h("li.1V")};J.I3=1a(kK){if(J.oe&&(kK!=1c&&kK.1e>0)){J.1f.4t(kK[0].8X-J.oe/2)}};J.8m=1a(){J.1f=$(\'<2H 2u="cK-2t-1v"></2H>\').4y($(2E.3x))};J.8m()};K aq={vw:{},cu:[],mK:{},DH:1j,2M:1c,8m:1a(){J.I2();J.DH=1m},I2:1a(){},DW:1a(a6){if(1M(a6)||1M(J.vw[a6])){J.vw[a6]=1U Ia(a6)}1b J.vw[a6]},xg:1a(id,2S){J.DW(id).DK(2S)}};(1a($){$.fn.BL=1a(1v){if(!aq.DH){aq.8m()}K me=J;K cr={9h:1j,h3:1m,pK:10,Tp:1j};K 2Z=$.4q(cr,1v);K kJ=1j;$(J).2g(1a(i,DT){K 1f=$(DT);if(1f.1g("cK-ic")==2r){aq.cu.1I(1U DR(DT,2Z));1f.1g("cK-ic",aq.cu.1e-1)}});1b $(J)};$.fn.E8=1a(){K 8c=[];$(J).2g(1a(){if($(J).1g("cK-ic")!==2r){8c[8c.1e]=aq.cu[$(J).1g("cK-ic")]}});1b 8c};K DR=1a(2t,2Z){J.8m(2t,2Z)};DR.2V={lR:1j,2Z:1j,62:1j,2t:1j,6f:1j,a6:1c,ij:1j,Th:1j,9h:1j,Tf:13,cH:"",Ti:[],g9:1j,IC:1j,8m:1a(2t,2Z){J.2Z=2Z;J.a6=J.2Z.a6;J.6f=aq.DW(J.a6);J.7W=J.2Z.h3;if(!1M(J.a6)){aq.mK[J.a6]=J.2Z.h3}J.1v=[];if(!1M(J.2Z.1v)){J.1v=J.2Z.1v}J.2t=$(2t);J.62=$(\'<1Z 1y="28">\');J.62.1l("5Q-3v",J.2t.1l("5Q-3v"));J.62.2a(J.2Z.1n);J.62.1l("1x",J.2t.1l("1x"));J.62.1g("cK-ic",J.2t.1g("cK-ic"));J.2t.1l("2K","2K");K id=J.2t.1l("id");if(!id){id="cK-2t"+aq.cu.1e}J.id=id;J.62.1l("id",id);J.62.1l("Tj","dU");J.62.2o("cK-2t");J.2t.1l("id",id+"Su");J.Hm(J.62,J);J.IG();J.K4();J.K5();if(J.2Z.9h){K 9h=$(\'<d3 Sr="0" 2u="cK-2t-d3" 4k="Iq:AC;"></d3>\');$(2E.3x).2X(9h);9h.1k(J.2t.1k()+2);9h.1s(J.6f.1f.1s());9h.2F({1C:J.6f.1f.2F("1C"),1W:J.6f.1f.2F("1W")});J.9h=9h}},IG:1a(){K me=J;K Sy=1j;K 2S=1U 3K;J.2t.2h("2Y").2g(1a(1T,2Y){K $2Y=$(2Y);K 28=$2Y.28();K 2a=$2Y.1l("1n");K 1V=1j;if($2Y.1l("1V")||2Y.1V){me.62.2a(28);me.cH=28;me.Hf=2a;1V=1m}K bC=$2Y.1l("2u");2S.1I({1V:1V,28:28,1n:2a,bC:bC})});if(2S.1e>0){J.6f.DK(2S);J.6f.1f.2o("vv-Q5");J.6f.ux(J.2Z.pK)}},Bj:1a(){1b J.62},h3:1a(e){K 2M=J.6f.v6;if(2A 2M.7W=="1a"){2M.7W.2B(2M,2M.62,e)}},EZ:1a(){if(J.lR){1b}J.lR=1m;J.cH=J.62.2a();J.g9=1j;J.Br(J);if(J.IC){J.pg()}},hQ:1a(e){if(!J.lR){1b}J.6f.EW();J.uo();J.h3(e);J.lR=1j},Hd:1a(Sk){if(J.62.2a()!=J.cH){J.g9=1m;J.cH=J.62.2a();J.6f.Bw(J.62.2a())}},Hm:1a(62,Si){K me=J;K 9i=1j;62.3a(1a(e){me.EZ()}).57(1a(e){if(!me.ij){me.hQ(e)}}).3y(1a(e){e.76();me.EZ();if(e.78-$(J).2d().1W>$(J).1k()-16){if(me.ij){me.uo()}1i{me.pg()}}}).8f(1a(e){me.lR=1m;3E(e.41){1p 40:if(!me.uO()){me.pg()}1i{e.4o();me.6f.F0(me.62.2a(),"e8",me.g9)}1r;1p 38:if(me.uO()){e.4o();me.6f.F0(me.62.2a(),"up",me.g9)}1i{me.pg()}1r;1p 9:if(me.uO()){K $li=me.6f.lN();if($li.1e){me.tx($li.28(),me.jA($li[0].1n))}}1i{me.hQ()}1r;1p 27:e.4o();me.hQ();1b 1j;1r;1p 13:e.4o();if(me.ij){K $li=me.6f.lN();if($li.1e){me.tx($li.28(),me.jA($li[0].1n))}}1i{me.hQ()}1b 1j;1r}}).u2($.hK(me.Hd,100,me)).iW(1a(e){if(e.41==13){e.4o();1b 1j}})},tx:1a(28,2a){J.cH=28;J.Hf=2a;J.62.2a(2a);J.hQ()},uO:1a(){1b J.ij},Br:1a(2M){J.Ha();J.HT();aq.2M=2M;J.6f.v6=2M},Ha:1a(){K 2d=J.62.2d();2d.1C+=J.62[0].8v;J.6f.1f.2F({1C:2d.1C+"px",1W:2d.1W+"px"})},HT:1a(){K 1k=J.62[0].mz;J.6f.1f.1k(1k)},pg:1a(){J.HI();J.80=1U $.ui.eB.80(J);J.6f.1f.4T();J.Br(J);J.ij=1m;if(J.2Z.9h){J.9h.4T()}J.6f.ux(10);J.6f.Bw(J.62.2a())},jA:1a(1T){1b J.6f.2S[1T]},uo:1a(){if(J.80!=1c){J.80.5R()}J.6f.1f.3G();J.ij=1j;if(J.2Z.9h){J.9h.3G()}},HI:1a(){1o(K i=0;i<aq.cu.1e;i++){if(i!=J.2t.1g("cK-ic")){aq.cu[i].uo()}}},K4:1a(){J.2t.q4(J.62);J.2t.3G();$(2E.3x).2X(J.6f.1f)},K5:1a(){K 1k=J.2t.1k()+2*0;if(J.9h){J.9h.1k(1k+4)}}};$.ui.eB={80:1a(3B){J.$el=$.ui.eB.80.7Q(3B)}};$.4q($.ui.eB.80,{2y:J,cu:[],UX:[],og:BW,4N:$.bp("3a,7v,8f,iW".3C(","),1a(1K){1b 1K+".3B-80"}).54(" "),7Q:1a(3B){if(J.cu.1e===0){$(3n).2O("5K.3B-80",$.ui.eB.80.5K)}K $el=$(\'<2H 2u="cK-2t-1v-80"></2H>\').4y(3B.62.1N()).2F({1k:J.1k(),1s:J.1s()});$el.2O("7v.3B-80",1a(1K){3B.hQ();K 1f=2E.oI(1K.cT,1K.cJ);if(1f!=1c){6X{K dl="3y";if(1f.CZ){K e=2E.JM("UF");e.JN(dl,1m,1m,3n,0,1K.JP,1K.Kn,1K.cT,1K.cJ,1j,1j,1j,1j,0,1c);1f.CZ(e)}1i{if(1f.Kb){1f.Kb("on"+dl)}}}6U(UG){}}});if($.fn.eW){$el.eW()}J.cu.1I($el);1b $el},5R:1a($el){if($el!=1c){$el.3z()}if(J.cu.1e===0){$([2E,3n]).8q(".3B-80")}},1s:1a(){K j3,8v;1b $(2E).1s()+"px"},1k:1a(){K mH,h7;1b $(2E).1k()+"px"},5K:1a(){K $vV=$([]);$.2g($.ui.eB.80.cu,1a(){$vV=$vV.5l(J)});$vV.2F({1k:0,1s:0}).2F({1k:$.ui.eB.80.1k(),1s:$.ui.eB.80.1s()})}});$.4q($.ui.eB.80.2V,{5R:1a(){$.ui.eB.80.5R(J.$el)}})})(2C);(1a($){K R=$.7k=$.fn.7k=1a(a,b,c){1b R.Cp(iS.3i(J,2v))};1a iS(a,b,c){K r=$.4q({},R);if(2A a=="4i"){r.5b=a;if(b&&!$.b7(b)){r.fa=b}1i{c=b}if(c){r.xh=c}}1i{$.4q(r,a)}if(!r.4h){r.4h=$.Kf?"UK":"xK"}if(!r.3g){r.3g=J?J:$}if(!r.1y&&!$.Kf){r.1y="UI"}1b r}$.4q(R,{6d:"0.5",5b:1c,fa:UJ,xh:1c,4h:1c,Cp:1a(r){if(r.qm){r.qm()}r.id=oC(1a(){r.7k(r)},r.fa*9a);r.qm=1a(){wH(r.id);1b r};1b r},7k:1a(r){if(r.Cu){4a r.Cu}r.Cu=r.3g[r.4h](r)}})})(2C);2C.4s={cw:1c,aD:1c,w9:1c,wF:0,8R:1a(1v){J.2g(1a(){J.bY=2C.4q({J9:1c,Je:1c,qh:"Vq",vh:1c,oF:1c,qq:5,CW:/[^\\-]*$/,Vn:1c,oy:1c},1v||{});2C.4s.Cr(J)});2C(2E).2O("aa",2C.4s.aa).2O("6E",2C.4s.6E);1b J},Cr:1a(1B){K 6K=1B.bY;if(1B.bY.oy){$(2E).on("7v","#qb-ui-3s td."+1B.bY.oy,1a(ev){if($(ev.8j).aN("tr:4c").3q().1e==0){1b}2C.4s.aD=J.3w;2C.4s.cw=1B;2C.4s.w9=2C.4s.CO(J,ev);if(6K.oF){6K.oF(1B,J)}1b 1j})}1i{$(2E).on("7v","#qb-ui-3s 1B td."+1B.bY.oy,1a(ev){if(ev.3g.6l=="TD"){2C.4s.aD=J;2C.4s.cw=1B;2C.4s.w9=2C.4s.CO(J,ev);if(6K.oF){6K.oF(1B,J)}1b 1j}})}},IX:1a(){J.2g(1a(){if(J.bY){2C.4s.Cr(J)}})},CM:1a(ev){if(ev.78||ev.7J){1b{x:ev.78,y:ev.7J}}1b{x:ev.cT+2E.3x.4P-2E.3x.m8,y:ev.cJ+2E.3x.4t-2E.3x.lH}},CO:1a(3g,ev){ev=ev||3n.1K;K CL=J.ua(3g);K iV=J.CM(ev);1b{x:iV.x-CL.x,y:iV.y-CL.y}},ua:1a(e){K 1W=0;K 1C=0;if(e.8v==0){e=e.7R}44(e.ep){1W+=e.8z;1C+=e.8X;e=e.ep}1W+=e.8z;1C+=e.8X;1b{x:1W,y:1C}},aa:1a(ev){if(2C.4s.aD==1c){1b}K wA=2C(2C.4s.aD);K 6K=2C.4s.cw.bY;K iV=2C.4s.CM(ev);K y=iV.y-2C.4s.w9.y;K qo=3n.II;if(2E.6D){if(2A 2E.J7!="2r"&&2E.J7!="Vv"){qo=2E.8s.4t}1i{if(2A 2E.3x!="2r"){qo=2E.3x.4t}}}if(iV.y-qo<6K.qq){3n.C7(0,-6K.qq)}1i{K J8=3n.zr?3n.zr:2E.8s.kN?2E.8s.kN:2E.3x.kN;if(J8-(iV.y-qo)<6K.qq){3n.C7(0,6K.qq)}}if(y!=2C.4s.wF){K CF=y>2C.4s.wF;2C.4s.wF=y;if(6K.qh){wA.2o(6K.qh)}1i{wA.2F(6K.J9)}K iU=2C.4s.J4(wA,y);if(iU&&iU.c4!="ui-qb-3s-1G-7t"){if(CF&&2C.4s.aD!=iU){2C.4s.aD.3w.7n(2C.4s.aD,iU.hV)}1i{if(!CF&&2C.4s.aD!=iU){2C.4s.aD.3w.7n(2C.4s.aD,iU)}}}}1b 1j},J4:1a(CJ,y){K 3b=2C.4s.cw.3b;1o(K i=0;i<3b.1e;i++){K 1G=3b[i];if($(1G).3q().1e==0){1b}K u5=J.ua(1G).y;K tu=61(1G.8v)/2;if(1G.8v==0){u5=J.ua(1G.7R).y;tu=61(1G.7R.8v)/2}if(y>u5-tu&&y<u5+tu){if(1G==CJ){1b 1c}K 6K=2C.4s.cw.bY;if(6K.J6){if(6K.J6(CJ,1G)){1b 1G}1i{1b 1c}}1i{K CK=2C(1G).4H("CK");if(!CK){1b 1G}1i{1b 1c}}1b 1G}}1b 1c},6E:1a(e){if(2C.4s.cw&&2C.4s.aD){K uN=2C.4s.aD;K 6K=2C.4s.cw.bY;if(6K.qh){2C(uN).3S(6K.qh)}1i{2C(uN).2F(6K.Je)}2C.4s.aD=1c;if(6K.vh){6K.vh(2C.4s.cw,uN)}2C.4s.cw=1c}},CR:1a(){if(2C.4s.cw){1b 2C.4s.BE(2C.4s.cw)}1i{1b"9T: No d1 id 5M, Hx MK to 5M an id on Qk 1B mI nf 1G"}},BE:1a(1B){K 1J="";K J1=1B.id;K 3b=1B.3b;1o(K i=0;i<3b.1e;i++){if(1J.1e>0){1J+="&"}K k7=3b[i].id;if(k7&&(k7&&(1B.bY&&1B.bY.CW))){k7=k7.3k(1B.bY.CW)[0]}1J+=J1+"[]="+k7}1b 1J},Jg:1a(){K 1J="";J.2g(1a(){1J+=2C.4s.BE(J)});1b 1J}};2C.fn.4q({4s:2C.4s.8R,TU:2C.4s.IX,TN:2C.4s.Jg});(1a($){$.8o("ui.3u",{1v:{4y:"3x",GA:9a,2x:"i7",G3:1c,1k:1c,n6:1c,GF:26,8k:1c,b6:1c,6M:1c,H5:1j,ob:1a(){}},pq:1a(){K 2y=J,o=J.1v;K uG=J.1f.TP().1l("id");J.et=[uG,uG+"-3h",uG+"-1S"];J.uS=1m;J.kb=1j;J.6x=$("<a />",{"2u":"ui-3u ui-8o ui-4u-5m ui-bd-6D","id":J.et[1],"hi":"3h","5h":"#Db","6q":J.1f.1l("2K")?1:0,"5Q-U0":1m,"5Q-U1":J.et[2]});J.BF=$("<2w />").2X(J.6x).fj(J.1f);K 6q=J.1f.1l("6q");if(6q){J.6x.1l("6q",6q)}J.6x.1g("H3",J.1f);J.FK=$(\'<2w 2u="ui-3u-3H ui-3H"></2w>\').Ci(J.6x);J.6x.la(\'<2w 2u="ui-3u-6N" />\');J.1f.2O({"3y.3u":1a(1K){2y.6x.3a();1K.4o()}});J.6x.2O("7v.3u",1a(1K){2y.BN(1K,1m);if(o.2x=="ke"){2y.uS=1j;6A(1a(){2y.uS=1m},tF)}1K.4o()}).2O("3y.3u",1a(1K){1K.4o()}).2O("8f.3u",1a(1K){K 8c=1j;3E(1K.41){1p $.ui.41.Jh:8c=1m;1r;1p $.ui.41.Ji:2y.BN(1K);1r;1p $.ui.41.UP:if(1K.v1){2y.72(1K)}1i{2y.k1(-1)}1r;1p $.ui.41.Jx:if(1K.v1){2y.72(1K)}1i{2y.k1(1)}1r;1p $.ui.41.JE:2y.k1(-1);1r;1p $.ui.41.JA:2y.k1(1);1r;1p $.ui.41.Js:8c=1m;1r;1p $.ui.41.Jk:;1p $.ui.41.JC:2y.1T(0);1r;1p $.ui.41.Jl:;1p $.ui.41.Jm:2y.1T(2y.8I.1e);1r;5m:8c=1m}1b 8c}).2O("iW.3u",1a(1K){if(1K.jS>0){2y.Di(1K.jS,"6E")}1b 1m}).2O("j9.3u",1a(){if(!o.2K){$(J).2o("ui-4u-6Q")}}).2O("fo.3u",1a(){if(!o.2K){$(J).3S("ui-4u-6Q")}}).2O("3a.3u",1a(){if(!o.2K){$(J).2o("ui-4u-3a")}}).2O("57.3u",1a(){if(!o.2K){$(J).3S("ui-4u-3a")}});$(2E).2O("7v.3u-"+J.et[0],1a(1K){if(2y.kb&&!$(1K.3g).hG("#"+2y.et[1]).1e){2y.5U(1K)}});J.1f.2O("3y.3u",1a(){2y.md()}).2O("3a.3u",1a(){if(2y.6x){2y.6x[0].3a()}});if(!o.1k){o.1k=J.1f.8h()}J.6x.1k(o.1k);J.1f.3G();J.4Y=$("<ul />",{"2u":"ui-8o ui-8o-c3","5Q-6O":1m,"hi":"TZ","5Q-TW":J.et[1],"id":J.et[2]});J.hL=$("<2H />",{"2u":"ui-3u-1S"}).2X(J.4Y).4y(o.4y);J.4Y.2O("8f.3u",1a(1K){K 8c=1j;3E(1K.41){1p $.ui.41.UP:if(1K.v1){2y.5U(1K,1m)}1i{2y.fJ(-1)}1r;1p $.ui.41.Jx:if(1K.v1){2y.5U(1K,1m)}1i{2y.fJ(1)}1r;1p $.ui.41.JE:2y.fJ(-1);1r;1p $.ui.41.JA:2y.fJ(1);1r;1p $.ui.41.JC:2y.fJ(":4c");1r;1p $.ui.41.Jk:2y.Bt("up");1r;1p $.ui.41.Jl:2y.Bt("e8");1r;1p $.ui.41.Jm:2y.fJ(":7u");1r;1p $.ui.41.Jh:;1p $.ui.41.Ji:2y.5U(1K,1m);$(1K.3g).aN("li:eq(0)").1O("6E");1r;1p $.ui.41.Js:8c=1m;2y.5U(1K,1m);$(1K.3g).aN("li:eq(0)").1O("6E");1r;1p $.ui.41.Tz:2y.5U(1K,1m);1r;5m:8c=1m}1b 8c}).2O("iW.3u",1a(1K){if(1K.jS>0){2y.Di(1K.jS,"3a")}1b 1m}).2O("7v.3u 6E.3u",1a(){1b 1j});$(3n).2O("5K.3u-"+J.et[0],$.ai(2y.5U,J))},AK:1a(){K 2y=J,o=J.1v;K 8x=[];J.1f.2h("2Y").2g(1a(){K 1D=$(J);8x.1I({1n:1D.1l("1n"),28:2y.H4(1D.28(),1D),1V:1D.1l("1V"),2K:1D.1l("2K"),gA:1D.1l("2u"),q2:1D.1l("q2"),mu:1D.1N("Cm"),ob:o.ob.2B(1D)})});K kn=2y.1v.2x=="ke"?" ui-4u-9s":"";J.4Y.3O("");if(8x.1e){1o(K i=0;i<8x.1e;i++){K Ec={hi:"Bp"};if(8x[i].2K){Ec["2u"]="ui-4u-2K"}K uL={3O:8x[i].28||"&2n;",5h:"#Db",6q:-1,hi:"2Y","5Q-1V":1j};if(8x[i].2K){uL["5Q-2K"]=1m}if(8x[i].q2){uL["q2"]=8x[i].q2}K Fr=$("<a/>",uL).2O("3a.3u",1a(){$(J).1N().j9()}).2O("57.3u",1a(){$(J).1N().fo()});K gH=$("<li/>",Ec).2X(Fr).1g("1T",i).2o(8x[i].gA).1g("hU",8x[i].gA||"").2O("6E.3u",1a(1K){if(2y.uS&&(!2y.oa(1K.8j)&&!2y.oa($(1K.8j).aN("ul > li.ui-3u-cb ")))){2y.1T($(J).1g("1T"));2y.2t(1K);2y.5U(1K,1m)}1b 1j}).2O("3y.3u",1a(){1b 1j}).2O("j9.3u",1a(e){if(!$(J).4H("ui-4u-2K")&&!$(J).1N("ul").1N("li").4H("ui-4u-2K")){e.Fy=2y.1f[0].1v[$(J).1g("1T")].1n;2y.89("6Q",e,2y.f8());2y.cf().2o(kn);2y.mw().3S("ui-3u-1h-3a ui-4u-6Q");$(J).3S("ui-4u-9s").2o("ui-3u-1h-3a ui-4u-6Q")}}).2O("fo.3u",1a(e){if($(J).is(2y.cf())){$(J).2o(kn)}e.Fy=2y.1f[0].1v[$(J).1g("1T")].1n;2y.89("57",e,2y.f8());$(J).3S("ui-3u-1h-3a ui-4u-6Q")});if(8x[i].mu.1e){K tD="ui-3u-cb-"+J.1f.2h("Cm").1T(8x[i].mu);if(J.4Y.2h("li."+tD).1e){J.4Y.2h("li."+tD+":7u ul").2X(gH)}1i{$(\'<li hi="Bp" 2u="ui-3u-cb \'+tD+(8x[i].mu.1l("2K")?" "+\'ui-4u-2K" 5Q-2K="1m"\':\'"\')+\'><2w 2u="ui-3u-cb-3v">\'+8x[i].mu.1l("3v")+"</2w><ul></ul></li>").4y(J.4Y).2h("ul").2X(gH)}}1i{gH.4y(J.4Y)}if(o.b6){1o(K j in o.b6){if(gH.is(o.b6[j].2h)){gH.1g("hU",8x[i].gA+" ui-3u-Fp").2o("ui-3u-Fp");K uu=o.b6[j].3H||"";gH.2h("a:eq(0)").la(\'<2w 2u="ui-3u-1h-3H ui-3H \'+uu+\'"></2w>\');if(8x[i].ob){gH.2h("2w").2F("jN-9b",8x[i].ob)}}}}}}1i{$(\'<li hi="Bp"><a 5h="#Db" 6q="-1" hi="2Y"></a></li>\').4y(J.4Y)}K gF=o.2x=="i7";J.6x.8Q("ui-3u-i7",gF).8Q("ui-3u-ke",!gF);J.4Y.8Q("ui-3u-1S-i7 ui-bd-4v",gF).8Q("ui-3u-1S-ke ui-bd-6D",!gF).2h("li:4c").8Q("ui-bd-1C",!gF).4n().2h("li:7u").2o("ui-bd-4v");J.FK.8Q("ui-3H-km-1-s",gF).8Q("ui-3H-km-2-n-s",!gF);if(o.2x=="i7"){J.4Y.1k(o.n6?o.n6:o.1k)}1i{J.4Y.1k(o.n6?o.n6:o.1k-o.GF)}if(!bO.eS.3k(/Ux 2/)){K GK=J.hL.1s();K Cw=$(3n).1s();K Dn=o.8k?3m.5H(o.8k,Cw):Cw/3;if(GK>Dn){J.4Y.1s(Dn)}}J.8I=J.4Y.2h("li:5P(.ui-3u-cb)");if(J.1f.1l("2K")){J.vv()}1i{J.GR()}J.md();J.cf().2o("ui-3u-1h-3a");jx(J.Gv);J.Gv=3n.6A(1a(){2y.EU()},hb)},5R:1a(){J.1f.q3(J.U8).3S("ui-3u-2K"+" "+"ui-4u-2K").ln("5Q-2K").8q(".3u");$(3n).8q(".3u-"+J.et[0]);$(2E).8q(".3u-"+J.et[0]);J.BF.3z();J.hL.3z();J.1f.8q(".3u").4T();$.Ei.2V.5R.3i(J,2v)},Di:1a(Gt,D0){K 2y=J,c=5E.El(Gt).3P(),nr=1c,dR=1c;if(2y.nE){3n.jx(2y.nE);2y.nE=2r}2y.ho=(2y.ho===2r?"":2y.ho).3L(c);if(2y.ho.1e<2||2y.ho.7r(-2,1)===c&&2y.nh){2y.nh=1m;nr=c}1i{2y.nh=1j;nr=2y.ho}K cg=(D0!=="3a"?J.cf().1g("1T"):J.mw().1g("1T"))||0;1o(K i=0;i<J.8I.1e;i++){K Gu=J.8I.eq(i).28().7r(0,nr.1e).3P();if(Gu===nr){if(2y.nh){if(dR===1c){dR=i}if(i>cg){dR=i;1r}}1i{dR=i}}}if(dR!==1c){J.8I.eq(dR).2h("a").1O(D0)}2y.nE=3n.6A(1a(){2y.nE=2r;2y.ho=2r;2y.nh=2r},2y.1v.GA)},f8:1a(){K 1T=J.1T();1b{1T:1T,2Y:$("2Y",J.1f).4b(1T),1n:J.1f[0].1n}},72:1a(1K){if(J.6x.1l("5Q-2K")!="1m"){K 2y=J,o=J.1v,1V=J.cf(),29=1V.2h("a");2y.Gz(1K);2y.6x.2o("ui-4u-9s");2y.4Y.1l("5Q-6O",1j);2y.hL.2o("ui-3u-72");if(o.2x=="i7"){2y.6x.3S("ui-bd-6D").2o("ui-bd-1C")}1i{J.4Y.2F("1W",-Dr).4t(J.4Y.4t()+1V.2N().1C-J.4Y.6B()/ 2 + 1V.6B() /2).2F("1W","5C")}2y.EU();if(29.1e){29[0].3a()}2y.kb=1m;2y.89("72",1K,2y.f8())}},5U:1a(1K,wp){if(J.6x.is(".ui-4u-9s")){J.6x.3S("ui-4u-9s");J.hL.3S("ui-3u-72");J.4Y.1l("5Q-6O",1m);if(J.1v.2x=="i7"){J.6x.3S("ui-bd-1C").2o("ui-bd-6D")}if(wp){J.6x.3a()}J.kb=1j;J.89("5U",1K,J.f8())}},ea:1a(1K){J.1f.1O("ea");J.89("ea",1K,J.f8())},2t:1a(1K){if(J.oa(1K.8j)){1b 1j}J.89("2t",1K,J.f8())},8o:1a(){1b J.hL.5l(J.BF)},Gz:1a(1K){$(".ui-3u.ui-4u-9s").5P(J.6x).2g(1a(){$(J).1g("H3").3u("5U",1K)});$(".ui-3u.ui-4u-6Q").1O("fo")},BN:1a(1K,wp){if(J.kb){J.5U(1K,wp)}1i{J.72(1K)}},H4:1a(28,1D){if(J.1v.6M){28=J.1v.6M(28,1D)}1i{if(J.1v.H5){28=$("<2H />").28(28).3O()}}1b 28},wx:1a(){1b J.1f[0].cg},cf:1a(){1b J.8I.eq(J.wx())},mw:1a(){1b J.4Y.2h(".ui-3u-1h-3a")},k1:1a(ad,wB){if(!J.1v.2K){K wD=61(J.cf().1g("1T")||0,10);K 5j=wD+ad;if(5j<0){5j=0}if(5j>J.8I.3V()-1){5j=J.8I.3V()-1}if(5j===wB){1b 1j}if(J.8I.eq(5j).4H("ui-4u-2K")){ad>0?++ad:--ad;J.k1(ad,5j)}1i{J.8I.eq(5j).1O("j9").1O("6E")}}},fJ:1a(ad,wB){if(!c5(ad)){K wD=61(J.mw().1g("1T")||0,10);K 5j=wD+ad}1i{K 5j=61(J.8I.4G(ad).1g("1T"),10)}if(5j<0){5j=0}if(5j>J.8I.3V()-1){5j=J.8I.3V()-1}if(5j===wB){1b 1j}K kd="ui-3u-1h-"+3m.4U(3m.kj()*9a);J.mw().2h("a:eq(0)").1l("id","");if(J.8I.eq(5j).4H("ui-4u-2K")){ad>0?++ad:--ad;J.fJ(ad,5j)}1i{J.8I.eq(5j).2h("a:eq(0)").1l("id",kd).3a()}J.4Y.1l("5Q-FW",kd)},Bt:1a(d6){K o0=3m.ei(J.4Y.6B()/J.8I.4c().6B());o0=d6=="up"?-o0:o0;J.fJ(o0)},oT:1a(1q,1n){J.1v[1q]=1n;if(1q=="2K"){if(1n){J.5U()}J.1f.5l(J.6x).5l(J.4Y)[1n?"2o":"3S"]("ui-3u-2K "+"ui-4u-2K").1l("5Q-2K",1n).1l("6q",1n?1:0)}},vv:1a(1T,1y){if(2A 1T=="2r"){J.oT("2K",1m)}1i{J.Cj(1y||"2Y",1T,1j)}},GR:1a(1T,1y){if(2A 1T=="2r"){J.oT("2K",1j)}1i{J.Cj(1y||"2Y",1T,1m)}},oa:1a(4g){1b $(4g).4H("ui-4u-2K")},Cj:1a(1y,1T,wy){K 1f=J.1f.2h(1y).eq(1T),aC=1y==="Cm"?J.4Y.2h("li.ui-3u-cb-"+1T):J.8I.eq(1T);if(aC){aC.8Q("ui-4u-2K",!wy).1l("5Q-2K",!wy);if(wy){1f.ln("2K")}1i{1f.1l("2K","2K")}}},1T:1a(5j){if(2v.1e){if(!J.oa($(J.8I[5j]))&&5j!=J.wx()){J.1f[0].cg=5j;J.md();J.ea()}1i{1b 1j}}1i{1b J.wx()}},1n:1a(4e){if(2v.1e&&4e!=J.1f[0].1n){J.1f[0].1n=4e;J.md();J.ea()}1i{1b J.1f[0].1n}},md:1a(){K kn=J.1v.2x=="ke"?" ui-4u-9s":"";K kd="ui-3u-1h-"+3m.4U(3m.kj()*9a);J.4Y.2h(".ui-3u-1h-1V").3S("ui-3u-1h-1V"+kn).2h("a").1l("5Q-1V","1j").1l("id","");J.cf().2o("ui-3u-1h-1V"+kn).2h("a").1l("5Q-1V","1m").1l("id",kd);K GQ=J.6x.1g("hU")?J.6x.1g("hU"):"";K BV=J.cf().1g("hU")?J.cf().1g("hU"):"";J.6x.3S(GQ).1g("hU",BV).2o(BV).2h(".ui-3u-6N").3O(J.cf().2h("a:eq(0)").3O());J.4Y.1l("5Q-FW",kd)},EU:1a(){K o=J.1v,vd={of:J.6x,my:"1W 1C",at:"1W 4v",j1:"kD"};if(o.2x=="ke"){K 1V=J.cf();vd.my="1W 1C"+(J.4Y.2d().1C-1V.2d().1C-(J.6x.6B()+1V.6B())/2);vd.j1="bK"}J.hL.ln("2x").4x(J.1f.4x()+2).2N($.4q(vd,o.G3))}})})(2C);(1a(dL){if(2A cQ==="1a"&&cQ.yo){cQ(["fL"],dL)}1i{dL(2C)}})(1a($){K 1B=$.8o("aw.1B",{14L:1,G1:0,Fa:1j,Gn:1j,14D:"<1B>",ka:1j,9p:1c,jO:1c,cv:1c,jL:1c,Ep:1j,1v:{cq:["y"],8d:{4m:1c,oc:1c,nX:1c},1k:1c,1s:1c,DB:1m},f9:1a(e){K $e;if(e.1e){$e=e;e=e[0]}1i{$e=$(e)}if(e.2x.4L=="3j"){if(1M(e.2x.1k)){1b 0}1b 61(e.2x.1k)}1b $e.8h()},jo:1a(e,1k,jJ,FL){K $e;if(e.1e){$e=e;e=e[0]}1i{$e=$(e)}if(jJ==2r||jJ==1c){if(e.2x.4L!="3j"){jJ=$e.8h()-$e.1k()}1i{jJ=J.G1}}K G2=1k-jJ;$e.1k(G2);if(FL){}},FM:1a(e){1b $(e).6B()},14r:1a(e,FT){K $e=$(e);K 1s=FT-($e.6B()-$e.1s());$e.1s(1s)},G8:1a(9C,bF){K a5=J.FQ(9C,bF);if(a5!=1c){if(a5.2x.4L=="3j"||(!1M(a5.jp["8t"])||a5.hV==1c)){a5=1c}}1b a5},FQ:1a(9C,bF){K fe=0;K DP=0;1o(K i=0;i<bF.1e;i++){K $th=bF[i];fe=i+DP;if($th.jp["8t"]){K 2w=0+$th.jp["8t"].1n-1;if(fe<=9C&&9C<=fe+2w){1b $th}DP+=2w}if(fe==9C){1b $th}}1b 1c},Fk:1a(){K 2P=J;K 1J=J.jU().bp(1a(i,e){K 1k=0;if(e.2x.4L=="3j"){1k=$(e).8h()}1i{1k=2P.f9(e)}1b 1k}).4b();1b 1J},14R:1a(){if(J.cv==1c){J.cv=J.1f.2h("> 7A > tr:4c-vQ").4c()}if(J.cv.1e==0){J.cv=0}1b J.cv},jE:1a(){if(J.cv==1c){J.cv=J.1f.1N().2h(".g2-7A > 7A > tr:4c-vQ").4c()}if(J.cv.1e==0){J.cv=0}1b J.cv},Gq:1a(){if(J.9p==1c){J.9p=J.1f.2h("9p")}if(J.9p.1e==0){J.9p=1c}1b J.9p},FX:1a(){if(J.jL==1c){J.jL=J.1f.2h("> 7p:4c")}if(J.jL.1e==0){J.jL=1c}1b J.jL},ju:1a(){if(J.jO==1c){J.jO=J.1f}if(J.jO.1e==0){J.jO=1c}1b J.jO},Gk:1a(){1b J.1f.2h("> 7p tr.ui-qb-3s-1G:4c-vQ")},jn:1a(){1b J.jE().68()},jU:1a(){1b J.Gk().68()},sl:1a(){K 9p=J.Gq();if(9p==1c){1b[]}1b 9p.68()},GL:1a(1f){K $1f=$(1f);1b{"x":$1f.8h()<$1f.6h("mH"),"y":$1f.6B()<$1f.6h("j3")}},mR:1a(){if(J.Fa){1b 1m}if(J.Gn){1b 1j}K 7p=J.Gl()[0];K 8v=7p.8v;if(8v==0){8v=7p.kN}1b 8v<7p.j3},E7:1a(9g){K 2P=J;if(9g==2r){9g=J.mR()}J.r6(J.gM(),9g);K 8t=0;J.jn().2g(1a(i,e){K fe=i+8t;K 1k=0;if(e.jp["8t"]){K 2w=0+e.jp["8t"].1n-1;1o(K j=0;j<=2w;j++){1k+=2P.5W[fe+j]}8t+=2w}1i{1k=2P.5W[fe]}if(fe==2P.5W.1e-1){1k+=9g?2P.r1:0}2P.jo(e,1k,1c,1m)})},kI:1a(){if(!J.1f.is(":5y")){1b}J.EL();J.r6()},Ea:1a(){K 2P=J;J.sl().2g(1a(i,e){2P.jo(e,2P.5W[i])})},EL:1a(){K 2P=J;K aE=J.mR();K 1k=J.gM();if(aE&&!J.Ep){1k-=J.r1}J.Ep=aE;J.rk(1k);J.Ea();2P.5W=J.Gg();J.E7();2P.5W=J.Ge();J.Ea();J.E7();J.rk(J.5W)},Ge:1a(){K 2P=J;K bF=J.jn();K 1J=J.jU().bp(1a(i,e){K 1k=0;if(e.2x.4L=="3j"){1k=$(e).8h()}1i{1k=2P.f9(e)}K a5=2P.G8(i,bF);if(a5){K jD=2P.f9(a5);1k=3m.47(1k,jD)}1b 1k}).4b();1b 1J},Gg:1a(){K 2P=J;K 1J=J.jU().bp(1a(i,e){K 1k=0;if(e.2x.4L=="3j"){1k=$(e).8h()}1i{1k=2P.f9(e)}1b 1k}).4b();1b 1J},gM:1a(5W){if(5W==2r){5W=J.5W}K bv=0;K 5J=J.sl();1o(K i=0;i<5W.1e;i++){if(5J.1e<i&&(5J[i]!=1c&&5J[i].2x.4L=="3j")){bv+=0}1i{bv+=5W[i]}}1b bv},k2:1a(1k,9g){if(1k==2r){1k=J.5W}if(3K.aM(1k)){1k=J.gM(1k)}J.rk(1k);J.r6(1k,9g)},rk:1a(1k){1b;if(1k==2r){1k=J.5W}if(3K.aM(1k)){1k=J.gM(1k)}K 3x=J.ju();3x.1k(1k)},r6:1a(1k,9g){1b;if(1k==2r){1k=J.5W}if(3K.aM(1k)){1k=J.gM(1k)}if(9g==2r){9g=J.mR()}K cv=J.jE();K jD=1k+(9g?J.r1:0);jD=jD;J.1f.1N().2h(".g2-7A").1k(jD)},Gl:1a(){if(J.DM==1c){J.DM=J.1f.2h("> 7p")}1b J.DM},C1:1a(){K 13M=J.1f.1s()-J.1f.2h("7A").bp(1a(i,e){1b $(e).1e?$(e).6B():0}).4b().rq(1a(3I,5I){1b 3I+5I},0)},G5:1a(hH){K 9p=$("<9p/>");K bF=J.jU();1o(K i=0;i<bF.1e;i++){K 5N=$(bF[i]);K hZ=$("<hZ />");K 8t=5N.1l("8t");if(1M(8t)){8t=1}1i{8t=61(8t)}hZ.1l("2w",8t);hZ.1l("2u",5N.1l("2u"));if(5N.2F("4L")=="3j"){hZ.2F("4L",5N.2F("4L"))}K 1k=hH[i];hZ.1k(1k);9p.2X(hZ)}1b 9p},pq:1a(){J.13L();K 2P=J;J.5W=[];J.k6=1j;K $1B=J.$1f=J.1f;J.ka=J.1f.is(":5y");J.r1=2C.2N.13I();J.3V=J.Cx(J.1v.1k,J.1v.1s);J.cq=J.GZ(J.1v.cq);J.nF=$1B.2h("> 7p > tr").68().1e;J.8d=J.H1(J.1v.8d);J.8g={};J.8g.1B=$1B.1l("2x");J.8g.7A=$1B.2h("> 7A").1l("2x");J.8g.Bl=$1B.2h("> 7A > tr").1l("2x");J.8g.k3=$1B.2h("> k3").1l("2x");J.8g.Bn=$1B.2h("> k3 > tr").1l("2x");J.8g.7p=$1B.2h("> 7p").1l("2x");J.3V={"1k":J.3V.1k!==1c?J.3V.1k:J.f9($1B),"1s":J.3V.1s!==1c?J.3V.1s:J.FM($1B)};J.gG={"1k":J.3V.1k-($1B.8h()-$1B.1k()),"1s":J.3V.1s-($1B.6B()-$1B.1s())};K aE=J.Fa?"8J":"5C";K Ff=$1B.1N().1k()-3;J.5W=J.Fk();$1B.2F({});K Fd=$1B.2h("7A > tr").6B();if(Fd<=20){r3=Fd+"px"}1i{r3="1.13t"}if(J.ka){$1B.2h("> 7A").2F({"1s":r3});$1B.2F({"iT-1C":r3})}K 1C=$1B.2h("7A").6B()+cm($1B.2F("AB-1C"));if(1C<10){1C=22}J.ju().1l("2u",$1B.1l("2u"));J.GT();$("#qb-ui-3s 1B")[0].2x.1k=Ff+"px";$("#qb-ui-3s 1B")[0].2x["5H-1k"]=Ff+"px";if(J.ka){J.C1()}J.dH={};J.5W=J.Fk();J.k2(J.5W);J.1f.2h("7A").3z();$("#qb-ui-3s 1B")[0].2x.1k="";$("#qb-ui-3s 1B")[0].2x["5H-1k"]="";if(J.8d.4m!=1c){K qW=J.FH();J.jn().2g(1a(i,e){if(2P.8d.4m[i]&&$(e).4H("Pl-5K")){if(2P.8d.oc!=1c){qW["8M"]=2P.8d.oc[i]}if(2P.8d.nX!=1c){qW["bV"]=2P.8d.nX[i]}$(e).4m(qW)}})}if(!2P.dH.x){2P.GN($1B.2h("> 7p").4b(0),{"8J":1a(1K){K 2d=-1*$(1K.3g).4P();2P.jE().2F("1W",2d+"px")}});2P.dH.x=1m}K 9p=J.G5(J.5W);J.FX().vS(9p);J.kI();if(1m){$(3n).on("4T",1a(){if(!2P.ka){if(2P.1f.is(":5y")){2P.ka=1m;2P.kI()}}})}t9=1j;$(3n).5K(1a(){if(t9===1m){1b}2P.kI()})},GT:1a(){J.$w=$(3n);J.$t=J.1f;J.$7A=J.$t.2h("7A").65();if(J.$t.4H("d5-y")){J.$t.3S("d5-y").1N().2o("d5-y")}J.$t.q4(\'<1B 2u="g2-7A" />\');J.$jy=J.1f.BY(".g2-7A");J.$qJ=J.1f.1N(".g2-pw");J.$jy.2X(J.$7A);K me=J;J.$t.1N(".g2-pw").8J(1a(){me.qM()});J.$w.5K(1a(){me.qM()}).8J(1a(){me.qM()})},qM:1a(){K GS=0;if(1m||J.$t.1s()>J.$qJ.1s()){if(1m||J.$qJ.4t()>0){J.$jy.2F({2Q:1,1C:J.$qJ.4t()})}1i{J.$jy.2F({2Q:1,1C:0})}}1i{if(J.$w.4t()>J.$t.2d().1C&&J.$w.4t()<J.$t.2d().1C+J.$t.6B()-GS){J.$jy.2F({1C:J.$w.4t()-J.$t.2d().1C})}1i{J.$jy.2F({1C:0})}}},14a:1a(){K 2P=J;if(J.8d.4m!==1c){J.jn().2g(1a(i,e){if(2P.8d.4m[i]){$(e).4m("5R")}})}J.ju().2h("7p").rj().rj().rj().rj();J.1f.2h("> 7A").2h("> tr").1l("2x",2A J.8g.Bl==="2r"?1c:J.8g.Bl).4n().1l("2x",2A J.8g.7A==="2r"?1c:J.8g.7A).4n().2h("> k3").2h("> tr").1l("2x",2A J.8g.Bn==="2r"?1c:J.8g.Bn).4n().1l("2x",2A J.8g.k3==="2r"?1c:J.8g.k3).4n().2h("> 7p").1l("2x",2A J.8g.7p==="2r"?1c:J.8g.7p).4n().1l("2x",2A J.8g.1B==="2r"?1c:J.8g.1B);J.jn().2g(1a(i,e){$(e).2F("1k","")})},gh:1a(1n){1b 1n===1c||2A 1n=="2r"},Cx:1a(1k,1s){K 3V={};if(J.gh(1k)||!J.D4(1k)){3V.1k=1c}1i{3V.1k=1k}if(J.gh(1s)||!J.D4(1s)){3V.1s=1c}1i{3V.1s=1s}1b 3V},GZ:1a(1n){K cq;if(1n===1m){cq={"x":1m,"y":1m}}1i{if(1n=="x"){cq={"x":1m,"y":1j}}1i{if(1n=="y"){cq={"x":1j,"y":1m}}1i{if($.aM(1n)){cq={"x":$.rL("x",1n),"y":$.rL("y",1n)}}1i{cq={"x":1j,"y":1j}}}}}1b cq},H1:1a(8d){K 74={};74["4m"]=J.gh(8d)?1c:J.H2(8d.4m);74["oc"]=J.gh(8d)?1c:J.D2(8d.oc);74["nX"]=J.gh(8d)?1c:J.D2(8d.nX);1b 74},H2:1a(4m){K 74=[];if(J.gh(4m)){1b 1c}1i{if($.b7(4m)){74=4m()}1i{if($.aM(4m)){74=4m}1i{if(4m===1m){1o(K i=0;i<J.nF;i++){74[i]=1m}1b 74}1i{1b 1c}}}}if(!$.aM(74)||(74.1e!=J.nF||!74.nf(1a(1n){1b 1n===1m||1n===1j}))){1b 1c}1b 74},13Z:1a(1n){1b+1n==3m.ei(+1n)},D8:1a(1n){1b+1n==3m.ei(+1n)&&+1n>=0},D4:1a(1n){1b+1n==3m.ei(+1n)&&+1n>0},D2:1a(1k){K 74=[];if(J.gh(1k)){1b 1c}1i{if($.b7(1k)){74=1k()}1i{if($.aM(1k)){74=1k}1i{if(J.D8(1k)){K 1n=+1k;1o(K i=0;i<J.nF;i++){74[i]=1n}1b 74}1i{1b 1c}}}}K 2P=J;if(!$.aM(74)||(74.1e!=J.nF||!74.nf(1a(1n){1b 2P.D8(1n)}))){1b 1c}1b 74},Cv:1a(hH,Dc,nm){if(2A nm=="2r"){nm=0;1o(K i=0;i<hH.1e;i++){nm+=hH[i]}}K 7N=Dc/nm;K nj=[];K Df=0;1o(K i=0;i<hH.1e-1;i++){nj[i]=3m.4U(7N*hH[i]);Df+=nj[i]}nj[i]=Dc-Df;1b nj},5K:1a(1k,1s){K 2P=J;K jI=J.Cx(1k,1s);K $1B=J.1f;if(jI.1k!=1c){$1B.2F("1k",1k);J.3V.1k=jI.1k;J.gG.1k=jI.1k-($1B.8h()-$1B.1k());K bv=J.gM();if(J.cq.x){if(J.dH.x||!J.1v.DB){K CS=J.dH.x;K CD=J.GL($1B.2h("> 7p")).x;if(!CS&&CD){J.GN($1B.2h("> 7p").4b(0),{"8J":1a(1K){K 2d=-1*$(1K.3g).4P();2P.jE().2F("1W",2d+"px")}});J.k2(bv);J.dH.x=1m}1i{if(CS&&!CD){J.Fw($1B.2h("> 7p"),"8J");J.dH.x=1j}}}1i{J.5W=J.Cv(J.5W,J.gG.1k,bv);if(J.dH.x){J.ju().2h("7p").2F("1k","");J.jE().1k(J.gG.1k+"px");J.Fw($1B.2h("> 7p"),"8J");J.dH.x=1j}}}1i{if(bv!=J.gG.1k){J.5W=J.Cv(J.5W,J.gG.1k,bv)}}$1B.68().2F("1k",J.gG.1k+"px")}if(1s!=1c){J.3V.1s=jI.1s;J.gG.1s=jI.1s-($1B.6B()-$1B.1s());J.C1()}J.7k()},7k:1a(){J.EL()},3x:1a(3b){J.ju().2h("7p").3O(3b);J.7k()},14p:1a(1f){1b $(1f).1T()},Dv:1a(1f){K bF=J.jn();K 1J=0;1o(K i=0;i<bF.1e;i++){K 5N=bF[i];if(5N.jp["8t"]){1J+=0+5N.jp["8t"].1n-1}if(5N==1f){1r}1J++}1b 1J},FH:1a(){K 2P=J;K $1B=J.1f;K $a5;K jQ;K DA;K 9C;K ff=[];K 4F=0;K 9g;K Fs;K mA=0;K sY;K t5;K i3=0;1b{eZ:"e",2T:1a(1K,ui){$a5=ui.1f;i3=2P.f9($a5);DA=2P.Dv(ui.1f[0]);9C=2P.Dv(ui.1f[0]);sY=2P.sl()[DA];jQ=2P.jU()[9C];2P.k6=1j;t9=1m;9g=2P.mR();Fs=$(jQ).8h()-$(jQ).1k();mA=2P.gM()},5K:1a(1K,ui){if(2P.k6){1b}2P.k6=1m;K E3=ui.3V.1k-ui.i3.1k;if(E3==4F){1b}4F=E3;1o(K i=0;i<2P.5W.1e;i++){ff[i]=2P.5W[i]}2P.k2(mA+4F,9g);2P.jo(sY,ff[9C]+4F);2P.jo(jQ,ff[9C]+4F);t5=3m.47(2P.f9(jQ),2P.f9($a5));if(ff[9C]+4F<t5){4F=t5-i3;2P.k2(mA+4F,9g);2P.jo(sY,ff[9C]+4F);2P.jo(ui.1f,ff[9C]+4F);2P.k2(mA+4F,9g)}2P.k6=1j;ff[9C]+=4F},5S:1a(1K,ui){t9=1j;2P.k6=1j;1o(K i=0;i<2P.5W.1e;i++){2P.5W[i]=ff[i]}2P.kI()}}}})});(1a(jW){K 6d="0.4.2",3A="81",5B=/[\\.\\/]/,BX="*",iQ=1a(){},JD=1a(a,b){1b a-b},iF,5S,4N={n:{}},31=1a(1x,a9){1x=5E(1x);K e=4N,ET=5S,2k=3K.2V.3N.2B(2v,2),ew=31.ew(1x),z=0,f=1j,l,iA=[],ds={},2q=[],ce=iF,13s=[];iF=1x;5S=0;1o(K i=0,ii=ew.1e;i<ii;i++){if("4x"in ew[i]){iA.1I(ew[i].4x);if(ew[i].4x<0){ds[ew[i].4x]=ew[i]}}}iA.g5(JD);44(iA[z]<0){l=ds[iA[z++]];2q.1I(l.3i(a9,2k));if(5S){5S=ET;1b 2q}}1o(i=0;i<ii;i++){l=ew[i];if("4x"in l){if(l.4x==iA[z]){2q.1I(l.3i(a9,2k));if(5S){1r}do{z++;l=ds[iA[z]];l&&2q.1I(l.3i(a9,2k));if(5S){1r}}44(l)}1i{ds[l.4x]=l}}1i{2q.1I(l.3i(a9,2k));if(5S){1r}}}5S=ET;iF=ce;1b 2q.1e?2q:1c};31.ee=4N;31.ew=1a(1x){K 7y=1x.3C(5B),e=4N,1h,1H,k,i,ii,j,jj,sL,es=[e],2q=[];1o(i=0,ii=7y.1e;i<ii;i++){sL=[];1o(j=0,jj=es.1e;j<jj;j++){e=es[j].n;1H=[e[7y[i]],e[BX]];k=2;44(k--){1h=1H[k];if(1h){sL.1I(1h);2q=2q.3L(1h.f||[])}}}es=sL}1b 2q};31.on=1a(1x,f){1x=5E(1x);if(2A f!="1a"){1b 1a(){}}K 7y=1x.3C(5B),e=4N;1o(K i=0,ii=7y.1e;i<ii;i++){e=e.n;e=e.81(7y[i])&&e[7y[i]]||(e[7y[i]]={n:{}})}e.f=e.f||[];1o(i=0,ii=e.f.1e;i<ii;i++){if(e.f[i]==f){1b iQ}}e.f.1I(f);1b 1a(4x){if(+4x==+4x){f.4x=+4x}}};31.f=1a(1K){K 2i=[].3N.2B(2v,1);1b 1a(){31.3i(1c,[1K,1c].3L(2i).3L([].3N.2B(2v,0)))}};31.5S=1a(){5S=1};31.nt=1a(C5){if(C5){1b(1U dQ("(?:\\\\.|\\\\/|^)"+C5+"(?:\\\\.|\\\\/|$)")).9t(iF)}1b iF};31.13b=1a(){1b iF.3C(5B)};31.dU=31.8q=1a(1x,f){if(!1x){31.ee=4N={n:{}};1b}K 7y=1x.3C(5B),e,1q,5v,i,ii,j,jj,ip=[4N];1o(i=0,ii=7y.1e;i<ii;i++){1o(j=0;j<ip.1e;j+=5v.1e-2){5v=[j,1];e=ip[j].n;if(7y[i]!=BX){if(e[7y[i]]){5v.1I(e[7y[i]])}}1i{1o(1q in e){if(e[3A](1q)){5v.1I(e[1q])}}}ip.5v.3i(ip,5v)}}1o(i=0,ii=ip.1e;i<ii;i++){e=ip[i];44(e.n){if(f){if(e.f){1o(j=0,jj=e.f.1e;j<jj;j++){if(e.f[j]==f){e.f.5v(j,1);1r}}!e.f.1e&&4a e.f}1o(1q in e.n){if(e.n[3A](1q)&&e.n[1q].f){K q6=e.n[1q].f;1o(j=0,jj=q6.1e;j<jj;j++){if(q6[j]==f){q6.5v(j,1);1r}}!q6.1e&&4a e.n[1q].f}}}1i{4a e.f;1o(1q in e.n){if(e.n[3A](1q)&&e.n[1q].f){4a e.n[1q].f}}}e=e.n}}};31.13H=1a(1x,f){K f2=1a(){31.8q(1x,f2);1b f.3i(J,2v)};1b 31.on(1x,f2)};31.6d=6d;31.3D=1a(){1b"PP qY zw 13F "+6d};2A iI!="2r"&&iI.rK?iI.rK=31:2A cQ!="2r"?cQ("31",[],1a(){1b 31}):jW.31=31})(3n||J);(1a(jW,dL){if(2A cQ==="1a"&&cQ.yo){cQ(["31"],1a(31){1b dL(jW,31)})}1i{dL(jW,jW.31)}})(J,1a(3n,31){1a R(4c){if(R.is(4c,"1a")){1b bL?4c():31.on("4j.m5",4c)}1i{if(R.is(4c,42)){1b R.4R.7Q[3i](R,4c.5v(0,3+R.is(4c[0],nu))).5l(4c)}1i{K 2k=3K.2V.3N.2B(2v,0);if(R.is(2k[2k.1e-1],"1a")){K f=2k.dM();1b bL?f.2B(R.4R.7Q[3i](R,2k)):31.on("4j.m5",1a(){f.2B(R.4R.7Q[3i](R,2k))})}1i{1b R.4R.7Q[3i](R,2v)}}}}R.6d="2.1.2";R.31=31;K bL,5B=/[, ]+/,aC={9U:1,4p:1,1L:1,b2:1,28:1,9b:1},J5=/\\{(\\d+)\\}/g,kg="2V",3A="81",g={3c:2E,5q:3n},sG={AJ:4I.2V[3A].2B(g.5q,"b4"),is:g.5q.b4},CC=1a(){J.ca=J.9m={}},6o,3W="3W",3i="3i",3L="3L",oN="13J"in g.5q||g.5q.IY&&g.3c eM IY,E="",S=" ",4d=5E,3C="3C",4N="3y Dj 7v aa fo j9 6E qd qa qc D5"[3C](S),ol={7v:"qd",aa:"qa",6E:"qc"},p7=4d.2V.3P,3M=3m,5a=3M.47,6a=3M.5H,4l=3M.4l,6g=3M.6g,PI=3M.PI,nu="aI",4i="4i",42="42",3D="3D",hN="2e",Kh=4I.2V.3D,2I={},1I="1I",13x=R.zs=/^5b\\([\'"]?([^\\)]+?)[\'"]?\\)$/i,JQ=/^\\s*((#[a-f\\d]{6})|(#[a-f\\d]{3})|Ab?\\(\\s*([\\d\\.]+%?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+%?(?:\\s*,\\s*[\\d\\.]+%?)?)\\s*\\)|JJ?\\(\\s*([\\d\\.]+(?:4B|\\B5|%)?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+(?:%?\\s*,\\s*[\\d\\.]+)?)%?\\s*\\)|K2?\\(\\s*([\\d\\.]+(?:4B|\\B5|%)?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+(?:%?\\s*,\\s*[\\d\\.]+)?)%?\\s*\\))\\s*$/i,Ki={"13u":1,"IT":1,"-IT":1},JY=/^(?:13y-)?13B\\(([^,]+),([^,]+),([^,]+),([^\\)]+)\\)/,4U=3M.4U,bQ="bQ",3U=cm,ae=61,ED=4d.2V.8Z,HA=R.lE={"bE-4n":"3j","bE-2T":"3j",57:0,"6s-4p":"0 0 IU IU",lP:"5m",cx:0,cy:0,2e:"#kO","2e-2Q":1,2U:\'13C "J3"\',"2U-8A":\'"J3"\',"2U-3V":"10","2U-2x":"t6","2U-al":mf,46:0,1s:0,5h:"6G://13A.AV/","14V-14X":0,2Q:1,1L:"M0,0",r:0,rx:0,ry:0,4k:"",2b:"#d4","2b-9B":"","2b-cY":"kB","2b-hf":"kB","2b-oD":0,"2b-2Q":1,"2b-1k":1,3g:"153","28-zO":"yM",6m:"b4",3T:"",1k:0,x:0,y:0},sT=R.157={57:nu,"6s-4p":"wQ",cx:nu,cy:nu,2e:"az","2e-2Q":nu,"2U-3V":nu,1s:nu,2Q:nu,1L:"1L",r:nu,rx:nu,ry:nu,2b:"az","2b-2Q":nu,"2b-1k":nu,3T:"3T",1k:nu,x:nu,y:nu},Ja=/[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]/g,s7=/[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*,[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*/,JO={hs:1,rg:1},Kt=/,?([14Y]),?/gi,IQ=/([14T])[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*,?[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*)+)/ig,HH=/([14Z])[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*,?[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*)+)/ig,Bz=/(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*,?[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*/ig,156=R.zC=/^r(?:\\(([^,]+?)[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*,[\\aY\\b3\\b1\\b0\\bj\\b8\\aK\\aL\\aS\\aJ\\aU\\bG\\aP\\aO\\aG\\bh\\aZ\\b5\\ba\\aT\\aQ\\bs\\bo\\bl\\bn]*([^\\)]+?)\\))?/,jd={},10G=1a(a,b){1b a.1q-b.1q},HD=1a(a,b){1b 3U(a)-3U(b)},iQ=1a(){},JV=1a(x){1b x},ok=R.yY=1a(x,y,w,h,r){if(r){1b[["M",x+r,y],["l",w-r*2,0],["a",r,r,0,0,1,r,r],["l",0,h-r*2],["a",r,r,0,0,1,-r,r],["l",r*2-w,0],["a",r,r,0,0,1,-r,-r],["l",0,r*2-h],["a",r,r,0,0,1,r,-r],["z"]]}1b[["M",x,y],["l",w,0],["l",0,h],["l",-w,0],["z"]]},CA=1a(x,y,rx,ry){if(ry==1c){ry=rx}1b[["M",x,y],["m",0,-ry],["a",rx,ry,0,1,1,0,2*ry],["a",rx,ry,0,1,1,0,-2*ry],["z"]]},cG=R.zp={1L:1a(el){1b el.1l("1L")},9U:1a(el){K a=el.2i;1b CA(a.cx,a.cy,a.r)},b2:1a(el){K a=el.2i;1b CA(a.cx,a.cy,a.rx,a.ry)},4p:1a(el){K a=el.2i;1b ok(a.x,a.y,a.1k,a.1s,a.r)},9b:1a(el){K a=el.2i;1b ok(a.x,a.y,a.1k,a.1s)},28:1a(el){K 3d=el.mc();1b ok(3d.x,3d.y,3d.1k,3d.1s)},5M:1a(el){K 3d=el.mc();1b ok(3d.x,3d.y,3d.1k,3d.1s)}},ql=R.ql=1a(1L,4O){if(!4O){1b 1L}K x,y,i,j,ii,jj,fw;1L=iJ(1L);1o(i=0,ii=1L.1e;i<ii;i++){fw=1L[i];1o(j=1,jj=fw.1e;j<jj;j+=2){x=4O.x(fw[j],fw[j+1]);y=4O.y(fw[j],fw[j+1]);fw[j]=x;fw[j+1]=y}}1b 1L};R.7M=g;R.1y=g.5q.10B||g.3c.10C.10L("6G://pP.w3.ra/TR/10M/10N#10K","1.1")?"dm":"i8";if(R.1y=="i8"){K d=g.3c.dC("2H"),b;d.ot=\'<v:dc Ke="1"/>\';b=d.7R;b.2x.QW="5b(#5m#i8)";if(!(b&&2A b.Ke=="1F")){1b R.1y=E}d=1c}R.3Z=!(R.66=R.1y=="i8");R.AS=CC;R.fn=6o=CC.2V=R.2V;R.10I=0;R.yI=0;R.is=1a(o,1y){1y=p7.2B(1y);if(1y=="n4"){1b!Ki[3A](+o)}if(1y=="42"){1b o eM 3K}1b 1y=="1c"&&o===1c||(1y==2A o&&o!==1c||(1y=="1F"&&o===4I(o)||(1y=="42"&&(3K.aM&&3K.aM(o))||Kh.2B(o).3N(8,-1).3P()==1y)))};1a 65(1w){if(2A 1w=="1a"||4I(1w)!==1w){1b 1w}K 1A=1U 1w.5f;1o(K 1q in 1w){if(1w[3A](1q)){1A[1q]=65(1w[1q])}}1b 1A}R.7G=1a(x1,y1,x2,y2,x3,y3){if(x3==1c){K x=x1-x2,y=y1-y2;if(!x&&!y){1b 0}1b(cI+3M.Ce(-y,-x)*cI/PI+92)%92}1i{1b R.7G(x1,y1,x3,y3)-R.7G(x2,y2,x3,y3)}};R.9o=1a(4B){1b 4B%92*PI/cI};R.4B=1a(9o){1b 9o*cI/PI%92};R.10z=1a(2S,1n,eA){eA=R.is(eA,"n4")?eA:10;if(R.is(2S,42)){K i=2S.1e;44(i--){if(4l(2S[i]-1n)<=eA){1b 2S[i]}}}1i{2S=+2S;K oj=1n%2S;if(oj<eA){1b 1n-oj}if(oj>2S-eA){1b 1n-oj+2S}}1b 1n};K mV=R.mV=1a(K9,K8){1b 1a(){1b"10p-10q-10r-10o-10l".3p(K9,K8).8Z()}}(/[xy]/g,1a(c){K r=3M.kj()*16|0,v=c=="x"?r:r&3|8;1b v.3D(16)});R.Kc=1a(De){31("4j.Kc",R,g.5q,De);g.5q=De;g.3c=g.5q.2E;if(R.4R.sB){R.4R.sB(g.5q)}};K pB=1a(3F){if(R.66){K oA=/^\\s+|\\s+$/g;K oz;6X{K s9=1U sb("10v");s9.10s("<3x>");s9.5U();oz=s9.3x}6U(e){oz=10u().2E.3x}K hk=oz.B0();pB=bZ(1a(3F){6X{oz.2x.3F=4d(3F).3p(oA,E);K 1n=hk.118("119");1n=(1n&fr)<<16|1n&116|(1n&113)>>>16;1b"#"+("S7"+1n.3D(16)).3N(-6)}6U(e){1b"3j"}})}1i{K i=g.3c.dC("i");i.6m="ht\\hv 114 115";i.2x.4L="3j";g.3c.3x.3W(i);pB=bZ(1a(3F){i.2x.3F=3F;1b g.3c.ly.sj(i,E).Gw("3F")})}1b pB(3F)},Ks=1a(){1b"K3("+[J.h,J.s,J.b]+")"},Ku=1a(){1b"JW("+[J.h,J.s,J.l]+")"},Da=1a(){1b J.6j},Dp=1a(r,g,b){if(g==1c&&(R.is(r,"1F")&&("r"in r&&("g"in r&&"b"in r)))){b=r.b;g=r.g;r=r.r}if(g==1c&&R.is(r,4i)){K 3J=R.cU(r);r=3J.r;g=3J.g;b=3J.b}if(r>1||(g>1||b>1)){r/=fr;g/=fr;b/=fr}1b[r,g,b]},Dd=1a(r,g,b,o){r*=fr;g*=fr;b*=fr;K 3Y={r:r,g:g,b:b,6j:R.3Y(r,g,b),3D:Da};R.is(o,"n4")&&(3Y.2Q=o);1b 3Y};R.3F=1a(3J){K 3Y;if(R.is(3J,"1F")&&("h"in 3J&&("s"in 3J&&"b"in 3J))){3Y=R.pE(3J);3J.r=3Y.r;3J.g=3Y.g;3J.b=3Y.b;3J.6j=3Y.6j}1i{if(R.is(3J,"1F")&&("h"in 3J&&("s"in 3J&&"l"in 3J))){3Y=R.rR(3J);3J.r=3Y.r;3J.g=3Y.g;3J.b=3Y.b;3J.6j=3Y.6j}1i{if(R.is(3J,"4i")){3J=R.cU(3J)}if(R.is(3J,"1F")&&("r"in 3J&&("g"in 3J&&"b"in 3J))){3Y=R.Kr(3J);3J.h=3Y.h;3J.s=3Y.s;3J.l=3Y.l;3Y=R.Ka(3J);3J.v=3Y.b}1i{3J={6j:"3j"};3J.r=3J.g=3J.b=3J.h=3J.s=3J.v=3J.l=-1}}}3J.3D=Da;1b 3J};R.pE=1a(h,s,v,o){if(J.is(h,"1F")&&("h"in h&&("s"in h&&"b"in h))){v=h.b;s=h.s;h=h.h;o=h.o}h*=92;K R,G,B,X,C;h=h%92/60;C=v*s;X=C*(1-4l(h%2-1));R=G=B=v-C;h=~~h;R+=[C,X,0,0,X,C][h];G+=[X,C,C,X,0,0][h];B+=[0,0,X,C,C,X][h];1b Dd(R,G,B,o)};R.rR=1a(h,s,l,o){if(J.is(h,"1F")&&("h"in h&&("s"in h&&"l"in h))){l=h.l;s=h.s;h=h.h}if(h>1||(s>1||l>1)){h/=92;s/=100;l/=100}h*=92;K R,G,B,X,C;h=h%92/60;C=2*s*(l<0.5?l:1-l);X=C*(1-4l(h%2-1));R=G=B=l-C/2;h=~~h;R+=[C,X,0,0,X,C][h];G+=[X,C,C,X,0,0][h];B+=[0,0,X,C,C,X][h];1b Dd(R,G,B,o)};R.Ka=1a(r,g,b){b=Dp(r,g,b);r=b[0];g=b[1];b=b[2];K H,S,V,C;V=5a(r,g,b);C=V-6a(r,g,b);H=C==0?1c:V==r?(g-b)/ C : V == g ? (b - r) /C+2:(r-g)/C+4;H=(H+92)%6*60/92;S=C==0?0:C/V;1b{h:H,s:S,b:V,3D:Ks}};R.Kr=1a(r,g,b){b=Dp(r,g,b);r=b[0];g=b[1];b=b[2];K H,S,L,M,m,C;M=5a(r,g,b);m=6a(r,g,b);C=M-m;H=C==0?1c:M==r?(g-b)/ C : M == g ? (b - r) /C+2:(r-g)/C+4;H=(H+92)%6*60/92;L=(M+m)/2;S=C==0?0:L<0.5?C/ (2 * L) : C /(2-2*L);1b{h:H,s:S,l:L,3D:Ku}};R.lO=1a(){1b J.54(",").3p(Kt,"$1")};1a Km(42,1h){1o(K i=0,ii=42.1e;i<ii;i++){if(42[i]===1h){1b 42.1I(42.5v(i,1)[0])}}}1a bZ(f,a9,ox){1a jT(){K 4r=3K.2V.3N.2B(2v,0),2k=4r.54("\\10S"),8p=jT.8p=jT.8p||{},6u=jT.6u=jT.6u||[];if(8p[3A](2k)){Km(6u,2k);1b ox?ox(8p[2k]):8p[2k]}6u.1e>=9a&&4a 8p[6u.cc()];6u.1I(2k);8p[2k]=f[3i](a9,4r);1b ox?ox(8p[2k]):8p[2k]}1b jT}K 10O=R.zt=1a(4k,f){K cW=g.3c.dC("cW");cW.2x.gc="2N:8H;1W:-lZ;1C:-lZ";cW.jm=1a(){f.2B(J);J.jm=1c;g.3c.3x.7B(J)};cW.10P=1a(){g.3c.3x.7B(J)};g.3c.3x.3W(cW);cW.4k=4k};1a pD(){1b J.6j}R.cU=bZ(1a(az){if(!az||!!((az=4d(az)).4S("-")+1)){1b{r:-1,g:-1,b:-1,6j:"3j",5d:1,3D:pD}}if(az=="3j"){1b{r:-1,g:-1,b:-1,6j:"3j",3D:pD}}!(JO[3A](az.3P().gb(0,2))||az.bi()=="#")&&(az=pB(az));K 1A,9P,bP,bf,2Q,t,2S,3Y=az.3k(JQ);if(3Y){if(3Y[2]){bf=ae(3Y[2].gb(5),16);bP=ae(3Y[2].gb(3,5),16);9P=ae(3Y[2].gb(1,3),16)}if(3Y[3]){bf=ae((t=3Y[3].bi(3))+t,16);bP=ae((t=3Y[3].bi(2))+t,16);9P=ae((t=3Y[3].bi(1))+t,16)}if(3Y[4]){2S=3Y[4][3C](s7);9P=3U(2S[0]);2S[0].3N(-1)=="%"&&(9P*=2.55);bP=3U(2S[1]);2S[1].3N(-1)=="%"&&(bP*=2.55);bf=3U(2S[2]);2S[2].3N(-1)=="%"&&(bf*=2.55);3Y[1].3P().3N(0,4)=="Ab"&&(2Q=3U(2S[3]));2S[3]&&(2S[3].3N(-1)=="%"&&(2Q/=100))}if(3Y[5]){2S=3Y[5][3C](s7);9P=3U(2S[0]);2S[0].3N(-1)=="%"&&(9P*=2.55);bP=3U(2S[1]);2S[1].3N(-1)=="%"&&(bP*=2.55);bf=3U(2S[2]);2S[2].3N(-1)=="%"&&(bf*=2.55);(2S[0].3N(-3)=="4B"||2S[0].3N(-1)=="\\JT")&&(9P/=92);3Y[1].3P().3N(0,4)=="JJ"&&(2Q=3U(2S[3]));2S[3]&&(2S[3].3N(-1)=="%"&&(2Q/=100));1b R.pE(9P,bP,bf,2Q)}if(3Y[6]){2S=3Y[6][3C](s7);9P=3U(2S[0]);2S[0].3N(-1)=="%"&&(9P*=2.55);bP=3U(2S[1]);2S[1].3N(-1)=="%"&&(bP*=2.55);bf=3U(2S[2]);2S[2].3N(-1)=="%"&&(bf*=2.55);(2S[0].3N(-3)=="4B"||2S[0].3N(-1)=="\\JT")&&(9P/=92);3Y[1].3P().3N(0,4)=="K2"&&(2Q=3U(2S[3]));2S[3]&&(2S[3].3N(-1)=="%"&&(2Q/=100));1b R.rR(9P,bP,bf,2Q)}3Y={r:9P,g:bP,b:bf,3D:pD};3Y.6j="#"+(JU|bf|bP<<8|9P<<16).3D(16).3N(1);R.is(2Q,"n4")&&(3Y.2Q=2Q);1b 3Y}1b{r:-1,g:-1,b:-1,6j:"3j",5d:1,3D:pD}},R);R.K3=bZ(1a(h,s,b){1b R.pE(h,s,b).6j});R.JW=bZ(1a(h,s,l){1b R.rR(h,s,l).6j});R.3Y=bZ(1a(r,g,b){1b"#"+(JU|b|g<<8|r<<16).3D(16).3N(1)});R.po=1a(1n){K 2T=J.po.2T=J.po.2T||{h:0,s:1,b:1n||0.75},3Y=J.pE(2T.h,2T.s,2T.b);2T.h+=0.Hc;if(2T.h>1){2T.h=0;2T.s-=0.2;2T.s<=0&&(J.po.2T={h:0,s:1,b:2T.b})}1b 3Y.6j};R.po.mj=1a(){4a J.2T};1a EC(7S,z){K d=[];1o(K i=0,hM=7S.1e;hM-2*!z>i;i+=2){K p=[{x:+7S[i-2],y:+7S[i-1]},{x:+7S[i],y:+7S[i+1]},{x:+7S[i+2],y:+7S[i+3]},{x:+7S[i+4],y:+7S[i+5]}];if(z){if(!i){p[0]={x:+7S[hM-2],y:+7S[hM-1]}}1i{if(hM-4==i){p[3]={x:+7S[0],y:+7S[1]}}1i{if(hM-2==i){p[2]={x:+7S[0],y:+7S[1]};p[3]={x:+7S[2],y:+7S[3]}}}}}1i{if(hM-4==i){p[3]=p[2]}1i{if(!i){p[0]={x:+7S[i],y:+7S[i+1]}}}}d.1I(["C",(-p[0].x+6*p[1].x+p[2].x)/ 6, (-p[0].y + 6 * p[1].y + p[2].y) /6,(p[1].x+6*p[2].x-p[3].x)/ 6, (p[1].y + 6 * p[2].y - p[3].y) /6,p[2].x,p[2].y])}1b d}R.EI=1a(8V){if(!8V){1b 1c}K 85=fY(8V);if(85.nI){1b c8(85.nI)}K oW={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},1g=[];if(R.is(8V,42)&&R.is(8V[0],42)){1g=c8(8V)}if(!1g.1e){4d(8V).3p(IQ,1a(a,b,c){K 1z=[],1x=b.3P();c.3p(Bz,1a(a,b){b&&1z.1I(+b)});if(1x=="m"&&1z.1e>2){1g.1I([b][3L](1z.5v(0,2)));1x="l";b=b=="m"?"l":"L"}if(1x=="r"){1g.1I([b][3L](1z))}1i{44(1z.1e>=oW[1x]){1g.1I([b][3L](1z.5v(0,oW[1x])));if(!oW[1x]){1r}}}})}1g.3D=R.lO;85.nI=c8(1g);1b 1g};R.sa=bZ(1a(jK){if(!jK){1b 1c}K oW={r:3,s:4,t:2,m:6},1g=[];if(R.is(jK,42)&&R.is(jK[0],42)){1g=c8(jK)}if(!1g.1e){4d(jK).3p(HH,1a(a,b,c){K 1z=[],1x=p7.2B(b);c.3p(Bz,1a(a,b){b&&1z.1I(+b)});1g.1I([b][3L](1z))})}1g.3D=R.lO;1b 1g});K fY=1a(ps){K p=fY.ps=fY.ps||{};if(p[ps]){p[ps].rW=100}1i{p[ps]={rW:100}}6A(1a(){1o(K 1q in p){if(p[3A](1q)&&1q!=ps){p[1q].rW--;!p[1q].rW&&4a p[1q]}}});1b p[ps]};R.qB=1a(5X,6i,6w,6t,7q,7i,7C,7w,t){K t1=1-t,Bu=6g(t1,3),Cc=6g(t1,2),t2=t*t,t3=t2*t,x=Bu*5X+Cc*3*t*6w+t1*3*t*t*7q+t3*7C,y=Bu*6i+Cc*3*t*6t+t1*3*t*t*7i+t3*7w,mx=5X+2*t*(6w-5X)+t2*(7q-2*6w+5X),my=6i+2*t*(6t-6i)+t2*(7i-2*6t+6i),nx=6w+2*t*(7q-6w)+t2*(7C-2*7q+6w),ny=6t+2*t*(7i-6t)+t2*(7w-2*7i+6t),ax=t1*5X+t*6w,ay=t1*6i+t*6t,cx=t1*7q+t*7C,cy=t1*7i+t*7w,e9=90-3M.Ce(mx-nx,my-ny)*cI/PI;(mx>nx||my<ny)&&(e9+=cI);1b{x:x,y:y,m:{x:mx,y:my},n:{x:nx,y:ny},2T:{x:ax,y:ay},4n:{x:cx,y:cy},e9:e9}};R.EP=1a(5X,6i,6w,6t,7q,7i,7C,7w){if(!R.is(5X,"42")){5X=[5X,6i,6w,6t,7q,7i,7C,7w]}K 3d=DQ.3i(1c,5X);1b{x:3d.5H.x,y:3d.5H.y,x2:3d.47.x,y2:3d.47.y,1k:3d.47.x-3d.5H.x,1s:3d.47.y-3d.5H.y}};R.Ex=1a(3d,x,y){1b x>=3d.x&&(x<=3d.x2&&(y>=3d.y&&y<=3d.y2))};R.xo=1a(7b,6Z){K i=R.Ex;1b i(6Z,7b.x,7b.y)||(i(6Z,7b.x2,7b.y)||(i(6Z,7b.x,7b.y2)||(i(6Z,7b.x2,7b.y2)||(i(7b,6Z.x,6Z.y)||(i(7b,6Z.x2,6Z.y)||(i(7b,6Z.x,6Z.y2)||(i(7b,6Z.x2,6Z.y2)||(7b.x<6Z.x2&&7b.x>6Z.x||6Z.x<7b.x2&&6Z.x>7b.x)&&(7b.y<6Z.y2&&7b.y>6Z.y||6Z.y<7b.y2&&6Z.y>7b.y))))))))};1a BR(t,p1,p2,p3,p4){K t1=-3*p1+9*p2-9*p3+3*p4,t2=t*t1+6*p1-12*p2+6*p3;1b t*t2-3*p1+3*p2}1a iK(x1,y1,x2,y2,x3,y3,x4,y4,z){if(z==1c){z=1}z=z>1?1:z<0?0:z;K z2=z/2,n=12,Hi=[-0.HF,0.HF,-0.HE,0.HE,-0.HV,0.HV,-0.HY,0.HY,-0.HX,0.HX,-0.HW,0.HW],Hh=[0.HO,0.HO,0.HN,0.HN,0.HS,0.HS,0.HR,0.HR,0.HQ,0.HQ,0.Hz,0.Hz],C2=0;1o(K i=0;i<n;i++){K ct=z2*Hi[i]+z2,BU=BR(ct,x1,x2,x3,x4),BT=BR(ct,y1,y2,y3,y4),Hj=BU*BU+BT*BT;C2+=Hh[i]*3M.a8(Hj)}1b z2*C2}1a Ho(x1,y1,x2,y2,x3,y3,x4,y4,ll){if(ll<0||iK(x1,y1,x2,y2,x3,y3,x4,y4)<ll){1b}K t=1,mN=t/2,t2=t-mN,l,e=0.S9;l=iK(x1,y1,x2,y2,x3,y3,x4,y4,t2);44(4l(l-ll)>e){mN/=2;t2+=(l<ll?1:-1)*mN;l=iK(x1,y1,x2,y2,x3,y3,x4,y4,t2)}1b t2}1a C4(x1,y1,x2,y2,x3,y3,x4,y4){if(5a(x1,x2)<6a(x3,x4)||(6a(x1,x2)>5a(x3,x4)||(5a(y1,y2)<6a(y3,y4)||6a(y1,y2)>5a(y3,y4)))){1b}K nx=(x1*y2-y1*x2)*(x3-x4)-(x1-x2)*(x3*y4-y3*x4),ny=(x1*y2-y1*x2)*(y3-y4)-(y1-y2)*(x3*y4-y3*x4),rV=(x1-x2)*(y3-y4)-(y1-y2)*(x3-x4);if(!rV){1b}K px=nx/ rV, py = ny /rV,pl=+px.4J(2),ph=+py.4J(2);if(pl<+6a(x1,x2).4J(2)||(pl>+5a(x1,x2).4J(2)||(pl<+6a(x3,x4).4J(2)||(pl>+5a(x3,x4).4J(2)||(ph<+6a(y1,y2).4J(2)||(ph>+5a(y1,y2).4J(2)||(ph<+6a(y3,y4).4J(2)||ph>+5a(y3,y4).4J(2)))))))){1b}1b{x:px,y:py}}1a 10d(9j,9y){1b rX(9j,9y)}1a 10a(9j,9y){1b rX(9j,9y,1)}1a rX(9j,9y,g1){K 7b=R.EP(9j),6Z=R.EP(9y);if(!R.xo(7b,6Z)){1b g1?0:[]}K l1=iK.3i(0,9j),l2=iK.3i(0,9y),n1=5a(~~(l1/ 5), 1), n2 = 5a(~~(l2 /5),1),rT=[],rU=[],xy={},1A=g1?0:[];1o(K i=0;i<n1+1;i++){K p=R.qB.3i(R,9j.3L(i/n1));rT.1I({x:p.x,y:p.y,t:i/n1})}1o(i=0;i<n2+1;i++){p=R.qB.3i(R,9y.3L(i/n2));rU.1I({x:p.x,y:p.y,t:i/n2})}1o(i=0;i<n1;i++){1o(K j=0;j<n2;j++){K di=rT[i],jC=rT[i+1],dj=rU[j],jF=rU[j+1],ci=4l(jC.x-di.x)<0.t4?"y":"x",cj=4l(jF.x-dj.x)<0.t4?"y":"x",is=C4(di.x,di.y,jC.x,jC.y,dj.x,dj.y,jF.x,jF.y);if(is){if(xy[is.x.4J(4)]==is.y.4J(4)){bI}xy[is.x.4J(4)]=is.y.4J(4);K t1=di.t+4l((is[ci]-di[ci])/ (jC[ci] - di[ci])) * (jC.t - di.t), t2 = dj.t + 4l((is[cj] - dj[cj]) /(jF[cj]-dj[cj]))*(jF.t-dj.t);if(t1>=0&&(t1<=1.t4&&(t2>=0&&t2<=1.t4))){if(g1){1A++}1i{1A.1I({x:is.x,y:is.y,t1:6a(t1,1),t2:6a(t2,1)})}}}}}1b 1A}R.10f=1a(ah,8K){1b rO(ah,8K)};R.10g=1a(ah,8K){1b rO(ah,8K,1)};1a rO(ah,8K,g1){ah=R.r4(ah);8K=R.r4(8K);K x1,y1,x2,y2,pc,pd,pb,pe,9j,9y,1A=g1?0:[];1o(K i=0,ii=ah.1e;i<ii;i++){K pi=ah[i];if(pi[0]=="M"){x1=pc=pi[1];y1=pd=pi[2]}1i{if(pi[0]=="C"){9j=[x1,y1].3L(pi.3N(1));x1=9j[6];y1=9j[7]}1i{9j=[x1,y1,x1,y1,pc,pd,pc,pd];x1=pc;y1=pd}1o(K j=0,jj=8K.1e;j<jj;j++){K pj=8K[j];if(pj[0]=="M"){x2=pb=pj[1];y2=pe=pj[2]}1i{if(pj[0]=="C"){9y=[x2,y2].3L(pj.3N(1));x2=9y[6];y2=9y[7]}1i{9y=[x2,y2,x2,y2,pb,pe,pb,pe];x2=pb;y2=pe}K fZ=rX(9j,9y,g1);if(g1){1A+=fZ}1i{1o(K k=0,kk=fZ.1e;k<kk;k++){fZ[k].ZS=i;fZ[k].ZT=j;fZ[k].9j=9j;fZ[k].9y=9y}1A=1A.3L(fZ)}}}}}1b 1A}R.Iv=1a(1L,x,y){K 3d=R.Hw(1L);1b R.Ex(3d,x,y)&&rO(1L,[["M",x,y],["H",3d.x2+10]],1)%2==1};R.nR=1a(eQ){1b 1a(){31("4j.l9",1c,"ht\\hv: Hx qY 101 to 4h \\12x"+eQ+"\\12y of 5p 1F",eQ)}};K ro=R.Hw=1a(1L){K 85=fY(1L);if(85.3d){1b 65(85.3d)}if(!1L){1b{x:0,y:0,1k:0,1s:0,x2:0,y2:0}}1L=iJ(1L);K x=0,y=0,X=[],Y=[],p;1o(K i=0,ii=1L.1e;i<ii;i++){p=1L[i];if(p[0]=="M"){x=p[1];y=p[2];X.1I(x);Y.1I(y)}1i{K oZ=DQ(x,y,p[1],p[2],p[3],p[4],p[5],p[6]);X=X[3L](oZ.5H.x,oZ.47.x);Y=Y[3L](oZ.5H.y,oZ.47.y);x=p[5];y=p[6]}}K rN=6a[3i](0,X),rP=6a[3i](0,Y),Et=5a[3i](0,X),Ew=5a[3i](0,Y),1k=Et-rN,1s=Ew-rP,bb={x:rN,y:rP,x2:Et,y2:Ew,1k:1k,1s:1s,cx:rN+1k/ 2, cy:rP + 1s /2};85.3d=65(bb);1b bb},c8=1a(5x){K 1A=65(5x);1A.3D=R.lO;1b 1A},Eg=R.12E=1a(5x){K 85=fY(5x);if(85.EH){1b c8(85.EH)}if(!R.is(5x,42)||!R.is(5x&&5x[0],42)){5x=R.EI(5x)}K 1A=[],x=0,y=0,mx=0,my=0,2T=0;if(5x[0][0]=="M"){x=5x[0][1];y=5x[0][2];mx=x;my=y;2T++;1A.1I(["M",x,y])}1o(K i=2T,ii=5x.1e;i<ii;i++){K r=1A[i]=[],pa=5x[i];if(pa[0]!=p7.2B(pa[0])){r[0]=p7.2B(pa[0]);3E(r[0]){1p"a":r[1]=pa[1];r[2]=pa[2];r[3]=pa[3];r[4]=pa[4];r[5]=pa[5];r[6]=+(pa[6]-x).4J(3);r[7]=+(pa[7]-y).4J(3);1r;1p"v":r[1]=+(pa[1]-y).4J(3);1r;1p"m":mx=pa[1];my=pa[2];5m:1o(K j=1,jj=pa.1e;j<jj;j++){r[j]=+(pa[j]-(j%2?x:y)).4J(3)}}}1i{r=1A[i]=[];if(pa[0]=="m"){mx=pa[1]+x;my=pa[2]+y}1o(K k=0,kk=pa.1e;k<kk;k++){1A[i][k]=pa[k]}}K 5T=1A[i].1e;3E(1A[i][0]){1p"z":x=mx;y=my;1r;1p"h":x+=+1A[i][5T-1];1r;1p"v":y+=+1A[i][5T-1];1r;5m:x+=+1A[i][5T-2];y+=+1A[i][5T-1]}}1A.3D=R.lO;85.EH=c8(1A);1b 1A},DX=R.oi=1a(5x){K 85=fY(5x);if(85.4l){1b c8(85.4l)}if(!R.is(5x,42)||!R.is(5x&&5x[0],42)){5x=R.EI(5x)}if(!5x||!5x.1e){1b[["M",0,0]]}K 1A=[],x=0,y=0,mx=0,my=0,2T=0;if(5x[0][0]=="M"){x=+5x[0][1];y=+5x[0][2];mx=x;my=y;2T++;1A[0]=["M",x,y]}K EF=5x.1e==3&&(5x[0][0]=="M"&&(5x[1][0].8Z()=="R"&&5x[2][0].8Z()=="Z"));1o(K r,pa,i=2T,ii=5x.1e;i<ii;i++){1A.1I(r=[]);pa=5x[i];if(pa[0]!=ED.2B(pa[0])){r[0]=ED.2B(pa[0]);3E(r[0]){1p"A":r[1]=pa[1];r[2]=pa[2];r[3]=pa[3];r[4]=pa[4];r[5]=pa[5];r[6]=+(pa[6]+x);r[7]=+(pa[7]+y);1r;1p"V":r[1]=+pa[1]+y;1r;1p"H":r[1]=+pa[1]+x;1r;1p"R":K 5s=[x,y][3L](pa.3N(1));1o(K j=2,jj=5s.1e;j<jj;j++){5s[j]=+5s[j]+x;5s[++j]=+5s[j]+y}1A.dM();1A=1A[3L](EC(5s,EF));1r;1p"M":mx=+pa[1]+x;my=+pa[2]+y;5m:1o(j=1,jj=pa.1e;j<jj;j++){r[j]=+pa[j]+(j%2?x:y)}}}1i{if(pa[0]=="R"){5s=[x,y][3L](pa.3N(1));1A.dM();1A=1A[3L](EC(5s,EF));r=["R"][3L](pa.3N(-2))}1i{1o(K k=0,kk=pa.1e;k<kk;k++){r[k]=pa[k]}}}3E(r[0]){1p"Z":x=mx;y=my;1r;1p"H":x=r[1];1r;1p"V":y=r[1];1r;1p"M":mx=r[r.1e-2];my=r[r.1e-1];5m:x=r[r.1e-2];y=r[r.1e-1]}}1A.3D=R.lO;85.4l=c8(1A);1b 1A},pu=1a(x1,y1,x2,y2){1b[x1,y1,x2,y2,x2,y2]},DS=1a(x1,y1,ax,ay,x2,y2){K pF=1/ 3, pC = 2 /3;1b[pF*x1+pC*ax,pF*y1+pC*ay,pF*x2+pC*ax,pF*y2+pC*ay,x2,y2]},DU=1a(x1,y1,rx,ry,7G,Hq,lU,x2,y2,hS){K F3=PI*120/ cI, 9o = PI /cI*(+7G||0),1A=[],xy,5F=bZ(1a(x,y,9o){K X=x*3M.9n(9o)-y*3M.94(9o),Y=x*3M.94(9o)+y*3M.9n(9o);1b{x:X,y:Y}});if(!hS){xy=5F(x1,y1,-9o);x1=xy.x;y1=xy.y;xy=5F(x2,y2,-9o);x2=xy.x;y2=xy.y;K 9n=3M.9n(PI/ cI * 7G), 94 = 3M.94(PI /cI*7G),x=(x1-x2)/ 2, y = (y1 - y2) /2;K h=x*x/ (rx * rx) + y * y /(ry*ry);if(h>1){h=3M.a8(h);rx=h*rx;ry=h*ry}K rQ=rx*rx,rY=ry*ry,k=(Hq==lU?-1:1)*3M.a8(4l((rQ*rY-rQ*y*y-rY*x*x)/ (rQ * y * y + rY * x * x))), cx = k * rx * y /ry+(x1+x2)/ 2, cy = k * -ry * x /rx+(y1+y2)/ 2, f1 = 3M.s0(((y1 - cy) /ry).4J(9)),f2=3M.s0(((y2-cy)/ry).4J(9));f1=x1<cx?PI-f1:f1;f2=x2<cx?PI-f2:f2;f1<0&&(f1=PI*2+f1);f2<0&&(f2=PI*2+f2);if(lU&&f1>f2){f1=f1-PI*2}if(!lU&&f2>f1){f2=f2-PI*2}}1i{f1=hS[0];f2=hS[1];cx=hS[2];cy=hS[3]}K df=f2-f1;if(4l(df)>F3){K Iw=f2,Is=x2,Ir=y2;f2=f1+F3*(lU&&f2>f1?1:-1);x2=cx+rx*3M.9n(f2);y2=cy+ry*3M.94(f2);1A=DU(x2,y2,rx,ry,7G,0,lU,Is,Ir,[f2,Iw,cx,cy])}df=f2-f1;K c1=3M.9n(f1),s1=3M.94(f1),c2=3M.9n(f2),s2=3M.94(f2),t=3M.IN(df/ 4), hx = 4 /3*rx*t,hy=4/3*ry*t,m1=[x1,y1],m2=[x1+hx*s1,y1-hy*c1],m3=[x2+hx*s2,y2-hy*c2],m4=[x2,y2];m2[0]=2*m1[0]-m2[0];m2[1]=2*m1[1]-m2[1];if(hS){1b[m2,m3,m4][3L](1A)}1i{1A=[m2,m3,m4][3L](1A).54()[3C](",");K DL=[];1o(K i=0,ii=1A.1e;i<ii;i++){DL[i]=i%2?5F(1A[i-1],1A[i],9o).y:5F(1A[i],1A[i+1],9o).x}1b DL}},pI=1a(5X,6i,6w,6t,7q,7i,7C,7w,t){K t1=1-t;1b{x:6g(t1,3)*5X+6g(t1,2)*3*t*6w+t1*3*t*t*7q+6g(t,3)*7C,y:6g(t1,3)*6i+6g(t1,2)*3*t*6t+t1*3*t*t*7i+6g(t,3)*7w}},DQ=bZ(1a(5X,6i,6w,6t,7q,7i,7C,7w){K a=7q-2*6w+5X-(7C-2*7q+6w),b=2*(6w-5X)-2*(7q-6w),c=5X-6w,t1=(-b+3M.a8(b*b-4*a*c))/ 2 /a,t2=(-b-3M.a8(b*b-4*a*c))/ 2 /a,y=[6i,7w],x=[5X,7C],7a;4l(t1)>"s8"&&(t1=0.5);4l(t2)>"s8"&&(t2=0.5);if(t1>0&&t1<1){7a=pI(5X,6i,6w,6t,7q,7i,7C,7w,t1);x.1I(7a.x);y.1I(7a.y)}if(t2>0&&t2<1){7a=pI(5X,6i,6w,6t,7q,7i,7C,7w,t2);x.1I(7a.x);y.1I(7a.y)}a=7i-2*6t+6i-(7w-2*7i+6t);b=2*(6t-6i)-2*(7i-6t);c=6i-6t;t1=(-b+3M.a8(b*b-4*a*c))/ 2 /a;t2=(-b-3M.a8(b*b-4*a*c))/ 2 /a;4l(t1)>"s8"&&(t1=0.5);4l(t2)>"s8"&&(t2=0.5);if(t1>0&&t1<1){7a=pI(5X,6i,6w,6t,7q,7i,7C,7w,t1);x.1I(7a.x);y.1I(7a.y)}if(t2>0&&t2<1){7a=pI(5X,6i,6w,6t,7q,7i,7C,7w,t2);x.1I(7a.x);y.1I(7a.y)}1b{5H:{x:6a[3i](0,x),y:6a[3i](0,y)},47:{x:5a[3i](0,x),y:5a[3i](0,y)}}}),iJ=R.r4=bZ(1a(1L,8K){K 85=!8K&&fY(1L);if(!8K&&85.gs){1b c8(85.gs)}K p=DX(1L),p2=8K&&DX(8K),2i={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:1c,qy:1c},dW={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:1c,qy:1c},DI=1a(1L,d,pt){K nx,ny,tq={T:1,Q:1};if(!1L){1b["C",d.x,d.y,d.x,d.y,d.x,d.y]}!(1L[0]in tq)&&(d.qx=d.qy=1c);3E(1L[0]){1p"M":d.X=1L[1];d.Y=1L[2];1r;1p"A":1L=["C"][3L](DU[3i](0,[d.x,d.y][3L](1L.3N(1))));1r;1p"S":if(pt=="C"||pt=="S"){nx=d.x*2-d.bx;ny=d.y*2-d.by}1i{nx=d.x;ny=d.y}1L=["C",nx,ny][3L](1L.3N(1));1r;1p"T":if(pt=="Q"||pt=="T"){d.qx=d.x*2-d.qx;d.qy=d.y*2-d.qy}1i{d.qx=d.x;d.qy=d.y}1L=["C"][3L](DS(d.x,d.y,d.qx,d.qy,1L[1],1L[2]));1r;1p"Q":d.qx=1L[1];d.qy=1L[2];1L=["C"][3L](DS(d.x,d.y,1L[1],1L[2],1L[3],1L[4]));1r;1p"L":1L=["C"][3L](pu(d.x,d.y,1L[1],1L[2]));1r;1p"H":1L=["C"][3L](pu(d.x,d.y,1L[1],d.y));1r;1p"V":1L=["C"][3L](pu(d.x,d.y,d.x,1L[1]));1r;1p"Z":1L=["C"][3L](pu(d.x,d.y,d.X,d.Y));1r}1b 1L},Dz=1a(pp,i){if(pp[i].1e>7){pp[i].cc();K pi=pp[i];44(pi.1e){pp.5v(i++,0,["C"][3L](pi.5v(0,6)))}pp.5v(i,1);ii=5a(p.1e,p2&&p2.1e||0)}},Du=1a(ah,8K,a1,a2,i){if(ah&&(8K&&(ah[i][0]=="M"&&8K[i][0]!="M"))){8K.5v(i,0,["M",a2.x,a2.y]);a1.bx=0;a1.by=0;a1.x=ah[i][1];a1.y=ah[i][2];ii=5a(p.1e,p2&&p2.1e||0)}};1o(K i=0,ii=5a(p.1e,p2&&p2.1e||0);i<ii;i++){p[i]=DI(p[i],2i);Dz(p,i);p2&&(p2[i]=DI(p2[i],dW));p2&&Dz(p2,i);Du(p,p2,2i,dW,i);Du(p2,p,dW,2i,i);K lM=p[i],lF=p2&&p2[i],pv=lM.1e,pz=p2&&lF.1e;2i.x=lM[pv-2];2i.y=lM[pv-1];2i.bx=3U(lM[pv-4])||2i.x;2i.by=3U(lM[pv-3])||2i.y;dW.bx=p2&&(3U(lF[pz-4])||dW.x);dW.by=p2&&(3U(lF[pz-3])||dW.y);dW.x=p2&&lF[pz-2];dW.y=p2&&lF[pz-1]}if(!p2){85.gs=c8(p)}1b p2?[p,p2]:p},1c,c8),12M=R.zG=bZ(1a(46){K 5s=[];1o(K i=0,ii=46.1e;i<ii;i++){K 7a={},9l=46[i].3k(/^([^:]*):?([\\d\\.]*)/);7a.3F=R.cU(9l[1]);if(7a.3F.5d){1b 1c}7a.3F=7a.3F.6j;9l[2]&&(7a.2d=9l[2]+"%");5s.1I(7a)}1o(i=1,ii=5s.1e-1;i<ii;i++){if(!5s[i].2d){K 2T=3U(5s[i-1].2d||0),4n=0;1o(K j=i+1;j<ii;j++){if(5s[j].2d){4n=5s[j].2d;1r}}if(!4n){4n=100;j=ii}4n=3U(4n);K d=(4n-2T)/(j-i+1);1o(;i<j;i++){2T+=d;5s[i].2d=2T+"%"}}}1b 5s}),ou=R.yP=1a(el,2I){el==2I.1C&&(2I.1C=el.3I);el==2I.4v&&(2I.4v=el.3q);el.3q&&(el.3q.3I=el.3I);el.3I&&(el.3I.3q=el.3q)},12K=R.z3=1a(el,2I){if(2I.1C===el){1b}ou(el,2I);el.3q=1c;el.3I=2I.1C;2I.1C.3q=el;2I.1C=el},12H=R.za=1a(el,2I){if(2I.4v===el){1b}ou(el,2I);el.3q=2I.4v;el.3I=1c;2I.4v.3I=el;2I.4v=el},12I=R.z9=1a(el,a4,2I){ou(el,2I);a4==2I.1C&&(2I.1C=el);a4.3q&&(a4.3q.3I=el);el.3q=a4.3q;el.3I=a4;a4.3q=el},12J=R.z8=1a(el,a4,2I){ou(el,2I);a4==2I.4v&&(2I.4v=el);a4.3I&&(a4.3I.3q=el);el.3I=a4.3I;a4.3I=el;el.3q=a4},DD=R.DD=1a(1L,3T){K bb=ro(1L),el={1Y:{3T:E},6J:1a(){1b bb}};wO(el,3T);1b el.4O},sd=R.sd=1a(1L,3T){1b ql(1L,DD(1L,3T))},wO=R.yO=1a(el,bH){if(bH==1c){1b el.1Y.3T}bH=4d(bH).3p(/\\.{3}|\\yN/g,el.1Y.3T||E);K os=R.sa(bH),4B=0,dx=0,dy=0,sx=1,sy=1,1Y=el.1Y,m=1U eP;1Y.3T=os||[];if(os){1o(K i=0,ii=os.1e;i<ii;i++){K t=os[i],dN=t.1e,8D=4d(t[0]).3P(),8H=t[0]!=8D,fF=8H?m.o8():0,x1,y1,x2,y2,bb;if(8D=="t"&&dN==3){if(8H){x1=fF.x(0,0);y1=fF.y(0,0);x2=fF.x(t[1],t[2]);y2=fF.y(t[1],t[2]);m.gr(x2-x1,y2-y1)}1i{m.gr(t[1],t[2])}}1i{if(8D=="r"){if(dN==2){bb=bb||el.6J(1);m.5F(t[1],bb.x+bb.1k/ 2, bb.y + bb.1s /2);4B+=t[1]}1i{if(dN==4){if(8H){x2=fF.x(t[2],t[3]);y2=fF.y(t[2],t[3]);m.5F(t[1],x2,y2)}1i{m.5F(t[1],t[2],t[3])}4B+=t[1]}}}1i{if(8D=="s"){if(dN==2||dN==3){bb=bb||el.6J(1);m.7N(t[1],t[dN-1],bb.x+bb.1k/ 2, bb.y + bb.1s /2);sx*=t[1];sy*=t[dN-1]}1i{if(dN==5){if(8H){x2=fF.x(t[3],t[4]);y2=fF.y(t[3],t[4]);m.7N(t[1],t[2],x2,y2)}1i{m.7N(t[1],t[2],t[3],t[4])}sx*=t[1];sy*=t[2]}}}1i{if(8D=="m"&&dN==7){m.5l(t[1],t[2],t[3],t[4],t[5],t[6])}}}}1Y.gm=1;el.4O=m}}el.4O=m;1Y.sx=sx;1Y.sy=sy;1Y.4B=4B;1Y.dx=dx=m.e;1Y.dy=dy=m.f;if(sx==1&&(sy==1&&(!4B&&1Y.3d))){1Y.3d.x+=+dx;1Y.3d.y+=+dy}1i{1Y.gm=1}},Ee=1a(1h){K l=1h[0];3E(l.3P()){1p"t":1b[l,0,0];1p"m":1b[l,1,0,0,1,0,0];1p"r":if(1h.1e==4){1b[l,0,1h[2],1h[3]]}1i{1b[l,0]};1p"s":if(1h.1e==5){1b[l,1,1,1h[3],1h[4]]}1i{if(1h.1e==3){1b[l,1,1]}1i{1b[l,1]}}}},HL=R.12Q=1a(t1,t2){t2=4d(t2).3p(/\\.{3}|\\yN/g,t1);t1=R.sa(t1)||[];t2=R.sa(t2)||[];K I0=5a(t1.1e,t2.1e),2D=[],to=[],i=0,j,jj,bz,er;1o(;i<I0;i++){bz=t1[i]||Ee(t2[i]);er=t2[i]||Ee(bz);if(bz[0]!=er[0]||(bz[0].3P()=="r"&&(bz[2]!=er[2]||bz[3]!=er[3])||bz[0].3P()=="s"&&(bz[3]!=er[3]||bz[4]!=er[4]))){1b}2D[i]=[];to[i]=[];1o(j=0,jj=5a(bz.1e,er.1e);j<jj;j++){j in bz&&(2D[i][j]=bz[j]);j in er&&(to[i][j]=er[j])}}1b{2D:2D,to:to}};R.AU=1a(x,y,w,h){K 3t;3t=h==1c&&!R.is(x,"1F")?g.3c.fP(x):x;if(3t==1c){1b}if(3t.6l){if(y==1c){1b{3t:3t,1k:3t.2x.11x||3t.h7,1s:3t.2x.11y||3t.8v}}1i{1b{3t:3t,1k:y,1s:w}}}1b{3t:1,x:x,y:y,1k:w,1s:h}};R.Eg=Eg;R.4R={};R.iJ=iJ;R.4O=1a(a,b,c,d,e,f){1b 1U eP(a,b,c,d,e,f)};1a eP(a,b,c,d,e,f){if(a!=1c){J.a=+a;J.b=+b;J.c=+c;J.d=+d;J.e=+e;J.f=+f}1i{J.a=1;J.b=0;J.c=0;J.d=1;J.e=0;J.f=0}}(1a(9Z){9Z.5l=1a(a,b,c,d,e,f){K 2q=[[],[],[]],m=[[J.a,J.c,J.e],[J.b,J.d,J.f],[0,0,1]],4O=[[a,c,e],[b,d,f],[0,0,1]],x,y,z,1A;if(a&&a eM eP){4O=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1]]}1o(x=0;x<3;x++){1o(y=0;y<3;y++){1A=0;1o(z=0;z<3;z++){1A+=m[x][z]*4O[z][y]}2q[x][y]=1A}}J.a=2q[0][0];J.b=2q[1][0];J.c=2q[0][1];J.d=2q[1][1];J.e=2q[0][2];J.f=2q[1][2]};9Z.o8=1a(){K me=J,x=me.a*me.d-me.b*me.c;1b 1U eP(me.d/ x, -me.b /x,-me.c/ x, me.a /x,(me.c*me.f-me.d*me.e)/ x, (me.b * me.e - me.a * me.f) /x)};9Z.65=1a(){1b 1U eP(J.a,J.b,J.c,J.d,J.e,J.f)};9Z.gr=1a(x,y){J.5l(1,0,0,1,x,y)};9Z.7N=1a(x,y,cx,cy){y==1c&&(y=x);(cx||cy)&&J.5l(1,0,0,1,cx,cy);J.5l(x,0,0,y,0,0);(cx||cy)&&J.5l(1,0,0,1,-cx,-cy)};9Z.5F=1a(a,x,y){a=R.9o(a);x=x||0;y=y||0;K 9n=+3M.9n(a).4J(9),94=+3M.94(a).4J(9);J.5l(9n,94,-94,9n,x,y);J.5l(1,0,0,1,-x,-y)};9Z.x=1a(x,y){1b x*J.a+y*J.c+J.e};9Z.y=1a(x,y){1b x*J.b+y*J.d+J.f};9Z.4b=1a(i){1b+J[4d.El(97+i)].4J(4)};9Z.3D=1a(){1b R.3Z?"4O("+[J.4b(0),J.4b(1),J.4b(2),J.4b(3),J.4b(4),J.4b(5)].54()+")":[J.4b(0),J.4b(2),J.4b(1),J.4b(3),0,0].54()};9Z.Rv=1a(){1b"zi:FP.zx.eP(11J="+J.4b(0)+", 11G="+J.4b(2)+", 11D="+J.4b(1)+", 11E="+J.4b(3)+", Dx="+J.4b(4)+", Dy="+J.4b(5)+", 11F=\'5C 11v\')"};9Z.2d=1a(){1b[J.e.4J(4),J.f.4J(4)]};1a s6(a){1b a[0]*a[0]+a[1]*a[1]}1a Es(a){K Eq=3M.a8(s6(a));a[0]&&(a[0]/=Eq);a[1]&&(a[1]/=Eq)}9Z.3C=1a(){K 2q={};2q.dx=J.e;2q.dy=J.f;K 1G=[[J.a,J.c],[J.b,J.d]];2q.gS=3M.a8(s6(1G[0]));Es(1G[0]);2q.hE=1G[0][0]*1G[1][0]+1G[0][1]*1G[1][1];1G[1]=[1G[1][0]-1G[0][0]*2q.hE,1G[1][1]-1G[0][1]*2q.hE];2q.eY=3M.a8(s6(1G[1]));Es(1G[1]);2q.hE/=2q.eY;K 94=-1G[0][1],9n=1G[1][1];if(9n<0){2q.5F=R.4B(3M.I4(9n));if(94<0){2q.5F=92-2q.5F}}1i{2q.5F=R.4B(3M.s0(94))}2q.yx=!+2q.hE.4J(9)&&(2q.gS.4J(9)==2q.eY.4J(9)||!2q.5F);2q.11h=!+2q.hE.4J(9)&&(2q.gS.4J(9)==2q.eY.4J(9)&&!2q.5F);2q.Rw=!+2q.hE.4J(9)&&!2q.5F;1b 2q};9Z.11j=1a(Ic){K s=Ic||J[3C]();if(s.yx){s.gS=+s.gS.4J(4);s.eY=+s.eY.4J(4);s.5F=+s.5F.4J(4);1b(s.dx||s.dy?"t"+[s.dx,s.dy]:E)+(s.gS!=1||s.eY!=1?"s"+[s.gS,s.eY,0,0]:E)+(s.5F?"r"+[s.5F,0,0]:E)}1i{1b"m"+[J.4b(0),J.4b(1),J.4b(2),J.4b(3),J.4b(4),J.4b(5)]}}})(eP.2V);K 6d=bO.eS.3k(/11t\\/(.*?)\\s/)||bO.eS.3k(/11r\\/(\\d+)/);if(bO.Il=="11o 11p, Ik."&&(6d&&6d[1]<4||bO.11q.3N(0,2)=="iP")||bO.Il=="126 Ik."&&(6d&&6d[1]<8)){6o.l0=1a(){K 4p=J.4p(-99,-99,J.1k+99,J.1s+99).1l({2b:"3j"});6A(1a(){4p.3z()})}}1i{6o.l0=iQ}K 4o=1a(){J.11Z=1j},In=1a(){1b J.dV.4o()},76=1a(){J.121=1m},Ii=1a(){1b J.dV.76()},E0=1a(e){K aE=g.3c.8s.4t||g.3c.3x.4t,fc=g.3c.8s.4P||g.3c.3x.4P;1b{x:e.cT+fc,y:e.cJ+aE}},Ie=1a(){if(g.3c.c6){1b 1a(1w,1y,fn,1f){K f=1a(e){K 3r=E0(e);1b fn.2B(1f,e,3r.x,3r.y)};1w.c6(1y,f,1j);if(oN&&ol[1y]){K Ih=1a(e){K 3r=E0(e),Ip=e;1o(K i=0,ii=e.rZ&&e.rZ.1e;i<ii;i++){if(e.rZ[i].3g==1w){e=e.rZ[i];e.dV=Ip;e.4o=In;e.76=Ii;1r}}1b fn.2B(1f,e,3r.x,3r.y)};1w.c6(ol[1y],Ih,1j)}1b 1a(){1w.na(1y,f,1j);if(oN&&ol[1y]){1w.na(ol[1y],f,1j)}1b 1m}}}1i{if(g.3c.hn){1b 1a(1w,1y,fn,1f){K f=1a(e){e=e||g.5q.1K;K aE=g.3c.8s.4t||g.3c.3x.4t,fc=g.3c.8s.4P||g.3c.3x.4P,x=e.cT+fc,y=e.cJ+aE;e.4o=e.4o||4o;e.76=e.76||76;1b fn.2B(1f,e,x,y)};1w.hn("on"+1y,f);K Ij=1a(){1w.zX("on"+1y,f);1b 1m};1b Ij}}}}(),5t=[],ru=1a(e){K x=e.cT,y=e.cJ,aE=g.3c.8s.4t||g.3c.3x.4t,fc=g.3c.8s.4P||g.3c.3x.4P,7Y,j=5t.1e;44(j--){7Y=5t[j];if(oN&&e.j7){K i=e.j7.1e,9V;44(i--){9V=e.j7[i];if(9V.s4==7Y.el.ex.id){x=9V.cT;y=9V.cJ;(e.dV?e.dV:e).4o();1r}}}1i{e.4o()}K 1u=7Y.el.1u,o,3q=1u.hV,1N=1u.3w,4L=1u.2x.4L;g.5q.xu&&1N.7B(1u);1u.2x.4L="3j";o=7Y.el.2I.IJ(x,y);1u.2x.4L=4L;g.5q.xu&&(3q?1N.7n(1u,3q):1N.3W(1u));o&&31("4j.5t.e6."+7Y.el.id,7Y.el,o);x+=fc;y+=aE;31("4j.5t.dP."+7Y.el.id,7Y.kt||7Y.el,x-7Y.el.ex.x,y-7Y.el.ex.y,x,y,e)}},rz=1a(e){R.I7(ru).I8(rz);K i=5t.1e,7Y;44(i--){7Y=5t[i];7Y.el.ex={};31("4j.5t.4n."+7Y.el.id,7Y.rM||(7Y.oV||(7Y.kt||7Y.el)),e)}5t=[]},3l=R.el={};1o(K i=4N.1e;i--;){(1a(dl){R[dl]=3l[dl]=1a(fn,a9){if(R.is(fn,"1a")){J.4N=J.4N||[];J.4N.1I({1x:dl,f:fn,8q:Ie(J.dc||(J.1u||g.3c),dl,fn,a9||J)})}1b J};R["un"+dl]=3l["un"+dl]=1a(fn){K 4N=J.4N||[],l=4N.1e;44(l--){if(4N[l].1x==dl&&(R.is(fn,"2r")||4N[l].f==fn)){4N[l].8q();4N.5v(l,1);!4N.1e&&4a J.4N}}1b J}})(4N[i])}3l.1g=1a(1q,1n){K 1g=jd[J.id]=jd[J.id]||{};if(2v.1e==0){1b 1g}if(2v.1e==1){if(R.is(1q,"1F")){1o(K i in 1q){if(1q[3A](i)){J.1g(i,1q[i])}}1b J}31("4j.1g.4b."+J.id,J,1g[1q],1q);1b 1g[1q]}1g[1q]=1n;31("4j.1g.5M."+J.id,J,1n,1q);1b J};3l.q3=1a(1q){if(1q==1c){jd[J.id]={}}1i{jd[J.id]&&4a jd[J.id][1q]}1b J};3l.11P=1a(){1b 65(jd[J.id]||{})};3l.6Q=1a(s3,s5,xD,Io){1b J.j9(s3,xD).fo(s5,Io||xD)};3l.11L=1a(s3,s5){1b J.11M(s3).11W(s5)};K 7f=[];3l.5t=1a(xF,xJ,xI,kt,oV,rM){1a 2T(e){(e.dV||e).4o();K x=e.cT,y=e.cJ,aE=g.3c.8s.4t||g.3c.3x.4t,fc=g.3c.8s.4P||g.3c.3x.4P;J.ex.id=e.s4;if(oN&&e.j7){K i=e.j7.1e,9V;44(i--){9V=e.j7[i];J.ex.id=9V.s4;if(9V.s4==J.ex.id){x=9V.cT;y=9V.cJ;1r}}}J.ex.x=x+fc;J.ex.y=y+aE;!5t.1e&&R.aa(ru).6E(rz);5t.1I({el:J,kt:kt,oV:oV,rM:rM});xJ&&31.on("4j.5t.2T."+J.id,xJ);xF&&31.on("4j.5t.dP."+J.id,xF);xI&&31.on("4j.5t.4n."+J.id,xI);31("4j.5t.2T."+J.id,oV||(kt||J),e.cT+fc,e.cJ+aE,e)}J.ex={};7f.1I({el:J,2T:2T});J.7v(2T);1b J};3l.103=1a(f){f?31.on("4j.5t.e6."+J.id,f):31.8q("4j.5t.e6."+J.id)};3l.ZW=1a(){K i=7f.1e;44(i--){if(7f[i].el==J){J.10b(7f[i].2T);7f.5v(i,1);31.8q("4j.5t.*."+J.id)}}!7f.1e&&R.I7(ru).I8(rz);5t=[]};6o.9U=1a(x,y,r){K 2q=R.4R.9U(J,x||0,y||0,r||0);J.77&&J.77.1I(2q);1b 2q};6o.4p=1a(x,y,w,h,r){K 2q=R.4R.4p(J,x||0,y||0,w||0,h||0,r||0);J.77&&J.77.1I(2q);1b 2q};6o.b2=1a(x,y,rx,ry){K 2q=R.4R.b2(J,x||0,y||0,rx||0,ry||0);J.77&&J.77.1I(2q);1b 2q};6o.1L=1a(8V){8V&&(!R.is(8V,4i)&&(!R.is(8V[0],42)&&(8V+=E)));K 2q=R.4R.1L(R.6M[3i](R,2v),J);J.77&&J.77.1I(2q);1b 2q};6o.9b=1a(4k,x,y,w,h){K 2q=R.4R.9b(J,4k||"Iq:AC",x||0,y||0,w||0,h||0);J.77&&J.77.1I(2q);1b 2q};6o.28=1a(x,y,28){K 2q=R.4R.28(J,x||0,y||0,4d(28));J.77&&J.77.1I(2q);1b 2q};6o.5M=1a(rw){!R.is(rw,"42")&&(rw=3K.2V.5v.2B(2v,0,2v.1e));K 2q=1U lc(rw);J.77&&J.77.1I(2q);2q["2I"]=J;2q["1y"]="5M";1b 2q};6o.Zp=1a(5M){J.77=5M||J.5M()};6o.Zu=1a(5M){K 2q=J.77;4a J.77;1b 2q};6o.kl=1a(1k,1s){1b R.4R.kl.2B(J,1k,1s)};6o.gf=1a(x,y,w,h,bK){1b R.4R.gf.2B(J,x,y,w,h,bK)};6o.1C=6o.4v=1c;6o.4j=R;K IF=1a(4g){K 5n=4g.oo(),3c=4g.rI,3x=3c.3x,f0=3c.8s,lH=f0.lH||(3x.lH||0),m8=f0.m8||(3x.m8||0),1C=5n.1C+(g.5q.II||(f0.4t||3x.4t))-lH,1W=5n.1W+(g.5q.ZL||(f0.4P||3x.4P))-m8;1b{y:1C,x:1W}};6o.IJ=1a(x,y){K 2I=J,3Z=2I.1Q,3g=g.3c.oI(x,y);if(g.5q.xu&&3g.6l=="3Z"){K so=IF(3Z),sr=3Z.ZE();sr.x=x-so.x;sr.y=y-so.y;sr.1k=sr.1s=1;K rr=3Z.ZH(sr,1c);if(rr.1e){3g=rr[rr.1e-1]}}if(!3g){1b 1c}44(3g.3w&&(3g!=3Z.3w&&!3g.4j)){3g=3g.3w}3g==2I.1Q.3w&&(3g=3Z);3g=3g&&3g.4j?2I.IP(3g.yJ):1c;1b 3g};6o.14s=1a(3d){K 5M=J.5M();J.9k(1a(el){if(R.xo(el.6J(),3d)){5M.1I(el)}});1b 5M};6o.IP=1a(id){K bJ=J.4v;44(bJ){if(bJ.id==id){1b bJ}bJ=bJ.3q}1b 1c};6o.9k=1a(1X,sW){K bJ=J.4v;44(bJ){if(1X.2B(sW,bJ)===1j){1b J}bJ=bJ.3q}1b J};6o.14J=1a(x,y){K 5M=J.5M();J.9k(1a(el){if(el.iD(x,y)){5M.1I(el)}});1b 5M};1a 14N(){1b J.x+S+J.y}1a yg(){1b J.x+S+J.y+S+J.1k+" \\14v "+J.1s}3l.iD=1a(x,y){K rp=J.gw=cG[J.1y](J);if(J.1l("3T")&&J.1l("3T").1e){rp=R.sd(rp,J.1l("3T"))}1b R.Iv(rp,x,y)};3l.6J=1a(IA){if(J.5p){1b{}}K 1Y=J.1Y;if(IA){if(1Y.8i||!1Y.qt){J.gw=cG[J.1y](J);1Y.qt=ro(J.gw);1Y.qt.3D=yg;1Y.8i=0}1b 1Y.qt}if(1Y.8i||(1Y.gm||!1Y.3d)){if(1Y.8i||!J.gw){1Y.qt=0;J.gw=cG[J.1y](J)}1Y.3d=ro(ql(J.gw,J.4O));1Y.3d.3D=yg;1Y.8i=1Y.gm=0}1b 1Y.3d};3l.65=1a(){if(J.5p){1b 1c}K 2q=J.2I[J.1y]().1l(J.1l());J.77&&J.77.1I(2q);1b 2q};3l.cP=1a(cP){if(J.1y=="28"){1b 1c}cP=cP||{};K s={1k:(cP.1k||10)+(+J.1l("2b-1k")||1),2e:cP.2e||1j,2Q:cP.2Q||0.5,yf:cP.yf||0,yc:cP.yc||0,3F:cP.3F||"#d4"},c=s.1k/2,r=J.2I,2q=r.5M(),1L=J.gw||cG[J.1y](J);1L=J.4O?ql(1L,J.4O):1L;1o(K i=1;i<c+1;i++){2q.1I(r.1L(1L).1l({2b:s.3F,2e:s.2e?s.3F:"3j","2b-hf":"4U","2b-cY":"4U","2b-1k":+(s.1k/ c * i).4J(3), 2Q:+(s.2Q /c).4J(3)}))}1b 2q.7n(J).gr(s.yf,s.yc)};K 13K={},rC=1a(5X,6i,6w,6t,7q,7i,7C,7w,1e){if(1e==1c){1b iK(5X,6i,6w,6t,7q,7i,7C,7w)}1i{1b R.qB(5X,6i,6w,6t,7q,7i,7C,7w,Ho(5X,6i,6w,6t,7q,7i,7C,7w,1e))}},rF=1a(xV,rD){1b 1a(1L,1e,Hv){1L=iJ(1L);K x,y,p,l,sp="",qz={},6z,5T=0;1o(K i=0,ii=1L.1e;i<ii;i++){p=1L[i];if(p[0]=="M"){x=+p[1];y=+p[2]}1i{l=rC(x,y,p[1],p[2],p[3],p[4],p[5],p[6]);if(5T+l>1e){if(rD&&!qz.2T){6z=rC(x,y,p[1],p[2],p[3],p[4],p[5],p[6],1e-5T);sp+=["C"+6z.2T.x,6z.2T.y,6z.m.x,6z.m.y,6z.x,6z.y];if(Hv){1b sp}qz.2T=sp;sp=["M"+6z.x,6z.y+"C"+6z.n.x,6z.n.y,6z.4n.x,6z.4n.y,p[5],p[6]].54();5T+=l;x=+p[5];y=+p[6];bI}if(!xV&&!rD){6z=rC(x,y,p[1],p[2],p[3],p[4],p[5],p[6],1e-5T);1b{x:6z.x,y:6z.y,e9:6z.e9}}}5T+=l;x=+p[5];y=+p[6]}sp+=p.cc()+p}qz.4n=sp;6z=xV?5T:rD?qz:R.qB(x,y,p[0],p[1],p[2],p[3],p[4],p[5],1);6z.e9&&(6z={x:6z.x,y:6z.y,e9:6z.e9});1b 6z}};K cE=rF(1),q0=rF(),rE=rF(0,1);R.cE=cE;R.q0=q0;R.n8=1a(1L,2D,to){if(J.cE(1L)-to<1E-6){1b rE(1L,2D).4n}K a=rE(1L,to,1);1b 2D?rE(a,2D).4n:a};3l.cE=1a(){K 1L=J.cG();if(!1L){1b}if(J.1u.cE){1b J.1u.cE()}1b cE(1L)};3l.q0=1a(1e){K 1L=J.cG();if(!1L){1b}1b q0(1L,1e)};3l.cG=1a(){K 1L,cG=R.zp[J.1y];if(J.1y=="28"||J.1y=="5M"){1b}if(cG){1L=cG(J)}1b 1L};3l.n8=1a(2D,to){K 1L=J.cG();if(!1L){1b}1b R.n8(1L,2D,to)};K ef=R.JX={qg:1a(n){1b n},"<":1a(n){1b 6g(n,1.7)},">":1a(n){1b 6g(n,0.48)},"<>":1a(n){K q=0.48-n/ 1.14q, Q = 3M.a8(0.14m + q * q), x = Q - q, X = 6g(4l(x), 1 /3)*(x<0?-1:1),y=-Q-q,Y=6g(4l(y),1/3)*(y<0?-1:1),t=X+Y+0.5;1b(1-t)*3*t*t+t*t*t},Hk:1a(n){K s=1.Hb;1b n*n*((s+1)*n-s)},Hl:1a(n){n=n-1;K s=1.Hb;1b n*n*((s+1)*n+s)+1},14l:1a(n){if(n==!!n){1b n}1b 6g(2,-10*n)*3M.94((n-0.Hc)*(2*PI)/0.3)+1},147:1a(n){K s=7.13T,p=2.75,l;if(n<1/p){l=s*n*n}1i{if(n<2/p){n-=1.5/p;l=s*n*n+0.75}1i{if(n<2.5/p){n-=2.25/p;l=s*n*n+0.13R}1i{n-=2.13O/p;l=s*n*n+0.13P}}}1b l}};ef.145=ef["xP-in"]=ef["<"];ef.141=ef["xP-2q"]=ef[">"];ef.13Y=ef["xP-in-2q"]=ef["<>"];ef["ue-in"]=ef.Hk;ef["ue-2q"]=ef.Hl;K 5i=[],wX=3n.143||(3n.13W||(3n.13Q||(3n.13N||(3n.14h||1a(1X){6A(1X,16)})))),6H=1a(){K Hg=+1U 5A,l=0;1o(;l<5i.1e;l++){K e=5i[l];if(e.el.5p||e.wT){bI}K fa=Hg-e.2T,ms=e.ms,5Y=e.5Y,2D=e.2D,4F=e.4F,to=e.to,t=e.t,2P=e.el,5M={},7e,8m={},1q;if(e.lb){fa=(e.lb*e.2L.1C-e.3I)/(e.b9-e.3I)*ms;e.6N=e.lb;4a e.lb;e.5S&&5i.5v(l--,1)}1i{e.6N=(e.3I+(e.b9-e.3I)*(fa/ ms)) /e.2L.1C}if(fa<0){bI}if(fa<ms){K 3r=5Y(fa/ms);1o(K 1l in 2D){if(2D[3A](1l)){3E(sT[1l]){1p nu:7e=+2D[1l]+3r*ms*4F[1l];1r;1p"az":7e="3Y("+[sS(4U(2D[1l].r+3r*ms*4F[1l].r)),sS(4U(2D[1l].g+3r*ms*4F[1l].g)),sS(4U(2D[1l].b+3r*ms*4F[1l].b))].54(",")+")";1r;1p"1L":7e=[];1o(K i=0,ii=2D[1l].1e;i<ii;i++){7e[i]=[2D[1l][i][0]];1o(K j=1,jj=2D[1l][i].1e;j<jj;j++){7e[i][j]=+2D[1l][i][j]+3r*ms*4F[1l][i][j]}7e[i]=7e[i].54(S)}7e=7e.54(S);1r;1p"3T":if(4F[1l].HG){7e=[];1o(i=0,ii=2D[1l].1e;i<ii;i++){7e[i]=[2D[1l][i][0]];1o(j=1,jj=2D[1l][i].1e;j<jj;j++){7e[i][j]=2D[1l][i][j]+3r*ms*4F[1l][i][j]}}}1i{K 4b=1a(i){1b+2D[1l][i]+3r*ms*4F[1l][i]};7e=[["m",4b(0),4b(1),4b(2),4b(3),4b(4),4b(5)]]}1r;1p"wQ":if(1l=="6s-4p"){7e=[];i=4;44(i--){7e[i]=+2D[1l][i]+3r*ms*4F[1l][i]}}1r;5m:K il=[][3L](2D[1l]);7e=[];i=2P.2I.9m[1l].1e;44(i--){7e[i]=+il[i]+3r*ms*4F[1l][i]}1r}5M[1l]=7e}}2P.1l(5M);(1a(id,2P,2L){6A(1a(){31("4j.2L.sR."+id,2P,2L)})})(2P.id,2P,e.2L)}1i{(1a(f,el,a){6A(1a(){31("4j.2L.sR."+el.id,el,a);31("4j.2L.14g."+el.id,el,a);R.is(f,"1a")&&f.2B(el)})})(e.1X,2P,e.2L);2P.1l(to);5i.5v(l--,1);if(e.lh>1&&!e.3q){1o(1q in to){if(to[3A](1q)){8m[1q]=e.iG[1q]}}e.el.1l(8m);ld(e.2L,e.el,e.2L.8B[0],1c,e.iG,e.lh-1)}if(e.3q&&!e.5S){ld(e.2L,e.el,e.3q,1c,e.iG,e.lh)}}}R.3Z&&(2P&&(2P.2I&&2P.2I.l0()));5i.1e&&wX(6H)},sS=1a(3F){1b 3F>fr?fr:3F<0?0:3F};3l.K6=1a(el,2L,1z,ms,5Y,1X){K 1f=J;if(1f.5p){1X&&1X.2B(1f);1b 1f}K a=1z eM eH?1z:R.6H(1z,ms,5Y,1X),x,y;ld(a,1f,a.8B[0],1c,1f.1l());1o(K i=0,ii=5i.1e;i<ii;i++){if(5i[i].2L==2L&&5i[i].el==el){5i[ii-1].2T=5i[i].2T;1r}}1b 1f};1a JZ(t,5X,6i,7C,7w,5c){K cx=3*5X,bx=3*(7C-5X)-cx,ax=1-cx-bx,cy=3*6i,by=3*(7w-6i)-cy,ay=1-cy-by;1a y9(t){1b((ax*t+bx)*t+cx)*t}1a HU(x,pN){K t=HP(x,pN);1b((ay*t+by)*t+cy)*t}1a HP(x,pN){K t0,t1,t2,x2,d2,i;1o(t2=x,i=0;i<8;i++){x2=y9(t2)-x;if(4l(x2)<pN){1b t2}d2=(3*ax*t2+2*bx)*t2+cx;if(4l(d2)<1E-6){1r}t2=t2-x2/d2}t0=0;t1=1;t2=x;if(t2<t0){1b t0}if(t2>t1){1b t1}44(t0<t1){x2=y9(t2);if(4l(x2-x)<pN){1b t2}if(x>x2){t0=t2}1i{t1=t2}t2=(t1-t0)/2+t0}1b t2}1b HU(t,1/(hb*5c))}3l.13v=1a(f){f?31.on("4j.2L.sR."+J.id,f):31.8q("4j.2L.sR."+J.id);1b J};1a eH(2L,ms){K 8B=[],xZ={};J.ms=ms;J.dE=1;if(2L){1o(K 1l in 2L){if(2L[3A](1l)){xZ[3U(1l)]=2L[1l];8B.1I(3U(1l))}}8B.g5(HD)}J.2L=xZ;J.1C=8B[8B.1e-1];J.8B=8B}eH.2V.ha=1a(ha){K a=1U eH(J.2L,J.ms);a.dE=J.dE;a.sJ=+ha||0;1b a};eH.2V.lh=1a(dE){K a=1U eH(J.2L,J.ms);a.sJ=J.sJ;a.dE=3M.ei(5a(dE,0))||1;1b a};1a ld(2L,1f,b9,6N,iG,dE){b9=3U(b9);K 1z,iH,sN,8B=[],3q,3I,q8,ms=2L.ms,2D={},to={},4F={};if(6N){1o(i=0,ii=5i.1e;i<ii;i++){K e=5i[i];if(e.el.id==1f.id&&e.2L==2L){if(e.b9!=b9){5i.5v(i,1);sN=1}1i{iH=e}1f.1l(e.iG);1r}}}1i{6N=+to}1o(K i=0,ii=2L.8B.1e;i<ii;i++){if(2L.8B[i]==b9||2L.8B[i]>6N*2L.1C){b9=2L.8B[i];3I=2L.8B[i-1]||0;ms=ms/2L.1C*(b9-3I);3q=2L.8B[i+1];1z=2L.2L[b9];1r}1i{if(6N){1f.1l(2L.2L[2L.8B[i]])}}}if(!1z){1b}if(!iH){1o(K 1l in 1z){if(1z[3A](1l)){if(sT[3A](1l)||1f.2I.9m[3A](1l)){2D[1l]=1f.1l(1l);2D[1l]==1c&&(2D[1l]=HA[1l]);to[1l]=1z[1l];3E(sT[1l]){1p nu:4F[1l]=(to[1l]-2D[1l])/ms;1r;1p"az":2D[1l]=R.cU(2D[1l]);K sV=R.cU(to[1l]);4F[1l]={r:(sV.r-2D[1l].r)/ ms, g:(sV.g - 2D[1l].g) /ms,b:(sV.b-2D[1l].b)/ms};1r;1p"1L":K y5=iJ(2D[1l],to[1l]),HK=y5[1];2D[1l]=y5[0];4F[1l]=[];1o(i=0,ii=2D[1l].1e;i<ii;i++){4F[1l][i]=[0];1o(K j=1,jj=2D[1l][i].1e;j<jj;j++){4F[1l][i][j]=(HK[i][j]-2D[1l][i][j])/ms}}1r;1p"3T":K 1Y=1f.1Y,eq=HL(1Y[1l],to[1l]);if(eq){2D[1l]=eq.2D;to[1l]=eq.to;4F[1l]=[];4F[1l].HG=1m;1o(i=0,ii=2D[1l].1e;i<ii;i++){4F[1l][i]=[2D[1l][i][0]];1o(j=1,jj=2D[1l][i].1e;j<jj;j++){4F[1l][i][j]=(to[1l][i][j]-2D[1l][i][j])/ms}}}1i{K m=1f.4O||1U eP,fb={1Y:{3T:1Y.3T},6J:1a(){1b 1f.6J(1)}};2D[1l]=[m.a,m.b,m.c,m.d,m.e,m.f];wO(fb,to[1l]);to[1l]=fb.1Y.3T;4F[1l]=[(fb.4O.a-m.a)/ ms, (fb.4O.b - m.b) /ms,(fb.4O.c-m.c)/ ms, (fb.4O.d - m.d) /ms,(fb.4O.e-m.e)/ ms, (fb.4O.f - m.f) /ms]}1r;1p"wQ":K 2S=4d(1z[1l])[3C](5B),il=4d(2D[1l])[3C](5B);if(1l=="6s-4p"){2D[1l]=il;4F[1l]=[];i=il.1e;44(i--){4F[1l][i]=(2S[i]-2D[1l][i])/ms}}to[1l]=2S;1r;5m:2S=[][3L](1z[1l]);il=[][3L](2D[1l]);4F[1l]=[];i=1f.2I.9m[1l].1e;44(i--){4F[1l][i]=((2S[i]||0)-(il[i]||0))/ms}1r}}}}K 5Y=1z.5Y,f5=R.JX[5Y];if(!f5){f5=4d(5Y).3k(JY);if(f5&&f5.1e==5){K gs=f5;f5=1a(t){1b JZ(t,+gs[1],+gs[2],+gs[3],+gs[4],ms)}}1i{f5=JV}}q8=1z.2T||(2L.2T||+1U 5A);e={2L:2L,b9:b9,q8:q8,2T:q8+(2L.sJ||0),6N:0,lb:6N||0,5S:1j,ms:ms,5Y:f5,2D:2D,4F:4F,to:to,el:1f,1X:1z.1X,3I:3I,3q:3q,lh:dE||2L.dE,gJ:1f.1l(),iG:iG};5i.1I(e);if(6N&&(!iH&&!sN)){e.5S=1m;e.2T=1U 5A-ms*6N;if(5i.1e==1){1b 6H()}}if(sN){e.2T=1U 5A-e.ms*6N}5i.1e==1&&wX(6H)}1i{iH.lb=6N;iH.2T=1U 5A-iH.ms*6N}31("4j.2L.2T."+1f.id,1f,2L)}R.6H=1a(1z,ms,5Y,1X){if(1z eM eH){1b 1z}if(R.is(5Y,"1a")||!5Y){1X=1X||(5Y||1c);5Y=1c}1z=4I(1z);ms=+ms||0;K p={},fq,1l;1o(1l in 1z){if(1z[3A](1l)&&(3U(1l)!=1l&&3U(1l)+"%"!=1l)){fq=1m;p[1l]=1z[1l]}}if(!fq){1b 1U eH(1z,ms)}1i{5Y&&(p.5Y=5Y);1X&&(p.1X=1X);1b 1U eH({100:p},ms)}};3l.4D=1a(1z,ms,5Y,1X){K 1f=J;if(1f.5p){1X&&1X.2B(1f);1b 1f}K 2L=1z eM eH?1z:R.6H(1z,ms,5Y,1X);ld(2L,1f,2L.8B[0],1c,1f.1l());1b 1f};3l.Ty=1a(2L,1n){if(2L&&1n!=1c){J.6N(2L,6a(1n,2L.ms)/2L.ms)}1b J};3l.6N=1a(2L,1n){K 2q=[],i=0,5T,e;if(1n!=1c){ld(2L,J,-1,6a(1n,1));1b J}1i{5T=5i.1e;1o(;i<5T;i++){e=5i[i];if(e.el.id==J.id&&(!2L||e.2L==2L)){if(2L){1b e.6N}2q.1I({2L:e.2L,6N:e.6N})}}if(2L){1b 0}1b 2q}};3l.JK=1a(2L){1o(K i=0;i<5i.1e;i++){if(5i[i].el.id==J.id&&(!2L||5i[i].2L==2L)){if(31("4j.2L.JK."+J.id,J,5i[i].2L)!==1j){5i[i].wT=1m}}}1b J};3l.JL=1a(2L){1o(K i=0;i<5i.1e;i++){if(5i[i].el.id==J.id&&(!2L||5i[i].2L==2L)){K e=5i[i];if(31("4j.2L.JL."+J.id,J,e.2L)!==1j){4a e.wT;J.6N(e.2L,e.6N)}}}1b J};3l.5S=1a(2L){1o(K i=0;i<5i.1e;i++){if(5i[i].el.id==J.id&&(!2L||5i[i].2L==2L)){if(31("4j.2L.5S."+J.id,J,5i[i].2L)!==1j){5i.5v(i--,1)}}}1b J};1a wS(2I){1o(K i=0;i<5i.1e;i++){if(5i[i].el.2I==2I){5i.5v(i--,1)}}}31.on("4j.3z",wS);31.on("4j.9J",wS);3l.3D=1a(){1b"ht\\hv\\TX 1F"};K lc=1a(1H){J.1H=[];J.1e=0;J.1y="5M";if(1H){1o(K i=0,ii=1H.1e;i<ii;i++){if(1H[i]&&(1H[i].5f==3l.5f||1H[i].5f==lc)){J[J.1H.1e]=J.1H[J.1H.1e]=1H[i];J.1e++}}}},6Y=lc.2V;6Y.1I=1a(){K 1h,5T;1o(K i=0,ii=2v.1e;i<ii;i++){1h=2v[i];if(1h&&(1h.5f==3l.5f||1h.5f==lc)){5T=J.1H.1e;J[5T]=J.1H[5T]=1h;J.1e++}}1b J};6Y.dM=1a(){J.1e&&4a J[J.1e--];1b J.1H.dM()};6Y.9k=1a(1X,sW){1o(K i=0,ii=J.1H.1e;i<ii;i++){if(1X.2B(sW,J.1H[i],i)===1j){1b J}}1b J};1o(K 4h in 3l){if(3l[3A](4h)){6Y[4h]=1a(eQ){1b 1a(){K 4r=2v;1b J.9k(1a(el){el[eQ][3i](el,4r)})}}(4h)}}6Y.1l=1a(1x,1n){if(1x&&(R.is(1x,42)&&R.is(1x[0],"1F"))){1o(K j=0,jj=1x.1e;j<jj;j++){J.1H[j].1l(1x[j])}}1i{1o(K i=0,ii=J.1H.1e;i<ii;i++){J.1H[i].1l(1x,1n)}}1b J};6Y.9J=1a(){44(J.1e){J.dM()}};6Y.5v=1a(1T,6u,TO){1T=1T<0?5a(J.1e+1T,0):1T;6u=5a(0,6a(J.1e-1T,6u));K t8=[],xa=[],2k=[],i;1o(i=2;i<2v.1e;i++){2k.1I(2v[i])}1o(i=0;i<6u;i++){xa.1I(J[1T+i])}1o(;i<J.1e-1T;i++){t8.1I(J[1T+i])}K mJ=2k.1e;1o(i=0;i<mJ+t8.1e;i++){J.1H[1T+i]=J[1T+i]=i<mJ?2k[i]:t8[i-mJ]}i=J.1H.1e=J.1e-=6u-mJ;44(J[i]){4a J[i++]}1b 1U lc(xa)};6Y.yA=1a(el){1o(K i=0,ii=J.1e;i<ii;i++){if(J[i]==el){J.5v(i,1);1b 1m}}};6Y.4D=1a(1z,ms,5Y,1X){(R.is(5Y,"1a")||!5Y)&&(1X=5Y||1c);K 5T=J.1H.1e,i=5T,1h,5M=J,t7;if(!5T){1b J}1X&&(t7=1a(){!--5T&&1X.2B(5M)});5Y=R.is(5Y,4i)?5Y:t7;K 2L=R.6H(1z,ms,5Y,t7);1h=J.1H[--i].4D(2L);44(i--){J.1H[i]&&(!J.1H[i].5p&&J.1H[i].K6(1h,2L,2L));J.1H[i]&&!J.1H[i].5p||5T--}1b J};6Y.fj=1a(el){K i=J.1H.1e;44(i--){J.1H[i].fj(el)}1b J};6Y.6J=1a(){K x=[],y=[],x2=[],y2=[];1o(K i=J.1H.1e;i--;){if(!J.1H[i].5p){K 5n=J.1H[i].6J();x.1I(5n.x);y.1I(5n.y);x2.1I(5n.x+5n.1k);y2.1I(5n.y+5n.1s)}}x=6a[3i](0,x);y=6a[3i](0,y);x2=5a[3i](0,x2);y2=5a[3i](0,y2);1b{x:x,y:y,x2:x2,y2:y2,1k:x2-x,1s:y2-y}};6Y.65=1a(s){s=J.2I.5M();1o(K i=0,ii=J.1H.1e;i<ii;i++){s.1I(J.1H[i].65())}1b s};6Y.3D=1a(){1b"ht\\hv\\Vi 5M"};6Y.cP=1a(Kp){K 8c=J.2I.5M();J.9k(1a(dc,1T){K g=dc.cP(Kp);if(g!=1c){g.9k(1a(Kk,V8){8c.1I(Kk)})}});1b 8c};6Y.iD=1a(x,y){K iD=1j;J.9k(1a(el){if(el.iD(x,y)){iD=1m;1b 1j}});1b iD};R.UN=1a(2U){if(!2U.9e){1b 2U}J.e7=J.e7||{};K iC={w:2U.w,9e:{},gN:{}},8A=2U.9e["2U-8A"];1o(K 6h in 2U.9e){if(2U.9e[3A](6h)){iC.9e[6h]=2U.9e[6h]}}if(J.e7[8A]){J.e7[8A].1I(iC)}1i{J.e7[8A]=[iC]}if(!2U.3Z){iC.9e["Ax-Aw-em"]=ae(2U.9e["Ax-Aw-em"],10);1o(K mB in 2U.gN){if(2U.gN[3A](mB)){K 1L=2U.gN[mB];iC.gN[mB]={w:1L.w,k:{},d:1L.d&&"M"+1L.d.3p(/[UM]/g,1a(8D){1b{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[8D]||"M"})+"z"};if(1L.k){1o(K k in 1L.k){if(1L[3A](k)){iC.gN[mB].k[k]=1L.k[k]}}}}}}1b 2U};6o.Kg=1a(8A,al,2x,mU){mU=mU||"t6";2x=2x||"t6";al=+al||({t6:mf,Uz:UE,UZ:tF,UY:vx}[al]||mf);if(!R.e7){1b}K 2U=R.e7[8A];if(!2U){K 1x=1U dQ("(^|\\\\s)"+8A.3p(/[^\\w\\d\\s+!~.:1Y-]/g,E)+"(\\\\s|$)","i");1o(K sZ in R.e7){if(R.e7[3A](sZ)){if(1x.9t(sZ)){2U=R.e7[sZ];1r}}}}K j8;if(2U){1o(K i=0,ii=2U.1e;i<ii;i++){j8=2U[i];if(j8.9e["2U-al"]==al&&((j8.9e["2U-2x"]==2x||!j8.9e["2U-2x"])&&j8.9e["2U-mU"]==mU)){1r}}}1b j8};6o.UO=1a(x,y,4i,2U,3V,gJ,sm,sk){gJ=gJ||"yM";sm=5a(6a(sm||0,1),-1);sk=5a(6a(sk||1,3),1);K lA=4d(4i)[3C](E),cc=0,nV=0,1L=E,7N;R.is(2U,"4i")&&(2U=J.Kg(2U));if(2U){7N=(3V||16)/2U.9e["Ax-Aw-em"];K bb=2U.9e.3d[3C](5B),1C=+bb[0],sI=bb[3]-bb[1],zZ=0,1s=+bb[1]+(gJ=="SP"?sI+ +2U.9e.SL:sI/2);1o(K i=0,ii=lA.1e;i<ii;i++){if(lA[i]=="\\n"){cc=0;hc=0;nV=0;zZ+=sI*sk}1i{K 3I=nV&&2U.gN[lA[i-1]]||{},hc=2U.gN[lA[i]];cc+=nV?(3I.w||2U.w)+(3I.k&&3I.k[lA[i]]||0)+2U.w*sm:0;nV=1}if(hc&&hc.d){1L+=R.sd(hc.d,["t",cc*7N,zZ*7N,"s",7N,7N,1C,1s,"t",(x-1C)/ 7N, (y - 1s) /7N])}}}1b J.1L(1L).1l({2e:"#d4",2b:"3j"})};6o.5l=1a(fq){if(R.is(fq,"42")){K 1A=J.5M(),i=0,ii=fq.1e,j;1o(;i<ii;i++){j=fq[i]||{};aC[3A](j.1y)&&1A.1I(J[j.1y]().1l(j))}}1b 1A};R.6M=1a(dD,1z){K 2k=R.is(1z,42)?[0][3L](1z):2v;dD&&(R.is(dD,4i)&&(2k.1e-1&&(dD=dD.3p(J5,1a(7s,i){1b 2k[++i]==1c?E:2k[i]}))));1b dD||E};R.Tr=1a(){K IW=/\\{([^\\}]+)\\}/g,Jd=/(?:(?:^|\\.)(.+?)(?=\\[|\\.|$|\\()|\\[(\'|")(.+?)\\2\\])(\\(\\))?/g,IR=1a(6D,1q,1w){K 1A=1w;1q.3p(Jd,1a(6D,1x,Jf,Jb,Jc){1x=1x||Jb;if(1A){if(1x in 1A){1A=1A[1x]}2A 1A=="1a"&&(Jc&&(1A=1A()))}});1A=(1A==1c||1A==1w?6D:1A)+"";1b 1A};1b 1a(7s,1w){1b 5E(7s).3p(IW,1a(6D,1q){1b IR(6D,1q,1w)})}}();R.SD=1a(){sG.AJ?g.5q.b4=sG.is:4a b4;1b R};R.st=6Y;(1a(3c,bL,f){if(3c.n5==1c&&3c.c6){3c.c6(bL,f=1a(){3c.na(bL,f,1j);3c.n5="xi"},1j);3c.n5="vU"}1a A4(){/in/.9t(3c.n5)?6A(A4,9):R.31("4j.m5")}A4()})(2E,"SG");31.on("4j.m5",1a(){bL=1m});(1a(){if(!R.3Z){1b}K 3A="81",4d=5E,3U=cm,ae=61,3M=3m,5a=3M.47,4l=3M.4l,6g=3M.6g,5B=/[, ]+/,31=R.31,E="",S=" ";K e2="6G://pP.w3.ra/SR/e2",Jw={6F:"M5,0 0,2.5 5,5z",pG:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",qN:"M2.5,0 5,2.5 2.5,5 0,2.5z",72:"M6,1 1,3.5 6,6",r7:"M2.5,T5.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,T4"},cF={};R.3D=1a(){1b"Gh sh Tc dm.\\G9 qY zw ht\\hv "+J.6d};K $=1a(el,1l){if(1l){if(2A el=="4i"){el=$(el)}1o(K 1q in 1l){if(1l[3A](1q)){if(1q.gb(0,6)=="e2:"){el.qD(e2,1q.gb(6),4d(1l[1q]))}1i{el.bQ(1q,4d(1l[1q]))}}}}1i{el=R.7M.3c.Ta("6G://pP.w3.ra/GW/3Z",el);el.2x&&(el.2x.T0="Ab(0,0,0,0)")}1b el},pU=1a(1f,46){K 1y="qg",id=1f.id+46,fx=0.5,fy=0.5,o=1f.1u,dm=1f.2I,s=o.2x,el=R.7M.3c.fP(id);if(!el){46=4d(46).3p(R.zC,1a(6D,Aa,A5){1y="r9";if(Aa&&A5){fx=3U(Aa);fy=3U(A5);K A7=(fy>0.5)*2-1;6g(fx-0.5,2)+6g(fy-0.5,2)>0.25&&((fy=3M.a8(0.25-6g(fx-0.5,2))*A7+0.5)&&(fy!=0.5&&(fy=fy.4J(5)-1E-5*A7)))}1b E});46=46.3C(/\\s*\\-\\s*/);if(1y=="qg"){K 7G=46.cc();7G=-3U(7G);if(c5(7G)){1b 1c}K 95=[0,0,3M.9n(R.9o(7G)),3M.94(R.9o(7G))],47=1/(5a(4l(95[2]),4l(95[3]))||1);95[2]*=47;95[3]*=47;if(95[2]<0){95[0]=-95[2];95[2]=0}if(95[3]<0){95[1]=-95[3];95[3]=0}}K 5s=R.zG(46);if(!5s){1b 1c}id=id.3p(/[\\(\\)\\s,\\B5#]/g,"1Y");if(1f.46&&id!=1f.46.id){dm.eC.7B(1f.46);4a 1f.46}if(!1f.46){el=$(1y+"Sm",{id:id});1f.46=el;$(el,1y=="r9"?{fx:fx,fy:fy}:{x1:95[0],y1:95[1],x2:95[2],y2:95[3],SA:1f.4O.o8()});dm.eC.3W(el);1o(K i=0,ii=5s.1e;i<ii;i++){el.3W($("5S",{2d:5s[i].2d?5s[i].2d:i?"100%":"0%","5S-3F":5s[i].3F||"#kO"}))}}}$(o,{2e:"5b(#"+id+")",2Q:1,"2e-2Q":1});s.2e=E;s.2Q=1;s.Vz=1;1b 1},nQ=1a(o){K 3d=o.6J(1);$(o.dn,{Y6:o.4O.o8()+" gr("+3d.x+","+3d.y+")"})},cL=1a(o,1n,eR){if(o.1y=="1L"){K 2S=4d(1n).3P().3C("-"),p=o.2I,se=eR?"4n":"2T",1u=o.1u,2i=o.2i,2b=2i["2b-1k"],i=2S.1e,1y="pG",2D,to,dx,nl,1l,w=3,h=3,t=5;44(i--){3E(2S[i]){1p"6F":;1p"pG":;1p"r7":;1p"qN":;1p"72":;1p"3j":1y=2S[i];1r;1p"H8":h=5;1r;1p"S4":h=2;1r;1p"S5":w=5;1r;1p"S3":w=2;1r}}if(1y=="72"){w+=2;h+=2;t+=2;dx=1;nl=eR?4:1;1l={2e:"3j",2b:2i.2b}}1i{nl=dx=w/2;1l={2e:2i.2b,2b:"3j"}}if(o.1Y.4Q){if(eR){o.1Y.4Q.Jy&&cF[o.1Y.4Q.Jy]--;o.1Y.4Q.Jz&&cF[o.1Y.4Q.Jz]--}1i{o.1Y.4Q.Ju&&cF[o.1Y.4Q.Ju]--;o.1Y.4Q.Jv&&cF[o.1Y.4Q.Jv]--}}1i{o.1Y.4Q={}}if(1y!="3j"){K hg="4j-eo-"+1y,hj="4j-eo-"+se+1y+w+h;if(!R.7M.3c.fP(hg)){p.eC.3W($($("1L"),{"2b-cY":"4U",d:Jw[1y],id:hg}));cF[hg]=1}1i{cF[hg]++}K eo=R.7M.3c.fP(hj),hB;if(!eo){eo=$($("eo"),{id:hj,Y5:h,Ya:w,Y9:"5C",nl:nl,Y8:h/2});hB=$($("hB"),{"e2:5h":"#"+hg,3T:(eR?"5F(cI "+w/ 2 + " " + h /2+") ":E)+"7N("+w/ t + "," + h /t+")","2b-1k":(1/ ((w /t+h/ t) /2)).4J(4)});eo.3W(hB);p.eC.3W(eo);cF[hj]=1}1i{cF[hj]++;hB=eo.d8("hB")[0]}$(hB,1l);K sE=dx*(1y!="qN"&&1y!="r7");if(eR){2D=o.1Y.4Q.JF*2b||0;to=R.cE(2i.1L)-sE*2b}1i{2D=sE*2b;to=R.cE(2i.1L)-(o.1Y.4Q.JB*2b||0)}1l={};1l["eo-"+se]="5b(#"+hj+")";if(to||2D){1l.d=R.n8(2i.1L,2D,to)}$(1u,1l);o.1Y.4Q[se+"pA"]=hg;o.1Y.4Q[se+"Jt"]=hj;o.1Y.4Q[se+"dx"]=sE;o.1Y.4Q[se+"4W"]=1y;o.1Y.4Q[se+"5E"]=1n}1i{if(eR){2D=o.1Y.4Q.JF*2b||0;to=R.cE(2i.1L)-2D}1i{2D=0;to=R.cE(2i.1L)-(o.1Y.4Q.JB*2b||0)}o.1Y.4Q[se+"pA"]&&$(1u,{d:R.n8(2i.1L,2D,to)});4a o.1Y.4Q[se+"pA"];4a o.1Y.4Q[se+"Jt"];4a o.1Y.4Q[se+"dx"];4a o.1Y.4Q[se+"4W"];4a o.1Y.4Q[se+"5E"]}1o(1l in cF){if(cF[3A](1l)&&!cF[1l]){K 1h=R.7M.3c.fP(1l);1h&&1h.3w.7B(1h)}}}},9B={"":[0],"3j":[0],"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},AE=1a(o,1n,1z){1n=9B[4d(1n).3P()];if(1n){K 1k=o.2i["2b-1k"]||"1",kB={4U:1k,zd:1k,kB:0}[o.2i["2b-cY"]||1z["2b-cY"]]||0,AH=[],i=1n.1e;44(i--){AH[i]=1n[i]*1k+(i%2?1:-1)*kB}$(o.1u,{"2b-9B":AH.54(",")})}},eJ=1a(o,1z){K 1u=o.1u,2i=o.2i,FA=1u.2x.i6;1u.2x.i6="6O";1o(K 6P in 1z){if(1z[3A](6P)){if(!R.lE[3A](6P)){bI}K 1n=1z[6P];2i[6P]=1n;3E(6P){1p"57":o.57(1n);1r;1p"6m":K 6m=1u.d8("6m");if(6m.1e&&(6m=6m[0])){6m.7R.Jr=1n}1i{6m=$("6m");K 2a=R.7M.3c.zL(1n);6m.3W(2a);1u.3W(6m)}1r;1p"5h":;1p"3g":K pn=1u.3w;if(pn.6l.3P()!="a"){K hl=$("a");pn.7n(hl,1u);hl.3W(1u);pn=hl}if(6P=="3g"){pn.qD(e2,"4T",1n=="AC"?"1U":1n)}1i{pn.qD(e2,6P,1n)}1r;1p"lP":1u.2x.lP=1n;1r;1p"3T":o.3T(1n);1r;1p"bE-2T":cL(o,1n);1r;1p"bE-4n":cL(o,1n,1);1r;1p"6s-4p":K 4p=4d(1n).3C(5B);if(4p.1e==4){o.6s&&o.6s.3w.3w.7B(o.6s.3w);K el=$("Yi"),rc=$("4p");el.id=R.mV();$(rc,{x:4p[0],y:4p[1],1k:4p[2],1s:4p[3]});el.3W(rc);o.2I.eC.3W(el);$(1u,{"6s-1L":"5b(#"+el.id+")"});o.6s=rc}if(!1n){K 1L=1u.AO("6s-1L");if(1L){K 6s=R.7M.3c.fP(1L.3p(/(^5b\\(#|\\)$)/g,E));6s&&6s.3w.7B(6s);$(1u,{"6s-1L":E});4a o.6s}}1r;1p"1L":if(o.1y=="1L"){$(1u,{d:1n?2i.1L=R.oi(1n):"M0,0"});o.1Y.8i=1;if(o.1Y.4Q){"lK"in o.1Y.4Q&&cL(o,o.1Y.4Q.lK);"lT"in o.1Y.4Q&&cL(o,o.1Y.4Q.lT,1)}}1r;1p"1k":1u.bQ(6P,1n);o.1Y.8i=1;if(2i.fx){6P="x";1n=2i.x}1i{1r};1p"x":if(2i.fx){1n=-2i.x-(2i.1k||0)};1p"rx":if(6P=="rx"&&o.1y=="4p"){1r};1p"cx":1u.bQ(6P,1n);o.dn&&nQ(o);o.1Y.8i=1;1r;1p"1s":1u.bQ(6P,1n);o.1Y.8i=1;if(2i.fy){6P="y";1n=2i.y}1i{1r};1p"y":if(2i.fy){1n=-2i.y-(2i.1s||0)};1p"ry":if(6P=="ry"&&o.1y=="4p"){1r};1p"cy":1u.bQ(6P,1n);o.dn&&nQ(o);o.1Y.8i=1;1r;1p"r":if(o.1y=="4p"){$(1u,{rx:1n,ry:1n})}1i{1u.bQ(6P,1n)}o.1Y.8i=1;1r;1p"4k":if(o.1y=="9b"){1u.qD(e2,"5h",1n)}1r;1p"2b-1k":if(o.1Y.sx!=1||o.1Y.sy!=1){1n/=5a(4l(o.1Y.sx),4l(o.1Y.sy))||1}if(o.2I.qe){1n*=o.2I.qe}1u.bQ(6P,1n);if(2i["2b-9B"]){AE(o,2i["2b-9B"],1z)}if(o.1Y.4Q){"lK"in o.1Y.4Q&&cL(o,o.1Y.4Q.lK);"lT"in o.1Y.4Q&&cL(o,o.1Y.4Q.lT,1)}1r;1p"2b-9B":AE(o,1n,1z);1r;1p"2e":K h1=4d(1n).3k(R.zs);if(h1){el=$("dn");K ig=$("9b");el.id=R.mV();$(el,{x:0,y:0,Xu:"XW",1s:1,1k:1});$(ig,{x:0,y:0,"e2:5h":h1[1]});el.3W(ig);(1a(el){R.zt(h1[1],1a(){K w=J.h7,h=J.8v;$(el,{1k:w,1s:h});$(ig,{1k:w,1s:h});o.2I.l0()})})(el);o.2I.eC.3W(el);$(1u,{2e:"5b(#"+el.id+")"});o.dn=el;o.dn&&nQ(o);1r}K 3J=R.cU(1n);if(!3J.5d){4a 1z.46;4a 2i.46;!R.is(2i.2Q,"2r")&&(R.is(1z.2Q,"2r")&&$(1u,{2Q:2i.2Q}));!R.is(2i["2e-2Q"],"2r")&&(R.is(1z["2e-2Q"],"2r")&&$(1u,{"2e-2Q":2i["2e-2Q"]}))}1i{if((o.1y=="9U"||(o.1y=="b2"||4d(1n).bi()!="r"))&&pU(o,1n)){if("2Q"in 2i||"2e-2Q"in 2i){K 46=R.7M.3c.fP(1u.AO("2e").3p(/^5b\\(#|\\)$/g,E));if(46){K lY=46.d8("5S");$(lY[lY.1e-1],{"5S-2Q":("2Q"in 2i?2i.2Q:1)*("2e-2Q"in 2i?2i["2e-2Q"]:1)})}}2i.46=1n;2i.2e="3j";1r}}3J[3A]("2Q")&&$(1u,{"2e-2Q":3J.2Q>1?3J.2Q/100:3J.2Q});1p"2b":3J=R.cU(1n);1u.bQ(6P,3J.6j);6P=="2b"&&(3J[3A]("2Q")&&$(1u,{"2b-2Q":3J.2Q>1?3J.2Q/100:3J.2Q}));if(6P=="2b"&&o.1Y.4Q){"lK"in o.1Y.4Q&&cL(o,o.1Y.4Q.lK);"lT"in o.1Y.4Q&&cL(o,o.1Y.4Q.lT,1)}1r;1p"46":(o.1y=="9U"||(o.1y=="b2"||4d(1n).bi()!="r"))&&pU(o,1n);1r;1p"2Q":if(2i.46&&!2i[3A]("2b-2Q")){$(1u,{"2b-2Q":1n>1?1n/100:1n})};1p"2e-2Q":if(2i.46){46=R.7M.3c.fP(1u.AO("2e").3p(/^5b\\(#|\\)$/g,E));if(46){lY=46.d8("5S");$(lY[lY.1e-1],{"5S-2Q":1n})}1r};5m:6P=="2U-3V"&&(1n=ae(1n,10)+"px");K FF=6P.3p(/(\\-.)/g,1a(w){1b w.gb(1).8Z()});1u.2x[FF]=1n;o.1Y.8i=1;1u.bQ(6P,1n);1r}}}GM(o,1z);1u.2x.i6=FA},yU=1.2,GM=1a(el,1z){if(el.1y!="28"||!(1z[3A]("28")||(1z[3A]("2U")||(1z[3A]("2U-3V")||(1z[3A]("x")||1z[3A]("y")))))){1b}K a=el.2i,1u=el.1u,ej=1u.7R?ae(R.7M.3c.ly.sj(1u.7R,E).Gw("2U-3V"),10):10;if(1z[3A]("28")){a.28=1z.28;44(1u.7R){1u.7B(1u.7R)}K yR=4d(1z.28).3C("\\n"),hJ=[],gu;1o(K i=0,ii=yR.1e;i<ii;i++){gu=$("gu");i&&$(gu,{dy:ej*yU,x:a.x});gu.3W(R.7M.3c.zL(yR[i]));1u.3W(gu);hJ[i]=gu}}1i{hJ=1u.d8("gu");1o(i=0,ii=hJ.1e;i<ii;i++){if(i){$(hJ[i],{dy:ej*yU,x:a.x})}1i{$(hJ[0],{dy:0})}}}$(1u,{x:a.x,y:a.y});el.1Y.8i=1;K bb=el.mc(),qV=a.y-(bb.y+bb.1s/2);qV&&(R.is(qV,"n4")&&$(hJ[0],{dy:qV}))},ab=1a(1u,3Z){K X=0,Y=0;J[0]=J.1u=1u;1u.4j=1m;J.id=R.yI++;1u.yJ=J.id;J.4O=R.4O();J.gw=1c;J.2I=3Z;J.2i=J.2i||{};J.1Y={3T:[],sx:1,sy:1,4B:0,dx:0,dy:0,8i:1};!3Z.4v&&(3Z.4v=J);J.3I=3Z.1C;3Z.1C&&(3Z.1C.3q=J);3Z.1C=J;J.3q=1c},3l=R.el;ab.2V=3l;3l.5f=ab;R.4R.1L=1a(8V,dm){K el=$("1L");dm.1Q&&dm.1Q.3W(el);K p=1U ab(el,dm);p.1y="1L";eJ(p,{2e:"3j",2b:"#d4",1L:8V});1b p};3l.5F=1a(4B,cx,cy){if(J.5p){1b J}4B=4d(4B).3C(5B);if(4B.1e-1){cx=3U(4B[1]);cy=3U(4B[2])}4B=3U(4B[0]);cy==1c&&(cx=cy);if(cx==1c||cy==1c){K 3d=J.6J(1);cx=3d.x+3d.1k/2;cy=3d.y+3d.1s/2}J.3T(J.1Y.3T.3L([["r",4B,cx,cy]]));1b J};3l.7N=1a(sx,sy,cx,cy){if(J.5p){1b J}sx=4d(sx).3C(5B);if(sx.1e-1){sy=3U(sx[1]);cx=3U(sx[2]);cy=3U(sx[3])}sx=3U(sx[0]);sy==1c&&(sy=sx);cy==1c&&(cx=cy);if(cx==1c||cy==1c){K 3d=J.6J(1)}cx=cx==1c?3d.x+3d.1k/2:cx;cy=cy==1c?3d.y+3d.1s/2:cy;J.3T(J.1Y.3T.3L([["s",sx,sy,cx,cy]]));1b J};3l.gr=1a(dx,dy){if(J.5p){1b J}dx=4d(dx).3C(5B);if(dx.1e-1){dy=3U(dx[1])}dx=3U(dx[0])||0;dy=+dy||0;J.3T(J.1Y.3T.3L([["t",dx,dy]]));1b J};3l.3T=1a(bH){K 1Y=J.1Y;if(bH==1c){1b 1Y.3T}R.yO(J,bH);J.6s&&$(J.6s,{3T:J.4O.o8()});J.dn&&nQ(J);J.1u&&$(J.1u,{3T:J.4O});if(1Y.sx!=1||1Y.sy!=1){K sw=J.2i[3A]("2b-1k")?J.2i["2b-1k"]:1;J.1l({"2b-1k":sw})}1b J};3l.3G=1a(){!J.5p&&J.2I.l0(J.1u.2x.4L="3j");1b J};3l.4T=1a(){!J.5p&&J.2I.l0(J.1u.2x.4L="");1b J};3l.3z=1a(){if(J.5p||!J.1u.3w){1b}K 2I=J.2I;2I.77&&2I.77.yA(J);31.8q("4j.*.*."+J.id);if(J.46){2I.eC.7B(J.46)}R.yP(J,2I);if(J.1u.3w.6l.3P()=="a"){J.1u.3w.3w.7B(J.1u.3w)}1i{J.1u.3w.7B(J.1u)}1o(K i in J){J[i]=2A J[i]=="1a"?R.nR(i):1c}J.5p=1m};3l.mc=1a(){if(J.1u.2x.4L=="3j"){J.4T();K 3G=1m}K 3d={};6X{3d=J.1u.6J()}6U(e){}YA{3d=3d||{}}3G&&J.3G();1b 3d};3l.1l=1a(1x,1n){if(J.5p){1b J}if(1x==1c){K 1A={};1o(K a in J.2i){if(J.2i[3A](a)){1A[a]=J.2i[a]}}1A.46&&(1A.2e=="3j"&&((1A.2e=1A.46)&&4a 1A.46));1A.3T=J.1Y.3T;1b 1A}if(1n==1c&&R.is(1x,"4i")){if(1x=="2e"&&(J.2i.2e=="3j"&&J.2i.46)){1b J.2i.46}if(1x=="3T"){1b J.1Y.3T}K 7y=1x.3C(5B),2q={};1o(K i=0,ii=7y.1e;i<ii;i++){1x=7y[i];if(1x in J.2i){2q[1x]=J.2i[1x]}1i{if(R.is(J.2I.9m[1x],"1a")){2q[1x]=J.2I.9m[1x].RJ}1i{2q[1x]=R.lE[1x]}}}1b ii-1?2q:2q[7y[0]]}if(1n==1c&&R.is(1x,"42")){2q={};1o(i=0,ii=1x.1e;i<ii;i++){2q[1x[i]]=J.1l(1x[i])}1b 2q}if(1n!=1c){K 1z={};1z[1x]=1n}1i{if(1x!=1c&&R.is(1x,"1F")){1z=1x}}1o(K 1q in 1z){31("4j.1l."+1q+"."+J.id,J,1z[1q])}1o(1q in J.2I.9m){if(J.2I.9m[3A](1q)&&(1z[3A](1q)&&R.is(J.2I.9m[1q],"1a"))){K 9l=J.2I.9m[1q].3i(J,[].3L(1z[1q]));J.2i[1q]=1z[1q];1o(K c0 in 9l){if(9l[3A](c0)){1z[c0]=9l[c0]}}}}eJ(J,1z);1b J};3l.RN=1a(){if(J.5p){1b J}if(J.1u.3w.6l.3P()=="a"){J.1u.3w.3w.3W(J.1u.3w)}1i{J.1u.3w.3W(J.1u)}K 3Z=J.2I;3Z.1C!=J&&R.z3(J,3Z);1b J};3l.RM=1a(){if(J.5p){1b J}K 1N=J.1u.3w;if(1N.6l.3P()=="a"){1N.3w.7n(J.1u.3w,J.1u.3w.3w.7R)}1i{if(1N.7R!=J.1u){1N.7n(J.1u,J.1u.3w.7R)}}R.za(J,J.2I);K 3Z=J.2I;1b J};3l.fj=1a(1f){if(J.5p){1b J}K 1u=1f.1u||1f[1f.1e-1].1u;if(1u.hV){1u.3w.7n(J.1u,1u.hV)}1i{1u.3w.3W(J.1u)}R.z9(J,1f,J.2I);1b J};3l.7n=1a(1f){if(J.5p){1b J}K 1u=1f.1u||1f[0].1u;1u.3w.7n(J.1u,1u);R.z8(J,1f,J.2I);1b J};3l.57=1a(3V){K t=J;if(+3V!==0){K le=$("4G"),57=$("Yz");t.2i.57=3V;le.id=R.mV();$(57,{Yy:+3V||1.5});le.3W(57);t.2I.eC.3W(le);t.qk=le;$(t.1u,{4G:"5b(#"+le.id+")"})}1i{if(t.qk){t.qk.3w.7B(t.qk);4a t.qk;4a t.2i.57}t.1u.Yt("4G")}1b t};R.4R.9U=1a(3Z,x,y,r){K el=$("9U");3Z.1Q&&3Z.1Q.3W(el);K 1A=1U ab(el,3Z);1A.2i={cx:x,cy:y,r:r,2e:"3j",2b:"#d4"};1A.1y="9U";$(el,1A.2i);1b 1A};R.4R.4p=1a(3Z,x,y,w,h,r){K el=$("4p");3Z.1Q&&3Z.1Q.3W(el);K 1A=1U ab(el,3Z);1A.2i={x:x,y:y,1k:w,1s:h,r:r||0,rx:r||0,ry:r||0,2e:"3j",2b:"#d4"};1A.1y="4p";$(el,1A.2i);1b 1A};R.4R.b2=1a(3Z,x,y,rx,ry){K el=$("b2");3Z.1Q&&3Z.1Q.3W(el);K 1A=1U ab(el,3Z);1A.2i={cx:x,cy:y,rx:rx,ry:ry,2e:"3j",2b:"#d4"};1A.1y="b2";$(el,1A.2i);1b 1A};R.4R.9b=1a(3Z,4k,x,y,w,h){K el=$("9b");$(el,{x:x,y:y,1k:w,1s:h,FZ:"3j"});el.qD(e2,"5h",4k);3Z.1Q&&3Z.1Q.3W(el);K 1A=1U ab(el,3Z);1A.2i={x:x,y:y,1k:w,1s:h,4k:4k};1A.1y="9b";1b 1A};R.4R.28=1a(3Z,x,y,28){K el=$("28");3Z.1Q&&3Z.1Q.3W(el);K 1A=1U ab(el,3Z);1A.2i={x:x,y:y,"28-zO":"yM",28:28,2U:R.lE.2U,2b:"3j",2e:"#d4"};1A.1y="28";eJ(1A,1A.2i);1b 1A};R.4R.kl=1a(1k,1s){J.1k=1k||J.1k;J.1s=1s||J.1s;J.1Q.bQ("1k",J.1k);J.1Q.bQ("1s",J.1s);if(J.gd){J.gf.3i(J,J.gd)}1b J};R.4R.7Q=1a(){K bR=R.AU.3i(0,2v),3t=bR&&bR.3t,x=bR.x,y=bR.y,1k=bR.1k,1s=bR.1s;if(!3t){93 1U 9T("dm 3t 5P 9c.")}K bt=$("3Z"),2F="d5:6O;",zF;x=x||0;y=y||0;1k=1k||QY;1s=1s||Rl;$(bt,{1s:1s,6d:1.1,1k:1k,QV:"6G://pP.w3.ra/GW/3Z"});if(3t==1){bt.2x.gc=2F+"2N:8H;1W:"+x+"px;1C:"+y+"px";R.7M.3c.3x.3W(bt);zF=1}1i{bt.2x.gc=2F+"2N:pV";if(3t.7R){3t.7n(bt,3t.7R)}1i{3t.3W(bt)}}3t=1U R.AS;3t.1k=1k;3t.1s=1s;3t.1Q=bt;3t.9J();3t.qZ=3t.qX=0;zF&&(3t.ss=1a(){});3t.ss();1b 3t};R.4R.gf=1a(x,y,w,h,bK){31("4j.gf",J,J.gd,[x,y,w,h,bK]);K 3V=5a(w/ J.1k, h /J.1s),1C=J.1C,G0=bK?"YK":"W4",vb,sw;if(x==1c){if(J.qe){3V=1}4a J.qe;vb="0 0 "+J.1k+S+J.1s}1i{J.qe=3V;vb=x+S+y+S+w+S+h}$(J.1Q,{W6:vb,FZ:G0});44(3V&&1C){sw="2b-1k"in 1C.2i?1C.2i["2b-1k"]:1;1C.1l({"2b-1k":sw});1C.1Y.8i=1;1C.1Y.gm=1;1C=1C.3I}J.gd=[x,y,w,h,!!bK];1b J};R.2V.ss=1a(){K bt=J.1Q,s=bt.2x,3r;6X{3r=bt.W7()||bt.G4()}6U(e){3r=bt.G4()}K 1W=-3r.e%1,1C=-3r.f%1;if(1W||1C){if(1W){J.qZ=(J.qZ+1W)%1;s.1W=J.qZ+"px"}if(1C){J.qX=(J.qX+1C)%1;s.1C=J.qX+"px"}}};R.2V.9J=1a(){R.31("4j.9J",J);K c=J.1Q;44(c.7R){c.7B(c.7R)}J.4v=J.1C=1c;(J.zN=$("zN")).3W(R.7M.3c.zL("Wi iq ht\\hv "+R.6d));c.3W(J.zN);c.3W(J.eC=$("eC"))};R.2V.3z=1a(){31("4j.3z",J);J.1Q.3w&&J.1Q.3w.7B(J.1Q);1o(K i in J){J[i]=2A J[i]=="1a"?R.nR(i):1c}};K 6Y=R.st;1o(K 4h in 3l){if(3l[3A](4h)&&!6Y[3A](4h)){6Y[4h]=1a(eQ){1b 1a(){K 4r=2v;1b J.9k(1a(el){el[eQ].3i(el,4r)})}}(4h)}}})();(1a(){if(!R.66){1b}K 3A="81",4d=5E,3U=cm,3M=3m,4U=3M.4U,5a=3M.47,6a=3M.5H,4l=3M.4l,hN="2e",5B=/[, ]+/,31=R.31,ms=" zi:FP.zx",S=" ",E="",bp={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},FU=/([zj]),?([^zj]*)/gi,RL=/ zi:\\S+RC\\([^\\)]+\\)/g,2a=/-?[^,\\s-]+/g,yV="2N:8H;1W:0;1C:0;1k:lk;1s:lk",6T=VH,RP={1L:1,4p:1,9b:1},RQ={9U:1,b2:1},RX=1a(1L){K bv=/[VN]/ig,8D=R.oi;4d(1L).3k(bv)&&(8D=R.r4);bv=/[zj]/g;if(8D==R.oi&&!4d(1L).3k(bv)){K 1A=4d(1L).3p(FU,1a(6D,8D,2k){K lp=[],FS=8D.3P()=="m",1A=bp[8D];2k.3p(2a,1a(1n){if(FS&&lp.1e==2){1A+=lp+bp[8D=="m"?"l":"L"];lp=[]}lp.1I(4U(1n*6T))});1b 1A+lp});1b 1A}K pa=8D(1L),p,r;1A=[];1o(K i=0,ii=pa.1e;i<ii;i++){p=pa[i];r=pa[i][0].3P();r=="z"&&(r="x");1o(K j=1,jj=p.1e;j<jj;j++){r+=4U(p[j]*6T)+(j!=jj-1?",":E)}1A.1I(r)}1b 1A.54(S)},zg=1a(4B,dx,dy){K m=R.4O();m.5F(-4B,0.5,0.5);1b{dx:m.x(dx,dy),dy:m.y(dx,dy)}},mX=1a(p,sx,sy,dx,dy,4B){K 1Y=p.1Y,m=p.4O,dw=1Y.dw,o=p.1u,s=o.2x,y=1,kD="",VY,kx=6T/ sx, ky = 6T /sy;s.i6="6O";if(!sx||!sy){1b}o.sv=4l(kx)+S+4l(ky);s.VW=4B*(sx*sy<0?-1:1);if(4B){K c=zg(4B,dx,dy);dx=c.dx;dy=c.dy}sx<0&&(kD+="x");sy<0&&((kD+=" y")&&(y=-1));s.kD=kD;o.lQ=dx*-kx+S+dy*-ky;if(dw||1Y.ib){K 2e=o.d8(hN);2e=2e&&2e[0];o.7B(2e);if(dw){c=zg(4B,m.x(dw[0],dw[1]),m.y(dw[0],dw[1]));2e.2N=c.dx*y+S+c.dy*y}if(1Y.ib){2e.3V=1Y.ib[0]*4l(sx)+S+1Y.ib[1]*4l(sy)}o.3W(2e)}s.i6="5y"};R.3D=1a(){1b"Gh sh Xd\\Xc dZ dm. X5 e8 to i8.\\G9 qY zw ht\\hv "+J.6d};K cL=1a(o,1n,eR){K 2S=4d(1n).3P().3C("-"),se=eR?"4n":"2T",i=2S.1e,1y="pG",w="Gb",h="Gb";44(i--){3E(2S[i]){1p"6F":;1p"pG":;1p"r7":;1p"qN":;1p"72":;1p"3j":1y=2S[i];1r;1p"H8":;1p"S4":h=2S[i];1r;1p"S5":;1p"S3":w=2S[i];1r}}K 2b=o.1u.d8("2b")[0];2b[se+"bE"]=1y;2b[se+"WZ"]=w;2b[se+"WV"]=h},eJ=1a(o,1z){o.2i=o.2i||{};K 1u=o.1u,a=o.2i,s=1u.2x,xy,zn=RP[o.1y]&&(1z.x!=a.x||(1z.y!=a.y||(1z.1k!=a.1k||(1z.1s!=a.1s||(1z.cx!=a.cx||(1z.cy!=a.cy||(1z.rx!=a.rx||(1z.ry!=a.ry||1z.r!=a.r)))))))),RY=RQ[o.1y]&&(a.cx!=1z.cx||(a.cy!=1z.cy||(a.r!=1z.r||(a.rx!=1z.rx||a.ry!=1z.ry)))),1A=o;1o(K 9l in 1z){if(1z[3A](9l)){a[9l]=1z[9l]}}if(zn){a.1L=R.zp[o.1y](o);o.1Y.8i=1}1z.5h&&(1u.5h=1z.5h);1z.6m&&(1u.6m=1z.6m);1z.3g&&(1u.3g=1z.3g);1z.lP&&(s.lP=1z.lP);"57"in 1z&&o.57(1z.57);if(1z.1L&&o.1y=="1L"||zn){1u.1L=RX(~4d(a.1L).3P().4S("r")?R.oi(a.1L):a.1L);if(o.1y=="9b"){o.1Y.dw=[a.x,a.y];o.1Y.ib=[a.1k,a.1s];mX(o,1,1,0,0,0)}}"3T"in 1z&&o.3T(1z.3T);if(RY){K cx=+a.cx,cy=+a.cy,rx=+a.rx||(+a.r||0),ry=+a.ry||(+a.r||0);1u.1L=R.6M("ar{0},{1},{2},{3},{4},{1},{4},{1}x",4U((cx-rx)*6T),4U((cy-ry)*6T),4U((cx+rx)*6T),4U((cy+ry)*6T),4U(cx*6T));o.1Y.8i=1}if("6s-4p"in 1z){K 4p=4d(1z["6s-4p"]).3C(5B);if(4p.1e==4){4p[2]=+4p[2]+ +4p[0];4p[3]=+4p[3]+ +4p[1];K 2H=1u.oq||R.7M.3c.dC("2H"),hC=2H.2x;hC.6s=R.6M("4p({1}px {2}px {3}px {0}px)",4p);if(!1u.oq){hC.2N="8H";hC.1C=0;hC.1W=0;hC.1k=o.2I.1k+"px";hC.1s=o.2I.1s+"px";1u.3w.7n(2H,1u);2H.3W(1u);1u.oq=2H}}if(!1z["6s-4p"]){1u.oq&&(1u.oq.2x.6s="5C")}}if(o.dg){K kS=o.dg.2x;1z.2U&&(kS.2U=1z.2U);1z["2U-8A"]&&(kS.R1=\'"\'+1z["2U-8A"].3C(",")[0].3p(/^[\'"]+|[\'"]+$/g,E)+\'"\');1z["2U-3V"]&&(kS.ej=1z["2U-3V"]);1z["2U-al"]&&(kS.R2=1z["2U-al"]);1z["2U-2x"]&&(kS.R3=1z["2U-2x"])}if("bE-2T"in 1z){cL(1A,1z["bE-2T"])}if("bE-4n"in 1z){cL(1A,1z["bE-4n"],1)}if(1z.2Q!=1c||(1z["2b-1k"]!=1c||(1z.2e!=1c||(1z.4k!=1c||(1z.2b!=1c||(1z["2b-1k"]!=1c||(1z["2b-2Q"]!=1c||(1z["2e-2Q"]!=1c||(1z["2b-9B"]!=1c||(1z["2b-oD"]!=1c||(1z["2b-hf"]!=1c||1z["2b-cY"]!=1c))))))))))){K 2e=1u.d8(hN),Rc=1j;2e=2e&&2e[0];!2e&&(Rc=2e=d7(hN));if(o.1y=="9b"&&1z.4k){2e.4k=1z.4k}1z.2e&&(2e.on=1m);if(2e.on==1c||(1z.2e=="3j"||1z.2e===1c)){2e.on=1j}if(2e.on&&1z.2e){K h1=4d(1z.2e).3k(R.zs);if(h1){2e.3w==1u&&1u.7B(2e);2e.5F=1m;2e.4k=h1[1];2e.1y="RG";K 3d=o.6J(1);2e.2N=3d.x+S+3d.y;o.1Y.dw=[3d.x,3d.y];R.zt(h1[1],1a(){o.1Y.ib=[J.h7,J.8v]})}1i{2e.3F=R.cU(1z.2e).6j;2e.4k=E;2e.1y="oS";if(R.cU(1z.2e).5d&&((1A.1y in{9U:1,b2:1}||4d(1z.2e).bi()!="r")&&pU(1A,1z.2e,2e))){a.2e="3j";a.46=1z.2e;2e.5F=1j}}}if("2e-2Q"in 1z||"2Q"in 1z){K 2Q=((+a["2e-2Q"]+1||2)-1)*((+a.2Q+1||2)-1)*((+R.cU(1z.2e).o+1||2)-1);2Q=6a(5a(2Q,0),1);2e.2Q=2Q;if(2e.4k){2e.3F="3j"}}1u.3W(2e);K 2b=1u.d8("2b")&&1u.d8("2b")[0],zM=1j;!2b&&(zM=2b=d7("2b"));if(1z.2b&&1z.2b!="3j"||(1z["2b-1k"]||(1z["2b-2Q"]!=1c||(1z["2b-9B"]||(1z["2b-oD"]||(1z["2b-hf"]||1z["2b-cY"])))))){2b.on=1m}(1z.2b=="3j"||(1z.2b===1c||(2b.on==1c||(1z.2b==0||1z["2b-1k"]==0))))&&(2b.on=1j);K zf=R.cU(1z.2b);2b.on&&(1z.2b&&(2b.3F=zf.6j));2Q=((+a["2b-2Q"]+1||2)-1)*((+a.2Q+1||2)-1)*((+zf.o+1||2)-1);K 1k=(3U(1z["2b-1k"])||1)*0.75;2Q=6a(5a(2Q,0),1);1z["2b-1k"]==1c&&(1k=a["2b-1k"]);1z["2b-1k"]&&(2b.al=1k);1k&&(1k<1&&((2Q*=1k)&&(2b.al=1)));2b.2Q=2Q;1z["2b-hf"]&&(2b.X7=1z["2b-hf"]||"VV");2b.oD=1z["2b-oD"]||8;1z["2b-cY"]&&(2b.VQ=1z["2b-cY"]=="kB"?"VZ":1z["2b-cY"]=="zd"?"zd":"4U");if("2b-9B"in 1z){K 9B={"-":"VF",".":"VG","-.":"VD","-..":"VB",". ":"7a","- ":"VC","--":"VL","- .":"VM","--.":"Wm","--..":"Wn"};2b.Wl=9B[3A](1z["2b-9B"])?9B[1z["2b-9B"]]:E}zM&&1u.3W(2b)}if(1A.1y=="28"){1A.2I.1Q.2x.4L=E;K 2w=1A.2I.2w,m=100,ej=a.2U&&a.2U.3k(/\\d+(?:\\.\\d*)?(?=px)/);s=2w.2x;a.2U&&(s.2U=a.2U);a["2U-8A"]&&(s.R1=a["2U-8A"]);a["2U-al"]&&(s.R2=a["2U-al"]);a["2U-2x"]&&(s.R3=a["2U-2x"]);ej=3U(a["2U-3V"]||ej&&ej[0])||10;s.ej=ej*m+"px";1A.dg.4i&&(2w.ot=4d(1A.dg.4i).3p(/</g,"&#60;").3p(/&/g,"&#38;").3p(/\\n/g,"<br>"));K qC=2w.oo();1A.W=a.w=(qC.7O-qC.1W)/m;1A.H=a.h=(qC.4v-qC.1C)/m;1A.X=a.x;1A.Y=a.y+1A.H/2;("x"in 1z||"y"in 1z)&&(1A.1L.v=R.6M("m{0},{1}l{2},{1}",4U(a.x*6T),4U(a.y*6T),4U(a.x*6T)+1));K zQ=["x","y","28","2U","2U-8A","2U-al","2U-2x","2U-3V"];1o(K d=0,dd=zQ.1e;d<dd;d++){if(zQ[d]in 1z){1A.1Y.8i=1;1r}}3E(a["28-zO"]){1p"2T":1A.dg.2x["v-28-zP"]="1W";1A.rh=1A.W/2;1r;1p"4n":1A.dg.2x["v-28-zP"]="7O";1A.rh=-1A.W/2;1r;5m:1A.dg.2x["v-28-zP"]="Wj";1A.rh=0;1r}1A.dg.2x["v-28-Wk"]=1m}},pU=1a(o,46,2e){o.2i=o.2i||{};K 2i=o.2i,6g=3m.6g,2Q,Wh,1y="qg",zD=".5 .5";o.2i.46=46;46=4d(46).3p(R.zC,1a(6D,fx,fy){1y="r9";if(fx&&fy){fx=3U(fx);fy=3U(fy);6g(fx-0.5,2)+6g(fy-0.5,2)>0.25&&(fy=3M.a8(0.25-6g(fx-0.5,2))*((fy>0.5)*2-1)+0.5);zD=fx+S+fy}1b E});46=46.3C(/\\s*\\-\\s*/);if(1y=="qg"){K 7G=46.cc();7G=-3U(7G);if(c5(7G)){1b 1c}}K 5s=R.zG(46);if(!5s){1b 1c}o=o.dc||o.1u;if(5s.1e){o.7B(2e);2e.on=1m;2e.4h="3j";2e.3F=5s[0].3F;2e.W3=5s[5s.1e-1].3F;K qL=[];1o(K i=0,ii=5s.1e;i<ii;i++){5s[i].2d&&qL.1I(5s[i].2d+S+5s[i].3F)}2e.YH=qL.1e?qL.54():"0% "+2e.3F;if(1y=="r9"){2e.1y="YI";2e.3a="100%";2e.YT="0 0";2e.Yw=zD;2e.7G=0}1i{2e.1y="46";2e.7G=(Yx-7G)%92}o.3W(2e)}1b 1},ab=1a(1u,66){J[0]=J.1u=1u;1u.4j=1m;J.id=R.yI++;1u.yJ=J.id;J.X=0;J.Y=0;J.2i={};J.2I=66;J.4O=R.4O();J.1Y={3T:[],sx:1,sy:1,dx:0,dy:0,4B:0,8i:1,gm:1};!66.4v&&(66.4v=J);J.3I=66.1C;66.1C&&(66.1C.3q=J);66.1C=J;J.3q=1c};K 3l=R.el;ab.2V=3l;3l.5f=ab;3l.3T=1a(bH){if(bH==1c){1b J.1Y.3T}K hX=J.2I.RE,Rx=hX?"s"+[hX.7N,hX.7N]+"-1-1t"+[hX.dx,hX.dy]:E,qS;if(hX){qS=bH=4d(bH).3p(/\\.{3}|\\yN/g,J.1Y.3T||E)}R.yO(J,Rx+bH);K 4O=J.4O.65(),8L=J.8L,o=J.1u,3C,yL=~4d(J.2i.2e).4S("-"),Ry=!4d(J.2i.2e).4S("5b(");4O.gr(1,1);if(Ry||(yL||J.1y=="9b")){8L.4O="1 0 0 1";8L.2d="0 0";3C=4O.3C();if(yL&&3C.Rw||!3C.yx){o.2x.4G=4O.Rv();K bb=J.6J(),yu=J.6J(1),dx=bb.x-yu.x,dy=bb.y-yu.y;o.lQ=dx*-6T+S+dy*-6T;mX(J,1,1,dx,dy,0)}1i{o.2x.4G=E;mX(J,3C.gS,3C.eY,3C.dx,3C.dy,3C.5F)}}1i{o.2x.4G=E;8L.4O=4d(4O);8L.2d=4O.2d()}qS&&(J.1Y.3T=qS);1b J};3l.5F=1a(4B,cx,cy){if(J.5p){1b J}if(4B==1c){1b}4B=4d(4B).3C(5B);if(4B.1e-1){cx=3U(4B[1]);cy=3U(4B[2])}4B=3U(4B[0]);cy==1c&&(cx=cy);if(cx==1c||cy==1c){K 3d=J.6J(1);cx=3d.x+3d.1k/2;cy=3d.y+3d.1s/2}J.1Y.gm=1;J.3T(J.1Y.3T.3L([["r",4B,cx,cy]]));1b J};3l.gr=1a(dx,dy){if(J.5p){1b J}dx=4d(dx).3C(5B);if(dx.1e-1){dy=3U(dx[1])}dx=3U(dx[0])||0;dy=+dy||0;if(J.1Y.3d){J.1Y.3d.x+=dx;J.1Y.3d.y+=dy}J.3T(J.1Y.3T.3L([["t",dx,dy]]));1b J};3l.7N=1a(sx,sy,cx,cy){if(J.5p){1b J}sx=4d(sx).3C(5B);if(sx.1e-1){sy=3U(sx[1]);cx=3U(sx[2]);cy=3U(sx[3]);c5(cx)&&(cx=1c);c5(cy)&&(cy=1c)}sx=3U(sx[0]);sy==1c&&(sy=sx);cy==1c&&(cx=cy);if(cx==1c||cy==1c){K 3d=J.6J(1)}cx=cx==1c?3d.x+3d.1k/2:cx;cy=cy==1c?3d.y+3d.1s/2:cy;J.3T(J.1Y.3T.3L([["s",sx,sy,cx,cy]]));J.1Y.gm=1;1b J};3l.3G=1a(){!J.5p&&(J.1u.2x.4L="3j");1b J};3l.4T=1a(){!J.5p&&(J.1u.2x.4L=E);1b J};3l.mc=1a(){if(J.5p){1b{}}1b{x:J.X+(J.rh||0)-J.W/2,y:J.Y-J.H,1k:J.W,1s:J.H}};3l.3z=1a(){if(J.5p||!J.1u.3w){1b}J.2I.77&&J.2I.77.yA(J);R.31.8q("4j.*.*."+J.id);R.yP(J,J.2I);J.1u.3w.7B(J.1u);J.dc&&J.dc.3w.7B(J.dc);1o(K i in J){J[i]=2A J[i]=="1a"?R.nR(i):1c}J.5p=1m};3l.1l=1a(1x,1n){if(J.5p){1b J}if(1x==1c){K 1A={};1o(K a in J.2i){if(J.2i[3A](a)){1A[a]=J.2i[a]}}1A.46&&(1A.2e=="3j"&&((1A.2e=1A.46)&&4a 1A.46));1A.3T=J.1Y.3T;1b 1A}if(1n==1c&&R.is(1x,"4i")){if(1x==hN&&(J.2i.2e=="3j"&&J.2i.46)){1b J.2i.46}K 7y=1x.3C(5B),2q={};1o(K i=0,ii=7y.1e;i<ii;i++){1x=7y[i];if(1x in J.2i){2q[1x]=J.2i[1x]}1i{if(R.is(J.2I.9m[1x],"1a")){2q[1x]=J.2I.9m[1x].RJ}1i{2q[1x]=R.lE[1x]}}}1b ii-1?2q:2q[7y[0]]}if(J.2i&&(1n==1c&&R.is(1x,"42"))){2q={};1o(i=0,ii=1x.1e;i<ii;i++){2q[1x[i]]=J.1l(1x[i])}1b 2q}K 1z;if(1n!=1c){1z={};1z[1x]=1n}1n==1c&&(R.is(1x,"1F")&&(1z=1x));1o(K 1q in 1z){31("4j.1l."+1q+"."+J.id,J,1z[1q])}if(1z){1o(1q in J.2I.9m){if(J.2I.9m[3A](1q)&&(1z[3A](1q)&&R.is(J.2I.9m[1q],"1a"))){K 9l=J.2I.9m[1q].3i(J,[].3L(1z[1q]));J.2i[1q]=1z[1q];1o(K c0 in 9l){if(9l[3A](c0)){1z[c0]=9l[c0]}}}}if(1z.28&&J.1y=="28"){J.dg.4i=1z.28}eJ(J,1z)}1b J};3l.RN=1a(){!J.5p&&J.1u.3w.3W(J.1u);J.2I&&(J.2I.1C!=J&&R.z3(J,J.2I));1b J};3l.RM=1a(){if(J.5p){1b J}if(J.1u.3w.7R!=J.1u){J.1u.3w.7n(J.1u,J.1u.3w.7R);R.za(J,J.2I)}1b J};3l.fj=1a(1f){if(J.5p){1b J}if(1f.5f==R.st.5f){1f=1f[1f.1e-1]}if(1f.1u.hV){1f.1u.3w.7n(J.1u,1f.1u.hV)}1i{1f.1u.3w.3W(J.1u)}R.z9(J,1f,J.2I);1b J};3l.7n=1a(1f){if(J.5p){1b J}if(1f.5f==R.st.5f){1f=1f[0]}1f.1u.3w.7n(J.1u,1f.1u);R.z8(J,1f,J.2I);1b J};3l.57=1a(3V){K s=J.1u.Z0,f=s.4G;f=f.3p(RL,E);if(+3V!==0){J.2i.57=3V;s.4G=f+S+ms+".RC(YV="+(+3V||1.5)+")";s.iT=R.6M("-{0}px 0 0 -{0}px",4U(+3V||1.5))}1i{s.4G=f;s.iT=0;4a J.2i.57}1b J};R.4R.1L=1a(8V,66){K el=d7("dc");el.2x.gc=yV;el.sv=6T+S+6T;el.lQ=66.lQ;K p=1U ab(el,66),1l={2e:"3j",2b:"#d4"};8V&&(1l.1L=8V);p.1y="1L";p.1L=[];p.pA=E;eJ(p,1l);66.1Q.3W(el);K 8L=d7("8L");8L.on=1m;el.3W(8L);p.8L=8L;p.3T(E);1b p};R.4R.4p=1a(66,x,y,w,h,r){K 1L=R.yY(x,y,w,h,r),1A=66.1L(1L),a=1A.2i;1A.X=a.x=x;1A.Y=a.y=y;1A.W=a.1k=w;1A.H=a.1s=h;a.r=r;a.1L=1L;1A.1y="4p";1b 1A};R.4R.b2=1a(66,x,y,rx,ry){K 1A=66.1L(),a=1A.2i;1A.X=x-rx;1A.Y=y-ry;1A.W=rx*2;1A.H=ry*2;1A.1y="b2";eJ(1A,{cx:x,cy:y,rx:rx,ry:ry});1b 1A};R.4R.9U=1a(66,x,y,r){K 1A=66.1L(),a=1A.2i;1A.X=x-r;1A.Y=y-r;1A.W=1A.H=r*2;1A.1y="9U";eJ(1A,{cx:x,cy:y,r:r});1b 1A};R.4R.9b=1a(66,4k,x,y,w,h){K 1L=R.yY(x,y,w,h),1A=66.1L(1L).1l({2b:"3j"}),a=1A.2i,1u=1A.1u,2e=1u.d8(hN)[0];a.4k=4k;1A.X=a.x=x;1A.Y=a.y=y;1A.W=a.1k=w;1A.H=a.1s=h;a.1L=1L;1A.1y="9b";2e.3w==1u&&1u.7B(2e);2e.5F=1m;2e.4k=4k;2e.1y="RG";1A.1Y.dw=[x,y];1A.1Y.ib=[w,h];1u.3W(2e);mX(1A,1,1,0,0,0);1b 1A};R.4R.28=1a(66,x,y,28){K el=d7("dc"),1L=d7("1L"),o=d7("dg");x=x||0;y=y||0;28=28||"";1L.v=R.6M("m{0},{1}l{2},{1}",4U(x*6T),4U(y*6T),4U(x*6T)+1);1L.Z6=1m;o.4i=4d(28);o.on=1m;el.2x.gc=yV;el.sv=6T+S+6T;el.lQ="0 0";K p=1U ab(el,66),1l={2e:"#d4",2b:"3j",2U:R.lE.2U,28:28};p.dc=el;p.1L=1L;p.dg=o;p.1y="28";p.2i.28=4d(28);p.2i.x=x;p.2i.y=y;p.2i.w=1;p.2i.h=1;eJ(p,1l);el.3W(o);el.3W(1L);66.1Q.3W(el);K 8L=d7("8L");8L.on=1m;el.3W(8L);p.8L=8L;p.3T(E);1b p};R.4R.kl=1a(1k,1s){K cs=J.1Q.2x;J.1k=1k;J.1s=1s;1k==+1k&&(1k+="px");1s==+1s&&(1s+="px");cs.1k=1k;cs.1s=1s;cs.6s="4p(0 "+1k+" "+1s+" 0)";if(J.gd){R.4R.gf.3i(J,J.gd)}1b J};R.4R.gf=1a(x,y,w,h,bK){R.31("4j.gf",J,J.gd,[x,y,w,h,bK]);K 1k=J.1k,1s=J.1s,3V=1/ 5a(w /1k,h/1s),H,W;if(bK){H=1s/h;W=1k/w;if(w*H<1k){x-=(1k-w*H)/ 2 /H}if(h*W<1s){y-=(1s-h*W)/ 2 /W}}J.gd=[x,y,w,h,!!bK];J.RE={dx:-x,dy:-y,7N:3V};J.9k(1a(el){el.3T("...")});1b J};K d7;R.4R.sB=1a(5q){K 3c=5q.2E;3c.Z7().Z4(".lD","QW:5b(#5m#i8)");6X{!3c.bB.lD&&3c.bB.5l("lD","QU:QX-R0-AV:66");d7=1a(6l){1b 3c.dC("<lD:"+6l+\' 2u="lD">\')}}6U(e){d7=1a(6l){1b 3c.dC("<"+6l+\' QV="QU:QX-R0.AV:66" 2u="lD">\')}}};R.4R.sB(R.7M.5q);R.4R.7Q=1a(){K bR=R.AU.3i(0,2v),3t=bR.3t,1s=bR.1s,s,1k=bR.1k,x=bR.x,y=bR.y;if(!3t){93 1U 9T("i8 3t 5P 9c.")}K 1A=1U R.AS,c=1A.1Q=R.7M.3c.dC("2H"),cs=c.2x;x=x||0;y=y||0;1k=1k||QY;1s=1s||Rl;1A.1k=1k;1A.1s=1s;1k==+1k&&(1k+="px");1s==+1s&&(1s+="px");1A.sv=6T*9a+S+6T*9a;1A.lQ="0 0";1A.2w=R.7M.3c.dC("2w");1A.2w.2x.gc="2N:8H;1W:-lZ;1C:-lZ;AB:0;iT:0;cN-1s:1;";c.3W(1A.2w);cs.gc=R.6M("1C:0;1W:0;1k:{0};1s:{1};4L:Sd-6F;2N:pV;6s:4p(0 {0} {1} 0);d5:6O",1k,1s);if(3t==1){R.7M.3c.3x.3W(c);cs.1W=x+"px";cs.1C=y+"px";cs.2N="8H"}1i{if(3t.7R){3t.7n(c,3t.7R)}1i{3t.3W(c)}}1A.ss=1a(){};1b 1A};R.2V.9J=1a(){R.31("4j.9J",J);J.1Q.ot=E;J.2w=R.7M.3c.dC("2w");J.2w.2x.gc="2N:8H;1W:-lZ;1C:-lZ;AB:0;iT:0;cN-1s:1;4L:Sd;";J.1Q.3W(J.2w);J.4v=J.1C=1c};R.2V.3z=1a(){R.31("4j.3z",J);J.1Q.3w.7B(J.1Q);1o(K i in J){J[i]=2A J[i]=="1a"?R.nR(i):1c}1b 1m};K 6Y=R.st;1o(K 4h in 3l){if(3l[3A](4h)&&!6Y[3A](4h)){6Y[4h]=1a(eQ){1b 1a(){K 4r=2v;1b J.9k(1a(el){el[eQ].3i(el,4r)})}}(4h)}}})();sG.AJ?g.5q.b4=R:b4=R;1b R});K Sc=1a(AI){J.3F=1c;J.A8=1c;J.bg=1c;J.cN=1c;J.A6=1c;J.2T=1c;J.Ad=1c;J.4n=1c;J.1F=1c;J.8e=1c;J.AK=1a(AI){};J.AK(AI)};1a 6J(1w){K 5n={x:0,y:0,1k:0,1s:0};if(!1w.1e){1b 5n}K o=1w[0];1a sH(1f,Se){5n={x:0,y:0,1k:1f.mz,1s:1f.kN};44(1f){if(1f.id==Se){1r}5n.x+=1f.8z-1f.4P+1f.m8;5n.y+=1f.8X-1f.4t+1f.lH;1f=1f.ep}1b 5n}if(o.6l=="TR"){5n=sH(o,"qb-ui-1Q")}1i{if(o.6l=="KD"){5n=sH(o,"qb-ui-1Q")}1i{if(o.6l=="Yn"){5n=sH(o,"qb-ui-1Q")}}}1b 5n}1a fh(x){1b 3m.4U(x*9a)/9a}1a RS(gL,gI){K RV=15;K p1=[{x:gL.x,y:gL.y+gL.1s/ 2}, {x:gL.x + gL.1k, y:gL.y + gL.1s /2}];K p2=[{x:gI.x,y:gI.y+gI.1s/ 2}, {x:gI.x + gI.1k, y:gI.y + gI.1s /2}];K d=[],ng=[];1o(K i1=0;i1<p1.1e;i1++){1o(K i2=0;i2<p2.1e;i2++){K dx=3m.4l(p1[i1].x-p2[i2].x);K dy=3m.4l(p1[i1].y-p2[i2].y);K 5T=dx*dx+dy*dy;ng.1I(5T);d.1I({i1:i1,i2:i2})}}K 1A={i1:0,i2:0};K sD=-1;K 5H=-1;1o(K i=0;i<ng.1e;i++){if(5H==-1||ng[i]<5H){5H=ng[i];sD=i}}if(sD>0){1A=d[sD]}K x1=p1[1A.i1].x,y1=p1[1A.i1].y,x4=p2[1A.i2].x,y4=p2[1A.i2].y,y2=y1,y3=y4;K dx=3m.47(3m.4l(x1-x4)/2,RV);K x2=[x1-dx,x1+dx][1A.i1];K x3=[x4-dx,x4+dx][1A.i2];1b{x1:fh(x1),y1:fh(y1),x2:fh(x2),y2:fh(y2),x3:fh(x3),y3:fh(y3),x4:fh(x4),y4:fh(y4)}}1a Yo(5n,RU){K R=b4==1c?cr:b4;K 4c=5n;if(R.is(5n,"1a")){1b RU?4c():31.on("4j.m5",4c)}1i{if(R.is(4c,1m)){1b R.4R.7Q[5n](R,4c.5v(0,3+R.is(4c[0],1c))).5l(4c)}1i{K 2k=3K.2V.3N.2B(2v,0);if(R.is(2k[2k.1e-1],"1a")){K f=2k.dM();1b 4c?f.2B(R.4R.7Q[5n](R,2k)):31.on("4j.m5",1a(){f.2B(R.4R.7Q[5n](R,2k))})}1i{1b R.4R.7Q[5n](R,2v)}}}}b4.fn.C8=1a(29){if(!29.53||!29.56){1b 1j}if(!29.53.2p||!29.56.2p){1b 1j}if(!29.53.2p.1f||!29.56.2p.1f){1b 1j}K aX=29.8e;K AZ=8;K 3F=aX.3F;K Sb=29.53.4W;K S1=29.56.4W;1a B1(29){K eF=6J(29.2p.1f);if(29.1B){K fB=6J(29.1B.1f);eF.x=fB.x-1;eF.1k=fB.1k+2;if(eF.y<fB.y){eF.y=fB.y}1i{if(eF.y>fB.y+fB.1s-eF.1s){eF.y=fB.y+fB.1s-eF.1s}}}1b eF}K RR=B1(29.53);K S0=B1(29.56);K 7I=RS(RR,S0);K B6=7I.x1<7I.x2?1:-1;K B4=7I.x4<7I.x3?1:-1;K 1L=["M",7I.x1,7I.y1,"L",7I.x1+AZ*B6,7I.y1,"C",7I.x2,7I.y2,7I.x3,7I.y3,7I.x4+AZ*B4,7I.y4,"L",7I.x4,7I.y4].54(",");aX.2T=nw(aX.2T,S1,3F,7I.x1,7I.y1,B6);aX.4n=nw(aX.4n,Sb,3F,7I.x4,7I.y4,B4);if(aX.1L=1L&&(aX.cN&&aX.bg)){aX.bg.1l({1L:1L});aX.cN.1l({1L:1L});$(aX.bg.1u).2o("29-2M")}1b 1m};b4.fn.C8;b4.fn.Ni=1a(1w,1l){K 29=1U Sc;29.3F=1l.3C("|")[0]||"#S7";29.A8=1l.3C("|")[1]||3;29.S8=15;29.cN=J.1L("M,0,0").1l({2b:29.3F,2e:"3j","2b-1k":29.A8,"2b-cY":"4U","2b-hf":"4U"});29.bg=J.1L("M,0,0").1l({2b:29.3F,2e:"3j","2b-1k":29.S8,"2b-2Q":0.S9});29.A6=1w.56.4W;29.2T=nw(1c,29.A6,29.3F);29.Ad=1w.53.4W;29.4n=nw(1c,29.Ad,29.3F);29.1F=1w;1b 29};1a nw(1w,1y,3F,x,y,d){if(!x){x=0}if(!y){y=0}if(!d){d=1}K sg=1j;if(1w!=1c&&1w.1u){3E(1y){1p 1R.7L.dr:sg=1w.1u.8C!="9U";1r;1p 1R.7L.eh:sg=1w.1u.8C!="1L";1r}}if(sg){if(1w&&1w.3z){1w.3z()}1w=1c}if(1w==1c){3E(1y){1p 1R.7L.dr:1w=QB.1d.2f.r.9U(0,0,5);1w.1l({2e:3F,"2b-1k":0});1r;1p 1R.7L.eh:1w=QB.1d.2f.r.1L("M,0,0");1w.1l({2e:3F,"2b-1k":0});1r}}3E(1y){1p 1R.7L.dr:1w.1l({cx:x,cy:y});1r;1p 1R.7L.eh:K dx=8;K dy=5;K 1L=["M",x,y,"L",x,y+1,x+dx*d,y+dy,x+dx*d,y-dy,x,y-1,"Z"].54(",");1w.1l({1L:1L});1r}1b 1w};K OD=1m;1a SS(1F,1K,7W){if(2A 1F.c6!="2r"){1F.c6(1K,7W,1j)}1i{if(2A 1F.hn!="2r"){1F.hn("on"+1K,7W)}1i{93"R8 sh"}}}1a So(1F,1K,7W){if(2A 1F.na!="2r"){1F.na(1K,7W,1j)}1i{if(2A 1F.zX!="2r"){1F.zX("on"+1K,7W)}1i{93"R8 sh"}}}1a Te(fn){K 2s=3n.c6||3n.hn?3n:2E.c6?2E:2E.1N||1c;if(2s){if(2s.c6){2s.c6("zW",fn,1j)}1i{if(2s.hn){2s.hn("jm",fn)}}}1i{if(2A 3n.jm=="1a"){K 8P=3n.jm;3n.jm=1a(){8P();fn()}}1i{3n.jm=fn}}}K sc=[];K zV=1j;1a Tv(fn){if(!zV){sc.1I(fn)}1i{fn()}}1a OQ(){zV=1m;1o(K i=0;i<sc.1e;i++){sc[i]()}};K Rj=0;if(!3K.4S){3K.2V.4S=1a(1w){1o(K i=0;i<J.1e;i++){if(J[i]==1w){1b i}}1b-1}}45={tk:1a(){1b++Rj},3D:1a(1w){if(1w==2r||1w==1c){1b""}1b 1w.3D()}};45.mv=1a(4k,ao){K p,v;1o(p in 4k){if(2A 4k[p]==="1a"){ao[p]=4k[p]}1i{v=4k[p];ao[p]=v}}1b ao};45.Nx=1a(4k,ao){K p,v;1o(p in 4k){if(ao[p]===2r){bI}if(2A 4k[p]==="1a"){ao[p]=4k[p]}1i{v=4k[p];ao[p]=v}}1b ao};45.Cn=1a($1f,3v){if($1f.1e&&!1M(3v)){$1f.1l("5Q-3v",3v.3p(/&2n;/g," ").3p(/&xe;/g,"&"))}};45.Rg=1a(4k,ao){K p,v;1o(p in 4k){if(2A 4k[p]==="1a"){ao[p]=4k[p]}1i{if(4k.81(p)){v=4k[p];if(v&&"1F"===2A v){ao[p]=45.Rk(v)}1i{ao[p]=v}}}}1b ao};45.Rk=1a(o){if(!o||"1F"!==2A o){1b o}K c=o eM 3K?[]:{};1b 45.Rg(o,c)};45.T7=1a(el,1N){K 1J={1W:el.4P,1k:el.mH,1C:el.4t,1s:el.j3};1J.7O=1J.1k-1J.1W;1J.4v=1J.1s-1J.1C;if(1N){1J=45.A1(1J,1N)}1b 1J};45.gY=1a(el,1N){K r=el.oo();K 1J={1W:r.1W,7O:r.7O,1C:r.1C,4v:r.4v};if(!r.1k){1J.1k=r.7O-r.1W}1i{1J.1k=r.1k}if(!r.1s){1J.1s=r.4v-r.1C}1i{1J.1s=r.1s}if(1N){1J=45.A1(1J,1N)}1b 1J};45.A1=1a(r,p){1b{1W:r.1W-p.1W,1C:r.1C-p.1C,7O:r.7O-p.1W,4v:r.4v-p.1C,1s:r.1s,1k:r.1k}};45.SX=1a(43){K 47=0;$(43).2g(1a(){47=3m.47(47,$(J).1s())}).1s(47)};45.SV=1a(43){K 47=0;$(43).2g(1a(){47=3m.47(47,$(J).1k())}).1k(47)};45.T1=1a(1w){if(1w){if(2A 1w=="4i"){if(1w!=""){1b 1w}}}1b""};45.af=1a(nI,1w){if(1w){if(2A 1w=="4i"){if(1w!=""){nI.1I(1w)}}}};2C.fn.cd=1a(1n){K gz=J.1l("1y");gz=1M(gz)?"":gz.3P();if(1n===2r){if(gz=="8r"){1b J[0].3Q}1i{if(gz=="8Y"){if(J[0].3Q){1b J.1l("1n")}1i{1b 1c}}}1b J.2a()}if(gz=="8r"){if(1n==1m&&!J.1l("3Q")){J.1l("3Q","3Q")}if(1n!=1m&&J.1l("3Q")){J.ln("3Q")}if(1n==1m&&!J.6h("3Q")){J.6h("3Q",1m)}if(1n!=1m&&J.6h("3Q")){J.6h("3Q",1j)}1b}1i{if(gz=="8Y"){K R4=J.1l("1n");if(R4==1n){J.1l("3Q","1m");J[0].3Q=1m}1i{J.ln("3Q")}1b}1i{K 6l="";if(!1M(J[0])&&!1M(J[0].6l)){6l=J[0].6l}if(6l.3P()=="2t"){J.sn(1M(1n)?"0":1n.3D());1b}}}if(1n==1c){1n=""}J.2a(1n)};2C.fn.Tq=1a(mp){if(!J[0]){1b{1C:0,1W:0}}if(J[0]===J[0].rI.3x){1b 2C.2d.Sw(J[0])}2C.2d.mt||2C.2d.c9();if(2A mp=="4i"){if(mp!=""){K 1N=J.aN(mp);if(1N.1e){4a 1N}}}1i{K 1N=mp}K 4g=J[0],ep=4g.ep,Rs=4g,3c=4g.rI,gK,f0=3c.8s,3x=3c.3x,ly=3c.ly,m9=ly.sj(4g,1c),1C=4g.8X,1W=4g.8z;44((4g=4g.3w)&&(4g!==3x&&4g!==f0)){gK=ly.sj(4g,1c);1C-=4g.4t,1W-=4g.4P;if(4g===ep){1C+=4g.8X,1W+=4g.8z;if(2C.2d.Sx&&!(2C.2d.Sq&&/^t(PT|d|h)$/i.9t(4g.6l))){1C+=61(gK.CE,10)||0,1W+=61(gK.CI,10)||0}Rs=ep,ep=4g.ep}if(2C.2d.SC&&gK.d5!=="5y"){1C+=61(gK.CE,10)||0,1W+=61(gK.CI,10)||0}m9=gK;if($.rL(4g,1N)>=0){1r}}if(m9.2N==="pV"||m9.2N==="Rt"){1C+=3x.8X,1W+=3x.8z}if(m9.2N==="Rz"){1C+=3m.47(f0.4t,3x.4t),1W+=3m.47(f0.4P,3x.4P)}1b{1C:1C,1W:1W}};1a UU(2P,Ak){if(2v.1e>2){K Aj=[];1o(K n=2;n<2v.1e;++n){Aj.1I(2v[n])}1b 1a(){1b Ak.3i(2P,Aj)}}1i{1b 1a(){1b Ak.2B(2P)}}}K zU=1a(a,b){1b $.4q(a,b,a)};K 1M=1a(1w){if(1w===2r){1b 1m}if(1w==1c){1b 1m}if(1w===""){1b 1m}1b 1j};K l8=1a(7s){if(!1M(7s)){1b 7s.3P()}1b 7s};K UW=1a(7s){if(!1M(7s)){1b 7s.8Z()}1b 7s};K 2n=1a(1w){if(1w===2r){1b""}if(1w==1c){1b""}if(1w==""){1b""}1b 1w.3p(/ /g,"&2n;")};1a RO(fV,fX,fO){1b 1a(a,b){if(!1M(fV)&&a[fV]<b[fV]){1b-1}if(!1M(fV)&&a[fV]>b[fV]){1b 1}if(!1M(fX)&&a[fX]<b[fX]){1b-1}if(!1M(fX)&&a[fX]>b[fX]){1b 1}if(!1M(fO)&&a[fO]<b[fO]){1b-1}if(!1M(fO)&&a[fO]>b[fO]){1b 1}1b 0}}3K.2V.us=1a(fV,fX,fO){1b J.g5(RO(fV,fX,fO))};K gg=1a(a,b){if(1M(a)&&1M(b)){1b 1m}if(1M(a)||1M(b)){1b 1j}1b a.3P()==b.3P()};45.tp=1a(a,b){if(1M(a)&&1M(b)){1b 1m}1b a==b};1a 4q(mW,4C){K F=1a(){};F.2V=4C.2V;mW.2V=1U F;mW.2V.5f=mW;mW.V3=4C.2V}1a V0(RK,bc){1o(K 4h in bc){RK.2V[4h]=bc[4h]}}5A.2V.6M=1a(6M){K tc="";K 3p=5A.l5;1o(K i=0;i<6M.1e;i++){K tb=6M.bi(i);if(3p[tb]){tc+=3p[tb].2B(J)}1i{tc+=tb}}1b tc};5A.l5={RZ:["UA","UL","Vr","Vt","Re","Vu","V5","V7","Vg","Vd","Ve","Uy"],Sh:["TS","TT","TQ","TV","Re","TY","TB","TC","TE","TA","Tx","TF"],S6:["TK","TM","TJ","TG","TH","U3","Un"],S2:["Uo","Up","Um","Uv","Uw","Uu","Ur"],d:1a(){1b(J.fd()<10?"0":"")+J.fd()},D:1a(){1b 5A.l5.S6[J.sQ()]},j:1a(){1b J.fd()},l:1a(){1b 5A.l5.S2[J.sQ()]},N:1a(){1b J.sQ()+1},S:1a(){1b J.fd()%10==1&&J.fd()!=11?"st":J.fd()%10==2&&J.fd()!=12?"nd":J.fd()%10==3&&J.fd()!=13?"rd":"th"},w:1a(){1b J.sQ()},z:1a(){1b"gT pO iZ"},W:1a(){1b"gT pO iZ"},F:1a(){1b 5A.l5.Sh[J.lv()]},m:1a(){1b(J.lv()<9?"0":"")+(J.lv()+1)},M:1a(){1b 5A.l5.RZ[J.lv()]},n:1a(){1b J.lv()+1},t:1a(){1b"gT pO iZ"},L:1a(){1b J.qf()%4==0&&J.qf()%100!=0||J.qf()%mf==0?"1":"0"},o:1a(){1b"gT iZ"},Y:1a(){1b J.qf()},y:1a(){1b(""+J.qf()).7r(2)},a:1a(){1b J.h8()<12?"am":"pm"},A:1a(){1b J.h8()<12?"AM":"PM"},B:1a(){1b"gT pO iZ"},g:1a(){1b J.h8()%12||12},G:1a(){1b J.h8()},h:1a(){1b((J.h8()%12||12)<10?"0":"")+(J.h8()%12||12)},H:1a(){1b(J.h8()<10?"0":"")+J.h8()},i:1a(){1b(J.Rd()<10?"0":"")+J.Rd()},s:1a(){1b(J.Rb()<10?"0":"")+J.Rb()},e:1a(){1b"gT pO iZ"},I:1a(){1b"gT iZ"},O:1a(){1b(-J.fu()<0?"-":"+")+(3m.4l(J.fu()/ 60) < 10 ? "0" : "") + 3m.4l(J.fu() /60)+"13f"},P:1a(){1b(-J.fu()<0?"-":"+")+(3m.4l(J.fu()/ 60) < 10 ? "0" : "") + 3m.4l(J.fu() /60)+":"+(3m.4l(J.fu()%60)<10?"0":"")+3m.4l(J.fu()%60)},T:1a(){K m=J.lv();J.QZ(0);K 1J=J.13o().3p(/^.+ \\(?([^\\)]+)\\)?$/,"$1");J.QZ(m);1b 1J},Z:1a(){1b-J.fu()*60},c:1a(){1b J.6M("Y-m-d")+"T"+J.6M("H:i:sP")},r:1a(){1b J.3D()},U:1a(){1b J.RF()/9a}};2C.fn.4E=1a(1y,1g,fn,cD){if(2A 1y==="1F"){1o(K 1q in 1y){J.2O(1q,1g,1y[1q],fn)}1b J}if(2C.b7(1g)){cD=fn;fn=1g;1g=2r}fn=cD===2r?fn:2C.1K.Rq(fn,cD);1b 1y==="13X"?J.BZ(1y,1g,fn,cD):J.2g(1a(){2C.1K.5l(J,1y,fn,1g)})};2C.fn.14k=1a(1y,1g,fn,cD){if(2C.b7(1g)){if(fn!==2r){cD=fn}fn=1g;1g=2r}2C(J.2M).2O(14i(1y,J.43),{1g:1g,43:J.43,14o:1y},fn,cD);1b J};2C.1K.Rq=1a(fn,ai,cD){if(ai!==2r&&!2C.b7(ai)){cD=ai;ai=2r}ai=ai||1a(){1b fn.3i(cD!==2r?cD:J,2v)};ai.7K=fn.7K=fn.7K||(ai.7K||J.7K++);1b ai};3K.2V.3z=1a(2D,to){if(2A 2D=="1F"){2D=J.4S(2D)}J.5v(2D,!to||1+to-2D+(!(to<0^2D>=0)&&(to<0||-1)*J.1e));1b J.1e};K Rm={"&":"&xe;","<":"&lt;",">":"&gt;",\'"\':"&149;","\'":"&#39;","/":"&#14f;"};LD=1a(s){if(1M(s)){1b s}1b(s+"").3p(/[&<>"\'\\/]/g,1a(s){1b Rm[s]})};if(!4I.88){4I.88=1a(){K 81=4I.2V.81,Ru=!{3D:1c}.rB("3D"),rG=["3D","xX","Rn","81","Ro","rB","5f"],Rp=rG.1e;1b 1a(1w){if(2A 1w!=="1F"&&(2A 1w!=="1a"||1w===1c)){93 1U rn("4I.88 yn on 13n-1F")}K 1J=[],6h,i;1o(6h in 1w){if(81.2B(1w,6h)){1J.1I(6h)}}if(Ru){1o(i=0;i<Rp;i++){if(81.2B(1w,rG[i])){1J.1I(rG[i])}}}1b 1J}}()}(1a($){$.2g(["4T","3G"],1a(i,ev){K el=$.fn[ev];$.fn[ev]=1a(){K 1J=el.3i(J,2v);J.1O(ev);1b 1J}})})(2C);(1a(dL){if(2A cQ==="1a"&&cQ.yo){cQ(["fL"],dL)}1i{if(2A iI!=="2r"&&iI.rK){iI.rK=dL(13p("fL"))}1i{dL(2C)}}})(1a($){K $ek=$.ek=1a(3g,5c,2Z){1b $(3n).ek(3g,5c,2Z)};$ek.cr={ap:"xy",5c:0,yb:1m};1a yi(4g){1b!4g.8C||$.rL(4g.8C.3P(),["d3","#2E","3O","3x"])!==-1}$.fn.ek=1a(3g,5c,2Z){if(2A 5c==="1F"){2Z=5c;5c=0}if(2A 2Z==="1a"){2Z={RD:2Z}}if(3g==="47"){3g=13c}2Z=$.4q({},$ek.cr,2Z);5c=5c||2Z.5c;K ds=2Z.ds&&2Z.ap.1e>1;if(ds){5c/=2}2Z.2d=rA(2Z.2d);2Z.e6=rA(2Z.e6);1b J.2g(1a(){if(3g===1c){1b}K 5q=yi(J),4g=5q?J.13e||3n:J,$4g=$(4g),8b=3g,1l={},rJ;3E(2A 8b){1p"aI":;1p"4i":if(/^([+-]=?)?\\d+(\\.\\d+)?(px|%)?$/.9t(8b)){8b=rA(8b);1r}8b=5q?$(8b):$(8b,4g);if(!8b.1e){1b};1p"1F":if(8b.is||8b.2x){rJ=(8b=$(8b)).2d()}}K 2d=$.b7(2Z.2d)&&2Z.2d(4g,8b)||2Z.2d;$.2g(2Z.ap.3C(""),1a(i,ap){K qF=ap==="x"?"53":"13i",3r=qF.3P(),1q="8J"+qF,3I=$4g[1q](),47=$ek.47(4g,ap);if(rJ){1l[1q]=rJ[3r]+(5q?0:3I-$4g.2d()[3r]);if(2Z.iT){1l[1q]-=61(8b.2F("iT"+qF),10)||0;1l[1q]-=61(8b.2F("f3"+qF+"fG"),10)||0}1l[1q]+=2d[3r]||0;if(2Z.e6[3r]){1l[1q]+=8b[ap==="x"?"1k":"1s"]()*2Z.e6[3r]}}1i{K 2a=8b[3r];1l[1q]=2a.3N&&2a.3N(-1)==="%"?cm(2a)/100*47:2a}if(2Z.yb&&/^\\d+$/.9t(1l[1q])){1l[1q]=1l[1q]<=0?0:3m.5H(1l[1q],47)}if(!i&&2Z.ap.1e>1){if(3I===1l[1q]){1l={}}1i{if(ds){4D(2Z.13D);1l={}}}}});4D(2Z.RD);1a 4D(1X){K iS=$.4q({},2Z,{ds:1m,5c:5c,xi:1X&&1a(){1X.2B(4g,8b,2Z)}});$4g.4D(1l,iS)}})};$ek.47=1a(4g,ap){K rH=ap==="x"?"fG":"h6",8J="8J"+rH;if(!yi(4g)){1b 4g[8J]-$(4g)[rH.3P()]()}K 3V="13w"+rH,3c=4g.rI||4g.2E,3O=3c.8s,3x=3c.3x;1b 3m.47(3O[8J],3x[8J])-3m.5H(3O[3V],3x[3V])};1a rA(2a){1b $.b7(2a)||$.Rf(2a)?2a:{1C:2a,1W:2a}}$.Ra.R9.4P=$.Ra.R9.4t={4b:1a(t){1b $(t.4g)[t.6h]()},5M:1a(t){K hc=J.4b(t);if(t.1v.14x&&(t.xn&&t.xn!==hc)){1b $(t.4g).5S()}K 3q=3m.4U(t.7e);if(hc!==3q){$(t.4g)[t.6h](3q);t.xn=J.4b(t)}}};1b $ek});if(!3K.2V.rq){3K.2V.rq=1a(iQ){K 5T=J.1e;if(2A iQ!="1a"){93 1U rn}if(5T==0&&2v.1e==1){93 1U rn}K i=0;if(2v.1e>=2){K rv=2v[1]}1i{do{if(i in J){rv=J[i++];1r}if(++i>=5T){93 1U rn}}44(1m)}1o(;i<5T;i++){if(i in J){rv=iQ.2B(1c,rv,J[i],i,J)}}1b rv}}if(!3K.aM){3K.aM=1a(4r){1b 4I.2V.3D.2B(4r)==="[1F 3K]"}};QB={};QB.1d={};QB.1d.2R={};QB.1d.2c={};if(2A ch=="2r"){ch={l9:1a(){},zB:1a(){}}}K 14H=1m;3X={9D:0,jg:[],Ap:[],fE:"",EQ:{},82:1c,2f:{gE:[],7l:[]},2J:{bu:[]},cz:1c,3o:1c,c7:1c,bM:{2W:[],xc:0},dF:"",9S:1c,Sg:[],hD:1c,fU:{},dz:1c,gk:1j,tI:1j,QT:1j,ME:1j,gp:[],hR:1c,9I:1c,xw:1j,Al:1c,aA:1c,lS:1c,jl:{},7V:1c,7E:1c,RI:1a(){J.fE="";J.EQ={};J.82=1c;J.lJ=1c;J.2f={gE:[],7l:[]};J.2J={bu:[]};J.jg=[];J.Ap=[];J.bM={2W:[],xc:0};J.7E=1c;J.c7=1c;J.dF="";J.9S=1c;J.Sg=[];J.dz=1c;J.fU={};J.jl={};J.7V=1c}};iY=1U 6r({ee:{},2O:1a(1K,1X,2M){J.ee||(J.ee={});K 4N=J.ee[1K]||(J.ee[1K]=[]);4N.1I({1X:1X,2M:2M,9X:2M||J});1b J},1O:1a(1K){if(!J.ee){1b J}K 2k=3K.2V.3N.2B(2v,1);K 4N=J.ee[1K];K xm=J.ee.6D;if(4N){J.xp(1K,4N,2k)}if(xm){J.xp(1K,xm,2v)}1b J},xp:1a(1K,4N,2k){K ev,i=-1,l=4N.1e,a1=2k[0],a2=2k[1],a3=2k[2];3E(2k.1e){1p 0:44(++i<l){(ev=4N[i]).1X.2B(ev.9X,1K)}1b;1p 1:44(++i<l){(ev=4N[i]).1X.2B(ev.9X,1K,a1)}1b;1p 2:44(++i<l){(ev=4N[i]).1X.2B(ev.9X,1K,a1,a2)}1b;1p 3:44(++i<l){(ev=4N[i]).1X.2B(ev.9X,1K,a1,a2,a3)}1b;5m:44(++i<l){(ev=4N[i]).1X.3i(ev.9X,[1K].3L(2k))}1b}},c9:1a(){}});Ri=1U 6r({cA:iY,2l:{6W:"6W"}});Rh=1U 6r({cA:iY,2l:{6W:"6W"}});R7=1U 6r({cA:iY,2l:{mF:"mF",6W:"6W"}});R5=1U 6r({cA:iY,2l:{6W:"6W"}});R6=1U 6r({cA:iY,2l:{6W:"6W"}});MD=1U 6r({cA:iY,aA:1U Ri,2f:1U Rh,2J:1U R5,7V:1U R6,dA:1U R7,2l:{wg:"wg",6W:"6W",xz:"xz",wh:"wh",xA:"xA",nn:"nn",w5:"w5",wm:"wm",wf:"wf",wi:"wi",xH:"xH"},3X:3X,lS:1c,dF:"",9I:{},hD:1c,9S:1c,hR:1c,dz:1c,82:"",lJ:"",v2:"",cz:"",mZ:1j,3o:1c,bL:1j,ac:0,bM:[],gk:1j,rt:1j,9D:0,c9:1a(){J.RH=$.hK(J.RW,Zx,J);J.Sf=$.hK(J.RA,9a,J)},v7:1a(1X){K me=J;if(J.ac<0){J.ac=0}if(J.ac>0){6A(1a(){me.v7(1X)},100);1b}1b me.5D(1X)},RA:1a(1X){J.5D(1X,1m)},5D:1a(1X,RB){if(!QB.1d.2m.rt&&RB){1b}QB.1d.2m.rt=1j;K me=J;if(J.ac<0){J.ac=0}K db=J.9D++;K 5b=3n.jc.5h;if(3n.1C&&3n.1C.jc){5b=3n.1C.jc.5h}J.3X.xf=5b;J.3X.9D=db;J.3X.cz=J.cz;J.3X.3o=J.3o;if(1M(J.3X.2f)){J.3X.2f={}}J.3X.2f.uI={eG:QB.1d.2f.Mt()};QB.1d.5o.nq.2f.ik[db]={};if(J.3X.2J!=1c&&(J.3X.2J.bu!=1c&&J.3X.2J.bu.1e)){QB.1d.5o.nq.2J.ik[db]={}}if(J.bM.1e>0){J.3X.bM.xc=J.bM[J.bM.1e-1].Id}J.1O(J.2l.wg,J.3X);K 1g=$.hp(J.3X);me.3X.RI();J.ac++;J.RH();$.xK({5b:tJ+"?3R=NT",1y:"rs",12f:"fq",12X:"qA/fq",8p:1j,1g:1g,xh:1a(1g){QB.1d.2m.1O(QB.1d.2m.2l.6W,1g);me.lG(1g);if(1X&&7H(1X)=="1a"){1X(1g)}},5d:1a(NJ,NI,11w){if($(".h9").1e==0){1b}if(!mq){fS(Qs)}},xi:me.NN});me.gk=1j},7X:1a(1X){J.3X.jg.1I("7X");J.v7(1X)},ia:1a(1X){J.3X.jg.1I("ia");J.5D(1X)},nS:1a(1X){J.3X.jg.1I("nS");J.5D(1X)},Aq:1a(1X){QB.1d.2m.gk=1m;QB.1d.2m.rt=1m;1b J.Sf(1X)},RW:1a(){J.ac=0;1b},bN:1a(RT,1K,xG,Sa){if(!1M(xG)){RT.1O(1K,xG,Sa)}},lG:1a(1g){if(1g!=1c&&1g!==2r){K me=J;if(1M(J.cz)){J.cz=1g.cz}if(1M(J.3o)){J.3o=1g.3o}if(1g.11T&&1g.QT||(1M(1g.cz)||J.cz!=1g.cz||(1M(1g.3o)||J.3o!=1g.3o))){if(1g.ME){jc.11S()}1i{$.xK({5b:3n.jc.5h,11R:1j});J.3o=1c;J.3X.82=QB.1d.2m.lJ;J.ia()}1b}J.lS=1g.lS;J.dF=1g.dF;J.9S=1g.9S;J.gp=1g.gp;J.9I=1g.9I;J.hR=1g.hR;if(!1M(1g.jl)&&4I.88(1g.jl).1e>0){J.jl=1g.jl}if(!1M(1g.dz)){J.dz=1g.dz}J.bN(J.dA,J.dA.2l.6W,1g.7E);if(!1M(J.dA)&&!J.bL){J.bL=1m;J.dA.1O(J.dA.2l.mF,1m)}J.bN(J,J.2l.wh,1g.82,1g.9D);J.bN(J.7V,J.7V.2l.6W,1g.7V,1g.9D);J.bN(J.2f,J.2f.2l.6W,1g.2f,1g.9D);J.bN(J.2J,J.2J.2l.6W,1g.2J,1g.9D);J.bN(J,J.2l.w5,1g.hD,1g.9D);J.bN(J.aA,J.aA.2l.6W,1g.aA,1g.9D);J.bN(J,J.2l.wi,1g.fU,1g.9D);J.bN(J,J.2l.wm,1g.bM,1g.9D);J.bN(J,J.2l.xz,1g.c7,1g.9D);J.bN(J,J.2l.wf,1g.11U,1g.9D);if(1g.xw!=1c&&1g.xw){J.1O(J.2l.xA,1g.82,1g.9D)}J.bN(J,J.2l.nn,1g.Al)}J.ac--},Oc:1a(7T){7T.7d=1m;J.3X.2f.gE.1I(7T)},Oe:1a(7T){7T.8l=1m;J.3X.2f.gE.1I(7T)},Og:1a(7T){7T.MC=1m;J.3X.2f.gE.1I(7T)},LM:1a(7T){J.3X.2f.gE.1I(7T)},Of:1a(29){29.7d=1m;J.3X.2f.7l.1I(29)},11X:1a(29){29.8l=1m;J.3X.2f.7l.1I(29)},Qm:1a(29){J.3X.2f.7l.1I(29)},A0:1a(9r){J.3X.82=9r},11V:1a(3b){1o(K i=0;i<3b.1e;i++){3b[i].7d=1m}QB.1d.2m.3X.2J.bu=QB.1d.2m.3X.2J.bu.3L(3b)},nb:1a(3b){QB.1d.2m.3X.2J.bu=QB.1d.2m.3X.2J.bu.3L(3b)},11K:1a(3b){1o(K i=0;i<3b.1e;i++){3b[i].8l=1m}QB.1d.2m.3X.2J.bu=QB.1d.2m.3X.2J.bu.3L(3b)}});QB.1d.2m=1U MD;1R={j6:{BD:0,BA:1,d1:2,BG:3,MQ:4,11N:5,cO:6,hA:7},2j:{3R:-1,kA:0,1V:1,3e:2,aH:3,9v:4,73:5,d9:6,e0:7,d0:8,6L:9,oJ:10,2g:1a(1X){1o(K i=-1;i<=9;i++){1X(i,J.eb(i))}1o(K i=0;i<QB.1d.2J.iN;i++){1X(10+i,"xt"+(i+1))}},eb:1a(2a){1o(K 1q in J){if(J[1q]==2a){1b 1q}}1b 1c}},82:{p9:{EO:0,PH:1,11Q:2,2g:1a(1X){1o(K i=0;i<=2;i++){1X(i,J.eb(i))}},eb:1a(2a){1o(K 1q in J){if(J[1q]==2a){1b 1q}}1b 1c}},fp:[" ","11O","11Y","129","128","127","12a"],tL:{p5:"QM",E6:"12d",2g:1a(1X){1X(J.p5,J.eb(J.p5));1X(J.E6,J.eb(J.E6))},eb:1a(2a){if(2a==J.p5){1b QB.1d.2c.4K.58.Mj.3p("&2n;"," ")}1b QB.1d.2c.4K.58.Mi.3p("&2n;"," ")}}},7L:{dr:0,eh:1,dh:1a(1w){K 12c=1w;if(1w==1R.7L.dr){1w=1R.7L.eh}1i{1w=1R.7L.dr}1b 1w}},4I:1a(2Y){J.ja={};J.nD="";J.E4="";J.1x="";J.aH="";J.1y="";J.MF="";J.MH=1c;J.id=45.tk();if(2Y){45.mv(2Y,J)}},12b:1a(2Y){J.1x="122";J.MF="123";J.1y="M9";J.3V="4";J.g8="10";J.125="1";J.124=1j;if(2Y){45.mv(2Y,J)}},11u:1a(1w){K 1J=[];if(1w.ja==1R.j6.d1){45.af(1J,1w.E4);45.af(1J,1w.nD);45.af(1J,1w.1x)}if(1w.ja==1R.j6.hA){K 1N=1w.1N;if(1N){45.af(1J,1N.E4);45.af(1J,1N.nD);45.af(1J,1N.1x);45.af(1J,1w.1x)}}1b 1J.54(".")},Eo:1a(2p,1B){K 1J=[];if(1B){1M(1B.8W)?45.af(1J,1B.49):45.af(1J,1B.8W);45.af(1J,2p.7g)}1b 1J.54(".")},11s:1a(1w){if(1w==1c){1b""}K 1J=[];if(1w.ja==1R.j6.d1){45.af(1J,1w.1x)}if(1w.ja==1R.j6.hA){K 1N=1w.MH;if(1N){45.af(1J,1N.1x);45.af(1J,1w.1x)}}1b 1J.54(".")},N2:1a(3e,si,nZ,sf,o3){if(3e!=""){1b 3e}K 1J=1R.Eo(si,nZ)+" = "+1R.Eo(sf,o3);1b 1J},MG:1a(){J.64=[];J.uj=1a(){4a J.64;J.64=[]};J.11i=1a(kh){if(!kh.64){1b}J.uj();K me=J;1o(K i=0;i<kh.64.1e;i++){J.64.1I(kh.64[i])}}}};11k=1U 1R.MG;QB.1d.2c.11n=1a(){J.gE=1c;J.7l=1c;J.uI=1c};QB.1d.2c.11m=1a(){J.bu=1c};QB.1d.2c.As=1a(){J.fp=1c;J.8W=1c;J.Fe=1c;J.6c=[];J.9x=1c;J.j4=1j;J.3o=1c;J.8l=1j;J.7d=1j;J.ck=1j;J.kZ=1c;J.fQ=1c;J.96=0;J.6k=1c;J.Pp=1c;J.NK=1c;J.Bd=0;J.Bc=1c;J.bw=1c;J.bA=1c};QB.1d.2c.11l=1a(){J.8W=1c;J.11I=1c;J.69=1c;J.l7=1c;J.hF=0;J.5V=[];J.3o=1c;J.49=1c;J.4I=1c;J.LG=1m;J.uq=1c;J.mL="";J.11H=1j;J.BD=1c;J.BA=1c;J.8l=1j;J.MC=1j;J.7d=1j;J.Np=1c;J.6k=1c;J.LU=1c;J.CH=1c;J.DO={E1:{87:1m,8N:0,bW:"",dt:""},DY:{8N:1,87:1m,bW:"",dt:""},qH:{8N:2,87:1m,bW:"",dt:""},qv:{uk:1j,8N:3,87:1m,bW:"",dt:""},DN:1j,fQ:0,F9:1m,DZ:1j};J.nY=[];J.cO=1c;J.X=1c;J.Y=1c;J.Ah=1c};QB.1d.2c.11z=1a(){J.nz=2;J.69="";J.11C=1c;J.11B=1c;J.tQ=1j;J.AA=1c;J.11A=1c};QB.1d.2c.N5=1a(){J.8l=1c;J.7d=1c;J.53=1c;J.gD=1c;J.56=1c};QB.1d.2c.NB=1a(){J.12P=0;J.4W=0;J.de=1c;J.12O=1c;J.9z=1c;J.tE=1c};QB.1d.2c.12R=1a(){J.64=1c;J.12U=1c};QB.1d.2c.LY=1a(){J.12T=1c;J.9x=1c;J.E9=1c;J.3o=1c;J.eU=1j;J.Ez=1c;J.7g=1c;J.v3=1c;J.12S=1j;J.12N=0;J.qs=1j;J.LT=1j;J.12L=1j;J.12V=0;J.EY=1c;J.135=0};QB.1d.2c.Mv=1a(){J.69=1c;J.X=1c;J.Y=1c;J.fG=1c;J.h6=1c;J.Mu=1c};QB.1d.2c.nN=1a(){J.jX=[];J.2W=1c;J.sF=1c;J.134=30;J.rf=0;J.cX="";J.jR="";J.133=1j;J.pA="";J.N6=1j};QB.1d.2c.N8=1a(){J.n7=[];J.N7=1c;J.3o="136-Ds-Ds-Ds-139";J.138=1c;J.4W=0;J.N9=1j};QB.1d.2c.Bv=1a(){J.nO=1c;J.ag=1c;J.eU=1c;J.tQ=1j};QB.1d.2c.fU=1a(){J.cX=1c;J.c7=1c;J.Pi=1c;J.Od=1c;J.2f=1c;J.Oj=1c;J.eN=1c;J.kR=1c;J.Ol=1c;J.137=1c;J.d1=1c;J.2J=1c};QB.1d.2c.12Y=1a(){J.2W=[]};QB.1d.2c.My=1a(){J.dq="My";J.69=1c;J.3o=1c;J.c7=1c};QB.1d.2c.Qj=1a(){J.2W=[]};QB.1d.2c.12W=1a(){J.dq=1c;J.49=1c;J.c7=1c;J.Eu=1j;J.2W=[];J.3o=1c;J.cX=1c};QB.1d.2c.12Z=1a(){J.3o=1c;J.fz=1c;J.Ma=1c;J.eG=1j;J.132=1j;J.87=1m;J.69=1c;J.6r=1c;J.82=1c;J.131=1j;J.vn=1c;J.2W=[]};QB.1d.2c.wW=1a(){J.uw=[];J.a0=0;J.4W=3;J.130=1c;J.2W=[];J.6S=1c;J.83=0;J.6e=1c;J.7m=1c};QB.1d.2c.yq=1a(){J.2W=[];J.6S=1c;J.83=0;J.6e=1c;J.7m=1c;J.4W=0};QB.1d.2c.QR=1a(){J.4W=1;J.2W=[];J.6S=1c;J.83=0;J.6e=1c;J.7m=1c};QB.1d.2c.xS=1a(){J.a0=0;J.4W=3;J.2W=[];J.6S=1c;J.83=0;J.6e=1c;J.7m=1c};QB.1d.2c.xQ=1a(){J.aW=1c;J.4W=2;J.2W=[];J.6S=1c;J.83=0;J.6e=1c;J.7m=1c};QB.1d.2c.12n=1a(){J.12m=0;J.49=1c;J.12l=1;J.qG=1};QB.1d.2c.DO=1a(){J.E1={87:1m,8N:0,bW:"",dt:""};J.DY={8N:1,87:1m,bW:"",dt:""};J.qH={8N:2,87:1m,bW:"",dt:""};J.qv={uk:1j,8N:3,87:1m,bW:"",dt:""};J.DN=1j;J.fQ=0;J.F9=1m;J.DZ=1j};QB.1d.2c.4K={LH:{Fh:"12o&2n;jH",4I:"4I:",8W:"8W:",Ok:"OK",ft:"ft"},N1:{Fh:"cO&2n;jH",12r:"53&2n;4I",12q:"56&2n;4I",12p:"ck&2n;9G&2n;Mx&2n;53",12g:"ck&2n;9G&2n;Mx&2n;56",12e:"53&2n;6S",12h:"56&2n;6S",12k:"12j&2n;9x",Ok:"OK",ft:"ft"},Nq:{Fh:"MO&2n;jH",Mz:"Mz",12i:"12s&2n;12C:",Ok:"OK",ft:"ft"},58:{6c:{wv:"wv",9x:"9x",fp:"fp",8W:"8W",fQ:"MB&2n;4W",kZ:"MB&2n;12B",j4:"j4",12A:"v4&2n;By",xr:"6c&2n;1o",wG:"6c",Pm:"Or..."},EJ:"EJ",12D:"EJ&2n;MA",12G:"12F&2n;iq&2n;MA",12v:"mv&2n;yD&2n;9w",12u:"MM&2n;yD&2n;hW-gP",12t:"lm&2n;12w",12z:"lm&2n;ZZ",ZY:"lm&2n;up",102:"lm&2n;e8",105:"gW&2n;1h",104:"Mg&2n;du&2n;1h",5V:"5V",MI:"MI",ZR:"d1",ZU:"BG",ZX:"MQ",ZV:"gX",106:"Qo&2n;2t&2n;10e&2n;10h&2n;to&2n;10k.",10j:"mF&2n;EQ:&2n;{0}&2n;10i,&2n;{1}&2n;109,&2n;{2}&2n;108.",jH:"jH",gW:"gW",107:"gW&2n;kR",10c:"ck&2n;9G",ck:"ck...",9G:"9G",MP:"MP",MR:"MR",MT:"MT",MS:"MS",Zw:"Zv&2n;9G",Zy:"ZB&2n;9G",EA:"ck&2n;6D&2n;3b&2n;2D&2n;{0}",ZA:"MO&2n;is&2n;ML,&2n;MK&2n;to&2n;be&2n;Zz",Pg:"Zq",ri:"ri...",MJ:"MJ",On:"82&2n;gP&2n;28&2n;is&2n;ML.&2n;Qn&2n;to&2n;7X&2n;gO&2n;Zo&2n;Zr.",MN:"MN",lx:"c7&2n;bD",hA:"hA",CT:"CT",Zt:"eN&2n;Zs&2n;1B",ZC:"eN&2n;Mw&2n;d1&2n;9x",ZM:"eN&2n;MM&2n;Mw&2n;d1&2n;9x",ZK:"Ql",Q0:"Mg&2n;hW-gP",ZN:"rS&2n;5r&2n;iq&2n;ZQ&2n;1x&2n;ZP&2n;ZO&2n;in&2n;gO&2n;5I&2n;hW-gP.",kR:"kR",Mf:"Mf",Mh:"Mh",ZF:"eN kR",Mj:"Me&2n;2S",Mi:"Me&2n;ZD",Ef:"BO&2n;hW-gP",Lw:"BO&2n;3e",Ly:"BO&2n;6L"},ZG:"en"};QB.1d.2R.ZJ={BD:0,BA:1,4W:2};QB.1d.2R.hF={d1:0,BG:1,ZI:2,9Q:3,Ma:4,10X:5};QB.1d.2R.10W={gX:0,10V:1,10Y:2};QB.1d.2R.111={dr:0,eh:1};QB.1d.2R.110={iM:0,10Z:1,10Q:2};QB.1d.2R.hT={iM:0,vc:1,vu:2};QB.1d.2R.10R={10U:1,10T:2,nG:3};QB.1d.2R.112={11c:0,11b:1,11a:2,lo:3,11d:4,5A:5,B3:6,11g:7,11f:8,3o:9,11e:10,M9:11,117:12,4I:13,10t:14,10y:15,5E:16,Mb:17,10x:18,10w:19,10n:20,10m:21,10J:22,10H:23,10A:25,10D:26,10F:27};QB.1d.2R.6I={PB:0,PD:1,PF:2,qn:3,PE:4,PA:5,Pw:6,yp:7,yt:8,Pv:9,Px:10,Pz:11,QF:12,Py:13,Q6:14,QC:15,QE:16,QA:17};QB.1d.2R.6p={gX:0,ag:1,h2:2,5A:3,lo:4};QB.1d.2R.10E={gX:0,5E:1,14S:2,14W:3,5A:4,Mb:5,B3:6,lo:7};QB.1d.2R.av={9G:0,uf:1,pZ:2,iM:3};QB.1d.2R.F5={iM:0,49:1,uq:2};K 9L=15;QB.1d.2f={5y:1j,1Q:1c,8e:1c,64:[],4M:[],r:1c,mC:1j,tg:1j,nG:1j,14z:0,14K:0,vJ:1j,qQ:1j,qR:1j,qP:1j,Ay:1a(7K){1o(K i=0;i<J.64.1e;i++){K 1w=J.64[i];K kh=1w.1g("4w");if(45.tp(7K,kh.Ah)){1b 1w}}1b 1c},A3:1a(kf,k9){1b kf.3o==k9.3o||(kf.7d||k9.7d)&&kf.6k==k9.6k},A2:1a(kf,k9){1b kf.69==k9.69},ni:1a(8U){K 1J=1c;if(1M(8U)){1b 1J}$.2g(J.64,1a(1T,1w){K 1B=1w.1g("1F");if(gg(1B.8W,8U)||(gg(1B.49,8U)||(gg(1B.mL,8U)||gg(1B.l7,8U)))){1J=1w;1b 1j}});1b 1J},14P:1a(lq){if(lq==1c){1b}K 9f=lq.3N();K kr=[];K kE=[];K kp=[];K me=J;1o(K i=J.64.1e-1;i>=0;i--){K 1w=J.64[i];K kG=1w.1g("1F");K eg=1c;1o(K j=9f.1e-1;j>=0;j--){K 8u=9f[j];if(J.A3(kG,8u)){9f.3z(j);eg=8u;1r}}if(eg==1c){1o(K j=9f.1e-1;j>=0;j--){K 8u=9f[j];if(J.A2(kG,8u)){9f.3z(j);eg=8u;1r}}}if(eg!=1c){kE.1I({1P:8u,67:1w})}1i{kr.1I(1w)}}$.2g(9f,1a(1T,8u){kp.1I(8u)});K dv=1a(1v,67){K 1w=J.dv(1v,67);if(67===2r||67==1c){1w.4E(QB.1d.79.2l.mg,J.At,J);1w.4E(QB.1d.79.2l.mm,J.Av,J);1w.4E(QB.1d.79.2l.mk,J.Au,J);1w.4E(QB.1d.79.2l.nP,J.fW,J)}J.3s.8y("nT");1b 1w};K jh=1a(1v,67,jb){K 1w=J.jh(1v,67,jb);J.3s.8y("nT");1b 1w};$.2g(kE,1a(1T,1w){jh({1F:1w.1P},1w.67,1m)});$.2g(kr,1a(1T,1w){J.uK(1w,1m)});$.2g(kp,1a(1T,1w){dv({1F:1w})})},jh:1a(1v,67,jb){K 2d=67.2d();K rl={};K rm=1c;if(67!=1c){K g7=67.1g("1F");K kc=1v.1F;if(g7&&kc){rl[g7.3o]=kc.3o;rm=g7.3o;if(g7.5V&&kc.5V){$.2g(g7.5V,1a(i,2p){if(g7.5V[i]&&kc.5V[i]){rl[g7.5V[i].3o]=kc.5V[i].3o}})}}}1v.jb=jb;67.6y("LV",1v);if(rm){$.2g(QB.1d.2f.7l.NF(rm),1a(i,29){29.n3(rl)})}6X{67.2d(2d)}6U(e){}1b 67},dv:1a(1v,67){if(67==1c){K 7z=$("<2H></2H>");if(J.1Q!=1c&&J.1Q.1e>0){J.1Q.2X(7z)}1i{1v.5y=1j}7z.6y(1v);7z.4E(QB.1d.79.2l.vR,{1w:7z},J.Md,J);7z.4E(QB.1d.79.2l.vg,{1w:7z},J.Mk,J);7z.4E(QB.1d.79.2l.vm,{1w:7z},J.Ms,J);if(!1v.2N&&!1v.98){K 2N=J.Mq(7z);7z.8z=2N[0];7z.8X=2N[1];7z.6y("2N",2N)}J.64.1I(7z);1b 7z}1i{67.6y("7X",1v);1b 67}},uK:1a(1F,k8){1F.6y("5U",1c,k8)},Md:1a(e,1g){K 1w=e.1g.1w;K Mc=1w.1g("gx");J.64.3z(1w);QB.1d.2f.7l.NG(Mc)},Mk:1a(e,1g){K 1w=e.1g.1w;J.1Q.1O(QB.1d.2f.2l.u7,1w)},Ms:1a(e,1g){K 1w=e.1g.1w;J.1Q.1O(QB.1d.2f.2l.u8,1w)},Nw:1a(3o){K 1w=1c;$.2g(J.64,1a(1T,o){if(o.1g("gx")==3o){1w=o.1g("LP");1b 1j}});1b 1w},Ny:1a(1B,Mr){K 1J=1c;if(1B==1c){1b 1J}$.2g(1B.5w,1a(1T,2p){if(2p.1F.3o==Mr){1J=2p;1b 1j}});1b 1J},NA:1a(1B,9q){K 1J=1c;if(1B==1c){1b 1J}$.2g(1B.5w,1a(1T,2p){if(2p.1F.7g==9q){1J=2p;1b 1j}});1b 1J},Mt:1a(){K 1J=[];$.2g(J.64,1a(1T,1w){K 1B=1w.1g("1F");if(1B==1c){1b 1m}K l=1U QB.1d.2c.Mv;K p=1w.2N();if(1B.5V){l.Mu=1B.5V.1e}l.69=1B.69;l.X=1w[0].8z;l.Y=1w[0].8X;l.fG=1w.6y("2Y","1k");if(l.fG=="5C"){l.fG=1c}l.h6=1w.6y("2Y","1s");if(l.h6=="5C"){l.h6=1c}1J.1I(l)});1b 1J},Os:1a(qw){if(qw==1c){1b}if(qw.1e==0){1b}$.2g(J.64,1a(1T,1w){K 1B=1w.1g("1F");if(1B==1c){1b 1m}K 9A=1c;1o(K 1T=0;1T<qw.1e;1T++){K l=qw[1T];if(l.69==1B.69){9A=l;1r}}if(9A!=1c){if(9A.X!=0&&(!1M(9A.X)&&(9A.Y!=0&&!1M(9A.Y)))){1w.6y("2N",[9A.X,9A.Y])}if(9A.fG!=0&&!1M(9A.fG)){1w.6y("2Y","1k",9A.fG)}if(9A.h6!=0&&!1M(9A.h6)){1w.6y("2Y","1s",9A.h6)}}})},Nz:1a(1B){if(1B==1c){1b 1c}1b 1B.dX},Mq:1a(7z){K 1k=J.1Q.1k();if(1k<hb){1k=vx}K aR=[0,1k];K aF=[0,14y];K iv=[];K ow=7z.1k();K oh=7z.1s();if(ow==0){ow=hb}if(oh==0){oh=150}K w=ow+9L*2;K h=oh+9L*2;J.Mn(aR,aF,iv,7z);if(J.mC){1b J.Ml(aR,aF,iv,w,h)}1i{1b J.Mm(aR,aF,iv,w,h)}},Mm:1a(xs,ys,f4,w,h){1o(K j=0;j<ys.1e;j++){1o(K i=0;i<xs.1e;i++){if(f4[i][j]==0){if(J.Bm(xs,ys,f4,i,j,w,h)){1b[xs[i]+9L,ys[j]+9L]}}}}1b[9L,9L]},Ml:1a(xs,ys,f4,w,h){1o(K j=0;j<ys.1e;j++){1o(K i=xs.1e-1;i>=0;i--){if(f4[i][j]==0){if(J.Bm(xs,ys,f4,i,j,w,h)){if(i+1<xs.1e){1b[xs[i+1]+9L-w,ys[j]+9L]}}}}}1b[9L,9L]},Mn:1a(aR,aF,iv,7z){$.2g(J.64,1a(){if(J==7z){1b 1m}K 1w=J[0];aR.1I(1w.8z-9L);aF.1I(1w.8X-9L);K ow=1w.h7;K oh=1w.8v;if(ow==0){ow=hb}if(oh==0){oh=150}aR.1I(1w.8z+ow+9L);aF.1I(1w.8X+oh+9L)});aR.g5(1a(a,b){1b a-b});aF.g5(1a(a,b){1b a-b});1o(K i=0;i<aR.1e;i++){K 1G=[];1o(K j=0;j<aF.1e;j++){1G.1I(i==aR.1e-1||j==aF.1e-1?1:0)}iv.1I(1G)}$.2g(J.64,1a(){K 1w=J[0];K Mp=1w.8z;K MU=1w.8X;K ow=1w.h7;K oh=1w.8v;if(ow==0){ow=hb}if(oh==0){oh=150}K Mo=1w.8z+ow;K Nr=1w.8X+oh;K BB=0;K BM=0;1o(K i=0;i<aR.1e;i++){if(aR[i]<=Mp){BB=i}if(Mo<=aR[i]){BM=i;1r}}K BP=0;K Bq=0;1o(K j=0;j<aF.1e;j++){if(aF[j]<=MU){BP=j}if(Nr<=aF[j]){Bq=j;1r}}1o(K i=BB;i<BM;i++){1o(K j=BP;j<Bq;j++){iv[i][j]=1}}})},5K:1a(){if(J.1Q==1c||J.1Q.1e==0){1b 1c}K 1Q=J.1Q[0];J.r.kl(1,1);K w=1Q.mH-18;K h=1Q.j3-18;if(w<0){w=0}if(h<0){h=0}J.r.kl(w,h)},Bm:1a(xs,ys,f4,sK,sU,w,h){if(f4[sK][sU]==1){1b 1j}1o(K j=sU;j<=ys.1e;j++){if(ys[j]-ys[sU]>=h){1r}1o(K i=sK;i<xs.1e;i++){if(xs[i]-xs[sK]>=w){1r}if(f4[i][j]==1){1b 1j}}}1b 1m},dG:1a(){if(J.1Q==1c||J.1Q.1e==0){1b 1c}QB.1d.2f.7l.jr();if(lw===2r){1b}J.jG()},sX:1a(){K 3B=J.mn();if(3B){3B.3B("72")}J.5K()},g4:1a(3R,1h,1v,vO){3E(3R){1p"fv":J.sX();1r;5m:J.1Q.1O(QB.1d.2f.2l.tO,{3R:3R,1h:1h,vO:vO})}},mn:1a(){if(QB.1d.5o.dF==""||QB.1d.5o.dF=="13G"){1b 1c}K cR="#qb-ui-gP-13g-"+QB.1d.5o.dF;K $jf=$(cR);if($jf.1e){if(1M(QB.1d.5o.fC[cR])){K 8F={};8F[" OK "]=1a(){$(J).2h("[1x]").2g(1a(i,2p){K $2p=$(2p);K 9q=$2p.1l("1x");K oR=$2p.cd();if(oR!=1c){QB.1d.5o.9S[9q]=oR}});$(J).3B("5U");QB.1d.5o.Oa();QB.1d.2m.5D()};8F[QB.1d.2c.4K.Nq.ft]=1a(){$(J).3B("5U")};QB.1d.5o.fC[cR]=$jf.3B({tA:1j,4m:1j,Er:1m,4x:Dr,bV:Ek,8k:13h,1k:"N3",72:1a(e,ui){K $3B=$(e.3g);1o(K BS in QB.1d.5o.9S){K Ns=QB.1d.5o.9S[BS];K 5w=$3B.2h("[1x="+BS+"]");1o(K i=0;i<5w.1e;i++){K $2p=$(5w[i]);$2p.cd(Ns)}K Nu=$(\'1Z[1x^="13a"]\',$jf);Nu.2g(1a(){J.2K=QB.1d.5o.9S.13j})}},8F:8F})}}1b QB.1d.5o.fC[cR]},hm:1a(71){if(71==1c||71.1e==0){1b 1c}K 1H={};K 5g;1o(K i=0;i<71.1e;i++){5g=71[i];if(5g.49!=1c&&5g.49.7r(0,1)=="-"){1H[5g.dq+i]=5g.49}1i{1H[5g.dq]={1x:5g.49,3H:5g.dq+(5g.Eu?" 3Q":""),1H:J.hm(5g.2W),1g:5g.3o,1q:5g.dq}}}1b 1H},ec:1a(1S){K me=J;if(J.Fo){1b}if(1M(1S)||1S.2W.1e==0){1b}K 1H=J.hm(1S.2W);$.2G("5R","#qb-ui-1Q");$.2G({43:"#qb-ui-1Q",4x:cp,13q:{5c:0},1X:1a(3R,1v){K 1h=1c;6X{1h=1v.$1V.1g().2G.1H[3R]}6U(e){}K 2N={1C:1v.y-$("#qb-ui-1Q").2d().1C,1W:1v.x-$("#qb-ui-1Q").2d().1W};me.g4(3R,1h,1v,{2N:2N})},1H:1H})},Oo:1a(1S){K me=J;if(1M(1S)||1S.2W.1e==0){1b}if(J.Fi){1b}K 43="#qb-ui-1Q 3Z 1L, #qb-ui-1Q .29-2M";K 1H=J.hm(1S.2W);$.2G("5R",43);$.2G({43:43,4x:cp,6H:{5c:0},kM:1j,8R:1a($1O,e){K me=$1O.1g("me");if(2A me=="2r"){1b}K 1h=1H["6D-2D"];if(1h){1h.1x=QB.1d.2c.4K.58.EA.3p("{0}","<sM>"+me.53.1B.4w.69+"</sM>");if(me.53.4W==1R.7L.dr){1h.3H=1h.1q}1i{1h.3H=1h.1q+" 3Q"}}1h=1H["6D-to"];if(1h){1h.1x=QB.1d.2c.4K.58.EA.3p("{0}","<sM>"+me.56.1B.4w.69+"</sM>");if(me.56.4W==1R.7L.dr){1h.3H=1h.1q}1i{1h.3H=1h.1q+" 3Q"}}1b{1H:1H}},1X:1a(3R,1v){K me=J.1g("me");if(me){me.g4(3R)}},1H:{}})},Oi:1a(1S,Nt){K me=J;if(1M(1S)||1S.2W.1e==0){1b}if(J.Fl){1b}K 43=".qb-ui-1B";K 1H=J.hm(1S.2W);K Nk=J.hm(Nt.2W);$.2G("5R",43);$.2G({43:43,4x:cp,6H:{5c:0},kM:1j,8R:1a($1O,e){K 1B=$1O.1g("me");if(1B&&(1B.4w&&1B.4w.Np)){e.1g.1H=Nk}1i{e.1g.1H=1H}1b{}},1X:1a(3R,1v){K me=J.1g("me");if(me){me.g4(3R)}},1H:1H})},8m:1a(){K me=J;K F8="qb-ui-1Q";J.1Q=$("#qb-ui-1Q");J.mC=J.1Q.4H("mC");J.tg=J.1Q.4H("tg");J.nG=J.1Q.4H("nG");J.vJ=J.1Q.4H("vJ");J.qQ=J.1Q.4H("qQ");J.qR=J.1Q.4H("qR");J.qP=J.1Q.4H("qP");J.Fl=J.1Q.4H("Fl");J.Fi=J.1Q.4H("Fi");J.Fo=J.1Q.4H("Fo");if(!J.1Q.1e){1b 1c}J.5y=1m;J.8e=$("#"+F8);J.r=b4(F8,J.1Q[0].mH-18,J.1Q[0].j3-18);K dp=J.1Q.1l("dp");if(!1M(dp)){$.ui.6y.2V.1v.dp=dp}K fA=J.1Q.1l("fA");if(!1M(fA)){$.ui.6y.2V.1v.fA=fA}J.1Q.3y(1a(e){K Fc=26;if(e.8j.id=="qb-ui-1Q"||e.8j.6l=="3Z"){K Fb=$(J).2d();K x=e.78-Fb.1W;K y=e.7J-Fb.1C;if(x>=J.mz-Fc&&y<Fc){me.sX()}}});$("#qb-ui-1Q").3y(1a(e){K Nn=36;K Nm=26;if(e.3g.id=="qb-ui-1Q-aX"||e.3g.6l=="3Z"){K x=!1M(e.Nj)?e.Nj:e.13k;K y=!1M(e.Nl)?e.Nl:e.13m;if(x>=J.mz-Nn&&y<Nm){me.sX()}}});J.1Q.dB({w2:"qb-ui-1Q-6Q",Dt:".qb-ui-1Q-dB",eA:"9V",DF:1a(e,ui){K 1Q=$("#qb-ui-1Q 3Z")[0];if(ui.4V.4H("qb-ui-4f-2p-4V")){K 1F=ui.4V.1g("1F");K hP=ui.4V.1g("hP");K e4=45.gY(ui.4V[0],45.gY(1Q));$(J).1O(QB.1d.2f.2l.tY,{1B:hP,2p:1F,98:[e4.1W,e4.1C]})}1i{K Q3=$(J);K 1F=ui.4V.1g("1F");K e4=45.gY(ui.4V[0],45.gY(1Q));if(e4.1W<0){e4.1W=0}if(e4.1C<0){e4.1C=0}K vy={1F:1F,98:[e4.1W,e4.1C]};$(J).1O(QB.1d.2f.2l.u6,vy)}}});J.jG=$.Eh(J.5K,9a,J);J.iR=$.Eh(J.dG,5,J);J.Nv=$.hK(J.dG,o7,J);J.1Q.5K(1a(e,ui){me.iR()});J.jG();$(3n).5K(1a(){me.jG()});1b J},jG:1a(){},iR:1a(){},Nv:1a(){}};QB.1d.2f.2l={u6:"u6",Ai:"Ai",u7:"u7",u8:"u8",ND:"ND",tY:"tY",tO:"tO"};QB.1d.2f.7l={4M:[],o6:1a(1P){K 29=1U QB.1d.2f.cO(1P);QB.1d.2f.7l.1I(29);1b 29},tj:1a(29,1P){29.1P(1P)},jr:1a(){if(!QB.1d.2f.5y){1b 1c}$.2g(J.4M,1a(1T,29){29.jr()})},1I:1a(1w){J.4M.1I(1w)},14e:1a(29){1o(K i=0;i<J.4M.1e;i++){if(J.4M[i].29==29){1b J.4M[i]}}1b 1c},14d:1a(4M){if(4M==1c){1b 1j}if(4M.1e==0){1b 1j}J.tM();1o(K 1T=0;1T<4M.1e;1T++){K 7x=4M[1T];K 9E=1c;if(7x.53!=1c&&7x.56!=1c){9E=J.tf(7x.53.9z,7x.56.9z)}if(9E==1c){J.o6(7x)}1i{9E.o9=1j;J.tj(9E,7x)}}J.tG();QB.1d.2f.dG()},tf:1a(NC,NE){1o(K i=J.4M.1e-1;i>=0;i--){K 29=J.4M[i];if(29.53&&29.56){if(29.53.9z==NC&&29.56.9z==NE){1b J.4M[i]}}}1b 1c},14c:1a(8e){1o(K i=0;i<J.4M.1e;i++){if(J.4M[i].8e==8e){J.ko(i);1r}}},NG:1a(7K){1o(K i=J.4M.1e-1;i>=0;i--){K 29=J.4M[i];if(29.53!=1c&&29.56!=1c){if(29.53.de==7K||29.56.de==7K){J.ko(i)}}}},3z:1a(29){if(29===2r){1b}if(29==1c){1b}1o(K i=0;i<J.4M.1e;i++){if(J.4M[i]==29){J.ko(i);1r}}29=1c},148:1a(){1o(K i=J.4M.1e-1;i>=0;i--){J.ko(i)}},tG:1a(){1o(K i=J.4M.1e-1;i>=0;i--){if(J.4M[i].o9){J.ko(i)}}},ko:1a(1T){K 29=J.4M[1T];if(29.8e!=1c){J.mr(29.8e.cN);J.mr(29.8e.bg);J.mr(29.8e.2T);J.mr(29.8e.4n);4a 29.8e}4a 29;J.4M.5v(1T,1)},NF:1a(7K){K 1J=[];1o(K i=J.4M.1e-1;i>=0;i--){K 29=J.4M[i];if(29.53!=1c&&29.56!=1c){if(29.53.de==7K||29.56.de==7K){1J.1I(29)}}}1b 1J},14b:1a(4M){if(4M==1c){1b 1j}if(4M.1e==0){1b 1j}J.tM();1o(K 1T=0;1T<4M.1e;1T++){K 7x=4M[1T];K 9E=1c;if(7x.53!=1c&&7x.56!=1c){9E=J.tf(7x.53.9z,7x.56.9z)}if(9E==1c){J.o6(7x)}1i{9E.o9=1j;J.tj(9E,7x)}}J.tG()},tM:1a(){1o(K i=J.4M.1e-1;i>=0;i--){J.4M[i].o9=1m}},mr:1a(1w){if(1w){if(1w.3z){1w.3z();1w=1c}}}};QB.1d.2f.Fm=1a(1P){J.2p=1c;J.1B=1c;J.1P=1a(2a){if(2a===2r){K 1P=1U QB.1d.2c.NB;45.Nx(J,1P);1b 1P}1i{J.1B=1c;J.2p=1c;45.mv(2a,J);J.Fg()}};J.Fg=1a(){if(1M(J.1B)){J.1B=QB.1d.2f.Nw(J.de)}if(1M(J.2p)){J.2p=QB.1d.2f.Ny(J.1B,J.9z);if(J.2p==1c){J.2p=QB.1d.2f.NA(J.1B,J.tE)}if(J.2p==1c){J.2p={};J.2p.1f=QB.1d.2f.Nz(J.1B)}}};J.n3=1a(gy){if(gy[J.de]){J.1B=1c;J.de=gy[J.de]}if(gy[J.9z]){J.2p=1c;J.9z=gy[J.9z]}J.Fg()};if(1P!=1c){J.1P(1P)}};QB.1d.2f.cO=1a(1P){if(!QB.1d.2f.5y){1b 1c}K me=J;J.gD="";J.8l=1j;J.7d=1P.7d==1m;J.53=1U QB.1d.2f.Fm;J.56=1U QB.1d.2f.Fm;J.8e=1c;J.id=45.tk();J.MW=1a(6K){if(me.8e!=1c){1b}me.8e=QB.1d.2f.5y?QB.1d.2f.r.Ni(me,"#14j|2"):1c};J.jr=1a(){if(QB.1d.2f.5y){QB.1d.2f.r.C8(me)}};J.g4=1a(3R){K bT=1j;3E(3R){1p"6D-2D":me.53.4W=1R.7L.dh(me.53.4W);bT=1m;1r;1p"6D-to":me.56.4W=1R.7L.dh(me.56.4W);bT=1m;1r;1p"4a":me.8l=1m;bT=1m;1r;1p"fv":K 3B=$("#29-fv-3B");K si=me.53.2p.1F;K sf=me.56.2p.1F;K nZ=me.53.1B.4w;K o3=me.56.1B.4w;$("1Z[1x=2D-1F]",3B).2a(nZ.69);$("1Z[1x=to-1F]",3B).2a(o3.69);$("1Z[1x=2D-1F-2t]",3B)[0].3Q=me.53.4W==1R.7L.eh;$("1Z[1x=to-1F-2t]",3B)[0].3Q=me.56.4W==1R.7L.eh;$("1Z[1x=1F-3e-1Z]",3B).2a(1R.N2(me.gD,si,nZ,sf,o3));K 8F={};8F[" OK "]=1a(){me.53.4W=$("1Z[1x=2D-1F-2t]",3B).cd()?1R.7L.eh:1R.7L.dr;me.56.4W=$("1Z[1x=to-1F-2t]",3B).cd()?1R.7L.eh:1R.7L.dr;me.gD=$("1Z[1x=1F-3e-1Z]",3B).2a();K 1f=me.8e.1L[0];$("#qb-ui-1Q").1O(QB.1d.2f.cO.2l.o4,me);QB.1d.2f.dG();$(J).3B("5U")};8F[QB.1d.2c.4K.N1.ft]=1a(){$(J).3B("5U")};3B.3B({4m:1j,4x:BW,bV:Ek,1k:"N3",Er:1m,8F:8F});1r}if(bT){K 1f=me.8e.1L[0];$("#qb-ui-1Q").1O(QB.1d.2f.cO.2l.o4,me)}QB.1d.2f.dG()};J.N4=1a(){K 1P=1U QB.1d.2c.N5;1P.53=J.53.1P();1P.56=J.56.1P();1P.8l=J.8l;1P.7d=J.7d;1P.gD=J.gD;1b 1P};J.N0=1a(1P){J.53.1P(1P.53);J.56.1P(1P.56);J.8l=1P.8l;J.7d=1P.7d;J.gD=1P.gD};J.1P=1a(2a){if(2a===2r){1b J.N4()}1i{J.N0(2a)}};J.n3=1a(gy){J.53.n3(gy);J.56.n3(gy)};J.8m=1a(){J.1P(1P);J.MW();K Cy=$(J.8e.bg.1u);Cy.1g("me",J);Cy.pH()};J.8m()};QB.1d.2f.cO.2l={o4:"o4"};QB.1d.7E=1a(){J.13S=10;J.4f=1c;J.ne=1j;J.au=1U 3K;J.1H=1U 3K;J.da=J.1H;J.4G="";J.hI=6;J.cV=24;J.oU=3;J.r8=$("#qb-ui-4f-1H");J.Ca=$("#qb-ui-4f-1h-vU-80");J.mb=0;J.hY=1j;J.qO=0;J.ez=1;J.MY=1j;J.hF=1a(1T){1o(K 1q in QB.1d.2R.hF){if(QB.1d.2R.hF[1q]==1T){1b 1q}}1b"1B"};J.r5=1a(){K me=J;K nA=1U 3K;nA.1I("<ul>");J.r8.3O("");if(!1M(J.da)){K 6u=J.da.1e;K 2T=3m.5H((J.ez-1)*J.cV,6u);K 4n=3m.5H(J.ez*J.cV,6u);K nB="";1o(K i=2T;i<4n;i++){K 1h=J.da[i];K sq=i+1==4n?" 7u":"";if(1h!=1c){K CY=J.KX?\'<br><2w 2u="L8">\'+1h.uq+"</2w>":"";K MV=QB.1d.2c.4K.58.lx+" "+1h.mL;K 1x=1h.mL.3p(/ /g,"&2n;");K 2w=\'<2w 6q="0" 2u="qb-ui-1Q-dB 13U \'+J.hF(1h.hF).3P()+\'" 5Q-3v="\'+MV+\'">\'+1x+"</2w>";if(!J.ne){nB=\'<li 2u="qb-ui-1F qb-ui-1F-1B\'+sq+\'" id="qb-ui-4f-1h-\'+i+\'">\'+2w+CY+"</li>"}1i{K np="";K Do="";K 2p=1c;K Dm="";1o(K j=0;j<1h.5V.1e;j++){2p=1h.5V[j];Dm="<2w 2u=\'2p\'>"+2p.v3.3p(/ /g,"&2n;")+"</2w>";K MX=j+1==1h.5V.1e?" 7u":"";Do=\'<li 2u="qb-ui-1F-2p qb-ui-3s-dB qb-ui-1Q-dB MZ\'+MX+\'" id="qb-ui-4f-1h-2p-\'+j+\'">\'+Dm+"</li>";np+=Do}np=\'<ul 2u="qb-ui-4f qb-6O">\'+np+"</ul>";nB=\'<li 2u="qb-ui-1F qb-ui-1F-1B bm MZ\'+sq+\'" id="qb-ui-4f-1h-\'+i+\'">\'+"<2H 2u=\\"4z qb-ui-1F-4z qb-ui-1F-1B-4z bm-4z\\" 146=\\"$J = $(J); if ($J.4H(\'cC-4z\')) { $J.1N().8Q(\'cC\');$J.1N().8Q(\'bm\'); $J.8Q(\'cC-4z\'); $J.8Q(\'bm-4z\'); $(\'~ul\', $(J)).3G(); } 1i {$J.1N().8Q(\'cC\');$J.1N().8Q(\'bm\'); $J.8Q(\'cC-4z\'); $J.8Q(\'bm-4z\'); $(\'~ul\', $(J)).4T(); }\\"></2H>"+2w+CY+np+"</li>"}}1i{nB=\'<li 2u="qb-ui-1F qb-ui-1F-1B\'+sq+\'" id="qb-ui-4f-1h-\'+i+\'">\'+\'<2w 2u="1B">\'+QB.1d.2c.4K.58.ri+"</2w></li>"}nA.1I(nB)}}nA.1I("</ul>");J.r8.3O(nA.54(""));J.CU();J.L3();$("#qb-ui-4f-1h-6F").Bs()};J.Ne=1a(1g){K ki=$("#qb-ui-4f-au");ki.3O("");J.au=1U 3K;1o(K i=0;i<1g.jX.1e;i++){K 91=1g.jX[i];K fH=J.Ng(i+1,91);fH.1g("1y",91.4W);fH.1g("7K",91.3o);K lW=fH.cd();K D6=1U 3K;K cg=-1;1o(K j=0;j<91.n7.1e;j++){K 2Y=91.n7[j];if(cg==-1&&(!1M(lW)&&gg(2Y.nO,lW))){cg=j}if(cg==-1&&2Y.eU){cg=j}}if(cg==-1){cg=0}1o(K j=0;j<91.n7.1e;j++){K 2Y=91.n7[j];K 2K="";if(2Y.tQ==1m){2K=" 2K"}K 1V="";if(cg==j){1V=" 1V"}D6.1I(\'<2Y 1n="\'+2Y.nO+\'"\'+2K+1V+">"+2Y.ag+"</2Y>")}fH.3O(D6.54(""));fH.3u();J.au.1I(fH)}};J.lG=1a(1g){if(1g==1c||1g===2r){1b}K me=J;J.mb=1g.sF;J.MY=1g.N6==1m;J.hY=1j;K ma=1j;if(1g.jR!=""&&(1g.jR!=2r&&1g.jR!=1c)){ma=1m;J.hY=1m}if(1g.rf==0){J.ez=1;J.Ne(1g);J.1H=[];if(1g.2W.1e!=1g.sF){J.hY=1m}}K Nh=1g.2W.1e;K Nd=1g.rf;K Nf=1g.sF;1o(K k4=Nd,sC=0;k4<Nf;k4++,sC++){if(sC<Nh){J.1H[k4]=1g.2W[sC]}1i{if(J.1H[k4]==2r){J.1H[k4]=1c;J.hY=1m}}}J.Cd(ma);J.r5();J.Nb()};J.KW=1a(){if(J.1H.1e<J.mb){1b 1m}K 2T=3m.47(0,(J.ez-1)*J.cV);K 4n=3m.5H(J.mb,J.ez*J.cV);1o(K i=2T;i<4n;i++){if(J.1H[i]==1c){1b 1m}}1b 1j};J.Ng=1a(i,91){K ki=$("#qb-ui-4f-au");K id="qb-ui-4f-au-2t-"+i;K 1f=$("#"+id);if(1f.6u){1b 1f}K me=J;K 3O=$(\'<2H 2u="qb-ui-4f-au-6F 140-\'+i+" 2t-1y-"+91.4W+\'">                         <2H 2u="qb-ui-4f-au-3v"></2H>                         <2H 2u="qb-ui-4f-au-2t">                             <2t id="\'+id+\'"></2t>                         </2H>                     </2H>\');ki.2X(3O);1f=$("#"+id);1f.1g("1T",i);1f.1g("7K",91.3o);1f.4E("ea",me.Na,me);1f.4E("142",me.L1,me);1b 1f};J.r2=1a(BK){K Nc=$("#qb-ui-4f-au");K au=$("2t",Nc);K Bo=[];au.2g(1a(i,s){K 91=1U QB.1d.2c.N8;91.N7=s.1n;if(!1M(BK)){91.N9=s.id==BK.id}91.4W=$(s).1g("1y");91.3o=$(s).1g("7K");Bo.1I(91)});1b Bo};J.13V=1a(2t,1v){K me=J;K 1f=2t[0];1o(K i=0;i<1f.1v.1e;i++){K 2Y=1f.1v[i];K dK=1U QB.1d.2c.Bv;dK.nO=2Y.1n;dK.ag=2Y.28;dK.eU=2Y.1V;1v.1I(dK)}};J.14n=1a(2t,1v){K me=J;K 1f=2t[0];1o(K i=0;i<1f.1v.1e;i++){K 2Y=1f.1v[i];K dK=1U QB.1d.2c.Bv;dK.nO=2Y.1n;dK.ag=2Y.28;dK.eU=2Y.1V;1v.1I(dK)}};J.Lb=1a(){J.4G=$("#qb-ui-4f-1h-4G-1Z").2a()};J.Lg=1a(e){$("#qb-ui-4f-1h-4G-1Z").2a("");J.4G="";J.re(e)};J.Cd=1a(ma){K sz=1c;K su=!1M(J.4G);if(su){6X{sz=1U dQ(J.4G,"i")}6U(e){sz=1c;su=1j}}if(!su||ma){J.da=J.1H;J.qO=J.mb}1i{if(!1M(J.1H)){J.da=1U 3K;1o(K i=0;i<J.1H.1e;i++){K 1h=J.1H[i];if(1h==1c){J.C9();1b}if(!sz.9t(1h.mL)){bI}J.da.1I(1h)}J.qO=J.da.1e}}};J.Lc=1a(e){if(e.41==13){e.76();1b 1j}if(J.hY){J.L7(e)}1i{J.re(e)}};J.Le=1a(e){if(e.41==13){e.76();1b 1j}};J.re=1a(e){J.ez=1;J.4G=e.8j.1n;if(!J.hY){J.Cd();J.r5()}1i{J.C9()}};J.rb=1a(){J.r8.3O("");J.Ca.4T()};J.Nb=1a(){J.Ca.3G()};J.C9=1a(){J.rb();K 1g=QB.1d.2m.3X;1g.7E=1U QB.1d.2c.nN;1g.7E.jX=J.r2();1g.7E.cX="4b";1g.7E.jR=J.4G;QB.1d.2m.5D()};J.KY=1a(){J.rb();K 1g=QB.1d.2m.3X;1g.7E=1U QB.1d.2c.nN;1g.7E.jX=J.r2();1g.7E.cX="4b";1g.7E.jR=J.4G;1g.7E.rf=(J.ez-1)*J.cV;QB.1d.2m.5D()};J.Na=1a(e){K me=J;K 1T=$(e.8j).1g("1T");K 1g=QB.1d.2m.3X;1g.7E=1U QB.1d.2c.nN;1g.7E.jX=J.r2(e.3g);J.M8(1T);QB.1d.2m.5D()};J.M8=1a(1T){1o(K i=1T;i<J.au.1e;i++){K fH=J.au[i];fH.3O("<2Y>ri...</2Y>")}J.rb()};J.L1=1a(){};J.CU=1a(){K me=J;$(".qb-ui-1F>2w").7f({2Q:0.8,4y:"3x",L0:"uc",2T:1a(1K,ui){},4V:1a(e){K 1f=e.8j.3w;K qU=1f.id.7r("qb-ui-4f-1h-".1e);K 1h=me.da[qU];K 4V=$("<2H ></2H>");1h.7d=1m;4V.6y({1F:1h,4x:BW});4V.2o("qb-ui-1Q-dB");1b 4V[0]}});$(".qb-ui-1F-2p").7f({2Q:0.8,4y:"3x",L0:"uc",4V:1a(e){K 1f=e.8j;K qU=1f.id.7r("qb-ui-4f-1h-2p-".1e);K L2=$(1f).aN("li");K L4=L2.1l("id").7r("qb-ui-4f-1h-".1e);K qI=me.da[L4];if(qI==1c){1b}K 1h=qI.5V[qU];if(1h==1c){1b}K 4V=$(\'<2w 2u="qb-ui-4f-2p-4V qb-ui-3s-dB qb-ui-1Q-dB">\'+1h.7g.3p(/ /g,"&2n;")+"</2w>");4V.1g("1F",1h);4V.1g("hP",qI);1b 4V[0]}});$(".4z",J.4f).3y(1a(e){})};J.L3=1a(){K me=J;K 6u=3m.ih(J.qO/J.cV);K 1f=$("#qb-ui-4f-1h-13l-6F");if(6u<=1){1f.3O("");1b}if(me.KZ==6u){me.F4=$("#qu").4P()}1i{me.KZ=6u;me.F4=0}1f.qT({6u:6u,2T:J.ez,4L:me.hI,f3:1j,jz:"#13r",jw:"3j",jt:"#13d",jv:"3j",EE:1m,r0:"KV",oB:1a(xR){me.ez=6n(xR);me.KU();me.r5()}});$("#qu").4P(me.F4)};J.KU=1a(){if(!J.KW()){1b}J.KY()};J.NV=1a(){K me=J;K 1f=$(".qb-ui-4f");J.ne=1f.4H("ne");J.KX=1f.4H("13E");if(1f.1l("L5")!=""){J.cV=1f.1l("L5")}if(J.cV<=0||J.cV==""){J.cV=24}if(1f.1l("Ld")!=""){J.oU=1f.1l("Ld")}if(J.oU<=0||J.oU==""){J.oU=3}K DJ=1f.1l("hI");if(DJ!=""){6X{K hI=6n(DJ);if(hI>0){J.hI=hI}}6U(e){}}$("#qb-ui-4f-1h-4G-1Z").4E("u2",me.Lc,me);$("#qb-ui-4f-1h-4G-1Z").4E("8f",me.Le,me);$("#qb-ui-4f-1h-4G-9J").4E("3y",me.Lg,me);1a dv(1f){K Lf=1f.id.7r("qb-ui-4f-1h-".1e);K 1h=me.da[Lf];me.4f.1O(QB.1d.7E.2l.tm,1h)}$(2E).on("Dj","#qb-ui-4f-1H .qb-ui-1F 2w",1a(e){if($(e.8j).4H("2p")){1b 1j}dv(e.8j.3w)});$(2E).on("8f","#qb-ui-4f-1H .qb-ui-1F 2w",1a(e){if(e.41==13){dv(e.8j.3w)}});J.Lb();J.4f=1f;1b 1f};J.L7=$.hK(J.re,o7,J);1b J.4f};QB.1d.7E.2l={L6:"L6",tm:"tm"};QB.1d.EK=1a(2p,6b,qK,1v){K me=J;J.ja=1R.j6.hA;J.1F=2p;J.1B=qK;J.1N=6b;J.3Q=2p.eU;J.1f=$(\'<tr 6q="-1" />\').2o("qb-ui-1B-2p 9u").1g("J",J).1g("1F",2p).1g("1B",qK).1g("gx",2p.3o).1g("1N",6b).1g("uC",6b.3o);45.Cn(J.1f,QB.1d.2c.4K.58.hA+" "+2p.7g);if(2p.7g=="*"){J.1f.2o("qb-ui-1B-2p-iB")}J.vW=$(\'<1Z 1y="8r" 1n="1" 6q="-1" \'+(2p.eU?" 3Q":"")+"/>").3y(1a(){me.3Q=J.3Q;qK.uE([me])});J.1f.8f(1a(e){3E(e.41){1p 13:;1p 32:me.vW.1O("3y");e.4o()}});J.Eb=$(\'<2w 2u="qb-ui-1B-2p-3H">&2n;</2w>\');if(2p.qs){J.Eb.2o("qb-ui-1B-2p-3H-pk")}K oY=1v.E1;K oX=1v.DY;K DG=1v.DZ;K vG=1v.qH;K vE=1v.qv;J.La=$(\'<2w 2u="qb-ui-1B-2p-2t">\'+oY.bW+"</2w>").2o(QB.1d.2f.qP?"qb-6O":"").2X(J.vW);J.9q=$(\'<2w 2u="qb-ui-1B-2p-1x">\'+oX.bW+2n(2p.v3)+oX.dt+"</2w>").2o(QB.1d.2f.qQ?"qb-6O":"");J.L9=$(\'<2w 2u="qb-ui-1B-2p-1y">\'+(2p.7g!="*"&&2p.E9!="1c"?vG.bW+2p.E9+1v.qH.dt:"")+"</2w>").2o(QB.1d.2f.qR?"qb-6O":"");J.KT=$(\'<2w 2u="qb-ui-1B-2p-L8">\'+oY.bW+(vE.uk?2p.Ez:2n(2p.EY))+1v.qv.dt+"</2w>").2o(QB.1d.2f.vJ?"qb-6O":"");K 5J=[];5J.1I({3f:J.Eb,8N:-1,87:1m});5J.1I({3f:J.La,8N:oY.8N,87:oY.87});5J.1I({3f:J.9q,8N:oX.8N,87:oX.87});5J.1I({3f:J.L9,8N:vG.8N,87:vG.87});5J.1I({3f:J.KT,8N:vE.8N,87:vE.87});5J.us("8N");K 84;if(DG){84=me.1f}1i{84=$("<td 13z />");84.4y(me.1f)}1o(K i=0;i<5J.1e;i++){K 5N=5J[i];if(DG){84.2X($("<td td"+(i+1)+\'" />\').2X(5N.3f))}1i{84.2X(5N.3f)}}J.gR=1a(1n){J.3Q=1n;J.vW[0].3Q=J.3Q};J.6J=1a(){K 5n={x:0,y:0,1k:0,1s:0};K o=J.1f;K Dw=gY(QB.1d.2f.1Q[0]);K gU=gY(o,Dw);K 1N=o;do{if(1N.6l.8Z()=="KD"){1N=1N.3w;if(1N){1N=1N.3w}1r}1N=1N.3w}44(1N!=1c);K h5=gU;if(1N!=1c){h5=gY(1N,Dw)}if(gU.1C<h5.1C){5n.y=h5.1C}1i{if(gU.1C>h5.4v-gU.1s/2){5n.y=h5.4v-gU.1s/2}1i{5n.y=gU.1C}}5n.1s=gU.1s;5n.1k=h5.1k;5n.x=h5.1W;1b 5n}};QB.1d.EK.2l={KC:"KC"};K EV=20;QB.1d.aA=1a(){J.3f=$("#qb-ui-1Q-bU");J.1S=1c;K hO=J;K i0=J.3f;K k5=0;K ml=0;K jY=0;J.Ou=1a(a7){if(J.3f.1l("KE")&&J.3f.1l("KE").3P()=="1j"){1b}K $3t=$("#qb-ui-1Q-bU-7F");if(!$3t){1b}K $aC=[];1o(K i=0;i<a7.2W.1e;i++){K 1h=a7.2W[i];K 28=1h.ag;if(1M(28)){28="&2n;"}K $1f=$(\'<2H 2u="3f" id="qb-ui-1Q-bU-7F\'+(i+1)+\'">\'+28+"</2H>").2o(1h.im);$1f.bk();if(1h.eG){$1f.2o("ui-4u-9s");$1f.1l("6q",-1)}1i{$1f.1l("6q",0);$1f.8f(1a(e){if(e.41==32||e.41==13){$(e.3g).1O("3y")}})}$1f.1g("1h",1h);$1f.3y(1a(e){K $1f=$(e.8j);if($1f.1g("KG.h0")){1b}K 1h=$1f.1g("1h");if(1h&&1h.cX){QB.1d.5o.tN(1h.cX)}1i{$("#"+$1f[0].id).2G()}if(1h&&1h.eG){$1f.2o("ui-4u-9s");e.4o();1b 1j}});$1f.6Q(1a(e){K $1f=$(e.8j);K 1h=$1f.1g("1h");if(1h&&1h.eG){$1f.2o("ui-4u-9s");e.4o();1b 1j}});$1f.57(1a(e){K $1f=$(e.8j);K 1h=$1f.1g("1h");if(1h&&1h.eG){$1f.2o("ui-4u-9s");e.4o();1b 1j}});$1f.pH();J.Ky($1f,1h.fU);$aC.1I($1f)}$3t.du();$i0=$(\'<2H id="qb-ui-1Q-bU-7F-i0">\');$i0.4y($3t).2X($aC)};1a wI(8O,4D){if(8O<0){8O=0}1i{if(8O>jY){8O=jY}}KF(8O)}1a KF(8O){if(8O===2r){8O=14B.2N().1W}F7=8O;K 14A=F7===0,14w=F7==jY,jZ=8O/jY,KB=-jZ*(k5-ml);i0.2F("1W",KB)}1a wE(){1b-i0.2N().1W}1a 14u(qj,qi,9Y){1b 1a(){Kx(qj,qi,J,9Y);J.57();1b 1j}}1a Kx(qj,qi,bE,9Y){bE=$(bE).2o("Kw");K 31,pW,EG=1m,EB=1a(){if(qj!==0){hO.Cb(qj*30)}if(qi!==0){hO.BQ(qi*30)}pW=6A(EB,EG?tF:50);EG=1j};EB();31=9Y?"fo.hO":"6E.hO";9Y=9Y||$("3O");9Y.2O(31,1a(){bE.3S("Kw");pW&&jx(pW);pW=1c;9Y.8q(31)})}J.Ey=1a(71){if(71==1c||71.1e==0){1b 1c}K 1H={};K 5g;1o(K i=0;i<71.1e;i++){5g=71[i];K 1q=5g.dq;if(5g.49!=1c&&5g.49.7r(0,1)=="-"){1H[1q]=5g.49}1i{1H[1q]={1x:5g.49,3H:1q+(5g.Eu?" 3Q":""),1H:J.Ey(5g.2W),1g:5g}}}1b 1H};J.Ky=1a($1f,1S){K me=J;if(1M(1S)||1S.2W.1e==0){1b}K 1H=J.Ey(1S.2W);K 43="#"+$1f[0].id;$.2G("5R",43);$.2G({43:43,4x:cp,6H:{5c:0},1H:1H,1X:1a(3R,1v){K 5g=1v.1H[3R].1g;me.uA(3R,5g)}});$.2G.jP.14G=1a(1h,1D,2s){J.on("8f",1a(e){})}};J.uA=1a(1q,1h){K 3R=1c;if(1h!=1c&&2A 1h.cX!="2r"){3R=1h.cX}3R.3o=QB.1d.2m.dz;J.3f.1O(QB.1d.aA.2l.ts,3R)};J.ve=1a(s){if(s==1c){1b s}if(s.1e<=EV){1b s}1b s.7r(0,EV)+"&14F;"};J.KA=1a(1N){K 1H=[];$.2g(1N.2W,1a(1T,1h){if(!1h.87){1b}if(1h.eG){1b}1H.1I(1h)});1b 1H};J.Kz=1a(1N){K fg=1c;$.2g(1N.2W,1a(1T,1h){if(1h.eG){fg=1h}});1b fg};J.C0=1a($3h){$3h.1l("6q",0);$3h.8f(1a(e){if(e.41==32||e.41==13){$(e.3g).1O("3y")}})};J.Ch=1a(1h,2K){K me=J;K 3H="ui-3H-qb-"+1h.6r;K $3h=$(\'<2H 2u="9w">\'+J.ve(1h.69)+"</2H>").1g("D3",1h.3o).1g("fz",1h.fz).bk({2K:2K,b6:{pr:3H}}).3y(1a(e){me.vs(e);e.76();1b 1j});if(2K){$3h.2o("ui-4u-9s").2o("ui-4u-6Q")}1i{J.C0($3h)}1b $3h};J.KP=1a(1H){K me=J;K $ul=$("<ul/>");$.2g(1H,1a(1T,gq){K 3H="ui-3H-qb-"+gq.6r;K $li=$("<li></li>").4y($ul);K $3h=$(\'<a 5h="#\'+me.ve(gq.69)+\'"><2w 2u="ui-3H \'+3H+\'"></2w>\'+me.ve(gq.69)+"</a>").1g("D3",gq.3o).1g("fz",gq.fz).3y(1a(e){$ul.3G();me.vs(e);e.76();1b 1j});$li.2X($3h)});$ul.1S({2t:1a(e,ui){$ul.3G();me.vs(e);e.76();1b 1j}});1b $ul};J.Cf=1a(1h,1N){K me=J;K 7F=[];if(1h==1c){1b 7F}K 1H=J.KA(1h);K fg=J.Kz(1h);K KH=fg===1c;K $3h=J.Ch(1h,KH);7F.1I($3h);if(1H.1e>0){if(fg!=1c){K $C6=$("<2H>&2n;</2H>").bk({28:1j,b6:{pr:"ui-3H-km-1-s"}}).3y(1a(e){if(me.1S!=1c){me.1S.3G()}me.1S=$(J).3q().4T().2N({my:"1W 1C",at:"1W 4v",of:$(J).14I(".ui-3h")[0]});$(2E).BZ("3y",1a(){me.1S.3G()});e.76();1b 1j});J.C0($C6);7F.1I($C6);K $ul=J.KP(1H);7F.1I($ul)}1i{$3h.bk("2Y","b6.CV","ui-3H-km-1-e");$.2g(1H,1a(1T,gq){7F.1I(me.Ch(gq))})}}1i{if(fg!=1c){$3h.bk("2Y","b6.CV","ui-3H-km-1-e")}}if(fg!=1c){7F=7F.3L(J.Cf(fg,1h))}1b 7F};J.vs=1a(e){K $1f=$(e.8j);K 9N=$1f.1g("fz");if(!1M(9N)){J.3f.1O(QB.1d.aA.2l.tl,9N)}1b 1j};J.Ot=1a(dI){K me=J;K $3f=$("#qb-ui-1Q-bU-14E-3t");if(dI!=1c&&dI.2W!=1c){$3f.du();K $1H=me.Cf(dI);$3f.2X($1H);K KO=$("<2H id=\'qb-ui-1Q-9w-n9-3h\'>+</2H>").bk();$3f.2X(KO);$3f.14O({1H:"3h, 1Z[1y=3h], 1Z[1y=14M], 1Z[1y=mj], 1Z[1y=8r], 1Z[1y=8Y], :1g(ui-3h)"});$3f.2h("ul").1l("6q",-1);$3f.2h("a").1l("6q",0)}1b $3f};$.4q(J,{14t:1a(s){s=$.4q({},2Z,s);14C(s)},KQ:1a(9Y,KS,4D){KQ(9Y,KS,4D)},ek:1a(8O,k0,4D){wz(8O,4D);wu(k0,4D)},wz:1a(8O,4D){wz(8O,4D)},wu:1a(k0,4D){wu(k0,4D)},14Q:1a(KR,4D){wz(KR*(k5-ml),4D)},14U:1a(KN,4D){wu(KN*(w7-BI),4D)},C7:1a(mS,mG,4D){hO.Cb(mS,4D);hO.BQ(mG,4D)},Cb:1a(mS,4D){K 8O=wE()+3m[mS<0?"ei":"ih"](mS);K jZ=8O/(k5-ml);wI(jZ*jY,4D)},BQ:1a(mG,4D){K k0=Bx()+3m[mG<0?"ei":"ih"](mG),jZ=k0/(w7-BI);wk(jZ*KI,4D)},wI:1a(x,4D){wI(x,4D)},wk:1a(y,4D){wk(y,4D)},4D:1a(9Y,6h,1n,KJ){K 1z={};1z[6h]=1n;9Y.4D(1z,{"5c":2Z.151,"5Y":2Z.154,"ds":1j,"mN":KJ})},155:1a(){1b wE()},152:1a(){1b Bx()},Zn:1a(){1b k5},V2:1a(){1b w7},Ue:1a(){1b wE()/(k5-ml)},Ud:1a(){1b Bx()/(w7-BI)},Uc:1a(){1b Uf},Ui:1a(){1b Uh},Ug:1a(){1b i0},Ub:1a(4D){wk(KI,4D)},U6:$.w8,5R:1a(){5R()}});1b J};QB.1d.mM=1a(){J.4f=1c;J.ne=1j;J.D7=1a(nc){if(nc==1c||nc.1e<=0){1b 1c}K D9=0;K $1f=$("<ul />");1o(K i=0;i<nc.1e;i++){K 1u=nc[i];if(!1u.87){bI}D9++;K $li=$("<li />");$li.1g("D3",1u.3o);$li.1g("fz",1u.fz);$li.3O(\'<2w 2u="\'+1u.6r+(1u.eG?" 9s":"")+\'">\'+1u.69+"</2w>");$li.2X(J.D7(1u.2W));$1f.2X($li)}if(D9>0){1b $1f}1b 1c};J.AW=1a(dI){K me=J;K 3f=$("#qb-ui-4f-CX");if(dI!=1c&&dI.2W!=1c){3f.3O("");3f.2X(me.D7([dI]));K 1f=$("#qb-ui-4f-CX>ul");J.4f=1f.jV({});1f.2h("*").Bs();$("#qb-ui-4f-CX 2w").3y(1a(){K $1f=1c;K 9N=1c;if(J.ki!=1c){$1f=$(J.ki);9N=$1f.1g("fz")}if(!1M(9N)){me.4f.1O(QB.1d.mM.2l.te,9N)}1b 1j})}1b 3f};J.CU=1a(){K me=J;$(".4z",J.4f).3y(1a(e){})};$("#qb-ui-1Q-bU-n9-3h").bk({b6:{CV:"ui-3H-km-1-s"}});1b J.4f};QB.1d.mM.2l={te:"te"};QB.1d.aA.2l={tl:"tl",ts:"ts"};K iw=1c;QB.1d.79={4w:1c,1v:{U5:"<2U 2u=\'qb-ui-1B-e3-28-nD-1x\'>{nD}</2U>.<2U 2u=\'qb-ui-1B-e3-28-1B-1x\'>{1x}</2U>",tA:1m,eW:1j,KM:"",7f:1m,3G:1c,1s:"5C",1k:"5C",5Z:5,8M:cI,8k:1j,bV:1j,5y:1m,2N:{my:"1W 1C",at:"1W+15 1C+15",of:"#qb-ui-1Q",j1:"3j",U4:1a(3r){K D1=$(J).2F(3r).2d().1C;if(D1<0){$(J).2F("1C",3r.1C-D1)}}},4m:1m,4T:1c,U7:1m,6m:"",4x:9a,fA:144,dp:"5C"},Ua:{Lq:"2T.7f",5t:"5t.7f",Lr:"5S.7f",8k:"8k.4m",5Z:"5Z.4m",bV:"bV.4m",8M:"8M.4m",Lk:"2T.4m",5K:"5t.4m",CP:"5S.4m"},84:1c,cM:1c,KK:"qb-ui-1B "+"ui-8o "+"ui-8o-c3 "+"ui-bd-6D ",cn:1j,g4:1a(3R){K me=J;if(me.4w!=1c&&me.4w.7d){1b 1j}3E(3R){1p"gR":me.Dk(1m);1r;1p"U9":me.Dk(1j);1r;1p"4a":me.5U();1r;1p"Ut":me.Lp();1r;1p"fv":K 3B=me.mn(me);if(3B!=1c){3B.3B("72")}1r}},ec:1a(){K me=J;K 5O=".e3-3h.3h-29";$.2G("5R",5O);K 1H={};K d6=1c;1o(K i=0;i<me.4w.nY.1e;i++){K fI=me.4w.nY[i];if(d6==1c){d6=fI.nz}if(d6!=fI.nz){1H["5B-"+i]="---------";d6=fI.nz}1H[fI.69]={1x:fI.69,3H:"Us-1F-d6-"+fI.nz,1g:fI,c4:fI.tQ?"vf":""}}$.2G({43:5O,4x:cp,6H:{5c:0},1X:1a(3R,1v){K vj=1v.$1V.1g().2G.1H[3R];me.1f.1O(QB.1d.79.2l.mk,vj.1g)},1H:1H});1b 5O},LO:1a(3h){K me=J;K 5O=".e3-3h.3h-29";if(me.4w==1c){1b}3h.7v(1a(){me.ec();$(5O).2G();K $1S=$(5O).2G("1f");if($1S){$1S.2N({my:"1W 1C",at:"1W 4v",of:J})}})},9u:".9u:5y",KL:".9u:5y:4c",Lh:".9u:5y:7u",pq:1a(7X){K me=J;J.4w=me.1v.1F;J.gk=1j;if(!J.5w){J.5w=[]}K 6b=J.4w;if(J.4w!=1c&&!1M(J.4w.6k)){J.6k=J.4w.6k}1i{J.6k=zI()}6b.6k=J.6k;$(me.1f).1g("4w",6b);$(me.1f).1g("me",J);me.1f.2o(J.KK+me.1v.KM).2F({2N:"8H",4x:me.1v.4x});me.1f.1l("6q",0);if(!7X){me.1f.3a(1a(e){me.cn=1j})}1a eV(3a){K 1J=1c;if(3a.4H("qb-ui-1B")){1J=3a}1i{1J=3a.3q()}44(1m){if(1J.1e==0){1r}if(1J.is(me.9u)){1b 1J}K 9c=1J.2h(me.KL);if(9c.1e){1b 9c}1J=1J.3q()}K 1N=3a.1N();if(1N.4H("qb-ui-1B")){1b $()}1b eV(1N)}1a f7(3a){K 1J=1c;if(3a.4H("qb-ui-1B")){1J=3a}1i{1J=3a.3I()}44(1m){if(1J.1e==0){1r}if(1J.is(me.9u)){1b 1J}K 9c=1J.2h(me.Lh);if(9c.1e){1b 9c}1J=1J.3I()}K 1N=3a.1N();if(1N.4H("qb-ui-1B")){1b $()}1b f7(1N)}if(!7X){me.1f.8f(1a(e){3E(e.41){1p 13:if(me.cn){1b}me.cn=1m;eV(me.1f).3a();e.4o();1r;1p 9:if(!me.cn){1b}K 3a=me.1f.2h(":3a");if(!3a.1e){3a=me.1f}K 1f=1c;if(e.ov){1f=f7(3a)}1i{1f=eV(3a)}if(1f.1e){1f.3a();e.4o();1b 1j}1i{me.cn=1j}}})}J.5u=me.1f;if(me.1v.98){me.1v.2N.at="1W+"+me.1v.98[0]+" 1C+"+me.1v.98[1];me.2N.2d=me.1v.2N.2d;me.oE(me.1v.98);me.1v.98=1c}if(J.mO==1c){J.mO=$(\'<2w 2u="qb-ui-1B-e3-28"></2w>\')}K 6m=J.M7();45.Cn(me.1f,QB.1d.2c.4K.58.lx+" "+6m);J.mO.3O(6m);if(J.dX==1c){J.tn=[];if(!1M(J.4w)&&!1M(J.4w.CH)){J.tn=J.pT("9w","ui-3H-9w-u4").1l("5Q-3v","").1l("5Q-3v","Uq to 9w");J.tn.3y(1a(1K){me.1f.1O(QB.1d.79.2l.nP,me.4w.CH);1b 1j})}J.o5=J.pT("29","ui-3H-29-u4").1l("5Q-3v","").1l("5Q-3v","Ul Uk");J.BC=J.pT("fv","ui-3H-fv-u4").1l("5Q-3v",QB.1d.2c.4K.58.jH);J.Dl=J.pT("5U","ui-3H-5U-u4").1l("5Q-3v","").1l("5Q-3v","CT");J.dX=$(\'<2H 2u="qb-ui-1B-e3 ui-8o-7t ui-bd-6D ui-4V-Uj 6M-1B"></2H>\').2X(J.mO).2X(J.tn).2X(J.o5).2X(J.BC).2X(J.Dl).2O("Dj",1a(){me.LR()});J.dX.4y(me.1f).2o("qb-ui-1B-2p-6m");J.dX.1g("dS",1j);J.Dl.3y(1a(1K){me.5U(1K);1b 1j});J.BC.3y(1a(1K){if(me.4w!=1c&&me.4w.7d){1b 1j}K 3B=me.mn(me);if(3B!=1c){3B.3B("72")}1b 1j});J.LO(J.o5)}if(J.4w!=1c&&J.4w.7d){J.dX.2h(".3h-fv").3G();J.dX.2h(".3h-29").3G()}1i{J.dX.2h(".3h-fv").4T();J.dX.2h(".3h-29").4T()}if(!QB.1d.5o.tI&&(6b!=1c&&(6b.nY!=1c&&6b.nY.1e>0))){J.o5.4T()}1i{J.o5.3G()}K jB=1m;if(7X){if(6b&&6b.5V){if(J.5w.1e==6b.5V.1e+1){6X{if(J.5w.1e>1&&6b.5V.1e>1){K gC=J.5w[1].1F;K gB=6b.5V[1];if(gC.3o==gB.3o){jB=1j}1i{jB=1m}}}6U(e){jB=1m}}1i{jB=1m}}}if(jB){if(me.cM!=1c){me.cM.3z()}me.cM=$(\'<2H 2u="qb-ui-1B-2p-3t ui-3B-c3 ui-8o-c3"></2H>\').8J(1a(){QB.1d.2f.iR()}).1l("6q",-1);me.84=me.cM;me.uT=$(\'<1B vz="0" vA="0"></1B>\').4y(me.cM);if(6b&&6b.5V){J.M4(6b,me.uT)}me.cM.4y(me.1f);me.cM.pH()}if(J.4w.7d){me.cM.2o("tH")}1i{me.cM.3S("tH")}me.dk=me.1f.1s()-me.84.1s();me.1v.5Z=3m.47(me.1v.5Z,me.dk);me.2Y.8k=1j;$(".qb-ui-1B-2p:LN",me.uT).2o("LN");me.1v.7f&&($.fn.7f&&J.CN());me.1v.4m&&($.fn.4m&&J.Cs());J.pS=1j;me.1v.eW&&($.fn.eW&&me.84.eW());me.1v.eW&&($.fn.eW&&me.1f.eW());me.LJ();me.2Y.8k=1j;me.1v.tA&&J.72();J.ja=1R.j6.d1;me.1f.1g("LP",me);me.1f.1g("1F",6b);me.1f.1g("gx",6b.3o);me.1f.2h("*").Bs();me.1f.7v(1a(1K){me.Cz(1j,1K)});J.LR=1a(){if(me.1f.1g("dS")){me.1f.1g("dS",1j);me.dS=1j;me.2Y("1s",J.LQ)}1i{me.1f.1g("dS",1m);me.dS=1m;J.LQ=J.2Y("1s");me.2Y("1s",16)}QB.1d.2f.dG();1b 1j};K 5w=$(".qb-ui-1B-2p",me.1f).4G(":5P(.qb-ui-1B-2p-iB)");if(!QB.1d.2f.tg&&!QB.1d.2f.nG){5w.7f({8J:1j,4V:1a(1K){K 3g=1K.3g;K tr=1c;if(3g.6l.8Z()=="TR"){tr=$(3g).65()}1i{K 1N=3g;do{if(1N.6l.8Z()=="TR"){1r}1N=1N.3w}44(1N!=1c);if(1N){tr=$(1N).65()}}K 4V=$(\'<1B 2u="qb-ui-1B ui-8o ui-8o-c3 qb-ui-7f-4V-2p" vA="0" vz="0"></1B>\').2X(tr);iw=4V;1b 4V},4y:"#qb-ui-1Q",2Q:0.8,2T:1a(1K,ui){me.1f.1g("DV",1m);K 4V=$(ui.4V);K nU=$(J);ui.4V.1k($(J).1k());QB.1d.2f.7l.3z(lw);lw=1U QB.1d.2f.cO({53:{2p:{1f:nU},1B:me},56:{2p:{1f:4V}}});QB.1d.2f.7l.1I(lw);J.gk=1j},5S:1a(1K,ui){QB.1d.2f.7l.3z(lw);QB.1d.2f.dG();me.1f.1g("DV",1j);iw=1c},5t:1a(1K,ui){QB.1d.2f.iR()}}).dB({Dt:".qb-ui-1B-2p",w2:"qb-ui-1B-2p-vf",eA:"C4",TI:1m,DF:1a(1K,ui){if(me.4w.7d){1b 1j}if(!OI(1K.3g,$("#qb-ui-1Q").4b(0))){1b 1j}K gC=$(ui.7f);K gB=$(J);K C3="";if(gC.1g("1F")&&gC.1g("1F").7g){C3=gC.1g("1F").7g}K F2="";if(gB.1g("1F")&&gB.1g("1F").7g){F2=gB.1g("1F").7g}K 29=QB.1d.2f.7l.o6({7d:1m,53:{de:gC.1g("uC"),9z:gC.1g("gx"),tE:C3},56:{de:gB.1g("uC"),9z:gB.1g("gx"),tE:F2}});QB.1d.2f.dG();K 1P=29.1P();me.1f.1O(QB.1d.79.2l.mm,1P);me.1f.1g("DV",1j);me.gk=1j},e6:1a(1K,ui){if(me.4w.7d){$(ui.4V).2o("tH")}1i{$(ui.4V).3S("tH")}}})}},mn:1a(2M){K cR="#1B-fv-3B";if(1M(QB.1d.5o.fC[cR])){K $jf=$(cR);if($jf.1e){K 8F={};8F[" OK "]=1a(){K 4w=$(J).1g("4w");4w.8W=$("1Z[1x=1F-aH]",$(J)).cd();4w.4I=$("1Z[1x=1F-1x]",$(J)).cd();$(J).3B("5U");QB.1d.2m.LM(4w);QB.1d.2m.5D()};8F[QB.1d.2c.4K.LH.ft]=1a(){$(J).3B("5U")};QB.1d.5o.fC[cR]=$jf.3B({4m:1j,4x:Dr,bV:Ek,tA:1j,1k:mf,Er:1m,72:1a(e,ui){K 4w=$(J).1g("4w");$("1Z[1x=1F-1x]",$(J)).2a(4w.4I);$("1Z[1x=1F-1x]").1l("AP",4w.LG);$("1Z[1x=1F-aH]",$(J)).2a(4w.8W)},8F:8F})}}if(!1M(QB.1d.5o.fC[cR])){QB.1d.5o.fC[cR].1g("4w",2M.4w)}1b QB.1d.5o.fC[cR]},LJ:1a(){if(J.1f.1s()>J.1v.fA){J.2Y("1s",J.1v.fA)}if(J.1f.1k()>J.1v.dp){J.2Y("1k",J.1v.dp)}K LZ=40;K c3=J.uT;K E2=J.1f;K 6m=J.dX;K LL=J.mO;K DE=c3.6B();K M1=E2.6B();K LS=6m.6B();K mD=c3.1k();K LK=E2.8h();K DC=6m.8h();K TL=LL.1k();if(DE==0&&mD==0){1b}K dH=mD>LK-DC;if(dH){mD+=16}K 1k=3m.47(DC,mD);if(!1M(J.1v.dp)&&J.1v.dp!="5C"){1k=J.1v.dp}K M3=DE+LS;K 1s=3m.5H(M1,J.1v.fA);if(1k>LZ){J.2Y("1k",6n(1k))}if(1s>0){J.2Y("1s",1s);J.2Y("8k",M3)}},M7:1a(){if(!1M(J.4w.69)){1b J.4w.69.3p(/ /g,"&2n;")}1i{1b""}},M4:1a(6b,cM){K me=J;K 1v=6b.DO;if(1M(1v)){1v={}}K 5w=[];if(!1v.DN){K iB=1U QB.1d.2c.LY;iB.7g="*";iB.v3="*";iB.eU=6b.LU;5w.1I(iB)}K qs=1v.F9?"LT":"";3E(1v.fQ){1p QB.1d.2R.F5.49:6b.5V.us(qs,"7g");1r;1p QB.1d.2R.F5.uq:6b.5V.us(qs,1v.qv.uk?"Ez":"EY");1r}me.5w=[];5w=5w.3L(6b.5V);$.2g(5w,1a(1q,2p){K f=1U QB.1d.EK(2p,6b,me,1v);me.5w.1I(f);cM.2X(f.1f)})},pT:1a(bC,uu){1b $(\'<a 5h="#"></a>\').2o("ui-bd-6D e3-3h 3h-"+bC+" 9u").6Q(1a(){$(J).2o("ui-4u-6Q")},1a(){$(J).3S("ui-4u-6Q")}).7v(1a(ev){ev.76()}).2X($("<2w/>").2o("ui-3H "+uu)).1l("6q",-1)},U2:1a(){if(!J.Cg){J.Cg=$("#qb-ui-3s")}1b J.Cg},6J:1a(){1b{x:J.2d().1W,y:J.2d().1C,1k:J.1k(),1s:J.1s()}},7X:1a(1g){if(!1M(iw)){iw.1O("6E")}K me=J;K 1w=1g.1F;me.1f.1g("gx",1w.3o);$(".qb-ui-1B-2p",me.1f).2g(1a(){K 2p=$(J);2p.1g("uC",1w.3o);K 7K=1c;$.2g(1w.5V,1a(1q,Cl){if(gg(Cl.7g,2p.1g("1F").7g)){7K=Cl.3o;1b 1j}});2p.1g("gx",7K)});J.1f.1O(QB.1d.79.2l.Dg)},LV:1a(1v){if(!1M(iw)){iw.1O("6E")}J.1v=$.4q(J.1v,1v);K LW=J.1f.1k();K LF=J.84.1s();K LX=J.5w.1e;K Ck=0;if(1v!=1c&&(1v.1F!=1c&&1v.1F.5V!=1c)){Ck=1v.1F.5V.1e+1}K Bk=Ck!=LX;if(Bk){J.1v.1s="5C";J.1v.1k="5C"}K 8J=J.84.4t();J.pq(1m);if(!Bk){J.1f.1k(LW);J.84.1s(LF)}J.84.4t(8J)},5R:1a(){K me=J;J.1f.1O(QB.1d.79.2l.vR);me.1f.3O("").3G().8q(".6y").q3("6y").4y("3x").68().3z()},5U:1a(1K,k8){K me=J;if(!k8){me.1f.1O(QB.1d.79.2l.vg)}if(1j===me.89("Ll",1K)){1b}me.1f.8q("iW.qb-ui-1B");me.1f.3G()&&me.89("5U",1K);me.pS=1j;me.5R()},Lp:1a(1K,k8){K me=J;if(!k8){me.1f.1O(QB.1d.79.2l.vm)}J.5U(1K,1m)},kb:1a(){1b J.pS},Cz:1a(fK,1K){K me=J;if(J.1v.4x>$.ui.6y.og){$.ui.6y.og=J.1v.4x}K Lo={4t:me.1f.1l("4t"),4P:me.1f.1l("4P")};me.1f.2F("z-1T",++$.ui.6y.og).1l(Lo);J.89("3a",1K)},uE:1a(5w){J.1f.1O(QB.1d.79.2l.mg,{5w:5w})},Dk:1a(3Q){K me=J;K 5w=J.5w;K fD=[];$.2g(5w,1a(){K 2p=J;if(2p.1F.7g!="*"&&J.3Q!=3Q){J.gR(3Q);fD.1I(J)}});me.uE(fD)},lI:1a(9q,3Q,u1){K me=J;K 5w=J.5w;K CB=[];$.2g(5w,1a(1T,2p){if(2p.1F.7g==9q){$(".qb-ui-1B-2p-2t 1Z",2p.1f).2g(1a(){if(J.3Q!=3Q){J.3Q=3Q;2p.3Q=3Q;CB.1I(2p)}})}});if(u1){me.uE(CB)}},72:1a(){if(J.pS){1b}K 1v=J.1v;J.Co();J.oE(1v.2N);J.Cz(1m);J.89("72");J.pS=1m},CN:1a(){K me=J;K 3c=$(2E),CG;1a fM(ui){1b{2N:ui.2N,2d:ui.2d}}me.5u.7f({Vf:1j,ze:1j,qm:".ui-3B-c3, .ui-3B-e3-5U",4X:".qb-ui-1B-e3",8T:"1N",8J:1m,2T:1a(1K,ui){K c=$(J);CG=me.1v.1s==="5C"?"5C":c.1s();c.1s(c.1s()).2o("ui-3B-Ls");if($.ui.eL.5I!=1c&&($.ui.eL.5I.8T!=1c&&$.ui.eL.5I.8T.1e>3)){$.ui.eL.5I.8T[2]=u0;$.ui.eL.5I.8T[3]=u0}me.Cq();me.89("Lq",1K,fM(ui))},5t:1a(1K,ui){QB.1d.2f.iR();me.89("5t",1K,fM(ui))},5S:1a(1K,ui){QB.1d.2f.5K();QB.1d.2f.dG();me.1v.2N.at="1W+"+(ui.2N.1W-3c.4P())+" 1C+"+(ui.2N.1C-3c.4t());$(J).3S("ui-3B-Ls").1s(CG);me.1f.1O(QB.1d.79.2l.Dh,me);QB.1d.2m.5D();me.vr();me.89("Lr",1K,fM(ui))}})},Vj:1a(){K ce,co,e6,o=J.1v;if(o.8T==="1N"){o.8T=J.4V[0].3w}if(o.8T==="2E"||o.8T==="3n"){J.8T=[0-J.2d.pV.1W-J.2d.1N.1W,0-J.2d.pV.1C-J.2d.1N.1C,$(o.8T==="2E"?2E:3n).1k()-J.Ln.1k-J.tv.1W,($(o.8T==="2E"?2E:3n).1s()||2E.3x.3w.j3)-J.Ln.1s-J.tv.1C]}if(!/^(2E|3n|1N)$/.9t(o.8T)){ce=$(o.8T)[0];co=$(o.8T).2d();e6=$(ce).2F("d5")!=="6O";J.8T=[co.1W+(61($(ce).2F("CI"),10)||0)+(61($(ce).2F("Vh"),10)||0)-J.tv.1W,co.1C+(61($(ce).2F("CE"),10)||0)+(61($(ce).2F("Vc"),10)||0)-J.tv.1C,u0,u0]}},Cs:1a(eZ){eZ=eZ===2r?J.1v.4m:eZ;K me=J,1v=me.1v,2N=me.5u.2F("2N"),Li=2A eZ==="4i"?eZ:"se";1a fM(ui){1b{Lj:ui.Lj,i3:ui.i3,2N:ui.2N,3V:ui.3V}}me.5u.4m({qm:".ui-3B-c3",8T:"2E",V6:me.84,8k:6n(1v.8k),8M:1v.8M,5Z:me.jM(),eZ:Li,2T:1a(1K,ui){$(J).2o("ui-3B-CQ");me.Cq();me.89("Lk",1K,fM(ui))},5K:1a(1K,ui){me.89("5K",1K,fM(ui));QB.1d.2f.jG();QB.1d.2f.iR()},5S:1a(1K,ui){K 2d=me.5u.2d(),1W=2d.1W-me.2E.4P(),1C=2d.1C-me.2E.4t();1v.1s=me.5u.1s();1v.1k=me.5u.1k();1v.2N={my:"1W 1C",at:"1W"+(1W>=0?"+":"")+1W+" "+"1C"+(1C>=0?"+":"")+1C,of:me.3n};$(J).3S("ui-3B-CQ");me.vr();me.89("CP",1K,fM(ui));QB.1d.2m.5D()},Vb:1a(1K,ui){K 2d=me.5u.2d(),1W=2d.1W-me.2E.4P(),1C=2d.1C-me.2E.4t();1v.1s=me.5u.1s();1v.1k=me.5u.1k();1v.2N={my:"1W 1C",at:"1W"+(1W>=0?"+":"")+1W+" "+"1C"+(1C>=0?"+":"")+1C,of:me.3n};$(J).3S("ui-3B-CQ");me.vr();me.89("CP",1K,fM(ui))}}).2F("2N",2N).2h(".ui-4m-se").2o("ui-3H ui-3H-Va-V9-se")},jM:1a(){K 1v=J.1v;K 1s=J.dk;if(1v.1s==="5C"){if(!c5(1v.5Z)){1s=3m.47(1s,1v.5Z)}}1i{K h=0;if(!c5(1v.5Z)){h=1v.5Z}if(!c5(1v.1s)){1s=3m.5H(h,1v.1s)}1s=3m.47(1s,h)}1b 1s},2N:1a(3r){J.oE(3r)},oE:1a(3r){if(!J.1v.5y){1b}if(!$("#qb-ui-1Q").is(":5y")){1b}K eX=[],2d=[0,0];if(3r){if(2A 3r==="4i"||2A 3r==="1F"&&"0"in 3r){eX=3r.3C?3r.3C(" "):[3r[0],3r[1]];if(eX.1e===1){eX[1]=eX[0]}$.2g(["1W","1C"],1a(i,Lm){if(+eX[i]===eX[i]){2d[i]=eX[i];eX[i]=Lm}});3r={my:"1W 1C",of:"#qb-ui-1Q 3Z",at:"1W+"+2d[0]+" 1C+"+2d[1],j1:"3j"}}3r=$.4q({},J.1v.2N,3r)}1i{3r=J.1v.2N}K 1W=0;K 1C=0;6X{1W=3r.at.3k(/1W([+-]*\\d+)/)[1]*1+$("#qb-ui-1Q 3Z").2d().1W;1C=3r.at.3k(/1C([+-]*\\d+)/)[1]*1+$("#qb-ui-1Q 3Z").2d().1C}6U(e){}J.1v.2N=3r;if(J.1v.5y&&(J.1v.2N.of==1c||$(J.1v.2N.of).1e>0)){J.5u.4T();3r.of="#qb-ui-1Q 3Z";3r.j1="3j";J.1f.2d({1C:1C,1W:1W})}},oT:1a(1q,1n){K me=J,5u=me.5u,g6=5u.is(":1g(ui-4m)"),5K=1j;3E(1q){1p"Ll":1q="Vs";1r;1p"8F":me.Vy(1n);5K=1m;1r;1p"Vx":me.Vw.28(""+1n);1r;1p"Lt":5u.3S(me.1v.Lt).2o(Vm+1n);1r;1p"2K":if(1n){5u.2o("ui-3B-2K")}1i{5u.3S("ui-3B-2K")}1r;1p"7f":if(1n){me.CN()}1i{5u.7f("5R")}1r;1p"1s":5K=1m;1r;1p"8k":if(g6){5u.4m("2Y","8k",1n)}5K=1m;1r;1p"bV":if(g6){5u.4m("2Y","bV",1n)}5K=1m;1r;1p"5Z":if(g6){5u.4m("2Y","5Z",1n)}5K=1m;1r;1p"8M":if(g6){5u.4m("2Y","8M",1n)}5K=1m;1r;1p"2N":me.oE(1n);1r;1p"4m":if(g6&&!1n){5u.4m("5R")}if(g6&&2A 1n==="4i"){5u.4m("2Y","eZ",1n)}if(!g6&&1n!==1j){me.Cs(1n)}1r;1p"6m":$(".ui-3B-6m",me.Vl).3O(""+(1n||"&#Vk;"));1r;1p"1k":5K=1m;1r}$.Ei.2V.oT.3i(me,2v);if(5K){me.Co()}},Vp:1a(){K 1v=J.1v;J.84.2F({1k:"5C",5Z:0,1s:0});if(1v.8M>1v.1k){1v.1k=1v.8M}K eI=J.5u.2F({1s:"5C",1k:"5C"}).1s();K 5Z=J.jM();J.84.2F(1v.1s==="5C"?{5Z:5Z,1s:$.dZ.5Z?"5C":5Z}:{5Z:0,1s:"5C"}).4T();if(J.5u.is(":1g(ui-4m)")){J.5u.4m("2Y","5Z",J.jM())}},Vo:1a(){K eI;K dk;K Ct;K o=J.1v;J.1f.4T().2F({1k:"5C",5Z:0,8k:"3j",1s:0});if(o.8M>o.1k){o.1k=o.8M}eI=J.5u.2F({1s:"5C",1k:o.1k}).6B();dk=3m.47(0,o.5Z-eI);Ct=2A o.8k==="aI"?3m.47(0,o.8k-eI):"3j";if(o.1s==="5C"){J.1f.2F({5Z:dk,8k:Ct,1s:"5C"})}1i{J.1f.1s(3m.47(0,o.1s-eI))}if(J.5u.is(":1g(ui-4m)")){J.5u.4m("2Y","5Z",J.jM())}},Co:1a(){K o=J.1v;J.84.4T().2F({1k:"5C",5Z:0,8k:"3j",1s:0,8M:o.8M});J.1f.4T().2F({8M:o.8M});K eI=J.5u.2F({1s:"5C",1k:o.1k}).1s();K dk=0;if(c5(o.5Z)){dk=eI}1i{dk=3m.47(o.5Z,eI)}dk+=10;if(o.1s==="5C"){J.84.2F({5Z:dk,1s:"5C"})}1i{J.84.1s(3m.47(0,o.1s-eI))}if(J.5u.is(":1g(ui-4m)")){J.5u.4m("2Y","5Z",J.jM())}},Cq:1a(){J.vt=J.2E.2h("d3").bp(1a(){K d3=$(J);1b $("<2H>").2F({2N:"8H",1k:d3.8h(),1s:d3.6B()}).4y(d3.1N()).2d(d3.2d())[0]})},vr:1a(){if(J.vt){J.vt.3z();4a J.vt}},V4:1a(1K){if($(1K.3g).hG(".ui-3B").1e){1b 1m}1b!!$(1K.3g).hG(".ui-uP").1e}};(1a($){$.8o("ui.6y",QB.1d.79);$.4q($.ui.6y,{6d:"1.8.2",Pu:"2N",UH:0,og:0,6J:1a(){K 1Q=$("#qb-ui-1Q");1b{x:J.2d().1W-1Q.2d().1W,y:J.2d().1C-1Q.2d().1C,1k:J.8h(),1s:J.6B()}}})})(2C);QB.1d.79.2l={mg:"mg",LB:"LB",vg:"vg",vm:"vm",vR:"vR",Dh:"Dh",Dg:"Dg",mm:"mm",LA:"LA",mk:"mk",nP:"nP"};QB.1d.LC={};QB.1d.LC.2l={oB:"oB"};QB.1d.lL=1a(1q,1N){J.3f=1c;J.eD=1c;J.8w=1c;J.63=1c;J.6C=1q;J.7D=1N;J.bS=1c;J.UB=1a(4e){J.gQ=1m;if(J.63){J.63.cd(4e)}J.cS()};J.1n=1a(4e){if(4e===2r){1b J.bS}J.bS=4e};J.cl=1a(){K cl=J.bS;if(!1M(J.bS)){3E(J.6C){1p 1R.2j.d9:cl=J.bS;1r;1p 1R.2j.9v:cl=1R.82.p9.eb(J.bS);if(cl=="EO"){cl=""}1r;1p 1R.2j.73:K 1n=J.7D.7j(1R.2j.9v);if(1M(1n)||1n==0){cl=""}1r;1p 1R.2j.d0:cl=1R.82.tL.eb(J.bS);1r}}if(1M(cl)){cl=" "}1b cl};J.3z=1a(){};J.BJ=1a(){K f6=1j;K bq=1j;if(J.6C==1R.2j.3e){f6=J.7D.bw&&J.7D.bw.1e>0;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vc)!=0}1i{if(J.6C>=1R.2j.6L){f6=J.7D.bA&&J.7D.bA.1e>0;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vu)!=0}}if(f6||bq){J.8w.2o("LE")}1i{J.8w.3S("LE")}};J.7X=1a(){if(J.eD!=1c){J.eD[0].ot=LD(J.cl())}if(J.63!=1c){J.63.cd(J.bS);J.BJ()}};J.PO=1a(){if(J.eD!=1c){J.eD.3G()}if(J.8w!=1c){J.8w.4T()}if(J.63!=1c){J.63.3a()}};J.EM=1a(){if(J.eD==1c){1b}QB.1d.2J.ws=1m;J.eD.4T();if(J.8w!=1c){J.8w.3G()}QB.1d.2J.ws=1j};J.Lx=1a(){K 6V=1c;K me=J;3E(J.6C){1p 1R.2j.kA:6V=$("<2H></2H>");6V.hw=1m;6V.2O("3y",1a(e){$(me).1O(QB.1d.lL.2l.ub,{1q:me.6C,4e:1m,5G:1j})});me.3f.2O("8f",1a(e){if(e.41==13||e.41==32){me.63.1O("3y")}});1r;1p 1R.2j.3R:6V=$("<2H></2H>");6V.hw=1m;1r;1p 1R.2j.1V:6V=$(\'<1Z 1y="8r" 1n="1m" />\');6V.1l("6q",-1);6V.hw=1m;1r;1p 1R.2j.e0:6V=$(\'<1Z 1y="8r" 1n="1m" />\');6V.1l("6q",-1);6V.hw=1m;1r;1p 1R.2j.3e:6V=$("<2t />");1r;1p 1R.2j.d9:K 2t=["<2t>"];if(!1M(QB.1d.5o.9I)&&!1M(QB.1d.5o.9I.Lz)){K 1V="";$.2g(QB.1d.5o.9I.Lz,1a(1T,2a){1V=2a==me.bS?\' 1V="1V" \':"";2t.1I(\'<2Y 1n="\'+2a+\'"\'+1V+">"+(2a==1c?"":2a)+"</2Y>")})}2t.1I("</2t>");6V=$(2t.54(""));6V.2O("ea",1a(){me.cS()});1r;1p 1R.2j.9v:K 2t=["<2t>"];1R.82.p9.2g(1a(1T,2a){2t.1I(\'<2Y 1n="\'+1T+\'">\'+(2a==1c?"":2a)+"</2Y>")});2t.1I("</2t>");6V=$(2t.54(""));6V.2O("ea",1a(){me.cS()});1r;1p 1R.2j.73:6V=$("<2t />");1r;1p 1R.2j.d0:K 2t=["<2t>"];1R.82.tL.2g(1a(1T,2a){2t.1I(\'<2Y 1n="\'+1T+\'">\'+(2a==1c?"":2a)+"</2Y>")});2t.1I("</2t>");6V=$(2t.54(""));6V.2O("ea",1a(){me.cS()});1r;5m:6V=$(\'<1Z 1y="28" 1n="" />\');6V.4E("8f",me.Lv,me);1r}6V.UC(1a(e){me.3f.3S("ui-ES-3a")});1b 6V};J.Lv=1a(e){if(e.41==13){e.76();J.cS();1b 1j}};J.NH=1a(){K me=J;me.$BH=$(\'<3h 2u="Lu">\').bk({b6:{pr:"ui-3H-UD"},28:1j}).1g("me",J).7v(1a(1K){K f6=1j;K bq=1j;K 70=[];if(me.6C==1R.2j.3e){70=me.7D.bw;f6=70&&70.1e>0;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vc)!=0}1i{if(me.6C>=1R.2j.6L){70=me.7D.bA;f6=70&&70.1e>0;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vu)!=0}}if(bq&&!f6){$(me.7D).1O(QB.1d.g0.2l.eT,{5r:me.6C,1n:me.bS,1P:me.7D.1P(),5N:me})}1i{if(1j&&(!bq&&(f6&&70.1e==1))){QB.1d.5o.fW(1c,70[0].vn)}1i{me.$BH.2G()}}1K.4o();1b 1j}).3y(1a(1K){1K.4o();1b 1j});$.2G({43:".Lu",4x:cp,6H:{5c:0},kM:1j,8R:1a($1O,e){K me=$1O.1g("me");if(2A me=="2r"){1b{1H:{}}}K g3={};K bq=1j;K 70=[];K 8a="";if(me.6C==1R.2j.3e){70=me.7D.bw;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vc)!=0;8a=QB.1d.2c.4K.58.Lw}1i{if(me.6C>=1R.2j.6L){70=me.7D.bA;bq=(QB.1d.2J.fk&QB.1d.2R.hT.vu)!=0;8a=QB.1d.2c.4K.58.Ly}}if(bq){K 1h={1x:8a,3H:"p8",1g:1c,1q:"p8"};g3[1h.1q]=1h}if(70&&70.1e){1o(K i=0;i<70.1e;i++){K kP=70[i];K 1h={1x:QB.1d.2c.4K.58.Ef+\' "\'+kP.69+\'"\',3H:"hu-9w",1g:kP.vn,1q:"hu-9w-"+i};g3[1h.1q]=1h}}1b{1H:g3}},1X:1a(3R,1v){if(3R.4S("hu-9w")==0){QB.1d.2m.3X.dz=1v.1H[3R].1g;if(!me.cS()){QB.1d.5o.fW(1c,1v.1H[3R].1g)}}1i{if(3R=="p8"){$(me.7D).1O(QB.1d.g0.2l.eT,{5r:me.6C,1n:me.bS,1P:me.7D.1P(),5N:me})}}},1H:{}});1b me.$BH};J.EX=1a(){K me=J;if(J.8w==1c){J.8w=$(\'<2H 2u="ui-qb-3s-1G-5N-p8-6F"></2H>\');J.8w.4y(J.3f)}J.63=J.Lx(J.6C);if(J.6C==1R.2j.3e||J.6C>=1R.2j.6L){K $3h=J.NH();J.8w.2X($3h);K $2w=$(\'<2w 2u="V1"></2w>\');$2w.2X(J.63);J.8w.2X($2w);J.BJ()}1i{J.8w.2X(J.63)}J.63.1l("5Q-3v",QB.1d.2J.8S[J.6C]);if(!J.63.hw){J.8w.3G()}if(J.6C==1R.2j.3e){K tB=J.63.BL({a6:"3s-3e",1n:me.bS,h3:1a(e){me.cS()}});K 8G=tB.E8()[0];J.63=8G.Bj();J.63.p0=1m}1i{if(J.6C==1R.2j.73){K tB=J.63.BL({a6:"3s-73",h3:1a(){me.cS()}});K 8G=tB.E8()[0];J.63=8G.Bj();J.63.p0=1m}}J.63.2o("ui-qb-3s-1G-5N-p8-3f");if(!J.63.p0){if(J.63.hw){J.63.ea(1a(){me.cS()});J.63.p0=1m}1i{J.63.57(1a(){me.cS()});J.63.p0=1m}}};J.xv=1a(){if(J.8w!=1c){J.8w.68().3z();J.8w.3z();J.8w=1c}J.EX()};J.PN=1a(){K me=J;3E(J.6C){1p 1R.2j.kA:;1p 1R.2j.3R:;1p 1R.2j.1V:;1p 1R.2j.e0:1b 1c}K $Dq=$("<2H></2H>").2o("ui-qb-3s-1G-5N-PQ-6F").2o("ui-qb-3s-1G-5N-PQ-3f");$Dq.3y(1a(e){if(i9){1b}if(O0&&me.6C==1R.2j.aH){QB.1d.5o.yz("UR PS is gO UQ of gO O2 6d. PP PR 4b US of UV mI PR be PT to cQ UT PS in gO SJ 6d.");1b 1j}me.vP()});1b $Dq};J.vP=1a(){QB.1d.2J.cn=1m;if(QB.1d.2J.oQ!=1c){QB.1d.2J.oQ.cS()}if(J.6C==1R.2j.3e||!J.7D.1M()&&!J.7D.PL()){J.PO();QB.1d.2J.oQ=J}J.3f.2o("ui-ES-3a")};J.cS=1a(){K bT=1j;K EN=1m;K 5G=J.1n();K 4e=J.63.cd();if(!45.tp(5G,4e)&&!(5G==1c&&(4e==" "||4e==0))){bT=1m;K ER=J.7D.7j(1R.2j.9v);3E(J.6C){1p 1R.2j.73:if(1M(4e)||4e==0){if(!1M(ER)){J.7D.8n(1R.2j.9v,1R.82.p9.EO)}}1i{5G=1M(5G)?PJ:6n(5G);4e=6n(4e);if(c5(4e)){4e=0}if(c5(5G)){5G=PJ}4e+=4e<5G?-0.5:+0.5;if(1M(ER)){J.7D.8n(1R.2j.9v,1R.82.p9.PH);J.7D.ks(1R.2j.9v)}EN=1j}1r}J.1n(4e);if(EN){J.7D.ks()}J.EM();$(J).1O(QB.1d.lL.2l.ub,{1q:J.6C,4e:4e,5G:5G,gQ:J.gQ});J.gQ=1j}1i{J.EM()}QB.1d.2J.oQ=1c;if(!J.63.hw){J.3f.3S("ui-ES-3a")}1b bT};J.PK=1a(1q){K hz="ui-qb-3s-1G-";if(1q>=1R.2j.oJ){1b hz+"xt"}1b hz+1R.2j.eb(1q)};J.eV=1a(3a){if(!3a.1e){1b $()}K 1J=3a.3q();if(1J.is(":9u")){1b 1J}1J=1J.2h(":9u:4c");if(1J.1e){1b 1J}K 1N=3a.1N();1b J.eV(1N)};J.f7=1a(3a){if(!3a.1e){1b $()}K 1J=3a.3I();if(1J.is(":9u")){1b 1J}1J=1J.2h(":9u:7u");if(1J.1e){1b 1J}K 1N=3a.1N();1b J.f7(1N)};J.8m=1a(1q,1N){K me=J;J.3f=$(\'<td 2u="ui-8o-c3 ui-qb-3s-1G-5N \'+J.PK(J.6C)+\'" />\');J.3f.1l("6q",0);K ty=J.6C;if(ty>1R.2j.6L){ty=1R.2j.6L}J.3f.1l("5Q-3v",QB.1d.2J.8S[ty]);J.eD=J.PN();if(J.eD!=1c){J.eD.4y(J.3f)}J.EX();J.3f.SK(1a(e){if(QB.1d.2J!=1c&&QB.1d.2J.2K){1b}if(QB.1d.2J.ws){1b}if(me.3f[0]!=e.3g){1b}me.vP()});J.3f.8f(1a(e){3E(e.41){1p 9:if(e.ov){me.f7(me.3f).3a();e.4o()}}})};J.8m(1q,1N)};QB.1d.lL.2l={ub:"SM",SO:"SN",eT:"eT"};QB.1d.g0=1a(1P){J.Sp=1;J.5J={};J.Sn=45.tk();J.3o=1c;J.3f=1c;J.pJ=1j;J.bw=[];J.bA=[];J.6k=zI();J.Sj=1j;J.1M=1a(){1b 1M(J.5J[1R.2j.3e].1n())};J.PL=1a(){K 2a=J.5J[1R.2j.3e].1n();if(1M(2a)){1b 1j}1b 2a.4S(".*")>=0};J.gR=1a(2a){K lW=J.5J[1R.2j.1V].1n();if(2a===2r){1b lW}1i{if(lW!=2a){J.5J[1R.2j.1V].1n(2a);J.Ev(1c,{1q:1R.2j.1V,4e:2a});1b 1m}}1b 1j};J.7j=1a(1q){1b J.5J[1q].1n()};J.O6=1a(){1b!1M(J.7j(1R.2j.d9))||!1M(J.7j(1R.2j.6L))};J.8n=1a(1q,1n,u1){if(1n===2r){1n=1c}K 4e=1n;K 5G=J.5J[1q].1n();if(45.tp(4e,5G)){1b 1j}3E(1q){1p 1R.2j.9v:J.8n(1R.2j.73,1c,u1);1r;1p 1R.2j.73:if(1M(4e)||4e==0){4e=""}1r;5m:}J.5J[1q].1n(4e);1b 1m};J.Ev=1a(e,1g){K 1q=1g.1q;K 4e=1g.4e;K 5G=1g.5G;$(J).1O(QB.1d.g0.2l.Ed,{1q:1q,4e:4e,5G:5G,1G:J,gQ:1g.gQ});J.m7()};J.m7=1a(){K me=J;K vB=me.1M();1o(K 1q in me.5J){if(1q==1R.2j.3e){bI}K 5N=me.5J[1q];5N.3f.1l("6q",vB?-1:0)}};J.Q2=1a(){K me=J;K 3O=$(\'<tr 2u="ui-qb-3s-1G" />\');1R.2j.2g(1a(1q){K 5N=1U QB.1d.lL(1q,me);$(5N).4E(QB.1d.lL.2l.ub,me.Ev,me);5N.3f.4y(3O);me.5J[1q]=5N});J.m7();3O.1g("1F",J);3O.1g("me",J);1b 3O};J.3z=1a(){J.pJ=1m;J.3f.68().3z();J.3f.3z();J.3f.3O("")};J.ks=1a(m0){K me=J;1o(K 1q in me.5J){K 5N=me.5J[1q];if(m0===2r||m0==1q){5N.7X()}}J.m7()};J.Ps=1a(m0){K me=J;1o(K 1q in me.5J){K 5N=me.5J[1q];if(m0===2r||m0==1q){5N.xv()}}J.m7()};J.Q1=1a(){J.8n(1R.2j.1V,!J.1M());J.8n(1R.2j.e0,1j);J.8n(1R.2j.d0,1R.82.tL.p5)};J.gZ=1a(om,p6,kX,tR){K a=45.3D(J.7j(1R.2j.3e)).3P();K b=45.3D(om).3P();if(1M(a)||1M(b)){tR=1j}if(!tR&&a==b||tR&&(a.4S(b)>=0||b.4S(a)>0)){if(p6===2r||p6==45.3D(J.7j(1R.2j.d9)).3P()){if(kX===2r||kX==45.3D(J.7j(1R.2j.aH)).3P()){1b 1m}}}1b 1j};J.PZ=1a(om,p6,kX){1b J.gZ(om,p6,kX,1m)};J.1P=1a(1n){if(1n===2r){1b J.PU()}1i{1b J.we(1n)}};J.7X=1a(1P){K 5L=J.we(1P);if(5L){J.ks()}1b 5L};J.we=1a(1P){K 5L=1j;if(1M(1P)){1b 5L}5L=J.8n(1R.2j.3e,1P.9x)||5L;5L=J.8n(1R.2j.d9,1P.fp)||5L;5L=J.8n(1R.2j.aH,1P.8W)||5L;5L=J.8n(1R.2j.e0,1P.j4)||5L;5L=J.8n(1R.2j.d0,1P.Fe)||5L;5L=J.8n(1R.2j.9v,1P.fQ)||5L;5L=J.8n(1R.2j.73,1P.kZ)||5L;1o(K i=0;i<QB.1d.2J.iN+1;i++){5L=J.8n(1R.2j.6L+i,1P.6c[i])||5L}if(J.3o!=1P.3o){J.3o=1P.3o;5L=1m}if(!1M(1P.6k)&&J.6k!=1P.6k){J.6k=1P.6k;5L=1m}if(!1M(1P.3o)&&J.6k!=1c){if(!1M(1P.3o)){J.6k=1c}5L=1m}if(J.pJ!=1P.8l){J.pJ=1P.8l;5L=1m}if(J.96!=1P.96){J.96=1P.96;5L=1m}K F1=-1;K Fj=-1;if(1P.bw){Fj=1P.bw.1e}if(J.bw){F1=J.bw.1e}if(F1!=Fj){5L=1m}J.bw=1P.bw;K Fn=-1;K F6=-1;if(1P.bA){F6=1P.bA.1e}if(J.bA){Fn=J.bA.1e}if(Fn!=F6){5L=1m}J.bA=1P.bA;5L=J.8n(1R.2j.1V,1P.ck&&!J.1M())||5L;J.m7();1b 5L};J.PU=1a(){K 1P=1U QB.1d.2c.As;1P.ck=J.7j(1R.2j.1V);1P.9x=J.7j(1R.2j.3e);1P.fp=J.7j(1R.2j.d9);1P.8W=J.7j(1R.2j.aH);1P.j4=J.7j(1R.2j.e0);1P.Fe=J.7j(1R.2j.d0);1P.fQ=J.7j(1R.2j.9v);1P.kZ=J.7j(1R.2j.73);1P.6c[0]=J.7j(1R.2j.6L);1o(K i=0;i<QB.1d.2J.iN;i++){1P.6c[1+i]=J.7j(1R.2j.oJ+i)}1P.3o=J.3o;1P.8l=J.pJ;1P.6k=J.6k;1P.96=J.3f==1c?0:J.3f.1T();1b 1P};J.8m=1a(1P){J.3f=J.Q2();J.3f.pH();J.Q1();J.we(1P);J.ks()};J.8m(1P)};QB.1d.g0.2l={Ed:"Ss",eT:"eT"};QB.1d.2J={3b:[],iN:2,wr:1j,Tm:1c,oK:1c,cn:1j,kw:0,Tn:[],2K:1j,ws:1j,fk:0,vl:1j,En:1j,eV:1a(3a){if(!3a.1e){1b $()}K 1J=3a.3q();if(1J.is(":9u")){1b 1J}1J=1J.2h(":9u:4c");if(1J.1e){1b 1J}K 1N=3a.1N();1b J.eV(1N)},Az:1a(){J.kw++},Ar:1a(){J.kw--;if(J.kw==0){J.ga();J.iy()}},f7:1a(3a){if(!3a.1e){1b $()}K 1J=3a.3I();if(1J.is(":9u")){1b 1J}1J=1J.2h(":9u:7u");if(1J.1e){1b 1J}K 1N=3a.1N();1b J.f7(1N)},pq:1a(){K me=J;QB.1d.2J.fk=J.1f.1l("fk");QB.1d.2J.vl=J.1f.1l("vl");K x=J.1f.1l("iN");if(x!=1c&&(x!=""&&!c5(x))){QB.1d.2J.iN=6n(x)}if(J.1f.1l("wr")=="Tw"){QB.1d.2J.wr=1m}J.1f.2o("ui-8o").2o("ui-qb-3s");J.1f.dB({w2:"qb-ui-3s-6Q",Dt:".qb-ui-3s-dB",eA:"9V",DF:1a(e,ui){if(ui.4V.4H("qb-ui-4f-2p-4V")){K 1F=ui.4V.1g("1F");K hP=ui.4V.1g("hP");$(J).1O(QB.1d.2J.2l.tS,{1B:hP,2p:1F})}1i{K Q3=$(J);K 1F=ui.4V.1g("1F");K vy={1F:1F};$(J).1O(QB.1d.2J.2l.tW,vy)}}});J.1f.2o("qb-ui-3s-3t");J.1f.2o("g2-pw");J.1B=$(\'<1B vz="0" vA="0" f3="0" />\').2o("ui-8o-c3").2o("vv-Q5").2o("g2-T2").2o("d5-y").4y(J.1f);J.Pj().4y(J.1B);J.kV=$("<7p/>").4y(J.1B);K me=J;J.jq();J.ga();me.1f.3a(1a(e){QB.1d.2J.cn=1j});me.1f.1l("6q",0);me.1f.8f(1a(e){3E(e.41){1p 13:if(QB.1d.2J.cn){1b}QB.1d.2J.cn=1m;me.1f.2h("[6q]:5y:4c").3a();e.4o();1r;1p 9:if(!QB.1d.2J.cn){if(!e.ov){me.eV(me.1f).3a()}1i{me.f7(me.1f).3a()}e.4o()}}});K i3=0;J.En=1m;J.1B.1B({cq:1m,DB:!1m,8d:{4m:1m}});J.Q4()},Q4:1a(){K me=J;me.1B.4s({vh:1a(1B,1G){K 1w=$(1G).1g("1F");if(!1w.1M()){me.1f.1O(QB.1d.2J.2l.fN,{1G:1w})}},oy:"ui-qb-3s-1G-3R"})},5R:1a(){J.1f.3S("ui-qb-3s").8q(".8y");J.1B.3z();$.Ei.2V.5R.3i(J,2v)},jq:1a(){K Ej=1j;$.2g(J.3b,1a(1q,1G){if(1G.1M()){Ej=1m;1b 1j}});if(!Ej){J.lz(1c)}},ec:1a(1S){K me=J;if(1M(1S)||1S.2W.1e==0){1b}K 43=".ui-qb-3s-1G";K 1H=QB.1d.2f.hm(1S.2W);$.2G("5R",43);$.2G({43:43,4x:cp,6H:{5c:0},kM:1j,8R:1a($1O,e){K me=$1O.1g("me");if(2A me=="2r"){1b{1H:1H}}K g3={};K 70=1c;if($(e.3g).aN().4H("ui-qb-3s-1G-3e")){70=me.bw;K 1G=me;if(1G&&1M(1G.7j(1R.2j.3e))){K 1h={1x:QB.1d.2c.4K.58.Q0,3H:"hu-9w",1g:1c,1q:"Em-9w"};g3[1h.1q]=1h}}if($(e.3g).aN().4H("ui-qb-3s-1G-6L")){70=me.bA}if(70&&70.1e){1o(K i=0;i<70.1e;i++){K kP=70[i];K 1h={1x:QB.1d.2c.4K.58.Ef+" "+kP.69,3H:"hu-9w",1g:kP.vn,1q:"hu-9w-"+i};g3[1h.1q]=1h}}1b{1H:g3}},1X:1a(3R,1v){K 1G=J.1g("me");me.g4(3R,1G,1v.1H[3R])},1H:1H})},g4:1a(3R,1G,vj){K me=J;K el=1G.3f;if(3R.4S("hu-9w")==0){QB.1d.5o.fW(1c,vj.1g)}3E(3R){1p"Em-9w":1G.8n(1R.2j.3e,"(2t *)",1m);1G.8n(1R.2j.1V,1m,1m);me.1f.1O(QB.1d.2J.2l.fN,{1G:1G});me.jq();1r;1p"dP-up":if(el.3q().1e){el.7n(el.3I());if(!1G.1M()){me.1f.1O(QB.1d.2J.2l.fN,{1G:1G})}}1r;1p"dP-e8":K 3q=el.3q();if(3q.1e&&3q.3q().1e){el.fj(3q);if(!1G.1M()){me.1f.1O(QB.1d.2J.2l.fN,{1G:1G})}}1r;1p"1G-4a":if(me.3b.1e>1){me.jk(1G)}1i{if(1G.1M()){1b}1i{me.jk(1G);me.jq()}}me.jq(1G);me.ga();me.1f.1O(QB.1d.2J.2l.fN,{1G:1G,1q:1R.2j.kA,4e:1m,5G:1j});1r;1p"1G-Em":me.lz(1c,el);1r}},iy:1a(){if(!J.En){1b}if(J.kw!=0){1b}if(J.1B.1B("kJ")){J.1B.1B("kJ").kI()}},lz:1a(4A,kL,5j,kW){K bT=1j;K 1G=J.PX(4A);if(1G==1c){bT=1m;1G=1U QB.1d.g0(4A);$(1G).4E(QB.1d.g0.2l.Ed,{1G:1G},J.Pq,J);$(1G).4E(QB.1d.g0.2l.eT,1G,J.eT,J);if(1G!=1c&&(!1G.1M()&&1M(kL))){kL=J.PV()}if(5j===0||!1M(5j)){5j=6n(5j);K kQ=$("tr:5P(.ui-qb-3s-1G-7t)",J.kV).eq(5j);if(kQ.1e){kQ.vS(1G.3f)}1i{1G.3f.4y(J.kV)}}1i{if(kL!=1c&&kL.1e){1G.3f.7n(kL)}1i{1G.3f.4y(J.kV)}}if(!kW){J.1f.1O(QB.1d.2J.2l.yS,{1G:1G})}J.3b.1I(1G)}1i{if(5j===0||!1M(5j)){5j=6n(5j);K PW=1G.3f[0].SU-1;if(5j!=PW){K kQ=$("tr:5P(.ui-qb-3s-1G-7t)",J.kV).eq(5j);if(kQ.1e){kQ.vS(1G.3f)}}}bT=1G.7X(4A);if(!kW&&bT){J.1f.1O(QB.1d.2J.2l.fN,{1G:1G})}}if(1G!=1c&&1G.3f!=1c){K oH=$(".ui-qb-3s-1G-d0",1G.3f);if(oH.1e>0){oH.2F("4L",J.oK?"":"3j")}}if(!kW&&bT){J.ga()}J.iy();1b 1G},NM:1a(){1b J.3b},SW:1a(){K E5=1c;$.2g(J.3b,1a(1q,1G){K vB=1G.1M();if(vB){E5=1G;1b 1j}});1b E5},jk:1a(xC,kW){K 4A;1o(K i=J.3b.1e-1;i>=0;i--){K 1G=J.3b[i];if(1G.3o==xC.3o){if(!1M(1G.3o)||1M(1G.3o)&&1G.3f==xC.3f){J.3b.3z(1G);1G.8l=1m;1G.3z();4A=1G.1P()}}}J.ga();if(4A){4A.8l=1m;if(!kW){J.1f.1O(QB.1d.2J.2l.yT,{4A:4A})}}J.iy()},Tb:1a(1P){K 3b=J.xE(1P);1o(K 1G in 3b){1G.3z();J.3b.3z(1G);4a 1G}J.ga()},T8:1a(7K){K 1J=1c;$.2g(J.3b,1a(1q,1G){if(1G.3o==7K){1J=1G;1b 1j}});1b 1J},PV:1a(){1b J.kV.2h("tr:7u:5P(.ui-qb-3s-1G-7t)")},PX:1a(4A){K 3b=J.xE(4A);if(3b.1e>0){1b 3b[0]}1b 1c},xE:1a(4A){K 1J=[];K vH=[];K vD=[];K vC=[];K vY=[];if(4A==1c){1b 1J}K om=45.3D(4A.9x).3P();K kX=45.3D(4A.8W).3P();1o(K i=0;i<J.3b.1e;i++){K 1G=J.3b[i];if(!1M(1G.3o)&&(!1M(4A.3o)&&1G.3o==4A.3o)){vH.1I(1G)}1i{if(!1M(1G.6k)&&(!1M(4A.6k)&&1G.6k==4A.6k)){vD.1I(1G)}1i{if(1G.gZ(4A.9x,4A.fp,4A.8W)){if(4A.96==i){vC.1I(1G)}1i{vY.1I(1G)}}}}}if(vH.1e>0){1J=vH}1i{if(vD.1e>0){1J=vD}}if(vC.1e>0){1J=vC}if(vY.1e>0){1J=vY}1b 1J},nT:1a(){$.2g(J.3b,1a(1q,1G){1G.5J[1R.2j.3e].xv();if(QB.1d.2J.oQ==1G.5J[1R.2j.3e]){1G.5J[1R.2j.3e].vP()}})},PC:1a(3e){K 3b=J.wq(3e);if(3b.1e>0){1b 3b[0]}1b 1c},wq:1a(3e){K 1J=[];$.2g(J.3b,1a(1q,1G){if(1G.gZ(3e,"")){1J.1I(1G)}});if(1J.1e>0){1b 1J}$.2g(J.3b,1a(1q,1G){if(1G.PZ(3e,"")){1J.1I(1G)}});1b 1J},NQ:1a(1P){J.Az();K 3a=$(":3a");$("#qb-ui-1Q").3a();QB.1d.2J.2K=1m;K me=J;if(1M(1P)){1b}K xN=[];$.2g(1P.bu,1a(1T,PY){xN.1I(me.lz(PY,1c,1T,1m))});1o(K i=J.3b.1e-1;i>=0;i--){if(i>J.3b.1e-1){bI}K oO=J.3b[i];if(oO!=1c){if(xN.4S(oO)==-1&&!oO.1M()){J.jk(oO,1m)}}}J.Ar();QB.1d.2J.2K=1j},NS:1a(){K 2S=[];if(QB.1d.2f.64!=1c&&QB.1d.2f.64.1e!=1c){1o(K i=0;i<QB.1d.2f.64.1e;i++){K 1w=QB.1d.2f.64[i];K 1B=1w.1g("1F");K 8U=!1M(1B.l7)?1B.l7:1B.49;K xM=8U+".*";2S.1I({1V:1j,28:xM,1n:xM,bC:"1B"});$(1B.5V).2g(1a(){K 2p=J;K oR=8U+"."+2p.7g;K PG=2p.7g;2S.1I({1V:1j,28:PG,1n:oR,bC:"2p"})})}}aq.xg("3s-3e",2S)},Ts:1a(1G,3Q){1G.gR(3Q)},eT:1a(e,1g){1g.1G=e.1g.1G;J.1f.1O(QB.1d.2J.2l.xl,1g)},xH:1a(e,1g){J.iy()},Pq:1a(e,1g){K 1G=e.1g.1G;K 1q=1c;K 4e=1c;K 5G=1c;if(1g){1q=1g.1q;4e=1g.4e;5G=1g.5G}1b J.Pr(1G,1q,5G,4e,1g.gQ)},Tg:1a(4A,5r,3e,1X){if(J.vl!="1m"){if(1X&&7H(1X)=="1a"){1X()}1b}4A.Pp=1m;4A.Bd=5r;4A.Bc=3e;QB.1d.2m.nb([4A]);QB.1d.2m.5D(1X)},Pr:1a(1G,5r,5G,4e,xj){if(5r==1R.2j.kA&&4e){if(J.3b.1e>1){J.jk(1G,1m)}1i{if(1G.1M()){1b}1i{J.jk(1G,1m);J.jq()}}}J.jq(1G);J.ga(1G);J.1f.1O(QB.1d.2J.2l.fN,{1G:1G,1q:5r,4e:4e,5G:5G,xj:xj});J.iy()},ga:1a(1G){if(J.kw!=0){1b}J.Pk(1G);J.Pt(1G)},Pt:1a(){K oG=[];1o(K i=0;i<J.3b.1e;i++){K 1G=J.3b[i];K 1n=1G.7j(1R.2j.9v);if(1n!=1c&&1n>0){oG.1I({1G:1G,73:1G.7j(1R.2j.73)})}}oG.g5(J.Po);K 2S=[];1o(K i=0;i<oG.1e;i++){2S.1I({1V:1j,28:5E(i+1),1n:5E(i+1),bC:"73"});K 1G=oG[i].1G;1G.8n(1R.2j.73,i+1,1m);1G.ks(1R.2j.73)}2S.1I({1V:1j,28:5E(i+1),1n:5E(i+1),bC:"73"});aq.xg("3s-73",2S)},P9:1a(){1o(K i=0;i<J.3b.1e;i++){K 1G=J.3b[i];1G.Ps(1R.2j.d9)}},Po:1a(a,b){K kF=b.73;K kz=a.73;if(1M(kz)||kz<0){1b 1}if(1M(kF)||kF<0){1b-1}kz=6n(kz);kF=6n(kF);1b kz-kF},Pk:1a(1G){K vp=1j;1o(K i=0;i<J.3b.1e;i++){if(J.3b[i].7j(1R.2j.e0)){vp=1m;1r}}if(J.oK==vp){1b 1j}J.oK=vp;K oH=$(".ui-qb-3s .ui-qb-3s-1G-d0");oH.2F("4L",J.oK?"":"3j");J.iy();1b 1m},Pj:1a(){K 7t=$("<7A />");K tr=$("<tr />").2o("ui-qb-3s-1G-7t").2o("ui-8o-7t").4y(7t);K 4c=1m;K SB="";QB.1d.2J.8S={};QB.1d.2J.8S[1R.2j.3R]="";QB.1d.2J.8S[1R.2j.kA]=QB.1d.2c.4K.58.gW;QB.1d.2J.8S[1R.2j.1V]=QB.1d.2c.4K.58.6c.wv;QB.1d.2J.8S[1R.2j.3e]=QB.1d.2c.4K.58.6c.9x;QB.1d.2J.8S[1R.2j.d9]=QB.1d.2c.4K.58.6c.fp;QB.1d.2J.8S[1R.2j.aH]=QB.1d.2c.4K.58.6c.8W;QB.1d.2J.8S[1R.2j.9v]=QB.1d.2c.4K.58.6c.fQ;QB.1d.2J.8S[1R.2j.73]=QB.1d.2c.4K.58.6c.kZ;QB.1d.2J.8S[1R.2j.e0]=QB.1d.2c.4K.58.6c.j4;QB.1d.2J.8S[1R.2j.d0]=QB.1d.2c.4K.58.6c.xr;QB.1d.2J.8S[1R.2j.6L]=QB.1d.2c.4K.58.6c.wG;QB.1d.2J.8S[1R.2j.oJ]=QB.1d.2c.4K.58.6c.wG;$.2g(QB.1d.2J.8S,1a(i,5N){QB.1d.2J.8S[i]=5N.3p("&2n;"," ").3p("&xe;","&")});$.2g(J.Pn(),1a(){if(4c){$(\'<th 2u="ui-4u-5m ui-qb-3s-1G-\'+J.1x+\'" 8t="3"><2w>\'+J.7t+"</2w></th>").4y(tr);4c=1j}1i{$(\'<th 2u="Pl-5K ui-4u-5m ui-qb-3s-1G-\'+J.1x+\'"><2w>\'+J.7t+"</2w></th>").4y(tr)}});1b 7t},Pn:1a(){K 3b={};3b[1R.2j.1V]={cZ:1,1x:"1V",7t:QB.1d.2c.4K.58.6c.wv,1y:"8r"};3b[1R.2j.3e]={cZ:2,1x:"3e",7t:QB.1d.2c.4K.58.6c.9x,1y:"3e"};3b[1R.2j.aH]={cZ:3,1x:"aH",7t:QB.1d.2c.4K.58.6c.8W,1y:"28"};3b[1R.2j.9v]={cZ:4,1x:"9v",7t:QB.1d.2c.4K.58.6c.fQ,1y:"2t"};3b[1R.2j.73]={cZ:5,1x:"73",7t:QB.1d.2c.4K.58.6c.kZ,1y:"2t"};3b[1R.2j.d9]={cZ:6,1x:"d9",7t:QB.1d.2c.4K.58.6c.fp,1y:"2t"};3b[1R.2j.e0]={cZ:7,1x:"e0",7t:QB.1d.2c.4K.58.6c.j4,1y:"8r"};3b[1R.2j.d0]={cZ:8,1x:"d0",7t:QB.1d.2c.4K.58.6c.xr,1y:"2t"};3b[1R.2j.6L]={cZ:9,1x:"6L",7t:QB.1d.2c.4K.58.6c.wG,1y:"28"};1o(K i=0;i<QB.1d.2J.iN;i++){3b[1R.2j.oJ+i]={cZ:10+i,1x:"xt",7t:QB.1d.2c.4K.58.6c.Pm,1y:"28"}}1b 3b}};QB.1d.2J.2l={yS:"Sz",yT:"Tu",fN:"yQ",tW:"tW",tS:"tS",xl:"xl"};(1a($){$.8o("ui.8y",QB.1d.2J);$.4q($.ui.8y,{Pu:"Tt PC wq lz ec",6d:"1.7.1"})})(2C);QB.1d.2c.fi={gX:0,6S:1,xT:2,v4:3,QK:4};QB.1d.2c.6R={};QB.1d.2c.6R[QB.1d.2R.6I.PB]={49:"SY iq",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.PD]={49:"iO",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.PF]={49:"T6 iq",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.qn]={49:"is gZ to",7Z:1,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.PE]={49:"yh 5P 2T iq",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.PA]={49:"yh 5P T9",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.Pw]={49:"yh 5P 4n iq",7Z:1,7h:[QB.1d.2R.6p.ag]};QB.1d.2c.6R[QB.1d.2R.6I.yp]={49:"is in 4Y",7Z:1,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.Pv]={49:"is 5P gZ to",7Z:1,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.yt]={49:"is 5P in 4Y",7Z:1,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.Px]={49:"is 1c",7Z:0,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.Pz]={49:"is 5P 1c",7Z:0,7h:[]};QB.1d.2c.6R[QB.1d.2R.6I.Py]={49:"is QD vK",7Z:1,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.6R[QB.1d.2R.6I.Q6]={49:"is QD vK or gZ to",7Z:1,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.6R[QB.1d.2R.6I.QC]={49:"is QG vK",7Z:1,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.6R[QB.1d.2R.6I.QE]={49:"is QG vK or gZ to",7Z:1,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.6R[QB.1d.2R.6I.QF]={49:"is Qw",7Z:2,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.6R[QB.1d.2R.6I.QA]={49:"is 5P Qw",7Z:2,7h:[QB.1d.2R.6p.h2,QB.1d.2R.6p.5A]};QB.1d.2c.iX={};QB.1d.2c.iX[QB.1d.2R.av.9G]={49:"9G",im:"6D"};QB.1d.2c.iX[QB.1d.2R.av.uf]={49:"gT 9G",im:"ST"};QB.1d.2c.iX[QB.1d.2R.av.pZ]={49:"pZ",im:"SQ"};QB.1d.2c.iX[QB.1d.2R.av.iM]={49:"iM",im:"3j"};QB.1d.v9=1a(){J.$1y=1c};QB.1d.pY=1U 6r({$1y:"eu.pM.1d.ey.pR.yq, eu.pQ.1d.ey",4C:1c,2W:[],4W:QB.1d.2c.fi.gX,6S:1c,83:QB.1d.2R.6I.qn,6e:1c,7m:1c,dY:1j,h4:1j,1f:1c,aj:1a(){K aj=J;44(aj.4C!=1c){aj=aj.4C}1b aj},uZ:1a(1P){1P.$1y=J.$1y;1P.4W=J.4W;1P.6S=J.6S;1P.83=J.83;1P.6e=J.6e;1P.7m=J.7m},uY:1a(1P){1P.2W=[];$.2g(J.2W,1a(1T,1h){1P.2W.1I(1h.io())})},io:1a(){K 1P=$.4q(1U QB.1d.v9,1U QB.1d.2c.yq);J.uZ(1P);J.uY(1P);1b 1P},Qv:1a(1P){K 1J=1c;if(1P==1c){1b 1J}3E(1P.4W){1p QB.1d.2c.fi.6S:1J=1U QB.1d.yl(J);1J.q9(1P);1r;1p QB.1d.2c.fi.xT:1J=1U QB.1d.xW(J);1J.q9(1P);1r;1p QB.1d.2c.fi.v4:1J=1U QB.1d.uH(J);1J.q9(1P);1r}1b 1J},q9:1a(1P){K me=J;J.4W=1P.4W;J.6S=1P.6S;J.83=1P.83;J.aW=1P.aW;J.a0=1P.a0;J.6e=1P.6e;J.7m=1P.7m;$.2g(1P.2W,1a(1T,1h){me.2W.1I(me.Qv(1h))})},y6:1a(5r){J.6S=5r;if(J.6S!=1c){if(QB.1d.2c.6R[J.83].7h.1e!=0&&!QB.1d.2c.6R[J.83].7h.iO(J.83)){J.83=QB.1d.2R.6I.qn}}1i{J.83=QB.1d.2R.6I.qn}},96:1a(){if(J.4C==1c){1b-1}1b J.4C.2W.4S(J)},SF:1a(){if(J.4C==1c){1b 1c}K i=J.4C.2W.4S(J);if(i>=J.4C.2W.1e-1){1b 1c}1b J.4C.2W[i+1]},q1:1a(){if(J.4C==1c){1b 1c}K i=J.4C.2W.4S(J);if(i<=0){1b 1c}1b J.4C.2W[i-1]},Qx:1a(){if(J.4C==1c){1b 0}1b J.4C.2W.1e},xU:1a(){1b QB.1d.2c.6R[J.83]},ur:1a(){K 1J="";if(!J.aj().q7){1b 1J}if(J.q1()==1c){1b 1J}if(J.4C==1c){1b 1J}3E(6n(J.4C.a0)){1p QB.1d.2R.av.9G:;1p QB.1d.2R.av.uf:1J=$("<2w> mI </2w>");1r;1p QB.1d.2R.av.pZ:;1p QB.1d.2R.av.iM:1J=$("<2w> or </2w>");1r}1b 1J},Qf:1a(){K 1H={};$.2g(J.aj().uw,1a(1T,5r){1H[5r.49]={1x:5r.49,3H:"2p",1g:5r}});1b 1H},QL:1a(1h){K 1H={};$.2g(QB.1d.2c.6R,1a(1T,1f){if(1h.6S!=1c){if(1f.7h.1e!=0){if(1h.6S!=1c&&1f.7h.iO(1h.6S.qG)){1H[1T]={1x:1f.49,3H:"",1g:1f}}}1i{1H[1T]={1x:1f.49,3H:"",1g:1f}}}});1b 1H},Qe:1a(1h){K 1H={};$.2g(QB.1d.2c.iX,1a(1T,1f){1H[1T]={1x:1f.49,3H:"",1g:1f}});1b 1H},v0:1a(){K 1H={};1H["dP-up"]={1x:"lm up",3H:"dP-up",2K:J.96()<=0};1H["dP-e8"]={1x:"lm e8",3H:"dP-e8",2K:J.96()>=J.Qx()-1};1H["5B"]="---------";1b 1H},7U:1a(){J.pX()},m6:1a(){1b 1m},pX:1a(){if(J.6S==1c){J.dY=1m;J.h4=1m;1b}if(J.83==QB.1d.2R.6I.yp||J.83==QB.1d.2R.6I.yt){1b!1M(J.6e)}3E(J.6S.qG){1p QB.1d.2R.6p.lo:;1p QB.1d.2R.6p.5A:;1p QB.1d.2R.6p.ag:;1p QB.1d.2R.6p.gX:J.dY=!1M(J.6e);J.h4=!1M(J.7m);1r;1p QB.1d.2R.6p.h2:J.dY=!1M(J.6e)&&$.Qz(J.6e);J.h4=!1M(J.7m)&&$.Qz(J.7m);1r}},he:1a(){J.7U()},l3:1a(){1b{}},Qy:1a(){K 1T=J.96();K 1h=J.4C.2W[1T];if(1T<=0||(J.4C==1c||J.1f==1c)){1b 1j}K yr=1T-1;K j0=J.4C.2W[yr];if(j0==1c||j0.1f==1c){1b 1j}J.1f.7n(j0.1f);J.4C.2W[1T]=j0;J.4C.2W[yr]=1h;1b 1m},QH:1a(){K 1T=J.96();K 1h=J.4C.2W[1T];if(J.4C==1c||(J.1f==1c||1T>=J.4C.2W.1e-1)){1b 1j}K dR=1T+1;K j2=J.4C.2W[dR];if(j2==1c||j2.1f==1c){1b 1j}j2.1f.7n(J.1f);J.4C.2W[1T]=j2;J.4C.2W[dR]=1h;1b 1m},QP:1a(){K 1T=J.96();J.4C.2W.3z(1T);J.1f.3z();1b 1m},QO:1a(){$.2g(J.2W,1a(1T,1h){1h.1f.3z()});J.2W=[];1b 1m},l4:1a(1h){K 1T=1h.96();if(1T==0){J.1f.la(1h.7U())}1i{1h.q1().1f.q4(1h.7U())}},ya:1a(){K 1h=1U QB.1d.yl(J.4C);J.4C.2W.1I(1h);J.4C.l4(1h);1b 1h},QQ:1a(){K 1h=1U QB.1d.xW(J.4C);J.4C.2W.1I(1h);J.4C.l4(1h);1b 1h},QS:1a(){K 1h=1U QB.1d.uH(J.4C);J.4C.2W.1I(1h);J.4C.l4(1h);1b 1h},uA:1a(1q){3E(1q){1p"dP-up":1b J.Qy();1r;1p"dP-e8":1b J.QH();1r;1p"4a":1b J.QP();1r;1p"9J":1b J.QO();1r;1p"5l-6L-1o-5r":1b J.ya();1r;1p"5l-ud-6L":1b J.QQ();1r;1p"5l-cb-of-uh":1b J.QS();1r}1b 1j},y0:1a(1q,5r){J.y6(5r);J.he();1b 1m},Qu:1a(1q){J.83=1q;J.he();1b 1m},Qd:1a(1q){J.a0=1q;J.he();1b 1m},c9:1a(1N){if(1N!==2r){J.4C=1N}}});QB.1d.yl=1U 6r({cA:QB.1d.pY,4W:QB.1d.2c.fi.6S,$1y:"eu.pM.1d.ey.pR.QR, eu.pQ.1d.ey",l3:1a(){K 1H=J.v0();1H["4a"]={1x:"gW",3H:"y8"};1b 1H},m6:1a(){if(J.6S==1c){1b 1j}K yk=J.xU();if(yk!=1c){3E(yk.7Z){1p 2:1b J.dY&&J.h4;1r;1p 1:1b J.dY;1r;1p 0:1b 1m;1r}}1b 1m},lC:1a($1f,dO,5r){K me=J;if(1M(dO)){dO=1}K 2a="";if(dO==2){if(!1M(J.7m)){2a=J.7m}}1i{if(!1M(J.6e)){2a=J.6e}}K $1Z=$(\'<1Z 1n="\'+2a+\'">\').iW(1a(1K){if(1K.41==10||1K.41==13){1K.4o();J.57()}});if(!1M(5r)&&5r.qG==QB.1d.2R.6p.5A){$1Z.uP({h3:1a(2a,Y4){$1Z.2a(2a);if(dO==2){me.7m=2a}1i{me.6e=2a}me.pX(2a,dO)},Y7:1a(){2a=$1Z.2a();if(dO==2){me.7m=2a}1i{me.6e=2a}me.he()}});$1Z.fj($1f).3a()}1i{$1Z.fj($1f);$1Z.3a();6A(1a(){$1Z.57(1a(){K 2a=$1Z.2a();if(dO==2){me.7m=2a}1i{me.6e=2a}me.pX(2a,dO);me.he()})},9a)}},7U:1a(){K me=J;J.1N(2v);if(J.1f==1c){J.1f=$(\'<2H 2u="qb-ui-51-4Z-6F 1h">\')}J.1f.du();J.1f.1g("1h",J);J.1f.2X($(\'<2H 2u="qb-ui-51-4Z-3h 7a">\'));J.1f.2X(" ");J.1f.2X(J.ur());K 5r=J.6S;if(1M(5r)){J.1f.2X($(\'<a 2u="qb-ui-51-4Z-29-2p-2t 9H" 5h="#">[2t 5r]</a>\'))}1i{J.1f.2X($(\'<a 2u="qb-ui-51-4Z-29-2p-2t" 5h="#">\'+5r.49+"</a>"))}J.1f.2X(" ");K QN=QB.1d.2c.6R[J.83].49;J.1f.2X($(\'<a 2u="qb-ui-51-4Z-29-7c" 5h="#">\'+QN+"</a>"));J.1f.2X(" ");K QJ=J.xU();K $aB;K $fl;3E(6n(QJ.7Z)){1p 1:if(1M(J.6e)){$aB=$(\'<a 2u="qb-ui-51-4Z-29-1n 9H" 5h="#">[uM 1n]</a>\')}1i{$aB=$(\'<a 2u="qb-ui-51-4Z-29-1n" 5h="#">\'+J.6e+"</a>")}$aB.3y(1a(e){K $1f=$(J);$1f.3G();me.lC($1f,1,5r)});J.1f.2X($aB);if(!1M(J.6e)&&!J.dY){$aB.2o("9H");J.1f.2X(\' <2w 2u="uc-1n">QI 1n</2w>\')}1r;1p 2:if(1M(J.6e)){$aB=$(\'<a 2u="qb-ui-51-4Z-29-1n 9H" 5h="#">[uM 1n]</a>\')}1i{$aB=$(\'<a 2u="qb-ui-51-4Z-29-1n" 5h="#">\'+J.6e+"</a>")}if(!J.dY){$aB.2o("9H")}$aB.3y(1a(e){K $1f=$(J);$1f.3G();me.lC($1f,1,5r)});J.1f.2X($aB);J.1f.2X($("<2w> mI </2w>"));if(1M(J.7m)){$fl=$(\'<a 2u="qb-ui-51-4Z-29-1n 9H" 5h="#">[uM 1n]</a>\')}1i{$fl=$(\'<a 2u="qb-ui-51-4Z-29-1n" 5h="#">\'+J.7m+"</a>")}if(!J.h4){$fl.2o("9H")}$fl.3y(1a(e){K $1f=$(J);$1f.3G();me.lC($1f,2,5r)});J.1f.2X($fl);if(!1M(J.6e)&&!J.dY||!1M(J.7m)&&!J.h4){if(!1M(J.6e)&&!J.dY){$aB.2o("9H")}if(!1M(J.7m)&&!J.h4){$fl.2o("9H")}J.1f.2X(\' <2w 2u="uc-1n">QI 1n</2w>\')}1r}if(!1M(5r)&&5r.qG==QB.1d.2R.6p.5A){if(!1M($aB)){$aB.uP()}if(!1M($fl)){$fl.uP()}}1b J.1f},c9:1a(1N){J.1N(1N)}});QB.1d.xW=1U 6r({cA:QB.1d.pY,4W:QB.1d.2c.fi.xT,$1y:"eu.pM.1d.ey.pR.xQ, eu.pQ.1d.ey",aW:"",v5:1j,l3:1a(){K 1H=J.v0();1H["4a"]={1x:"gW",3H:"y8"};1b 1H},io:1a(){K 1P=$.4q(1U QB.1d.v9,1U QB.1d.2c.xQ);J.uZ(1P);1P.aW=J.aW;J.uY(1P);1b 1P},m6:1a(){1b J.v5},pX:1a(2a,dO){J.v5=!1M(J.aW)},lC:1a($1f){K me=J;K 2a="";if(!1M(J.aW)){2a=J.aW}K $1Z=$(\'<1Z 1n="\'+2a+\'">\').iW(1a(1K){if(1K.41==10||1K.41==13){1K.4o();J.57()}}).57(1a(){me.aW=$1Z.2a();me.6e=me.aW;me.he()}).fj($1f).3a()},7U:1a(){K me=J;J.1N(2v);if(J.1f==1c){J.1f=$(\'<2H 2u="qb-ui-51-4Z-6F 1h">\')}J.1f.1g("1h",J);J.1f.du();J.1f.2X($(\'<2H 2u="qb-ui-51-4Z-3h 7a">\'));K $lB;J.1f.2X(J.ur());if(1M(J.aW)){$lB=$(\'<a 2u="qb-ui-51-4Z-29-1n 9H" 5h="#">[uM 6L]</a>\')}1i{$lB=$(\'<a 2u="qb-ui-51-4Z-29-1n" 5h="#">\'+J.aW+"</a>")}if(!J.v5){$lB.2o("9H")}$lB.3y(1a(e){K $1f=$(J);$1f.3G();me.lC($1f)});J.1f.2X($lB);1b J.1f},c9:1a(1N){J.1N(1N)}});QB.1d.uH=1U 6r({cA:QB.1d.pY,4W:QB.1d.2c.fi.v4,$1y:"eu.pM.1d.ey.pR.xS, eu.pQ.1d.ey",a0:QB.1d.2R.av.9G,io:1a(){K 1P=$.4q(1U QB.1d.v9,1U QB.1d.2c.xS);J.uZ(1P);1P.a0=J.a0;J.uY(1P);1b 1P},m6:1a(){K 1J=1m;if(J.2W.1e==0&&J.4C!=1c){1b 1j}$.2g(J.2W,1a(1T,1h){if(!1h.m6()){1J=1j;1b 1j}});1b 1J},l3:1a(){K 1H=J.v0();1H["9J"]={1x:"uj",3H:"xR",2K:J.2W.1e<=0};1H["4a"]={1x:"gW",3H:"y8"};1b 1H},l4:1a(1h){K 1T=1h.96();if(1T==0){J.1f.68(".qb-ui-51-4Z-4z").la(1h.7U())}1i{1h.q1().1f.q4(1h.7U())}},wP:1a(){1b QB.1d.2c.iX[J.a0]},7U:1a(){J.1N(2v);if(J.1f==1c){J.1f=$(\'<2H 2u="qb-ui-51-4Z-6F cb">\')}J.1f.1g("1h",J);J.1f.du();J.1f.2X($(\'<2H 2u="qb-ui-51-4Z-3h bd">\'));K lg=J.wP();K $3v=$(\'<2H id="qb-ui-51-4Z-3v">\');$3v.2X(J.ur());K $a=$(\'<a 2u="qb-ui-51-4Z-29-wK" 5h="#">\'+lg.49+"</a>");$3v.2X($a);$3v.2X($("<2w> "+J.aj().lf+"</2w>"));J.1f.2X($3v);K $4z=$(\'<2H 2u="qb-ui-51-4Z-4z \'+lg.im+\'">\');$.2g(J.2W,1a(1T,1h){$4z.2X(1h.7U())});K tC=1U QB.1d.uJ(J);$4z.2X(tC.7U());J.1f.2X($4z);1b J.1f},c9:1a(1N){J.1N(1N);if(1N!=1c){3E(6n(1N.a0)){1p QB.1d.2R.av.9G:;1p QB.1d.2R.av.uf:J.a0=QB.1d.2R.av.pZ;1r;5m:J.a0=QB.1d.2R.av.9G}}}});QB.1d.uJ=1U 6r({cA:QB.1d.pY,4W:QB.1d.2c.fi.QK,l3:1a(){K 1H={"5l-6L-1o-5r":{1x:"eN 6L 1o 5r",3H:"5l-6L-1o-5r"},"5l-ud-6L":{1x:"eN ud 6L",3H:"5l-ud-6L"},"5B":"---------","5l-cb-of-uh":{1x:"eN cb of uh",3H:"5l-cb-of-uh"}};1b 1H},7U:1a(){if(J.1f==1c){J.1f=$(\'<2H 2u="qb-ui-51-4Z-6F 5l">\')}J.1f.1g("1h",J);J.1f.du();J.1f.2X($(\'<2H 2u="qb-ui-51-4Z-3h n9">\'));J.1f.2X($(\'<a 2u="qb-ui-51-4Z-29-2p-2t" 5h="#">[...]</a>\'));1b J.1f},y0:1a(1q,5r){K 1h=J.ya();1h.y6(5r);1h.he();1b 1m},c9:1a(1N){J.1N(1N)}});QB.1d.7V=1U 6r({cA:QB.1d.uH,$1y:"eu.pM.1d.ey.pR.wW, eu.pQ.1d.ey",4C:1c,q5:"QM",lf:"of gO XZ Y1",q7:1m,2W:[],lG:1a(1g){J.uw=1g.uw;J.2W=[];J.q9(1g);J.wN()},Qg:1a(){K me=J;K 5O=".qb-ui-51-4Z-3h";$.2G("5R",5O);$.2G({43:5O,4x:cp,6H:{5c:0},1O:"1W",1H:{},8R:1a($1O,e){K 1h=$1O.aN(".qb-ui-51-4Z-6F:4c").1g("1h");if(1h==1c){1b 1j}K 1H=1h.l3();if(1H==1c||4I.88(1H).1e==0){1b 1j}1b{1X:1a(1q){1h.uA(1q,1H[1q].1g)},1H:1H}}})},Q8:1a(){K me=J;K 5O=".qb-ui-51-4Z-29-7c";$.2G("5R",5O);$.2G({43:5O,4x:cp,6H:{5c:0},1O:"1W",1H:{},8R:1a($1O,e){K 1h=$1O.aN(".qb-ui-51-4Z-6F:4c").1g("1h");if(1h==1c){1b 1j}K 71=1h.QL(1h);if(71==1c||4I.88(71).1e==0){1b 1j}1b{1X:1a(1q){1h.Qu(1q)},1H:71}}})},Q7:1a(){K me=J;K 5O=".qb-ui-51-4Z-29-wK";$.2G("5R",5O);$.2G({43:5O,4x:cp,6H:{5c:0},1O:"1W",1H:{},8R:1a($1O,e){K 1h=$1O.aN(".qb-ui-51-4Z-6F:4c").1g("1h");if(1h==1c){1b 1j}K 71=1h.Qe(1h);if(71==1c||4I.88(71).1e==0){1b 1j}1b{1X:1a(1q){1h.Qd(1q)},1H:71}}})},Qc:1a(){K me=J;K 5O=".qb-ui-51-4Z-29-2p-2t";$.2G("5R",5O);K 1S=$.2G({43:5O,4x:cp,6H:{5c:0},1O:"1W",1H:{},c4:"Yp",8R:1a($1O,e){K 1h=$1O.aN(".qb-ui-51-4Z-6F:4c").1g("1h");if(1h==1c){1b 1j}K 1H=1h.Qf();if(1H==1c||4I.88(1H).1e==0){1b 1j}1b{1X:1a(1q){1h.y0(1q,1H[1q].1g)},1H:1H}}})},wN:1a(){K me=J;J.2s.du();J.2s.2X(J.7U());1b;K $4z=$(\'<2H 2u="qb-ui-51-4Z-4z 6D">\');$.2g(J.2W,1a(1T,1h){$4z.2X(1h.7U())});K Qh=1U QB.1d.uJ(J);$4z.2X(Qh.7U());J.2s.2X($4z);J.1f=$4z},l4:1a(1h){K 1T=1h.96();if(1T==0){J.1f.68(".qb-ui-51-4Z-4z").la(1h.7U())}1i{1h.q1().1f.q4(1h.7U())}},7U:1a(){if(J.1f==1c){J.1f=$(\'<2H 2u="qb-ui-51-4Z-6F cb 2s">\')}J.1f.1g("1h",J);J.1f.du();K lg=J.wP();K $3v=$(\'<2H id="qb-ui-51-4Z-3v">\');$3v.2X("<2w>"+J.aj().q5+" </2w>");K $a=$(\'<a 2u="qb-ui-51-4Z-29-wK" 5h="#">\'+lg.49+"</a>");$3v.2X($a);$3v.2X($("<2w> "+J.aj().lf+"</2w>"));J.1f.2X($3v);K $4z=$(\'<2H 2u="qb-ui-51-4Z-4z \'+lg.im+\'">\');$.2g(J.2W,1a(1T,1h){$4z.2X(1h.7U())});K tC=1U QB.1d.uJ(J);$4z.2X(tC.7U());J.1f.2X($4z);1b J.1f},io:1a(){K 1P=1U QB.1d.2c.wW;1P.a0=J.a0;1P.2W=[];$.2g(J.2W,1a(1T,1h){1P.2W.1I(1h.io())});1b 1P},5D:1a(1X){QB.1d.2m.3X.7V=J.io();QB.1d.2m.5D(1X)},7X:1a(1X){QB.1d.2m.3X.7V=1c;QB.1d.2m.5D(1X)},c9:1a(1N){J.2s=$("#qb-ui-51-4Z");if(J.2s.1e){if(!1M(J.2s.1l("lf"))){J.lf=J.2s.1l("lf")}if(!1M(J.2s.1l("q5"))){J.q5=J.2s.1l("q5")}if(!1M(J.2s.1l("q7"))){J.q7=J.2s.1l("q7").3P()=="1m"}}J.1N(1c);J.wN();J.Qg();J.Qc();J.Q8();J.Q7()}});QB.1d.7V.2l={Q9:"Q9",Qb:"Qb"};K 6d=4;K O4=1m;K tJ="mK/";K zE="1.11.0";K OE="2.99.99";K zH="1.11.0";K OB="2.99.99";K OC="x8 iI Qt.js is 5P bL.";K yF="2C Qa is 5P 9c.";K OF="Yd Qa is 5P 9c.";K OG="Qi 2C 6d v.$1 Qq! 2C v.$2 or Qp is Qr.";K Ox="Qi x9 6d v.$1 Qq! x9 v.$2 or Qp is Qr.";K Ow=\'Yg XD vU cZ. 2C mI x9 XC be bL vS vU gO "Qt.js"\';K Qs=\'XG mK XF is Xw. Qo gR Qk "Xz.6K" XQ.\';K mq=1j;K 5o=1a(){J.4f=1c;J.AN=1c;J.1Q=1c;J.3s=1c;J.4M=[];J.fC={};J.64=[];J.nC="";J.82=1c;J.v2=1c;J.mZ=1j;J.3o=1c;J.ie=1c;J.dF="";J.9I={};J.hD=1c;J.9S=1c;J.7V=1c;J.Al=1c;J.mi="";J.mC=1j;J.ac=0;J.wn=1m;J.nq={2J:{ik:{},c7:{}},2f:{ik:{},c7:{}}};J.uQ=1a(9N){K vN=QB.1d.2m.jl[9N];if(!1M(vN)){J.z4(1c,vN.2f);J.z1(1c,vN.2J)}QB.1d.2m.dz=9N};J.tN=1a(3R){K me=J;if(3R.dq=="Qj-Ql-Qn"){J.uQ(3R.3o)}if(QB.1d.2m.gk){6A(1a(){me.tN(3R)},50);1b}QB.1d.2m.3X.Ap.1I(3R);QB.1d.2m.5D()};J.P5=1a(e,29){K 1P=29.1P();if(29.8l){QB.1d.2f.7l.3z(29)}QB.1d.2m.Qm(1P);QB.1d.2m.5D()};J.yZ=1a(e,1g){K 3R=1g.3R;K 1h=1g.1h;QB.1d.2m.3X.fU.cX=3R;QB.1d.2m.3X.fU.c7=1h.1g;QB.1d.2m.3X.fU.Pi=1g.vO;QB.1d.2m.3X.fU.Od="1Q";QB.1d.2m.5D()};J.z7=1a(e,1v){K 1B=1v.1B;K 2p=1v.2p;K 98=1v.98;K Ag=QB.1d.2f.Ay(1B.Ah);if(Ag==1c){$.2g(1B.5V,1a(i,f){if(gg(f.7g,2p.7g)){f.eU=1m}});K 1v={1F:1B,98:98};J.mo(e,1v)}1i{Ag.6y("lI",2p.7g,1m,1m)}};J.mo=1a(e,1v){1v.1F.7d=1m;K 1w=J.dv(1v);K 7T=1v.1F;if(1v.98&&1v.98.1e>=2){7T.X=1v.98[0];7T.Y=1v.98[1]}K 5h=$(1w).1g("me");if(5h!=1c){7T.6k=5h.6k}if(J.1Q!=1c){J.1Q.1O(QB.1d.2f.2l.Ai,1w)}QB.1d.2m.Oc(7T);QB.1d.2m.5D()};J.z0=1a(e,1g){K 1w=$(1g);K 7T=1w.1g("4w");QB.1d.2m.Oe(7T);QB.1d.2m.5D()};J.P3=1a(e,1g){K 1w=$(1g);K 7T=1w.1g("4w");QB.1d.2m.Og(7T);QB.1d.2m.5D()};J.P4=1a(e,1g){QB.1d.2m.nb([1g.1G.1P()]);QB.1d.2m.Aq()};J.P0=1a(e,1g){K 4A=1g.4A;QB.1d.2m.nb([4A]);QB.1d.2m.Aq()};J.O7=1a(1B,2p){K 3e="";3e+=!1M(1B.l7)?1B.l7:1B.49;3e+="."+2p.7g;1b 3e};J.Av=1a(e,1g){QB.1d.2m.Of(1g);QB.1d.2m.5D()};J.Au=1a(e,29){K 8P=QB.1d.2f.Ay(29.AA);if(8P!=1c){K $1Q=$("#qb-ui-1Q");if(8P[0].8z<$1Q.4P()||(8P[0].8X<$1Q.4t()||(8P[0].8z+8P.1k()>$1Q.4P()+$1Q.1k()||8P[0].8X+8P.1s()>$1Q.4t()+$1Q.1s()))){K x=8P[0].8z+8P.1k()/ 2 - $1Q.1k() /2;K y=8P[0].8X+8P.1s()/ 2 - $1Q.1s() /2;$1Q.4D({4P:x,4t:y},o7)}8P.2h(".qb-ui-1B-e3").Ob("vf",{},vx).Ob("vf",{},vx);1b}K 1v=1c;if(29.lx==1c){1v={1F:{3o:29.AA,69:29.69,cO:29}}}1i{29.lx.cO=29;1v={1F:29.lx}}J.mo(1c,1v)};J.At=1a(e,d){K 5w=d.5w;K 3b=[];J.3s.8y("Az");1o(K i=0;i<5w.1e;i++){K 1g=5w[i];K 3Q=1g.3Q;K 3e=J.O7(1g.1N,1g.1F);K wt=J.3s.8y("wq",3e);1o(K j=0;j<wt.1e;j++){K 1G=wt[j];if(3Q){if(1G.gR(3Q)){3b.1I(1G.1P())}}1i{if(1G.O6()){if(1G.gR(3Q)){3b.1I(1G.1P())}}1i{3b.1I(1G.1P());J.3s.8y("jk",1G)}}}if(3Q&&wt.1e==0){K wC=1U QB.1d.2c.As;wC.9x=3e;wC.ck=3Q;K O8=J.3s.8y("lz",wC);3b.1I(O8.1P())}}J.3s.8y("Ar")};J.dv=1a(1v,67){K 1w=QB.1d.2f.dv(1v,67);if(67===2r||67==1c){1w.4E(QB.1d.79.2l.mg,J.At,J);1w.4E(QB.1d.79.2l.mm,J.Av,J);1w.4E(QB.1d.79.2l.mk,J.Au,J);1w.4E(QB.1d.79.2l.nP,J.fW,J)}J.3s.8y("nT");1b 1w};J.jh=1a(1v,67,jb){K 1w=QB.1d.2f.jh(1v,67,jb);J.3s.8y("nT");1b 1w};J.uK=1a(1w){};J.nS=1a(){QB.1d.2m.3X.jg.1I("nS");J.Af();J.AD();QB.1d.2m.5D()};J.OP=1a(){QB.1d.2m.3X.jg.1I("nS");J.Af();QB.1d.2m.A0(1c);QB.1d.2m.5D()};J.Af=1a(){QB.1d.2m.3X.7E=1U QB.1d.2c.nN;QB.1d.2m.3X.7E.cX="4b"};J.NW=1a(){if(J.5k.2a()==J.nC){1b}J.nC=J.5k.2a();J.wn=1m;J.OW();$(J).1O(QB.1d.zz.zy,J.nC);$(".qb-ui-5k-7k-3h-3t").4T()};J.AD=1a(){K 9r=1c;if(J.5k!=1c&&(J.5k.1e>0&&J.5k.is(":5y"))){9r=J.5k.2a()}1i{9r=J.v2}J.82=9r;QB.1d.2m.A0(J.82);1b 1m};J.Oa=1a(){QB.1d.2m.3X.9S=J.9S;1b 1m};J.mE=1a(28,bC){K me=J;if(bC!==2r){J.dJ.3S("9H 5d wJ");J.dJ.2o(bC)}if(!1M(28)&&28!=" "){J.dJ.3O(28);$("#qb-ui-5k-AT").2o("O9").3S("Oh")}1i{$("#qb-ui-5k-AT").3S("O9").2o("Oh");6A(1a(){me.dJ.3O("&2n;")},9a)}};J.yz=1a(28){J.dJ.3S("9H 5d");J.dJ.2o("wJ");J.mE(28)};J.YU=1a(28){J.dJ.3S("5d wJ");J.dJ.2o("9H");J.mE(28)};J.YX=1a(28){J.dJ.3S("9H wJ");J.dJ.2o("5d");J.mE(28)};J.OV=1a(){if(J.wn){if(QB.1d.2m.lJ!=J.5k.2a()){QB.1d.2m.lJ=J.5k.2a()}}};J.NU=1a(e,1F){K 1v={1F:1F};J.mo(1c,1v)};J.fW=1a(e,9N){K me=J;if(QB.1d.2m.ac>0){6A(1a(){me.fW(e,9N)},100);1b}if(!1M(9N)){J.uQ(9N);QB.1d.2m.3X.dz=9N;QB.1d.2m.5D()}};J.NZ=1a(e,3R){QB.1d.5o.tN(3R)};J.OX=1a(e,1g){J.4f.lG(1g)};J.Op=1a(4M){if(4M==1c){1b 1j}if(4M.1e==0){1b 1j}QB.1d.2f.7l.tM();1o(K 1T=0;1T<4M.1e;1T++){K 7x=4M[1T];K 9E=1c;if(7x.53!=1c&&7x.56!=1c){9E=QB.1d.2f.7l.tf(7x.53.9z,7x.56.9z)}if(9E==1c){QB.1d.2f.7l.o6(7x)}1i{9E.o9=1j;QB.1d.2f.7l.tj(9E,7x)}}QB.1d.2f.7l.tG()};J.Oq=1a(lq){if(lq==1c){1b}K 9f=lq.3N();K kr=[];K kE=[];K kp=[];K me=J;1o(K i=QB.1d.2f.64.1e-1;i>=0;i--){K 1w=QB.1d.2f.64[i];K kG=1w.1g("1F");K eg=1c;1o(K j=9f.1e-1;j>=0;j--){K 8u=9f[j];if(QB.1d.2f.A3(kG,8u)){9f.3z(j);eg=8u;1r}}if(eg==1c){1o(K j=9f.1e-1;j>=0;j--){K 8u=9f[j];if(QB.1d.2f.A2(kG,8u)){9f.3z(j);eg=8u;1r}}}if(eg!=1c){kE.1I({1P:8u,67:1w})}1i{kr.1I(1w)}}$.2g(9f,1a(1T,8u){kp.1I(8u)});$.2g(kE,1a(1T,1w){me.jh({1F:1w.1P},1w.67,1m)});$.2g(kr,1a(1T,1w){QB.1d.2f.uK(1w,1m)});$.2g(kp,1a(1T,1w){me.dv({1F:1w})})};J.Bf=1a(kq,1g,db){if(!1M(kq.ik[db])){1g=zU(kq.c7,1g);4a kq.ik[db]}if(!4I.88(kq.ik).1e){1g=zU(kq.c7,1g)}1b 1g};J.z4=1a(e,1g,db){K 1Q=J.Bf(QB.1d.5o.nq.2f,1g,db);if(1Q==1c){1b}J.Oq(1Q.gE);J.Op(1Q.7l);if(1Q.uI!=1c){QB.1d.2f.Os(1Q.uI.eG)}if($("#qb-ui-1Q").is(":5y")){QB.1d.2f.dG()}};J.OZ=1a(e,a7){if(J.a7!=1c){J.a7.Ou(a7)}};J.P6=1a(e,dI){K me=J;if(1M(dI)){1b}J.hD=dI;if(J.ie!=1c){J.ie.AW(J.hD)}if(J.a7!=1c){J.a7.Ot(J.hD)}};J.Pf=1a(e,1S){if(J.2f!=1c){J.2f.ec(1S.2f);J.2f.Oo(1S.Oj);J.2f.Oi(1S.d1,1S.Ol)}J.3s.8y("ec",1S.2J);J.ec(1S.kR,"#qb-ui-1Q-bU-n9-3h");J.ec(1S.eN,"#qb-ui-1Q-9w-n9-3h")};J.Pe=1a(e,uz){if(uz==1c){1b}K me=J;K tX=0;if(J.bM.1e>0){tX=J.bM[J.bM.1e-1].Id}1o(K 1T=0;1T<uz.2W.1e;1T++){K 8a=uz.2W[1T];if(tX==1c||8a.Id>tX){J.bM.1I(8a);K A9="Za";if(8a.4W==2){A9="Zc"}if(8a.4W==3){A9="9T"}K Ze=uB(8a.B3).6M("H:i:s")}}};J.Pd=1a(e,5d){J.nn=5d;J.mi="";if(5d!=1c){J.mi=5d.fE}if(5d==1c){1b}if(1M(5d.fE)){1b}K 3t=$(".qb-ui-5k-7k-3h-3t");3t.4T();K 3v=$(".qb-ui-5k-7k-3h-3v");K 8a=\'<2H 2u="ti"><p>\'+5d.fE+"</p></2H>";K 8F=\'<2H 2u="7F">\'+\'<1Z 1y="3h" 2u="ui-4u-5m" id="5d-7F-go-to-2N" 1n="Go to 5d 2N">\'+\'<1Z 1y="3h" 2u="ui-4u-5m" id="5d-7F-9J" 1n="uj gP">\'+\'<1Z 1y="3h" 2u="ui-4u-5m" id="5d-7F-P2" 1n="Zd ue to gO cB gP.">\'+"</2H>";3t.2o("5d");3t.2o("uR");3v.3O("<2H>"+8a+8F+"</2H>")};J.NX=1a(){J.Om();1b 1j};J.Ov=1a(){J.5k.2a("");J.tZ();1b 1j};J.P1=1a(){J.5k.2a(J.NR);J.tZ();1b 1j};J.yX=1a(){K 3t=$(".qb-ui-5k-7k-3h-3t");3t.3S("5d");3t.3S("uR");K 3v=$(".qb-ui-5k-7k-3h-3v");K 8a=\'<2H 2u="ti"><p>\'+QB.1d.2c.4K.58.On+\'</p><2H 2u="ti">\';3v.3O(8a)};J.Om=1a(){K 5d=J.nn;K 3t=$(".qb-ui-5k-7k-3h-3t");3t.3S("uR");if(5d!=1c&&5d.O5!=1c){K 1Z=$("#qb-ui-5k 7P");if(1Z.1e==0){1b}1i{1Z=1Z[0]}K 3r=5d.O5.3r;if(1Z.NP){1Z.3a();1Z.NP(3r,3r)}1i{if(1Z.B0){K hk=1Z.B0();hk.YB(1m);hk.YE("NO",3r);hk.YD("NO",3r);hk.2t()}}}};J.z1=1a(e,1g,db){if(1g==1c||1g.bu==1c){1b}K 3s=J.Bf(QB.1d.5o.nq.2J,1g,db);if(3s==1c){1b}K me=J;me.3s.8y("NQ",3s);me.3s.8y("NS")};J.Ph=1a(e,9r){if(7H(e)=="4i"&&9r===2r){9r=e}if(9r!==" "&&1M(9r)){1b}J.5k.2a(9r);J.nC=J.5k.2a();J.v2=9r;QB.1d.2m.lJ=9r;J.yX();if(1M(J.mi)){$(".qb-ui-5k-7k-3h-3t").3G()}if(!1M(9r)){J.NR=9r}};J.OY=1a(e,aj){if(1M(aj)){1b}if(J.7V==1c){1b}J.7V.lG(aj)};J.Ys=1a(1X){J.AF(1a(1g){if(1X&&7H(1X)=="1a"){1X(1g.gp)}})};J.Yr=1a(1z,1X){QB.1d.2m.3X.gp=1z;1b QB.1d.2m.v7(1X)};J.NN=1a(NJ,NI){};J.yQ=1a(e,1g){K 1G=1g.1G;K 1q=1g.1q;K 5G=1g.5G;K 4e=1g.4e;K 3b=[];K 4A=1G.1P();4A.NK=1g.gQ;4A.Bd=1q;4A.Bc=4e;if(1G.8l){K 3e=4A.9x;if(!1M(3e)&&3e.4S(".")!=-1){K 8U=3e.7r(0,3e.4S("."));K 9q=3e.7r(3e.4S(".")+1);K 1B=QB.1d.2f.ni(8U);if(1B!=1c){1B.6y("lI",9q,1j)}}}3E(1q){1p 1R.2j.1V:K 3e=4A.9x;if(!1M(3e)&&3e.4S(".")!=-1){K 8U=3e.7r(0,3e.4S("."));K 9q=3e.7r(3e.4S(".")+1);K 1B=QB.1d.2f.ni(8U);if(1B!=1c){1B.6y("lI",9q,4e)}}3b.1I(4A);1r;1p 1R.2j.3e:K 1V=4A.ck;if(1M(5G)&&5G!=4e){1V=1m;4A.ck=1m}K 3e=5G;if(!1M(3e)&&3e.4S(".")!=-1){K 8U=3e.7r(0,3e.4S("."));K 9q=3e.7r(3e.4S(".")+1);K 1B=QB.1d.2f.ni(8U);if(1B!=1c){1B.6y("lI",9q,1j)}}3e=4e;if(1V&&(!1M(3e)&&3e.4S(".")!=-1)){K 8U=3e.7r(0,3e.4S("."));K 9q=3e.7r(3e.4S(".")+1);K 1B=QB.1d.2f.ni(8U);if(1B!=1c){1B.6y("lI",9q,1V)}}3b.1I(4A);1r;1p 1R.2j.9v:;1p 1R.2j.73:K AX=J.3s.8y("NM");1o(K i=0;i<AX.1e;i++){3b.1I(AX[i].1P())}1r;5m:3b.1I(4A)}QB.1d.2m.nb(3b);QB.1d.2m.5D()};J.AG=1a(71){if(71==1c||71.1e==0){1b 1c}K 1H={};K 5g;1o(K i=0;i<71.1e;i++){5g=71[i];if(5g.49!=1c&&5g.49.7r(0,1)=="-"){1H[5g.dq]=5g.49}1i{1H[5g.dq]={1x:5g.49,3H:5g.dq,1H:J.AG(5g.2W),1g:5g.3o}}}1b 1H};J.ec=1a(1S,5O){K me=J;if(1M(1S)||1S.2W.1e==0){1b}K 1H=J.AG(1S.2W);K $5O=$(5O);if($5O.1e>0){$5O[0].NL=0}$5O.bk().1l("NL",0).8f(1a(e){if(e.41==13||e.41==32){$(e.3g).1O("3y")}});$.2G("5R",5O);$.2G({43:5O,4x:cp,6H:{5c:0},1X:1a(3R,1v){K 1h=1c;6X{1h=1v.$1V.1g().2G.1H[3R]}6U(e){}6A(1a(){me.yZ(J,{3R:3R,1h:1h})},0)},1H:1H});$5O.3y(1a(){$(5O).2G();$1S=$(5O).2G("1f");if($1S){$1S.2N({my:"1W 1C",at:"1W 4v",of:J})}})};J.YP=1a(1X){if(J.7V.m6()){J.7V.5D(1X);1b 1m}1i{1b 1j}};J.NT=1a(1X){QB.1d.2m.5D(1X)};J.YS=1a(1X){J.uQ(QB.1d.2m.lS);QB.1d.2m.3X.dz=QB.1d.2m.lS;QB.1d.2m.5D(1X)};J.YR=1a(1X){QB.1d.2m.3X.7V=1c;QB.1d.2m.5D(1X)};J.NY=1a(1X){$(".qb-ui-5k-7k-3h-3t.5d").2o("uR")};J.tZ=1a(1X){$(".qb-ui-5k-7k-3h").2o("O1");J.u3(1a(){$(".qb-ui-5k-7k-3h").3S("O1")});1b 1j};J.u3=1a(1X){J.mi="";J.AD();QB.1d.2m.5D(1X);$(J).1O(QB.1d.zz.zA);1b 1j};J.AF=1a(1X){K me=J;if(J.ac<0){J.ac=0}if(J.ac>0){6A(1a(){me.AF(1X)},100);1b}J.u3(1X)};J.7X=1a(1X){QB.1d.2m.7X(1X)};J.ia=1a(1X){QB.1d.2m.ia(1X)};J.8m=1a(){mq=!($(".h9").1l("mq")===2r);if(!mq){J.OU()}QB.1d.2m.cz=$(".h9").1l("cz");O0=$(".h9").1l("O2")=="1m";AR=$(".h9").1l("Wd")=="1m";J.mZ=$(".h9").1l("mZ")=="1m";K AL=$(".h9").1l("Wg");if(!1M(AL)){tJ=AL}J.tI=$("#qb-ui-1Q").4H("tI");K me=J;J.bM=[];J.bL=1j;if(!J.mZ){$.7k(tJ+"?3R=W5",tF,1a(1g){})}J.dJ=$("#qb-ui-5k-AT-ti");J.3s=$("#qb-ui-3s").8y();J.2f=QB.1d.2f.8m();J.1Q=J.2f!=1c?J.2f.1Q:1c;J.4f=1U QB.1d.7E;J.ie=1c;J.a7=1c;if(O4){J.ie=1U QB.1d.mM;J.a7=1U QB.1d.aA}if(J.ie!=1c){J.O3=J.ie.AW();J.O3.4E(QB.1d.mM.2l.te,J.fW,J)}if(J.a7!=1c){J.a7.3f.4E(QB.1d.aA.2l.tl,J.fW,J);J.a7.3f.4E(QB.1d.aA.2l.ts,J.NZ,J)}J.AN=J.4f.NV();J.AN.4E(QB.1d.7E.2l.tm,J.NU,J);J.5k=$("#qb-ui-5k 7P");if(AR){J.5k.1l["AP"]="AP"}if(!AR){J.5k.4E("u2 57 u2 1Z W9",J.NW,J);$("#qb-ui-5k-7F-7k").4E("3y",J.u3,J)}$("#qb-ui-5k-7F-ia").4E("3y",1a(){QB.1d.2m.ia()},J);$(".qb-ui-5k-7k-3h-3t").3G();$(".qb-ui-5k-7k-3h").4E("3y",J.tZ,J);$(".qb-ui-5k-7k-3h").4E("lX",J.NY,J);$(2E).on("3y","#5d-7F-go-to-2N",1a(){1b me.NX()});$(2E).on("3y","#5d-7F-9J",1a(){1b me.Ov()});$(2E).on("3y","#5d-7F-P2",1a(){1b me.P1()});J.yX();if(J.1Q!=1c){J.1Q.4E(QB.1d.2f.2l.u6,J.mo,J);J.1Q.4E(QB.1d.2f.2l.u7,J.z0,J);J.1Q.4E(QB.1d.2f.2l.u8,J.P3,J);J.1Q.4E(QB.1d.2f.2l.tY,J.z7,J);J.1Q.4E(QB.1d.2f.2l.tO,J.yZ,J);$("#qb-ui-1Q").4E(QB.1d.2f.cO.2l.o4,J.P5,J)}J.3s.4E(QB.1d.2J.2l.fN,J.yQ,J);J.3s.4E(QB.1d.2J.2l.yS,J.P4,J);J.3s.4E(QB.1d.2J.2l.yT,J.P0,J);J.3s.4E(QB.1d.2J.2l.tW,J.z0,J);J.3s.4E(QB.1d.2J.2l.tS,J.z7,J);J.OW=$.hK(J.OV,o7,J);J.7V=1U QB.1d.7V;QB.1d.2m.dA.2O(QB.1d.2m.dA.2l.6W,J.OX,J);QB.1d.2m.aA.2O(QB.1d.2m.aA.2l.6W,J.OZ,J);QB.1d.2m.2J.2O(QB.1d.2m.2J.2l.6W,J.z1,J);QB.1d.2m.2f.2O(QB.1d.2m.2f.2l.6W,J.z4,J);QB.1d.2m.7V.2O(QB.1d.2m.7V.2l.6W,J.OY,J);QB.1d.2m.2O(QB.1d.2m.2l.w5,J.P6,J);QB.1d.2m.2O(QB.1d.2m.2l.wm,J.Pe,J);QB.1d.2m.2O(QB.1d.2m.2l.wf,J.Pd,J);QB.1d.2m.2O(QB.1d.2m.2l.wi,J.Pf,J);QB.1d.2m.2O(QB.1d.2m.2l.wh,J.Ph,J);QB.1d.2m.dA.2O(QB.1d.2m.2l.wg,1a(e,1g){J.yz(QB.1d.2c.4K.58.Pg)},J);QB.1d.2m.2O(QB.1d.2m.2l.6W,1a(e,1g){if(1M(1g)){1b}J.wn=1j;J.dF=1g.dF;if(!1M(1g.9S)){J.9S=1g.9S}if(!1M(1g.gp)){J.gp=1g.gp}if(!1M(1g.9I)){J.9I=1g.9I;if(!1M(1g.9I.Pc)&&!1g.9I.Pc){$("#qb-ui-1Q-bU-yD-P7").3G()}if(!1M(1g.9I.P8)&&!1g.9I.P8){$("#qb-ui-1Q-bU-VA-P7").3G()}me.3s.8y("P9")}if(!1M(1g.hR)){J.hR=1g.hR}J.mE(1g.fE.ag,1g.fE.6r)},J);QB.1d.2m.dA.2O(QB.1d.2m.dA.2l.mF,1a(e,1g){K yv=$("#d3-80",1N.2E.3x);if(yv.1e){yv.3G()}},J);$(".e5-1O","#qb-ui-1Q-bU").3y(1a(){me.Pb()})};J.Pb=1a(5y){if(5y==2r){$(".e5-6F","#qb-ui-1Q-bU").8Q("e5-4u-Pa e5-4u-dS");1b}if(5y){$(".e5-6F","#qb-ui-1Q-bU").3S("e5-4u-dS").2o("e5-4u-")}1i{$(".e5-6F","#qb-ui-1Q-bU").3S("e5-4u-Pa").2o("e5-4u-dS")}};J.eK=1a(7s){1b 6n(7s.3p(/(\\.|^)(\\d)(?=\\.|$)/g,"$10$2").3p(/(\\d+)\\.(?:(\\d+)\\.*)/,"$1.$2"))};J.OU=1a(){if($(".h9").1e==0){1b}if(7H(OD)=="2r"){fS(OC)}if(!($&&($.fn&&$.fn.fL))){fS(yF)}if(!($&&($.fn&&$.fn.fL))){fS(yF)}1i{if(J.eK($.fn.fL)<J.eK(zE)||J.eK($.fn.fL)>J.eK(OE)){fS(OG.3p("$1",$.fn.fL).3p("$2",zE))}}if(!($&&($.ui&&$.ui.6d))){fS(OF)}1i{if(J.eK($.ui.6d)<J.eK(zH)||J.eK($.ui.6d)>J.eK(OB)){fS(Ox.3p("$1",$.ui.6d).3p("$2",zH))}}if($&&($.fn&&$.fn.fL)){if($.fn.cd===2r){fS(Ow)}}}};QB.1d.zz={Oy:"Oy",OA:"OA",zy:"zy",zA:"zA"};if(!3n.ch){3n.ch={}}if(!3n.ch.l9){3n.ch.l9=1a(){}}if(!3n.ch.zB){3n.ch.zB=1a(){}}K qA;K lw=1c;K va=0;1a zI(){if(va==1c){va=0}1b va++}2C(2E).X6(1a(){$.fn.bk=$.fn.3h;if($.fn.3h&&$.fn.3h.Oz){K OH=$.fn.3h.Oz();$.fn.bk=$.fn.3h;$.fn.3h=OH}QB.1d.5o=1U 5o;QB.1d.5o.8m();qA=QB.1d.5o;OQ();qA.OP()});$.ui.7f.2V.WF=1a(1K,vZ){J.2N=J.OR(1K);J.OT=J.OS("8H");if(J.1v.ze){if(J.1v.5t){J.1v.5t()}}1i{if(!vZ){K ui=J.f8();if(J.89("5t",1K,ui)===1j){J.OO({});1b 1j}J.2N=ui.2N}}if(!J.1v.ap||J.1v.ap!="y"){J.4V[0].2x.1W=J.2N.1W+"px"}if(!J.1v.ap||J.1v.ap!="x"){J.4V[0].2x.1C=J.2N.1C+"px"}if($.ui.eL){$.ui.eL.5t(J,1K)}1b 1j};$.ui.7f.2V.WH=1a(1K,vZ){if(J.WK){J.2d.1N=J.WJ()}J.2N=J.OR(1K,1m);J.OT=J.OS("8H");if(J.1v.ze){if(J.1v.5t){J.1v.5t()}}1i{if(!vZ){K ui=J.f8();if(J.89("5t",1K,ui)===1j){J.OO({});1b 1j}J.2N=ui.2N}}J.4V[0].2x.1W=J.2N.1W+"px";J.4V[0].2x.1C=J.2N.1C+"px";if($.ui.eL){$.ui.eL.5t(J,1K)}1b 1j};2C.fn.WL=1a(a9){K 1f=J;if(!1f){1b}K 3g=$(1f);if(3g.is(":5y")==1j){1b 1j}a9=$(a9||3n);K 1C=a9.4t();K bJ=1C+a9.1s();K zm=3g.2d().1C;K OJ=zm+3g.1s();1b OJ<=bJ&&zm>=1C};1a WT($9Y){K kU=$(3n).4t(),oP=kU+$(3n).1s(),1C=$9Y.2d().1C,4v=1C+$9Y.6B(1m);1b 1C>kU&&1C<oP||(4v>kU&&4v<oP||(kU>=1C&&kU<=4v||oP>=1C&&oP<=4v))}1a ON(1f){K 2d=0;44(1f){2d+=1f["8X"];1f=1f.ep}1b 2d}K OI=1a(el,OL){K 1C=el.oo().1C,4p,el=el.3w;do{4p=el.oo();if(1C<=4p.4v===1j){1b 1j}if(el==OL){1b 1m}el=el.3w}44(el!=2E.3x);1b 1C<=2E.8s.kN};1a WP(vM){if(!vM){1b 1j}K zq=ON(vM);K OM=zq+vM.8v;K pf=0;if(2E.8s.4t){pf=2E.8s.4t}1i{pf=2E.3x.4t}K Rr=pf+3n.zr;1b OM>=pf&&zq<=Rr};',62,4162,'|||||||||||||||||||||||||||||||||||||||||||||this|var||||||||||||||||||||||||||function|return|null|Web|length|element|data|item|else|false|width|attr|true|value|for|case|key|break|height||node|options|obj|name|type|params|res|table|top|opt||object|row|items|push|result|event|path|isEmpty|parent|trigger|dto|canvas|MetaData|menu|index|new|selected|left|callback|_|input|||||||||text|link|val|stroke|Dto|offset|fill|Canvas|each|find|attrs|FieldParamType|args|Events|Core|nbsp|addClass|field|out|undefined|root|select|class|arguments|span|style|self||typeof|call|jQuery|from|document|css|contextMenu|div|paper|Grid|disabled|anim|context|position|bind|that|opacity|Enum|values|start|font|prototype|Items|append|option|settings||eve|||||||||focus|rows|doc|bbox|expression|control|target|button|apply|none|match|elproto|Math|window|Guid|replace|next|pos|grid|container|selectmenu|label|parentNode|body|click|remove|has|dialog|split|toString|switch|color|hide|icon|prev|clr|Array|concat|math|slice|html|toLowerCase|checked|action|removeClass|transform|toFloat|size|appendChild|ExchangeObject|rgb|svg||keyCode|array|selector|while|Utils|gradient|max||Name|delete|get|first|Str|newValue|tree|elem|method|string|raphael|src|abs|resizable|end|preventDefault|rect|extend|arg|tableDnD|scrollTop|state|bottom|metaDataObject|zIndex|appendTo|hitarea|rowDto|deg|Parent|animate|bindEx|diff|filter|hasClass|Object|toFixed|Localizer|display|links|events|matrix|scrollLeft|arrows|_engine|indexOf|show|round|helper|Type|handle|list|builder||criteria||Left|join||Right|blur|Strings|CLASSES|mmax|url|duration|error|contextmenu|constructor|dtoItem|href|animationElements|newIndex|editor|add|default|box|Application|removed|win|column|dots|drag|uiDialog|splice|fields|pathArray|visible||Date|separator|auto|sendDataToServer|String|rotate|oldValue|min|current|cells|resize|rowChanged|set|cell|menuSelector|not|aria|destroy|stop|len|close|Fields|columnWidths|p1x|easing|minHeight||parseInt|textControl|_editControl|Objects|clone|vml|existingObject|children|Caption|mmin|mdo|Criteria|version|Value1|wrapper|pow|prop|p1y|hex|TempId|tagName|title|Number|paperproto|KindOfField|tabindex|Class|clip|c1y|count|layer|c1x|newelement|qbtable|point|setTimeout|outerHeight|_key|all|mouseup|block|http|animation|ConditionOperator|getBBox|config|condition|format|status|hidden|att|hover|CriteriaBuilderConditionOperator|Column|zoom|catch|editControl|DataReceived|try|setproto|bbox2|subQueries|menuItems|open|sortingOrder|temp||stopPropagation|__set__|pageX|TableObject|dot|bbox1|operation|IsNew|now|draggable|NameStr|ValueKinds|c2y|getValue|refresh|Links|Value2|insertBefore|implement|tbody|c2x|substr|str|header|last|mousedown|p2y|linkDto|names|newObject|thead|removeChild|p2x|_parent|Tree|controls|angle|typeOf|lineCoord|pageY|guid|JoinType|_g|scale|right|textarea|create|firstChild|crp|dataSource|buildElement|CriteriaBuilder|handler|update|dragi|ValuesCount|overlay|hasOwnProperty|SQL|Operator|subElement|pth|currentTrigger|Visible|keys|_trigger|msg|targ|ret|columns|graphics|keydown|styles|outerWidth|dirty|currentTarget|maxHeight|IsDeleted|init|setValue|widget|cache|unbind|checkbox|documentElement|colspan|newDatasourceDto|offsetHeight|_editBlock|selectOptionData|QBGrid|offsetLeft|family|percents|nodeName|command|_ulwrapdiv|buttons|tmp|absolute|_optionLis|scroll|path2|skew|minWidth|DrawOrder|destX|existing|toggleClass|build|cellName|containment|tableName|pathString|Alias|offsetTop|radio|toUpperCase||selectDto|360|throw|sin|vector|Index||coordinates||1E3|image|found|matches|face|newObjects|hasScrollY|bg_iframe|timer|bez1|forEach|par|customAttributes|cos|rad|colgroup|fieldName|sql|active|test|tabbable|sorting|subquery|Expression|bez2|FieldGuid|currentLayout|dasharray|cellIndex|RequestID|existingLink|caller|All|warning|SyntaxProviderData|clear|namespace|objectBorder|contextMenuRoot|unionSubQuery|menus|red|Function|mooType|QueryProperties|Error|circle|touch|jPag|ctx|ele|matrixproto|JunctionType||||el2|headerCell|wrapperId|navBar|sqrt|scope|mousemove|Element|Lock|amt|toInt|SmartPush|Text|path1|proxy|criteriaBuilder||weight|||trg|axis|EditableSelectStatic||||selects|JunctionItemType||||colour|NavBar|valueElement1|elements|dragObject|scrollY|meshY|u2005|alias|number|u2000|xa0|u1680|isArray|parents|u2004|u2003|u202f|meshX|u180e|u200a|u2001|hoveract|Condition|graph|x09|u2007|x0c|x0b|ellipse|x0a|Raphael|u2008|icons|isFunction|x20|percent|u2009||methods|corner||blue||u2006|charAt|x0d|jQButton|u2028|expandable|u2029|u3000|map|hasExpressionBuilder||u205f|cnvs|Rows|total|ExpressionSubQueries|||tt1|ConditionSubQueries|namespaces|cssClass|source|arrow|headerCells|u2002|tstr|continue|bot|fit|loaded|Messages|checkTrigger|navigator|green|setAttribute|con|_value|hasChanges|navbar|maxWidth|Prefix|counter|tableDnDConfig|cacher|subkey|||content|className|isNaN|addEventListener|Data|pathClone|initialize||group|shift|valEx||_selectedOptionLi|selectedIndex|console|||Select|valueHTML|parseFloat|inFocus||6E3|scrollable|defaults|||instances|headerRow|currentTable|||SessionID|Extends|previous|collapsable|thisObject|getTotalLength|markerCounter|getPath|current_value|180|clientY|editable|addArrow|fieldsContainer|line|Link|glow|define|dialogId|_cellEditEnd|clientX|getRGB|itemsPageSize|img|Action|linecap|order|groupingCriterion|Table||iframe|000|overflow|direction|createNode|getElementsByTagName|aggregate|filtredItems|requestID|shape||DatasourceGuid||textpath|toggle|||minContentHeight|eventName|SVG|pattern||defaultWidth|Key|Inner|queue|Postfix|empty|addObject|fillpos|||ActiveUnionSubQuery|MetadataTree|droppable|createElement|token|times|SyntaxProviderName|redraw|hasScroll|queryStructure|statusBar|optionDto|factory|pop|tlen|valueNumber|move|RegExp|nextIndex|collapsed|JSON|off|originalEvent|attrs2|titleBar|Value1IsValid|support|grouping|isInput|xlink|titlebar|rec|collapsible|over|fonts|down|alpha|change|getKeyName|updateContextMenu|stopImmediatePropagation|_events||matchDatasourceDto|Outer|floor|fontSize|scrollTo||||marker|offsetParent||tt2||ids|ActiveDatabaseSoftware||listeners|_drag|Server|currentPage|tolerance|editableSelectOverlay|defs|_viewBlock||linkBox|Active|Animation|nonContentHeight|setFillAndStroke|versionToNumber|ddmanager|instanceof|Add|sib|Matrix|methodname|isEnd|userAgent|BeforeCustomEditCell|IsSelected|getNextTabbable|bgiframe|myAt|scaley|handles|docElem|||border|marked|easyeasy|hasSubQuery|getPrevTabbable|_uiHash|_getWidth|time|to2|scrollX|getDate|trueIndex|resized_widths|activeItem|round1000|CriteriaBuilderItemType|insertAfter|UseCustomExpressionBuilder|valueElement2|hover_css||mouseout|Aggregate|json|255|visibleMenu|Cancel|getTimezoneOffset|properties|pathi|||UnionSubQuery|defaultHeight|tableBox|dialogs|results|Message|inver|Width|selectElement|linkedObject|_moveFocus|force|jquery|filteredUi|GridOnRowChanged|property3|getElementById|SortType|a_css|alert||ContextMenu|property1|onTreeStructureClick|property2|paths|intr|GridRow|justCount|sticky|additionalItems|menuCallback|sort|isResizable|oldObj|precision|userEdit|updateTable|substring|cssText|_viewBox|animated|setViewBox|strcmp|_isNullorUndefined||milli|wait|filtered|dirtyT|overloadSetter||QueryParams|subItem|translate|curve||tspan|simulateMouseEvent|realPath|objectGuid|guidHash|attrType|classes|obj2|obj1|LinkExpression|DataSources|isDropDown|innerSize|thisLi|bb2|origin|computedStyle|bb1|_getTotalWidthStatic|glyphs|the|query|afterCustomEdit|check|scalex|Not|oRec|accesskeys|Delete|Unknown|getRec|equal|longclick|isURL|Numeric|onSelect|Value2IsValid|pRec|Height|offsetWidth|getHours|QueryBuilderControl|delay|200|curr|keyStop|updateElement|linejoin|pathId|_ul|role|markerId|range||updateContextMenuItems|attachEvent|_typeAhead_chars|toJSON|buffer|||Rapha|goto|u00ebl|instantEdit|||base|Field|use|dstyle|QueryStructure|shear|DataSourceType|closest|widths|VisiblePaginationLinksCount|tspans|debounce|listWrap|iLen|fillString|jsp|parentObject|editEnd|QueryTransformerSQL|recursive|AffectedColumns|optionClasses|nextSibling|sub|vbs|itemsListIncomplete|col|pane|||originalSize|newClass|enumerables|visibility|dropdown|VML|_global_timer_|reconnect|fillsize|selecter||treeStructure|||ceil||list_is_visible|Requests|from2|CssClass||getDto|cur|with|lastCollapsable|||lastExpandable|markedMeshCells|globalFieldDragHelper||updateTableHeader|replaceClass|indexed|asterisk|fontcopy|isPointInside|branches|current_event|totalOrigin|isInAnim|module|path2curve|bezlen|selectable|None|orColumnCount|contains||fun|redrawT|opts|margin|currentRow|mousePos|keypress|CriteriaBuilderJunctionItemType|QBWebCoreBindable|Supported|prevItem|collision|nextItem|scrollHeight|Grouping|strings|ObjectType|touches|thefont|mouseover|objectType|skipEvents|location|eldata|getFormat|dialogTarget|Actions|updateObject|__args||removeRow|QueryStructureContainer|onload|_getHeaderCells|_setWidth|attributes|tryAddEmptyRow|draw||text_hover_color|_getInnerTable|background_hover_color|background_color|clearTimeout|stickyHead|text_color|getListValue|updateFields|di1|headerWidth|_getHeaderRow|dj1|resizeT|Properties|newsize|outerWidthDiff|TString|innerTableTbody|_minHeight|background|innerTable|types|bodyCell|Filter|which|newf|_getBodyFirstRowCells|treeview|glob|Selects|dragMaxX|percentScrolled|destY|_moveSelection|_setTableWidth|tfoot|globalIndex|contentWidth|resizeLock|rowId|doNotGenerateEvent|dto2|isVisible|isOpen|newObj|activeID|popup|dto1|proto|metadata|parentElement|random||setSize|triangle|activeClass|removeByIndex|objectsToAdd|pendingObject|objectsToRemove|updateRowControl|move_scope|strConversion|__getType|updateCount|||valueA|deleting|butt|hooks|flip|objectsToUpdate|valueB|canvasDatasourceDto|inputLabel|syncTable|instance|list_item|appendBefore|reposition|clientHeight|fff|subQuery|wrongRow|CTE|textpathStyle|touchHandled|lBound|tableBody|skipEvent|srcAlias|__pad|SortOrder|safari|||getButtonContextMenuItems|appendElement|replaceChars|built|NameInQuery|toLower|log|prepend|initstatus|Set|runAnimation|fltr|JunctionPostfix|joinType|repeat||toggler|1px||Move|removeAttr|Boolean|vals|dataSources|callbacks|hook||related|getMonth|globalTempLink|DataSource|defaultView|addOrUpdateRow|letters|valueElement|showEditor|rvml|_availableAttrs|seg2|importData|clientTop|checkField|ClientSQL|startString|GridRowCell|seg|getSelectedListItem|_path2string|cursor|coordorigin|isActive|RootQuery|endString|sweep_flag|mouseProto|currentValue|mouseenter|stops|9999em|keyToUpdate|||||DOMload|isValid|updateTabindex|clientLeft|prevComputedStyle|serverSideFilter|itemsCount|_getBBox|_refreshValue||400|TableObjectOnCheckField|isAlternate|SQLErrorMessage|reset|TableObjectOnLinkedObjectSelected|paneWidth|TableObjectOnLinkCreate|GetPropertyDialog|onAddTableToCanvas|parentSelector|suppressConfigurationWarning|_removeGraph||initialized|parentOptGroup|Copy|_focusedOptionLi|||clientWidth|totalWidth|glyph|RightToLeft|contentW|MessageText|Loaded|deltaY|scrollWidth|and|arglen|handlers|NameNotQuoted|TreeStructure|step|titleBarText|hours|day|_hasScrollY|deltaX|month|stretch|createUUID|Child|setCoords|minutes|DisableSessionKeeper|seconds|||UpdateGuids|finite|readyState|menuWidth|Options|getSubpath|plus|removeEventListener|updateGridRows|nodes||showFields|every|dis|_typeAhead_cycling|findTableByName|newWidths|_divwrapright|refX|currentTotal|SQLError||fieldsHtml|pendingChanges|matchee||||selobj|configEnds|||Direction|itemsHtml|itemHtml|editorVal|schema|_typeAhead_timer|columnCount|AllowJoinTypeChanging|getString|arr|getPaddingString|__def_precision|getPaddingLength|selectedpage|ExchangeTreeDto|Value|TableObjectOnSubqueryClick|updatePosition|_removedFactory|fullUpdate|updateExpressionControl|original|notfirst|_obj|maxWidths|LinkedObjects|mdoFromTable|numPerPage|||mdoToTable|CanvasLinkOnChanged|buttonLink|CreateLink|500|invert|ToDelete|_disabled|bgImage|minWidths|swapClass|list_height||maxZ||_pathToAbsolute|rem|rectPath|touchMap|srcExpression||getBoundingClientRect||clipRect||tdata|innerHTML|tear|shiftKey||postprocessor|dragHandle|bod|trim|onChange|setInterval|miterlimit|_position|onDragStart|rowItems|groupColumns|elementFromPoint|conditionOr1|showGrouping||boolean|supportsTouch|testRow|uBound|CurrentEditCell|fieldValue|solid|_setOption|itemsPagePreload|start_scope|paramCounts|optionsNameColumnOptions|optionsMarkColumnOptions|dim|binded|||||forValues|srcAggregate|lowerCase|edit|Sorting||x2m|x1m|y1m|y2m|visibleTop|showList|py2||||px2|||getColor||_create|primary||pcom|l2c|seglen|wrap|||seg2len|Path|toHex|_23|clrToString|hsb2rgb|_13|classic|longClickContextMenu|findDotAtSegment|deleted|items_then_scroll|_hasContext|ActiveQueryBuilder|epsilon|Yet|www|ActiveQueryBuilder2|Models|_isOpen|_createTitleButton|addGradientFill|relative|scrollTimeout|validateValue|CriteriaBuilderItem|Any|getPointAtLength|PreviousItem|typeahead|removeData|after|RootJunctionPrefix|funcs|ShowPrefixes|timestamp|setDto|touchmove||touchend|touchstart|_vbSize|getFullYear|linear|onDragClass|dirY|dirX|_blur|mapPath|cancel|IsEqualTo|yOffset|abortevent|scrollAmount|mouseleave|PrimaryKey|bboxwt|centercol|DescriptionColumnOptions|layout|||subpaths|application|findDotsAtSegment|brect|setAttributeNS|relatedTarget|Pos|ValueKind|TypeColumnOptions|parentItem|stickyWrap|parentTable|clrs|repositionStickyHead|diamond|filtredItemsCount|HideColumnMark|HideColumnName|HideColumnType|oldt|paginate|itemIndex|dif|resizable_params|_top|are|_left|mouse|sbwidth|fillSelects|headerHeightStr|_path2curve|buildItems|_setTableHeaderWidth|oval|itemsElement|radial|org|ShowLoadingItems|||filterChangeRoutine|ItemsStart||bbx|Loading|unwrap|_setTableBodyWidth|updateGuidHash|oldGuid|TypeError|pathDimensions||reduce|hits|POST|delayedSend|dragMove||itemsArray|||dragUp|both|propertyIsEnumerable|getPointAtSegmentLength|subpath|getSubpathsAtLength|getLengthFactory|dontEnums|Dim|ownerDocument|toff|exports|inArray|end_scope|xmin|interPathHelper|ymin|rx2|hsl2rgb|The|dots1|dots2|denominator|sleep|interHelper|ry2|targetTouches|asin|||f_in|identifier|f_out|norm|commaSpaces|1e12|docum|parseTransformString|ActiveXObject|OnApplicationReadyHandlers|transformPath||mdoTo|typeMismatch|browser|mdoFrom|getComputedStyle|line_spacing|_getColgroupCells|letter_spacing|selectOptions|||lastI||renderfix||needFilter|coordsize||||filterRegExp||initWin|localIndex|idx|delta|ItemsCount|oldRaphael|getBoxToParent|lineHeight|del|xi1|nes|strong|isInAnimSet|||getDay|frame|upto255|availableAnimAttrs|yi1|toColour|thisArg|ShowPropertyDialog|colCell|fontName|||||001|newWidth|normal|collector|tail|QBWebCoreGridResizeLock||curChar|returnStr||TreeStructureSelectNode|getByGuid|DenyLinkManipulations||message|UpdateLink|GetUID|NavBarBreadCrumbSelectNode|TreeDoubleClickNode|buttonSubquery||isEqual|||NavBarAction||rowHeight|margins|itemdata|pickListItem|cellNameKey|_fired_|autoOpen|editableSelectControl|plusButton|optGroupName|FieldName|300|removeAllMarked|cursorWait|DisableLinkedObjectsButton|QBHandlers|hovering|GroupingCriterion|markAllForDelete|DoAction|CanvasContextMenuCommand|globalMenu|Disabled|similar|GridOnAddTableField|_name|lastExpandableHitarea|commands|GridOnAddTable|lastId|CanvasOnAddTableField|refreshButtonClick|1E5|generateEvent|keyup|refreshSql|small|rowY|CanvasOnAddTable|CanvasOnRemoveTable|CanvasOnTrashTable|_mouseInit|getPosition|GridRowCellOnChanged|invalid|general|back|NotAll|insidewidth|conditions||Clear|UseLongDescription||ver||hideList||Description|getJoinPrefix|sortBy|ie7|iconClass|timeout|Columns|checkScroll|lastCollapsableHitarea|messages|contextMenuCallback|eval|parentGuid|needInvoke|onFieldCheck|zin|selectmenuId|CriteriaBuilderItemGroup|Layout|CriteriaBuilderItemPlus|removeObject|thisAAttr|enter|droppedRow|listIsVisible|datepicker|ChangeActiveUnionSubquery|persistent|_safemouseup|fieldsTable|rightcol|leftcol|_outer|thumbs_mouse_interval|fillDtoItems|fillDto|getButtonContextMenuItemsMove|altKey|hiddenSQL|NameStrNotQuoted|Group|ConditionIsValid|currentContext|sendDataToServerWithLock|getPrecision|TypedObject|GlobalTempId||ExpressionColumn|positionDefault|trimCaption|highlight|TableObjectOnClose|onDrop|getMatchItems|menuItem|isType|UseCustomExpressionBuilderServerEvents|TableObjectOnTrash|ActiveUnionSubqueryGuid|regex|newShowGrouping|bit|_unblockFrames|breadcrumbClick|iframeBlocks|ConditionColumns|disable|wrappers|800|objectOptions|cellspacing|cellpadding|rowIsEmpty|result3|result2|optionsDescriptionColumnOptions|parameters|optionsTypeColumnOptions|result1|o1t|HideColumnDescription|than|o2t|elt|structureItem|clientData|_cellEditStart|child|TableObjectOnDestroy|before||loading|overlays|fieldCheckbox|selectListItem|result4|noPropagation|usePlural|parse|hoverClass||protected|QueryStructureChanged|itemMouseleave|contentHeight|noop|mouseOffset|specified|getKey|Event|instanceOf|_importDto|SQLEErrorReceived|DataSending|SQLReceived|ContextMenuReceived|nextcommand|positionDragY|klass|MessagesReceived|editorChangesEnabled|itemMouseenter|retainFocus|findRowsByExpression|QuickFilterInExpressionMatchFromBeginning|blockFocus|gridRows|scrollToY|Output|inputs|_selectedIndex|flag|scrollToX|dragObj|recIndex|gridItemDto|currIndex|contentPositionX|oldY|CriteriaItem|clearInterval|positionDragX|information|junctionType|expandableHitarea|ascending|buildControlItems|extractTransform|getJunctionItemType|csv|cookieId|stopAnimation|paused|stored|cookie|CriteriaBuilderDto|requestAnimFrame|toggleCallback|collapsableHitarea|selectedOptions|||||addOption|closed|applyClasses|JavaScript|jQueryUI|todel|prepareBranches|LastItemId|menuChildren|amp|Url|UpdateWrapper|success|complete|customEdit|list_item_height|GridBeforeCustomEditCell|allEvents|_last|isBBoxIntersect|triggerEvents|contextMenuAutoHide|CriteriaType||conditionOr|opera|_reCreateEditBlock|SQLUpdatedServerFlag|li_value||UserDataReceived|SQLChanged|selectFirstListItem|rowToDelete|scope_in|findRowsByDto|onmove|data1|AfterCustomEditCell|onend|onstart|ajax|li_text|tableValue|newRows|prevcommand|ease|CriteriaBuilderItemGeneralDto|page|CriteriaBuilderItemGroupDto|General|getOperatorObject|istotal|CriteriaBuilderItemGeneral|toLocaleString|elems|newAnim|fieldContextMenuCallback|||||pathes|setColumn|contextMenuActive|cross|sampleCurveX|actionAddItem|limit|offsety|accesskey|submenu|offsetx|x_y_w_h|does|isWin|contextMenuKey|operator|CriteriaBuilderItemRow|triggerAction|called|amd|IsInList|CriteriaBuilderItemDto|prevIndex||IsNotInList|bbt|iFrameOverlay|periodical|isSimple|pass|MessageInfo|exclude|prototyping|merge|union|bound|errNoJQ|rgbToHex|hexToRgb|_oid|raphaelid|regexp|isGrad|middle|u2026|_extractTransform|_tear|onGridRowChanged|texts|GridOnAddRow|GridOnRemoveRow|leading|cssDot|schedule|clearSqlError|_rectPath|onCanvasContextMenuCommand|onRemoveObjectFromCanvas|importGrid||_tofront|importCanvas|Mutators|simulatedEvent|onAddTableFieldToCanvas|_insertbefore|_insertafter|_toback|_touchMoved|lower|square|fastDrag|strokeColor|compensation|protect|progid|clmz|hooksOf|generic|elTop|newpath|srcUrl|_getPath|posTop|innerHeight|_ISURL|_preload|setRequestHeader|parts|running|Microsoft|SQLTextChanged|ApplicationEvents|RefreshSQLClick|debug|_radial_gradient|fxfy|jQueryMinVersion|isFloating|_parseDots|jQueryUIMinVersion|GetTempId|mHide|mergeOne|createTextNode|newstroke|desc|anchor|align|dirtyattrs|cloneOf|extended|annul|mergeObj|OnApplicationReadyFlag|load|detachEvent|__arg|shifty|updateSQL|relativeRec|dtoIsSimilar|dtoIsEqual|isLoaded|_fy|startType|dir|thin|msgType|_fx|rgba|__repr|endType|toExponential|prepareSyncMetadata|tableObj|MetadataGuid|MetadataObjectAdded|_params|thatMethod|SqlErrorEventArgs|_escapeable|quoteString|pairs|Actions1|sendDataToServerDelayed|endUpdate|GridRowDto|onCheckFieldInTable|onLinkedObjectSelected|onLinkCreate|per|units|findTableByDataSourceGuid|beginUpdate|MetadataObjectGuid|padding|blank|prepareSyncSQL|addDashes|refreshSqlWithLock|generateContextMenuItems|dashes|param|was|_init|handlersPath||treeControl|getAttribute|readonly|_click_|QBFREE|_Paper|statusbar|_getContainer|com|buildTree|allRows|outsidewidth_tmp|shortLeg|createTextRange|calculateBox|applystyle|DateTime|endD|xb0|startD|invokeAsap|outsidewidth|testWidth|border_color|test_interval|ChangedCellValue|ChangedCellIndex|currval|checkPending|_rotleft|border_hover_color|_rotright|getControl|needResize|thead_tr|getNextEmptyPlaceRoutine_Test|tfoot_tr|selectsDto|presentation|freeY2|adjustWrapper|disableSelection|_scrollPage|t13|SelectOptionDto|highlightSelected|contentPositionY||pathValues|Schema|freeX1|buttonProperties|Database|serializeTable|newelementWrap|View|customEditButton|paneHeight|updateCustomEditButton|currentSelect|editableSelect|freeX2|_toggle|Edit|freeY1|scrollByY|base3|propertyName|ybase|xbase|newOptionClasses|4E3|wildcard|siblings|one|acces|_setBodyBounds|sum|obj1FieldName|intersect|subname|childButton|scrollBy|UpdateConnection|LoadDataByFilter|loadingItemsOverlay|scrollByX|t12|applyFilter|atan2|buildBreadcrumbElements|_grid|createButton|prependTo|_toggleEnabled|newFieldsCount|newField|optgroup|AriaLabel|_size|setup|_blockFrames|makeDraggable|_makeResizable|maxContentHeight|lastReturn|_scale|winH|_parseSize|linkNode|moveToTop|ellipsePath|checkedFields|Paper|hasScroll_x|borderTopWidth|movingDown|heightBeforeDrag|QueryGuid|borderLeftWidth|draggedRow|nodrop|docPos|mouseCoords|_makeDraggable|getMouseOffset|resizeStop|resizing|serialize|hadScroll_x|Close|bindItemsEvents|secondary|serializeRegexp|structure|descriptionHtml|dispatchEvent|eventType|topOffset|_parseWidth|GUID|_isPositiveNonZeroInt|touchcancel|optionsHtml|buildElements|_isPositiveInt|nodeCount|rgbtoString|nogo|finalTotal|packageRGB|newwin|newTotal|TableObjectOnUpdated|TableObjectOnMoved|_typeAhead|dblclick|checkAllField|buttonClose|spanField|maxH|fieldElement|prepareRGB|viewBlock|5E3|0000|accept|fixM|_getHeaderCellsIndexTrue|cRec|||fixArc|colIndex|keepColumnsTableWidth|titleW|toMatrix|contentH|drop|optionsFixedColumnMode|inited|processPath|VisiblePaginationLinksCountAttr|UpdateValues|newres|outerTbody|HideAsteriskItem|FieldListOptions|totalspan|curveDim|EditableSelect|q2c|domElement|a2c|busy|GetWrapper|pathToAbsolute|NameColumnOptions|FixedColumnMode|getEventPosition|MarkColumnOptions|component|newDiff|database|emptyRow|forGroup|updateHeaderCellWidth|editableSelectInstances|FieldTypeName|_setColCellWidth|fieldIcon|thisLiAttr|GridRowOnChanged|getEmpty|GotoSubquery|pathToRelative|throttle|Widget|hasEmpty|600|fromCharCode|insert|tableHeaderFixed|GetFullFieldName|lastScrollY|mag|modal|normalize|xmax|Checked|onCellChanged|ymax|isPointInsideBBox|generateNavBarContextMenuItems|LongDescription|SelectAllRowsFrom|doScroll|catmullRom2bezier|upperCase|images|crz|isFirst|rel|parsePathString|Remove|TableObjectField|_syncColWidths|_switchToView|needUpdate|NONE|bezierBBox|Metadata|currentSorting|global|oldstop|_refreshPosition|MAX_CAPTION_LENGTH|clearSelectedListItem|_createEditBlock|ShortDescription|editStart|selectNewListItem|expressionSubQueriesLength|obj2FieldName|_120|laspPagerScrollLeft|FieldListSortType|dtoConditionSubQueriesLength|horizontalDragPosition|targetId|KeyFieldsFirst|alwaysScrollY|parentOffset|propSize|headerHeight|ConditionType|initW|UpdateObjects|Title|DisableLinkPropertiesDialog|dtoExpressionSubQueriesLength|_initWidths|DisableDatasourcePropertiesDialog|LinkPart|conditionSubQueriesLength|DisableQueryPropertiesDialog|hasIcon|_mouseout_|thisA|cellOuterDiff|_touchcancel_|_touchmove_|snextclass|_off|_mousemove_|optionValue|sprevious|vis|_mouseup_|bVer|spreviousclass|_touchstart_|cssrule|previousclass|_getResizeableParams|_touchend_|_contextmenu_|selectmenuIcon|setMaxWidth|_getHeight|methodsEnumerable|lastIndexOf|DXImageTransform|getHeaderCellByBodyCellIndex|isEnumerable|isMove|outer|bites|isFinite|activedescendant|_geInnerTableTbody|UID|preserveAspectRatio|aspectRatio|DEFAULT_HEADER_BORDERS|trueWidth|positionOptions|createSVGMatrix|_createColGroup|responseText|Content|getHeaderCellByBodyCellIndexFiltered|nYou|Line|medium|XMLHTTP|XMLHttpRequest|_getBodyAndHeaderCellWidths|getHTTPObject|_getBodyCellWidths|Your|nodeType|typeCheck|_getBodyFirstRow|_getOuterTbody|error_alert|alwaysNoScrollY||Errors|_getColgroup|post_error|some|code|thisText|refreshTimeout|getPropertyValue|_touchStart|getInstance|_closeOthers|typeAhead|changedTouches|simulatedType|_touchMove|_fn_click|handleWidth|touch_enabled|_mousedown_|scheduled|_touchEnd|listH|_hasScroll|tuneText|_on|clean|flatten|currentOptionClasses|enable|allowance|newTable|methodName|include|2000|collection|attempt|_parseScrollable|retain|_parseColumns|_parseResizable|selectelement|_formatText|escapeHtml|cannot|owner|wide|snext|adjustWrapperPosition|70158|075|onTextboxChanged|contextMenuShow|current_options_value|Now|Cvalues|Tvalues|comb|backIn|backOut|initInputEvents|focusInput|getTatLen|aks|large_arc_flag|hasTypes|blurInput|zindex|positionSubmenu|onlystart|pathBBox|you|autoHide|0472|availableAttrs|determinePosition|_cleanData|sortByNumber|3678|1252|real|tCommand|hideOtherLists|cleanData|toPath|equaliseTransform|maintain|2335|2491|solveCurveX|1069|1601|2032|adjustWrapperSize|solve|5873|9816|9041|7699|eventSelectstart|maxlength|clearHighlightMatches|initEvents|scrollToListItem|acos|textContent|menuitem|unmousemove|unmouseup|adjustHeight|EditableSelectWrapper|fromMenu|shorter||addEvent|getMatchItemPrev|getMatchItemNext|_f|stopTouch|detacher|Inc|vendor|unselectListItem|preventTouch|scope_out|olde|about|y2old|x2old|hideMenu|menuMouseenter|isPointInsidePath|f2old|splitAccesskey|layerClick|nested|isWithoutTransform|isEmptyObject|autoShow|menuMouseleave|htmlCommand|getOffset|duplicateOptions|htmlMenuitem|pageYOffset|getElementByPoint|focusItem|itemClick|inputClick|tan|blurItem|getById|pathCommand|replacer|isObject|Infinity|1e9|Argument|tokenRegex|updateTables|DocumentTouch|callee|__formatToken|tableId|__getInput|Arial|findDropTargetRow|formatrg|onAllowDrop|compatMode|windowHeight|onDragStyle|whitespace|quotedName|isFunc|objNotationRegex|onDropStyle|quote|serializeTables|ENTER|SPACE|showArrow|PAGE_UP|PAGE_DOWN|END|carat|_divwrapleft|nextclass|hideArrow|nodeValue|TAB|Marker|startPath|startMarker|markers|DOWN|endPath|endMarker|RIGHT|enddx|HOME|numsort|LEFT|startdx|arguments2Array|heightHide|heightToggle|hsba|pause|resume|createEvent|initMouseEvent|hsrg|screenX|colourRegExp|prerendered|c1Elements|u00b0|16777216|pipe|hsl|easing_formulas|bezierrg|CubicBezierAtTime|treeController|deserialize|hsla|hsb|positionElements|setWidths|animateWith|year|uuidReplacer|uuidRegEx|rgb2hsb|fireEvent|setWindow|stringify|adj|rest|getFont|objectToString|isnan|charCodeAt|shape2|sel|repush|screenY|selectedValues|glowConfig|_meta|rgb2hsl|hsbtoString|p2s|hsltoString|removeOption|jspActive|arrowScroll|updateNavBarContextMenu|getActiveItem|getInactiveItems|destLeft|TableObjectFieldOnCheckField|TABLE|UnionNavBarVisible|_positionDragX|fired|isCurrentQuery|dragMaxY|stepCallback|uiQBTableClasses|tabbableFirst|qbtableClass|destPercentY|subqueryPlusButton|createChildMenu|scrollToElement|destPercentX|stickToTop|fieldDescription|TryLoadItems|press|needLoadItems|showDescriptions|LoadDataByPager|laspPagerCount|revert|selectDataRefresh|elementParent|buildPager|parentIndexId|ItemsPerPage|TreeSelectNode|filterChangeRoutineT|description|fieldType|fieldSelect|updateFilter|filterChange|PreloadedPagesCount|filterChangeStub|itemId|filterClear|tabbableLast|resizeHandles|originalPosition|resizeStart|beforeclose|offsetPosition|helperProportions|saveScroll|trash|dragStart|dragStop|dragging|dialogClass|customExpressionEdit|suppressEnter|EditExpression|_createEditControl|EditCondition|AggregateList|TableObjectOnLinkDelete|TableObjectOnCreate|Editor|escapeHTML|showCustomEdit|oldHeight|ObjectReadOnly|DataSourcePropertiesForm||adjustSize|componentW|titleText|updateDataSource|odd|createLinkObjectsMenu|classObject|lastHeight|collapseTable|titleH|NotPrimaryKey|AllFieldsSelected|reCreate|oldWidth|oldFieldsCount|MetadataFieldDto|titleButtonW||componentH||heightMax|generateFields|||generateTitle|ShowLoadingSelect|Int32|SubQuery|Time|objGuid|onObjectDestroy|For|Subqueries|Insert|Unions|ConditionTypeHaving|ConditionTypeWhere|onObjectClose|getNextEmptyPlaceRoutine_Find_RTL|getNextEmptyPlaceRoutine_Find|getNextEmptyPlaceRoutine_Fill|objX2|objX1|getEmptyPlaceCoord|fieldGuid|onObjectTrash|getLayout|FieldCount|DataSourceLayoutDto|Common|From|ActionDto|Default|brackets|Sort|IsTrashed|QBWebCore|MultipleQueriesPerSession|typeName|Container|parentObj|Relations|Refresh|need|changed|New|Reconnect|Query|Tables|Procedure|Views|Synonyms|Procedures|objY1|ariaName|createGraph|lastJ|showAllItemInGroupingSelectLists|lined|_setDto|LinkPropertiesForm|GetLinkExpression|500px|_getDto|DataSourceLinkDto|ShowAllItemInGroupingSelectLists|SelectedValue|TreeSelectDto|IsChanged|selectChange|HideLoadingItems|selectsParent|globalStart|buildSelects|globalCount|recreateSelect|localCount|CreateConnection|layerX|itemsCTE|layerY|propSizeY|propSizeX||IsCTE|QueryPropertiesForm|objY2|propertyValue|menuCTE|IntoControls|redrawD|getObjectByGuid|CopyInner|getObjectFieldByGuid|getObjectHeader|getObjectFieldByName|DataSourceLinkPartDto|leftGuid|CanvasOnDropObject|rightGuid|findByTableGuid|removeByTableGuid|createCombinedButton|textStatus|jqXHR|AfterCustomEdit|tabIndex|getAllRows|ajaxFinish|character|setSelectionRange|importDto|lastGoodSQL|updateExpression|sync|onTreeDoubleClick|buildNewTree|onEditorChange|EditorGoToErrorPosition|refreshButtonHover|onNavBarAction|QBTRIAL|spinning|trial|treeStructureElement|SUBQUERY_ENABLED|ErrorPos|hasAggregateOrCriteria|getTableFieldExpression|newRow|slidedown|prepareSyncQueryProperties|effect|addDataSource|ActiveMenu|removeDataSource|addLink|trashDataSource|slideup|updateTableContextMenu|CanvasLink||TableCTE|clickSQLEError|RefreshSQL|updateLinkContextMenu|importCanvasLinks|importCanvasObjects||setLayout|updateBreadcrumb|updateUnionControls|EditorClear|errWrongScriptOrder|errWrongJQUI|sqlChanged|noConflict|sqlError|jQueryUIMaxVersion|errNoScript|check_usr|jQueryMaxVersion|errNoJQUI|errWrongJQ|btn|visibleY|elBot||topParent|posBottom|getPositionTop|_mouseUp|updateOnLoad|OnApplicationReadyTrigger|_generatePosition|_convertPositionTo|positionAbs|checkProjectConfigure|onEditorChangeDebounced|onEditorChangeDebouncedCall|importMetadata|importCriteriaBuilder|importNavBar|onGridRowRemoved|EditorRestoreLastGood|restore|onTrashObjectFromCanvas|onGridRowAdded|onCanvasLinkChanged|importQueryStructure|panel|IsSupportCTE|updateAggregateColumn|expanded|toggleNavbar|IsSupportUnions|importSQLEError|importMessages|importContextMenu|Updating|importSQL|ClientData|generateHeaders|toggleGroupColumn|allow|CriteriaOr|getRowHeaderList|rowSorter|BeforeCustomEdit|onRowChanged|RowChanged|reCreateEditBlock|updateSortingOrderColumn|getter|IsNotEqualTo|DoesNotEndWith|IsNull|IsLessThan|IsNotNull|DoesNotContain|StartsWith|findRowByExpression|Contains|DoesNotStartWith|EndsWith|fieldText|ASC||9999|_getCssClass|isAsterisk||_createViewBlock|_switchToEdit|You|view|will|aliases|able|_exportDto|getLastRowControl|oldIndex|findRowByDto|itemDto|equalSimilar|InsertSubQuery|fillDefaultValues|createRowControl|targetPlace|tableDragConfig|selection|IsLessThanOrEqualTo|createJunctionTypeMenu|createOperationMenu|CriteriaBuilderItemAdded|library|CriteriaBuilderChanged|createFieldSelect|junctionTypeContextMenuCallback|getJunctionTypeContextMenuItems|getFieldsContextMenuItems|createButtonMenu|plusItem|Incorrect|UnionNavBar|your|Union|updateLink|Click|Please|higher|detected|required|errHandlersConfiguration|usr_vXXX|operationContextMenuCallback|createFromDto|between|TotalCount|actionMoveUp|isNumeric|IsNotBetween||IsGreaterThan|less|IsGreaterThanOrEqualTo|IsBetween|greater|actionMoveDown|Invalid|operatorObj|Plus|getOperationContextMenuItems|Where|operatorText|actionClear|actionDelete|actionAddGeneral|CriteriaBuilderItemRowDto|actionAddGroup|NeedRebindUserInit|urn|xmlns|behavior|schemas|512|setMonth|microsoft|fontFamily|fontWeight|fontStyle|tagValue|QBWebCoreGrid|QBWebCoreCriteriaBuilder|QBWebCoreMetadataTree|Incompatible|propHooks|Tween|getSeconds|newfill|getMinutes|May|isPlainObject|DeepCopy|QBWebCoreCanvas|QBWebCoreNavBar|GlobalUID|Clone|342|__entityMap|valueOf|isPrototypeOf|dontEnumsLength|proxyEx|visibleBottom|prevOffsetParent|static|hasDontEnumBug|toFilter|noRotation|vbt|isPatt|fixed|sendDataToServerInternal|delayed|Blur|onAfter|_viewBoxShift|getTime|tile|clearSyncDebounce|flush|def|cls|blurregexp|toBack|toFront|dynamicSort|pathTypes|ovalTypes|leftBox|getLineCoord|triggerObject|parentBox|minLeg|clearSync|path2vml|isOval|shortMonths|rightBox|toType|longDays|short|narrow|long|shortDays|000000|thinBg|01|data2|fromType|QBWebCanvasLink|inline|parentId|sendDataToServerDelayedWrapper|SubQueries|longMonths|me2|isEmptyRow|reset_options_value|html5|Gradient|_UID|removeHandler|sortOrder|doesAddBorderForTableAndCells|frameborder|onGridRowCellChanged|disableTextSelect|_hidden_select|selectstart|bodyOffset|doesNotAddBorder|wrapperCleared|onAddRow|gradientTransform|collspan|subtractsBorderForOverflowNotVisible|ninja|radiogroup|NextItem|DOMContentLoaded|setInputValues|getInputValues|paid|focusin|descent|onChanged|onDeleted|GridRowCellOnDeleted|baseline|any|1999|addHandler|notall|rowIndex|equalWidth|findEmptyRow|equalHeight|starts|Cannot|webkitTapHighlightColor|SmartAdd|enabled|reserved|0z|0A2|ends|getRec1|findRowByGuid|contain|createElementNS|removeRowByDto|supports|addBack|setGlobalOnLoad|padding_right|OnBeforeCustomEditCell|hide_on_blur_timeout|options_value|autocomplete|0px|100000px|currentEdit|rowsHeaders|innerText|case_sensitive|offsetWithParent|fullfill|checkRow|findRow|onRemoveRow|OnApplicationReady|True|November|setTime|ESCAPE|October|July|August||September|December|Wed|Thu|greedy|Tue|Sun|titleTextW|Mon|tableDnDSerialize|insertion|uniqueId|March||January|February|tableDnDUpdate|April|labelledby|u2019s|June|listbox|haspopup|owns|getGrid|Fri|using|tableNameTemplate|hijackInternalLinks|stack|widgetName|uncheck|setDataSwitch|scrollToBottom|getIsScrollableH|getPercentScrolledY|getPercentScrolledX|isScrollableH|getContentPane|isScrollableV|getIsScrollableV|clearfix|objects|Linked|Tuesday|Sat|Sunday|Monday|Switch|Saturday|linked|deleteCTE|Friday|Wednesday|Thursday|Android|Dec|bold|Jan|updateValue|focusout|pencil|700|MouseEvent|err|uuid|GET|178|Read|Feb|mlcxtrv|registerFont|print||limitation|Random|rid|own|delegate|them|toUpper|oldInstances|bolder|lighter|GenerateClass|inputSpan|getContentHeight|superclass|_allowInteraction|Jul|alsoResize|Aug|index2|diagonal|grip|stop1|paddingTop|Oct|Nov|addClasses|Sep|paddingLeft|u2018s|_setContainment|160|uiDialogTitlebar|uiDialogClasses|serializeParamName|_sizeNew|_size1|tDnD_whileDrag|Mar|beforeClose|Apr|Jun|BackCompat|uiDialogTitlebarCloseText|closeText|_createButtons|fillOpacity|cte|shortdashdotdot|dash|shortdashdot|exp|shortdash|shortdot|21600|ontouchend|MouseEvents|Implements|longdash|dashdot|ahqstv|atan|transparent|endcap|camelCase|pick|combine|erase|miter|rotation|substitute|dxdy|flat|hyphenate|capitalize|escapeRegExp|color2|xMinYMin|ping|viewBox|getScreenCTM|dispatch|propertychange|meta|bName|appName|free|_duration_|_timer_|HandlersPath|oindex|Created|center|kern|dashstyle|longdashdot|longdashdotdot|_mouseCapture|WebkitUserSelect|teardown|trigger_jquery_event|ipod|special|iphone|ipad|getRandom|ab8ea8824dc3b24b6666867a2c4ed58ebb762cf0|textnode|overloadGetter|MooTools|clientError|axd|encodeURI|forEachMethod|_mouseDragOrig|search|_mouseDrag|mirror|_getParentOffset|hasFixedAncestor|isOnScreen|form|urlencoded|Connection|isElementVisible|check_lib|Msxml2|uid|inViewport|errordialog|arrowwidth|ff0066|onreadystatechange|send|arrowlength|TextNode|Collection|Arguments|WhiteSpace|isFrozen|Falling|ready|joinstyle|associate|getLast|invoke|uniqueID|u2019t|doesn|freeze|exec|defineProperty|defineProperties|toPrecision|reverse|unshift|reduceRight|isExtensible|seal|isSealed|preventExtensions|getPrototypeOf|getOwnPropertyDescriptor|getOwnPropertyNames|appVersion|patternUnits|sortOptions|incorrect|getJSON|x9f|web|ajaxAddOption|selectedTexts|must|script|containsOption|configuration|HTTP|copyOptions|x7f|secureEvalJSON|bfnrtu|SyntaxError|evalJSON|getUTCMinutes|getUTCSeconds|getUTCMilliseconds|file|x00|x1f|u00|parsing|valid|userSpaceOnUse|slideUp|6100|following|slideDown|succeed|flipfit|6101|inst|markerHeight|patternTransform|onClose|refY|orient|markerWidth|triggerHandler|persist|jQu3eryUI|andSelf|binary|Wrong|unique|clipPath|HTMLMenuItemElement|HTMLCommandElement|onselectstart|Treeview|DIV|fixOutsideBounds|criteriaBuilderFieldSelect|getUTCHours|setQueryParamValues|getQueryParams|removeAttribute|jPaginate|front|focusposition|270|stdDeviation|feGaussianBlur|finally|collapse|left2|moveStart|moveEnd|pages|slide|colors|gradientTitle|black|meet|MSIE|8cc59d|wrapper2|maincol|syncCriteriaBuilder|wrapper1|updateCriteriaBuilder|switchToRootQuery|focussize|MessageWarning|pixelradius|getFlags|MessageError|isString|__max_precision|runtimeStyle|getUTCMonth|getUTCDate|getUTCFullYear|addRule|matc|textpathok|createStyleSheet|render|0x|Info|calc|Warning|Get|msgTime|date|decodeURIComponent|escape|tpl|UTF8decode|UTF8encode|unescape|encodeURIComponent|getContentWidth|visual|setStart|Update|representation|derived|AddSubQuery|setFinish|Check|CheckAll|1E4|UncheckAll|updated|SqlChanged|Uncheck|AddCTE|groups|createSVGRect|AddCTEShort|currentLanguage|getIntersectionList|StoredProc|TreeSelectTypeDto|UnionSubMenu|pageXOffset|AddNewCTE|ColumnNameAlreadyUsed|exists|already|same|ObjectTypeTable|segment1|segment2|ObjectTypeView|ObjectTypeUnknown|undrag|ObjectTypeProcedure|MoveUp|forward||calling|MoveDown|onDragOver|InsertEmptyItem|RemoveItem|SelectSyntaxProvider|DeleteCTE|procedures|views|interCount|unmousedown|SelectAll|inter|Syntax|pathIntersection|pathIntersectionNumber|Provider|tables|MetadataObjectCount|proceed|xxxxxxxxxxxx|VarNumeric|UInt64|yxxx|xxxxxxxx|xxxx|4xxx|write|SByte|createPopup|htmlfile|UInt32|UInt16|Single|snapTo|Xml|SVGAngle|implementation|DateTime2|KindOfType|DateTimeOffset|sortByKey|StringFixedLength|_id|AnsiStringFixedLength|BasicStructure|hasFeature|SVG11|feature|preload|onerror|Desc|LinkManipulations|u2400|Deny|Allow|One|LinkCardinality|Other|Many|Asc|ItemSortType|LinkSideType|DbType|16711680|Colour|Picker|65280|Int64|queryCommandValue|ForeColor|Byte|Binary|AnsiString|Currency|Int16|Double|Decimal|isSuperSimple|LoadFromObject|toTransformString|mdc|DataSourceDto|GridDto|CanvasDto|Apple|Computer|platform|Chrome|GetName|Version|GetFullName|expand|errorThrown|pixelWidth|pixelHeight|LinkObjectDto|DataSourceGuid|RightFields|LeftFields|M21|M22|sizingmethod|M12|System|AliasNotQuoted|M11|removeGridRows|unhover|unmouseover|Synonym|COUNT|getData|DESC|async|reload|DisablePageReload|SQLEditorError|addGridRows|unmouseout|removeLink|FIRST|returnValue||cancelBubble|objid|int|nullable|primaryKey|Google|MIN|MAX|LAST|SUM|ObjectField|old|Having|LeftColumn|dataType|SelectAllFromRight|RightColumn|CacheOptions|Join|JoinExpression|Kind|FieldType|OutputColumnDto|Datasource|SelectAllFromLeft|RightObject|LeftObject|Cache|MoveBackward|NewUnionSubQuery|CopyToNewUnionSubQuery|backward|u201c|u201d|MoveForward|GroupBy|Order|Option|RemoveBrackets|_pathToRelative|Enclose|EncloseWithBrackets|toback|insertafter|insertbefore|tofront|ReadOnly|parseDots|Precision|DatasourceName|Cardinality|_equaliseTransform|MetaDataDto|Nullable|AltName|Command|Scale|ContextMenuItemDto|contentType|ContextMenuDto|QueryStructureDto|Test|Expanded|Selected|ItemsListIncomplete|ItemsPacketSize|Size|00000000|UnionsAdd|Label|000000000000|Into|nts|9E9|2573AF|contentWindow|00|props|350|Top|DenyIntoClause|offsetX|pager|offsetY|non|toTimeString|require|animportCanvasimation|79B5E3|errors|5em|NaN|onAnimation|client|ISURL|cubic|nowrap|raphaeljs|bezier|10px|onAfterFirst|showDescriptons|Eve|Universal|once|scrollbarWidth|ontouchstart|curveslengths|_super|tbody_height|oRequestAnimationFrame|625|984375|mozRequestAnimationFrame|9375|MAX_SELECTS|5625|folder|fillSelectOptions2|webkitRequestAnimationFrame|unload|easeInOut|_isInt|level|easeOut|dataRefresh|requestAnimationFrame||easeIn|onclick|bounce|removeAll|quot|_destroy|updateLinks|removeByGraphics|getByLinkNew|getByLink|x2F|finish|msRequestAnimationFrame|liveConvert|000B9D|liveEx|elastic|1734|fillSelectOptions1|live|_getHeaderCellsIndex|04|_setHeight|getElementsByBBox|reinitialise|getArrowScroll|u00d7|isAtRight|interrupt|32E3|windowsSizeW|isAtLeft|horizontalDrag|initialise|defaultElement|breadcrumb|hellip|myType|GLOBAL_DEBUG|nextAll|getElementsByPoint|windowsSizeH|OVERSCROLL_FIX|submit|x_y|buttonset|updateObjects|scrollToPercentX|_getOriginalHeaderRow|NumericFrac|achlmrqstvz|scrollToPercentY|letter|NumericInt|spacing|achlmqrstvxz|rstm||animateDuration|getContentPositionY|_blank|animateEase|getContentPositionX|radial_gradient|_availableAnimAttrs'.split('|'),0,{}))

