text: ! function (e, t) {
      "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define("vue-owl-carousel", [], t) : "object" == typeof exports ? exports["vue-owl-carousel"] = t() : e["vue-owl-carousel"] = t()
  }(this, function () {
      return function (e) {
          function t(i) {
              if (n[i]) return n[i].exports;
              var r = n[i] = {
                  exports: {},
                  id: i,
                  loaded: !1
              };
              return e[i].call(r.exports, r, r.exports, t), r.loaded = !0, r.exports
          }
          var n = {};
          return t.m = e, t.c = n, t.p = "", t(0)
      }([function (e, t, n) {
          var i = n(1)(n(2), n(15), null, null);
          e.exports = i.exports
      }, function (e, t) {
          e.exports = function (e, t, n, i) {
              var r, o = e = e || {},
                  s = typeof e["default"];
              "object" !== s && "function" !== s || (r = e, o = e["default"]);
              var a = "function" == typeof o ? o.options : o;
              if (t && (a.render = t.render, a.staticRenderFns = t.staticRenderFns), n && (a._scopeId = n), i) {
                  var l = Object.create(a.computed || null);
                  Object.keys(i).forEach(function (e) {
                      var t = i[e];
                      l[e] = function () {
                          return t
                      }
                  }), a.computed = l
              }
              return {
                  esModule: r,
                  exports: o,
                  options: a
              }
          }
      }, function (e, t, n) {
          (function (e) {
              "use strict";
  
              function i(e) {
                  return e && e.__esModule ? e : {
                      "default": e
                  }
              }
              Object.defineProperty(t, "__esModule", {
                  value: !0
              }), n(4), n(11), n(13);
              var r = n(14),
                  o = i(r);
              t["default"] = {
                  name: "VOwlCarousel",
                  props: {
                      items: {
                          type: Number,
                          "default": 3
                      },
                      margin: {
                          type: Number,
                          "default": 0
                      },
                      loop: {
                          type: Boolean,
                          "default": !1
                      },
                      center: {
                          type: Boolean,
                          "default": !1
                      },
                      mouseDrag: {
                          type: Boolean,
                          "default": !0
                      },
                      touchDrag: {
                          type: Boolean,
                          "default": !0
                      },
                      pullDrag: {
                          type: Boolean,
                          "default": !0
                      },
                      freeDrag: {
                          type: Boolean,
                          "default": !1
                      },
                      stagePadding: {
                          type: Number,
                          "default": 0
                      },
                      merge: {
                          type: Boolean,
                          "default": !1
                      },
                      mergeFit: {
                          type: Boolean,
                          "default": !1
                      },
                      autoWidth: {
                          type: Boolean,
                          "default": !1
                      },
                      startPosition: {
                          type: Number,
                          "default": 0
                      },
                      uRLhashListener: {
                          type: Boolean,
                          "default": !1
                      },
                      nav: {
                          type: Boolean,
                          "default": !0
                      },
                      rewind: {
                          type: Boolean,
                          "default": !0
                      },
                      navText: {
                          type: Array,
                          "default": function () {
                              return ["next", "prev"]
                          }
                      },
                      navElement: {
                          type: String,
                          "default": "div"
                      },
                      slideBy: {
                          type: [Number, String],
                          "default": 1
                      },
                      slideTransition: {
                          type: String,
                          "default": ""
                      },
                      dots: {
                          type: Boolean,
                          "default": !0
                      },
                      dotsEach: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      dotsData: {
                          type: Boolean,
                          "default": !1
                      },
                      lazyLoad: {
                          type: Boolean,
                          "default": !1
                      },
                      lazyLoadEager: {
                          type: Number,
                          "default": 0
                      },
                      autoplay: {
                          type: Boolean,
                          "default": !1
                      },
                      autoplaySpeed: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      autoplayTimeout: {
                          type: Number,
                          "default": 5e3
                      },
                      autoplayHoverPause: {
                          type: Boolean,
                          "default": !1
                      },
                      smartSpeed: {
                          type: Number,
                          "default": 250
                      },
                      fluidSpeed: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      navSpeed: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      dragEndSpeed: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      callbacks: {
                          type: Boolean,
                          "default": !0
                      },
                      responsive: {
                          type: Object,
                          "default": function () {}
                      },
                      responsiveRefreshRate: {
                          type: Number,
                          "default": 200
                      },
                      responsiveBaseElement: {
                          type: String,
                          "default": "window"
                      },
                      video: {
                          type: Boolean,
                          "default": !1
                      },
                      videoHeight: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      videoWidth: {
                          type: [Number, Boolean],
                          "default": !1
                      },
                      animateOut: {
                          type: [String, Boolean],
                          "default": !1
                      },
                      animateIn: {
                          type: [String, Boolean],
                          "default": !1
                      },
                      fallbackEasing: {
                          type: String,
                          "default": "swing"
                      },
                      info: {
                          type: Function,
                          "default": function () {}
                      },
                      itemElement: {
                          type: String,
                          "default": "div"
                      },
                      stageElement: {
                          type: String,
                          "default": "div"
                      },
                      navContainer: {
                          type: [String, Boolean],
                          "default": !1
                      },
                      dotsContainer: {
                          type: [String, Boolean],
                          "default": !1
                      },
                      checkVisible: {
                          type: Boolean,
                          "default": !0
                      }
                  },
                  data: function () {
                      return {
                          showPrev: !1,
                          showNext: !0,
                          prevHandler: "carousel_prev_" + this.generateUniqueId(),
                          elementHandle: "carousel_" + this.generateUniqueId(),
                          nextHandler: "carousel_next_" + this.generateUniqueId()
                      }
                  },
                  mounted: function () {
                      var t = this,
                          n = e("#" + this.elementHandle).owlCarousel({
                              items: this.items,
                              margin: this.margin,
                              loop: this.loop,
                              center: this.center,
                              mouseDrag: this.mouseDrag,
                              touchDrag: this.touchDrag,
                              pullDrag: this.pullDrag,
                              freeDrag: this.freeDrag,
                              stagePadding: this.stagePadding,
                              merge: this.merge,
                              mergeFit: this.mergeFit,
                              autoWidth: this.autoWidth,
                              startPosition: this.startPosition,
                              uRLhashListener: this.uRLhashListener,
                              nav: this.nav,
                              rewind: this.rewind,
                              navText: this.navText,
                              navElement: this.navElement,
                              slideBy: this.slideBy,
                              slideTransition: this.slideTransition,
                              dots: this.dots,
                              dotsEach: this.dotsEach,
                              dotsData: this.dotsData,
                              lazyLoad: this.lazyLoad,
                              lazyLoadEager: this.lazyLoadEager,
                              autoplay: this.autoplay,
                              autoplaySpeed: this.autoplaySpeed,
                              autoplayTimeout: this.autoplayTimeout,
                              autoplayHoverPause: this.autoplayHoverPause,
                              smartSpeed: this.smartSpeed,
                              fluidSpeed: this.fluidSpeed,
                              navSpeed: this.navSpeed,
                              dragEndSpeed: this.dragEndSpeed,
                              callbacks: this.callbacks,
                              responsive: this.responsive,
                              responsiveRefreshRate: this.responsiveRefreshRate,
                              responsiveBaseElement: this.responsiveBaseElement,
                              video: this.video,
                              videoHeight: this.videoHeight,
                              videoWidth: this.videoWidth,
                              animateOut: this.animateOut,
                              animateIn: this.animateIn,
                              fallbackEasing: this.fallbackEasing,
                              info: this.info,
                              itemElement: this.itemElement,
                              stageElement: this.stageElement,
                              navContainer: this.navContainer,
                              dotsContainer: this.dotsContainer,
                              checkVisible: this.checkVisible
                          });
                      e("#" + this.prevHandler).click(function () {
                          n.trigger("prev.owl.carousel")
                      }), e("#" + this.nextHandler).click(function () {
                          n.trigger("next.owl.carousel")
                      }), o["default"].forEach(function (e) {
                          n.on(e + ".owl.carousel", function (n) {
                              t.$emit(e, n)
                          })
                      }), this.loop || n.on("changed.owl.carousel", function (e) {
                          if (0 === e.item.index) t.showPrev = !1, t.showNext = !0;
                          else {
                              var n = Math.floor(e.item.index + e.page.size);
                              n === e.item.count ? (t.showPrev = !0, t.showNext = !1) : (t.showPrev = !0, t.showNext = !0)
                          }
                      })
                  },
                  methods: {
                      generateUniqueId: function () {
                          return Math.random().toString(36).substring(2, 15)
                      }
                  }
              }
          }).call(t, n(3))
      }, function (e, t, n) {
          var i, r;
          /*!
           * jQuery JavaScript Library v3.3.1
           * https://jquery.com/
           *
           * Includes Sizzle.js
           * https://sizzlejs.com/
           *
           * Copyright JS Foundation and other contributors
           * Released under the MIT license
           * https://jquery.org/license
           *
           * Date: 2018-01-20T17:24Z
           */
          ! function (t, n) {
              "use strict";
              "object" == typeof e && "object" == typeof e.exports ? e.exports = t.document ? n(t, !0) : function (e) {
                  if (!e.document) throw new Error("jQuery requires a window with a document");
                  return n(e)
              } : n(t)
          }("undefined" != typeof window ? window : this, function (n, o) {
              "use strict";
  
              function s(e, t, n) {
                  t = t || ce;
                  var i, r = t.createElement("script");
                  if (r.text = e, n)
                      for (i in Te) n[i] && (r[i] = n[i]);
                  t.head.appendChild(r).parentNode.removeChild(r)
              }
  
              function a(e) {
                  return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? me[ve.call(e)] || "object" : typeof e
              }
  
              function l(e) {
                  var t = !!e && "length" in e && e.length,
                      n = a(e);
                  return !_e(e) && !Ce(e) && ("array" === n || 0 === t || "number" == typeof t && t > 0 && t - 1 in e)
              }
  
              function u(e, t) {
                  return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
              }
  
              function c(e, t, n) {
                  return _e(t) ? ke.grep(e, function (e, i) {
                      return !!t.call(e, i, e) !== n
                  }) : t.nodeType ? ke.grep(e, function (e) {
                      return e === t !== n
                  }) : "string" != typeof t ? ke.grep(e, function (e) {
                      return ge.call(t, e) > -1 !== n
                  }) : ke.filter(t, e, n)
              }
  
              function h(e, t) {
                  for (;
                      (e = e[t]) && 1 !== e.nodeType;);
                  return e
              }
  
              function p(e) {
                  var t = {};
                  return ke.each(e.match(qe) || [], function (e, n) {
                      t[n] = !0
                  }), t
              }
  
              function d(e) {
                  return e
              }
  
              function f(e) {
                  throw e
              }
  
              function g(e, t, n, i) {
                  var r;
                  try {
                      e && _e(r = e.promise) ? r.call(e).done(t).fail(n) : e && _e(r = e.then) ? r.call(e, t, n) : t.apply(void 0, [e].slice(i))
                  } catch (e) {
                      n.apply(void 0, [e])
                  }
              }
  
              function m() {
                  ce.removeEventListener("DOMContentLoaded", m), n.removeEventListener("load", m), ke.ready()
              }
  
              function v(e, t) {
                  return t.toUpperCase()
              }
  
              function y(e) {
                  return e.replace(Be, "ms-").replace(We, v)
              }
  
              function w() {
                  this.expando = ke.expando + w.uid++
              }
  
              function x(e) {
                  return "true" === e || "false" !== e && ("null" === e ? null : e === +e + "" ? +e : Xe.test(e) ? JSON.parse(e) : e)
              }
  
              function b(e, t, n) {
                  var i;
                  if (void 0 === n && 1 === e.nodeType)
                      if (i = "data-" + t.replace(Ye, "-$&").toLowerCase(), n = e.getAttribute(i), "string" == typeof n) {
                          try {
                              n = x(n)
                          } catch (r) {}
                          Ve.set(e, t, n)
                      } else n = void 0;
                  return n
              }
  
              function _(e, t, n, i) {
                  var r, o, s = 20,
                      a = i ? function () {
                          return i.cur()
                      } : function () {
                          return ke.css(e, t, "")
                      },
                      l = a(),
                      u = n && n[3] || (ke.cssNumber[t] ? "" : "px"),
                      c = (ke.cssNumber[t] || "px" !== u && +l) && Ze.exec(ke.css(e, t));
                  if (c && c[3] !== u) {
                      for (l /= 2, u = u || c[3], c = +l || 1; s--;) ke.style(e, t, c + u), (1 - o) * (1 - (o = a() / l || .5)) <= 0 && (s = 0), c /= o;
                      c = 2 * c, ke.style(e, t, c + u), n = n || []
                  }
                  return n && (c = +c || +l || 0, r = n[1] ? c + (n[1] + 1) * n[2] : +n[2], i && (i.unit = u, i.start = c, i.end = r)), r
              }
  
              function C(e) {
                  var t, n = e.ownerDocument,
                      i = e.nodeName,
                      r = et[i];
                  return r ? r : (t = n.body.appendChild(n.createElement(i)), r = ke.css(t, "display"), t.parentNode.removeChild(t), "none" === r && (r = "block"), et[i] = r, r)
              }
  
              function T(e, t) {
                  for (var n, i, r = [], o = 0, s = e.length; o < s; o++) i = e[o], i.style && (n = i.style.display, t ? ("none" === n && (r[o] = Ue.get(i, "display") || null, r[o] || (i.style.display = "")), "" === i.style.display && Qe(i) && (r[o] = C(i))) : "none" !== n && (r[o] = "none", Ue.set(i, "display", n)));
                  for (o = 0; o < s; o++) null != r[o] && (e[o].style.display = r[o]);
                  return e
              }
  
              function E(e, t) {
                  var n;
                  return n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t || "*") : "undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && u(e, t) ? ke.merge([e], n) : n
              }
  
              function k(e, t) {
                  for (var n = 0, i = e.length; n < i; n++) Ue.set(e[n], "globalEval", !t || Ue.get(t[n], "globalEval"))
              }
  
              function S(e, t, n, i, r) {
                  for (var o, s, l, u, c, h, p = t.createDocumentFragment(), d = [], f = 0, g = e.length; f < g; f++)
                      if (o = e[f], o || 0 === o)
                          if ("object" === a(o)) ke.merge(d, o.nodeType ? [o] : o);
                          else if (ot.test(o)) {
                      for (s = s || p.appendChild(t.createElement("div")), l = (nt.exec(o) || ["", ""])[1].toLowerCase(), u = rt[l] || rt._default, s.innerHTML = u[1] + ke.htmlPrefilter(o) + u[2], h = u[0]; h--;) s = s.lastChild;
                      ke.merge(d, s.childNodes), s = p.firstChild, s.textContent = ""
                  } else d.push(t.createTextNode(o));
                  for (p.textContent = "", f = 0; o = d[f++];)
                      if (i && ke.inArray(o, i) > -1) r && r.push(o);
                      else if (c = ke.contains(o.ownerDocument, o), s = E(p.appendChild(o), "script"), c && k(s), n)
                      for (h = 0; o = s[h++];) it.test(o.type || "") && n.push(o);
                  return p
              }
  
              function D() {
                  return !0
              }
  
              function N() {
                  return !1
              }
  
              function j() {
                  try {
                      return ce.activeElement
                  } catch (e) {}
              }
  
              function A(e, t, n, i, r, o) {
                  var s, a;
                  if ("object" == typeof t) {
                      "string" != typeof n && (i = i || n, n = void 0);
                      for (a in t) A(e, a, n, i, t[a], o);
                      return e
                  }
                  if (null == i && null == r ? (r = n, i = n = void 0) : null == r && ("string" == typeof n ? (r = i, i = void 0) : (r = i, i = n, n = void 0)), r === !1) r = N;
                  else if (!r) return e;
                  return 1 === o && (s = r, r = function (e) {
                      return ke().off(e), s.apply(this, arguments)
                  }, r.guid = s.guid || (s.guid = ke.guid++)), e.each(function () {
                      ke.event.add(this, t, r, i, n)
                  })
              }
  
              function $(e, t) {
                  return u(e, "table") && u(11 !== t.nodeType ? t : t.firstChild, "tr") ? ke(e).children("tbody")[0] || e : e
              }
  
              function L(e) {
                  return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e
              }
  
              function z(e) {
                  return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e
              }
  
              function O(e, t) {
                  var n, i, r, o, s, a, l, u;
                  if (1 === t.nodeType) {
                      if (Ue.hasData(e) && (o = Ue.access(e), s = Ue.set(t, o), u = o.events)) {
                          delete s.handle, s.events = {};
                          for (r in u)
                              for (n = 0, i = u[r].length; n < i; n++) ke.event.add(t, r, u[r][n])
                      }
                      Ve.hasData(e) && (a = Ve.access(e), l = ke.extend({}, a), Ve.set(t, l))
                  }
              }
  
              function P(e, t) {
                  var n = t.nodeName.toLowerCase();
                  "input" === n && tt.test(e.type) ? t.checked = e.checked : "input" !== n && "textarea" !== n || (t.defaultValue = e.defaultValue)
              }
  
              function H(e, t, n, i) {
                  t = de.apply([], t);
                  var r, o, a, l, u, c, h = 0,
                      p = e.length,
                      d = p - 1,
                      f = t[0],
                      g = _e(f);
                  if (g || p > 1 && "string" == typeof f && !be.checkClone && pt.test(f)) return e.each(function (r) {
                      var o = e.eq(r);
                      g && (t[0] = f.call(this, r, o.html())), H(o, t, n, i)
                  });
                  if (p && (r = S(t, e[0].ownerDocument, !1, e, i), o = r.firstChild, 1 === r.childNodes.length && (r = o), o || i)) {
                      for (a = ke.map(E(r, "script"), L), l = a.length; h < p; h++) u = r, h !== d && (u = ke.clone(u, !0, !0), l && ke.merge(a, E(u, "script"))), n.call(e[h], u, h);
                      if (l)
                          for (c = a[a.length - 1].ownerDocument, ke.map(a, z), h = 0; h < l; h++) u = a[h], it.test(u.type || "") && !Ue.access(u, "globalEval") && ke.contains(c, u) && (u.src && "module" !== (u.type || "").toLowerCase() ? ke._evalUrl && ke._evalUrl(u.src) : s(u.textContent.replace(dt, ""), c, u))
                  }
                  return e
              }
  
              function q(e, t, n) {
                  for (var i, r = t ? ke.filter(t, e) : e, o = 0; null != (i = r[o]); o++) n || 1 !== i.nodeType || ke.cleanData(E(i)), i.parentNode && (n && ke.contains(i.ownerDocument, i) && k(E(i, "script")), i.parentNode.removeChild(i));
                  return e
              }
  
              function M(e, t, n) {
                  var i, r, o, s, a = e.style;
                  return n = n || gt(e), n && (s = n.getPropertyValue(t) || n[t], "" !== s || ke.contains(e.ownerDocument, e) || (s = ke.style(e, t)), !be.pixelBoxStyles() && ft.test(s) && mt.test(t) && (i = a.width, r = a.minWidth, o = a.maxWidth, a.minWidth = a.maxWidth = a.width = s, s = n.width, a.width = i, a.minWidth = r, a.maxWidth = o)), void 0 !== s ? s + "" : s
              }
  
              function R(e, t) {
                  return {
                      get: function () {
                          return e() ? void delete this.get : (this.get = t).apply(this, arguments)
                      }
                  }
              }
  
              function I(e) {
                  if (e in _t) return e;
                  for (var t = e[0].toUpperCase() + e.slice(1), n = bt.length; n--;)
                      if (e = bt[n] + t, e in _t) return e
              }
  
              function B(e) {
                  var t = ke.cssProps[e];
                  return t || (t = ke.cssProps[e] = I(e) || e), t
              }
  
              function W(e, t, n) {
                  var i = Ze.exec(t);
                  return i ? Math.max(0, i[2] - (n || 0)) + (i[3] || "px") : t
              }
  
              function F(e, t, n, i, r, o) {
                  var s = "width" === t ? 1 : 0,
                      a = 0,
                      l = 0;
                  if (n === (i ? "border" : "content")) return 0;
                  for (; s < 4; s += 2) "margin" === n && (l += ke.css(e, n + Je[s], !0, r)), i ? ("content" === n && (l -= ke.css(e, "padding" + Je[s], !0, r)), "margin" !== n && (l -= ke.css(e, "border" + Je[s] + "Width", !0, r))) : (l += ke.css(e, "padding" + Je[s], !0, r), "padding" !== n ? l += ke.css(e, "border" + Je[s] + "Width", !0, r) : a += ke.css(e, "border" + Je[s] + "Width", !0, r));
                  return !i && o >= 0 && (l += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - l - a - .5))), l
              }
  
              function U(e, t, n) {
                  var i = gt(e),
                      r = M(e, t, i),
                      o = "border-box" === ke.css(e, "boxSizing", !1, i),
                      s = o;
                  if (ft.test(r)) {
                      if (!n) return r;
                      r = "auto"
                  }
                  return s = s && (be.boxSizingReliable() || r === e.style[t]), ("auto" === r || !parseFloat(r) && "inline" === ke.css(e, "display", !1, i)) && (r = e["offset" + t[0].toUpperCase() + t.slice(1)], s = !0), r = parseFloat(r) || 0, r + F(e, t, n || (o ? "border" : "content"), s, i, r) + "px"
              }
  
              function V(e, t, n, i, r) {
                  return new V.prototype.init(e, t, n, i, r)
              }
  
              function X() {
                  Tt && (ce.hidden === !1 && n.requestAnimationFrame ? n.requestAnimationFrame(X) : n.setTimeout(X, ke.fx.interval), ke.fx.tick())
              }
  
              function Y() {
                  return n.setTimeout(function () {
                      Ct = void 0
                  }), Ct = Date.now()
              }
  
              function G(e, t) {
                  var n, i = 0,
                      r = {
                          height: e
                      };
                  for (t = t ? 1 : 0; i < 4; i += 2 - t) n = Je[i], r["margin" + n] = r["padding" + n] = e;
                  return t && (r.opacity = r.width = e), r
              }
  
              function Z(e, t, n) {
                  for (var i, r = (K.tweeners[t] || []).concat(K.tweeners["*"]), o = 0, s = r.length; o < s; o++)
                      if (i = r[o].call(n, t, e)) return i
              }
  
              function J(e, t, n) {
                  var i, r, o, s, a, l, u, c, h = "width" in t || "height" in t,
                      p = this,
                      d = {},
                      f = e.style,
                      g = e.nodeType && Qe(e),
                      m = Ue.get(e, "fxshow");
                  n.queue || (s = ke._queueHooks(e, "fx"), null == s.unqueued && (s.unqueued = 0, a = s.empty.fire, s.empty.fire = function () {
                      s.unqueued || a()
                  }), s.unqueued++, p.always(function () {
                      p.always(function () {
                          s.unqueued--, ke.queue(e, "fx").length || s.empty.fire()
                      })
                  }));
                  for (i in t)
                      if (r = t[i], Et.test(r)) {
                          if (delete t[i], o = o || "toggle" === r, r === (g ? "hide" : "show")) {
                              if ("show" !== r || !m || void 0 === m[i]) continue;
                              g = !0
                          }
                          d[i] = m && m[i] || ke.style(e, i)
                      } if (l = !ke.isEmptyObject(t), l || !ke.isEmptyObject(d)) {
                      h && 1 === e.nodeType && (n.overflow = [f.overflow, f.overflowX, f.overflowY], u = m && m.display, null == u && (u = Ue.get(e, "display")), c = ke.css(e, "display"), "none" === c && (u ? c = u : (T([e], !0), u = e.style.display || u, c = ke.css(e, "display"), T([e]))), ("inline" === c || "inline-block" === c && null != u) && "none" === ke.css(e, "float") && (l || (p.done(function () {
                          f.display = u
                      }), null == u && (c = f.display, u = "none" === c ? "" : c)), f.display = "inline-block")), n.overflow && (f.overflow = "hidden", p.always(function () {
                          f.overflow = n.overflow[0], f.overflowX = n.overflow[1], f.overflowY = n.overflow[2]
                      })), l = !1;
                      for (i in d) l || (m ? "hidden" in m && (g = m.hidden) : m = Ue.access(e, "fxshow", {
                          display: u
                      }), o && (m.hidden = !g), g && T([e], !0), p.done(function () {
                          g || T([e]), Ue.remove(e, "fxshow");
                          for (i in d) ke.style(e, i, d[i])
                      })), l = Z(g ? m[i] : 0, i, p), i in m || (m[i] = l.start, g && (l.end = l.start, l.start = 0))
                  }
              }
  
              function Q(e, t) {
                  var n, i, r, o, s;
                  for (n in e)
                      if (i = y(n), r = t[i], o = e[n], Array.isArray(o) && (r = o[1], o = e[n] = o[0]), n !== i && (e[i] = o, delete e[n]), s = ke.cssHooks[i], s && "expand" in s) {
                          o = s.expand(o), delete e[i];
                          for (n in o) n in e || (e[n] = o[n], t[n] = r)
                      } else t[i] = r
              }
  
              function K(e, t, n) {
                  var i, r, o = 0,
                      s = K.prefilters.length,
                      a = ke.Deferred().always(function () {
                          delete l.elem
                      }),
                      l = function () {
                          if (r) return !1;
                          for (var t = Ct || Y(), n = Math.max(0, u.startTime + u.duration - t), i = n / u.duration || 0, o = 1 - i, s = 0, l = u.tweens.length; s < l; s++) u.tweens[s].run(o);
                          return a.notifyWith(e, [u, o, n]), o < 1 && l ? n : (l || a.notifyWith(e, [u, 1, 0]), a.resolveWith(e, [u]), !1)
                      },
                      u = a.promise({
                          elem: e,
                          props: ke.extend({}, t),
                          opts: ke.extend(!0, {
                              specialEasing: {},
                              easing: ke.easing._default
                          }, n),
                          originalProperties: t,
                          originalOptions: n,
                          startTime: Ct || Y(),
                          duration: n.duration,
                          tweens: [],
                          createTween: function (t, n) {
                              var i = ke.Tween(e, u.opts, t, n, u.opts.specialEasing[t] || u.opts.easing);
                              return u.tweens.push(i), i
                          },
                          stop: function (t) {
                              var n = 0,
                                  i = t ? u.tweens.length : 0;
                              if (r) return this;
                              for (r = !0; n < i; n++) u.tweens[n].run(1);
                              return t ? (a.notifyWith(e, [u, 1, 0]), a.resolveWith(e, [u, t])) : a.rejectWith(e, [u, t]), this
                          }
                      }),
                      c = u.props;
                  for (Q(c, u.opts.specialEasing); o < s; o++)
                      if (i = K.prefilters[o].call(u, e, c, u.opts)) return _e(i.stop) && (ke._queueHooks(u.elem, u.opts.queue).stop = i.stop.bind(i)), i;
                  return ke.map(c, Z, u), _e(u.opts.start) && u.opts.start.call(e, u), u.progress(u.opts.progress).done(u.opts.done, u.opts.complete).fail(u.opts.fail).always(u.opts.always), ke.fx.timer(ke.extend(l, {
                      elem: e,
                      anim: u,
                      queue: u.opts.queue
                  })), u
              }
  
              function ee(e) {
                  var t = e.match(qe) || [];
                  return t.join(" ")
              }
  
              function te(e) {
                  return e.getAttribute && e.getAttribute("class") || ""
              }
  
              function ne(e) {
                  return Array.isArray(e) ? e : "string" == typeof e ? e.match(qe) || [] : []
              }
  
              function ie(e, t, n, i) {
                  var r;
                  if (Array.isArray(t)) ke.each(t, function (t, r) {
                      n || Ht.test(e) ? i(e, r) : ie(e + "[" + ("object" == typeof r && null != r ? t : "") + "]", r, n, i)
                  });
                  else if (n || "object" !== a(t)) i(e, t);
                  else
                      for (r in t) ie(e + "[" + r + "]", t[r], n, i)
              }
  
              function re(e) {
                  return function (t, n) {
                      "string" != typeof t && (n = t, t = "*");
                      var i, r = 0,
                          o = t.toLowerCase().match(qe) || [];
                      if (_e(n))
                          for (; i = o[r++];) "+" === i[0] ? (i = i.slice(1) || "*", (e[i] = e[i] || []).unshift(n)) : (e[i] = e[i] || []).push(n)
                  }
              }
  
              function oe(e, t, n, i) {
                  function r(a) {
                      var l;
                      return o[a] = !0, ke.each(e[a] || [], function (e, a) {
                          var u = a(t, n, i);
                          return "string" != typeof u || s || o[u] ? s ? !(l = u) : void 0 : (t.dataTypes.unshift(u), r(u), !1)
                      }), l
                  }
                  var o = {},
                      s = e === Gt;
                  return r(t.dataTypes[0]) || !o["*"] && r("*")
              }
  
              function se(e, t) {
                  var n, i, r = ke.ajaxSettings.flatOptions || {};
                  for (n in t) void 0 !== t[n] && ((r[n] ? e : i || (i = {}))[n] = t[n]);
                  return i && ke.extend(!0, e, i), e
              }
  
              function ae(e, t, n) {
                  for (var i, r, o, s, a = e.contents, l = e.dataTypes;
                      "*" === l[0];) l.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader("Content-Type"));
                  if (i)
                      for (r in a)
                          if (a[r] && a[r].test(i)) {
                              l.unshift(r);
                              break
                          } if (l[0] in n) o = l[0];
                  else {
                      for (r in n) {
                          if (!l[0] || e.converters[r + " " + l[0]]) {
                              o = r;
                              break
                          }
                          s || (s = r)
                      }
                      o = o || s
                  }
                  if (o) return o !== l[0] && l.unshift(o), n[o]
              }
  
              function le(e, t, n, i) {
                  var r, o, s, a, l, u = {},
                      c = e.dataTypes.slice();
                  if (c[1])
                      for (s in e.converters) u[s.toLowerCase()] = e.converters[s];
                  for (o = c.shift(); o;)
                      if (e.responseFields[o] && (n[e.responseFields[o]] = t), !l && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), l = o, o = c.shift())
                          if ("*" === o) o = l;
                          else if ("*" !== l && l !== o) {
                      if (s = u[l + " " + o] || u["* " + o], !s)
                          for (r in u)
                              if (a = r.split(" "), a[1] === o && (s = u[l + " " + a[0]] || u["* " + a[0]])) {
                                  s === !0 ? s = u[r] : u[r] !== !0 && (o = a[0], c.unshift(a[1]));
                                  break
                              } if (s !== !0)
                          if (s && e["throws"]) t = s(t);
                          else try {
                              t = s(t)
                          } catch (h) {
                              return {
                                  state: "parsererror",
                                  error: s ? h : "No conversion from " + l + " to " + o
                              }
                          }
                  }
                  return {
                      state: "success",
                      data: t
                  }
              }
              var ue = [],
                  ce = n.document,
                  he = Object.getPrototypeOf,
                  pe = ue.slice,
                  de = ue.concat,
                  fe = ue.push,
                  ge = ue.indexOf,
                  me = {},
                  ve = me.toString,
                  ye = me.hasOwnProperty,
                  we = ye.toString,
                  xe = we.call(Object),
                  be = {},
                  _e = function (e) {
                      return "function" == typeof e && "number" != typeof e.nodeType
                  },
                  Ce = function (e) {
                      return null != e && e === e.window
                  },
                  Te = {
                      type: !0,
                      src: !0,
                      noModule: !0
                  },
                  Ee = "3.3.1",
                  ke = function (e, t) {
                      return new ke.fn.init(e, t)
                  },
                  Se = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
              ke.fn = ke.prototype = {
                  jquery: Ee,
                  constructor: ke,
                  length: 0,
                  toArray: function () {
                      return pe.call(this)
                  },
                  get: function (e) {
                      return null == e ? pe.call(this) : e < 0 ? this[e + this.length] : this[e]
                  },
                  pushStack: function (e) {
                      var t = ke.merge(this.constructor(), e);
                      return t.prevObject = this, t
                  },
                  each: function (e) {
                      return ke.each(this, e)
                  },
                  map: function (e) {
                      return this.pushStack(ke.map(this, function (t, n) {
                          return e.call(t, n, t)
                      }))
                  },
                  slice: function () {
                      return this.pushStack(pe.apply(this, arguments))
                  },
                  first: function () {
                      return this.eq(0)
                  },
                  last: function () {
                      return this.eq(-1)
                  },
                  eq: function (e) {
                      var t = this.length,
                          n = +e + (e < 0 ? t : 0);
                      return this.pushStack(n >= 0 && n < t ? [this[n]] : [])
                  },
                  end: function () {
                      return this.prevObject || this.constructor()
                  },
                  push: fe,
                  sort: ue.sort,
                  splice: ue.splice
              }, ke.extend = ke.fn.extend = function () {
                  var e, t, n, i, r, o, s = arguments[0] || {},
                      a = 1,
                      l = arguments.length,
                      u = !1;
                  for ("boolean" == typeof s && (u = s, s = arguments[a] || {}, a++), "object" == typeof s || _e(s) || (s = {}), a === l && (s = this, a--); a < l; a++)
                      if (null != (e = arguments[a]))
                          for (t in e) n = s[t], i = e[t], s !== i && (u && i && (ke.isPlainObject(i) || (r = Array.isArray(i))) ? (r ? (r = !1, o = n && Array.isArray(n) ? n : []) : o = n && ke.isPlainObject(n) ? n : {}, s[t] = ke.extend(u, o, i)) : void 0 !== i && (s[t] = i));
                  return s
              }, ke.extend({
                  expando: "jQuery" + (Ee + Math.random()).replace(/\D/g, ""),
                  isReady: !0,
                  error: function (e) {
                      throw new Error(e)
                  },
                  noop: function () {},
                  isPlainObject: function (e) {
                      var t, n;
                      return !(!e || "[object Object]" !== ve.call(e)) && (!(t = he(e)) || (n = ye.call(t, "constructor") && t.constructor, "function" == typeof n && we.call(n) === xe))
                  },
                  isEmptyObject: function (e) {
                      var t;
                      for (t in e) return !1;
                      return !0
                  },
                  globalEval: function (e) {
                      s(e)
                  },
                  each: function (e, t) {
                      var n, i = 0;
                      if (l(e))
                          for (n = e.length; i < n && t.call(e[i], i, e[i]) !== !1; i++);
                      else
                          for (i in e)
                              if (t.call(e[i], i, e[i]) === !1) break;
                      return e
                  },
                  trim: function (e) {
                      return null == e ? "" : (e + "").replace(Se, "")
                  },
                  makeArray: function (e, t) {
                      var n = t || [];
                      return null != e && (l(Object(e)) ? ke.merge(n, "string" == typeof e ? [e] : e) : fe.call(n, e)), n
                  },
                  inArray: function (e, t, n) {
                      return null == t ? -1 : ge.call(t, e, n)
                  },
                  merge: function (e, t) {
                      for (var n = +t.length, i = 0, r = e.length; i < n; i++) e[r++] = t[i];
                      return e.length = r, e
                  },
                  grep: function (e, t, n) {
                      for (var i, r = [], o = 0, s = e.length, a = !n; o < s; o++) i = !t(e[o], o), i !== a && r.push(e[o]);
                      return r
                  },
                  map: function (e, t, n) {
                      var i, r, o = 0,
                          s = [];
                      if (l(e))
                          for (i = e.length; o < i; o++) r = t(e[o], o, n), null != r && s.push(r);
                      else
                          for (o in e) r = t(e[o], o, n), null != r && s.push(r);
                      return de.apply([], s)
                  },
                  guid: 1,
                  support: be
              }), "function" == typeof Symbol && (ke.fn[Symbol.iterator] = ue[Symbol.iterator]), ke.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (e, t) {
                  me["[object " + t + "]"] = t.toLowerCase()
              });
              var De =
                  /*!
                   * Sizzle CSS Selector Engine v2.3.3
                   * https://sizzlejs.com/
                   *
                   * Copyright jQuery Foundation and other contributors
                   * Released under the MIT license
                   * http://jquery.org/license
                   *
                   * Date: 2016-08-08
                   */
                  function (e) {
                      function t(e, t, n, i) {
                          var r, o, s, a, l, u, c, p = t && t.ownerDocument,
                              f = t ? t.nodeType : 9;
                          if (n = n || [], "string" != typeof e || !e || 1 !== f && 9 !== f && 11 !== f) return n;
                          if (!i && ((t ? t.ownerDocument || t : I) !== L && $(t), t = t || L, O)) {
                              if (11 !== f && (l = ve.exec(e)))
                                  if (r = l[1]) {
                                      if (9 === f) {
                                          if (!(s = t.getElementById(r))) return n;
                                          if (s.id === r) return n.push(s), n
                                      } else if (p && (s = p.getElementById(r)) && M(t, s) && s.id === r) return n.push(s), n
                                  } else {
                                      if (l[2]) return Q.apply(n, t.getElementsByTagName(e)), n;
                                      if ((r = l[3]) && _.getElementsByClassName && t.getElementsByClassName) return Q.apply(n, t.getElementsByClassName(r)), n
                                  } if (_.qsa && !V[e + " "] && (!P || !P.test(e))) {
                                  if (1 !== f) p = t, c = e;
                                  else if ("object" !== t.nodeName.toLowerCase()) {
                                      for ((a = t.getAttribute("id")) ? a = a.replace(be, _e) : t.setAttribute("id", a = R), u = k(e), o = u.length; o--;) u[o] = "#" + a + " " + d(u[o]);
                                      c = u.join(","), p = ye.test(e) && h(t.parentNode) || t
                                  }
                                  if (c) try {
                                      return Q.apply(n, p.querySelectorAll(c)), n
                                  } catch (g) {} finally {
                                      a === R && t.removeAttribute("id")
                                  }
                              }
                          }
                          return D(e.replace(ae, "$1"), t, n, i)
                      }
  
                      function n() {
                          function e(n, i) {
                              return t.push(n + " ") > C.cacheLength && delete e[t.shift()], e[n + " "] = i
                          }
                          var t = [];
                          return e
                      }
  
                      function i(e) {
                          return e[R] = !0, e
                      }
  
                      function r(e) {
                          var t = L.createElement("fieldset");
                          try {
                              return !!e(t)
                          } catch (n) {
                              return !1
                          } finally {
                              t.parentNode && t.parentNode.removeChild(t), t = null
                          }
                      }
  
                      function o(e, t) {
                          for (var n = e.split("|"), i = n.length; i--;) C.attrHandle[n[i]] = t
                      }
  
                      function s(e, t) {
                          var n = t && e,
                              i = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;
                          if (i) return i;
                          if (n)
                              for (; n = n.nextSibling;)
                                  if (n === t) return -1;
                          return e ? 1 : -1
                      }
  
                      function a(e) {
                          return function (t) {
                              var n = t.nodeName.toLowerCase();
                              return "input" === n && t.type === e
                          }
                      }
  
                      function l(e) {
                          return function (t) {
                              var n = t.nodeName.toLowerCase();
                              return ("input" === n || "button" === n) && t.type === e
                          }
                      }
  
                      function u(e) {
                          return function (t) {
                              return "form" in t ? t.parentNode && t.disabled === !1 ? "label" in t ? "label" in t.parentNode ? t.parentNode.disabled === e : t.disabled === e : t.isDisabled === e || t.isDisabled !== !e && Te(t) === e : t.disabled === e : "label" in t && t.disabled === e
                          }
                      }
  
                      function c(e) {
                          return i(function (t) {
                              return t = +t, i(function (n, i) {
                                  for (var r, o = e([], n.length, t), s = o.length; s--;) n[r = o[s]] && (n[r] = !(i[r] = n[r]))
                              })
                          })
                      }
  
                      function h(e) {
                          return e && "undefined" != typeof e.getElementsByTagName && e
                      }
  
                      function p() {}
  
                      function d(e) {
                          for (var t = 0, n = e.length, i = ""; t < n; t++) i += e[t].value;
                          return i
                      }
  
                      function f(e, t, n) {
                          var i = t.dir,
                              r = t.next,
                              o = r || i,
                              s = n && "parentNode" === o,
                              a = W++;
                          return t.first ? function (t, n, r) {
                              for (; t = t[i];)
                                  if (1 === t.nodeType || s) return e(t, n, r);
                              return !1
                          } : function (t, n, l) {
                              var u, c, h, p = [B, a];
                              if (l) {
                                  for (; t = t[i];)
                                      if ((1 === t.nodeType || s) && e(t, n, l)) return !0
                              } else
                                  for (; t = t[i];)
                                      if (1 === t.nodeType || s)
                                          if (h = t[R] || (t[R] = {}), c = h[t.uniqueID] || (h[t.uniqueID] = {}), r && r === t.nodeName.toLowerCase()) t = t[i] || t;
                                          else {
                                              if ((u = c[o]) && u[0] === B && u[1] === a) return p[2] = u[2];
                                              if (c[o] = p, p[2] = e(t, n, l)) return !0
                                          } return !1
                          }
                      }
  
                      function g(e) {
                          return e.length > 1 ? function (t, n, i) {
                              for (var r = e.length; r--;)
                                  if (!e[r](t, n, i)) return !1;
                              return !0
                          } : e[0]
                      }
  
                      function m(e, n, i) {
                          for (var r = 0, o = n.length; r < o; r++) t(e, n[r], i);
                          return i
                      }
  
                      function v(e, t, n, i, r) {
                          for (var o, s = [], a = 0, l = e.length, u = null != t; a < l; a++)(o = e[a]) && (n && !n(o, i, r) || (s.push(o), u && t.push(a)));
                          return s
                      }
  
                      function y(e, t, n, r, o, s) {
                          return r && !r[R] && (r = y(r)), o && !o[R] && (o = y(o, s)), i(function (i, s, a, l) {
                              var u, c, h, p = [],
                                  d = [],
                                  f = s.length,
                                  g = i || m(t || "*", a.nodeType ? [a] : a, []),
                                  y = !e || !i && t ? g : v(g, p, e, a, l),
                                  w = n ? o || (i ? e : f || r) ? [] : s : y;
                              if (n && n(y, w, a, l), r)
                                  for (u = v(w, d), r(u, [], a, l), c = u.length; c--;)(h = u[c]) && (w[d[c]] = !(y[d[c]] = h));
                              if (i) {
                                  if (o || e) {
                                      if (o) {
                                          for (u = [], c = w.length; c--;)(h = w[c]) && u.push(y[c] = h);
                                          o(null, w = [], u, l)
                                      }
                                      for (c = w.length; c--;)(h = w[c]) && (u = o ? ee(i, h) : p[c]) > -1 && (i[u] = !(s[u] = h))
                                  }
                              } else w = v(w === s ? w.splice(f, w.length) : w), o ? o(null, s, w, l) : Q.apply(s, w)
                          })
                      }
  
                      function w(e) {
                          for (var t, n, i, r = e.length, o = C.relative[e[0].type], s = o || C.relative[" "], a = o ? 1 : 0, l = f(function (e) {
                                  return e === t
                              }, s, !0), u = f(function (e) {
                                  return ee(t, e) > -1
                              }, s, !0), c = [function (e, n, i) {
                                  var r = !o && (i || n !== N) || ((t = n).nodeType ? l(e, n, i) : u(e, n, i));
                                  return t = null, r
                              }]; a < r; a++)
                              if (n = C.relative[e[a].type]) c = [f(g(c), n)];
                              else {
                                  if (n = C.filter[e[a].type].apply(null, e[a].matches), n[R]) {
                                      for (i = ++a; i < r && !C.relative[e[i].type]; i++);
                                      return y(a > 1 && g(c), a > 1 && d(e.slice(0, a - 1).concat({
                                          value: " " === e[a - 2].type ? "*" : ""
                                      })).replace(ae, "$1"), n, a < i && w(e.slice(a, i)), i < r && w(e = e.slice(i)), i < r && d(e))
                                  }
                                  c.push(n)
                              } return g(c)
                      }
  
                      function x(e, n) {
                          var r = n.length > 0,
                              o = e.length > 0,
                              s = function (i, s, a, l, u) {
                                  var c, h, p, d = 0,
                                      f = "0",
                                      g = i && [],
                                      m = [],
                                      y = N,
                                      w = i || o && C.find.TAG("*", u),
                                      x = B += null == y ? 1 : Math.random() || .1,
                                      b = w.length;
                                  for (u && (N = s === L || s || u); f !== b && null != (c = w[f]); f++) {
                                      if (o && c) {
                                          for (h = 0, s || c.ownerDocument === L || ($(c), a = !O); p = e[h++];)
                                              if (p(c, s || L, a)) {
                                                  l.push(c);
                                                  break
                                              } u && (B = x)
                                      }
                                      r && ((c = !p && c) && d--, i && g.push(c))
                                  }
                                  if (d += f, r && f !== d) {
                                      for (h = 0; p = n[h++];) p(g, m, s, a);
                                      if (i) {
                                          if (d > 0)
                                              for (; f--;) g[f] || m[f] || (m[f] = Z.call(l));
                                          m = v(m)
                                      }
                                      Q.apply(l, m), u && !i && m.length > 0 && d + n.length > 1 && t.uniqueSort(l)
                                  }
                                  return u && (B = x, N = y), g
                              };
                          return r ? i(s) : s
                      }
                      var b, _, C, T, E, k, S, D, N, j, A, $, L, z, O, P, H, q, M, R = "sizzle" + 1 * new Date,
                          I = e.document,
                          B = 0,
                          W = 0,
                          F = n(),
                          U = n(),
                          V = n(),
                          X = function (e, t) {
                              return e === t && (A = !0), 0
                          },
                          Y = {}.hasOwnProperty,
                          G = [],
                          Z = G.pop,
                          J = G.push,
                          Q = G.push,
                          K = G.slice,
                          ee = function (e, t) {
                              for (var n = 0, i = e.length; n < i; n++)
                                  if (e[n] === t) return n;
                              return -1
                          },
                          te = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
                          ne = "[\\x20\\t\\r\\n\\f]",
                          ie = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
                          re = "\\[" + ne + "*(" + ie + ")(?:" + ne + "*([*^$|!~]?=)" + ne + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + ie + "))|)" + ne + "*\\]",
                          oe = ":(" + ie + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + re + ")*)|.*)\\)|)",
                          se = new RegExp(ne + "+", "g"),
                          ae = new RegExp("^" + ne + "+|((?:^|[^\\\\])(?:\\\\.)*)" + ne + "+$", "g"),
                          le = new RegExp("^" + ne + "*," + ne + "*"),
                          ue = new RegExp("^" + ne + "*([>+~]|" + ne + ")" + ne + "*"),
                          ce = new RegExp("=" + ne + "*([^\\]'\"]*?)" + ne + "*\\]", "g"),
                          he = new RegExp(oe),
                          pe = new RegExp("^" + ie + "$"),
                          de = {
                              ID: new RegExp("^#(" + ie + ")"),
                              CLASS: new RegExp("^\\.(" + ie + ")"),
                              TAG: new RegExp("^(" + ie + "|[*])"),
                              ATTR: new RegExp("^" + re),
                              PSEUDO: new RegExp("^" + oe),
                              CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + ne + "*(even|odd|(([+-]|)(\\d*)n|)" + ne + "*(?:([+-]|)" + ne + "*(\\d+)|))" + ne + "*\\)|)", "i"),
                              bool: new RegExp("^(?:" + te + ")$", "i"),
                              needsContext: new RegExp("^" + ne + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + ne + "*((?:-\\d)?\\d*)" + ne + "*\\)|)(?=[^-]|$)", "i")
                          },
                          fe = /^(?:input|select|textarea|button)$/i,
                          ge = /^h\d$/i,
                          me = /^[^{]+\{\s*\[native \w/,
                          ve = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
                          ye = /[+~]/,
                          we = new RegExp("\\\\([\\da-f]{1,6}" + ne + "?|(" + ne + ")|.)", "ig"),
                          xe = function (e, t, n) {
                              var i = "0x" + t - 65536;
                              return i !== i || n ? t : i < 0 ? String.fromCharCode(i + 65536) : String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320)
                          },
                          be = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
                          _e = function (e, t) {
                              return t ? "\0" === e ? "�" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e
                          },
                          Ce = function () {
                              $()
                          },
                          Te = f(function (e) {
                              return e.disabled === !0 && ("form" in e || "label" in e)
                          }, {
                              dir: "parentNode",
                              next: "legend"
                          });
                      try {
                          Q.apply(G = K.call(I.childNodes), I.childNodes), G[I.childNodes.length].nodeType
                      } catch (Ee) {
                          Q = {
                              apply: G.length ? function (e, t) {
                                  J.apply(e, K.call(t))
                              } : function (e, t) {
                                  for (var n = e.length, i = 0; e[n++] = t[i++];);
                                  e.length = n - 1
                              }
                          }
                      }
                      _ = t.support = {}, E = t.isXML = function (e) {
                          var t = e && (e.ownerDocument || e).documentElement;
                          return !!t && "HTML" !== t.nodeName
                      }, $ = t.setDocument = function (e) {
                          var t, n, i = e ? e.ownerDocument || e : I;
                          return i !== L && 9 === i.nodeType && i.documentElement ? (L = i, z = L.documentElement, O = !E(L), I !== L && (n = L.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener("unload", Ce, !1) : n.attachEvent && n.attachEvent("onunload", Ce)), _.attributes = r(function (e) {
                              return e.className = "i", !e.getAttribute("className")
                          }), _.getElementsByTagName = r(function (e) {
                              return e.appendChild(L.createComment("")), !e.getElementsByTagName("*").length
                          }), _.getElementsByClassName = me.test(L.getElementsByClassName), _.getById = r(function (e) {
                              return z.appendChild(e).id = R, !L.getElementsByName || !L.getElementsByName(R).length
                          }), _.getById ? (C.filter.ID = function (e) {
                              var t = e.replace(we, xe);
                              return function (e) {
                                  return e.getAttribute("id") === t
                              }
                          }, C.find.ID = function (e, t) {
                              if ("undefined" != typeof t.getElementById && O) {
                                  var n = t.getElementById(e);
                                  return n ? [n] : []
                              }
                          }) : (C.filter.ID = function (e) {
                              var t = e.replace(we, xe);
                              return function (e) {
                                  var n = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id");
                                  return n && n.value === t
                              }
                          }, C.find.ID = function (e, t) {
                              if ("undefined" != typeof t.getElementById && O) {
                                  var n, i, r, o = t.getElementById(e);
                                  if (o) {
                                      if (n = o.getAttributeNode("id"), n && n.value === e) return [o];
                                      for (r = t.getElementsByName(e), i = 0; o = r[i++];)
                                          if (n = o.getAttributeNode("id"), n && n.value === e) return [o]
                                  }
                                  return []
                              }
                          }), C.find.TAG = _.getElementsByTagName ? function (e, t) {
                              return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : _.qsa ? t.querySelectorAll(e) : void 0
                          } : function (e, t) {
                              var n, i = [],
                                  r = 0,
                                  o = t.getElementsByTagName(e);
                              if ("*" === e) {
                                  for (; n = o[r++];) 1 === n.nodeType && i.push(n);
                                  return i
                              }
                              return o
                          }, C.find.CLASS = _.getElementsByClassName && function (e, t) {
                              if ("undefined" != typeof t.getElementsByClassName && O) return t.getElementsByClassName(e)
                          }, H = [], P = [], (_.qsa = me.test(L.querySelectorAll)) && (r(function (e) {
                              z.appendChild(e).innerHTML = "<a id='" + R + "'></a><select id='" + R + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && P.push("[*^$]=" + ne + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || P.push("\\[" + ne + "*(?:value|" + te + ")"), e.querySelectorAll("[id~=" + R + "-]").length || P.push("~="), e.querySelectorAll(":checked").length || P.push(":checked"), e.querySelectorAll("a#" + R + "+*").length || P.push(".#.+[+~]")
                          }), r(function (e) {
                              e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
                              var t = L.createElement("input");
                              t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && P.push("name" + ne + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && P.push(":enabled", ":disabled"), z.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && P.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), P.push(",.*:")
                          })), (_.matchesSelector = me.test(q = z.matches || z.webkitMatchesSelector || z.mozMatchesSelector || z.oMatchesSelector || z.msMatchesSelector)) && r(function (e) {
                              _.disconnectedMatch = q.call(e, "*"), q.call(e, "[s!='']:x"), H.push("!=", oe)
                          }), P = P.length && new RegExp(P.join("|")), H = H.length && new RegExp(H.join("|")), t = me.test(z.compareDocumentPosition), M = t || me.test(z.contains) ? function (e, t) {
                              var n = 9 === e.nodeType ? e.documentElement : e,
                                  i = t && t.parentNode;
                              return e === i || !(!i || 1 !== i.nodeType || !(n.contains ? n.contains(i) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(i)))
                          } : function (e, t) {
                              if (t)
                                  for (; t = t.parentNode;)
                                      if (t === e) return !0;
                              return !1
                          }, X = t ? function (e, t) {
                              if (e === t) return A = !0, 0;
                              var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
                              return n ? n : (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1, 1 & n || !_.sortDetached && t.compareDocumentPosition(e) === n ? e === L || e.ownerDocument === I && M(I, e) ? -1 : t === L || t.ownerDocument === I && M(I, t) ? 1 : j ? ee(j, e) - ee(j, t) : 0 : 4 & n ? -1 : 1)
                          } : function (e, t) {
                              if (e === t) return A = !0, 0;
                              var n, i = 0,
                                  r = e.parentNode,
                                  o = t.parentNode,
                                  a = [e],
                                  l = [t];
                              if (!r || !o) return e === L ? -1 : t === L ? 1 : r ? -1 : o ? 1 : j ? ee(j, e) - ee(j, t) : 0;
                              if (r === o) return s(e, t);
                              for (n = e; n = n.parentNode;) a.unshift(n);
                              for (n = t; n = n.parentNode;) l.unshift(n);
                              for (; a[i] === l[i];) i++;
                              return i ? s(a[i], l[i]) : a[i] === I ? -1 : l[i] === I ? 1 : 0
                          }, L) : L
                      }, t.matches = function (e, n) {
                          return t(e, null, null, n)
                      }, t.matchesSelector = function (e, n) {
                          if ((e.ownerDocument || e) !== L && $(e), n = n.replace(ce, "='$1']"), _.matchesSelector && O && !V[n + " "] && (!H || !H.test(n)) && (!P || !P.test(n))) try {
                              var i = q.call(e, n);
                              if (i || _.disconnectedMatch || e.document && 11 !== e.document.nodeType) return i
                          } catch (r) {}
                          return t(n, L, null, [e]).length > 0
                      }, t.contains = function (e, t) {
                          return (e.ownerDocument || e) !== L && $(e), M(e, t)
                      }, t.attr = function (e, t) {
                          (e.ownerDocument || e) !== L && $(e);
                          var n = C.attrHandle[t.toLowerCase()],
                              i = n && Y.call(C.attrHandle, t.toLowerCase()) ? n(e, t, !O) : void 0;
                          return void 0 !== i ? i : _.attributes || !O ? e.getAttribute(t) : (i = e.getAttributeNode(t)) && i.specified ? i.value : null
                      }, t.escape = function (e) {
                          return (e + "").replace(be, _e)
                      }, t.error = function (e) {
                          throw new Error("Syntax error, unrecognized expression: " + e)
                      }, t.uniqueSort = function (e) {
                          var t, n = [],
                              i = 0,
                              r = 0;
                          if (A = !_.detectDuplicates, j = !_.sortStable && e.slice(0), e.sort(X), A) {
                              for (; t = e[r++];) t === e[r] && (i = n.push(r));
                              for (; i--;) e.splice(n[i], 1)
                          }
                          return j = null, e
                      }, T = t.getText = function (e) {
                          var t, n = "",
                              i = 0,
                              r = e.nodeType;
                          if (r) {
                              if (1 === r || 9 === r || 11 === r) {
                                  if ("string" == typeof e.textContent) return e.textContent;
                                  for (e = e.firstChild; e; e = e.nextSibling) n += T(e)
                              } else if (3 === r || 4 === r) return e.nodeValue
                          } else
                              for (; t = e[i++];) n += T(t);
                          return n
                      }, C = t.selectors = {
                          cacheLength: 50,
                          createPseudo: i,
                          match: de,
                          attrHandle: {},
                          find: {},
                          relative: {
                              ">": {
                                  dir: "parentNode",
                                  first: !0
                              },
                              " ": {
                                  dir: "parentNode"
                              },
                              "+": {
                                  dir: "previousSibling",
                                  first: !0
                              },
                              "~": {
                                  dir: "previousSibling"
                              }
                          },
                          preFilter: {
                              ATTR: function (e) {
                                  return e[1] = e[1].replace(we, xe), e[3] = (e[3] || e[4] || e[5] || "").replace(we, xe), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
                              },
                              CHILD: function (e) {
                                  return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || t.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && t.error(e[0]), e
                              },
                              PSEUDO: function (e) {
                                  var t, n = !e[6] && e[2];
                                  return de.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && he.test(n) && (t = k(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3))
                              }
                          },
                          filter: {
                              TAG: function (e) {
                                  var t = e.replace(we, xe).toLowerCase();
                                  return "*" === e ? function () {
                                      return !0
                                  } : function (e) {
                                      return e.nodeName && e.nodeName.toLowerCase() === t
                                  }
                              },
                              CLASS: function (e) {
                                  var t = F[e + " "];
                                  return t || (t = new RegExp("(^|" + ne + ")" + e + "(" + ne + "|$)")) && F(e, function (e) {
                                      return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "")
                                  })
                              },
                              ATTR: function (e, n, i) {
                                  return function (r) {
                                      var o = t.attr(r, e);
                                      return null == o ? "!=" === n : !n || (o += "", "=" === n ? o === i : "!=" === n ? o !== i : "^=" === n ? i && 0 === o.indexOf(i) : "*=" === n ? i && o.indexOf(i) > -1 : "$=" === n ? i && o.slice(-i.length) === i : "~=" === n ? (" " + o.replace(se, " ") + " ").indexOf(i) > -1 : "|=" === n && (o === i || o.slice(0, i.length + 1) === i + "-"))
                                  }
                              },
                              CHILD: function (e, t, n, i, r) {
                                  var o = "nth" !== e.slice(0, 3),
                                      s = "last" !== e.slice(-4),
                                      a = "of-type" === t;
                                  return 1 === i && 0 === r ? function (e) {
                                      return !!e.parentNode
                                  } : function (t, n, l) {
                                      var u, c, h, p, d, f, g = o !== s ? "nextSibling" : "previousSibling",
                                          m = t.parentNode,
                                          v = a && t.nodeName.toLowerCase(),
                                          y = !l && !a,
                                          w = !1;
                                      if (m) {
                                          if (o) {
                                              for (; g;) {
                                                  for (p = t; p = p[g];)
                                                      if (a ? p.nodeName.toLowerCase() === v : 1 === p.nodeType) return !1;
                                                  f = g = "only" === e && !f && "nextSibling"
                                              }
                                              return !0
                                          }
                                          if (f = [s ? m.firstChild : m.lastChild], s && y) {
                                              for (p = m, h = p[R] || (p[R] = {}), c = h[p.uniqueID] || (h[p.uniqueID] = {}), u = c[e] || [], d = u[0] === B && u[1], w = d && u[2], p = d && m.childNodes[d]; p = ++d && p && p[g] || (w = d = 0) || f.pop();)
                                                  if (1 === p.nodeType && ++w && p === t) {
                                                      c[e] = [B, d, w];
                                                      break
                                                  }
                                          } else if (y && (p = t, h = p[R] || (p[R] = {}), c = h[p.uniqueID] || (h[p.uniqueID] = {}), u = c[e] || [], d = u[0] === B && u[1], w = d), w === !1)
                                              for (;
                                                  (p = ++d && p && p[g] || (w = d = 0) || f.pop()) && ((a ? p.nodeName.toLowerCase() !== v : 1 !== p.nodeType) || !++w || (y && (h = p[R] || (p[R] = {}), c = h[p.uniqueID] || (h[p.uniqueID] = {}), c[e] = [B, w]), p !== t)););
                                          return w -= r, w === i || w % i === 0 && w / i >= 0
                                      }
                                  }
                              },
                              PSEUDO: function (e, n) {
                                  var r, o = C.pseudos[e] || C.setFilters[e.toLowerCase()] || t.error("unsupported pseudo: " + e);
                                  return o[R] ? o(n) : o.length > 1 ? (r = [e, e, "", n], C.setFilters.hasOwnProperty(e.toLowerCase()) ? i(function (e, t) {
                                      for (var i, r = o(e, n), s = r.length; s--;) i = ee(e, r[s]), e[i] = !(t[i] = r[s])
                                  }) : function (e) {
                                      return o(e, 0, r)
                                  }) : o
                              }
                          },
                          pseudos: {
                              not: i(function (e) {
                                  var t = [],
                                      n = [],
                                      r = S(e.replace(ae, "$1"));
                                  return r[R] ? i(function (e, t, n, i) {
                                      for (var o, s = r(e, null, i, []), a = e.length; a--;)(o = s[a]) && (e[a] = !(t[a] = o))
                                  }) : function (e, i, o) {
                                      return t[0] = e, r(t, null, o, n), t[0] = null, !n.pop()
                                  }
                              }),
                              has: i(function (e) {
                                  return function (n) {
                                      return t(e, n).length > 0
                                  }
                              }),
                              contains: i(function (e) {
                                  return e = e.replace(we, xe),
                                      function (t) {
                                          return (t.textContent || t.innerText || T(t)).indexOf(e) > -1
                                      }
                              }),
                              lang: i(function (e) {
                                  return pe.test(e || "") || t.error("unsupported lang: " + e), e = e.replace(we, xe).toLowerCase(),
                                      function (t) {
                                          var n;
                                          do
                                              if (n = O ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang")) return n = n.toLowerCase(), n === e || 0 === n.indexOf(e + "-"); while ((t = t.parentNode) && 1 === t.nodeType);
                                          return !1
                                      }
                              }),
                              target: function (t) {
                                  var n = e.location && e.location.hash;
                                  return n && n.slice(1) === t.id
                              },
                              root: function (e) {
                                  return e === z
                              },
                              focus: function (e) {
                                  return e === L.activeElement && (!L.hasFocus || L.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
                              },
                              enabled: u(!1),
                              disabled: u(!0),
                              checked: function (e) {
                                  var t = e.nodeName.toLowerCase();
                                  return "input" === t && !!e.checked || "option" === t && !!e.selected
                              },
                              selected: function (e) {
                                  return e.parentNode && e.parentNode.selectedIndex, e.selected === !0
                              },
                              empty: function (e) {
                                  for (e = e.firstChild; e; e = e.nextSibling)
                                      if (e.nodeType < 6) return !1;
                                  return !0
                              },
                              parent: function (e) {
                                  return !C.pseudos.empty(e)
                              },
                              header: function (e) {
                                  return ge.test(e.nodeName)
                              },
                              input: function (e) {
                                  return fe.test(e.nodeName)
                              },
                              button: function (e) {
                                  var t = e.nodeName.toLowerCase();
                                  return "input" === t && "button" === e.type || "button" === t
                              },
                              text: function (e) {
                                  var t;
                                  return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase())
                              },
                              first: c(function () {
                                  return [0]
                              }),
                              last: c(function (e, t) {
                                  return [t - 1]
                              }),
                              eq: c(function (e, t, n) {
                                  return [n < 0 ? n + t : n]
                              }),
                              even: c(function (e, t) {
                                  for (var n = 0; n < t; n += 2) e.push(n);
                                  return e
                              }),
                              odd: c(function (e, t) {
                                  for (var n = 1; n < t; n += 2) e.push(n);
                                  return e
                              }),
                              lt: c(function (e, t, n) {
                                  for (var i = n < 0 ? n + t : n; --i >= 0;) e.push(i);
                                  return e
                              }),
                              gt: c(function (e, t, n) {
                                  for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i);
                                  return e
                              })
                          }
                      }, C.pseudos.nth = C.pseudos.eq;
                      for (b in {
                              radio: !0,
                              checkbox: !0,
                              file: !0,
                              password: !0,
                              image: !0
                          }) C.pseudos[b] = a(b);
                      for (b in {
                              submit: !0,
                              reset: !0
                          }) C.pseudos[b] = l(b);
                      return p.prototype = C.filters = C.pseudos, C.setFilters = new p, k = t.tokenize = function (e, n) {
                          var i, r, o, s, a, l, u, c = U[e + " "];
                          if (c) return n ? 0 : c.slice(0);
                          for (a = e, l = [], u = C.preFilter; a;) {
                              i && !(r = le.exec(a)) || (r && (a = a.slice(r[0].length) || a), l.push(o = [])), i = !1, (r = ue.exec(a)) && (i = r.shift(), o.push({
                                  value: i,
                                  type: r[0].replace(ae, " ")
                              }), a = a.slice(i.length));
                              for (s in C.filter) !(r = de[s].exec(a)) || u[s] && !(r = u[s](r)) || (i = r.shift(), o.push({
                                  value: i,
                                  type: s,
                                  matches: r
                              }), a = a.slice(i.length));
                              if (!i) break
                          }
                          return n ? a.length : a ? t.error(e) : U(e, l).slice(0)
                      }, S = t.compile = function (e, t) {
                          var n, i = [],
                              r = [],
                              o = V[e + " "];
                          if (!o) {
                              for (t || (t = k(e)), n = t.length; n--;) o = w(t[n]), o[R] ? i.push(o) : r.push(o);
                              o = V(e, x(r, i)), o.selector = e
                          }
                          return o
                      }, D = t.select = function (e, t, n, i) {
                          var r, o, s, a, l, u = "function" == typeof e && e,
                              c = !i && k(e = u.selector || e);
                          if (n = n || [], 1 === c.length) {
                              if (o = c[0] = c[0].slice(0), o.length > 2 && "ID" === (s = o[0]).type && 9 === t.nodeType && O && C.relative[o[1].type]) {
                                  if (t = (C.find.ID(s.matches[0].replace(we, xe), t) || [])[0], !t) return n;
                                  u && (t = t.parentNode), e = e.slice(o.shift().value.length)
                              }
                              for (r = de.needsContext.test(e) ? 0 : o.length; r-- && (s = o[r], !C.relative[a = s.type]);)
                                  if ((l = C.find[a]) && (i = l(s.matches[0].replace(we, xe), ye.test(o[0].type) && h(t.parentNode) || t))) {
                                      if (o.splice(r, 1), e = i.length && d(o), !e) return Q.apply(n, i), n;
                                      break
                                  }
                          }
                          return (u || S(e, c))(i, t, !O, n, !t || ye.test(e) && h(t.parentNode) || t), n
                      }, _.sortStable = R.split("").sort(X).join("") === R, _.detectDuplicates = !!A, $(), _.sortDetached = r(function (e) {
                          return 1 & e.compareDocumentPosition(L.createElement("fieldset"))
                      }), r(function (e) {
                          return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
                      }) || o("type|href|height|width", function (e, t, n) {
                          if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
                      }), _.attributes && r(function (e) {
                          return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
                      }) || o("value", function (e, t, n) {
                          if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue
                      }), r(function (e) {
                          return null == e.getAttribute("disabled")
                      }) || o(te, function (e, t, n) {
                          var i;
                          if (!n) return e[t] === !0 ? t.toLowerCase() : (i = e.getAttributeNode(t)) && i.specified ? i.value : null
                      }), t
                  }(n);
              ke.find = De, ke.expr = De.selectors, ke.expr[":"] = ke.expr.pseudos, ke.uniqueSort = ke.unique = De.uniqueSort, ke.text = De.getText, ke.isXMLDoc = De.isXML, ke.contains = De.contains, ke.escapeSelector = De.escape;
              var Ne = function (e, t, n) {
                      for (var i = [], r = void 0 !== n;
                          (e = e[t]) && 9 !== e.nodeType;)
                          if (1 === e.nodeType) {
                              if (r && ke(e).is(n)) break;
                              i.push(e)
                          } return i
                  },
                  je = function (e, t) {
                      for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
                      return n
                  },
                  Ae = ke.expr.match.needsContext,
                  $e = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
              ke.filter = function (e, t, n) {
                  var i = t[0];
                  return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === i.nodeType ? ke.find.matchesSelector(i, e) ? [i] : [] : ke.find.matches(e, ke.grep(t, function (e) {
                      return 1 === e.nodeType
                  }))
              }, ke.fn.extend({
                  find: function (e) {
                      var t, n, i = this.length,
                          r = this;
                      if ("string" != typeof e) return this.pushStack(ke(e).filter(function () {
                          for (t = 0; t < i; t++)
                              if (ke.contains(r[t], this)) return !0
                      }));
                      for (n = this.pushStack([]), t = 0; t < i; t++) ke.find(e, r[t], n);
                      return i > 1 ? ke.uniqueSort(n) : n
                  },
                  filter: function (e) {
                      return this.pushStack(c(this, e || [], !1))
                  },
                  not: function (e) {
                      return this.pushStack(c(this, e || [], !0))
                  },
                  is: function (e) {
                      return !!c(this, "string" == typeof e && Ae.test(e) ? ke(e) : e || [], !1).length
                  }
              });
              var Le, ze = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
                  Oe = ke.fn.init = function (e, t, n) {
                      var i, r;
                      if (!e) return this;
                      if (n = n || Le, "string" == typeof e) {
                          if (i = "<" === e[0] && ">" === e[e.length - 1] && e.length >= 3 ? [null, e, null] : ze.exec(e), !i || !i[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e);
                          if (i[1]) {
                              if (t = t instanceof ke ? t[0] : t, ke.merge(this, ke.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : ce, !0)), $e.test(i[1]) && ke.isPlainObject(t))
                                  for (i in t) _e(this[i]) ? this[i](t[i]) : this.attr(i, t[i]);
                              return this
                          }
                          return r = ce.getElementById(i[2]), r && (this[0] = r, this.length = 1), this
                      }
                      return e.nodeType ? (this[0] = e, this.length = 1, this) : _e(e) ? void 0 !== n.ready ? n.ready(e) : e(ke) : ke.makeArray(e, this)
                  };
              Oe.prototype = ke.fn, Le = ke(ce);
              var Pe = /^(?:parents|prev(?:Until|All))/,
                  He = {
                      children: !0,
                      contents: !0,
                      next: !0,
                      prev: !0
                  };
              ke.fn.extend({
                  has: function (e) {
                      var t = ke(e, this),
                          n = t.length;
                      return this.filter(function () {
                          for (var e = 0; e < n; e++)
                              if (ke.contains(this, t[e])) return !0
                      })
                  },
                  closest: function (e, t) {
                      var n, i = 0,
                          r = this.length,
                          o = [],
                          s = "string" != typeof e && ke(e);
                      if (!Ae.test(e))
                          for (; i < r; i++)
                              for (n = this[i]; n && n !== t; n = n.parentNode)
                                  if (n.nodeType < 11 && (s ? s.index(n) > -1 : 1 === n.nodeType && ke.find.matchesSelector(n, e))) {
                                      o.push(n);
                                      break
                                  } return this.pushStack(o.length > 1 ? ke.uniqueSort(o) : o)
                  },
                  index: function (e) {
                      return e ? "string" == typeof e ? ge.call(ke(e), this[0]) : ge.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
                  },
                  add: function (e, t) {
                      return this.pushStack(ke.uniqueSort(ke.merge(this.get(), ke(e, t))))
                  },
                  addBack: function (e) {
                      return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
                  }
              }), ke.each({
                  parent: function (e) {
                      var t = e.parentNode;
                      return t && 11 !== t.nodeType ? t : null
                  },
                  parents: function (e) {
                      return Ne(e, "parentNode")
                  },
                  parentsUntil: function (e, t, n) {
                      return Ne(e, "parentNode", n)
                  },
                  next: function (e) {
                      return h(e, "nextSibling")
                  },
                  prev: function (e) {
                      return h(e, "previousSibling")
                  },
                  nextAll: function (e) {
                      return Ne(e, "nextSibling")
                  },
                  prevAll: function (e) {
                      return Ne(e, "previousSibling")
                  },
                  nextUntil: function (e, t, n) {
                      return Ne(e, "nextSibling", n)
                  },
                  prevUntil: function (e, t, n) {
                      return Ne(e, "previousSibling", n)
                  },
                  siblings: function (e) {
                      return je((e.parentNode || {}).firstChild, e)
                  },
                  children: function (e) {
                      return je(e.firstChild)
                  },
                  contents: function (e) {
                      return u(e, "iframe") ? e.contentDocument : (u(e, "template") && (e = e.content || e), ke.merge([], e.childNodes))
                  }
              }, function (e, t) {
                  ke.fn[e] = function (n, i) {
                      var r = ke.map(this, t, n);
                      return "Until" !== e.slice(-5) && (i = n), i && "string" == typeof i && (r = ke.filter(i, r)), this.length > 1 && (He[e] || ke.uniqueSort(r), Pe.test(e) && r.reverse()), this.pushStack(r)
                  }
              });
              var qe = /[^\x20\t\r\n\f]+/g;
              ke.Callbacks = function (e) {
                  e = "string" == typeof e ? p(e) : ke.extend({}, e);
                  var t, n, i, r, o = [],
                      s = [],
                      l = -1,
                      u = function () {
                          for (r = r || e.once, i = t = !0; s.length; l = -1)
                              for (n = s.shift(); ++l < o.length;) o[l].apply(n[0], n[1]) === !1 && e.stopOnFalse && (l = o.length, n = !1);
                          e.memory || (n = !1), t = !1, r && (o = n ? [] : "")
                      },
                      c = {
                          add: function () {
                              return o && (n && !t && (l = o.length - 1, s.push(n)), function i(t) {
                                  ke.each(t, function (t, n) {
                                      _e(n) ? e.unique && c.has(n) || o.push(n) : n && n.length && "string" !== a(n) && i(n)
                                  })
                              }(arguments), n && !t && u()), this
                          },
                          remove: function () {
                              return ke.each(arguments, function (e, t) {
                                  for (var n;
                                      (n = ke.inArray(t, o, n)) > -1;) o.splice(n, 1), n <= l && l--
                              }), this
                          },
                          has: function (e) {
                              return e ? ke.inArray(e, o) > -1 : o.length > 0
                          },
                          empty: function () {
                              return o && (o = []), this
                          },
                          disable: function () {
                              return r = s = [], o = n = "", this
                          },
                          disabled: function () {
                              return !o
                          },
                          lock: function () {
                              return r = s = [], n || t || (o = n = ""), this
                          },
                          locked: function () {
                              return !!r
                          },
                          fireWith: function (e, n) {
                              return r || (n = n || [], n = [e, n.slice ? n.slice() : n], s.push(n), t || u()), this
                          },
                          fire: function () {
                              return c.fireWith(this, arguments), this
                          },
                          fired: function () {
                              return !!i
                          }
                      };
                  return c
              }, ke.extend({
                  Deferred: function (e) {
                      var t = [
                              ["notify", "progress", ke.Callbacks("memory"), ke.Callbacks("memory"), 2],
                              ["resolve", "done", ke.Callbacks("once memory"), ke.Callbacks("once memory"), 0, "resolved"],
                              ["reject", "fail", ke.Callbacks("once memory"), ke.Callbacks("once memory"), 1, "rejected"]
                          ],
                          i = "pending",
                          r = {
                              state: function () {
                                  return i
                              },
                              always: function () {
                                  return o.done(arguments).fail(arguments), this
                              },
                              "catch": function (e) {
                                  return r.then(null, e)
                              },
                              pipe: function () {
                                  var e = arguments;
                                  return ke.Deferred(function (n) {
                                      ke.each(t, function (t, i) {
                                          var r = _e(e[i[4]]) && e[i[4]];
                                          o[i[1]](function () {
                                              var e = r && r.apply(this, arguments);
                                              e && _e(e.promise) ? e.promise().progress(n.notify).done(n.resolve).fail(n.reject) : n[i[0] + "With"](this, r ? [e] : arguments)
                                          })
                                      }), e = null
                                  }).promise()
                              },
                              then: function (e, i, r) {
                                  function o(e, t, i, r) {
                                      return function () {
                                          var a = this,
                                              l = arguments,
                                              u = function () {
                                                  var n, u;
                                                  if (!(e < s)) {
                                                      if (n = i.apply(a, l), n === t.promise()) throw new TypeError("Thenable self-resolution");
                                                      u = n && ("object" == typeof n || "function" == typeof n) && n.then, _e(u) ? r ? u.call(n, o(s, t, d, r), o(s, t, f, r)) : (s++, u.call(n, o(s, t, d, r), o(s, t, f, r), o(s, t, d, t.notifyWith))) : (i !== d && (a = void 0, l = [n]), (r || t.resolveWith)(a, l))
                                                  }
                                              },
                                              c = r ? u : function () {
                                                  try {
                                                      u()
                                                  } catch (n) {
                                                      ke.Deferred.exceptionHook && ke.Deferred.exceptionHook(n, c.stackTrace), e + 1 >= s && (i !== f && (a = void 0, l = [n]), t.rejectWith(a, l))
                                                  }
                                              };
                                          e ? c() : (ke.Deferred.getStackHook && (c.stackTrace = ke.Deferred.getStackHook()), n.setTimeout(c))
                                      }
                                  }
                                  var s = 0;
                                  return ke.Deferred(function (n) {
                                      t[0][3].add(o(0, n, _e(r) ? r : d, n.notifyWith)), t[1][3].add(o(0, n, _e(e) ? e : d)), t[2][3].add(o(0, n, _e(i) ? i : f))
                                  }).promise()
                              },
                              promise: function (e) {
                                  return null != e ? ke.extend(e, r) : r
                              }
                          },
                          o = {};
                      return ke.each(t, function (e, n) {
                          var s = n[2],
                              a = n[5];
                          r[n[1]] = s.add, a && s.add(function () {
                              i = a
                          }, t[3 - e][2].disable, t[3 - e][3].disable, t[0][2].lock, t[0][3].lock), s.add(n[3].fire), o[n[0]] = function () {
                              return o[n[0] + "With"](this === o ? void 0 : this, arguments), this
                          }, o[n[0] + "With"] = s.fireWith
                      }), r.promise(o), e && e.call(o, o), o
                  },
                  when: function (e) {
                      var t = arguments.length,
                          n = t,
                          i = Array(n),
                          r = pe.call(arguments),
                          o = ke.Deferred(),
                          s = function (e) {
                              return function (n) {
                                  i[e] = this, r[e] = arguments.length > 1 ? pe.call(arguments) : n, --t || o.resolveWith(i, r)
                              }
                          };
                      if (t <= 1 && (g(e, o.done(s(n)).resolve, o.reject, !t), "pending" === o.state() || _e(r[n] && r[n].then))) return o.then();
                      for (; n--;) g(r[n], s(n), o.reject);
                      return o.promise()
                  }
              });
              var Me = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
              ke.Deferred.exceptionHook = function (e, t) {
                  n.console && n.console.warn && e && Me.test(e.name) && n.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t)
              }, ke.readyException = function (e) {
                  n.setTimeout(function () {
                      throw e
                  })
              };
              var Re = ke.Deferred();
              ke.fn.ready = function (e) {
                  return Re.then(e)["catch"](function (e) {
                      ke.readyException(e)
                  }), this
              }, ke.extend({
                  isReady: !1,
                  readyWait: 1,
                  ready: function (e) {
                      (e === !0 ? --ke.readyWait : ke.isReady) || (ke.isReady = !0, e !== !0 && --ke.readyWait > 0 || Re.resolveWith(ce, [ke]))
                  }
              }), ke.ready.then = Re.then, "complete" === ce.readyState || "loading" !== ce.readyState && !ce.documentElement.doScroll ? n.setTimeout(ke.ready) : (ce.addEventListener("DOMContentLoaded", m), n.addEventListener("load", m));
              var Ie = function (e, t, n, i, r, o, s) {
                      var l = 0,
                          u = e.length,
                          c = null == n;
                      if ("object" === a(n)) {
                          r = !0;
                          for (l in n) Ie(e, t, l, n[l], !0, o, s)
                      } else if (void 0 !== i && (r = !0, _e(i) || (s = !0), c && (s ? (t.call(e, i), t = null) : (c = t, t = function (e, t, n) {
                              return c.call(ke(e), n)
                          })), t))
                          for (; l < u; l++) t(e[l], n, s ? i : i.call(e[l], l, t(e[l], n)));
                      return r ? e : c ? t.call(e) : u ? t(e[0], n) : o
                  },
                  Be = /^-ms-/,
                  We = /-([a-z])/g,
                  Fe = function (e) {
                      return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType
                  };
              w.uid = 1, w.prototype = {
                  cache: function (e) {
                      var t = e[this.expando];
                      return t || (t = {}, Fe(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, {
                          value: t,
                          configurable: !0
                      }))), t
                  },
                  set: function (e, t, n) {
                      var i, r = this.cache(e);
                      if ("string" == typeof t) r[y(t)] = n;
                      else
                          for (i in t) r[y(i)] = t[i];
                      return r
                  },
                  get: function (e, t) {
                      return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][y(t)]
                  },
                  access: function (e, t, n) {
                      return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t)
                  },
                  remove: function (e, t) {
                      var n, i = e[this.expando];
                      if (void 0 !== i) {
                          if (void 0 !== t) {
                              Array.isArray(t) ? t = t.map(y) : (t = y(t), t = t in i ? [t] : t.match(qe) || []), n = t.length;
                              for (; n--;) delete i[t[n]]
                          }(void 0 === t || ke.isEmptyObject(i)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando])
                      }
                  },
                  hasData: function (e) {
                      var t = e[this.expando];
                      return void 0 !== t && !ke.isEmptyObject(t)
                  }
              };
              var Ue = new w,
                  Ve = new w,
                  Xe = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
                  Ye = /[A-Z]/g;
              ke.extend({
                  hasData: function (e) {
                      return Ve.hasData(e) || Ue.hasData(e)
                  },
                  data: function (e, t, n) {
                      return Ve.access(e, t, n)
                  },
                  removeData: function (e, t) {
                      Ve.remove(e, t)
                  },
                  _data: function (e, t, n) {
                      return Ue.access(e, t, n)
                  },
                  _removeData: function (e, t) {
                      Ue.remove(e, t)
                  }
              }), ke.fn.extend({
                  data: function (e, t) {
                      var n, i, r, o = this[0],
                          s = o && o.attributes;
                      if (void 0 === e) {
                          if (this.length && (r = Ve.get(o), 1 === o.nodeType && !Ue.get(o, "hasDataAttrs"))) {
                              for (n = s.length; n--;) s[n] && (i = s[n].name, 0 === i.indexOf("data-") && (i = y(i.slice(5)), b(o, i, r[i])));
                              Ue.set(o, "hasDataAttrs", !0)
                          }
                          return r
                      }
                      return "object" == typeof e ? this.each(function () {
                          Ve.set(this, e)
                      }) : Ie(this, function (t) {
                          var n;
                          if (o && void 0 === t) {
                              if (n = Ve.get(o, e), void 0 !== n) return n;
                              if (n = b(o, e), void 0 !== n) return n
                          } else this.each(function () {
                              Ve.set(this, e, t)
                          })
                      }, null, t, arguments.length > 1, null, !0)
                  },
                  removeData: function (e) {
                      return this.each(function () {
                          Ve.remove(this, e)
                      })
                  }
              }), ke.extend({
                  queue: function (e, t, n) {
                      var i;
                      if (e) return t = (t || "fx") + "queue", i = Ue.get(e, t), n && (!i || Array.isArray(n) ? i = Ue.access(e, t, ke.makeArray(n)) : i.push(n)), i || []
                  },
                  dequeue: function (e, t) {
                      t = t || "fx";
                      var n = ke.queue(e, t),
                          i = n.length,
                          r = n.shift(),
                          o = ke._queueHooks(e, t),
                          s = function () {
                              ke.dequeue(e, t)
                          };
                      "inprogress" === r && (r = n.shift(), i--), r && ("fx" === t && n.unshift("inprogress"), delete o.stop, r.call(e, s, o)), !i && o && o.empty.fire()
                  },
                  _queueHooks: function (e, t) {
                      var n = t + "queueHooks";
                      return Ue.get(e, n) || Ue.access(e, n, {
                          empty: ke.Callbacks("once memory").add(function () {
                              Ue.remove(e, [t + "queue", n])
                          })
                      })
                  }
              }), ke.fn.extend({
                  queue: function (e, t) {
                      var n = 2;
                      return "string" != typeof e && (t = e, e = "fx", n--), arguments.length < n ? ke.queue(this[0], e) : void 0 === t ? this : this.each(function () {
                          var n = ke.queue(this, e, t);
                          ke._queueHooks(this, e), "fx" === e && "inprogress" !== n[0] && ke.dequeue(this, e)
                      })
                  },
                  dequeue: function (e) {
                      return this.each(function () {
                          ke.dequeue(this, e)
                      })
                  },
                  clearQueue: function (e) {
                      return this.queue(e || "fx", [])
                  },
                  promise: function (e, t) {
                      var n, i = 1,
                          r = ke.Deferred(),
                          o = this,
                          s = this.length,
                          a = function () {
                              --i || r.resolveWith(o, [o])
                          };
                      for ("string" != typeof e && (t = e, e = void 0), e = e || "fx"; s--;) n = Ue.get(o[s], e + "queueHooks"), n && n.empty && (i++, n.empty.add(a));
                      return a(), r.promise(t)
                  }
              });
              var Ge = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
                  Ze = new RegExp("^(?:([+-])=|)(" + Ge + ")([a-z%]*)$", "i"),
                  Je = ["Top", "Right", "Bottom", "Left"],
                  Qe = function (e, t) {
                      return e = t || e, "none" === e.style.display || "" === e.style.display && ke.contains(e.ownerDocument, e) && "none" === ke.css(e, "display")
                  },
                  Ke = function (e, t, n, i) {
                      var r, o, s = {};
                      for (o in t) s[o] = e.style[o], e.style[o] = t[o];
                      r = n.apply(e, i || []);
                      for (o in t) e.style[o] = s[o];
                      return r
                  },
                  et = {};
              ke.fn.extend({
                  show: function () {
                      return T(this, !0)
                  },
                  hide: function () {
                      return T(this)
                  },
                  toggle: function (e) {
                      return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () {
                          Qe(this) ? ke(this).show() : ke(this).hide()
                      })
                  }
              });
              var tt = /^(?:checkbox|radio)$/i,
                  nt = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i,
                  it = /^$|^module$|\/(?:java|ecma)script/i,
                  rt = {
                      option: [1, "<select multiple='multiple'>", "</select>"],
                      thead: [1, "<table>", "</table>"],
                      col: [2, "<table><colgroup>", "</colgroup></table>"],
                      tr: [2, "<table><tbody>", "</tbody></table>"],
                      td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
                      _default: [0, "", ""]
                  };
              rt.optgroup = rt.option, rt.tbody = rt.tfoot = rt.colgroup = rt.caption = rt.thead, rt.th = rt.td;
              var ot = /<|&#?\w+;/;
              ! function () {
                  var e = ce.createDocumentFragment(),
                      t = e.appendChild(ce.createElement("div")),
                      n = ce.createElement("input");
                  n.setAttribute("type", "radio"), n.setAttribute("checked", "checked"), n.setAttribute("name", "t"), t.appendChild(n), be.checkClone = t.cloneNode(!0).cloneNode(!0).lastChild.checked, t.innerHTML = "<textarea>x</textarea>", be.noCloneChecked = !!t.cloneNode(!0).lastChild.defaultValue
              }();
              var st = ce.documentElement,
                  at = /^key/,
                  lt = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
                  ut = /^([^.]*)(?:\.(.+)|)/;
              ke.event = {
                  global: {},
                  add: function (e, t, n, i, r) {
                      var o, s, a, l, u, c, h, p, d, f, g, m = Ue.get(e);
                      if (m)
                          for (n.handler && (o = n, n = o.handler, r = o.selector), r && ke.find.matchesSelector(st, r), n.guid || (n.guid = ke.guid++), (l = m.events) || (l = m.events = {}), (s = m.handle) || (s = m.handle = function (t) {
                                  return "undefined" != typeof ke && ke.event.triggered !== t.type ? ke.event.dispatch.apply(e, arguments) : void 0
                              }), t = (t || "").match(qe) || [""], u = t.length; u--;) a = ut.exec(t[u]) || [], d = g = a[1], f = (a[2] || "").split(".").sort(), d && (h = ke.event.special[d] || {}, d = (r ? h.delegateType : h.bindType) || d, h = ke.event.special[d] || {}, c = ke.extend({
                              type: d,
                              origType: g,
                              data: i,
                              handler: n,
                              guid: n.guid,
                              selector: r,
                              needsContext: r && ke.expr.match.needsContext.test(r),
                              namespace: f.join(".")
                          }, o), (p = l[d]) || (p = l[d] = [], p.delegateCount = 0, h.setup && h.setup.call(e, i, f, s) !== !1 || e.addEventListener && e.addEventListener(d, s)), h.add && (h.add.call(e, c), c.handler.guid || (c.handler.guid = n.guid)), r ? p.splice(p.delegateCount++, 0, c) : p.push(c), ke.event.global[d] = !0)
                  },
                  remove: function (e, t, n, i, r) {
                      var o, s, a, l, u, c, h, p, d, f, g, m = Ue.hasData(e) && Ue.get(e);
                      if (m && (l = m.events)) {
                          for (t = (t || "").match(qe) || [""], u = t.length; u--;)
                              if (a = ut.exec(t[u]) || [], d = g = a[1], f = (a[2] || "").split(".").sort(), d) {
                                  for (h = ke.event.special[d] || {}, d = (i ? h.delegateType : h.bindType) || d, p = l[d] || [], a = a[2] && new RegExp("(^|\\.)" + f.join("\\.(?:.*\\.|)") + "(\\.|$)"), s = o = p.length; o--;) c = p[o], !r && g !== c.origType || n && n.guid !== c.guid || a && !a.test(c.namespace) || i && i !== c.selector && ("**" !== i || !c.selector) || (p.splice(o, 1), c.selector && p.delegateCount--, h.remove && h.remove.call(e, c));
                                  s && !p.length && (h.teardown && h.teardown.call(e, f, m.handle) !== !1 || ke.removeEvent(e, d, m.handle), delete l[d])
                              } else
                                  for (d in l) ke.event.remove(e, d + t[u], n, i, !0);
                          ke.isEmptyObject(l) && Ue.remove(e, "handle events")
                      }
                  },
                  dispatch: function (e) {
                      var t, n, i, r, o, s, a = ke.event.fix(e),
                          l = new Array(arguments.length),
                          u = (Ue.get(this, "events") || {})[a.type] || [],
                          c = ke.event.special[a.type] || {};
                      for (l[0] = a, t = 1; t < arguments.length; t++) l[t] = arguments[t];
                      if (a.delegateTarget = this, !c.preDispatch || c.preDispatch.call(this, a) !== !1) {
                          for (s = ke.event.handlers.call(this, a, u), t = 0;
                              (r = s[t++]) && !a.isPropagationStopped();)
                              for (a.currentTarget = r.elem, n = 0;
                                  (o = r.handlers[n++]) && !a.isImmediatePropagationStopped();) a.rnamespace && !a.rnamespace.test(o.namespace) || (a.handleObj = o, a.data = o.data, i = ((ke.event.special[o.origType] || {}).handle || o.handler).apply(r.elem, l), void 0 !== i && (a.result = i) === !1 && (a.preventDefault(), a.stopPropagation()));
                          return c.postDispatch && c.postDispatch.call(this, a), a.result
                      }
                  },
                  handlers: function (e, t) {
                      var n, i, r, o, s, a = [],
                          l = t.delegateCount,
                          u = e.target;
                      if (l && u.nodeType && !("click" === e.type && e.button >= 1))
                          for (; u !== this; u = u.parentNode || this)
                              if (1 === u.nodeType && ("click" !== e.type || u.disabled !== !0)) {
                                  for (o = [], s = {}, n = 0; n < l; n++) i = t[n], r = i.selector + " ", void 0 === s[r] && (s[r] = i.needsContext ? ke(r, this).index(u) > -1 : ke.find(r, this, null, [u]).length), s[r] && o.push(i);
                                  o.length && a.push({
                                      elem: u,
                                      handlers: o
                                  })
                              } return u = this, l < t.length && a.push({
                          elem: u,
                          handlers: t.slice(l)
                      }), a
                  },
                  addProp: function (e, t) {
                      Object.defineProperty(ke.Event.prototype, e, {
                          enumerable: !0,
                          configurable: !0,
                          get: _e(t) ? function () {
                              if (this.originalEvent) return t(this.originalEvent)
                          } : function () {
                              if (this.originalEvent) return this.originalEvent[e]
                          },
                          set: function (t) {
                              Object.defineProperty(this, e, {
                                  enumerable: !0,
                                  configurable: !0,
                                  writable: !0,
                                  value: t
                              })
                          }
                      })
                  },
                  fix: function (e) {
                      return e[ke.expando] ? e : new ke.Event(e)
                  },
                  special: {
                      load: {
                          noBubble: !0
                      },
                      focus: {
                          trigger: function () {
                              if (this !== j() && this.focus) return this.focus(), !1
                          },
                          delegateType: "focusin"
                      },
                      blur: {
                          trigger: function () {
                              if (this === j() && this.blur) return this.blur(), !1
                          },
                          delegateType: "focusout"
                      },
                      click: {
                          trigger: function () {
                              if ("checkbox" === this.type && this.click && u(this, "input")) return this.click(), !1
                          },
                          _default: function (e) {
                              return u(e.target, "a")
                          }
                      },
                      beforeunload: {
                          postDispatch: function (e) {
                              void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
                          }
                      }
                  }
              }, ke.removeEvent = function (e, t, n) {
                  e.removeEventListener && e.removeEventListener(t, n)
              }, ke.Event = function (e, t) {
                  return this instanceof ke.Event ? (e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && e.returnValue === !1 ? D : N, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && ke.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), void(this[ke.expando] = !0)) : new ke.Event(e, t)
              }, ke.Event.prototype = {
                  constructor: ke.Event,
                  isDefaultPrevented: N,
                  isPropagationStopped: N,
                  isImmediatePropagationStopped: N,
                  isSimulated: !1,
                  preventDefault: function () {
                      var e = this.originalEvent;
                      this.isDefaultPrevented = D, e && !this.isSimulated && e.preventDefault()
                  },
                  stopPropagation: function () {
                      var e = this.originalEvent;
                      this.isPropagationStopped = D, e && !this.isSimulated && e.stopPropagation()
                  },
                  stopImmediatePropagation: function () {
                      var e = this.originalEvent;
                      this.isImmediatePropagationStopped = D, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation()
                  }
              }, ke.each({
                  altKey: !0,
                  bubbles: !0,
                  cancelable: !0,
                  changedTouches: !0,
                  ctrlKey: !0,
                  detail: !0,
                  eventPhase: !0,
                  metaKey: !0,
                  pageX: !0,
                  pageY: !0,
                  shiftKey: !0,
                  view: !0,
                  "char": !0,
                  charCode: !0,
                  key: !0,
                  keyCode: !0,
                  button: !0,
                  buttons: !0,
                  clientX: !0,
                  clientY: !0,
                  offsetX: !0,
                  offsetY: !0,
                  pointerId: !0,
                  pointerType: !0,
                  screenX: !0,
                  screenY: !0,
                  targetTouches: !0,
                  toElement: !0,
                  touches: !0,
                  which: function (e) {
                      var t = e.button;
                      return null == e.which && at.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && lt.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which
                  }
              }, ke.event.addProp), ke.each({
                  mouseenter: "mouseover",
                  mouseleave: "mouseout",
                  pointerenter: "pointerover",
                  pointerleave: "pointerout"
              }, function (e, t) {
                  ke.event.special[e] = {
                      delegateType: t,
                      bindType: t,
                      handle: function (e) {
                          var n, i = this,
                              r = e.relatedTarget,
                              o = e.handleObj;
                          return r && (r === i || ke.contains(i, r)) || (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n
                      }
                  }
              }), ke.fn.extend({
                  on: function (e, t, n, i) {
                      return A(this, e, t, n, i)
                  },
                  one: function (e, t, n, i) {
                      return A(this, e, t, n, i, 1)
                  },
                  off: function (e, t, n) {
                      var i, r;
                      if (e && e.preventDefault && e.handleObj) return i = e.handleObj, ke(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this;
                      if ("object" == typeof e) {
                          for (r in e) this.off(r, t, e[r]);
                          return this
                      }
                      return t !== !1 && "function" != typeof t || (n = t, t = void 0), n === !1 && (n = N), this.each(function () {
                          ke.event.remove(this, e, n, t)
                      })
                  }
              });
              var ct = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
                  ht = /<script|<style|<link/i,
                  pt = /checked\s*(?:[^=]|=\s*.checked.)/i,
                  dt = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
              ke.extend({
                  htmlPrefilter: function (e) {
                      return e.replace(ct, "<$1></$2>")
                  },
                  clone: function (e, t, n) {
                      var i, r, o, s, a = e.cloneNode(!0),
                          l = ke.contains(e.ownerDocument, e);
                      if (!(be.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || ke.isXMLDoc(e)))
                          for (s = E(a), o = E(e), i = 0, r = o.length; i < r; i++) P(o[i], s[i]);
                      if (t)
                          if (n)
                              for (o = o || E(e), s = s || E(a), i = 0, r = o.length; i < r; i++) O(o[i], s[i]);
                          else O(e, a);
                      return s = E(a, "script"), s.length > 0 && k(s, !l && E(e, "script")), a
                  },
                  cleanData: function (e) {
                      for (var t, n, i, r = ke.event.special, o = 0; void 0 !== (n = e[o]); o++)
                          if (Fe(n)) {
                              if (t = n[Ue.expando]) {
                                  if (t.events)
                                      for (i in t.events) r[i] ? ke.event.remove(n, i) : ke.removeEvent(n, i, t.handle);
                                  n[Ue.expando] = void 0
                              }
                              n[Ve.expando] && (n[Ve.expando] = void 0)
                          }
                  }
              }), ke.fn.extend({
                  detach: function (e) {
                      return q(this, e, !0)
                  },
                  remove: function (e) {
                      return q(this, e)
                  },
                  text: function (e) {
                      return Ie(this, function (e) {
                          return void 0 === e ? ke.text(this) : this.empty().each(function () {
                              1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e)
                          })
                      }, null, e, arguments.length)
                  },
                  append: function () {
                      return H(this, arguments, function (e) {
                          if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                              var t = $(this, e);
                              t.appendChild(e)
                          }
                      })
                  },
                  prepend: function () {
                      return H(this, arguments, function (e) {
                          if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
                              var t = $(this, e);
                              t.insertBefore(e, t.firstChild)
                          }
                      })
                  },
                  before: function () {
                      return H(this, arguments, function (e) {
                          this.parentNode && this.parentNode.insertBefore(e, this)
                      })
                  },
                  after: function () {
                      return H(this, arguments, function (e) {
                          this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
                      })
                  },
                  empty: function () {
                      for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (ke.cleanData(E(e, !1)), e.textContent = "");
                      return this
                  },
                  clone: function (e, t) {
                      return e = null != e && e, t = null == t ? e : t, this.map(function () {
                          return ke.clone(this, e, t)
                      })
                  },
                  html: function (e) {
                      return Ie(this, function (e) {
                          var t = this[0] || {},
                              n = 0,
                              i = this.length;
                          if (void 0 === e && 1 === t.nodeType) return t.innerHTML;
                          if ("string" == typeof e && !ht.test(e) && !rt[(nt.exec(e) || ["", ""])[1].toLowerCase()]) {
                              e = ke.htmlPrefilter(e);
                              try {
                                  for (; n < i; n++) t = this[n] || {}, 1 === t.nodeType && (ke.cleanData(E(t, !1)), t.innerHTML = e);
                                  t = 0
                              } catch (r) {}
                          }
                          t && this.empty().append(e)
                      }, null, e, arguments.length)
                  },
                  replaceWith: function () {
                      var e = [];
                      return H(this, arguments, function (t) {
                          var n = this.parentNode;
                          ke.inArray(this, e) < 0 && (ke.cleanData(E(this)), n && n.replaceChild(t, this))
                      }, e)
                  }
              }), ke.each({
                  appendTo: "append",
                  prependTo: "prepend",
                  insertBefore: "before",
                  insertAfter: "after",
                  replaceAll: "replaceWith"
              }, function (e, t) {
                  ke.fn[e] = function (e) {
                      for (var n, i = [], r = ke(e), o = r.length - 1, s = 0; s <= o; s++) n = s === o ? this : this.clone(!0), ke(r[s])[t](n), fe.apply(i, n.get());
                      return this.pushStack(i)
                  }
              });
              var ft = new RegExp("^(" + Ge + ")(?!px)[a-z%]+$", "i"),
                  gt = function (e) {
                      var t = e.ownerDocument.defaultView;
                      return t && t.opener || (t = n), t.getComputedStyle(e)
                  },
                  mt = new RegExp(Je.join("|"), "i");
              ! function () {
                  function e() {
                      if (u) {
                          l.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", u.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", st.appendChild(l).appendChild(u);
                          var e = n.getComputedStyle(u);
                          i = "1%" !== e.top, a = 12 === t(e.marginLeft), u.style.right = "60%", s = 36 === t(e.right), r = 36 === t(e.width), u.style.position = "absolute", o = 36 === u.offsetWidth || "absolute", st.removeChild(l), u = null
                      }
                  }
  
                  function t(e) {
                      return Math.round(parseFloat(e))
                  }
                  var i, r, o, s, a, l = ce.createElement("div"),
                      u = ce.createElement("div");
                  u.style && (u.style.backgroundClip = "content-box", u.cloneNode(!0).style.backgroundClip = "", be.clearCloneStyle = "content-box" === u.style.backgroundClip, ke.extend(be, {
                      boxSizingReliable: function () {
                          return e(), r
                      },
                      pixelBoxStyles: function () {
                          return e(), s
                      },
                      pixelPosition: function () {
                          return e(), i
                      },
                      reliableMarginLeft: function () {
                          return e(), a
                      },
                      scrollboxSize: function () {
                          return e(), o
                      }
                  }))
              }();
              var vt = /^(none|table(?!-c[ea]).+)/,
                  yt = /^--/,
                  wt = {
                      position: "absolute",
                      visibility: "hidden",
                      display: "block"
                  },
                  xt = {
                      letterSpacing: "0",
                      fontWeight: "400"
                  },
                  bt = ["Webkit", "Moz", "ms"],
                  _t = ce.createElement("div").style;
              ke.extend({
                  cssHooks: {
                      opacity: {
                          get: function (e, t) {
                              if (t) {
                                  var n = M(e, "opacity");
                                  return "" === n ? "1" : n
                              }
                          }
                      }
                  },
                  cssNumber: {
                      animationIterationCount: !0,
                      columnCount: !0,
                      fillOpacity: !0,
                      flexGrow: !0,
                      flexShrink: !0,
                      fontWeight: !0,
                      lineHeight: !0,
                      opacity: !0,
                      order: !0,
                      orphans: !0,
                      widows: !0,
                      zIndex: !0,
                      zoom: !0
                  },
                  cssProps: {},
                  style: function (e, t, n, i) {
                      if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
                          var r, o, s, a = y(t),
                              l = yt.test(t),
                              u = e.style;
                          return l || (t = B(a)), s = ke.cssHooks[t] || ke.cssHooks[a], void 0 === n ? s && "get" in s && void 0 !== (r = s.get(e, !1, i)) ? r : u[t] : (o = typeof n, "string" === o && (r = Ze.exec(n)) && r[1] && (n = _(e, t, r), o = "number"), null != n && n === n && ("number" === o && (n += r && r[3] || (ke.cssNumber[a] ? "" : "px")), be.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (u[t] = "inherit"), s && "set" in s && void 0 === (n = s.set(e, n, i)) || (l ? u.setProperty(t, n) : u[t] = n)), void 0)
                      }
                  },
                  css: function (e, t, n, i) {
                      var r, o, s, a = y(t),
                          l = yt.test(t);
                      return l || (t = B(a)), s = ke.cssHooks[t] || ke.cssHooks[a], s && "get" in s && (r = s.get(e, !0, n)), void 0 === r && (r = M(e, t, i)), "normal" === r && t in xt && (r = xt[t]), "" === n || n ? (o = parseFloat(r), n === !0 || isFinite(o) ? o || 0 : r) : r
                  }
              }), ke.each(["height", "width"], function (e, t) {
                  ke.cssHooks[t] = {
                      get: function (e, n, i) {
                          if (n) return !vt.test(ke.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? U(e, t, i) : Ke(e, wt, function () {
                              return U(e, t, i)
                          })
                      },
                      set: function (e, n, i) {
                          var r, o = gt(e),
                              s = "border-box" === ke.css(e, "boxSizing", !1, o),
                              a = i && F(e, t, i, s, o);
                          return s && be.scrollboxSize() === o.position && (a -= Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - parseFloat(o[t]) - F(e, t, "border", !1, o) - .5)), a && (r = Ze.exec(n)) && "px" !== (r[3] || "px") && (e.style[t] = n, n = ke.css(e, t)), W(e, n, a)
                      }
                  }
              }), ke.cssHooks.marginLeft = R(be.reliableMarginLeft, function (e, t) {
                  if (t) return (parseFloat(M(e, "marginLeft")) || e.getBoundingClientRect().left - Ke(e, {
                      marginLeft: 0
                  }, function () {
                      return e.getBoundingClientRect().left
                  })) + "px"
              }), ke.each({
                  margin: "",
                  padding: "",
                  border: "Width"
              }, function (e, t) {
                  ke.cssHooks[e + t] = {
                      expand: function (n) {
                          for (var i = 0, r = {}, o = "string" == typeof n ? n.split(" ") : [n]; i < 4; i++) r[e + Je[i] + t] = o[i] || o[i - 2] || o[0];
                          return r
                      }
                  }, "margin" !== e && (ke.cssHooks[e + t].set = W)
              }), ke.fn.extend({
                  css: function (e, t) {
                      return Ie(this, function (e, t, n) {
                          var i, r, o = {},
                              s = 0;
                          if (Array.isArray(t)) {
                              for (i = gt(e), r = t.length; s < r; s++) o[t[s]] = ke.css(e, t[s], !1, i);
                              return o
                          }
                          return void 0 !== n ? ke.style(e, t, n) : ke.css(e, t)
                      }, e, t, arguments.length > 1)
                  }
              }), ke.Tween = V, V.prototype = {
                  constructor: V,
                  init: function (e, t, n, i, r, o) {
                      this.elem = e, this.prop = n, this.easing = r || ke.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = o || (ke.cssNumber[n] ? "" : "px")
                  },
                  cur: function () {
                      var e = V.propHooks[this.prop];
                      return e && e.get ? e.get(this) : V.propHooks._default.get(this)
                  },
                  run: function (e) {
                      var t, n = V.propHooks[this.prop];
                      return this.options.duration ? this.pos = t = ke.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : V.propHooks._default.set(this), this
                  }
              }, V.prototype.init.prototype = V.prototype, V.propHooks = {
                  _default: {
                      get: function (e) {
                          var t;
                          return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = ke.css(e.elem, e.prop, ""), t && "auto" !== t ? t : 0)
                      },
                      set: function (e) {
                          ke.fx.step[e.prop] ? ke.fx.step[e.prop](e) : 1 !== e.elem.nodeType || null == e.elem.style[ke.cssProps[e.prop]] && !ke.cssHooks[e.prop] ? e.elem[e.prop] = e.now : ke.style(e.elem, e.prop, e.now + e.unit)
                      }
                  }
              }, V.propHooks.scrollTop = V.propHooks.scrollLeft = {
                  set: function (e) {
                      e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
                  }
              }, ke.easing = {
                  linear: function (e) {
                      return e
                  },
                  swing: function (e) {
                      return .5 - Math.cos(e * Math.PI) / 2
                  },
                  _default: "swing"
              }, ke.fx = V.prototype.init, ke.fx.step = {};
              var Ct, Tt, Et = /^(?:toggle|show|hide)$/,
                  kt = /queueHooks$/;
              ke.Animation = ke.extend(K, {
                      tweeners: {
                          "*": [function (e, t) {
                              var n = this.createTween(e, t);
                              return _(n.elem, e, Ze.exec(t), n), n
                          }]
                      },
                      tweener: function (e, t) {
                          _e(e) ? (t = e, e = ["*"]) : e = e.match(qe);
                          for (var n, i = 0, r = e.length; i < r; i++) n = e[i], K.tweeners[n] = K.tweeners[n] || [], K.tweeners[n].unshift(t)
                      },
                      prefilters: [J],
                      prefilter: function (e, t) {
                          t ? K.prefilters.unshift(e) : K.prefilters.push(e)
                      }
                  }), ke.speed = function (e, t, n) {
                      var i = e && "object" == typeof e ? ke.extend({}, e) : {
                          complete: n || !n && t || _e(e) && e,
                          duration: e,
                          easing: n && t || t && !_e(t) && t
                      };
                      return ke.fx.off ? i.duration = 0 : "number" != typeof i.duration && (i.duration in ke.fx.speeds ? i.duration = ke.fx.speeds[i.duration] : i.duration = ke.fx.speeds._default), null != i.queue && i.queue !== !0 || (i.queue = "fx"), i.old = i.complete, i.complete = function () {
                          _e(i.old) && i.old.call(this), i.queue && ke.dequeue(this, i.queue)
                      }, i
                  }, ke.fn.extend({
                      fadeTo: function (e, t, n, i) {
                          return this.filter(Qe).css("opacity", 0).show().end().animate({
                              opacity: t
                          }, e, n, i)
                      },
                      animate: function (e, t, n, i) {
                          var r = ke.isEmptyObject(e),
                              o = ke.speed(t, n, i),
                              s = function () {
                                  var t = K(this, ke.extend({}, e), o);
                                  (r || Ue.get(this, "finish")) && t.stop(!0)
                              };
                          return s.finish = s, r || o.queue === !1 ? this.each(s) : this.queue(o.queue, s)
                      },
                      stop: function (e, t, n) {
                          var i = function (e) {
                              var t = e.stop;
                              delete e.stop, t(n)
                          };
                          return "string" != typeof e && (n = t, t = e, e = void 0), t && e !== !1 && this.queue(e || "fx", []), this.each(function () {
                              var t = !0,
                                  r = null != e && e + "queueHooks",
                                  o = ke.timers,
                                  s = Ue.get(this);
                              if (r) s[r] && s[r].stop && i(s[r]);
                              else
                                  for (r in s) s[r] && s[r].stop && kt.test(r) && i(s[r]);
                              for (r = o.length; r--;) o[r].elem !== this || null != e && o[r].queue !== e || (o[r].anim.stop(n), t = !1, o.splice(r, 1));
                              !t && n || ke.dequeue(this, e)
                          })
                      },
                      finish: function (e) {
                          return e !== !1 && (e = e || "fx"), this.each(function () {
                              var t, n = Ue.get(this),
                                  i = n[e + "queue"],
                                  r = n[e + "queueHooks"],
                                  o = ke.timers,
                                  s = i ? i.length : 0;
                              for (n.finish = !0, ke.queue(this, e, []), r && r.stop && r.stop.call(this, !0), t = o.length; t--;) o[t].elem === this && o[t].queue === e && (o[t].anim.stop(!0), o.splice(t, 1));
                              for (t = 0; t < s; t++) i[t] && i[t].finish && i[t].finish.call(this);
                              delete n.finish
                          })
                      }
                  }), ke.each(["toggle", "show", "hide"], function (e, t) {
                      var n = ke.fn[t];
                      ke.fn[t] = function (e, i, r) {
                          return null == e || "boolean" == typeof e ? n.apply(this, arguments) : this.animate(G(t, !0), e, i, r)
                      }
                  }), ke.each({
                      slideDown: G("show"),
                      slideUp: G("hide"),
                      slideToggle: G("toggle"),
                      fadeIn: {
                          opacity: "show"
                      },
                      fadeOut: {
                          opacity: "hide"
                      },
                      fadeToggle: {
                          opacity: "toggle"
                      }
                  }, function (e, t) {
                      ke.fn[e] = function (e, n, i) {
                          return this.animate(t, e, n, i)
                      }
                  }), ke.timers = [], ke.fx.tick = function () {
                      var e, t = 0,
                          n = ke.timers;
                      for (Ct = Date.now(); t < n.length; t++) e = n[t], e() || n[t] !== e || n.splice(t--, 1);
                      n.length || ke.fx.stop(), Ct = void 0
                  }, ke.fx.timer = function (e) {
                      ke.timers.push(e), ke.fx.start()
                  }, ke.fx.interval = 13, ke.fx.start = function () {
                      Tt || (Tt = !0, X())
                  }, ke.fx.stop = function () {
                      Tt = null
                  }, ke.fx.speeds = {
                      slow: 600,
                      fast: 200,
                      _default: 400
                  }, ke.fn.delay = function (e, t) {
                      return e = ke.fx ? ke.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function (t, i) {
                          var r = n.setTimeout(t, e);
                          i.stop = function () {
                              n.clearTimeout(r)
                          }
                      })
                  },
                  function () {
                      var e = ce.createElement("input"),
                          t = ce.createElement("select"),
                          n = t.appendChild(ce.createElement("option"));
                      e.type = "checkbox", be.checkOn = "" !== e.value, be.optSelected = n.selected, e = ce.createElement("input"), e.value = "t", e.type = "radio", be.radioValue = "t" === e.value
                  }();
              var St, Dt = ke.expr.attrHandle;
              ke.fn.extend({
                  attr: function (e, t) {
                      return Ie(this, ke.attr, e, t, arguments.length > 1)
                  },
                  removeAttr: function (e) {
                      return this.each(function () {
                          ke.removeAttr(this, e)
                      })
                  }
              }), ke.extend({
                  attr: function (e, t, n) {
                      var i, r, o = e.nodeType;
                      if (3 !== o && 8 !== o && 2 !== o) return "undefined" == typeof e.getAttribute ? ke.prop(e, t, n) : (1 === o && ke.isXMLDoc(e) || (r = ke.attrHooks[t.toLowerCase()] || (ke.expr.match.bool.test(t) ? St : void 0)), void 0 !== n ? null === n ? void ke.removeAttr(e, t) : r && "set" in r && void 0 !== (i = r.set(e, n, t)) ? i : (e.setAttribute(t, n + ""), n) : r && "get" in r && null !== (i = r.get(e, t)) ? i : (i = ke.find.attr(e, t), null == i ? void 0 : i))
                  },
                  attrHooks: {
                      type: {
                          set: function (e, t) {
                              if (!be.radioValue && "radio" === t && u(e, "input")) {
                                  var n = e.value;
                                  return e.setAttribute("type", t), n && (e.value = n), t
                              }
                          }
                      }
                  },
                  removeAttr: function (e, t) {
                      var n, i = 0,
                          r = t && t.match(qe);
                      if (r && 1 === e.nodeType)
                          for (; n = r[i++];) e.removeAttribute(n)
                  }
              }), St = {
                  set: function (e, t, n) {
                      return t === !1 ? ke.removeAttr(e, n) : e.setAttribute(n, n), n
                  }
              }, ke.each(ke.expr.match.bool.source.match(/\w+/g), function (e, t) {
                  var n = Dt[t] || ke.find.attr;
                  Dt[t] = function (e, t, i) {
                      var r, o, s = t.toLowerCase();
                      return i || (o = Dt[s], Dt[s] = r, r = null != n(e, t, i) ? s : null, Dt[s] = o), r
                  }
              });
              var Nt = /^(?:input|select|textarea|button)$/i,
                  jt = /^(?:a|area)$/i;
              ke.fn.extend({
                  prop: function (e, t) {
                      return Ie(this, ke.prop, e, t, arguments.length > 1)
                  },
                  removeProp: function (e) {
                      return this.each(function () {
                          delete this[ke.propFix[e] || e]
                      })
                  }
              }), ke.extend({
                  prop: function (e, t, n) {
                      var i, r, o = e.nodeType;
                      if (3 !== o && 8 !== o && 2 !== o) return 1 === o && ke.isXMLDoc(e) || (t = ke.propFix[t] || t, r = ke.propHooks[t]), void 0 !== n ? r && "set" in r && void 0 !== (i = r.set(e, n, t)) ? i : e[t] = n : r && "get" in r && null !== (i = r.get(e, t)) ? i : e[t]
                  },
                  propHooks: {
                      tabIndex: {
                          get: function (e) {
                              var t = ke.find.attr(e, "tabindex");
                              return t ? parseInt(t, 10) : Nt.test(e.nodeName) || jt.test(e.nodeName) && e.href ? 0 : -1
                          }
                      }
                  },
                  propFix: {
                      "for": "htmlFor",
                      "class": "className"
                  }
              }), be.optSelected || (ke.propHooks.selected = {
                  get: function (e) {
                      var t = e.parentNode;
                      return t && t.parentNode && t.parentNode.selectedIndex, null
                  },
                  set: function (e) {
                      var t = e.parentNode;
                      t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex)
                  }
              }), ke.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
                  ke.propFix[this.toLowerCase()] = this
              }), ke.fn.extend({
                  addClass: function (e) {
                      var t, n, i, r, o, s, a, l = 0;
                      if (_e(e)) return this.each(function (t) {
                          ke(this).addClass(e.call(this, t, te(this)))
                      });
                      if (t = ne(e), t.length)
                          for (; n = this[l++];)
                              if (r = te(n), i = 1 === n.nodeType && " " + ee(r) + " ") {
                                  for (s = 0; o = t[s++];) i.indexOf(" " + o + " ") < 0 && (i += o + " ");
                                  a = ee(i), r !== a && n.setAttribute("class", a)
                              } return this
                  },
                  removeClass: function (e) {
                      var t, n, i, r, o, s, a, l = 0;
                      if (_e(e)) return this.each(function (t) {
                          ke(this).removeClass(e.call(this, t, te(this)))
                      });
                      if (!arguments.length) return this.attr("class", "");
                      if (t = ne(e), t.length)
                          for (; n = this[l++];)
                              if (r = te(n), i = 1 === n.nodeType && " " + ee(r) + " ") {
                                  for (s = 0; o = t[s++];)
                                      for (; i.indexOf(" " + o + " ") > -1;) i = i.replace(" " + o + " ", " ");
                                  a = ee(i), r !== a && n.setAttribute("class", a)
                              } return this
                  },
                  toggleClass: function (e, t) {
                      var n = typeof e,
                          i = "string" === n || Array.isArray(e);
                      return "boolean" == typeof t && i ? t ? this.addClass(e) : this.removeClass(e) : _e(e) ? this.each(function (n) {
                          ke(this).toggleClass(e.call(this, n, te(this), t), t)
                      }) : this.each(function () {
                          var t, r, o, s;
                          if (i)
                              for (r = 0, o = ke(this), s = ne(e); t = s[r++];) o.hasClass(t) ? o.removeClass(t) : o.addClass(t);
                          else void 0 !== e && "boolean" !== n || (t = te(this), t && Ue.set(this, "__className__", t), this.setAttribute && this.setAttribute("class", t || e === !1 ? "" : Ue.get(this, "__className__") || ""))
                      })
                  },
                  hasClass: function (e) {
                      var t, n, i = 0;
                      for (t = " " + e + " "; n = this[i++];)
                          if (1 === n.nodeType && (" " + ee(te(n)) + " ").indexOf(t) > -1) return !0;
                      return !1
                  }
              });
              var At = /\r/g;
              ke.fn.extend({
                  val: function (e) {
                      var t, n, i, r = this[0]; {
                          if (arguments.length) return i = _e(e), this.each(function (n) {
                              var r;
                              1 === this.nodeType && (r = i ? e.call(this, n, ke(this).val()) : e, null == r ? r = "" : "number" == typeof r ? r += "" : Array.isArray(r) && (r = ke.map(r, function (e) {
                                  return null == e ? "" : e + ""
                              })), t = ke.valHooks[this.type] || ke.valHooks[this.nodeName.toLowerCase()], t && "set" in t && void 0 !== t.set(this, r, "value") || (this.value = r))
                          });
                          if (r) return t = ke.valHooks[r.type] || ke.valHooks[r.nodeName.toLowerCase()], t && "get" in t && void 0 !== (n = t.get(r, "value")) ? n : (n = r.value, "string" == typeof n ? n.replace(At, "") : null == n ? "" : n)
                      }
                  }
              }), ke.extend({
                  valHooks: {
                      option: {
                          get: function (e) {
                              var t = ke.find.attr(e, "value");
                              return null != t ? t : ee(ke.text(e))
                          }
                      },
                      select: {
                          get: function (e) {
                              var t, n, i, r = e.options,
                                  o = e.selectedIndex,
                                  s = "select-one" === e.type,
                                  a = s ? null : [],
                                  l = s ? o + 1 : r.length;
                              for (i = o < 0 ? l : s ? o : 0; i < l; i++)
                                  if (n = r[i], (n.selected || i === o) && !n.disabled && (!n.parentNode.disabled || !u(n.parentNode, "optgroup"))) {
                                      if (t = ke(n).val(), s) return t;
                                      a.push(t)
                                  } return a
                          },
                          set: function (e, t) {
                              for (var n, i, r = e.options, o = ke.makeArray(t), s = r.length; s--;) i = r[s], (i.selected = ke.inArray(ke.valHooks.option.get(i), o) > -1) && (n = !0);
                              return n || (e.selectedIndex = -1), o
                          }
                      }
                  }
              }), ke.each(["radio", "checkbox"], function () {
                  ke.valHooks[this] = {
                      set: function (e, t) {
                          if (Array.isArray(t)) return e.checked = ke.inArray(ke(e).val(), t) > -1
                      }
                  }, be.checkOn || (ke.valHooks[this].get = function (e) {
                      return null === e.getAttribute("value") ? "on" : e.value
                  })
              }), be.focusin = "onfocusin" in n;
              var $t = /^(?:focusinfocus|focusoutblur)$/,
                  Lt = function (e) {
                      e.stopPropagation()
                  };
              ke.extend(ke.event, {
                  trigger: function (e, t, i, r) {
                      var o, s, a, l, u, c, h, p, d = [i || ce],
                          f = ye.call(e, "type") ? e.type : e,
                          g = ye.call(e, "namespace") ? e.namespace.split(".") : [];
                      if (s = p = a = i = i || ce, 3 !== i.nodeType && 8 !== i.nodeType && !$t.test(f + ke.event.triggered) && (f.indexOf(".") > -1 && (g = f.split("."), f = g.shift(), g.sort()), u = f.indexOf(":") < 0 && "on" + f, e = e[ke.expando] ? e : new ke.Event(f, "object" == typeof e && e), e.isTrigger = r ? 2 : 3, e.namespace = g.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + g.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = i), t = null == t ? [e] : ke.makeArray(t, [e]), h = ke.event.special[f] || {}, r || !h.trigger || h.trigger.apply(i, t) !== !1)) {
                          if (!r && !h.noBubble && !Ce(i)) {
                              for (l = h.delegateType || f, $t.test(l + f) || (s = s.parentNode); s; s = s.parentNode) d.push(s), a = s;
                              a === (i.ownerDocument || ce) && d.push(a.defaultView || a.parentWindow || n)
                          }
                          for (o = 0;
                              (s = d[o++]) && !e.isPropagationStopped();) p = s, e.type = o > 1 ? l : h.bindType || f, c = (Ue.get(s, "events") || {})[e.type] && Ue.get(s, "handle"), c && c.apply(s, t), c = u && s[u], c && c.apply && Fe(s) && (e.result = c.apply(s, t), e.result === !1 && e.preventDefault());
                          return e.type = f, r || e.isDefaultPrevented() || h._default && h._default.apply(d.pop(), t) !== !1 || !Fe(i) || u && _e(i[f]) && !Ce(i) && (a = i[u], a && (i[u] = null), ke.event.triggered = f, e.isPropagationStopped() && p.addEventListener(f, Lt), i[f](), e.isPropagationStopped() && p.removeEventListener(f, Lt), ke.event.triggered = void 0, a && (i[u] = a)), e.result
                      }
                  },
                  simulate: function (e, t, n) {
                      var i = ke.extend(new ke.Event, n, {
                          type: e,
                          isSimulated: !0
                      });
                      ke.event.trigger(i, null, t)
                  }
              }), ke.fn.extend({
                  trigger: function (e, t) {
                      return this.each(function () {
                          ke.event.trigger(e, t, this)
                      })
                  },
                  triggerHandler: function (e, t) {
                      var n = this[0];
                      if (n) return ke.event.trigger(e, t, n, !0)
                  }
              }), be.focusin || ke.each({
                  focus: "focusin",
                  blur: "focusout"
              }, function (e, t) {
                  var n = function (e) {
                      ke.event.simulate(t, e.target, ke.event.fix(e))
                  };
                  ke.event.special[t] = {
                      setup: function () {
                          var i = this.ownerDocument || this,
                              r = Ue.access(i, t);
                          r || i.addEventListener(e, n, !0), Ue.access(i, t, (r || 0) + 1)
                      },
                      teardown: function () {
                          var i = this.ownerDocument || this,
                              r = Ue.access(i, t) - 1;
                          r ? Ue.access(i, t, r) : (i.removeEventListener(e, n, !0), Ue.remove(i, t))
                      }
                  }
              });
              var zt = n.location,
                  Ot = Date.now(),
                  Pt = /\?/;
              ke.parseXML = function (e) {
                  var t;
                  if (!e || "string" != typeof e) return null;
                  try {
                      t = (new n.DOMParser).parseFromString(e, "text/xml")
                  } catch (i) {
                      t = void 0
                  }
                  return t && !t.getElementsByTagName("parsererror").length || ke.error("Invalid XML: " + e), t
              };
              var Ht = /\[\]$/,
                  qt = /\r?\n/g,
                  Mt = /^(?:submit|button|image|reset|file)$/i,
                  Rt = /^(?:input|select|textarea|keygen)/i;
              ke.param = function (e, t) {
                  var n, i = [],
                      r = function (e, t) {
                          var n = _e(t) ? t() : t;
                          i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n)
                      };
                  if (Array.isArray(e) || e.jquery && !ke.isPlainObject(e)) ke.each(e, function () {
                      r(this.name, this.value)
                  });
                  else
                      for (n in e) ie(n, e[n], t, r);
                  return i.join("&")
              }, ke.fn.extend({
                  serialize: function () {
                      return ke.param(this.serializeArray())
                  },
                  serializeArray: function () {
                      return this.map(function () {
                          var e = ke.prop(this, "elements");
                          return e ? ke.makeArray(e) : this
                      }).filter(function () {
                          var e = this.type;
                          return this.name && !ke(this).is(":disabled") && Rt.test(this.nodeName) && !Mt.test(e) && (this.checked || !tt.test(e))
                      }).map(function (e, t) {
                          var n = ke(this).val();
                          return null == n ? null : Array.isArray(n) ? ke.map(n, function (e) {
                              return {
                                  name: t.name,
                                  value: e.replace(qt, "\r\n")
                              }
                          }) : {
                              name: t.name,
                              value: n.replace(qt, "\r\n")
                          }
                      }).get()
                  }
              });
              var It = /%20/g,
                  Bt = /#.*$/,
                  Wt = /([?&])_=[^&]*/,
                  Ft = /^(.*?):[ \t]*([^\r\n]*)$/gm,
                  Ut = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
                  Vt = /^(?:GET|HEAD)$/,
                  Xt = /^\/\//,
                  Yt = {},
                  Gt = {},
                  Zt = "*/".concat("*"),
                  Jt = ce.createElement("a");
              Jt.href = zt.href, ke.extend({
                  active: 0,
                  lastModified: {},
                  etag: {},
                  ajaxSettings: {
                      url: zt.href,
                      type: "GET",
                      isLocal: Ut.test(zt.protocol),
                      global: !0,
                      processData: !0,
                      async: !0,
                      contentType: "application/x-www-form-urlencoded; charset=UTF-8",
                      accepts: {
                          "*": Zt,
                          text: "text/plain",
                          html: "text/html",
                          xml: "application/xml, text/xml",
                          json: "application/json, text/javascript"
                      },
                      contents: {
                          xml: /\bxml\b/,
                          html: /\bhtml/,
                          json: /\bjson\b/
                      },
                      responseFields: {
                          xml: "responseXML",
                          text: "responseText",
                          json: "responseJSON"
                      },
                      converters: {
                          "* text": String,
                          "text html": !0,
                          "text json": JSON.parse,
                          "text xml": ke.parseXML
                      },
                      flatOptions: {
                          url: !0,
                          context: !0
                      }
                  },
                  ajaxSetup: function (e, t) {
                      return t ? se(se(e, ke.ajaxSettings), t) : se(ke.ajaxSettings, e)
                  },
                  ajaxPrefilter: re(Yt),
                  ajaxTransport: re(Gt),
                  ajax: function (e, t) {
                      function i(e, t, i, a) {
                          var u, p, d, x, b, _ = t;
                          c || (c = !0, l && n.clearTimeout(l), r = void 0, s = a || "", C.readyState = e > 0 ? 4 : 0, u = e >= 200 && e < 300 || 304 === e, i && (x = ae(f, C, i)), x = le(f, x, C, u), u ? (f.ifModified && (b = C.getResponseHeader("Last-Modified"), b && (ke.lastModified[o] = b), b = C.getResponseHeader("etag"), b && (ke.etag[o] = b)), 204 === e || "HEAD" === f.type ? _ = "nocontent" : 304 === e ? _ = "notmodified" : (_ = x.state, p = x.data, d = x.error, u = !d)) : (d = _, !e && _ || (_ = "error", e < 0 && (e = 0))), C.status = e, C.statusText = (t || _) + "", u ? v.resolveWith(g, [p, _, C]) : v.rejectWith(g, [C, _, d]), C.statusCode(w), w = void 0, h && m.trigger(u ? "ajaxSuccess" : "ajaxError", [C, f, u ? p : d]), y.fireWith(g, [C, _]), h && (m.trigger("ajaxComplete", [C, f]), --ke.active || ke.event.trigger("ajaxStop")))
                      }
                      "object" == typeof e && (t = e, e = void 0), t = t || {};
                      var r, o, s, a, l, u, c, h, p, d, f = ke.ajaxSetup({}, t),
                          g = f.context || f,
                          m = f.context && (g.nodeType || g.jquery) ? ke(g) : ke.event,
                          v = ke.Deferred(),
                          y = ke.Callbacks("once memory"),
                          w = f.statusCode || {},
                          x = {},
                          b = {},
                          _ = "canceled",
                          C = {
                              readyState: 0,
                              getResponseHeader: function (e) {
                                  var t;
                                  if (c) {
                                      if (!a)
                                          for (a = {}; t = Ft.exec(s);) a[t[1].toLowerCase()] = t[2];
                                      t = a[e.toLowerCase()]
                                  }
                                  return null == t ? null : t
                              },
                              getAllResponseHeaders: function () {
                                  return c ? s : null
                              },
                              setRequestHeader: function (e, t) {
                                  return null == c && (e = b[e.toLowerCase()] = b[e.toLowerCase()] || e, x[e] = t), this
                              },
                              overrideMimeType: function (e) {
                                  return null == c && (f.mimeType = e), this
                              },
                              statusCode: function (e) {
                                  var t;
                                  if (e)
                                      if (c) C.always(e[C.status]);
                                      else
                                          for (t in e) w[t] = [w[t], e[t]];
                                  return this
                              },
                              abort: function (e) {
                                  var t = e || _;
                                  return r && r.abort(t), i(0, t), this
                              }
                          };
                      if (v.promise(C), f.url = ((e || f.url || zt.href) + "").replace(Xt, zt.protocol + "//"), f.type = t.method || t.type || f.method || f.type, f.dataTypes = (f.dataType || "*").toLowerCase().match(qe) || [""], null == f.crossDomain) {
                          u = ce.createElement("a");
                          try {
                              u.href = f.url, u.href = u.href, f.crossDomain = Jt.protocol + "//" + Jt.host != u.protocol + "//" + u.host
                          } catch (T) {
                              f.crossDomain = !0
                          }
                      }
                      if (f.data && f.processData && "string" != typeof f.data && (f.data = ke.param(f.data, f.traditional)), oe(Yt, f, t, C), c) return C;
                      h = ke.event && f.global, h && 0 === ke.active++ && ke.event.trigger("ajaxStart"), f.type = f.type.toUpperCase(), f.hasContent = !Vt.test(f.type), o = f.url.replace(Bt, ""), f.hasContent ? f.data && f.processData && 0 === (f.contentType || "").indexOf("application/x-www-form-urlencoded") && (f.data = f.data.replace(It, "+")) : (d = f.url.slice(o.length), f.data && (f.processData || "string" == typeof f.data) && (o += (Pt.test(o) ? "&" : "?") + f.data, delete f.data), f.cache === !1 && (o = o.replace(Wt, "$1"), d = (Pt.test(o) ? "&" : "?") + "_=" + Ot++ + d), f.url = o + d), f.ifModified && (ke.lastModified[o] && C.setRequestHeader("If-Modified-Since", ke.lastModified[o]), ke.etag[o] && C.setRequestHeader("If-None-Match", ke.etag[o])), (f.data && f.hasContent && f.contentType !== !1 || t.contentType) && C.setRequestHeader("Content-Type", f.contentType), C.setRequestHeader("Accept", f.dataTypes[0] && f.accepts[f.dataTypes[0]] ? f.accepts[f.dataTypes[0]] + ("*" !== f.dataTypes[0] ? ", " + Zt + "; q=0.01" : "") : f.accepts["*"]);
                      for (p in f.headers) C.setRequestHeader(p, f.headers[p]);
                      if (f.beforeSend && (f.beforeSend.call(g, C, f) === !1 || c)) return C.abort();
                      if (_ = "abort", y.add(f.complete), C.done(f.success), C.fail(f.error), r = oe(Gt, f, t, C)) {
                          if (C.readyState = 1, h && m.trigger("ajaxSend", [C, f]), c) return C;
                          f.async && f.timeout > 0 && (l = n.setTimeout(function () {
                              C.abort("timeout")
                          }, f.timeout));
                          try {
                              c = !1, r.send(x, i)
                          } catch (T) {
                              if (c) throw T;
                              i(-1, T)
                          }
                      } else i(-1, "No Transport");
                      return C
                  },
                  getJSON: function (e, t, n) {
                      return ke.get(e, t, n, "json")
                  },
                  getScript: function (e, t) {
                      return ke.get(e, void 0, t, "script")
                  }
              }), ke.each(["get", "post"], function (e, t) {
                  ke[t] = function (e, n, i, r) {
                      return _e(n) && (r = r || i, i = n, n = void 0), ke.ajax(ke.extend({
                          url: e,
                          type: t,
                          dataType: r,
                          data: n,
                          success: i
                      }, ke.isPlainObject(e) && e))
                  }
              }), ke._evalUrl = function (e) {
                  return ke.ajax({
                      url: e,
                      type: "GET",
                      dataType: "script",
                      cache: !0,
                      async: !1,
                      global: !1,
                      "throws": !0
                  })
              }, ke.fn.extend({
                  wrapAll: function (e) {
                      var t;
                      return this[0] && (_e(e) && (e = e.call(this[0])), t = ke(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
                          for (var e = this; e.firstElementChild;) e = e.firstElementChild;
                          return e
                      }).append(this)), this
                  },
                  wrapInner: function (e) {
                      return _e(e) ? this.each(function (t) {
                          ke(this).wrapInner(e.call(this, t))
                      }) : this.each(function () {
                          var t = ke(this),
                              n = t.contents();
                          n.length ? n.wrapAll(e) : t.append(e)
                      })
                  },
                  wrap: function (e) {
                      var t = _e(e);
                      return this.each(function (n) {
                          ke(this).wrapAll(t ? e.call(this, n) : e)
                      })
                  },
                  unwrap: function (e) {
                      return this.parent(e).not("body").each(function () {
                          ke(this).replaceWith(this.childNodes)
                      }), this
                  }
              }), ke.expr.pseudos.hidden = function (e) {
                  return !ke.expr.pseudos.visible(e)
              }, ke.expr.pseudos.visible = function (e) {
                  return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length)
              }, ke.ajaxSettings.xhr = function () {
                  try {
                      return new n.XMLHttpRequest
                  } catch (e) {}
              };
              var Qt = {
                      0: 200,
                      1223: 204
                  },
                  Kt = ke.ajaxSettings.xhr();
              be.cors = !!Kt && "withCredentials" in Kt, be.ajax = Kt = !!Kt, ke.ajaxTransport(function (e) {
                  var t, i;
                  if (be.cors || Kt && !e.crossDomain) return {
                      send: function (r, o) {
                          var s, a = e.xhr();
                          if (a.open(e.type, e.url, e.async, e.username, e.password), e.xhrFields)
                              for (s in e.xhrFields) a[s] = e.xhrFields[s];
                          e.mimeType && a.overrideMimeType && a.overrideMimeType(e.mimeType), e.crossDomain || r["X-Requested-With"] || (r["X-Requested-With"] = "XMLHttpRequest");
                          for (s in r) a.setRequestHeader(s, r[s]);
                          t = function (e) {
                              return function () {
                                  t && (t = i = a.onload = a.onerror = a.onabort = a.ontimeout = a.onreadystatechange = null, "abort" === e ? a.abort() : "error" === e ? "number" != typeof a.status ? o(0, "error") : o(a.status, a.statusText) : o(Qt[a.status] || a.status, a.statusText, "text" !== (a.responseType || "text") || "string" != typeof a.responseText ? {
                                      binary: a.response
                                  } : {
                                      text: a.responseText
                                  }, a.getAllResponseHeaders()))
                              }
                          }, a.onload = t(), i = a.onerror = a.ontimeout = t("error"), void 0 !== a.onabort ? a.onabort = i : a.onreadystatechange = function () {
                              4 === a.readyState && n.setTimeout(function () {
                                  t && i()
                              })
                          }, t = t("abort");
                          try {
                              a.send(e.hasContent && e.data || null)
                          } catch (l) {
                              if (t) throw l
                          }
                      },
                      abort: function () {
                          t && t()
                      }
                  }
              }), ke.ajaxPrefilter(function (e) {
                  e.crossDomain && (e.contents.script = !1)
              }), ke.ajaxSetup({
                  accepts: {
                      script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
                  },
                  contents: {
                      script: /\b(?:java|ecma)script\b/
                  },
                  converters: {
                      "text script": function (e) {
                          return ke.globalEval(e), e
                      }
                  }
              }), ke.ajaxPrefilter("script", function (e) {
                  void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET")
              }), ke.ajaxTransport("script", function (e) {
                  if (e.crossDomain) {
                      var t, n;
                      return {
                          send: function (i, r) {
                              t = ke("<script>").prop({
                                  charset: e.scriptCharset,
                                  src: e.url
                              }).on("load error", n = function (e) {
                                  t.remove(), n = null, e && r("error" === e.type ? 404 : 200, e.type)
                              }), ce.head.appendChild(t[0])
                          },
                          abort: function () {
                              n && n()
                          }
                      }
                  }
              });
              var en = [],
                  tn = /(=)\?(?=&|$)|\?\?/;
              ke.ajaxSetup({
                  jsonp: "callback",
                  jsonpCallback: function () {
                      var e = en.pop() || ke.expando + "_" + Ot++;
                      return this[e] = !0, e
                  }
              }), ke.ajaxPrefilter("json jsonp", function (e, t, i) {
                  var r, o, s, a = e.jsonp !== !1 && (tn.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && tn.test(e.data) && "data");
                  if (a || "jsonp" === e.dataTypes[0]) return r = e.jsonpCallback = _e(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, a ? e[a] = e[a].replace(tn, "$1" + r) : e.jsonp !== !1 && (e.url += (Pt.test(e.url) ? "&" : "?") + e.jsonp + "=" + r), e.converters["script json"] = function () {
                      return s || ke.error(r + " was not called"), s[0]
                  }, e.dataTypes[0] = "json", o = n[r], n[r] = function () {
                      s = arguments
                  }, i.always(function () {
                      void 0 === o ? ke(n).removeProp(r) : n[r] = o, e[r] && (e.jsonpCallback = t.jsonpCallback, en.push(r)), s && _e(o) && o(s[0]), s = o = void 0
                  }), "script"
              }), be.createHTMLDocument = function () {
                  var e = ce.implementation.createHTMLDocument("").body;
                  return e.innerHTML = "<form></form><form></form>", 2 === e.childNodes.length
              }(), ke.parseHTML = function (e, t, n) {
                  if ("string" != typeof e) return [];
                  "boolean" == typeof t && (n = t, t = !1);
                  var i, r, o;
                  return t || (be.createHTMLDocument ? (t = ce.implementation.createHTMLDocument(""), i = t.createElement("base"), i.href = ce.location.href, t.head.appendChild(i)) : t = ce), r = $e.exec(e), o = !n && [], r ? [t.createElement(r[1])] : (r = S([e], t, o), o && o.length && ke(o).remove(), ke.merge([], r.childNodes))
              }, ke.fn.load = function (e, t, n) {
                  var i, r, o, s = this,
                      a = e.indexOf(" ");
                  return a > -1 && (i = ee(e.slice(a)), e = e.slice(0, a)), _e(t) ? (n = t, t = void 0) : t && "object" == typeof t && (r = "POST"), s.length > 0 && ke.ajax({
                      url: e,
                      type: r || "GET",
                      dataType: "html",
                      data: t
                  }).done(function (e) {
                      o = arguments, s.html(i ? ke("<div>").append(ke.parseHTML(e)).find(i) : e)
                  }).always(n && function (e, t) {
                      s.each(function () {
                          n.apply(this, o || [e.responseText, t, e])
                      })
                  }), this
              }, ke.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
                  ke.fn[t] = function (e) {
                      return this.on(t, e)
                  }
              }), ke.expr.pseudos.animated = function (e) {
                  return ke.grep(ke.timers, function (t) {
                      return e === t.elem
                  }).length
              }, ke.offset = {
                  setOffset: function (e, t, n) {
                      var i, r, o, s, a, l, u, c = ke.css(e, "position"),
                          h = ke(e),
                          p = {};
                      "static" === c && (e.style.position = "relative"), a = h.offset(), o = ke.css(e, "top"), l = ke.css(e, "left"), u = ("absolute" === c || "fixed" === c) && (o + l).indexOf("auto") > -1, u ? (i = h.position(), s = i.top, r = i.left) : (s = parseFloat(o) || 0, r = parseFloat(l) || 0), _e(t) && (t = t.call(e, n, ke.extend({}, a))), null != t.top && (p.top = t.top - a.top + s), null != t.left && (p.left = t.left - a.left + r), "using" in t ? t.using.call(e, p) : h.css(p)
                  }
              }, ke.fn.extend({
                  offset: function (e) {
                      if (arguments.length) return void 0 === e ? this : this.each(function (t) {
                          ke.offset.setOffset(this, e, t)
                      });
                      var t, n, i = this[0];
                      if (i) return i.getClientRects().length ? (t = i.getBoundingClientRect(), n = i.ownerDocument.defaultView, {
                          top: t.top + n.pageYOffset,
                          left: t.left + n.pageXOffset
                      }) : {
                          top: 0,
                          left: 0
                      }
                  },
                  position: function () {
                      if (this[0]) {
                          var e, t, n, i = this[0],
                              r = {
                                  top: 0,
                                  left: 0
                              };
                          if ("fixed" === ke.css(i, "position")) t = i.getBoundingClientRect();
                          else {
                              for (t = this.offset(), n = i.ownerDocument, e = i.offsetParent || n.documentElement; e && (e === n.body || e === n.documentElement) && "static" === ke.css(e, "position");) e = e.parentNode;
                              e && e !== i && 1 === e.nodeType && (r = ke(e).offset(), r.top += ke.css(e, "borderTopWidth", !0), r.left += ke.css(e, "borderLeftWidth", !0))
                          }
                          return {
                              top: t.top - r.top - ke.css(i, "marginTop", !0),
                              left: t.left - r.left - ke.css(i, "marginLeft", !0)
                          }
                      }
                  },
                  offsetParent: function () {
                      return this.map(function () {
                          for (var e = this.offsetParent; e && "static" === ke.css(e, "position");) e = e.offsetParent;
                          return e || st
                      })
                  }
              }), ke.each({
                  scrollLeft: "pageXOffset",
                  scrollTop: "pageYOffset"
              }, function (e, t) {
                  var n = "pageYOffset" === t;
                  ke.fn[e] = function (i) {
                      return Ie(this, function (e, i, r) {
                          var o;
                          return Ce(e) ? o = e : 9 === e.nodeType && (o = e.defaultView), void 0 === r ? o ? o[t] : e[i] : void(o ? o.scrollTo(n ? o.pageXOffset : r, n ? r : o.pageYOffset) : e[i] = r)
                      }, e, i, arguments.length)
                  }
              }), ke.each(["top", "left"], function (e, t) {
                  ke.cssHooks[t] = R(be.pixelPosition, function (e, n) {
                      if (n) return n = M(e, t), ft.test(n) ? ke(e).position()[t] + "px" : n
                  })
              }), ke.each({
                  Height: "height",
                  Width: "width"
              }, function (e, t) {
                  ke.each({
                      padding: "inner" + e,
                      content: t,
                      "": "outer" + e
                  }, function (n, i) {
                      ke.fn[i] = function (r, o) {
                          var s = arguments.length && (n || "boolean" != typeof r),
                              a = n || (r === !0 || o === !0 ? "margin" : "border");
                          return Ie(this, function (t, n, r) {
                              var o;
                              return Ce(t) ? 0 === i.indexOf("outer") ? t["inner" + e] : t.document.documentElement["client" + e] : 9 === t.nodeType ? (o = t.documentElement, Math.max(t.body["scroll" + e], o["scroll" + e], t.body["offset" + e], o["offset" + e], o["client" + e])) : void 0 === r ? ke.css(t, n, a) : ke.style(t, n, r, a)
                          }, t, s ? r : void 0, s)
                      }
                  })
              }), ke.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function (e, t) {
                  ke.fn[t] = function (e, n) {
                      return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t)
                  }
              }), ke.fn.extend({
                  hover: function (e, t) {
                      return this.mouseenter(e).mouseleave(t || e)
                  }
              }), ke.fn.extend({
                  bind: function (e, t, n) {
                      return this.on(e, null, t, n)
                  },
                  unbind: function (e, t) {
                      return this.off(e, null, t)
                  },
                  delegate: function (e, t, n, i) {
                      return this.on(t, e, n, i)
                  },
                  undelegate: function (e, t, n) {
                      return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
                  }
              }), ke.proxy = function (e, t) {
                  var n, i, r;
                  if ("string" == typeof t && (n = e[t], t = e, e = n), _e(e)) return i = pe.call(arguments, 2), r = function () {
                      return e.apply(t || this, i.concat(pe.call(arguments)))
                  }, r.guid = e.guid = e.guid || ke.guid++, r
              }, ke.holdReady = function (e) {
                  e ? ke.readyWait++ : ke.ready(!0)
              }, ke.isArray = Array.isArray, ke.parseJSON = JSON.parse, ke.nodeName = u, ke.isFunction = _e, ke.isWindow = Ce, ke.camelCase = y, ke.type = a, ke.now = Date.now, ke.isNumeric = function (e) {
                  var t = ke.type(e);
                  return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e))
              }, i = [], r = function () {
                  return ke
              }.apply(t, i), !(void 0 !== r && (e.exports = r));
              var nn = n.jQuery,
                  rn = n.$;
              return ke.noConflict = function (e) {
                  return n.$ === ke && (n.$ = rn), e && n.jQuery === ke && (n.jQuery = nn), ke
              }, o || (n.jQuery = n.$ = ke), ke
          })
      }, function (e, t, n) {
          var i = n(5);
          "string" == typeof i && (i = [
              [e.id, i, ""]
          ]), i.locals && (e.exports = i.locals);
          n(9)("c9621516", i, !0)
      }, function (e, t, n) {
          var i = n(6);
          t = e.exports = n(7)(!1), t.push([e.id, '/**\n * Owl Carousel v2.3.4\n * Copyright 2013-2018 David Deutsch\n * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE\n */\n/*\n *  Owl Carousel - Core\n */\n.owl-carousel {\n  display: none;\n  width: 100%;\n  -webkit-tap-highlight-color: transparent;\n  /* position relative and z-index fix webkit rendering fonts issue */\n  position: relative;\n  z-index: 1; }\n  .owl-carousel .owl-stage {\n    position: relative;\n    -ms-touch-action: pan-Y;\n    touch-action: manipulation;\n    -moz-backface-visibility: hidden;\n    /* fix firefox animation glitch */ }\n  .owl-carousel .owl-stage:after {\n    content: ".";\n    display: block;\n    clear: both;\n    visibility: hidden;\n    line-height: 0;\n    height: 0; }\n  .owl-carousel .owl-stage-outer {\n    position: relative;\n    overflow: hidden;\n    /* fix for flashing background */\n    -webkit-transform: translate3d(0px, 0px, 0px); }\n  .owl-carousel .owl-wrapper,\n  .owl-carousel .owl-item {\n    -webkit-backface-visibility: hidden;\n    -moz-backface-visibility: hidden;\n    -ms-backface-visibility: hidden;\n    -webkit-transform: translate3d(0, 0, 0);\n    -moz-transform: translate3d(0, 0, 0);\n    -ms-transform: translate3d(0, 0, 0); }\n  .owl-carousel .owl-item {\n    position: relative;\n    min-height: 1px;\n    float: left;\n    -webkit-backface-visibility: hidden;\n    -webkit-tap-highlight-color: transparent;\n    -webkit-touch-callout: none; }\n  .owl-carousel .owl-item img {\n    display: block;\n    width: 100%; }\n  .owl-carousel .owl-nav.disabled,\n  .owl-carousel .owl-dots.disabled {\n    display: none; }\n  .owl-carousel .owl-nav .owl-prev,\n  .owl-carousel .owl-nav .owl-next,\n  .owl-carousel .owl-dot {\n    cursor: pointer;\n    -webkit-user-select: none;\n    -khtml-user-select: none;\n    -moz-user-select: none;\n    -ms-user-select: none;\n    user-select: none; }\n  .owl-carousel .owl-nav button.owl-prev,\n  .owl-carousel .owl-nav button.owl-next,\n  .owl-carousel button.owl-dot {\n    background: none;\n    color: inherit;\n    border: none;\n    padding: 0 !important;\n    font: inherit; }\n  .owl-carousel.owl-loaded {\n    display: block; }\n  .owl-carousel.owl-loading {\n    opacity: 0;\n    display: block; }\n  .owl-carousel.owl-hidden {\n    opacity: 0; }\n  .owl-carousel.owl-refresh .owl-item {\n    visibility: hidden; }\n  .owl-carousel.owl-drag .owl-item {\n    -ms-touch-action: pan-y;\n        touch-action: pan-y;\n    -webkit-user-select: none;\n    -moz-user-select: none;\n    -ms-user-select: none;\n    user-select: none; }\n  .owl-carousel.owl-grab {\n    cursor: move;\n    cursor: grab; }\n  .owl-carousel.owl-rtl {\n    direction: rtl; }\n  .owl-carousel.owl-rtl .owl-item {\n    float: right; }\n\n/* No Js */\n.no-js .owl-carousel {\n  display: block; }\n\n/*\n *  Owl Carousel - Animate Plugin\n */\n.owl-carousel .animated {\n  animation-duration: 1000ms;\n  animation-fill-mode: both; }\n\n.owl-carousel .owl-animated-in {\n  z-index: 0; }\n\n.owl-carousel .owl-animated-out {\n  z-index: 1; }\n\n.owl-carousel .fadeOut {\n  animation-name: fadeOut; }\n\n@keyframes fadeOut {\n  0% {\n    opacity: 1; }\n  100% {\n    opacity: 0; } }\n\n/*\n * \tOwl Carousel - Auto Height Plugin\n */\n.owl-height {\n  transition: height 500ms ease-in-out; }\n\n/*\n * \tOwl Carousel - Lazy Load Plugin\n */\n.owl-carousel .owl-item {\n  /**\n\t\t\tThis is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong\n\t\t\tcalculation of the height of the owl-item that breaks page layouts\n\t\t */ }\n  .owl-carousel .owl-item .owl-lazy {\n    opacity: 0;\n    transition: opacity 400ms ease; }\n  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {\n    max-height: 0; }\n  .owl-carousel .owl-item img.owl-lazy {\n    transform-style: preserve-3d; }\n\n/*\n * \tOwl Carousel - Video Plugin\n */\n.owl-carousel .owl-video-wrapper {\n  position: relative;\n  height: 100%;\n  background: #000; }\n\n.owl-carousel .owl-video-play-icon {\n  position: absolute;\n  height: 80px;\n  width: 80px;\n  left: 50%;\n  top: 50%;\n  margin-left: -40px;\n  margin-top: -40px;\n  background: url(' + i(n(8)) + ") no-repeat;\n  cursor: pointer;\n  z-index: 1;\n  -webkit-backface-visibility: hidden;\n  transition: transform 100ms ease; }\n\n.owl-carousel .owl-video-play-icon:hover {\n  -ms-transform: scale(1.3, 1.3);\n      transform: scale(1.3, 1.3); }\n\n.owl-carousel .owl-video-playing .owl-video-tn,\n.owl-carousel .owl-video-playing .owl-video-play-icon {\n  display: none; }\n\n.owl-carousel .owl-video-tn {\n  opacity: 0;\n  height: 100%;\n  background-position: center center;\n  background-repeat: no-repeat;\n  background-size: contain;\n  transition: opacity 400ms ease; }\n\n.owl-carousel .owl-video-frame {\n  position: relative;\n  z-index: 1;\n  height: 100%;\n  width: 100%; }\n", ""])
      }, function (e, t) {
          e.exports = function (e) {
              return "string" != typeof e ? e : (/^['"].*['"]$/.test(e) && (e = e.slice(1, -1)), /["'() \t\n]/.test(e) ? '"' + e.replace(/"/g, '\\"').replace(/\n/g, "\\n") + '"' : e)
          }
      }, function (e, t) {
          function n(e, t) {
              var n = e[1] || "",
                  r = e[3];
              if (!r) return n;
              if (t && "function" == typeof btoa) {
                  var o = i(r),
                      s = r.sources.map(function (e) {
                          return "/*# sourceURL=" + r.sourceRoot + e + " */"
                      });
                  return [n].concat(s).concat([o]).join("\n")
              }
              return [n].join("\n")
          }
  
          function i(e) {
              var t = btoa(unescape(encodeURIComponent(JSON.stringify(e)))),
                  n = "sourceMappingURL=data:application/json;charset=utf-8;base64," + t;
              return "/*# " + n + " */"
          }
          e.exports = function (e) {
              var t = [];
              return t.toString = function () {
                  return this.map(function (t) {
                      var i = n(t, e);
                      return t[2] ? "@media " + t[2] + "{" + i + "}" : i
                  }).join("")
              }, t.i = function (e, n) {
                  "string" == typeof e && (e = [
                      [null, e, ""]
                  ]);
                  for (var i = {}, r = 0; r < this.length; r++) {
                      var o = this[r][0];
                      "number" == typeof o && (i[o] = !0)
                  }
                  for (r = 0; r < e.length; r++) {
                      var s = e[r];
                      "number" == typeof s[0] && i[s[0]] || (n && !s[2] ? s[2] = n : n && (s[2] = "(" + s[2] + ") and (" + n + ")"), t.push(s))
                  }
              }, t
          }
      }, function (e, t, n) {
          e.exports = n.p + "4a37f8008959c75f619bf0a3a4e2d7a2.png"
      }, function (e, t, n) {
          function i(e) {
              for (var t = 0; t < e.length; t++) {
                  var n = e[t],
                      i = c[n.id];
                  if (i) {
                      i.refs++;
                      for (var r = 0; r < i.parts.length; r++) i.parts[r](n.parts[r]);
                      for (; r < n.parts.length; r++) i.parts.push(o(n.parts[r]));
                      i.parts.length > n.parts.length && (i.parts.length = n.parts.length)
                  } else {
                      for (var s = [], r = 0; r < n.parts.length; r++) s.push(o(n.parts[r]));
                      c[n.id] = {
                          id: n.id,
                          refs: 1,
                          parts: s
                      }
                  }
              }
          }
  
          function r() {
              var e = document.createElement("style");
              return e.type = "text/css", h.appendChild(e), e
          }
  
          function o(e) {
              var t, n, i = document.querySelector('style[data-vue-ssr-id~="' + e.id + '"]');
              if (i) {
                  if (f) return g;
                  i.parentNode.removeChild(i)
              }
              if (m) {
                  var o = d++;
                  i = p || (p = r()), t = s.bind(null, i, o, !1), n = s.bind(null, i, o, !0)
              } else i = r(), t = a.bind(null, i), n = function () {
                  i.parentNode.removeChild(i)
              };
              return t(e),
                  function (i) {
                      if (i) {
                          if (i.css === e.css && i.media === e.media && i.sourceMap === e.sourceMap) return;
                          t(e = i)
                      } else n()
                  }
          }
  
          function s(e, t, n, i) {
              var r = n ? "" : i.css;
              if (e.styleSheet) e.styleSheet.cssText = v(t, r);
              else {
                  var o = document.createTextNode(r),
                      s = e.childNodes;
                  s[t] && e.removeChild(s[t]), s.length ? e.insertBefore(o, s[t]) : e.appendChild(o)
              }
          }
  
          function a(e, t) {
              var n = t.css,
                  i = t.media,
                  r = t.sourceMap;
              if (i && e.setAttribute("media", i), r && (n += "\n/*# sourceURL=" + r.sources[0] + " */", n += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(r)))) + " */"), e.styleSheet) e.styleSheet.cssText = n;
              else {
                  for (; e.firstChild;) e.removeChild(e.firstChild);
                  e.appendChild(document.createTextNode(n))
              }
          }
          var l = "undefined" != typeof document,
              u = n(10),
              c = {},
              h = l && (document.head || document.getElementsByTagName("head")[0]),
              p = null,
              d = 0,
              f = !1,
              g = function () {},
              m = "undefined" != typeof navigator && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase());
          e.exports = function (e, t, n) {
              f = n;
              var r = u(e, t);
              return i(r),
                  function (t) {
                      for (var n = [], o = 0; o < r.length; o++) {
                          var s = r[o],
                              a = c[s.id];
                          a.refs--, n.push(a)
                      }
                      t ? (r = u(e, t), i(r)) : r = [];
                      for (var o = 0; o < n.length; o++) {
                          var a = n[o];
                          if (0 === a.refs) {
                              for (var l = 0; l < a.parts.length; l++) a.parts[l]();
                              delete c[a.id]
                          }
                      }
                  }
          };
          var v = function () {
              var e = [];
              return function (t, n) {
                  return e[t] = n, e.filter(Boolean).join("\n")
              }
          }()
      }, function (e, t) {
          e.exports = function (e, t) {
              for (var n = [], i = {}, r = 0; r < t.length; r++) {
                  var o = t[r],
                      s = o[0],
                      a = o[1],
                      l = o[2],
                      u = o[3],
                      c = {
                          id: e + ":" + r,
                          css: a,
                          media: l,
                          sourceMap: u
                      };
                  i[s] ? i[s].parts.push(c) : n.push(i[s] = {
                      id: s,
                      parts: [c]
                  })
              }
              return n
          }
      }, function (e, t, n) {
          var i = n(12);
          "string" == typeof i && (i = [
              [e.id, i, ""]
          ]), i.locals && (e.exports = i.locals);
          n(9)("25bb882e", i, !0)
      }, function (e, t, n) {
          t = e.exports = n(7)(!1), t.push([e.id, "/**\n * Owl Carousel v2.3.4\n * Copyright 2013-2018 David Deutsch\n * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE\n */\n/*\n * \tDefault theme - Owl Carousel CSS File\n */\n.owl-theme .owl-nav {\n  margin-top: 10px;\n  text-align: center;\n  -webkit-tap-highlight-color: transparent; }\n  .owl-theme .owl-nav [class*='owl-'] {\n    color: #FFF;\n    font-size: 14px;\n    margin: 5px;\n    padding: 4px 7px;\n    background: #D6D6D6;\n    display: inline-block;\n    cursor: pointer;\n    border-radius: 3px; }\n    .owl-theme .owl-nav [class*='owl-']:hover {\n      background: #869791;\n      color: #FFF;\n      text-decoration: none; }\n  .owl-theme .owl-nav .disabled {\n    opacity: 0.5;\n    cursor: default; }\n\n.owl-theme .owl-nav.disabled + .owl-dots {\n  margin-top: 10px; }\n\n.owl-theme .owl-dots {\n  text-align: center;\n  -webkit-tap-highlight-color: transparent; }\n  .owl-theme .owl-dots .owl-dot {\n    display: inline-block;\n    zoom: 1;\n    *display: inline; }\n    .owl-theme .owl-dots .owl-dot span {\n      width: 10px;\n      height: 10px;\n      margin: 5px 7px;\n      background: #D6D6D6;\n      display: block;\n      -webkit-backface-visibility: visible;\n      transition: opacity 200ms ease;\n      border-radius: 30px; }\n    .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {\n      background: #869791; }\n", ""])
      }, function (e, t, n) {
          (function (e, t) {
              ! function (e, n, i, r) {
                  function o(t, n) {
                      this.settings = null, this.options = e.extend({}, o.Defaults, n), this.$element = e(t), this._handlers = {}, this._plugins = {}, this._supress = {}, this._current = null, this._speed = null, this._coordinates = [], this._breakpoint = null, this._width = null, this._items = [], this._clones = [], this._mergers = [], this._widths = [], this._invalidated = {}, this._pipe = [], this._drag = {
                          time: null,
                          target: null,
                          pointer: null,
                          stage: {
                              start: null,
                              current: null
                          },
                          direction: null
                      }, this._states = {
                          current: {},
                          tags: {
                              initializing: ["busy"],
                              animating: ["busy"],
                              dragging: ["interacting"]
                          }
                      }, e.each(["onResize", "onThrottledResize"], e.proxy(function (t, n) {
                          this._handlers[n] = e.proxy(this[n], this)
                      }, this)), e.each(o.Plugins, e.proxy(function (e, t) {
                          this._plugins[e.charAt(0).toLowerCase() + e.slice(1)] = new t(this)
                      }, this)), e.each(o.Workers, e.proxy(function (t, n) {
                          this._pipe.push({
                              filter: n.filter,
                              run: e.proxy(n.run, this)
                          })
                      }, this)), this.setup(), this.initialize()
                  }
                  o.Defaults = {
                      items: 3,
                      loop: !1,
                      center: !1,
                      rewind: !1,
                      checkVisibility: !0,
                      mouseDrag: !0,
                      touchDrag: !0,
                      pullDrag: !0,
                      freeDrag: !1,
                      margin: 0,
                      stagePadding: 0,
                      merge: !1,
                      mergeFit: !0,
                      autoWidth: !1,
                      startPosition: 0,
                      rtl: !1,
                      smartSpeed: 250,
                      fluidSpeed: !1,
                      dragEndSpeed: !1,
                      responsive: {},
                      responsiveRefreshRate: 200,
                      responsiveBaseElement: n,
                      fallbackEasing: "swing",
                      slideTransition: "",
                      info: !1,
                      nestedItemSelector: !1,
                      itemElement: "div",
                      stageElement: "div",
                      refreshClass: "owl-refresh",
                      loadedClass: "owl-loaded",
                      loadingClass: "owl-loading",
                      rtlClass: "owl-rtl",
                      responsiveClass: "owl-responsive",
                      dragClass: "owl-drag",
                      itemClass: "owl-item",
                      stageClass: "owl-stage",
                      stageOuterClass: "owl-stage-outer",
                      grabClass: "owl-grab"
                  }, o.Width = {
                      Default: "default",
                      Inner: "inner",
                      Outer: "outer"
                  }, o.Type = {
                      Event: "event",
                      State: "state"
                  }, o.Plugins = {}, o.Workers = [{
                      filter: ["width", "settings"],
                      run: function () {
                          this._width = this.$element.width()
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function (e) {
                          e.current = this._items && this._items[this.relative(this._current)]
                      }
                  }, {
                      filter: ["items", "settings"],
                      run: function () {
                          this.$stage.children(".cloned").remove()
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function (e) {
                          var t = this.settings.margin || "",
                              n = !this.settings.autoWidth,
                              i = this.settings.rtl,
                              r = {
                                  width: "auto",
                                  "margin-left": i ? t : "",
                                  "margin-right": i ? "" : t
                              };
                          !n && this.$stage.children().css(r), e.css = r
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function (e) {
                          var t = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,
                              n = null,
                              i = this._items.length,
                              r = !this.settings.autoWidth,
                              o = [];
                          for (e.items = {
                                  merge: !1,
                                  width: t
                              }; i--;) n = this._mergers[i], n = this.settings.mergeFit && Math.min(n, this.settings.items) || n, e.items.merge = n > 1 || e.items.merge, o[i] = r ? t * n : this._items[i].width();
                          this._widths = o
                      }
                  }, {
                      filter: ["items", "settings"],
                      run: function () {
                          var t = [],
                              n = this._items,
                              i = this.settings,
                              r = Math.max(2 * i.items, 4),
                              o = 2 * Math.ceil(n.length / 2),
                              s = i.loop && n.length ? i.rewind ? r : Math.max(r, o) : 0,
                              a = "",
                              l = "";
                          for (s /= 2; s > 0;) t.push(this.normalize(t.length / 2, !0)), a += n[t[t.length - 1]][0].outerHTML, t.push(this.normalize(n.length - 1 - (t.length - 1) / 2, !0)), l = n[t[t.length - 1]][0].outerHTML + l, s -= 1;
                          this._clones = t, e(a).addClass("cloned").appendTo(this.$stage), e(l).addClass("cloned").prependTo(this.$stage)
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function () {
                          for (var e = this.settings.rtl ? 1 : -1, t = this._clones.length + this._items.length, n = -1, i = 0, r = 0, o = []; ++n < t;) i = o[n - 1] || 0, r = this._widths[this.relative(n)] + this.settings.margin, o.push(i + r * e);
                          this._coordinates = o
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function () {
                          var e = this.settings.stagePadding,
                              t = this._coordinates,
                              n = {
                                  width: Math.ceil(Math.abs(t[t.length - 1])) + 2 * e,
                                  "padding-left": e || "",
                                  "padding-right": e || ""
                              };
                          this.$stage.css(n)
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function (e) {
                          var t = this._coordinates.length,
                              n = !this.settings.autoWidth,
                              i = this.$stage.children();
                          if (n && e.items.merge)
                              for (; t--;) e.css.width = this._widths[this.relative(t)], i.eq(t).css(e.css);
                          else n && (e.css.width = e.items.width, i.css(e.css))
                      }
                  }, {
                      filter: ["items"],
                      run: function () {
                          this._coordinates.length < 1 && this.$stage.removeAttr("style")
                      }
                  }, {
                      filter: ["width", "items", "settings"],
                      run: function (e) {
                          e.current = e.current ? this.$stage.children().index(e.current) : 0, e.current = Math.max(this.minimum(), Math.min(this.maximum(), e.current)), this.reset(e.current)
                      }
                  }, {
                      filter: ["position"],
                      run: function () {
                          this.animate(this.coordinates(this._current))
                      }
                  }, {
                      filter: ["width", "position", "items", "settings"],
                      run: function () {
                          var e, t, n, i, r = this.settings.rtl ? 1 : -1,
                              o = 2 * this.settings.stagePadding,
                              s = this.coordinates(this.current()) + o,
                              a = s + this.width() * r,
                              l = [];
                          for (n = 0, i = this._coordinates.length; n < i; n++) e = this._coordinates[n - 1] || 0, t = Math.abs(this._coordinates[n]) + o * r, (this.op(e, "<=", s) && this.op(e, ">", a) || this.op(t, "<", s) && this.op(t, ">", a)) && l.push(n);
                          this.$stage.children(".active").removeClass("active"), this.$stage.children(":eq(" + l.join("), :eq(") + ")").addClass("active"), this.$stage.children(".center").removeClass("center"), this.settings.center && this.$stage.children().eq(this.current()).addClass("center")
                      }
                  }], o.prototype.initializeStage = function () {
                      this.$stage = this.$element.find("." + this.settings.stageClass), this.$stage.length || (this.$element.addClass(this.options.loadingClass), this.$stage = e("<" + this.settings.stageElement + ">", {
                          "class": this.settings.stageClass
                      }).wrap(e("<div/>", {
                          "class": this.settings.stageOuterClass
                      })), this.$element.append(this.$stage.parent()))
                  }, o.prototype.initializeItems = function () {
                      var t = this.$element.find(".owl-item");
                      return t.length ? (this._items = t.get().map(function (t) {
                          return e(t)
                      }), this._mergers = this._items.map(function () {
                          return 1
                      }), void this.refresh()) : (this.replace(this.$element.children().not(this.$stage.parent())), this.isVisible() ? this.refresh() : this.invalidate("width"), void this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass))
                  }, o.prototype.initialize = function () {
                      if (this.enter("initializing"), this.trigger("initialize"), this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl), this.settings.autoWidth && !this.is("pre-loading")) {
                          var e, t, n;
                          e = this.$element.find("img"), t = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : r, n = this.$element.children(t).width(), e.length && n <= 0 && this.preloadAutoWidthImages(e)
                      }
                      this.initializeStage(), this.initializeItems(), this.registerEventHandlers(), this.leave("initializing"), this.trigger("initialized")
                  }, o.prototype.isVisible = function () {
                      return !this.settings.checkVisibility || this.$element.is(":visible")
                  }, o.prototype.setup = function () {
                      var t = this.viewport(),
                          n = this.options.responsive,
                          i = -1,
                          r = null;
                      n ? (e.each(n, function (e) {
                          e <= t && e > i && (i = Number(e))
                      }), r = e.extend({}, this.options, n[i]), "function" == typeof r.stagePadding && (r.stagePadding = r.stagePadding()), delete r.responsive, r.responsiveClass && this.$element.attr("class", this.$element.attr("class").replace(new RegExp("(" + this.options.responsiveClass + "-)\\S+\\s", "g"), "$1" + i))) : r = e.extend({}, this.options), this.trigger("change", {
                          property: {
                              name: "settings",
                              value: r
                          }
                      }), this._breakpoint = i, this.settings = r, this.invalidate("settings"), this.trigger("changed", {
                          property: {
                              name: "settings",
                              value: this.settings
                          }
                      })
                  }, o.prototype.optionsLogic = function () {
                      this.settings.autoWidth && (this.settings.stagePadding = !1, this.settings.merge = !1)
                  }, o.prototype.prepare = function (t) {
                      var n = this.trigger("prepare", {
                          content: t
                      });
                      return n.data || (n.data = e("<" + this.settings.itemElement + "/>").addClass(this.options.itemClass).append(t)), this.trigger("prepared", {
                          content: n.data
                      }), n.data
                  }, o.prototype.update = function () {
                      for (var t = 0, n = this._pipe.length, i = e.proxy(function (e) {
                              return this[e]
                          }, this._invalidated), r = {}; t < n;)(this._invalidated.all || e.grep(this._pipe[t].filter, i).length > 0) && this._pipe[t].run(r), t++;
                      this._invalidated = {}, !this.is("valid") && this.enter("valid")
                  }, o.prototype.width = function (e) {
                      switch (e = e || o.Width.Default) {
                          case o.Width.Inner:
                          case o.Width.Outer:
                              return this._width;
                          default:
                              return this._width - 2 * this.settings.stagePadding + this.settings.margin
                      }
                  }, o.prototype.refresh = function () {
                      this.enter("refreshing"), this.trigger("refresh"), this.setup(), this.optionsLogic(), this.$element.addClass(this.options.refreshClass), this.update(), this.$element.removeClass(this.options.refreshClass), this.leave("refreshing"), this.trigger("refreshed")
                  }, o.prototype.onThrottledResize = function () {
                      n.clearTimeout(this.resizeTimer), this.resizeTimer = n.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate)
                  }, o.prototype.onResize = function () {
                      return !!this._items.length && (this._width !== this.$element.width() && (!!this.isVisible() && (this.enter("resizing"), this.trigger("resize").isDefaultPrevented() ? (this.leave("resizing"), !1) : (this.invalidate("width"), this.refresh(), this.leave("resizing"), void this.trigger("resized")))))
                  }, o.prototype.registerEventHandlers = function () {
                      e.support.transition && this.$stage.on(e.support.transition.end + ".owl.core", e.proxy(this.onTransitionEnd, this)), this.settings.responsive !== !1 && this.on(n, "resize", this._handlers.onThrottledResize), this.settings.mouseDrag && (this.$element.addClass(this.options.dragClass), this.$stage.on("mousedown.owl.core", e.proxy(this.onDragStart, this)), this.$stage.on("dragstart.owl.core selectstart.owl.core", function () {
                          return !1
                      })), this.settings.touchDrag && (this.$stage.on("touchstart.owl.core", e.proxy(this.onDragStart, this)), this.$stage.on("touchcancel.owl.core", e.proxy(this.onDragEnd, this)))
                  }, o.prototype.onDragStart = function (t) {
                      var n = null;
                      3 !== t.which && (e.support.transform ? (n = this.$stage.css("transform").replace(/.*\(|\)| /g, "").split(","), n = {
                          x: n[16 === n.length ? 12 : 4],
                          y: n[16 === n.length ? 13 : 5]
                      }) : (n = this.$stage.position(), n = {
                          x: this.settings.rtl ? n.left + this.$stage.width() - this.width() + this.settings.margin : n.left,
                          y: n.top
                      }), this.is("animating") && (e.support.transform ? this.animate(n.x) : this.$stage.stop(), this.invalidate("position")), this.$element.toggleClass(this.options.grabClass, "mousedown" === t.type), this.speed(0), this._drag.time = (new Date).getTime(), this._drag.target = e(t.target), this._drag.stage.start = n, this._drag.stage.current = n, this._drag.pointer = this.pointer(t), e(i).on("mouseup.owl.core touchend.owl.core", e.proxy(this.onDragEnd, this)), e(i).one("mousemove.owl.core touchmove.owl.core", e.proxy(function (t) {
                          var n = this.difference(this._drag.pointer, this.pointer(t));
                          e(i).on("mousemove.owl.core touchmove.owl.core", e.proxy(this.onDragMove, this)), Math.abs(n.x) < Math.abs(n.y) && this.is("valid") || (t.preventDefault(), this.enter("dragging"), this.trigger("drag"))
                      }, this)))
                  }, o.prototype.onDragMove = function (e) {
                      var t = null,
                          n = null,
                          i = null,
                          r = this.difference(this._drag.pointer, this.pointer(e)),
                          o = this.difference(this._drag.stage.start, r);
                      this.is("dragging") && (e.preventDefault(), this.settings.loop ? (t = this.coordinates(this.minimum()), n = this.coordinates(this.maximum() + 1) - t, o.x = ((o.x - t) % n + n) % n + t) : (t = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()), n = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()), i = this.settings.pullDrag ? -1 * r.x / 5 : 0, o.x = Math.max(Math.min(o.x, t + i), n + i)), this._drag.stage.current = o, this.animate(o.x))
                  }, o.prototype.onDragEnd = function (t) {
                      var n = this.difference(this._drag.pointer, this.pointer(t)),
                          r = this._drag.stage.current,
                          o = n.x > 0 ^ this.settings.rtl ? "left" : "right";
                      e(i).off(".owl.core"), this.$element.removeClass(this.options.grabClass), (0 !== n.x && this.is("dragging") || !this.is("valid")) && (this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed), this.current(this.closest(r.x, 0 !== n.x ? o : this._drag.direction)), this.invalidate("position"), this.update(), this._drag.direction = o, (Math.abs(n.x) > 3 || (new Date).getTime() - this._drag.time > 300) && this._drag.target.one("click.owl.core", function () {
                          return !1
                      })), this.is("dragging") && (this.leave("dragging"), this.trigger("dragged"))
                  }, o.prototype.closest = function (t, n) {
                      var i = -1,
                          o = 30,
                          s = this.width(),
                          a = this.coordinates();
                      return this.settings.freeDrag || e.each(a, e.proxy(function (e, l) {
                          return "left" === n && t > l - o && t < l + o ? i = e : "right" === n && t > l - s - o && t < l - s + o ? i = e + 1 : this.op(t, "<", l) && this.op(t, ">", a[e + 1] !== r ? a[e + 1] : l - s) && (i = "left" === n ? e + 1 : e), i === -1
                      }, this)), this.settings.loop || (this.op(t, ">", a[this.minimum()]) ? i = t = this.minimum() : this.op(t, "<", a[this.maximum()]) && (i = t = this.maximum())), i
                  }, o.prototype.animate = function (t) {
                      var n = this.speed() > 0;
                      this.is("animating") && this.onTransitionEnd(), n && (this.enter("animating"), this.trigger("translate")), e.support.transform3d && e.support.transition ? this.$stage.css({
                          transform: "translate3d(" + t + "px,0px,0px)",
                          transition: this.speed() / 1e3 + "s" + (this.settings.slideTransition ? " " + this.settings.slideTransition : "")
                      }) : n ? this.$stage.animate({
                          left: t + "px"
                      }, this.speed(), this.settings.fallbackEasing, e.proxy(this.onTransitionEnd, this)) : this.$stage.css({
                          left: t + "px"
                      })
                  }, o.prototype.is = function (e) {
                      return this._states.current[e] && this._states.current[e] > 0
                  }, o.prototype.current = function (e) {
                      if (e === r) return this._current;
                      if (0 === this._items.length) return r;
                      if (e = this.normalize(e), this._current !== e) {
                          var t = this.trigger("change", {
                              property: {
                                  name: "position",
                                  value: e
                              }
                          });
                          t.data !== r && (e = this.normalize(t.data)), this._current = e, this.invalidate("position"), this.trigger("changed", {
                              property: {
                                  name: "position",
                                  value: this._current
                              }
                          })
                      }
                      return this._current
                  }, o.prototype.invalidate = function (t) {
                      return "string" === e.type(t) && (this._invalidated[t] = !0, this.is("valid") && this.leave("valid")), e.map(this._invalidated, function (e, t) {
                          return t
                      })
                  }, o.prototype.reset = function (e) {
                      e = this.normalize(e), e !== r && (this._speed = 0, this._current = e, this.suppress(["translate", "translated"]), this.animate(this.coordinates(e)), this.release(["translate", "translated"]))
                  }, o.prototype.normalize = function (e, t) {
                      var n = this._items.length,
                          i = t ? 0 : this._clones.length;
                      return !this.isNumeric(e) || n < 1 ? e = r : (e < 0 || e >= n + i) && (e = ((e - i / 2) % n + n) % n + i / 2), e
                  }, o.prototype.relative = function (e) {
                      return e -= this._clones.length / 2, this.normalize(e, !0)
                  }, o.prototype.maximum = function (e) {
                      var t, n, i, r = this.settings,
                          o = this._coordinates.length;
                      if (r.loop) o = this._clones.length / 2 + this._items.length - 1;
                      else if (r.autoWidth || r.merge) {
                          if (t = this._items.length)
                              for (n = this._items[--t].width(), i = this.$element.width(); t-- && (n += this._items[t].width() + this.settings.margin, !(n > i)););
                          o = t + 1
                      } else o = r.center ? this._items.length - 1 : this._items.length - r.items;
                      return e && (o -= this._clones.length / 2), Math.max(o, 0)
                  }, o.prototype.minimum = function (e) {
                      return e ? 0 : this._clones.length / 2
                  }, o.prototype.items = function (e) {
                      return e === r ? this._items.slice() : (e = this.normalize(e, !0), this._items[e])
                  }, o.prototype.mergers = function (e) {
                      return e === r ? this._mergers.slice() : (e = this.normalize(e, !0), this._mergers[e])
                  }, o.prototype.clones = function (t) {
                      var n = this._clones.length / 2,
                          i = n + this._items.length,
                          o = function (e) {
                              return e % 2 === 0 ? i + e / 2 : n - (e + 1) / 2
                          };
                      return t === r ? e.map(this._clones, function (e, t) {
                          return o(t)
                      }) : e.map(this._clones, function (e, n) {
                          return e === t ? o(n) : null
                      })
                  }, o.prototype.speed = function (e) {
                      return e !== r && (this._speed = e), this._speed
                  }, o.prototype.coordinates = function (t) {
                      var n, i = 1,
                          o = t - 1;
                      return t === r ? e.map(this._coordinates, e.proxy(function (e, t) {
                          return this.coordinates(t)
                      }, this)) : (this.settings.center ? (this.settings.rtl && (i = -1, o = t + 1), n = this._coordinates[t], n += (this.width() - n + (this._coordinates[o] || 0)) / 2 * i) : n = this._coordinates[o] || 0, n = Math.ceil(n))
                  }, o.prototype.duration = function (e, t, n) {
                      return 0 === n ? 0 : Math.min(Math.max(Math.abs(t - e), 1), 6) * Math.abs(n || this.settings.smartSpeed)
                  }, o.prototype.to = function (e, t) {
                      var n = this.current(),
                          i = null,
                          r = e - this.relative(n),
                          o = (r > 0) - (r < 0),
                          s = this._items.length,
                          a = this.minimum(),
                          l = this.maximum();
                      this.settings.loop ? (!this.settings.rewind && Math.abs(r) > s / 2 && (r += o * -1 * s), e = n + r, i = ((e - a) % s + s) % s + a, i !== e && i - r <= l && i - r > 0 && (n = i - r, e = i, this.reset(n))) : this.settings.rewind ? (l += 1, e = (e % l + l) % l) : e = Math.max(a, Math.min(l, e)), this.speed(this.duration(n, e, t)), this.current(e), this.isVisible() && this.update()
                  }, o.prototype.next = function (e) {
                      e = e || !1, this.to(this.relative(this.current()) + 1, e)
                  }, o.prototype.prev = function (e) {
                      e = e || !1, this.to(this.relative(this.current()) - 1, e)
                  }, o.prototype.onTransitionEnd = function (e) {
                      return (e === r || (e.stopPropagation(), (e.target || e.srcElement || e.originalTarget) === this.$stage.get(0))) && (this.leave("animating"), void this.trigger("translated"))
                  }, o.prototype.viewport = function () {
                      var t;
                      return this.options.responsiveBaseElement !== n ? t = e(this.options.responsiveBaseElement).width() : n.innerWidth ? t = n.innerWidth : i.documentElement && i.documentElement.clientWidth ? t = i.documentElement.clientWidth : console.warn("Can not detect viewport width."), t
                  }, o.prototype.replace = function (n) {
                      this.$stage.empty(), this._items = [], n && (n = n instanceof t ? n : e(n)), this.settings.nestedItemSelector && (n = n.find("." + this.settings.nestedItemSelector)), n.filter(function () {
                          return 1 === this.nodeType
                      }).each(e.proxy(function (e, t) {
                          t = this.prepare(t), this.$stage.append(t), this._items.push(t), this._mergers.push(1 * t.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)
                      }, this)), this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0), this.invalidate("items")
                  }, o.prototype.add = function (n, i) {
                      var o = this.relative(this._current);
                      i = i === r ? this._items.length : this.normalize(i, !0), n = n instanceof t ? n : e(n), this.trigger("add", {
                          content: n,
                          position: i
                      }), n = this.prepare(n), 0 === this._items.length || i === this._items.length ? (0 === this._items.length && this.$stage.append(n), 0 !== this._items.length && this._items[i - 1].after(n), this._items.push(n), this._mergers.push(1 * n.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)) : (this._items[i].before(n), this._items.splice(i, 0, n), this._mergers.splice(i, 0, 1 * n.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)), this._items[o] && this.reset(this._items[o].index()), this.invalidate("items"), this.trigger("added", {
                          content: n,
                          position: i
                      })
                  }, o.prototype.remove = function (e) {
                      e = this.normalize(e, !0), e !== r && (this.trigger("remove", {
                          content: this._items[e],
                          position: e
                      }), this._items[e].remove(), this._items.splice(e, 1), this._mergers.splice(e, 1), this.invalidate("items"), this.trigger("removed", {
                          content: null,
                          position: e
                      }))
                  }, o.prototype.preloadAutoWidthImages = function (t) {
                      t.each(e.proxy(function (t, n) {
                          this.enter("pre-loading"), n = e(n), e(new Image).one("load", e.proxy(function (e) {
                              n.attr("src", e.target.src), n.css("opacity", 1), this.leave("pre-loading"), !this.is("pre-loading") && !this.is("initializing") && this.refresh()
                          }, this)).attr("src", n.attr("src") || n.attr("data-src") || n.attr("data-src-retina"))
                      }, this))
                  }, o.prototype.destroy = function () {
                      this.$element.off(".owl.core"), this.$stage.off(".owl.core"), e(i).off(".owl.core"), this.settings.responsive !== !1 && (n.clearTimeout(this.resizeTimer), this.off(n, "resize", this._handlers.onThrottledResize));
                      for (var t in this._plugins) this._plugins[t].destroy();
                      this.$stage.children(".cloned").remove(), this.$stage.unwrap(), this.$stage.children().contents().unwrap(), this.$stage.children().unwrap(), this.$stage.remove(), this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class", this.$element.attr("class").replace(new RegExp(this.options.responsiveClass + "-\\S+\\s", "g"), "")).removeData("owl.carousel")
                  }, o.prototype.op = function (e, t, n) {
                      var i = this.settings.rtl;
                      switch (t) {
                          case "<":
                              return i ? e > n : e < n;
                          case ">":
                              return i ? e < n : e > n;
                          case ">=":
                              return i ? e <= n : e >= n;
                          case "<=":
                              return i ? e >= n : e <= n
                      }
                  }, o.prototype.on = function (e, t, n, i) {
                      e.addEventListener ? e.addEventListener(t, n, i) : e.attachEvent && e.attachEvent("on" + t, n)
                  }, o.prototype.off = function (e, t, n, i) {
                      e.removeEventListener ? e.removeEventListener(t, n, i) : e.detachEvent && e.detachEvent("on" + t, n)
                  }, o.prototype.trigger = function (t, n, i, r, s) {
                      var a = {
                              item: {
                                  count: this._items.length,
                                  index: this.current()
                              }
                          },
                          l = e.camelCase(e.grep(["on", t, i], function (e) {
                              return e
                          }).join("-").toLowerCase()),
                          u = e.Event([t, "owl", i || "carousel"].join(".").toLowerCase(), e.extend({
                              relatedTarget: this
                          }, a, n));
                      return this._supress[t] || (e.each(this._plugins, function (e, t) {
                          t.onTrigger && t.onTrigger(u)
                      }), this.register({
                          type: o.Type.Event,
                          name: t
                      }), this.$element.trigger(u), this.settings && "function" == typeof this.settings[l] && this.settings[l].call(this, u)), u
                  }, o.prototype.enter = function (t) {
                      e.each([t].concat(this._states.tags[t] || []), e.proxy(function (e, t) {
                          this._states.current[t] === r && (this._states.current[t] = 0), this._states.current[t]++
                      }, this))
                  }, o.prototype.leave = function (t) {
                      e.each([t].concat(this._states.tags[t] || []), e.proxy(function (e, t) {
                          this._states.current[t]--
                      }, this))
                  }, o.prototype.register = function (t) {
                      if (t.type === o.Type.Event) {
                          if (e.event.special[t.name] || (e.event.special[t.name] = {}), !e.event.special[t.name].owl) {
                              var n = e.event.special[t.name]._default;
                              e.event.special[t.name]._default = function (e) {
                                  return !n || !n.apply || e.namespace && e.namespace.indexOf("owl") !== -1 ? e.namespace && e.namespace.indexOf("owl") > -1 : n.apply(this, arguments)
                              }, e.event.special[t.name].owl = !0
                          }
                      } else t.type === o.Type.State && (this._states.tags[t.name] ? this._states.tags[t.name] = this._states.tags[t.name].concat(t.tags) : this._states.tags[t.name] = t.tags, this._states.tags[t.name] = e.grep(this._states.tags[t.name], e.proxy(function (n, i) {
                          return e.inArray(n, this._states.tags[t.name]) === i
                      }, this)))
                  }, o.prototype.suppress = function (t) {
                      e.each(t, e.proxy(function (e, t) {
                          this._supress[t] = !0
                      }, this))
                  }, o.prototype.release = function (t) {
                      e.each(t, e.proxy(function (e, t) {
                          delete this._supress[t]
                      }, this))
                  }, o.prototype.pointer = function (e) {
                      var t = {
                          x: null,
                          y: null
                      };
                      return e = e.originalEvent || e || n.event, e = e.touches && e.touches.length ? e.touches[0] : e.changedTouches && e.changedTouches.length ? e.changedTouches[0] : e, e.pageX ? (t.x = e.pageX, t.y = e.pageY) : (t.x = e.clientX, t.y = e.clientY), t
                  }, o.prototype.isNumeric = function (e) {
                      return !isNaN(parseFloat(e))
                  }, o.prototype.difference = function (e, t) {
                      return {
                          x: e.x - t.x,
                          y: e.y - t.y
                      }
                  }, e.fn.owlCarousel = function (t) {
                      var n = Array.prototype.slice.call(arguments, 1);
                      return this.each(function () {
                          var i = e(this),
                              r = i.data("owl.carousel");
                          r || (r = new o(this, "object" == typeof t && t), i.data("owl.carousel", r), e.each(["next", "prev", "to", "destroy", "refresh", "replace", "add", "remove"], function (t, n) {
                              r.register({
                                  type: o.Type.Event,
                                  name: n
                              }), r.$element.on(n + ".owl.carousel.core", e.proxy(function (e) {
                                  e.namespace && e.relatedTarget !== this && (this.suppress([n]), r[n].apply(this, [].slice.call(arguments, 1)), this.release([n]))
                              }, r))
                          })), "string" == typeof t && "_" !== t.charAt(0) && r[t].apply(r, n)
                      })
                  }, e.fn.owlCarousel.Constructor = o
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (t) {
                      this._core = t, this._interval = null, this._visible = null, this._handlers = {
                          "initialized.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.autoRefresh && this.watch()
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this._core.$element.on(this._handlers)
                  };
                  r.Defaults = {
                      autoRefresh: !0,
                      autoRefreshInterval: 500
                  }, r.prototype.watch = function () {
                      this._interval || (this._visible = this._core.isVisible(), this._interval = t.setInterval(e.proxy(this.refresh, this), this._core.settings.autoRefreshInterval))
                  }, r.prototype.refresh = function () {
                      this._core.isVisible() !== this._visible && (this._visible = !this._visible, this._core.$element.toggleClass("owl-hidden", !this._visible), this._visible && this._core.invalidate("width") && this._core.refresh())
                  }, r.prototype.destroy = function () {
                      var e, n;
                      t.clearInterval(this._interval);
                      for (e in this._handlers) this._core.$element.off(e, this._handlers[e]);
                      for (n in Object.getOwnPropertyNames(this)) "function" != typeof this[n] && (this[n] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.AutoRefresh = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (t) {
                      this._core = t, this._loaded = [], this._handlers = {
                          "initialized.owl.carousel change.owl.carousel resized.owl.carousel": e.proxy(function (t) {
                              if (t.namespace && this._core.settings && this._core.settings.lazyLoad && (t.property && "position" == t.property.name || "initialized" == t.type)) {
                                  var n = this._core.settings,
                                      r = n.center && Math.ceil(n.items / 2) || n.items,
                                      o = n.center && r * -1 || 0,
                                      s = (t.property && t.property.value !== i ? t.property.value : this._core.current()) + o,
                                      a = this._core.clones().length,
                                      l = e.proxy(function (e, t) {
                                          this.load(t)
                                      }, this);
                                  for (n.lazyLoadEager > 0 && (r += n.lazyLoadEager, n.loop && (s -= n.lazyLoadEager, r++)); o++ < r;) this.load(a / 2 + this._core.relative(s)), a && e.each(this._core.clones(this._core.relative(s)), l), s++
                              }
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this._core.$element.on(this._handlers)
                  };
                  r.Defaults = {
                      lazyLoad: !1,
                      lazyLoadEager: 0
                  }, r.prototype.load = function (n) {
                      var i = this._core.$stage.children().eq(n),
                          r = i && i.find(".owl-lazy");
                      !r || e.inArray(i.get(0), this._loaded) > -1 || (r.each(e.proxy(function (n, i) {
                          var r, o = e(i),
                              s = t.devicePixelRatio > 1 && o.attr("data-src-retina") || o.attr("data-src") || o.attr("data-srcset");
                          this._core.trigger("load", {
                              element: o,
                              url: s
                          }, "lazy"), o.is("img") ? o.one("load.owl.lazy", e.proxy(function () {
                              o.css("opacity", 1), this._core.trigger("loaded", {
                                  element: o,
                                  url: s
                              }, "lazy")
                          }, this)).attr("src", s) : o.is("source") ? o.one("load.owl.lazy", e.proxy(function () {
                              this._core.trigger("loaded", {
                                  element: o,
                                  url: s
                              }, "lazy")
                          }, this)).attr("srcset", s) : (r = new Image, r.onload = e.proxy(function () {
                              o.css({
                                  "background-image": 'url("' + s + '")',
                                  opacity: "1"
                              }), this._core.trigger("loaded", {
                                  element: o,
                                  url: s
                              }, "lazy")
                          }, this), r.src = s)
                      }, this)), this._loaded.push(i.get(0)))
                  }, r.prototype.destroy = function () {
                      var e, t;
                      for (e in this.handlers) this._core.$element.off(e, this.handlers[e]);
                      for (t in Object.getOwnPropertyNames(this)) "function" != typeof this[t] && (this[t] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.Lazy = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (n) {
                      this._core = n, this._previousHeight = null, this._handlers = {
                          "initialized.owl.carousel refreshed.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.autoHeight && this.update()
                          }, this),
                          "changed.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.autoHeight && "position" === e.property.name && this.update()
                          }, this),
                          "loaded.owl.lazy": e.proxy(function (e) {
                              e.namespace && this._core.settings.autoHeight && e.element.closest("." + this._core.settings.itemClass).index() === this._core.current() && this.update()
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this._core.$element.on(this._handlers), this._intervalId = null;
                      var i = this;
                      e(t).on("load", function () {
                          i._core.settings.autoHeight && i.update()
                      }), e(t).resize(function () {
                          i._core.settings.autoHeight && (null != i._intervalId && clearTimeout(i._intervalId), i._intervalId = setTimeout(function () {
                              i.update()
                          }, 250))
                      })
                  };
                  r.Defaults = {
                      autoHeight: !1,
                      autoHeightClass: "owl-height"
                  }, r.prototype.update = function () {
                      var t = this._core._current,
                          n = t + this._core.settings.items,
                          i = this._core.settings.lazyLoad,
                          r = this._core.$stage.children().toArray().slice(t, n),
                          o = [],
                          s = 0;
                      e.each(r, function (t, n) {
                          o.push(e(n).height())
                      }), s = Math.max.apply(null, o), s <= 1 && i && this._previousHeight && (s = this._previousHeight), this._previousHeight = s, this._core.$stage.parent().height(s).addClass(this._core.settings.autoHeightClass)
                  }, r.prototype.destroy = function () {
                      var e, t;
                      for (e in this._handlers) this._core.$element.off(e, this._handlers[e]);
                      for (t in Object.getOwnPropertyNames(this)) "function" != typeof this[t] && (this[t] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.AutoHeight = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (t) {
                      this._core = t, this._videos = {}, this._playing = null, this._handlers = {
                          "initialized.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.register({
                                  type: "state",
                                  name: "playing",
                                  tags: ["interacting"]
                              })
                          }, this),
                          "resize.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.video && this.isInFullScreen() && e.preventDefault()
                          }, this),
                          "refreshed.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.is("resizing") && this._core.$stage.find(".cloned .owl-video-frame").remove()
                          }, this),
                          "changed.owl.carousel": e.proxy(function (e) {
                              e.namespace && "position" === e.property.name && this._playing && this.stop()
                          }, this),
                          "prepared.owl.carousel": e.proxy(function (t) {
                              if (t.namespace) {
                                  var n = e(t.content).find(".owl-video");
                                  n.length && (n.css("display", "none"), this.fetch(n, e(t.content)))
                              }
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this._core.$element.on(this._handlers), this._core.$element.on("click.owl.video", ".owl-video-play-icon", e.proxy(function (e) {
                          this.play(e)
                      }, this))
                  };
                  r.Defaults = {
                      video: !1,
                      videoHeight: !1,
                      videoWidth: !1
                  }, r.prototype.fetch = function (e, t) {
                      var n = function () {
                              return e.attr("data-vimeo-id") ? "vimeo" : e.attr("data-vzaar-id") ? "vzaar" : "youtube"
                          }(),
                          i = e.attr("data-vimeo-id") || e.attr("data-youtube-id") || e.attr("data-vzaar-id"),
                          r = e.attr("data-width") || this._core.settings.videoWidth,
                          o = e.attr("data-height") || this._core.settings.videoHeight,
                          s = e.attr("href");
                      if (!s) throw new Error("Missing video URL.");
                      if (i = s.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/), i[3].indexOf("youtu") > -1) n = "youtube";
                      else if (i[3].indexOf("vimeo") > -1) n = "vimeo";
                      else {
                          if (!(i[3].indexOf("vzaar") > -1)) throw new Error("Video URL not supported.");
                          n = "vzaar"
                      }
                      i = i[6], this._videos[s] = {
                          type: n,
                          id: i,
                          width: r,
                          height: o
                      }, t.attr("data-video", s), this.thumbnail(e, this._videos[s])
                  }, r.prototype.thumbnail = function (t, n) {
                      var i, r, o, s = n.width && n.height ? "width:" + n.width + "px;height:" + n.height + "px;" : "",
                          a = t.find("img"),
                          l = "src",
                          u = "",
                          c = this._core.settings,
                          h = function (n) {
                              r = '<div class="owl-video-play-icon"></div>', i = c.lazyLoad ? e("<div/>", {
                                  "class": "owl-video-tn " + u,
                                  srcType: n
                              }) : e("<div/>", {
                                  "class": "owl-video-tn",
                                  style: "opacity:1;background-image:url(" + n + ")"
                              }), t.after(i), t.after(r)
                          };
                      return t.wrap(e("<div/>", {
                          "class": "owl-video-wrapper",
                          style: s
                      })), this._core.settings.lazyLoad && (l = "data-src", u = "owl-lazy"), a.length ? (h(a.attr(l)), a.remove(), !1) : void("youtube" === n.type ? (o = "//img.youtube.com/vi/" + n.id + "/hqdefault.jpg", h(o)) : "vimeo" === n.type ? e.ajax({
                          type: "GET",
                          url: "//vimeo.com/api/v2/video/" + n.id + ".json",
                          jsonp: "callback",
                          dataType: "jsonp",
                          success: function (e) {
                              o = e[0].thumbnail_large, h(o)
                          }
                      }) : "vzaar" === n.type && e.ajax({
                          type: "GET",
                          url: "//vzaar.com/api/videos/" + n.id + ".json",
                          jsonp: "callback",
                          dataType: "jsonp",
                          success: function (e) {
                              o = e.framegrab_url, h(o)
                          }
                      }))
                  }, r.prototype.stop = function () {
                      this._core.trigger("stop", null, "video"), this._playing.find(".owl-video-frame").remove(), this._playing.removeClass("owl-video-playing"), this._playing = null, this._core.leave("playing"), this._core.trigger("stopped", null, "video")
                  }, r.prototype.play = function (t) {
                      var n, i, r = e(t.target),
                          o = r.closest("." + this._core.settings.itemClass),
                          s = this._videos[o.attr("data-video")],
                          a = s.width || "100%",
                          l = s.height || this._core.$stage.height();
                      this._playing || (this._core.enter("playing"), this._core.trigger("play", null, "video"), o = this._core.items(this._core.relative(o.index())), this._core.reset(o.index()), n = e('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>'), n.attr("height", l), n.attr("width", a), "youtube" === s.type ? n.attr("src", "//www.youtube.com/embed/" + s.id + "?autoplay=1&rel=0&v=" + s.id) : "vimeo" === s.type ? n.attr("src", "//player.vimeo.com/video/" + s.id + "?autoplay=1") : "vzaar" === s.type && n.attr("src", "//view.vzaar.com/" + s.id + "/player?autoplay=true"), i = e(n).wrap('<div class="owl-video-frame" />').insertAfter(o.find(".owl-video")), this._playing = o.addClass("owl-video-playing"))
                  }, r.prototype.isInFullScreen = function () {
                      var t = n.fullscreenElement || n.mozFullScreenElement || n.webkitFullscreenElement;
                      return t && e(t).parent().hasClass("owl-video-frame")
                  }, r.prototype.destroy = function () {
                      var e, t;
                      this._core.$element.off("click.owl.video");
                      for (e in this._handlers) this._core.$element.off(e, this._handlers[e]);
                      for (t in Object.getOwnPropertyNames(this)) "function" != typeof this[t] && (this[t] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.Video = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (t) {
                      this.core = t, this.core.options = e.extend({}, r.Defaults, this.core.options), this.swapping = !0, this.previous = i, this.next = i, this.handlers = {
                          "change.owl.carousel": e.proxy(function (e) {
                              e.namespace && "position" == e.property.name && (this.previous = this.core.current(), this.next = e.property.value)
                          }, this),
                          "drag.owl.carousel dragged.owl.carousel translated.owl.carousel": e.proxy(function (e) {
                              e.namespace && (this.swapping = "translated" == e.type)
                          }, this),
                          "translate.owl.carousel": e.proxy(function (e) {
                              e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap()
                          }, this)
                      }, this.core.$element.on(this.handlers)
                  };
                  r.Defaults = {
                      animateOut: !1,
                      animateIn: !1
                  }, r.prototype.swap = function () {
                      if (1 === this.core.settings.items && e.support.animation && e.support.transition) {
                          this.core.speed(0);
                          var t, n = e.proxy(this.clear, this),
                              i = this.core.$stage.children().eq(this.previous),
                              r = this.core.$stage.children().eq(this.next),
                              o = this.core.settings.animateIn,
                              s = this.core.settings.animateOut;
                          this.core.current() !== this.previous && (s && (t = this.core.coordinates(this.previous) - this.core.coordinates(this.next), i.one(e.support.animation.end, n).css({
                              left: t + "px"
                          }).addClass("animated owl-animated-out").addClass(s)), o && r.one(e.support.animation.end, n).addClass("animated owl-animated-in").addClass(o))
                      }
                  }, r.prototype.clear = function (t) {
                      e(t.target).css({
                          left: ""
                      }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.onTransitionEnd()
                  }, r.prototype.destroy = function () {
                      var e, t;
                      for (e in this.handlers) this.core.$element.off(e, this.handlers[e]);
                      for (t in Object.getOwnPropertyNames(this)) "function" != typeof this[t] && (this[t] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.Animate = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  var r = function (t) {
                      this._core = t, this._call = null, this._time = 0, this._timeout = 0, this._paused = !0, this._handlers = {
                          "changed.owl.carousel": e.proxy(function (e) {
                              e.namespace && "settings" === e.property.name ? this._core.settings.autoplay ? this.play() : this.stop() : e.namespace && "position" === e.property.name && this._paused && (this._time = 0)
                          }, this),
                          "initialized.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.autoplay && this.play()
                          }, this),
                          "play.owl.autoplay": e.proxy(function (e, t, n) {
                              e.namespace && this.play(t, n)
                          }, this),
                          "stop.owl.autoplay": e.proxy(function (e) {
                              e.namespace && this.stop()
                          }, this),
                          "mouseover.owl.autoplay": e.proxy(function () {
                              this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause()
                          }, this),
                          "mouseleave.owl.autoplay": e.proxy(function () {
                              this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.play()
                          }, this),
                          "touchstart.owl.core": e.proxy(function () {
                              this._core.settings.autoplayHoverPause && this._core.is("rotating") && this.pause()
                          }, this),
                          "touchend.owl.core": e.proxy(function () {
                              this._core.settings.autoplayHoverPause && this.play()
                          }, this)
                      }, this._core.$element.on(this._handlers), this._core.options = e.extend({}, r.Defaults, this._core.options)
                  };
                  r.Defaults = {
                      autoplay: !1,
                      autoplayTimeout: 5e3,
                      autoplayHoverPause: !1,
                      autoplaySpeed: !1
                  }, r.prototype._next = function (i) {
                      this._call = t.setTimeout(e.proxy(this._next, this, i), this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()), this._core.is("interacting") || n.hidden || this._core.next(i || this._core.settings.autoplaySpeed)
                  }, r.prototype.read = function () {
                      return (new Date).getTime() - this._time
                  }, r.prototype.play = function (n, i) {
                      var r;
                      this._core.is("rotating") || this._core.enter("rotating"), n = n || this._core.settings.autoplayTimeout, r = Math.min(this._time % (this._timeout || n), n), this._paused ? (this._time = this.read(), this._paused = !1) : t.clearTimeout(this._call), this._time += this.read() % n - r, this._timeout = n, this._call = t.setTimeout(e.proxy(this._next, this, i), n - r)
                  }, r.prototype.stop = function () {
                      this._core.is("rotating") && (this._time = 0, this._paused = !0, t.clearTimeout(this._call), this._core.leave("rotating"))
                  }, r.prototype.pause = function () {
                      this._core.is("rotating") && !this._paused && (this._time = this.read(), this._paused = !0, t.clearTimeout(this._call))
                  }, r.prototype.destroy = function () {
                      var e, t;
                      this.stop();
                      for (e in this._handlers) this._core.$element.off(e, this._handlers[e]);
                      for (t in Object.getOwnPropertyNames(this)) "function" != typeof this[t] && (this[t] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.autoplay = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  "use strict";
                  var r = function (t) {
                      this._core = t, this._initialized = !1, this._pages = [], this._controls = {}, this._templates = [], this.$element = this._core.$element, this._overrides = {
                          next: this._core.next,
                          prev: this._core.prev,
                          to: this._core.to
                      }, this._handlers = {
                          "prepared.owl.carousel": e.proxy(function (t) {
                              t.namespace && this._core.settings.dotsData && this._templates.push('<div class="' + this._core.settings.dotClass + '">' + e(t.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot") + "</div>")
                          }, this),
                          "added.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.dotsData && this._templates.splice(e.position, 0, this._templates.pop())
                          }, this),
                          "remove.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._core.settings.dotsData && this._templates.splice(e.position, 1)
                          }, this),
                          "changed.owl.carousel": e.proxy(function (e) {
                              e.namespace && "position" == e.property.name && this.draw()
                          }, this),
                          "initialized.owl.carousel": e.proxy(function (e) {
                              e.namespace && !this._initialized && (this._core.trigger("initialize", null, "navigation"), this.initialize(), this.update(), this.draw(), this._initialized = !0, this._core.trigger("initialized", null, "navigation"))
                          }, this),
                          "refreshed.owl.carousel": e.proxy(function (e) {
                              e.namespace && this._initialized && (this._core.trigger("refresh", null, "navigation"), this.update(), this.draw(), this._core.trigger("refreshed", null, "navigation"))
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this.$element.on(this._handlers)
                  };
                  r.Defaults = {
                      nav: !1,
                      navText: ['<span aria-label="Previous">&#x2039;</span>', '<span aria-label="Next">&#x203a;</span>'],
                      navSpeed: !1,
                      navElement: 'button type="button" role="presentation"',
                      navContainer: !1,
                      navContainerClass: "owl-nav",
                      navClass: ["owl-prev", "owl-next"],
                      slideBy: 1,
                      dotClass: "owl-dot",
                      dotsClass: "owl-dots",
                      dots: !0,
                      dotsEach: !1,
                      dotsData: !1,
                      dotsSpeed: !1,
                      dotsContainer: !1
                  }, r.prototype.initialize = function () {
                      var t, n = this._core.settings;
                      this._controls.$relative = (n.navContainer ? e(n.navContainer) : e("<div>").addClass(n.navContainerClass).appendTo(this.$element)).addClass("disabled"), this._controls.$previous = e("<" + n.navElement + ">").addClass(n.navClass[0]).html(n.navText[0]).prependTo(this._controls.$relative).on("click", e.proxy(function (e) {
                          this.prev(n.navSpeed)
                      }, this)), this._controls.$next = e("<" + n.navElement + ">").addClass(n.navClass[1]).html(n.navText[1]).appendTo(this._controls.$relative).on("click", e.proxy(function (e) {
                          this.next(n.navSpeed)
                      }, this)), n.dotsData || (this._templates = [e('<button role="button">').addClass(n.dotClass).append(e("<span>")).prop("outerHTML")]), this._controls.$absolute = (n.dotsContainer ? e(n.dotsContainer) : e("<div>").addClass(n.dotsClass).appendTo(this.$element)).addClass("disabled"), this._controls.$absolute.on("click", "button", e.proxy(function (t) {
                          var i = e(t.target).parent().is(this._controls.$absolute) ? e(t.target).index() : e(t.target).parent().index();
                          t.preventDefault(), this.to(i, n.dotsSpeed)
                      }, this));
                      for (t in this._overrides) this._core[t] = e.proxy(this[t], this)
                  }, r.prototype.destroy = function () {
                      var e, t, n, i, r;
                      r = this._core.settings;
                      for (e in this._handlers) this.$element.off(e, this._handlers[e]);
                      for (t in this._controls) "$relative" === t && r.navContainer ? this._controls[t].html("") : this._controls[t].remove();
                      for (i in this.overides) this._core[i] = this._overrides[i];
                      for (n in Object.getOwnPropertyNames(this)) "function" != typeof this[n] && (this[n] = null)
                  }, r.prototype.update = function () {
                      var e, t, n, i = this._core.clones().length / 2,
                          r = i + this._core.items().length,
                          o = this._core.maximum(!0),
                          s = this._core.settings,
                          a = s.center || s.autoWidth || s.dotsData ? 1 : s.dotsEach || s.items;
                      if ("page" !== s.slideBy && (s.slideBy = Math.min(s.slideBy, s.items)), s.dots || "page" == s.slideBy)
                          for (this._pages = [], e = i, t = 0, n = 0; e < r; e++) {
                              if (t >= a || 0 === t) {
                                  if (this._pages.push({
                                          start: Math.min(o, e - i),
                                          end: e - i + a - 1
                                      }), Math.min(o, e - i) === o) break;
                                  t = 0, ++n
                              }
                              t += this._core.mergers(this._core.relative(e))
                          }
                  }, r.prototype.draw = function () {
                      var t, n = this._core.settings,
                          i = this._core.items().length <= n.items,
                          r = this._core.relative(this._core.current()),
                          o = n.loop || n.rewind;
                      this._controls.$relative.toggleClass("disabled", !n.nav || i), n.nav && (this._controls.$previous.toggleClass("disabled", !o && r <= this._core.minimum(!0)), this._controls.$next.toggleClass("disabled", !o && r >= this._core.maximum(!0))), this._controls.$absolute.toggleClass("disabled", !n.dots || i), n.dots && (t = this._pages.length - this._controls.$absolute.children().length, n.dotsData && 0 !== t ? this._controls.$absolute.html(this._templates.join("")) : t > 0 ? this._controls.$absolute.append(new Array(t + 1).join(this._templates[0])) : t < 0 && this._controls.$absolute.children().slice(t).remove(), this._controls.$absolute.find(".active").removeClass("active"), this._controls.$absolute.children().eq(e.inArray(this.current(), this._pages)).addClass("active"))
                  }, r.prototype.onTrigger = function (t) {
                      var n = this._core.settings;
                      t.page = {
                          index: e.inArray(this.current(), this._pages),
                          count: this._pages.length,
                          size: n && (n.center || n.autoWidth || n.dotsData ? 1 : n.dotsEach || n.items)
                      }
                  }, r.prototype.current = function () {
                      var t = this._core.relative(this._core.current());
                      return e.grep(this._pages, e.proxy(function (e, n) {
                          return e.start <= t && e.end >= t
                      }, this)).pop()
                  }, r.prototype.getPosition = function (t) {
                      var n, i, r = this._core.settings;
                      return "page" == r.slideBy ? (n = e.inArray(this.current(), this._pages), i = this._pages.length, t ? ++n : --n, n = this._pages[(n % i + i) % i].start) : (n = this._core.relative(this._core.current()), i = this._core.items().length, t ? n += r.slideBy : n -= r.slideBy), n
                  }, r.prototype.next = function (t) {
                      e.proxy(this._overrides.to, this._core)(this.getPosition(!0), t)
                  }, r.prototype.prev = function (t) {
                      e.proxy(this._overrides.to, this._core)(this.getPosition(!1), t)
                  }, r.prototype.to = function (t, n, i) {
                      var r;
                      !i && this._pages.length ? (r = this._pages.length, e.proxy(this._overrides.to, this._core)(this._pages[(t % r + r) % r].start, n)) : e.proxy(this._overrides.to, this._core)(t, n)
                  }, e.fn.owlCarousel.Constructor.Plugins.Navigation = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  "use strict";
                  var r = function (n) {
                      this._core = n, this._hashes = {}, this.$element = this._core.$element, this._handlers = {
                          "initialized.owl.carousel": e.proxy(function (n) {
                              n.namespace && "URLHash" === this._core.settings.startPosition && e(t).trigger("hashchange.owl.navigation")
                          }, this),
                          "prepared.owl.carousel": e.proxy(function (t) {
                              if (t.namespace) {
                                  var n = e(t.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");
                                  if (!n) return;
                                  this._hashes[n] = t.content
                              }
                          }, this),
                          "changed.owl.carousel": e.proxy(function (n) {
                              if (n.namespace && "position" === n.property.name) {
                                  var i = this._core.items(this._core.relative(this._core.current())),
                                      r = e.map(this._hashes, function (e, t) {
                                          return e === i ? t : null
                                      }).join();
                                  if (!r || t.location.hash.slice(1) === r) return;
                                  t.location.hash = r
                              }
                          }, this)
                      }, this._core.options = e.extend({}, r.Defaults, this._core.options), this.$element.on(this._handlers), e(t).on("hashchange.owl.navigation", e.proxy(function (e) {
                          var n = t.location.hash.substring(1),
                              r = this._core.$stage.children(),
                              o = this._hashes[n] && r.index(this._hashes[n]);
                          o !== i && o !== this._core.current() && this._core.to(this._core.relative(o), !1, !0)
                      }, this))
                  };
                  r.Defaults = {
                      URLhashListener: !1
                  }, r.prototype.destroy = function () {
                      var n, i;
                      e(t).off("hashchange.owl.navigation");
                      for (n in this._handlers) this._core.$element.off(n, this._handlers[n]);
                      for (i in Object.getOwnPropertyNames(this)) "function" != typeof this[i] && (this[i] = null)
                  }, e.fn.owlCarousel.Constructor.Plugins.Hash = r
              }(window.Zepto || e, window, document),
              function (e, t, n, i) {
                  function r(t, n) {
                      var r = !1,
                          o = t.charAt(0).toUpperCase() + t.slice(1);
                      return e.each((t + " " + a.join(o + " ") + o).split(" "), function (e, t) {
                          if (s[t] !== i) return r = !n || t, !1
                      }), r
                  }
  
                  function o(e) {
                      return r(e, !0)
                  }
                  var s = e("<support>").get(0).style,
                      a = "Webkit Moz O ms".split(" "),
                      l = {
                          transition: {
                              end: {
                                  WebkitTransition: "webkitTransitionEnd",
                                  MozTransition: "transitionend",
                                  OTransition: "oTransitionEnd",
                                  transition: "transitionend"
                              }
                          },
                          animation: {
                              end: {
                                  WebkitAnimation: "webkitAnimationEnd",
                                  MozAnimation: "animationend",
                                  OAnimation: "oAnimationEnd",
                                  animation: "animationend"
                              }
                          }
                      },
                      u = {
                          csstransforms: function () {
                              return !!r("transform")
                          },
                          csstransforms3d: function () {
                              return !!r("perspective")
                          },
                          csstransitions: function () {
                              return !!r("transition")
                          },
                          cssanimations: function () {
                              return !!r("animation")
                          }
                      };
                  u.csstransitions() && (e.support.transition = new String(o("transition")), e.support.transition.end = l.transition.end[e.support.transition]), u.cssanimations() && (e.support.animation = new String(o("animation")), e.support.animation.end = l.animation.end[e.support.animation]), u.csstransforms() && (e.support.transform = new String(o("transform")), e.support.transform3d = u.csstransforms3d())
              }(window.Zepto || e, window, document)
          }).call(t, n(3), n(3))
      }, function (e, t) {
          "use strict";
          Object.defineProperty(t, "__esModule", {
              value: !0
          }), t["default"] = ["initialize", "initialized", "resize", "resized", "refresh", "refreshed", "update", "updated", "drag", "dragged", "translate", "translated", "to", "changed"]
      }, function (e, t) {
          e.exports = {
              render: function () {
                  var e = this,
                      t = e.$createElement,
                      n = e._self._c || t;
                  return n("div", [n("span", {
                      directives: [{
                          name: "show",
                          rawName: "v-show",
                          value: e.showPrev,
                          expression: "showPrev"
                      }],
                      attrs: {
                          id: e.prevHandler
                      }
                  }, [e._t("prev")], 2), e._v(" "), n("div", {
                      "class": ["owl-carousel", "owl-theme"],
                      attrs: {
                          id: e.elementHandle
                      }
                  }, [e._t("default")], 2), e._v(" "), n("span", {
                      directives: [{
                          name: "show",
                          rawName: "v-show",
                          value: e.showNext,
                          expression: "showNext"
                      }],
                      attrs: {
                          id: e.nextHandler
                      }
                  }, [e._t("next")], 2)])
              },
              staticRenderFns: []
          }
      }])
  });
  