! function(e) {
  var t = {};

  function i(n) {
    if (t[n]) return t[n].exports;
    var s = t[n] = {
      i: n,
      l: !1,
      exports: {}
    };
    return e[n].call(s.exports, s, s.exports, i), s.l = !0, s.exports
  }
  i.m = e, i.c = t, i.d = function(e, t, n) {
    i.o(e, t) || Object.defineProperty(e, t, {
      configurable: !1,
      enumerable: !0,
      get: n
    })
  }, i.n = function(e) {
    var t = e && e.__esModule ? function() {
      return e.default
    } : function() {
      return e
    };
    return i.d(t, "a", t), t
  }, i.o = function(e, t) {
    return Object.prototype.hasOwnProperty.call(e, t)
  }, i.p = "", i(i.s = "multi /src/scripts/app.js")
}({
  "5xbe": function(e, t, i) {
    var n, s, o, r;
    r = function(e) {
      var t, i, n = ["wheel", "mousewheel", "DOMMouseScroll", "MozMousePixelScroll"],
        s = "onwheel" in document || document.documentMode >= 9 ? ["wheel"] : ["mousewheel", "DomMouseScroll", "MozMousePixelScroll"],
        o = Array.prototype.slice;
      if (e.event.fixHooks)
        for (var r = n.length; r;) e.event.fixHooks[n[--r]] = e.event.mouseHooks;
      var a = e.event.special.mousewheel = {
        version: "3.1.12",
        setup: function() {
          if (this.addEventListener)
            for (var t = s.length; t;) this.addEventListener(s[--t], l, !1);
          else this.onmousewheel = l;
          e.data(this, "mousewheel-line-height", a.getLineHeight(this)), e.data(this, "mousewheel-page-height", a.getPageHeight(this))
        },
        teardown: function() {
          if (this.removeEventListener)
            for (var t = s.length; t;) this.removeEventListener(s[--t], l, !1);
          else this.onmousewheel = null;
          e.removeData(this, "mousewheel-line-height"), e.removeData(this, "mousewheel-page-height")
        },
        getLineHeight: function(t) {
          var i = e(t),
            n = i["offsetParent" in e.fn ? "offsetParent" : "parent"]();
          return n.length || (n = e("body")), parseInt(n.css("fontSize"), 10) || parseInt(i.css("fontSize"), 10) || 16
        },
        getPageHeight: function(t) {
          return e(t).height()
        },
        settings: {
          adjustOldDeltas: !0,
          normalizeOffset: !0
        }
      };

      function l(n) {
        var s, r = n || window.event,
          l = o.call(arguments, 1),
          u = 0,
          p = 0,
          h = 0,
          f = 0,
          g = 0;
        if ((n = e.event.fix(r)).type = "mousewheel", "detail" in r && (h = -1 * r.detail), "wheelDelta" in r && (h = r.wheelDelta), "wheelDeltaY" in r && (h = r.wheelDeltaY), "wheelDeltaX" in r && (p = -1 * r.wheelDeltaX), "axis" in r && r.axis === r.HORIZONTAL_AXIS && (p = -1 * h, h = 0), u = 0 === h ? p : h, "deltaY" in r && (u = h = -1 * r.deltaY), "deltaX" in r && (p = r.deltaX, 0 === h && (u = -1 * p)), 0 !== h || 0 !== p) {
          if (1 === r.deltaMode) {
            var v = e.data(this, "mousewheel-line-height");
            u *= v, h *= v, p *= v
          } else if (2 === r.deltaMode) {
            var m = e.data(this, "mousewheel-page-height");
            u *= m, h *= m, p *= m
          }
          if (s = Math.max(Math.abs(h), Math.abs(p)), (!i || s < i) && (i = s, d(r, s) && (i /= 40)), d(r, s) && (u /= 40, p /= 40, h /= 40), u = Math[u >= 1 ? "floor" : "ceil"](u / i), p = Math[p >= 1 ? "floor" : "ceil"](p / i), h = Math[h >= 1 ? "floor" : "ceil"](h / i), a.settings.normalizeOffset && this.getBoundingClientRect) {
            var y = this.getBoundingClientRect();
            f = n.clientX - y.left, g = n.clientY - y.top
          }
          return n.deltaX = p, n.deltaY = h, n.deltaFactor = i, n.offsetX = f, n.offsetY = g, n.deltaMode = 0, l.unshift(n, u, p, h), t && clearTimeout(t), t = setTimeout(c, 200), (e.event.dispatch || e.event.handle).apply(this, l)
        }
      }

      function c() {
        i = null
      }

      function d(e, t) {
        return a.settings.adjustOldDeltas && "mousewheel" === e.type && t % 120 == 0
      }
      e.fn.extend({
        mousewheel: function(e) {
          return e ? this.bind("mousewheel", e) : this.trigger("mousewheel")
        },
        unmousewheel: function(e) {
          return this.unbind("mousewheel", e)
        }
      })
    }, s = [i("7t+N")], void 0 === (o = "function" == typeof(n = r) ? n.apply(t, s) : n) || (e.exports = o)
  },
  "7t+N": function(e, t, i) {
    var n;
    ! function(t, i) {
      "use strict";
      "object" == typeof e && "object" == typeof e.exports ? e.exports = t.document ? i(t, !0) : function(e) {
        if (!e.document) throw new Error("jQuery requires a window with a document");
        return i(e)
      } : i(t)
    }("undefined" != typeof window ? window : this, function(i, s) {
      "use strict";
      var o = [],
        r = i.document,
        a = Object.getPrototypeOf,
        l = o.slice,
        c = o.concat,
        d = o.push,
        u = o.indexOf,
        p = {},
        h = p.toString,
        f = p.hasOwnProperty,
        g = f.toString,
        v = g.call(Object),
        m = {},
        y = function(e) {
          return "function" == typeof e && "number" != typeof e.nodeType
        },
        w = function(e) {
          return null != e && e === e.window
        },
        x = {
          type: !0,
          src: !0,
          nonce: !0,
          noModule: !0
        };

      function b(e, t, i) {
        var n, s, o = (i = i || r).createElement("script");
        if (o.text = e, t)
          for (n in x)(s = t[n] || t.getAttribute && t.getAttribute(n)) && o.setAttribute(n, s);
        i.head.appendChild(o).parentNode.removeChild(o)
      }

      function T(e) {
        return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? p[h.call(e)] || "object" : typeof e
      }
      var C = function(e, t) {
          return new C.fn.init(e, t)
        },
        _ = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;

      function k(e) {
        var t = !!e && "length" in e && e.length,
          i = T(e);
        return !y(e) && !w(e) && ("array" === i || 0 === t || "number" == typeof t && t > 0 && t - 1 in e)
      }
      C.fn = C.prototype = {
        jquery: "3.4.1",
        constructor: C,
        length: 0,
        toArray: function() {
          return l.call(this)
        },
        get: function(e) {
          return null == e ? l.call(this) : e < 0 ? this[e + this.length] : this[e]
        },
        pushStack: function(e) {
          var t = C.merge(this.constructor(), e);
          return t.prevObject = this, t
        },
        each: function(e) {
          return C.each(this, e)
        },
        map: function(e) {
          return this.pushStack(C.map(this, function(t, i) {
            return e.call(t, i, t)
          }))
        },
        slice: function() {
          return this.pushStack(l.apply(this, arguments))
        },
        first: function() {
          return this.eq(0)
        },
        last: function() {
          return this.eq(-1)
        },
        eq: function(e) {
          var t = this.length,
            i = +e + (e < 0 ? t : 0);
          return this.pushStack(i >= 0 && i < t ? [this[i]] : [])
        },
        end: function() {
          return this.prevObject || this.constructor()
        },
        push: d,
        sort: o.sort,
        splice: o.splice
      }, C.extend = C.fn.extend = function() {
        var e, t, i, n, s, o, r = arguments[0] || {},
          a = 1,
          l = arguments.length,
          c = !1;
        for ("boolean" == typeof r && (c = r, r = arguments[a] || {}, a++), "object" == typeof r || y(r) || (r = {}), a === l && (r = this, a--); a < l; a++)
          if (null != (e = arguments[a]))
            for (t in e) n = e[t], "__proto__" !== t && r !== n && (c && n && (C.isPlainObject(n) || (s = Array.isArray(n))) ? (i = r[t], o = s && !Array.isArray(i) ? [] : s || C.isPlainObject(i) ? i : {}, s = !1, r[t] = C.extend(c, o, n)) : void 0 !== n && (r[t] = n));
        return r
      }, C.extend({
        expando: "jQuery" + ("3.4.1" + Math.random()).replace(/\D/g, ""),
        isReady: !0,
        error: function(e) {
          throw new Error(e)
        },
        noop: function() {},
        isPlainObject: function(e) {
          var t, i;
          return !(!e || "[object Object]" !== h.call(e)) && (!(t = a(e)) || "function" == typeof(i = f.call(t, "constructor") && t.constructor) && g.call(i) === v)
        },
        isEmptyObject: function(e) {
          var t;
          for (t in e) return !1;
          return !0
        },
        globalEval: function(e, t) {
          b(e, {
            nonce: t && t.nonce
          })
        },
        each: function(e, t) {
          var i, n = 0;
          if (k(e))
            for (i = e.length; n < i && !1 !== t.call(e[n], n, e[n]); n++);
          else
            for (n in e)
              if (!1 === t.call(e[n], n, e[n])) break;
          return e
        },
        trim: function(e) {
          return null == e ? "" : (e + "").replace(_, "")
        },
        makeArray: function(e, t) {
          var i = t || [];
          return null != e && (k(Object(e)) ? C.merge(i, "string" == typeof e ? [e] : e) : d.call(i, e)), i
        },
        inArray: function(e, t, i) {
          return null == t ? -1 : u.call(t, e, i)
        },
        merge: function(e, t) {
          for (var i = +t.length, n = 0, s = e.length; n < i; n++) e[s++] = t[n];
          return e.length = s, e
        },
        grep: function(e, t, i) {
          for (var n = [], s = 0, o = e.length, r = !i; s < o; s++) !t(e[s], s) !== r && n.push(e[s]);
          return n
        },
        map: function(e, t, i) {
          var n, s, o = 0,
            r = [];
          if (k(e))
            for (n = e.length; o < n; o++) null != (s = t(e[o], o, i)) && r.push(s);
          else
            for (o in e) null != (s = t(e[o], o, i)) && r.push(s);
          return c.apply([], r)
        },
        guid: 1,
        support: m
      }), "function" == typeof Symbol && (C.fn[Symbol.iterator] = o[Symbol.iterator]), C.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(e, t) {
        p["[object " + t + "]"] = t.toLowerCase()
      });
      var S = function(e) {
        var t, i, n, s, o, r, a, l, c, d, u, p, h, f, g, v, m, y, w, x = "sizzle" + 1 * new Date,
          b = e.document,
          T = 0,
          C = 0,
          _ = le(),
          k = le(),
          S = le(),
          $ = le(),
          A = function(e, t) {
            return e === t && (u = !0), 0
          },
          E = {}.hasOwnProperty,
          D = [],
          H = D.pop,
          z = D.push,
          j = D.push,
          L = D.slice,
          P = function(e, t) {
            for (var i = 0, n = e.length; i < n; i++)
              if (e[i] === t) return i;
            return -1
          },
          O = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
          M = "[\\x20\\t\\r\\n\\f]",
          N = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
          q = "\\[" + M + "*(" + N + ")(?:" + M + "*([*^$|!~]?=)" + M + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + N + "))|)" + M + "*\\]",
          I = ":(" + N + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + q + ")*)|.*)\\)|)",
          R = new RegExp(M + "+", "g"),
          W = new RegExp("^" + M + "+|((?:^|[^\\\\])(?:\\\\.)*)" + M + "+$", "g"),
          B = new RegExp("^" + M + "*," + M + "*"),
          F = new RegExp("^" + M + "*([>+~]|" + M + ")" + M + "*"),
          U = new RegExp(M + "|>"),
          X = new RegExp(I),
          Y = new RegExp("^" + N + "$"),
          V = {
            ID: new RegExp("^#(" + N + ")"),
            CLASS: new RegExp("^\\.(" + N + ")"),
            TAG: new RegExp("^(" + N + "|[*])"),
            ATTR: new RegExp("^" + q),
            PSEUDO: new RegExp("^" + I),
            CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + M + "*(even|odd|(([+-]|)(\\d*)n|)" + M + "*(?:([+-]|)" + M + "*(\\d+)|))" + M + "*\\)|)", "i"),
            bool: new RegExp("^(?:" + O + ")$", "i"),
            needsContext: new RegExp("^" + M + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + M + "*((?:-\\d)?\\d*)" + M + "*\\)|)(?=[^-]|$)", "i")
          },
          G = /HTML$/i,
          Q = /^(?:input|select|textarea|button)$/i,
          Z = /^h\d$/i,
          J = /^[^{]+\{\s*\[native \w/,
          K = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
          ee = /[+~]/,
          te = new RegExp("\\\\([\\da-f]{1,6}" + M + "?|(" + M + ")|.)", "ig"),
          ie = function(e, t, i) {
            var n = "0x" + t - 65536;
            return n != n || i ? t : n < 0 ? String.fromCharCode(n + 65536) : String.fromCharCode(n >> 10 | 55296, 1023 & n | 56320)
          },
          ne = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
          se = function(e, t) {
            return t ? "\0" === e ? "" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e
          },
          oe = function() {
            p()
          },
          re = xe(function(e) {
            return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase()
          }, {
            dir: "parentNode",
            next: "legend"
          });
        try {
          j.apply(D = L.call(b.childNodes), b.childNodes), D[b.childNodes.length].nodeType
        } catch (e) {
          j = {
            apply: D.length ? function(e, t) {
              z.apply(e, L.call(t))
            } : function(e, t) {
              for (var i = e.length, n = 0; e[i++] = t[n++];);
              e.length = i - 1
            }
          }
        }

        function ae(e, t, n, s) {
          var o, a, c, d, u, f, m, y = t && t.ownerDocument,
            T = t ? t.nodeType : 9;
          if (n = n || [], "string" != typeof e || !e || 1 !== T && 9 !== T && 11 !== T) return n;
          if (!s && ((t ? t.ownerDocument || t : b) !== h && p(t), t = t || h, g)) {
            if (11 !== T && (u = K.exec(e)))
              if (o = u[1]) {
                if (9 === T) {
                  if (!(c = t.getElementById(o))) return n;
                  if (c.id === o) return n.push(c), n
                } else if (y && (c = y.getElementById(o)) && w(t, c) && c.id === o) return n.push(c), n
              } else {
                if (u[2]) return j.apply(n, t.getElementsByTagName(e)), n;
                if ((o = u[3]) && i.getElementsByClassName && t.getElementsByClassName) return j.apply(n, t.getElementsByClassName(o)), n
              } if (i.qsa && !$[e + " "] && (!v || !v.test(e)) && (1 !== T || "object" !== t.nodeName.toLowerCase())) {
              if (m = e, y = t, 1 === T && U.test(e)) {
                for ((d = t.getAttribute("id")) ? d = d.replace(ne, se) : t.setAttribute("id", d = x), a = (f = r(e)).length; a--;) f[a] = "#" + d + " " + we(f[a]);
                m = f.join(","), y = ee.test(e) && me(t.parentNode) || t
              }
              try {
                return j.apply(n, y.querySelectorAll(m)), n
              } catch (t) {
                $(e, !0)
              } finally {
                d === x && t.removeAttribute("id")
              }
            }
          }
          return l(e.replace(W, "$1"), t, n, s)
        }

        function le() {
          var e = [];
          return function t(i, s) {
            return e.push(i + " ") > n.cacheLength && delete t[e.shift()], t[i + " "] = s
          }
        }

        function ce(e) {
          return e[x] = !0, e
        }

        function de(e) {
          var t = h.createElement("fieldset");
          try {
            return !!e(t)
          } catch (e) {
            return !1
          } finally {
            t.parentNode && t.parentNode.removeChild(t), t = null
          }
        }

        function ue(e, t) {
          for (var i = e.split("|"), s = i.length; s--;) n.attrHandle[i[s]] = t
        }

        function pe(e, t) {
          var i = t && e,
            n = i && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;
          if (n) return n;
          if (i)
            for (; i = i.nextSibling;)
              if (i === t) return -1;
          return e ? 1 : -1
        }

        function he(e) {
          return function(t) {
            return "input" === t.nodeName.toLowerCase() && t.type === e
          }
        }

        function fe(e) {
          return function(t) {
            var i = t.nodeName.toLowerCase();
            return ("input" === i || "button" === i) && t.type === e
          }
        }

        function ge(e) {
          return function(t) {
            return "form" in t ? t.parentNode && !1 === t.disabled ? "label" in t ? "label" in t.parentNode ? t.parentNode.disabled === e : t.disabled === e : t.isDisabled === e || t.isDisabled !== !e && re(t) === e : t.disabled === e : "label" in t && t.disabled === e
          }
        }

        function ve(e) {
          return ce(function(t) {
            return t = +t, ce(function(i, n) {
              for (var s, o = e([], i.length, t), r = o.length; r--;) i[s = o[r]] && (i[s] = !(n[s] = i[s]))
            })
          })
        }

        function me(e) {
          return e && void 0 !== e.getElementsByTagName && e
        }
        for (t in i = ae.support = {}, o = ae.isXML = function(e) {
            var t = e.namespaceURI,
              i = (e.ownerDocument || e).documentElement;
            return !G.test(t || i && i.nodeName || "HTML")
          }, p = ae.setDocument = function(e) {
            var t, s, r = e ? e.ownerDocument || e : b;
            return r !== h && 9 === r.nodeType && r.documentElement ? (f = (h = r).documentElement, g = !o(h), b !== h && (s = h.defaultView) && s.top !== s && (s.addEventListener ? s.addEventListener("unload", oe, !1) : s.attachEvent && s.attachEvent("onunload", oe)), i.attributes = de(function(e) {
              return e.className = "i", !e.getAttribute("className")
            }), i.getElementsByTagName = de(function(e) {
              return e.appendChild(h.createComment("")), !e.getElementsByTagName("*").length
            }), i.getElementsByClassName = J.test(h.getElementsByClassName), i.getById = de(function(e) {
              return f.appendChild(e).id = x, !h.getElementsByName || !h.getElementsByName(x).length
            }), i.getById ? (n.filter.ID = function(e) {
              var t = e.replace(te, ie);
              return function(e) {
                return e.getAttribute("id") === t
              }
            }, n.find.ID = function(e, t) {
              if (void 0 !== t.getElementById && g) {
                var i = t.getElementById(e);
                return i ? [i] : []
              }
            }) : (n.filter.ID = function(e) {
              var t = e.replace(te, ie);
              return function(e) {
                var i = void 0 !== e.getAttributeNode && e.getAttributeNode("id");
                return i && i.value === t
              }
            }, n.find.ID = function(e, t) {
              if (void 0 !== t.getElementById && g) {
                var i, n, s, o = t.getElementById(e);
                if (o) {
                  if ((i = o.getAttributeNode("id")) && i.value === e) return [o];
                  for (s = t.getElementsByName(e), n = 0; o = s[n++];)
                    if ((i = o.getAttributeNode("id")) && i.value === e) return [o]
                }
                return []
              }
            }), n.find.TAG = i.getElementsByTagName ? function(e, t) {
              return void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e) : i.qsa ? t.querySelectorAll(e) : void 0
            } : function(e, t) {
              var i, n = [],
                s = 0,
                o = t.getElementsByTagName(e);
              if ("*" === e) {
                for (; i = o[s++];) 1 === i.nodeType && n.push(i);
                return n
              }
              return o
            }, n.find.CLASS = i.getElementsByClassName && function(e, t) {
              if (void 0 !== t.getElementsByClassName && g) return t.getElementsByClassName(e)
            }, m = [], v = [], (i.qsa = J.test(h.querySelectorAll)) && (de(function(e) {
              f.appendChild(e).innerHTML = "<a id='" + x + "'></a><select id='" + x + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && v.push("[*^$]=" + M + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || v.push("\\[" + M + "*(?:value|" + O + ")"), e.querySelectorAll("[id~=" + x + "-]").length || v.push("~="), e.querySelectorAll(":checked").length || v.push(":checked"), e.querySelectorAll("a#" + x + "+*").length || v.push(".#.+[+~]")
            }), de(function(e) {
              e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
              var t = h.createElement("input");
              t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && v.push("name" + M + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && v.push(":enabled", ":disabled"), f.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && v.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), v.push(",.*:")
            })), (i.matchesSelector = J.test(y = f.matches || f.webkitMatchesSelector || f.mozMatchesSelector || f.oMatchesSelector || f.msMatchesSelector)) && de(function(e) {
              i.disconnectedMatch = y.call(e, "*"), y.call(e, "[s!='']:x"), m.push("!=", I)
            }), v = v.length && new RegExp(v.join("|")), m = m.length && new RegExp(m.join("|")), t = J.test(f.compareDocumentPosition), w = t || J.test(f.contains) ? function(e, t) {
              var i = 9 === e.nodeType ? e.documentElement : e,
                n = t && t.parentNode;
              return e === n || !(!n || 1 !== n.nodeType || !(i.contains ? i.contains(n) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(n)))
            } : function(e, t) {
              if (t)
                for (; t = t.parentNode;)
                  if (t === e) return !0;
              return !1
            }, A = t ? function(e, t) {
              if (e === t) return u = !0, 0;
              var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
              return n || (1 & (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !i.sortDetached && t.compareDocumentPosition(e) === n ? e === h || e.ownerDocument === b && w(b, e) ? -1 : t === h || t.ownerDocument === b && w(b, t) ? 1 : d ? P(d, e) - P(d, t) : 0 : 4 & n ? -1 : 1)
            } : function(e, t) {
              if (e === t) return u = !0, 0;
              var i, n = 0,
                s = e.parentNode,
                o = t.parentNode,
                r = [e],
                a = [t];
              if (!s || !o) return e === h ? -1 : t === h ? 1 : s ? -1 : o ? 1 : d ? P(d, e) - P(d, t) : 0;
              if (s === o) return pe(e, t);
              for (i = e; i = i.parentNode;) r.unshift(i);
              for (i = t; i = i.parentNode;) a.unshift(i);
              for (; r[n] === a[n];) n++;
              return n ? pe(r[n], a[n]) : r[n] === b ? -1 : a[n] === b ? 1 : 0
            }, h) : h
          }, ae.matches = function(e, t) {
            return ae(e, null, null, t)
          }, ae.matchesSelector = function(e, t) {
            if ((e.ownerDocument || e) !== h && p(e), i.matchesSelector && g && !$[t + " "] && (!m || !m.test(t)) && (!v || !v.test(t))) try {
              var n = y.call(e, t);
              if (n || i.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n
            } catch (e) {
              $(t, !0)
            }
            return ae(t, h, null, [e]).length > 0
          }, ae.contains = function(e, t) {
            return (e.ownerDocument || e) !== h && p(e), w(e, t)
          }, ae.attr = function(e, t) {
            (e.ownerDocument || e) !== h && p(e);
            var s = n.attrHandle[t.toLowerCase()],
              o = s && E.call(n.attrHandle, t.toLowerCase()) ? s(e, t, !g) : void 0;
            return void 0 !== o ? o : i.attributes || !g ? e.getAttribute(t) : (o = e.getAttributeNode(t)) && o.specified ? o.value : null
          }, ae.escape = function(e) {
            return (e + "").replace(ne, se)
          }, ae.error = function(e) {
            throw new Error("Syntax error, unrecognized expression: " + e)
          }, ae.uniqueSort = function(e) {
            var t, n = [],
              s = 0,
              o = 0;
            if (u = !i.detectDuplicates, d = !i.sortStable && e.slice(0), e.sort(A), u) {
              for (; t = e[o++];) t === e[o] && (s = n.push(o));
              for (; s--;) e.splice(n[s], 1)
            }
            return d = null, e
          }, s = ae.getText = function(e) {
            var t, i = "",
              n = 0,
              o = e.nodeType;
            if (o) {
              if (1 === o || 9 === o || 11 === o) {
                if ("string" == typeof e.textContent) return e.textContent;
                for (e = e.firstChild; e; e = e.nextSibling) i += s(e)
              } else if (3 === o || 4 === o) return e.nodeValue
            } else
              for (; t = e[n++];) i += s(t);
            return i
          }, (n = ae.selectors = {
            cacheLength: 50,
            createPseudo: ce,
            match: V,
            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(te, ie), e[3] = (e[3] || e[4] || e[5] || "").replace(te, ie), "~=" === 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] || ae.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] && ae.error(e[0]), e
              },
              PSEUDO: function(e) {
                var t, i = !e[6] && e[2];
                return V.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : i && X.test(i) && (t = r(i, !0)) && (t = i.indexOf(")", i.length - t) - i.length) && (e[0] = e[0].slice(0, t), e[2] = i.slice(0, t)), e.slice(0, 3))
              }
            },
            filter: {
              TAG: function(e) {
                var t = e.replace(te, ie).toLowerCase();
                return "*" === e ? function() {
                  return !0
                } : function(e) {
                  return e.nodeName && e.nodeName.toLowerCase() === t
                }
              },
              CLASS: function(e) {
                var t = _[e + " "];
                return t || (t = new RegExp("(^|" + M + ")" + e + "(" + M + "|$)")) && _(e, function(e) {
                  return t.test("string" == typeof e.className && e.className || void 0 !== e.getAttribute && e.getAttribute("class") || "")
                })
              },
              ATTR: function(e, t, i) {
                return function(n) {
                  var s = ae.attr(n, e);
                  return null == s ? "!=" === t : !t || (s += "", "=" === t ? s === i : "!=" === t ? s !== i : "^=" === t ? i && 0 === s.indexOf(i) : "*=" === t ? i && s.indexOf(i) > -1 : "$=" === t ? i && s.slice(-i.length) === i : "~=" === t ? (" " + s.replace(R, " ") + " ").indexOf(i) > -1 : "|=" === t && (s === i || s.slice(0, i.length + 1) === i + "-"))
                }
              },
              CHILD: function(e, t, i, n, s) {
                var o = "nth" !== e.slice(0, 3),
                  r = "last" !== e.slice(-4),
                  a = "of-type" === t;
                return 1 === n && 0 === s ? function(e) {
                  return !!e.parentNode
                } : function(t, i, l) {
                  var c, d, u, p, h, f, g = o !== r ? "nextSibling" : "previousSibling",
                    v = t.parentNode,
                    m = a && t.nodeName.toLowerCase(),
                    y = !l && !a,
                    w = !1;
                  if (v) {
                    if (o) {
                      for (; g;) {
                        for (p = t; p = p[g];)
                          if (a ? p.nodeName.toLowerCase() === m : 1 === p.nodeType) return !1;
                        f = g = "only" === e && !f && "nextSibling"
                      }
                      return !0
                    }
                    if (f = [r ? v.firstChild : v.lastChild], r && y) {
                      for (w = (h = (c = (d = (u = (p = v)[x] || (p[x] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[e] || [])[0] === T && c[1]) && c[2], p = h && v.childNodes[h]; p = ++h && p && p[g] || (w = h = 0) || f.pop();)
                        if (1 === p.nodeType && ++w && p === t) {
                          d[e] = [T, h, w];
                          break
                        }
                    } else if (y && (w = h = (c = (d = (u = (p = t)[x] || (p[x] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[e] || [])[0] === T && c[1]), !1 === w)
                      for (;
                        (p = ++h && p && p[g] || (w = h = 0) || f.pop()) && ((a ? p.nodeName.toLowerCase() !== m : 1 !== p.nodeType) || !++w || (y && ((d = (u = p[x] || (p[x] = {}))[p.uniqueID] || (u[p.uniqueID] = {}))[e] = [T, w]), p !== t)););
                    return (w -= s) === n || w % n == 0 && w / n >= 0
                  }
                }
              },
              PSEUDO: function(e, t) {
                var i, s = n.pseudos[e] || n.setFilters[e.toLowerCase()] || ae.error("unsupported pseudo: " + e);
                return s[x] ? s(t) : s.length > 1 ? (i = [e, e, "", t], n.setFilters.hasOwnProperty(e.toLowerCase()) ? ce(function(e, i) {
                  for (var n, o = s(e, t), r = o.length; r--;) e[n = P(e, o[r])] = !(i[n] = o[r])
                }) : function(e) {
                  return s(e, 0, i)
                }) : s
              }
            },
            pseudos: {
              not: ce(function(e) {
                var t = [],
                  i = [],
                  n = a(e.replace(W, "$1"));
                return n[x] ? ce(function(e, t, i, s) {
                  for (var o, r = n(e, null, s, []), a = e.length; a--;)(o = r[a]) && (e[a] = !(t[a] = o))
                }) : function(e, s, o) {
                  return t[0] = e, n(t, null, o, i), t[0] = null, !i.pop()
                }
              }),
              has: ce(function(e) {
                return function(t) {
                  return ae(e, t).length > 0
                }
              }),
              contains: ce(function(e) {
                return e = e.replace(te, ie),
                  function(t) {
                    return (t.textContent || s(t)).indexOf(e) > -1
                  }
              }),
              lang: ce(function(e) {
                return Y.test(e || "") || ae.error("unsupported lang: " + e), e = e.replace(te, ie).toLowerCase(),
                  function(t) {
                    var i;
                    do {
                      if (i = g ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang")) return (i = i.toLowerCase()) === e || 0 === i.indexOf(e + "-")
                    } while ((t = t.parentNode) && 1 === t.nodeType);
                    return !1
                  }
              }),
              target: function(t) {
                var i = e.location && e.location.hash;
                return i && i.slice(1) === t.id
              },
              root: function(e) {
                return e === f
              },
              focus: function(e) {
                return e === h.activeElement && (!h.hasFocus || h.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
              },
              enabled: ge(!1),
              disabled: ge(!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, !0 === e.selected
              },
              empty: function(e) {
                for (e = e.firstChild; e; e = e.nextSibling)
                  if (e.nodeType < 6) return !1;
                return !0
              },
              parent: function(e) {
                return !n.pseudos.empty(e)
              },
              header: function(e) {
                return Z.test(e.nodeName)
              },
              input: function(e) {
                return Q.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: ve(function() {
                return [0]
              }),
              last: ve(function(e, t) {
                return [t - 1]
              }),
              eq: ve(function(e, t, i) {
                return [i < 0 ? i + t : i]
              }),
              even: ve(function(e, t) {
                for (var i = 0; i < t; i += 2) e.push(i);
                return e
              }),
              odd: ve(function(e, t) {
                for (var i = 1; i < t; i += 2) e.push(i);
                return e
              }),
              lt: ve(function(e, t, i) {
                for (var n = i < 0 ? i + t : i > t ? t : i; --n >= 0;) e.push(n);
                return e
              }),
              gt: ve(function(e, t, i) {
                for (var n = i < 0 ? i + t : i; ++n < t;) e.push(n);
                return e
              })
            }
          }).pseudos.nth = n.pseudos.eq, {
            radio: !0,
            checkbox: !0,
            file: !0,
            password: !0,
            image: !0
          }) n.pseudos[t] = he(t);
        for (t in {
            submit: !0,
            reset: !0
          }) n.pseudos[t] = fe(t);

        function ye() {}

        function we(e) {
          for (var t = 0, i = e.length, n = ""; t < i; t++) n += e[t].value;
          return n
        }

        function xe(e, t, i) {
          var n = t.dir,
            s = t.next,
            o = s || n,
            r = i && "parentNode" === o,
            a = C++;
          return t.first ? function(t, i, s) {
            for (; t = t[n];)
              if (1 === t.nodeType || r) return e(t, i, s);
            return !1
          } : function(t, i, l) {
            var c, d, u, p = [T, a];
            if (l) {
              for (; t = t[n];)
                if ((1 === t.nodeType || r) && e(t, i, l)) return !0
            } else
              for (; t = t[n];)
                if (1 === t.nodeType || r)
                  if (d = (u = t[x] || (t[x] = {}))[t.uniqueID] || (u[t.uniqueID] = {}), s && s === t.nodeName.toLowerCase()) t = t[n] || t;
                  else {
                    if ((c = d[o]) && c[0] === T && c[1] === a) return p[2] = c[2];
                    if (d[o] = p, p[2] = e(t, i, l)) return !0
                  } return !1
          }
        }

        function be(e) {
          return e.length > 1 ? function(t, i, n) {
            for (var s = e.length; s--;)
              if (!e[s](t, i, n)) return !1;
            return !0
          } : e[0]
        }

        function Te(e, t, i, n, s) {
          for (var o, r = [], a = 0, l = e.length, c = null != t; a < l; a++)(o = e[a]) && (i && !i(o, n, s) || (r.push(o), c && t.push(a)));
          return r
        }

        function Ce(e, t, i, n, s, o) {
          return n && !n[x] && (n = Ce(n)), s && !s[x] && (s = Ce(s, o)), ce(function(o, r, a, l) {
            var c, d, u, p = [],
              h = [],
              f = r.length,
              g = o || function(e, t, i) {
                for (var n = 0, s = t.length; n < s; n++) ae(e, t[n], i);
                return i
              }(t || "*", a.nodeType ? [a] : a, []),
              v = !e || !o && t ? g : Te(g, p, e, a, l),
              m = i ? s || (o ? e : f || n) ? [] : r : v;
            if (i && i(v, m, a, l), n)
              for (c = Te(m, h), n(c, [], a, l), d = c.length; d--;)(u = c[d]) && (m[h[d]] = !(v[h[d]] = u));
            if (o) {
              if (s || e) {
                if (s) {
                  for (c = [], d = m.length; d--;)(u = m[d]) && c.push(v[d] = u);
                  s(null, m = [], c, l)
                }
                for (d = m.length; d--;)(u = m[d]) && (c = s ? P(o, u) : p[d]) > -1 && (o[c] = !(r[c] = u))
              }
            } else m = Te(m === r ? m.splice(f, m.length) : m), s ? s(null, r, m, l) : j.apply(r, m)
          })
        }

        function _e(e) {
          for (var t, i, s, o = e.length, r = n.relative[e[0].type], a = r || n.relative[" "], l = r ? 1 : 0, d = xe(function(e) {
              return e === t
            }, a, !0), u = xe(function(e) {
              return P(t, e) > -1
            }, a, !0), p = [function(e, i, n) {
              var s = !r && (n || i !== c) || ((t = i).nodeType ? d(e, i, n) : u(e, i, n));
              return t = null, s
            }]; l < o; l++)
            if (i = n.relative[e[l].type]) p = [xe(be(p), i)];
            else {
              if ((i = n.filter[e[l].type].apply(null, e[l].matches))[x]) {
                for (s = ++l; s < o && !n.relative[e[s].type]; s++);
                return Ce(l > 1 && be(p), l > 1 && we(e.slice(0, l - 1).concat({
                  value: " " === e[l - 2].type ? "*" : ""
                })).replace(W, "$1"), i, l < s && _e(e.slice(l, s)), s < o && _e(e = e.slice(s)), s < o && we(e))
              }
              p.push(i)
            } return be(p)
        }
        return ye.prototype = n.filters = n.pseudos, n.setFilters = new ye, r = ae.tokenize = function(e, t) {
          var i, s, o, r, a, l, c, d = k[e + " "];
          if (d) return t ? 0 : d.slice(0);
          for (a = e, l = [], c = n.preFilter; a;) {
            for (r in i && !(s = B.exec(a)) || (s && (a = a.slice(s[0].length) || a), l.push(o = [])), i = !1, (s = F.exec(a)) && (i = s.shift(), o.push({
                value: i,
                type: s[0].replace(W, " ")
              }), a = a.slice(i.length)), n.filter) !(s = V[r].exec(a)) || c[r] && !(s = c[r](s)) || (i = s.shift(), o.push({
              value: i,
              type: r,
              matches: s
            }), a = a.slice(i.length));
            if (!i) break
          }
          return t ? a.length : a ? ae.error(e) : k(e, l).slice(0)
        }, a = ae.compile = function(e, t) {
          var i, s = [],
            o = [],
            a = S[e + " "];
          if (!a) {
            for (t || (t = r(e)), i = t.length; i--;)(a = _e(t[i]))[x] ? s.push(a) : o.push(a);
            (a = S(e, function(e, t) {
              var i = t.length > 0,
                s = e.length > 0,
                o = function(o, r, a, l, d) {
                  var u, f, v, m = 0,
                    y = "0",
                    w = o && [],
                    x = [],
                    b = c,
                    C = o || s && n.find.TAG("*", d),
                    _ = T += null == b ? 1 : Math.random() || .1,
                    k = C.length;
                  for (d && (c = r === h || r || d); y !== k && null != (u = C[y]); y++) {
                    if (s && u) {
                      for (f = 0, r || u.ownerDocument === h || (p(u), a = !g); v = e[f++];)
                        if (v(u, r || h, a)) {
                          l.push(u);
                          break
                        } d && (T = _)
                    }
                    i && ((u = !v && u) && m--, o && w.push(u))
                  }
                  if (m += y, i && y !== m) {
                    for (f = 0; v = t[f++];) v(w, x, r, a);
                    if (o) {
                      if (m > 0)
                        for (; y--;) w[y] || x[y] || (x[y] = H.call(l));
                      x = Te(x)
                    }
                    j.apply(l, x), d && !o && x.length > 0 && m + t.length > 1 && ae.uniqueSort(l)
                  }
                  return d && (T = _, c = b), w
                };
              return i ? ce(o) : o
            }(o, s))).selector = e
          }
          return a
        }, l = ae.select = function(e, t, i, s) {
          var o, l, c, d, u, p = "function" == typeof e && e,
            h = !s && r(e = p.selector || e);
          if (i = i || [], 1 === h.length) {
            if ((l = h[0] = h[0].slice(0)).length > 2 && "ID" === (c = l[0]).type && 9 === t.nodeType && g && n.relative[l[1].type]) {
              if (!(t = (n.find.ID(c.matches[0].replace(te, ie), t) || [])[0])) return i;
              p && (t = t.parentNode), e = e.slice(l.shift().value.length)
            }
            for (o = V.needsContext.test(e) ? 0 : l.length; o-- && (c = l[o], !n.relative[d = c.type]);)
              if ((u = n.find[d]) && (s = u(c.matches[0].replace(te, ie), ee.test(l[0].type) && me(t.parentNode) || t))) {
                if (l.splice(o, 1), !(e = s.length && we(l))) return j.apply(i, s), i;
                break
              }
          }
          return (p || a(e, h))(s, t, !g, i, !t || ee.test(e) && me(t.parentNode) || t), i
        }, i.sortStable = x.split("").sort(A).join("") === x, i.detectDuplicates = !!u, p(), i.sortDetached = de(function(e) {
          return 1 & e.compareDocumentPosition(h.createElement("fieldset"))
        }), de(function(e) {
          return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
        }) || ue("type|href|height|width", function(e, t, i) {
          if (!i) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
        }), i.attributes && de(function(e) {
          return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
        }) || ue("value", function(e, t, i) {
          if (!i && "input" === e.nodeName.toLowerCase()) return e.defaultValue
        }), de(function(e) {
          return null == e.getAttribute("disabled")
        }) || ue(O, function(e, t, i) {
          var n;
          if (!i) return !0 === e[t] ? t.toLowerCase() : (n = e.getAttributeNode(t)) && n.specified ? n.value : null
        }), ae
      }(i);
      C.find = S, C.expr = S.selectors, C.expr[":"] = C.expr.pseudos, C.uniqueSort = C.unique = S.uniqueSort, C.text = S.getText, C.isXMLDoc = S.isXML, C.contains = S.contains, C.escapeSelector = S.escape;
      var $ = function(e, t, i) {
          for (var n = [], s = void 0 !== i;
            (e = e[t]) && 9 !== e.nodeType;)
            if (1 === e.nodeType) {
              if (s && C(e).is(i)) break;
              n.push(e)
            } return n
        },
        A = function(e, t) {
          for (var i = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && i.push(e);
          return i
        },
        E = C.expr.match.needsContext;

      function D(e, t) {
        return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
      }
      var H = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;

      function z(e, t, i) {
        return y(t) ? C.grep(e, function(e, n) {
          return !!t.call(e, n, e) !== i
        }) : t.nodeType ? C.grep(e, function(e) {
          return e === t !== i
        }) : "string" != typeof t ? C.grep(e, function(e) {
          return u.call(t, e) > -1 !== i
        }) : C.filter(t, e, i)
      }
      C.filter = function(e, t, i) {
        var n = t[0];
        return i && (e = ":not(" + e + ")"), 1 === t.length && 1 === n.nodeType ? C.find.matchesSelector(n, e) ? [n] : [] : C.find.matches(e, C.grep(t, function(e) {
          return 1 === e.nodeType
        }))
      }, C.fn.extend({
        find: function(e) {
          var t, i, n = this.length,
            s = this;
          if ("string" != typeof e) return this.pushStack(C(e).filter(function() {
            for (t = 0; t < n; t++)
              if (C.contains(s[t], this)) return !0
          }));
          for (i = this.pushStack([]), t = 0; t < n; t++) C.find(e, s[t], i);
          return n > 1 ? C.uniqueSort(i) : i
        },
        filter: function(e) {
          return this.pushStack(z(this, e || [], !1))
        },
        not: function(e) {
          return this.pushStack(z(this, e || [], !0))
        },
        is: function(e) {
          return !!z(this, "string" == typeof e && E.test(e) ? C(e) : e || [], !1).length
        }
      });
      var j, L = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;
      (C.fn.init = function(e, t, i) {
        var n, s;
        if (!e) return this;
        if (i = i || j, "string" == typeof e) {
          if (!(n = "<" === e[0] && ">" === e[e.length - 1] && e.length >= 3 ? [null, e, null] : L.exec(e)) || !n[1] && t) return !t || t.jquery ? (t || i).find(e) : this.constructor(t).find(e);
          if (n[1]) {
            if (t = t instanceof C ? t[0] : t, C.merge(this, C.parseHTML(n[1], t && t.nodeType ? t.ownerDocument || t : r, !0)), H.test(n[1]) && C.isPlainObject(t))
              for (n in t) y(this[n]) ? this[n](t[n]) : this.attr(n, t[n]);
            return this
          }
          return (s = r.getElementById(n[2])) && (this[0] = s, this.length = 1), this
        }
        return e.nodeType ? (this[0] = e, this.length = 1, this) : y(e) ? void 0 !== i.ready ? i.ready(e) : e(C) : C.makeArray(e, this)
      }).prototype = C.fn, j = C(r);
      var P = /^(?:parents|prev(?:Until|All))/,
        O = {
          children: !0,
          contents: !0,
          next: !0,
          prev: !0
        };

      function M(e, t) {
        for (;
          (e = e[t]) && 1 !== e.nodeType;);
        return e
      }
      C.fn.extend({
        has: function(e) {
          var t = C(e, this),
            i = t.length;
          return this.filter(function() {
            for (var e = 0; e < i; e++)
              if (C.contains(this, t[e])) return !0
          })
        },
        closest: function(e, t) {
          var i, n = 0,
            s = this.length,
            o = [],
            r = "string" != typeof e && C(e);
          if (!E.test(e))
            for (; n < s; n++)
              for (i = this[n]; i && i !== t; i = i.parentNode)
                if (i.nodeType < 11 && (r ? r.index(i) > -1 : 1 === i.nodeType && C.find.matchesSelector(i, e))) {
                  o.push(i);
                  break
                } return this.pushStack(o.length > 1 ? C.uniqueSort(o) : o)
        },
        index: function(e) {
          return e ? "string" == typeof e ? u.call(C(e), this[0]) : u.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
        },
        add: function(e, t) {
          return this.pushStack(C.uniqueSort(C.merge(this.get(), C(e, t))))
        },
        addBack: function(e) {
          return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
        }
      }), C.each({
        parent: function(e) {
          var t = e.parentNode;
          return t && 11 !== t.nodeType ? t : null
        },
        parents: function(e) {
          return $(e, "parentNode")
        },
        parentsUntil: function(e, t, i) {
          return $(e, "parentNode", i)
        },
        next: function(e) {
          return M(e, "nextSibling")
        },
        prev: function(e) {
          return M(e, "previousSibling")
        },
        nextAll: function(e) {
          return $(e, "nextSibling")
        },
        prevAll: function(e) {
          return $(e, "previousSibling")
        },
        nextUntil: function(e, t, i) {
          return $(e, "nextSibling", i)
        },
        prevUntil: function(e, t, i) {
          return $(e, "previousSibling", i)
        },
        siblings: function(e) {
          return A((e.parentNode || {}).firstChild, e)
        },
        children: function(e) {
          return A(e.firstChild)
        },
        contents: function(e) {
          return void 0 !== e.contentDocument ? e.contentDocument : (D(e, "template") && (e = e.content || e), C.merge([], e.childNodes))
        }
      }, function(e, t) {
        C.fn[e] = function(i, n) {
          var s = C.map(this, t, i);
          return "Until" !== e.slice(-5) && (n = i), n && "string" == typeof n && (s = C.filter(n, s)), this.length > 1 && (O[e] || C.uniqueSort(s), P.test(e) && s.reverse()), this.pushStack(s)
        }
      });
      var N = /[^\x20\t\r\n\f]+/g;

      function q(e) {
        return e
      }

      function I(e) {
        throw e
      }

      function R(e, t, i, n) {
        var s;
        try {
          e && y(s = e.promise) ? s.call(e).done(t).fail(i) : e && y(s = e.then) ? s.call(e, t, i) : t.apply(void 0, [e].slice(n))
        } catch (e) {
          i.apply(void 0, [e])
        }
      }
      C.Callbacks = function(e) {
        e = "string" == typeof e ? function(e) {
          var t = {};
          return C.each(e.match(N) || [], function(e, i) {
            t[i] = !0
          }), t
        }(e) : C.extend({}, e);
        var t, i, n, s, o = [],
          r = [],
          a = -1,
          l = function() {
            for (s = s || e.once, n = t = !0; r.length; a = -1)
              for (i = r.shift(); ++a < o.length;) !1 === o[a].apply(i[0], i[1]) && e.stopOnFalse && (a = o.length, i = !1);
            e.memory || (i = !1), t = !1, s && (o = i ? [] : "")
          },
          c = {
            add: function() {
              return o && (i && !t && (a = o.length - 1, r.push(i)), function t(i) {
                C.each(i, function(i, n) {
                  y(n) ? e.unique && c.has(n) || o.push(n) : n && n.length && "string" !== T(n) && t(n)
                })
              }(arguments), i && !t && l()), this
            },
            remove: function() {
              return C.each(arguments, function(e, t) {
                for (var i;
                  (i = C.inArray(t, o, i)) > -1;) o.splice(i, 1), i <= a && a--
              }), this
            },
            has: function(e) {
              return e ? C.inArray(e, o) > -1 : o.length > 0
            },
            empty: function() {
              return o && (o = []), this
            },
            disable: function() {
              return s = r = [], o = i = "", this
            },
            disabled: function() {
              return !o
            },
            lock: function() {
              return s = r = [], i || t || (o = i = ""), this
            },
            locked: function() {
              return !!s
            },
            fireWith: function(e, i) {
              return s || (i = [e, (i = i || []).slice ? i.slice() : i], r.push(i), t || l()), this
            },
            fire: function() {
              return c.fireWith(this, arguments), this
            },
            fired: function() {
              return !!n
            }
          };
        return c
      }, C.extend({
        Deferred: function(e) {
          var t = [
              ["notify", "progress", C.Callbacks("memory"), C.Callbacks("memory"), 2],
              ["resolve", "done", C.Callbacks("once memory"), C.Callbacks("once memory"), 0, "resolved"],
              ["reject", "fail", C.Callbacks("once memory"), C.Callbacks("once memory"), 1, "rejected"]
            ],
            n = "pending",
            s = {
              state: function() {
                return n
              },
              always: function() {
                return o.done(arguments).fail(arguments), this
              },
              catch: function(e) {
                return s.then(null, e)
              },
              pipe: function() {
                var e = arguments;
                return C.Deferred(function(i) {
                  C.each(t, function(t, n) {
                    var s = y(e[n[4]]) && e[n[4]];
                    o[n[1]](function() {
                      var e = s && s.apply(this, arguments);
                      e && y(e.promise) ? e.promise().progress(i.notify).done(i.resolve).fail(i.reject) : i[n[0] + "With"](this, s ? [e] : arguments)
                    })
                  }), e = null
                }).promise()
              },
              then: function(e, n, s) {
                var o = 0;

                function r(e, t, n, s) {
                  return function() {
                    var a = this,
                      l = arguments,
                      c = function() {
                        var i, c;
                        if (!(e < o)) {
                          if ((i = n.apply(a, l)) === t.promise()) throw new TypeError("Thenable self-resolution");
                          c = i && ("object" == typeof i || "function" == typeof i) && i.then, y(c) ? s ? c.call(i, r(o, t, q, s), r(o, t, I, s)) : (o++, c.call(i, r(o, t, q, s), r(o, t, I, s), r(o, t, q, t.notifyWith))) : (n !== q && (a = void 0, l = [i]), (s || t.resolveWith)(a, l))
                        }
                      },
                      d = s ? c : function() {
                        try {
                          c()
                        } catch (i) {
                          C.Deferred.exceptionHook && C.Deferred.exceptionHook(i, d.stackTrace), e + 1 >= o && (n !== I && (a = void 0, l = [i]), t.rejectWith(a, l))
                        }
                      };
                    e ? d() : (C.Deferred.getStackHook && (d.stackTrace = C.Deferred.getStackHook()), i.setTimeout(d))
                  }
                }
                return C.Deferred(function(i) {
                  t[0][3].add(r(0, i, y(s) ? s : q, i.notifyWith)), t[1][3].add(r(0, i, y(e) ? e : q)), t[2][3].add(r(0, i, y(n) ? n : I))
                }).promise()
              },
              promise: function(e) {
                return null != e ? C.extend(e, s) : s
              }
            },
            o = {};
          return C.each(t, function(e, i) {
            var r = i[2],
              a = i[5];
            s[i[1]] = r.add, a && r.add(function() {
              n = a
            }, t[3 - e][2].disable, t[3 - e][3].disable, t[0][2].lock, t[0][3].lock), r.add(i[3].fire), o[i[0]] = function() {
              return o[i[0] + "With"](this === o ? void 0 : this, arguments), this
            }, o[i[0] + "With"] = r.fireWith
          }), s.promise(o), e && e.call(o, o), o
        },
        when: function(e) {
          var t = arguments.length,
            i = t,
            n = Array(i),
            s = l.call(arguments),
            o = C.Deferred(),
            r = function(e) {
              return function(i) {
                n[e] = this, s[e] = arguments.length > 1 ? l.call(arguments) : i, --t || o.resolveWith(n, s)
              }
            };
          if (t <= 1 && (R(e, o.done(r(i)).resolve, o.reject, !t), "pending" === o.state() || y(s[i] && s[i].then))) return o.then();
          for (; i--;) R(s[i], r(i), o.reject);
          return o.promise()
        }
      });
      var W = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
      C.Deferred.exceptionHook = function(e, t) {
        i.console && i.console.warn && e && W.test(e.name) && i.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t)
      }, C.readyException = function(e) {
        i.setTimeout(function() {
          throw e
        })
      };
      var B = C.Deferred();

      function F() {
        r.removeEventListener("DOMContentLoaded", F), i.removeEventListener("load", F), C.ready()
      }
      C.fn.ready = function(e) {
        return B.then(e).catch(function(e) {
          C.readyException(e)
        }), this
      }, C.extend({
        isReady: !1,
        readyWait: 1,
        ready: function(e) {
          (!0 === e ? --C.readyWait : C.isReady) || (C.isReady = !0, !0 !== e && --C.readyWait > 0 || B.resolveWith(r, [C]))
        }
      }), C.ready.then = B.then, "complete" === r.readyState || "loading" !== r.readyState && !r.documentElement.doScroll ? i.setTimeout(C.ready) : (r.addEventListener("DOMContentLoaded", F), i.addEventListener("load", F));
      var U = function(e, t, i, n, s, o, r) {
          var a = 0,
            l = e.length,
            c = null == i;
          if ("object" === T(i))
            for (a in s = !0, i) U(e, t, a, i[a], !0, o, r);
          else if (void 0 !== n && (s = !0, y(n) || (r = !0), c && (r ? (t.call(e, n), t = null) : (c = t, t = function(e, t, i) {
              return c.call(C(e), i)
            })), t))
            for (; a < l; a++) t(e[a], i, r ? n : n.call(e[a], a, t(e[a], i)));
          return s ? e : c ? t.call(e) : l ? t(e[0], i) : o
        },
        X = /^-ms-/,
        Y = /-([a-z])/g;

      function V(e, t) {
        return t.toUpperCase()
      }

      function G(e) {
        return e.replace(X, "ms-").replace(Y, V)
      }
      var Q = function(e) {
        return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType
      };

      function Z() {
        this.expando = C.expando + Z.uid++
      }
      Z.uid = 1, Z.prototype = {
        cache: function(e) {
          var t = e[this.expando];
          return t || (t = {}, Q(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, {
            value: t,
            configurable: !0
          }))), t
        },
        set: function(e, t, i) {
          var n, s = this.cache(e);
          if ("string" == typeof t) s[G(t)] = i;
          else
            for (n in t) s[G(n)] = t[n];
          return s
        },
        get: function(e, t) {
          return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][G(t)]
        },
        access: function(e, t, i) {
          return void 0 === t || t && "string" == typeof t && void 0 === i ? this.get(e, t) : (this.set(e, t, i), void 0 !== i ? i : t)
        },
        remove: function(e, t) {
          var i, n = e[this.expando];
          if (void 0 !== n) {
            if (void 0 !== t) {
              i = (t = Array.isArray(t) ? t.map(G) : (t = G(t)) in n ? [t] : t.match(N) || []).length;
              for (; i--;) delete n[t[i]]
            }(void 0 === t || C.isEmptyObject(n)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando])
          }
        },
        hasData: function(e) {
          var t = e[this.expando];
          return void 0 !== t && !C.isEmptyObject(t)
        }
      };
      var J = new Z,
        K = new Z,
        ee = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
        te = /[A-Z]/g;

      function ie(e, t, i) {
        var n;
        if (void 0 === i && 1 === e.nodeType)
          if (n = "data-" + t.replace(te, "-$&").toLowerCase(), "string" == typeof(i = e.getAttribute(n))) {
            try {
              i = function(e) {
                return "true" === e || "false" !== e && ("null" === e ? null : e === +e + "" ? +e : ee.test(e) ? JSON.parse(e) : e)
              }(i)
            } catch (e) {}
            K.set(e, t, i)
          } else i = void 0;
        return i
      }
      C.extend({
        hasData: function(e) {
          return K.hasData(e) || J.hasData(e)
        },
        data: function(e, t, i) {
          return K.access(e, t, i)
        },
        removeData: function(e, t) {
          K.remove(e, t)
        },
        _data: function(e, t, i) {
          return J.access(e, t, i)
        },
        _removeData: function(e, t) {
          J.remove(e, t)
        }
      }), C.fn.extend({
        data: function(e, t) {
          var i, n, s, o = this[0],
            r = o && o.attributes;
          if (void 0 === e) {
            if (this.length && (s = K.get(o), 1 === o.nodeType && !J.get(o, "hasDataAttrs"))) {
              for (i = r.length; i--;) r[i] && 0 === (n = r[i].name).indexOf("data-") && (n = G(n.slice(5)), ie(o, n, s[n]));
              J.set(o, "hasDataAttrs", !0)
            }
            return s
          }
          return "object" == typeof e ? this.each(function() {
            K.set(this, e)
          }) : U(this, function(t) {
            var i;
            if (o && void 0 === t) return void 0 !== (i = K.get(o, e)) ? i : void 0 !== (i = ie(o, e)) ? i : void 0;
            this.each(function() {
              K.set(this, e, t)
            })
          }, null, t, arguments.length > 1, null, !0)
        },
        removeData: function(e) {
          return this.each(function() {
            K.remove(this, e)
          })
        }
      }), C.extend({
        queue: function(e, t, i) {
          var n;
          if (e) return t = (t || "fx") + "queue", n = J.get(e, t), i && (!n || Array.isArray(i) ? n = J.access(e, t, C.makeArray(i)) : n.push(i)), n || []
        },
        dequeue: function(e, t) {
          t = t || "fx";
          var i = C.queue(e, t),
            n = i.length,
            s = i.shift(),
            o = C._queueHooks(e, t);
          "inprogress" === s && (s = i.shift(), n--), s && ("fx" === t && i.unshift("inprogress"), delete o.stop, s.call(e, function() {
            C.dequeue(e, t)
          }, o)), !n && o && o.empty.fire()
        },
        _queueHooks: function(e, t) {
          var i = t + "queueHooks";
          return J.get(e, i) || J.access(e, i, {
            empty: C.Callbacks("once memory").add(function() {
              J.remove(e, [t + "queue", i])
            })
          })
        }
      }), C.fn.extend({
        queue: function(e, t) {
          var i = 2;
          return "string" != typeof e && (t = e, e = "fx", i--), arguments.length < i ? C.queue(this[0], e) : void 0 === t ? this : this.each(function() {
            var i = C.queue(this, e, t);
            C._queueHooks(this, e), "fx" === e && "inprogress" !== i[0] && C.dequeue(this, e)
          })
        },
        dequeue: function(e) {
          return this.each(function() {
            C.dequeue(this, e)
          })
        },
        clearQueue: function(e) {
          return this.queue(e || "fx", [])
        },
        promise: function(e, t) {
          var i, n = 1,
            s = C.Deferred(),
            o = this,
            r = this.length,
            a = function() {
              --n || s.resolveWith(o, [o])
            };
          for ("string" != typeof e && (t = e, e = void 0), e = e || "fx"; r--;)(i = J.get(o[r], e + "queueHooks")) && i.empty && (n++, i.empty.add(a));
          return a(), s.promise(t)
        }
      });
      var ne = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
        se = new RegExp("^(?:([+-])=|)(" + ne + ")([a-z%]*)$", "i"),
        oe = ["Top", "Right", "Bottom", "Left"],
        re = r.documentElement,
        ae = function(e) {
          return C.contains(e.ownerDocument, e)
        },
        le = {
          composed: !0
        };
      re.getRootNode && (ae = function(e) {
        return C.contains(e.ownerDocument, e) || e.getRootNode(le) === e.ownerDocument
      });
      var ce = function(e, t) {
          return "none" === (e = t || e).style.display || "" === e.style.display && ae(e) && "none" === C.css(e, "display")
        },
        de = function(e, t, i, n) {
          var s, o, r = {};
          for (o in t) r[o] = e.style[o], e.style[o] = t[o];
          for (o in s = i.apply(e, n || []), t) e.style[o] = r[o];
          return s
        };

      function ue(e, t, i, n) {
        var s, o, r = 20,
          a = n ? function() {
            return n.cur()
          } : function() {
            return C.css(e, t, "")
          },
          l = a(),
          c = i && i[3] || (C.cssNumber[t] ? "" : "px"),
          d = e.nodeType && (C.cssNumber[t] || "px" !== c && +l) && se.exec(C.css(e, t));
        if (d && d[3] !== c) {
          for (l /= 2, c = c || d[3], d = +l || 1; r--;) C.style(e, t, d + c), (1 - o) * (1 - (o = a() / l || .5)) <= 0 && (r = 0), d /= o;
          d *= 2, C.style(e, t, d + c), i = i || []
        }
        return i && (d = +d || +l || 0, s = i[1] ? d + (i[1] + 1) * i[2] : +i[2], n && (n.unit = c, n.start = d, n.end = s)), s
      }
      var pe = {};

      function he(e) {
        var t, i = e.ownerDocument,
          n = e.nodeName,
          s = pe[n];
        return s || (t = i.body.appendChild(i.createElement(n)), s = C.css(t, "display"), t.parentNode.removeChild(t), "none" === s && (s = "block"), pe[n] = s, s)
      }

      function fe(e, t) {
        for (var i, n, s = [], o = 0, r = e.length; o < r; o++)(n = e[o]).style && (i = n.style.display, t ? ("none" === i && (s[o] = J.get(n, "display") || null, s[o] || (n.style.display = "")), "" === n.style.display && ce(n) && (s[o] = he(n))) : "none" !== i && (s[o] = "none", J.set(n, "display", i)));
        for (o = 0; o < r; o++) null != s[o] && (e[o].style.display = s[o]);
        return e
      }
      C.fn.extend({
        show: function() {
          return fe(this, !0)
        },
        hide: function() {
          return fe(this)
        },
        toggle: function(e) {
          return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function() {
            ce(this) ? C(this).show() : C(this).hide()
          })
        }
      });
      var ge = /^(?:checkbox|radio)$/i,
        ve = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i,
        me = /^$|^module$|\/(?:java|ecma)script/i,
        ye = {
          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, "", ""]
        };

      function we(e, t) {
        var i;
        return i = void 0 !== e.getElementsByTagName ? e.getElementsByTagName(t || "*") : void 0 !== e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && D(e, t) ? C.merge([e], i) : i
      }

      function xe(e, t) {
        for (var i = 0, n = e.length; i < n; i++) J.set(e[i], "globalEval", !t || J.get(t[i], "globalEval"))
      }
      ye.optgroup = ye.option, ye.tbody = ye.tfoot = ye.colgroup = ye.caption = ye.thead, ye.th = ye.td;
      var be, Te, Ce = /<|&#?\w+;/;

      function _e(e, t, i, n, s) {
        for (var o, r, a, l, c, d, u = t.createDocumentFragment(), p = [], h = 0, f = e.length; h < f; h++)
          if ((o = e[h]) || 0 === o)
            if ("object" === T(o)) C.merge(p, o.nodeType ? [o] : o);
            else if (Ce.test(o)) {
          for (r = r || u.appendChild(t.createElement("div")), a = (ve.exec(o) || ["", ""])[1].toLowerCase(), l = ye[a] || ye._default, r.innerHTML = l[1] + C.htmlPrefilter(o) + l[2], d = l[0]; d--;) r = r.lastChild;
          C.merge(p, r.childNodes), (r = u.firstChild).textContent = ""
        } else p.push(t.createTextNode(o));
        for (u.textContent = "", h = 0; o = p[h++];)
          if (n && C.inArray(o, n) > -1) s && s.push(o);
          else if (c = ae(o), r = we(u.appendChild(o), "script"), c && xe(r), i)
          for (d = 0; o = r[d++];) me.test(o.type || "") && i.push(o);
        return u
      }
      be = r.createDocumentFragment().appendChild(r.createElement("div")), (Te = r.createElement("input")).setAttribute("type", "radio"), Te.setAttribute("checked", "checked"), Te.setAttribute("name", "t"), be.appendChild(Te), m.checkClone = be.cloneNode(!0).cloneNode(!0).lastChild.checked, be.innerHTML = "<textarea>x</textarea>", m.noCloneChecked = !!be.cloneNode(!0).lastChild.defaultValue;
      var ke = /^key/,
        Se = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
        $e = /^([^.]*)(?:\.(.+)|)/;

      function Ae() {
        return !0
      }

      function Ee() {
        return !1
      }

      function De(e, t) {
        return e === function() {
          try {
            return r.activeElement
          } catch (e) {}
        }() == ("focus" === t)
      }

      function He(e, t, i, n, s, o) {
        var r, a;
        if ("object" == typeof t) {
          for (a in "string" != typeof i && (n = n || i, i = void 0), t) He(e, a, i, n, t[a], o);
          return e
        }
        if (null == n && null == s ? (s = i, n = i = void 0) : null == s && ("string" == typeof i ? (s = n, n = void 0) : (s = n, n = i, i = void 0)), !1 === s) s = Ee;
        else if (!s) return e;
        return 1 === o && (r = s, (s = function(e) {
          return C().off(e), r.apply(this, arguments)
        }).guid = r.guid || (r.guid = C.guid++)), e.each(function() {
          C.event.add(this, t, s, n, i)
        })
      }

      function ze(e, t, i) {
        i ? (J.set(e, t, !1), C.event.add(e, t, {
          namespace: !1,
          handler: function(e) {
            var n, s, o = J.get(this, t);
            if (1 & e.isTrigger && this[t]) {
              if (o.length)(C.event.special[t] || {}).delegateType && e.stopPropagation();
              else if (o = l.call(arguments), J.set(this, t, o), n = i(this, t), this[t](), o !== (s = J.get(this, t)) || n ? J.set(this, t, !1) : s = {}, o !== s) return e.stopImmediatePropagation(), e.preventDefault(), s.value
            } else o.length && (J.set(this, t, {
              value: C.event.trigger(C.extend(o[0], C.Event.prototype), o.slice(1), this)
            }), e.stopImmediatePropagation())
          }
        })) : void 0 === J.get(e, t) && C.event.add(e, t, Ae)
      }
      C.event = {
        global: {},
        add: function(e, t, i, n, s) {
          var o, r, a, l, c, d, u, p, h, f, g, v = J.get(e);
          if (v)
            for (i.handler && (i = (o = i).handler, s = o.selector), s && C.find.matchesSelector(re, s), i.guid || (i.guid = C.guid++), (l = v.events) || (l = v.events = {}), (r = v.handle) || (r = v.handle = function(t) {
                return void 0 !== C && C.event.triggered !== t.type ? C.event.dispatch.apply(e, arguments) : void 0
              }), c = (t = (t || "").match(N) || [""]).length; c--;) h = g = (a = $e.exec(t[c]) || [])[1], f = (a[2] || "").split(".").sort(), h && (u = C.event.special[h] || {}, h = (s ? u.delegateType : u.bindType) || h, u = C.event.special[h] || {}, d = C.extend({
              type: h,
              origType: g,
              data: n,
              handler: i,
              guid: i.guid,
              selector: s,
              needsContext: s && C.expr.match.needsContext.test(s),
              namespace: f.join(".")
            }, o), (p = l[h]) || ((p = l[h] = []).delegateCount = 0, u.setup && !1 !== u.setup.call(e, n, f, r) || e.addEventListener && e.addEventListener(h, r)), u.add && (u.add.call(e, d), d.handler.guid || (d.handler.guid = i.guid)), s ? p.splice(p.delegateCount++, 0, d) : p.push(d), C.event.global[h] = !0)
        },
        remove: function(e, t, i, n, s) {
          var o, r, a, l, c, d, u, p, h, f, g, v = J.hasData(e) && J.get(e);
          if (v && (l = v.events)) {
            for (c = (t = (t || "").match(N) || [""]).length; c--;)
              if (h = g = (a = $e.exec(t[c]) || [])[1], f = (a[2] || "").split(".").sort(), h) {
                for (u = C.event.special[h] || {}, p = l[h = (n ? u.delegateType : u.bindType) || h] || [], a = a[2] && new RegExp("(^|\\.)" + f.join("\\.(?:.*\\.|)") + "(\\.|$)"), r = o = p.length; o--;) d = p[o], !s && g !== d.origType || i && i.guid !== d.guid || a && !a.test(d.namespace) || n && n !== d.selector && ("**" !== n || !d.selector) || (p.splice(o, 1), d.selector && p.delegateCount--, u.remove && u.remove.call(e, d));
                r && !p.length && (u.teardown && !1 !== u.teardown.call(e, f, v.handle) || C.removeEvent(e, h, v.handle), delete l[h])
              } else
                for (h in l) C.event.remove(e, h + t[c], i, n, !0);
            C.isEmptyObject(l) && J.remove(e, "handle events")
          }
        },
        dispatch: function(e) {
          var t, i, n, s, o, r, a = C.event.fix(e),
            l = new Array(arguments.length),
            c = (J.get(this, "events") || {})[a.type] || [],
            d = C.event.special[a.type] || {};
          for (l[0] = a, t = 1; t < arguments.length; t++) l[t] = arguments[t];
          if (a.delegateTarget = this, !d.preDispatch || !1 !== d.preDispatch.call(this, a)) {
            for (r = C.event.handlers.call(this, a, c), t = 0;
              (s = r[t++]) && !a.isPropagationStopped();)
              for (a.currentTarget = s.elem, i = 0;
                (o = s.handlers[i++]) && !a.isImmediatePropagationStopped();) a.rnamespace && !1 !== o.namespace && !a.rnamespace.test(o.namespace) || (a.handleObj = o, a.data = o.data, void 0 !== (n = ((C.event.special[o.origType] || {}).handle || o.handler).apply(s.elem, l)) && !1 === (a.result = n) && (a.preventDefault(), a.stopPropagation()));
            return d.postDispatch && d.postDispatch.call(this, a), a.result
          }
        },
        handlers: function(e, t) {
          var i, n, s, o, r, a = [],
            l = t.delegateCount,
            c = e.target;
          if (l && c.nodeType && !("click" === e.type && e.button >= 1))
            for (; c !== this; c = c.parentNode || this)
              if (1 === c.nodeType && ("click" !== e.type || !0 !== c.disabled)) {
                for (o = [], r = {}, i = 0; i < l; i++) void 0 === r[s = (n = t[i]).selector + " "] && (r[s] = n.needsContext ? C(s, this).index(c) > -1 : C.find(s, this, null, [c]).length), r[s] && o.push(n);
                o.length && a.push({
                  elem: c,
                  handlers: o
                })
              } return c = this, l < t.length && a.push({
            elem: c,
            handlers: t.slice(l)
          }), a
        },
        addProp: function(e, t) {
          Object.defineProperty(C.Event.prototype, e, {
            enumerable: !0,
            configurable: !0,
            get: y(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[C.expando] ? e : new C.Event(e)
        },
        special: {
          load: {
            noBubble: !0
          },
          click: {
            setup: function(e) {
              var t = this || e;
              return ge.test(t.type) && t.click && D(t, "input") && ze(t, "click", Ae), !1
            },
            trigger: function(e) {
              var t = this || e;
              return ge.test(t.type) && t.click && D(t, "input") && ze(t, "click"), !0
            },
            _default: function(e) {
              var t = e.target;
              return ge.test(t.type) && t.click && D(t, "input") && J.get(t, "click") || D(t, "a")
            }
          },
          beforeunload: {
            postDispatch: function(e) {
              void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
            }
          }
        }
      }, C.removeEvent = function(e, t, i) {
        e.removeEventListener && e.removeEventListener(t, i)
      }, C.Event = function(e, t) {
        if (!(this instanceof C.Event)) return new C.Event(e, t);
        e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? Ae : Ee, 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 && C.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[C.expando] = !0
      }, C.Event.prototype = {
        constructor: C.Event,
        isDefaultPrevented: Ee,
        isPropagationStopped: Ee,
        isImmediatePropagationStopped: Ee,
        isSimulated: !1,
        preventDefault: function() {
          var e = this.originalEvent;
          this.isDefaultPrevented = Ae, e && !this.isSimulated && e.preventDefault()
        },
        stopPropagation: function() {
          var e = this.originalEvent;
          this.isPropagationStopped = Ae, e && !this.isSimulated && e.stopPropagation()
        },
        stopImmediatePropagation: function() {
          var e = this.originalEvent;
          this.isImmediatePropagationStopped = Ae, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation()
        }
      }, C.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,
        code: !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 && ke.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && Se.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which
        }
      }, C.event.addProp), C.each({
        focus: "focusin",
        blur: "focusout"
      }, function(e, t) {
        C.event.special[e] = {
          setup: function() {
            return ze(this, e, De), !1
          },
          trigger: function() {
            return ze(this, e), !0
          },
          delegateType: t
        }
      }), C.each({
        mouseenter: "mouseover",
        mouseleave: "mouseout",
        pointerenter: "pointerover",
        pointerleave: "pointerout"
      }, function(e, t) {
        C.event.special[e] = {
          delegateType: t,
          bindType: t,
          handle: function(e) {
            var i, n = e.relatedTarget,
              s = e.handleObj;
            return n && (n === this || C.contains(this, n)) || (e.type = s.origType, i = s.handler.apply(this, arguments), e.type = t), i
          }
        }
      }), C.fn.extend({
        on: function(e, t, i, n) {
          return He(this, e, t, i, n)
        },
        one: function(e, t, i, n) {
          return He(this, e, t, i, n, 1)
        },
        off: function(e, t, i) {
          var n, s;
          if (e && e.preventDefault && e.handleObj) return n = e.handleObj, C(e.delegateTarget).off(n.namespace ? n.origType + "." + n.namespace : n.origType, n.selector, n.handler), this;
          if ("object" == typeof e) {
            for (s in e) this.off(s, t, e[s]);
            return this
          }
          return !1 !== t && "function" != typeof t || (i = t, t = void 0), !1 === i && (i = Ee), this.each(function() {
            C.event.remove(this, e, i, t)
          })
        }
      });
      var je = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
        Le = /<script|<style|<link/i,
        Pe = /checked\s*(?:[^=]|=\s*.checked.)/i,
        Oe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;

      function Me(e, t) {
        return D(e, "table") && D(11 !== t.nodeType ? t : t.firstChild, "tr") && C(e).children("tbody")[0] || e
      }

      function Ne(e) {
        return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e
      }

      function qe(e) {
        return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e
      }

      function Ie(e, t) {
        var i, n, s, o, r, a, l, c;
        if (1 === t.nodeType) {
          if (J.hasData(e) && (o = J.access(e), r = J.set(t, o), c = o.events))
            for (s in delete r.handle, r.events = {}, c)
              for (i = 0, n = c[s].length; i < n; i++) C.event.add(t, s, c[s][i]);
          K.hasData(e) && (a = K.access(e), l = C.extend({}, a), K.set(t, l))
        }
      }

      function Re(e, t, i, n) {
        t = c.apply([], t);
        var s, o, r, a, l, d, u = 0,
          p = e.length,
          h = p - 1,
          f = t[0],
          g = y(f);
        if (g || p > 1 && "string" == typeof f && !m.checkClone && Pe.test(f)) return e.each(function(s) {
          var o = e.eq(s);
          g && (t[0] = f.call(this, s, o.html())), Re(o, t, i, n)
        });
        if (p && (o = (s = _e(t, e[0].ownerDocument, !1, e, n)).firstChild, 1 === s.childNodes.length && (s = o), o || n)) {
          for (a = (r = C.map(we(s, "script"), Ne)).length; u < p; u++) l = s, u !== h && (l = C.clone(l, !0, !0), a && C.merge(r, we(l, "script"))), i.call(e[u], l, u);
          if (a)
            for (d = r[r.length - 1].ownerDocument, C.map(r, qe), u = 0; u < a; u++) l = r[u], me.test(l.type || "") && !J.access(l, "globalEval") && C.contains(d, l) && (l.src && "module" !== (l.type || "").toLowerCase() ? C._evalUrl && !l.noModule && C._evalUrl(l.src, {
              nonce: l.nonce || l.getAttribute("nonce")
            }) : b(l.textContent.replace(Oe, ""), l, d))
        }
        return e
      }

      function We(e, t, i) {
        for (var n, s = t ? C.filter(t, e) : e, o = 0; null != (n = s[o]); o++) i || 1 !== n.nodeType || C.cleanData(we(n)), n.parentNode && (i && ae(n) && xe(we(n, "script")), n.parentNode.removeChild(n));
        return e
      }
      C.extend({
        htmlPrefilter: function(e) {
          return e.replace(je, "<$1></$2>")
        },
        clone: function(e, t, i) {
          var n, s, o, r, a, l, c, d = e.cloneNode(!0),
            u = ae(e);
          if (!(m.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || C.isXMLDoc(e)))
            for (r = we(d), n = 0, s = (o = we(e)).length; n < s; n++) a = o[n], l = r[n], c = void 0, "input" === (c = l.nodeName.toLowerCase()) && ge.test(a.type) ? l.checked = a.checked : "input" !== c && "textarea" !== c || (l.defaultValue = a.defaultValue);
          if (t)
            if (i)
              for (o = o || we(e), r = r || we(d), n = 0, s = o.length; n < s; n++) Ie(o[n], r[n]);
            else Ie(e, d);
          return (r = we(d, "script")).length > 0 && xe(r, !u && we(e, "script")), d
        },
        cleanData: function(e) {
          for (var t, i, n, s = C.event.special, o = 0; void 0 !== (i = e[o]); o++)
            if (Q(i)) {
              if (t = i[J.expando]) {
                if (t.events)
                  for (n in t.events) s[n] ? C.event.remove(i, n) : C.removeEvent(i, n, t.handle);
                i[J.expando] = void 0
              }
              i[K.expando] && (i[K.expando] = void 0)
            }
        }
      }), C.fn.extend({
        detach: function(e) {
          return We(this, e, !0)
        },
        remove: function(e) {
          return We(this, e)
        },
        text: function(e) {
          return U(this, function(e) {
            return void 0 === e ? C.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 Re(this, arguments, function(e) {
            1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || Me(this, e).appendChild(e)
          })
        },
        prepend: function() {
          return Re(this, arguments, function(e) {
            if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
              var t = Me(this, e);
              t.insertBefore(e, t.firstChild)
            }
          })
        },
        before: function() {
          return Re(this, arguments, function(e) {
            this.parentNode && this.parentNode.insertBefore(e, this)
          })
        },
        after: function() {
          return Re(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 && (C.cleanData(we(e, !1)), e.textContent = "");
          return this
        },
        clone: function(e, t) {
          return e = null != e && e, t = null == t ? e : t, this.map(function() {
            return C.clone(this, e, t)
          })
        },
        html: function(e) {
          return U(this, function(e) {
            var t = this[0] || {},
              i = 0,
              n = this.length;
            if (void 0 === e && 1 === t.nodeType) return t.innerHTML;
            if ("string" == typeof e && !Le.test(e) && !ye[(ve.exec(e) || ["", ""])[1].toLowerCase()]) {
              e = C.htmlPrefilter(e);
              try {
                for (; i < n; i++) 1 === (t = this[i] || {}).nodeType && (C.cleanData(we(t, !1)), t.innerHTML = e);
                t = 0
              } catch (e) {}
            }
            t && this.empty().append(e)
          }, null, e, arguments.length)
        },
        replaceWith: function() {
          var e = [];
          return Re(this, arguments, function(t) {
            var i = this.parentNode;
            C.inArray(this, e) < 0 && (C.cleanData(we(this)), i && i.replaceChild(t, this))
          }, e)
        }
      }), C.each({
        appendTo: "append",
        prependTo: "prepend",
        insertBefore: "before",
        insertAfter: "after",
        replaceAll: "replaceWith"
      }, function(e, t) {
        C.fn[e] = function(e) {
          for (var i, n = [], s = C(e), o = s.length - 1, r = 0; r <= o; r++) i = r === o ? this : this.clone(!0), C(s[r])[t](i), d.apply(n, i.get());
          return this.pushStack(n)
        }
      });
      var Be = new RegExp("^(" + ne + ")(?!px)[a-z%]+$", "i"),
        Fe = function(e) {
          var t = e.ownerDocument.defaultView;
          return t && t.opener || (t = i), t.getComputedStyle(e)
        },
        Ue = new RegExp(oe.join("|"), "i");

      function Xe(e, t, i) {
        var n, s, o, r, a = e.style;
        return (i = i || Fe(e)) && ("" !== (r = i.getPropertyValue(t) || i[t]) || ae(e) || (r = C.style(e, t)), !m.pixelBoxStyles() && Be.test(r) && Ue.test(t) && (n = a.width, s = a.minWidth, o = a.maxWidth, a.minWidth = a.maxWidth = a.width = r, r = i.width, a.width = n, a.minWidth = s, a.maxWidth = o)), void 0 !== r ? r + "" : r
      }

      function Ye(e, t) {
        return {
          get: function() {
            if (!e()) return (this.get = t).apply(this, arguments);
            delete this.get
          }
        }
      }! function() {
        function e() {
          if (d) {
            c.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", d.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", re.appendChild(c).appendChild(d);
            var e = i.getComputedStyle(d);
            n = "1%" !== e.top, l = 12 === t(e.marginLeft), d.style.right = "60%", a = 36 === t(e.right), s = 36 === t(e.width), d.style.position = "absolute", o = 12 === t(d.offsetWidth / 3), re.removeChild(c), d = null
          }
        }

        function t(e) {
          return Math.round(parseFloat(e))
        }
        var n, s, o, a, l, c = r.createElement("div"),
          d = r.createElement("div");
        d.style && (d.style.backgroundClip = "content-box", d.cloneNode(!0).style.backgroundClip = "", m.clearCloneStyle = "content-box" === d.style.backgroundClip, C.extend(m, {
          boxSizingReliable: function() {
            return e(), s
          },
          pixelBoxStyles: function() {
            return e(), a
          },
          pixelPosition: function() {
            return e(), n
          },
          reliableMarginLeft: function() {
            return e(), l
          },
          scrollboxSize: function() {
            return e(), o
          }
        }))
      }();
      var Ve = ["Webkit", "Moz", "ms"],
        Ge = r.createElement("div").style,
        Qe = {};

      function Ze(e) {
        var t = C.cssProps[e] || Qe[e];
        return t || (e in Ge ? e : Qe[e] = function(e) {
          for (var t = e[0].toUpperCase() + e.slice(1), i = Ve.length; i--;)
            if ((e = Ve[i] + t) in Ge) return e
        }(e) || e)
      }
      var Je = /^(none|table(?!-c[ea]).+)/,
        Ke = /^--/,
        et = {
          position: "absolute",
          visibility: "hidden",
          display: "block"
        },
        tt = {
          letterSpacing: "0",
          fontWeight: "400"
        };

      function it(e, t, i) {
        var n = se.exec(t);
        return n ? Math.max(0, n[2] - (i || 0)) + (n[3] || "px") : t
      }

      function nt(e, t, i, n, s, o) {
        var r = "width" === t ? 1 : 0,
          a = 0,
          l = 0;
        if (i === (n ? "border" : "content")) return 0;
        for (; r < 4; r += 2) "margin" === i && (l += C.css(e, i + oe[r], !0, s)), n ? ("content" === i && (l -= C.css(e, "padding" + oe[r], !0, s)), "margin" !== i && (l -= C.css(e, "border" + oe[r] + "Width", !0, s))) : (l += C.css(e, "padding" + oe[r], !0, s), "padding" !== i ? l += C.css(e, "border" + oe[r] + "Width", !0, s) : a += C.css(e, "border" + oe[r] + "Width", !0, s));
        return !n && o >= 0 && (l += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - l - a - .5)) || 0), l
      }

      function st(e, t, i) {
        var n = Fe(e),
          s = (!m.boxSizingReliable() || i) && "border-box" === C.css(e, "boxSizing", !1, n),
          o = s,
          r = Xe(e, t, n),
          a = "offset" + t[0].toUpperCase() + t.slice(1);
        if (Be.test(r)) {
          if (!i) return r;
          r = "auto"
        }
        return (!m.boxSizingReliable() && s || "auto" === r || !parseFloat(r) && "inline" === C.css(e, "display", !1, n)) && e.getClientRects().length && (s = "border-box" === C.css(e, "boxSizing", !1, n), (o = a in e) && (r = e[a])), (r = parseFloat(r) || 0) + nt(e, t, i || (s ? "border" : "content"), o, n, r) + "px"
      }

      function ot(e, t, i, n, s) {
        return new ot.prototype.init(e, t, i, n, s)
      }
      C.extend({
        cssHooks: {
          opacity: {
            get: function(e, t) {
              if (t) {
                var i = Xe(e, "opacity");
                return "" === i ? "1" : i
              }
            }
          }
        },
        cssNumber: {
          animationIterationCount: !0,
          columnCount: !0,
          fillOpacity: !0,
          flexGrow: !0,
          flexShrink: !0,
          fontWeight: !0,
          gridArea: !0,
          gridColumn: !0,
          gridColumnEnd: !0,
          gridColumnStart: !0,
          gridRow: !0,
          gridRowEnd: !0,
          gridRowStart: !0,
          lineHeight: !0,
          opacity: !0,
          order: !0,
          orphans: !0,
          widows: !0,
          zIndex: !0,
          zoom: !0
        },
        cssProps: {},
        style: function(e, t, i, n) {
          if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
            var s, o, r, a = G(t),
              l = Ke.test(t),
              c = e.style;
            if (l || (t = Ze(a)), r = C.cssHooks[t] || C.cssHooks[a], void 0 === i) return r && "get" in r && void 0 !== (s = r.get(e, !1, n)) ? s : c[t];
            "string" === (o = typeof i) && (s = se.exec(i)) && s[1] && (i = ue(e, t, s), o = "number"), null != i && i == i && ("number" !== o || l || (i += s && s[3] || (C.cssNumber[a] ? "" : "px")), m.clearCloneStyle || "" !== i || 0 !== t.indexOf("background") || (c[t] = "inherit"), r && "set" in r && void 0 === (i = r.set(e, i, n)) || (l ? c.setProperty(t, i) : c[t] = i))
          }
        },
        css: function(e, t, i, n) {
          var s, o, r, a = G(t);
          return Ke.test(t) || (t = Ze(a)), (r = C.cssHooks[t] || C.cssHooks[a]) && "get" in r && (s = r.get(e, !0, i)), void 0 === s && (s = Xe(e, t, n)), "normal" === s && t in tt && (s = tt[t]), "" === i || i ? (o = parseFloat(s), !0 === i || isFinite(o) ? o || 0 : s) : s
        }
      }), C.each(["height", "width"], function(e, t) {
        C.cssHooks[t] = {
          get: function(e, i, n) {
            if (i) return !Je.test(C.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? st(e, t, n) : de(e, et, function() {
              return st(e, t, n)
            })
          },
          set: function(e, i, n) {
            var s, o = Fe(e),
              r = !m.scrollboxSize() && "absolute" === o.position,
              a = (r || n) && "border-box" === C.css(e, "boxSizing", !1, o),
              l = n ? nt(e, t, n, a, o) : 0;
            return a && r && (l -= Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - parseFloat(o[t]) - nt(e, t, "border", !1, o) - .5)), l && (s = se.exec(i)) && "px" !== (s[3] || "px") && (e.style[t] = i, i = C.css(e, t)), it(0, i, l)
          }
        }
      }), C.cssHooks.marginLeft = Ye(m.reliableMarginLeft, function(e, t) {
        if (t) return (parseFloat(Xe(e, "marginLeft")) || e.getBoundingClientRect().left - de(e, {
          marginLeft: 0
        }, function() {
          return e.getBoundingClientRect().left
        })) + "px"
      }), C.each({
        margin: "",
        padding: "",
        border: "Width"
      }, function(e, t) {
        C.cssHooks[e + t] = {
          expand: function(i) {
            for (var n = 0, s = {}, o = "string" == typeof i ? i.split(" ") : [i]; n < 4; n++) s[e + oe[n] + t] = o[n] || o[n - 2] || o[0];
            return s
          }
        }, "margin" !== e && (C.cssHooks[e + t].set = it)
      }), C.fn.extend({
        css: function(e, t) {
          return U(this, function(e, t, i) {
            var n, s, o = {},
              r = 0;
            if (Array.isArray(t)) {
              for (n = Fe(e), s = t.length; r < s; r++) o[t[r]] = C.css(e, t[r], !1, n);
              return o
            }
            return void 0 !== i ? C.style(e, t, i) : C.css(e, t)
          }, e, t, arguments.length > 1)
        }
      }), C.Tween = ot, ot.prototype = {
        constructor: ot,
        init: function(e, t, i, n, s, o) {
          this.elem = e, this.prop = i, this.easing = s || C.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = n, this.unit = o || (C.cssNumber[i] ? "" : "px")
        },
        cur: function() {
          var e = ot.propHooks[this.prop];
          return e && e.get ? e.get(this) : ot.propHooks._default.get(this)
        },
        run: function(e) {
          var t, i = ot.propHooks[this.prop];
          return this.options.duration ? this.pos = t = C.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), i && i.set ? i.set(this) : ot.propHooks._default.set(this), this
        }
      }, ot.prototype.init.prototype = ot.prototype, ot.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 = C.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0
          },
          set: function(e) {
            C.fx.step[e.prop] ? C.fx.step[e.prop](e) : 1 !== e.elem.nodeType || !C.cssHooks[e.prop] && null == e.elem.style[Ze(e.prop)] ? e.elem[e.prop] = e.now : C.style(e.elem, e.prop, e.now + e.unit)
          }
        }
      }, ot.propHooks.scrollTop = ot.propHooks.scrollLeft = {
        set: function(e) {
          e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
        }
      }, C.easing = {
        linear: function(e) {
          return e
        },
        swing: function(e) {
          return .5 - Math.cos(e * Math.PI) / 2
        },
        _default: "swing"
      }, C.fx = ot.prototype.init, C.fx.step = {};
      var rt, at, lt = /^(?:toggle|show|hide)$/,
        ct = /queueHooks$/;

      function dt() {
        at && (!1 === r.hidden && i.requestAnimationFrame ? i.requestAnimationFrame(dt) : i.setTimeout(dt, C.fx.interval), C.fx.tick())
      }

      function ut() {
        return i.setTimeout(function() {
          rt = void 0
        }), rt = Date.now()
      }

      function pt(e, t) {
        var i, n = 0,
          s = {
            height: e
          };
        for (t = t ? 1 : 0; n < 4; n += 2 - t) s["margin" + (i = oe[n])] = s["padding" + i] = e;
        return t && (s.opacity = s.width = e), s
      }

      function ht(e, t, i) {
        for (var n, s = (ft.tweeners[t] || []).concat(ft.tweeners["*"]), o = 0, r = s.length; o < r; o++)
          if (n = s[o].call(i, t, e)) return n
      }

      function ft(e, t, i) {
        var n, s, o = 0,
          r = ft.prefilters.length,
          a = C.Deferred().always(function() {
            delete l.elem
          }),
          l = function() {
            if (s) return !1;
            for (var t = rt || ut(), i = Math.max(0, c.startTime + c.duration - t), n = 1 - (i / c.duration || 0), o = 0, r = c.tweens.length; o < r; o++) c.tweens[o].run(n);
            return a.notifyWith(e, [c, n, i]), n < 1 && r ? i : (r || a.notifyWith(e, [c, 1, 0]), a.resolveWith(e, [c]), !1)
          },
          c = a.promise({
            elem: e,
            props: C.extend({}, t),
            opts: C.extend(!0, {
              specialEasing: {},
              easing: C.easing._default
            }, i),
            originalProperties: t,
            originalOptions: i,
            startTime: rt || ut(),
            duration: i.duration,
            tweens: [],
            createTween: function(t, i) {
              var n = C.Tween(e, c.opts, t, i, c.opts.specialEasing[t] || c.opts.easing);
              return c.tweens.push(n), n
            },
            stop: function(t) {
              var i = 0,
                n = t ? c.tweens.length : 0;
              if (s) return this;
              for (s = !0; i < n; i++) c.tweens[i].run(1);
              return t ? (a.notifyWith(e, [c, 1, 0]), a.resolveWith(e, [c, t])) : a.rejectWith(e, [c, t]), this
            }
          }),
          d = c.props;
        for (! function(e, t) {
            var i, n, s, o, r;
            for (i in e)
              if (s = t[n = G(i)], o = e[i], Array.isArray(o) && (s = o[1], o = e[i] = o[0]), i !== n && (e[n] = o, delete e[i]), (r = C.cssHooks[n]) && "expand" in r)
                for (i in o = r.expand(o), delete e[n], o) i in e || (e[i] = o[i], t[i] = s);
              else t[n] = s
          }(d, c.opts.specialEasing); o < r; o++)
          if (n = ft.prefilters[o].call(c, e, d, c.opts)) return y(n.stop) && (C._queueHooks(c.elem, c.opts.queue).stop = n.stop.bind(n)), n;
        return C.map(d, ht, c), y(c.opts.start) && c.opts.start.call(e, c), c.progress(c.opts.progress).done(c.opts.done, c.opts.complete).fail(c.opts.fail).always(c.opts.always), C.fx.timer(C.extend(l, {
          elem: e,
          anim: c,
          queue: c.opts.queue
        })), c
      }
      C.Animation = C.extend(ft, {
          tweeners: {
            "*": [function(e, t) {
              var i = this.createTween(e, t);
              return ue(i.elem, e, se.exec(t), i), i
            }]
          },
          tweener: function(e, t) {
            y(e) ? (t = e, e = ["*"]) : e = e.match(N);
            for (var i, n = 0, s = e.length; n < s; n++) i = e[n], ft.tweeners[i] = ft.tweeners[i] || [], ft.tweeners[i].unshift(t)
          },
          prefilters: [function(e, t, i) {
            var n, s, o, r, a, l, c, d, u = "width" in t || "height" in t,
              p = this,
              h = {},
              f = e.style,
              g = e.nodeType && ce(e),
              v = J.get(e, "fxshow");
            for (n in i.queue || (null == (r = C._queueHooks(e, "fx")).unqueued && (r.unqueued = 0, a = r.empty.fire, r.empty.fire = function() {
                r.unqueued || a()
              }), r.unqueued++, p.always(function() {
                p.always(function() {
                  r.unqueued--, C.queue(e, "fx").length || r.empty.fire()
                })
              })), t)
              if (s = t[n], lt.test(s)) {
                if (delete t[n], o = o || "toggle" === s, s === (g ? "hide" : "show")) {
                  if ("show" !== s || !v || void 0 === v[n]) continue;
                  g = !0
                }
                h[n] = v && v[n] || C.style(e, n)
              } if ((l = !C.isEmptyObject(t)) || !C.isEmptyObject(h))
              for (n in u && 1 === e.nodeType && (i.overflow = [f.overflow, f.overflowX, f.overflowY], null == (c = v && v.display) && (c = J.get(e, "display")), "none" === (d = C.css(e, "display")) && (c ? d = c : (fe([e], !0), c = e.style.display || c, d = C.css(e, "display"), fe([e]))), ("inline" === d || "inline-block" === d && null != c) && "none" === C.css(e, "float") && (l || (p.done(function() {
                  f.display = c
                }), null == c && (d = f.display, c = "none" === d ? "" : d)), f.display = "inline-block")), i.overflow && (f.overflow = "hidden", p.always(function() {
                  f.overflow = i.overflow[0], f.overflowX = i.overflow[1], f.overflowY = i.overflow[2]
                })), l = !1, h) l || (v ? "hidden" in v && (g = v.hidden) : v = J.access(e, "fxshow", {
                display: c
              }), o && (v.hidden = !g), g && fe([e], !0), p.done(function() {
                for (n in g || fe([e]), J.remove(e, "fxshow"), h) C.style(e, n, h[n])
              })), l = ht(g ? v[n] : 0, n, p), n in v || (v[n] = l.start, g && (l.end = l.start, l.start = 0))
          }],
          prefilter: function(e, t) {
            t ? ft.prefilters.unshift(e) : ft.prefilters.push(e)
          }
        }), C.speed = function(e, t, i) {
          var n = e && "object" == typeof e ? C.extend({}, e) : {
            complete: i || !i && t || y(e) && e,
            duration: e,
            easing: i && t || t && !y(t) && t
          };
          return C.fx.off ? n.duration = 0 : "number" != typeof n.duration && (n.duration in C.fx.speeds ? n.duration = C.fx.speeds[n.duration] : n.duration = C.fx.speeds._default), null != n.queue && !0 !== n.queue || (n.queue = "fx"), n.old = n.complete, n.complete = function() {
            y(n.old) && n.old.call(this), n.queue && C.dequeue(this, n.queue)
          }, n
        }, C.fn.extend({
          fadeTo: function(e, t, i, n) {
            return this.filter(ce).css("opacity", 0).show().end().animate({
              opacity: t
            }, e, i, n)
          },
          animate: function(e, t, i, n) {
            var s = C.isEmptyObject(e),
              o = C.speed(t, i, n),
              r = function() {
                var t = ft(this, C.extend({}, e), o);
                (s || J.get(this, "finish")) && t.stop(!0)
              };
            return r.finish = r, s || !1 === o.queue ? this.each(r) : this.queue(o.queue, r)
          },
          stop: function(e, t, i) {
            var n = function(e) {
              var t = e.stop;
              delete e.stop, t(i)
            };
            return "string" != typeof e && (i = t, t = e, e = void 0), t && !1 !== e && this.queue(e || "fx", []), this.each(function() {
              var t = !0,
                s = null != e && e + "queueHooks",
                o = C.timers,
                r = J.get(this);
              if (s) r[s] && r[s].stop && n(r[s]);
              else
                for (s in r) r[s] && r[s].stop && ct.test(s) && n(r[s]);
              for (s = o.length; s--;) o[s].elem !== this || null != e && o[s].queue !== e || (o[s].anim.stop(i), t = !1, o.splice(s, 1));
              !t && i || C.dequeue(this, e)
            })
          },
          finish: function(e) {
            return !1 !== e && (e = e || "fx"), this.each(function() {
              var t, i = J.get(this),
                n = i[e + "queue"],
                s = i[e + "queueHooks"],
                o = C.timers,
                r = n ? n.length : 0;
              for (i.finish = !0, C.queue(this, e, []), s && s.stop && s.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 < r; t++) n[t] && n[t].finish && n[t].finish.call(this);
              delete i.finish
            })
          }
        }), C.each(["toggle", "show", "hide"], function(e, t) {
          var i = C.fn[t];
          C.fn[t] = function(e, n, s) {
            return null == e || "boolean" == typeof e ? i.apply(this, arguments) : this.animate(pt(t, !0), e, n, s)
          }
        }), C.each({
          slideDown: pt("show"),
          slideUp: pt("hide"),
          slideToggle: pt("toggle"),
          fadeIn: {
            opacity: "show"
          },
          fadeOut: {
            opacity: "hide"
          },
          fadeToggle: {
            opacity: "toggle"
          }
        }, function(e, t) {
          C.fn[e] = function(e, i, n) {
            return this.animate(t, e, i, n)
          }
        }), C.timers = [], C.fx.tick = function() {
          var e, t = 0,
            i = C.timers;
          for (rt = Date.now(); t < i.length; t++)(e = i[t])() || i[t] !== e || i.splice(t--, 1);
          i.length || C.fx.stop(), rt = void 0
        }, C.fx.timer = function(e) {
          C.timers.push(e), C.fx.start()
        }, C.fx.interval = 13, C.fx.start = function() {
          at || (at = !0, dt())
        }, C.fx.stop = function() {
          at = null
        }, C.fx.speeds = {
          slow: 600,
          fast: 200,
          _default: 400
        }, C.fn.delay = function(e, t) {
          return e = C.fx && C.fx.speeds[e] || e, t = t || "fx", this.queue(t, function(t, n) {
            var s = i.setTimeout(t, e);
            n.stop = function() {
              i.clearTimeout(s)
            }
          })
        },
        function() {
          var e = r.createElement("input"),
            t = r.createElement("select").appendChild(r.createElement("option"));
          e.type = "checkbox", m.checkOn = "" !== e.value, m.optSelected = t.selected, (e = r.createElement("input")).value = "t", e.type = "radio", m.radioValue = "t" === e.value
        }();
      var gt, vt = C.expr.attrHandle;
      C.fn.extend({
        attr: function(e, t) {
          return U(this, C.attr, e, t, arguments.length > 1)
        },
        removeAttr: function(e) {
          return this.each(function() {
            C.removeAttr(this, e)
          })
        }
      }), C.extend({
        attr: function(e, t, i) {
          var n, s, o = e.nodeType;
          if (3 !== o && 8 !== o && 2 !== o) return void 0 === e.getAttribute ? C.prop(e, t, i) : (1 === o && C.isXMLDoc(e) || (s = C.attrHooks[t.toLowerCase()] || (C.expr.match.bool.test(t) ? gt : void 0)), void 0 !== i ? null === i ? void C.removeAttr(e, t) : s && "set" in s && void 0 !== (n = s.set(e, i, t)) ? n : (e.setAttribute(t, i + ""), i) : s && "get" in s && null !== (n = s.get(e, t)) ? n : null == (n = C.find.attr(e, t)) ? void 0 : n)
        },
        attrHooks: {
          type: {
            set: function(e, t) {
              if (!m.radioValue && "radio" === t && D(e, "input")) {
                var i = e.value;
                return e.setAttribute("type", t), i && (e.value = i), t
              }
            }
          }
        },
        removeAttr: function(e, t) {
          var i, n = 0,
            s = t && t.match(N);
          if (s && 1 === e.nodeType)
            for (; i = s[n++];) e.removeAttribute(i)
        }
      }), gt = {
        set: function(e, t, i) {
          return !1 === t ? C.removeAttr(e, i) : e.setAttribute(i, i), i
        }
      }, C.each(C.expr.match.bool.source.match(/\w+/g), function(e, t) {
        var i = vt[t] || C.find.attr;
        vt[t] = function(e, t, n) {
          var s, o, r = t.toLowerCase();
          return n || (o = vt[r], vt[r] = s, s = null != i(e, t, n) ? r : null, vt[r] = o), s
        }
      });
      var mt = /^(?:input|select|textarea|button)$/i,
        yt = /^(?:a|area)$/i;

      function wt(e) {
        return (e.match(N) || []).join(" ")
      }

      function xt(e) {
        return e.getAttribute && e.getAttribute("class") || ""
      }

      function bt(e) {
        return Array.isArray(e) ? e : "string" == typeof e && e.match(N) || []
      }
      C.fn.extend({
        prop: function(e, t) {
          return U(this, C.prop, e, t, arguments.length > 1)
        },
        removeProp: function(e) {
          return this.each(function() {
            delete this[C.propFix[e] || e]
          })
        }
      }), C.extend({
        prop: function(e, t, i) {
          var n, s, o = e.nodeType;
          if (3 !== o && 8 !== o && 2 !== o) return 1 === o && C.isXMLDoc(e) || (t = C.propFix[t] || t, s = C.propHooks[t]), void 0 !== i ? s && "set" in s && void 0 !== (n = s.set(e, i, t)) ? n : e[t] = i : s && "get" in s && null !== (n = s.get(e, t)) ? n : e[t]
        },
        propHooks: {
          tabIndex: {
            get: function(e) {
              var t = C.find.attr(e, "tabindex");
              return t ? parseInt(t, 10) : mt.test(e.nodeName) || yt.test(e.nodeName) && e.href ? 0 : -1
            }
          }
        },
        propFix: {
          for: "htmlFor",
          class: "className"
        }
      }), m.optSelected || (C.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)
        }
      }), C.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() {
        C.propFix[this.toLowerCase()] = this
      }), C.fn.extend({
        addClass: function(e) {
          var t, i, n, s, o, r, a, l = 0;
          if (y(e)) return this.each(function(t) {
            C(this).addClass(e.call(this, t, xt(this)))
          });
          if ((t = bt(e)).length)
            for (; i = this[l++];)
              if (s = xt(i), n = 1 === i.nodeType && " " + wt(s) + " ") {
                for (r = 0; o = t[r++];) n.indexOf(" " + o + " ") < 0 && (n += o + " ");
                s !== (a = wt(n)) && i.setAttribute("class", a)
              } return this
        },
        removeClass: function(e) {
          var t, i, n, s, o, r, a, l = 0;
          if (y(e)) return this.each(function(t) {
            C(this).removeClass(e.call(this, t, xt(this)))
          });
          if (!arguments.length) return this.attr("class", "");
          if ((t = bt(e)).length)
            for (; i = this[l++];)
              if (s = xt(i), n = 1 === i.nodeType && " " + wt(s) + " ") {
                for (r = 0; o = t[r++];)
                  for (; n.indexOf(" " + o + " ") > -1;) n = n.replace(" " + o + " ", " ");
                s !== (a = wt(n)) && i.setAttribute("class", a)
              } return this
        },
        toggleClass: function(e, t) {
          var i = typeof e,
            n = "string" === i || Array.isArray(e);
          return "boolean" == typeof t && n ? t ? this.addClass(e) : this.removeClass(e) : y(e) ? this.each(function(i) {
            C(this).toggleClass(e.call(this, i, xt(this), t), t)
          }) : this.each(function() {
            var t, s, o, r;
            if (n)
              for (s = 0, o = C(this), r = bt(e); t = r[s++];) o.hasClass(t) ? o.removeClass(t) : o.addClass(t);
            else void 0 !== e && "boolean" !== i || ((t = xt(this)) && J.set(this, "__className__", t), this.setAttribute && this.setAttribute("class", t || !1 === e ? "" : J.get(this, "__className__") || ""))
          })
        },
        hasClass: function(e) {
          var t, i, n = 0;
          for (t = " " + e + " "; i = this[n++];)
            if (1 === i.nodeType && (" " + wt(xt(i)) + " ").indexOf(t) > -1) return !0;
          return !1
        }
      });
      var Tt = /\r/g;
      C.fn.extend({
        val: function(e) {
          var t, i, n, s = this[0];
          return arguments.length ? (n = y(e), this.each(function(i) {
            var s;
            1 === this.nodeType && (null == (s = n ? e.call(this, i, C(this).val()) : e) ? s = "" : "number" == typeof s ? s += "" : Array.isArray(s) && (s = C.map(s, function(e) {
              return null == e ? "" : e + ""
            })), (t = C.valHooks[this.type] || C.valHooks[this.nodeName.toLowerCase()]) && "set" in t && void 0 !== t.set(this, s, "value") || (this.value = s))
          })) : s ? (t = C.valHooks[s.type] || C.valHooks[s.nodeName.toLowerCase()]) && "get" in t && void 0 !== (i = t.get(s, "value")) ? i : "string" == typeof(i = s.value) ? i.replace(Tt, "") : null == i ? "" : i : void 0
        }
      }), C.extend({
        valHooks: {
          option: {
            get: function(e) {
              var t = C.find.attr(e, "value");
              return null != t ? t : wt(C.text(e))
            }
          },
          select: {
            get: function(e) {
              var t, i, n, s = e.options,
                o = e.selectedIndex,
                r = "select-one" === e.type,
                a = r ? null : [],
                l = r ? o + 1 : s.length;
              for (n = o < 0 ? l : r ? o : 0; n < l; n++)
                if (((i = s[n]).selected || n === o) && !i.disabled && (!i.parentNode.disabled || !D(i.parentNode, "optgroup"))) {
                  if (t = C(i).val(), r) return t;
                  a.push(t)
                } return a
            },
            set: function(e, t) {
              for (var i, n, s = e.options, o = C.makeArray(t), r = s.length; r--;)((n = s[r]).selected = C.inArray(C.valHooks.option.get(n), o) > -1) && (i = !0);
              return i || (e.selectedIndex = -1), o
            }
          }
        }
      }), C.each(["radio", "checkbox"], function() {
        C.valHooks[this] = {
          set: function(e, t) {
            if (Array.isArray(t)) return e.checked = C.inArray(C(e).val(), t) > -1
          }
        }, m.checkOn || (C.valHooks[this].get = function(e) {
          return null === e.getAttribute("value") ? "on" : e.value
        })
      }), m.focusin = "onfocusin" in i;
      var Ct = /^(?:focusinfocus|focusoutblur)$/,
        _t = function(e) {
          e.stopPropagation()
        };
      C.extend(C.event, {
        trigger: function(e, t, n, s) {
          var o, a, l, c, d, u, p, h, g = [n || r],
            v = f.call(e, "type") ? e.type : e,
            m = f.call(e, "namespace") ? e.namespace.split(".") : [];
          if (a = h = l = n = n || r, 3 !== n.nodeType && 8 !== n.nodeType && !Ct.test(v + C.event.triggered) && (v.indexOf(".") > -1 && (m = v.split("."), v = m.shift(), m.sort()), d = v.indexOf(":") < 0 && "on" + v, (e = e[C.expando] ? e : new C.Event(v, "object" == typeof e && e)).isTrigger = s ? 2 : 3, e.namespace = m.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + m.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : C.makeArray(t, [e]), p = C.event.special[v] || {}, s || !p.trigger || !1 !== p.trigger.apply(n, t))) {
            if (!s && !p.noBubble && !w(n)) {
              for (c = p.delegateType || v, Ct.test(c + v) || (a = a.parentNode); a; a = a.parentNode) g.push(a), l = a;
              l === (n.ownerDocument || r) && g.push(l.defaultView || l.parentWindow || i)
            }
            for (o = 0;
              (a = g[o++]) && !e.isPropagationStopped();) h = a, e.type = o > 1 ? c : p.bindType || v, (u = (J.get(a, "events") || {})[e.type] && J.get(a, "handle")) && u.apply(a, t), (u = d && a[d]) && u.apply && Q(a) && (e.result = u.apply(a, t), !1 === e.result && e.preventDefault());
            return e.type = v, s || e.isDefaultPrevented() || p._default && !1 !== p._default.apply(g.pop(), t) || !Q(n) || d && y(n[v]) && !w(n) && ((l = n[d]) && (n[d] = null), C.event.triggered = v, e.isPropagationStopped() && h.addEventListener(v, _t), n[v](), e.isPropagationStopped() && h.removeEventListener(v, _t), C.event.triggered = void 0, l && (n[d] = l)), e.result
          }
        },
        simulate: function(e, t, i) {
          var n = C.extend(new C.Event, i, {
            type: e,
            isSimulated: !0
          });
          C.event.trigger(n, null, t)
        }
      }), C.fn.extend({
        trigger: function(e, t) {
          return this.each(function() {
            C.event.trigger(e, t, this)
          })
        },
        triggerHandler: function(e, t) {
          var i = this[0];
          if (i) return C.event.trigger(e, t, i, !0)
        }
      }), m.focusin || C.each({
        focus: "focusin",
        blur: "focusout"
      }, function(e, t) {
        var i = function(e) {
          C.event.simulate(t, e.target, C.event.fix(e))
        };
        C.event.special[t] = {
          setup: function() {
            var n = this.ownerDocument || this,
              s = J.access(n, t);
            s || n.addEventListener(e, i, !0), J.access(n, t, (s || 0) + 1)
          },
          teardown: function() {
            var n = this.ownerDocument || this,
              s = J.access(n, t) - 1;
            s ? J.access(n, t, s) : (n.removeEventListener(e, i, !0), J.remove(n, t))
          }
        }
      });
      var kt = i.location,
        St = Date.now(),
        $t = /\?/;
      C.parseXML = function(e) {
        var t;
        if (!e || "string" != typeof e) return null;
        try {
          t = (new i.DOMParser).parseFromString(e, "text/xml")
        } catch (e) {
          t = void 0
        }
        return t && !t.getElementsByTagName("parsererror").length || C.error("Invalid XML: " + e), t
      };
      var At = /\[\]$/,
        Et = /\r?\n/g,
        Dt = /^(?:submit|button|image|reset|file)$/i,
        Ht = /^(?:input|select|textarea|keygen)/i;

      function zt(e, t, i, n) {
        var s;
        if (Array.isArray(t)) C.each(t, function(t, s) {
          i || At.test(e) ? n(e, s) : zt(e + "[" + ("object" == typeof s && null != s ? t : "") + "]", s, i, n)
        });
        else if (i || "object" !== T(t)) n(e, t);
        else
          for (s in t) zt(e + "[" + s + "]", t[s], i, n)
      }
      C.param = function(e, t) {
        var i, n = [],
          s = function(e, t) {
            var i = y(t) ? t() : t;
            n[n.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == i ? "" : i)
          };
        if (null == e) return "";
        if (Array.isArray(e) || e.jquery && !C.isPlainObject(e)) C.each(e, function() {
          s(this.name, this.value)
        });
        else
          for (i in e) zt(i, e[i], t, s);
        return n.join("&")
      }, C.fn.extend({
        serialize: function() {
          return C.param(this.serializeArray())
        },
        serializeArray: function() {
          return this.map(function() {
            var e = C.prop(this, "elements");
            return e ? C.makeArray(e) : this
          }).filter(function() {
            var e = this.type;
            return this.name && !C(this).is(":disabled") && Ht.test(this.nodeName) && !Dt.test(e) && (this.checked || !ge.test(e))
          }).map(function(e, t) {
            var i = C(this).val();
            return null == i ? null : Array.isArray(i) ? C.map(i, function(e) {
              return {
                name: t.name,
                value: e.replace(Et, "\r\n")
              }
            }) : {
              name: t.name,
              value: i.replace(Et, "\r\n")
            }
          }).get()
        }
      });
      var jt = /%20/g,
        Lt = /#.*$/,
        Pt = /([?&])_=[^&]*/,
        Ot = /^(.*?):[ \t]*([^\r\n]*)$/gm,
        Mt = /^(?:GET|HEAD)$/,
        Nt = /^\/\//,
        qt = {},
        It = {},
        Rt = "*/".concat("*"),
        Wt = r.createElement("a");

      function Bt(e) {
        return function(t, i) {
          "string" != typeof t && (i = t, t = "*");
          var n, s = 0,
            o = t.toLowerCase().match(N) || [];
          if (y(i))
            for (; n = o[s++];) "+" === n[0] ? (n = n.slice(1) || "*", (e[n] = e[n] || []).unshift(i)) : (e[n] = e[n] || []).push(i)
        }
      }

      function Ft(e, t, i, n) {
        var s = {},
          o = e === It;

        function r(a) {
          var l;
          return s[a] = !0, C.each(e[a] || [], function(e, a) {
            var c = a(t, i, n);
            return "string" != typeof c || o || s[c] ? o ? !(l = c) : void 0 : (t.dataTypes.unshift(c), r(c), !1)
          }), l
        }
        return r(t.dataTypes[0]) || !s["*"] && r("*")
      }

      function Ut(e, t) {
        var i, n, s = C.ajaxSettings.flatOptions || {};
        for (i in t) void 0 !== t[i] && ((s[i] ? e : n || (n = {}))[i] = t[i]);
        return n && C.extend(!0, e, n), e
      }
      Wt.href = kt.href, C.extend({
        active: 0,
        lastModified: {},
        etag: {},
        ajaxSettings: {
          url: kt.href,
          type: "GET",
          isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(kt.protocol),
          global: !0,
          processData: !0,
          async: !0,
          contentType: "application/x-www-form-urlencoded; charset=UTF-8",
          accepts: {
            "*": Rt,
            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": C.parseXML
          },
          flatOptions: {
            url: !0,
            context: !0
          }
        },
        ajaxSetup: function(e, t) {
          return t ? Ut(Ut(e, C.ajaxSettings), t) : Ut(C.ajaxSettings, e)
        },
        ajaxPrefilter: Bt(qt),
        ajaxTransport: Bt(It),
        ajax: function(e, t) {
          "object" == typeof e && (t = e, e = void 0), t = t || {};
          var n, s, o, a, l, c, d, u, p, h, f = C.ajaxSetup({}, t),
            g = f.context || f,
            v = f.context && (g.nodeType || g.jquery) ? C(g) : C.event,
            m = C.Deferred(),
            y = C.Callbacks("once memory"),
            w = f.statusCode || {},
            x = {},
            b = {},
            T = "canceled",
            _ = {
              readyState: 0,
              getResponseHeader: function(e) {
                var t;
                if (d) {
                  if (!a)
                    for (a = {}; t = Ot.exec(o);) a[t[1].toLowerCase() + " "] = (a[t[1].toLowerCase() + " "] || []).concat(t[2]);
                  t = a[e.toLowerCase() + " "]
                }
                return null == t ? null : t.join(", ")
              },
              getAllResponseHeaders: function() {
                return d ? o : null
              },
              setRequestHeader: function(e, t) {
                return null == d && (e = b[e.toLowerCase()] = b[e.toLowerCase()] || e, x[e] = t), this
              },
              overrideMimeType: function(e) {
                return null == d && (f.mimeType = e), this
              },
              statusCode: function(e) {
                var t;
                if (e)
                  if (d) _.always(e[_.status]);
                  else
                    for (t in e) w[t] = [w[t], e[t]];
                return this
              },
              abort: function(e) {
                var t = e || T;
                return n && n.abort(t), k(0, t), this
              }
            };
          if (m.promise(_), f.url = ((e || f.url || kt.href) + "").replace(Nt, kt.protocol + "//"), f.type = t.method || t.type || f.method || f.type, f.dataTypes = (f.dataType || "*").toLowerCase().match(N) || [""], null == f.crossDomain) {
            c = r.createElement("a");
            try {
              c.href = f.url, c.href = c.href, f.crossDomain = Wt.protocol + "//" + Wt.host != c.protocol + "//" + c.host
            } catch (e) {
              f.crossDomain = !0
            }
          }
          if (f.data && f.processData && "string" != typeof f.data && (f.data = C.param(f.data, f.traditional)), Ft(qt, f, t, _), d) return _;
          for (p in (u = C.event && f.global) && 0 == C.active++ && C.event.trigger("ajaxStart"), f.type = f.type.toUpperCase(), f.hasContent = !Mt.test(f.type), s = f.url.replace(Lt, ""), f.hasContent ? f.data && f.processData && 0 === (f.contentType || "").indexOf("application/x-www-form-urlencoded") && (f.data = f.data.replace(jt, "+")) : (h = f.url.slice(s.length), f.data && (f.processData || "string" == typeof f.data) && (s += ($t.test(s) ? "&" : "?") + f.data, delete f.data), !1 === f.cache && (s = s.replace(Pt, "$1"), h = ($t.test(s) ? "&" : "?") + "_=" + St++ + h), f.url = s + h), f.ifModified && (C.lastModified[s] && _.setRequestHeader("If-Modified-Since", C.lastModified[s]), C.etag[s] && _.setRequestHeader("If-None-Match", C.etag[s])), (f.data && f.hasContent && !1 !== f.contentType || t.contentType) && _.setRequestHeader("Content-Type", f.contentType), _.setRequestHeader("Accept", f.dataTypes[0] && f.accepts[f.dataTypes[0]] ? f.accepts[f.dataTypes[0]] + ("*" !== f.dataTypes[0] ? ", " + Rt + "; q=0.01" : "") : f.accepts["*"]), f.headers) _.setRequestHeader(p, f.headers[p]);
          if (f.beforeSend && (!1 === f.beforeSend.call(g, _, f) || d)) return _.abort();
          if (T = "abort", y.add(f.complete), _.done(f.success), _.fail(f.error), n = Ft(It, f, t, _)) {
            if (_.readyState = 1, u && v.trigger("ajaxSend", [_, f]), d) return _;
            f.async && f.timeout > 0 && (l = i.setTimeout(function() {
              _.abort("timeout")
            }, f.timeout));
            try {
              d = !1, n.send(x, k)
            } catch (e) {
              if (d) throw e;
              k(-1, e)
            }
          } else k(-1, "No Transport");

          function k(e, t, r, a) {
            var c, p, h, x, b, T = t;
            d || (d = !0, l && i.clearTimeout(l), n = void 0, o = a || "", _.readyState = e > 0 ? 4 : 0, c = e >= 200 && e < 300 || 304 === e, r && (x = function(e, t, i) {
              for (var n, s, o, r, a = e.contents, l = e.dataTypes;
                "*" === l[0];) l.shift(), void 0 === n && (n = e.mimeType || t.getResponseHeader("Content-Type"));
              if (n)
                for (s in a)
                  if (a[s] && a[s].test(n)) {
                    l.unshift(s);
                    break
                  } if (l[0] in i) o = l[0];
              else {
                for (s in i) {
                  if (!l[0] || e.converters[s + " " + l[0]]) {
                    o = s;
                    break
                  }
                  r || (r = s)
                }
                o = o || r
              }
              if (o) return o !== l[0] && l.unshift(o), i[o]
            }(f, _, r)), x = function(e, t, i, n) {
              var s, o, r, a, l, c = {},
                d = e.dataTypes.slice();
              if (d[1])
                for (r in e.converters) c[r.toLowerCase()] = e.converters[r];
              for (o = d.shift(); o;)
                if (e.responseFields[o] && (i[e.responseFields[o]] = t), !l && n && e.dataFilter && (t = e.dataFilter(t, e.dataType)), l = o, o = d.shift())
                  if ("*" === o) o = l;
                  else if ("*" !== l && l !== o) {
                if (!(r = c[l + " " + o] || c["* " + o]))
                  for (s in c)
                    if ((a = s.split(" "))[1] === o && (r = c[l + " " + a[0]] || c["* " + a[0]])) {
                      !0 === r ? r = c[s] : !0 !== c[s] && (o = a[0], d.unshift(a[1]));
                      break
                    } if (!0 !== r)
                  if (r && e.throws) t = r(t);
                  else try {
                    t = r(t)
                  } catch (e) {
                    return {
                      state: "parsererror",
                      error: r ? e : "No conversion from " + l + " to " + o
                    }
                  }
              }
              return {
                state: "success",
                data: t
              }
            }(f, x, _, c), c ? (f.ifModified && ((b = _.getResponseHeader("Last-Modified")) && (C.lastModified[s] = b), (b = _.getResponseHeader("etag")) && (C.etag[s] = b)), 204 === e || "HEAD" === f.type ? T = "nocontent" : 304 === e ? T = "notmodified" : (T = x.state, p = x.data, c = !(h = x.error))) : (h = T, !e && T || (T = "error", e < 0 && (e = 0))), _.status = e, _.statusText = (t || T) + "", c ? m.resolveWith(g, [p, T, _]) : m.rejectWith(g, [_, T, h]), _.statusCode(w), w = void 0, u && v.trigger(c ? "ajaxSuccess" : "ajaxError", [_, f, c ? p : h]), y.fireWith(g, [_, T]), u && (v.trigger("ajaxComplete", [_, f]), --C.active || C.event.trigger("ajaxStop")))
          }
          return _
        },
        getJSON: function(e, t, i) {
          return C.get(e, t, i, "json")
        },
        getScript: function(e, t) {
          return C.get(e, void 0, t, "script")
        }
      }), C.each(["get", "post"], function(e, t) {
        C[t] = function(e, i, n, s) {
          return y(i) && (s = s || n, n = i, i = void 0), C.ajax(C.extend({
            url: e,
            type: t,
            dataType: s,
            data: i,
            success: n
          }, C.isPlainObject(e) && e))
        }
      }), C._evalUrl = function(e, t) {
        return C.ajax({
          url: e,
          type: "GET",
          dataType: "script",
          cache: !0,
          async: !1,
          global: !1,
          converters: {
            "text script": function() {}
          },
          dataFilter: function(e) {
            C.globalEval(e, t)
          }
        })
      }, C.fn.extend({
        wrapAll: function(e) {
          var t;
          return this[0] && (y(e) && (e = e.call(this[0])), t = C(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 y(e) ? this.each(function(t) {
            C(this).wrapInner(e.call(this, t))
          }) : this.each(function() {
            var t = C(this),
              i = t.contents();
            i.length ? i.wrapAll(e) : t.append(e)
          })
        },
        wrap: function(e) {
          var t = y(e);
          return this.each(function(i) {
            C(this).wrapAll(t ? e.call(this, i) : e)
          })
        },
        unwrap: function(e) {
          return this.parent(e).not("body").each(function() {
            C(this).replaceWith(this.childNodes)
          }), this
        }
      }), C.expr.pseudos.hidden = function(e) {
        return !C.expr.pseudos.visible(e)
      }, C.expr.pseudos.visible = function(e) {
        return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length)
      }, C.ajaxSettings.xhr = function() {
        try {
          return new i.XMLHttpRequest
        } catch (e) {}
      };
      var Xt = {
          0: 200,
          1223: 204
        },
        Yt = C.ajaxSettings.xhr();
      m.cors = !!Yt && "withCredentials" in Yt, m.ajax = Yt = !!Yt, C.ajaxTransport(function(e) {
        var t, n;
        if (m.cors || Yt && !e.crossDomain) return {
          send: function(s, o) {
            var r, a = e.xhr();
            if (a.open(e.type, e.url, e.async, e.username, e.password), e.xhrFields)
              for (r in e.xhrFields) a[r] = e.xhrFields[r];
            for (r in e.mimeType && a.overrideMimeType && a.overrideMimeType(e.mimeType), e.crossDomain || s["X-Requested-With"] || (s["X-Requested-With"] = "XMLHttpRequest"), s) a.setRequestHeader(r, s[r]);
            t = function(e) {
              return function() {
                t && (t = n = 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(Xt[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(), n = a.onerror = a.ontimeout = t("error"), void 0 !== a.onabort ? a.onabort = n : a.onreadystatechange = function() {
              4 === a.readyState && i.setTimeout(function() {
                t && n()
              })
            }, t = t("abort");
            try {
              a.send(e.hasContent && e.data || null)
            } catch (e) {
              if (t) throw e
            }
          },
          abort: function() {
            t && t()
          }
        }
      }), C.ajaxPrefilter(function(e) {
        e.crossDomain && (e.contents.script = !1)
      }), C.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 C.globalEval(e), e
          }
        }
      }), C.ajaxPrefilter("script", function(e) {
        void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET")
      }), C.ajaxTransport("script", function(e) {
        var t, i;
        if (e.crossDomain || e.scriptAttrs) return {
          send: function(n, s) {
            t = C("<script>").attr(e.scriptAttrs || {}).prop({
              charset: e.scriptCharset,
              src: e.url
            }).on("load error", i = function(e) {
              t.remove(), i = null, e && s("error" === e.type ? 404 : 200, e.type)
            }), r.head.appendChild(t[0])
          },
          abort: function() {
            i && i()
          }
        }
      });
      var Vt, Gt = [],
        Qt = /(=)\?(?=&|$)|\?\?/;
      C.ajaxSetup({
        jsonp: "callback",
        jsonpCallback: function() {
          var e = Gt.pop() || C.expando + "_" + St++;
          return this[e] = !0, e
        }
      }), C.ajaxPrefilter("json jsonp", function(e, t, n) {
        var s, o, r, a = !1 !== e.jsonp && (Qt.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && Qt.test(e.data) && "data");
        if (a || "jsonp" === e.dataTypes[0]) return s = e.jsonpCallback = y(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, a ? e[a] = e[a].replace(Qt, "$1" + s) : !1 !== e.jsonp && (e.url += ($t.test(e.url) ? "&" : "?") + e.jsonp + "=" + s), e.converters["script json"] = function() {
          return r || C.error(s + " was not called"), r[0]
        }, e.dataTypes[0] = "json", o = i[s], i[s] = function() {
          r = arguments
        }, n.always(function() {
          void 0 === o ? C(i).removeProp(s) : i[s] = o, e[s] && (e.jsonpCallback = t.jsonpCallback, Gt.push(s)), r && y(o) && o(r[0]), r = o = void 0
        }), "script"
      }), m.createHTMLDocument = ((Vt = r.implementation.createHTMLDocument("").body).innerHTML = "<form></form><form></form>", 2 === Vt.childNodes.length), C.parseHTML = function(e, t, i) {
        return "string" != typeof e ? [] : ("boolean" == typeof t && (i = t, t = !1), t || (m.createHTMLDocument ? ((n = (t = r.implementation.createHTMLDocument("")).createElement("base")).href = r.location.href, t.head.appendChild(n)) : t = r), o = !i && [], (s = H.exec(e)) ? [t.createElement(s[1])] : (s = _e([e], t, o), o && o.length && C(o).remove(), C.merge([], s.childNodes)));
        var n, s, o
      }, C.fn.load = function(e, t, i) {
        var n, s, o, r = this,
          a = e.indexOf(" ");
        return a > -1 && (n = wt(e.slice(a)), e = e.slice(0, a)), y(t) ? (i = t, t = void 0) : t && "object" == typeof t && (s = "POST"), r.length > 0 && C.ajax({
          url: e,
          type: s || "GET",
          dataType: "html",
          data: t
        }).done(function(e) {
          o = arguments, r.html(n ? C("<div>").append(C.parseHTML(e)).find(n) : e)
        }).always(i && function(e, t) {
          r.each(function() {
            i.apply(this, o || [e.responseText, t, e])
          })
        }), this
      }, C.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(e, t) {
        C.fn[t] = function(e) {
          return this.on(t, e)
        }
      }), C.expr.pseudos.animated = function(e) {
        return C.grep(C.timers, function(t) {
          return e === t.elem
        }).length
      }, C.offset = {
        setOffset: function(e, t, i) {
          var n, s, o, r, a, l, c = C.css(e, "position"),
            d = C(e),
            u = {};
          "static" === c && (e.style.position = "relative"), a = d.offset(), o = C.css(e, "top"), l = C.css(e, "left"), ("absolute" === c || "fixed" === c) && (o + l).indexOf("auto") > -1 ? (r = (n = d.position()).top, s = n.left) : (r = parseFloat(o) || 0, s = parseFloat(l) || 0), y(t) && (t = t.call(e, i, C.extend({}, a))), null != t.top && (u.top = t.top - a.top + r), null != t.left && (u.left = t.left - a.left + s), "using" in t ? t.using.call(e, u) : d.css(u)
        }
      }, C.fn.extend({
        offset: function(e) {
          if (arguments.length) return void 0 === e ? this : this.each(function(t) {
            C.offset.setOffset(this, e, t)
          });
          var t, i, n = this[0];
          return n ? n.getClientRects().length ? (t = n.getBoundingClientRect(), i = n.ownerDocument.defaultView, {
            top: t.top + i.pageYOffset,
            left: t.left + i.pageXOffset
          }) : {
            top: 0,
            left: 0
          } : void 0
        },
        position: function() {
          if (this[0]) {
            var e, t, i, n = this[0],
              s = {
                top: 0,
                left: 0
              };
            if ("fixed" === C.css(n, "position")) t = n.getBoundingClientRect();
            else {
              for (t = this.offset(), i = n.ownerDocument, e = n.offsetParent || i.documentElement; e && (e === i.body || e === i.documentElement) && "static" === C.css(e, "position");) e = e.parentNode;
              e && e !== n && 1 === e.nodeType && ((s = C(e).offset()).top += C.css(e, "borderTopWidth", !0), s.left += C.css(e, "borderLeftWidth", !0))
            }
            return {
              top: t.top - s.top - C.css(n, "marginTop", !0),
              left: t.left - s.left - C.css(n, "marginLeft", !0)
            }
          }
        },
        offsetParent: function() {
          return this.map(function() {
            for (var e = this.offsetParent; e && "static" === C.css(e, "position");) e = e.offsetParent;
            return e || re
          })
        }
      }), C.each({
        scrollLeft: "pageXOffset",
        scrollTop: "pageYOffset"
      }, function(e, t) {
        var i = "pageYOffset" === t;
        C.fn[e] = function(n) {
          return U(this, function(e, n, s) {
            var o;
            if (w(e) ? o = e : 9 === e.nodeType && (o = e.defaultView), void 0 === s) return o ? o[t] : e[n];
            o ? o.scrollTo(i ? o.pageXOffset : s, i ? s : o.pageYOffset) : e[n] = s
          }, e, n, arguments.length)
        }
      }), C.each(["top", "left"], function(e, t) {
        C.cssHooks[t] = Ye(m.pixelPosition, function(e, i) {
          if (i) return i = Xe(e, t), Be.test(i) ? C(e).position()[t] + "px" : i
        })
      }), C.each({
        Height: "height",
        Width: "width"
      }, function(e, t) {
        C.each({
          padding: "inner" + e,
          content: t,
          "": "outer" + e
        }, function(i, n) {
          C.fn[n] = function(s, o) {
            var r = arguments.length && (i || "boolean" != typeof s),
              a = i || (!0 === s || !0 === o ? "margin" : "border");
            return U(this, function(t, i, s) {
              var o;
              return w(t) ? 0 === n.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 === s ? C.css(t, i, a) : C.style(t, i, s, a)
            }, t, r ? s : void 0, r)
          }
        })
      }), C.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) {
        C.fn[t] = function(e, i) {
          return arguments.length > 0 ? this.on(t, null, e, i) : this.trigger(t)
        }
      }), C.fn.extend({
        hover: function(e, t) {
          return this.mouseenter(e).mouseleave(t || e)
        }
      }), C.fn.extend({
        bind: function(e, t, i) {
          return this.on(e, null, t, i)
        },
        unbind: function(e, t) {
          return this.off(e, null, t)
        },
        delegate: function(e, t, i, n) {
          return this.on(t, e, i, n)
        },
        undelegate: function(e, t, i) {
          return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", i)
        }
      }), C.proxy = function(e, t) {
        var i, n, s;
        if ("string" == typeof t && (i = e[t], t = e, e = i), y(e)) return n = l.call(arguments, 2), (s = function() {
          return e.apply(t || this, n.concat(l.call(arguments)))
        }).guid = e.guid = e.guid || C.guid++, s
      }, C.holdReady = function(e) {
        e ? C.readyWait++ : C.ready(!0)
      }, C.isArray = Array.isArray, C.parseJSON = JSON.parse, C.nodeName = D, C.isFunction = y, C.isWindow = w, C.camelCase = G, C.type = T, C.now = Date.now, C.isNumeric = function(e) {
        var t = C.type(e);
        return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e))
      }, void 0 === (n = function() {
        return C
      }.apply(t, [])) || (e.exports = n);
      var Zt = i.jQuery,
        Jt = i.$;
      return C.noConflict = function(e) {
        return i.$ === C && (i.$ = Jt), e && i.jQuery === C && (i.jQuery = Zt), C
      }, s || (i.jQuery = i.$ = C), C
    })
  },
  YfKf: function(e, t, i) {
    var n;
    ! function(e) {
      var t, i, n, s, o, r, a, l = navigator.userAgent;
      e.HTMLPictureElement && /ecko/.test(l) && l.match(/rv\:(\d+)/) && RegExp.$1 < 45 && addEventListener("resize", (i = document.createElement("source"), n = function(e) {
        var t, n, s = e.parentNode;
        "PICTURE" === s.nodeName.toUpperCase() ? (t = i.cloneNode(), s.insertBefore(t, s.firstElementChild), setTimeout(function() {
          s.removeChild(t)
        })) : (!e._pfLastSize || e.offsetWidth > e._pfLastSize) && (e._pfLastSize = e.offsetWidth, n = e.sizes, e.sizes += ",100vw", setTimeout(function() {
          e.sizes = n
        }))
      }, s = function() {
        var e, t = document.querySelectorAll("picture > img, img[srcset][sizes]");
        for (e = 0; e < t.length; e++) n(t[e])
      }, o = function() {
        clearTimeout(t), t = setTimeout(s, 99)
      }, r = e.matchMedia && matchMedia("(orientation: landscape)"), a = function() {
        o(), r && r.addListener && r.addListener(o)
      }, i.srcset = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==", /^[c|i]|d$/.test(document.readyState || "") ? a() : document.addEventListener("DOMContentLoaded", a), o))
    }(window),
    function(s, o, r) {
      "use strict";
      var a, l, c;
      o.createElement("picture");
      var d = {},
        u = !1,
        p = function() {},
        h = o.createElement("img"),
        f = h.getAttribute,
        g = h.setAttribute,
        v = h.removeAttribute,
        m = o.documentElement,
        y = {},
        w = {
          algorithm: ""
        },
        x = navigator.userAgent,
        b = /rident/.test(x) || /ecko/.test(x) && x.match(/rv\:(\d+)/) && RegExp.$1 > 35,
        T = "currentSrc",
        C = /\s+\+?\d+(e\d+)?w/,
        _ = /(\([^)]+\))?\s*(.+)/,
        k = s.picturefillCFG,
        S = "font-size:100%!important;",
        $ = !0,
        A = {},
        E = {},
        D = s.devicePixelRatio,
        H = {
          px: 1,
          in: 96
        },
        z = o.createElement("a"),
        j = !1,
        L = /^[ \t\n\r\u000c]+/,
        P = /^[, \t\n\r\u000c]+/,
        O = /^[^ \t\n\r\u000c]+/,
        M = /[,]+$/,
        N = /^\d+$/,
        q = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,
        I = function(e, t, i, n) {
          e.addEventListener ? e.addEventListener(t, i, n || !1) : e.attachEvent && e.attachEvent("on" + t, i)
        },
        R = function(e) {
          var t = {};
          return function(i) {
            return i in t || (t[i] = e(i)), t[i]
          }
        };

      function W(e) {
        return " " === e || "\t" === e || "\n" === e || "\f" === e || "\r" === e
      }
      var B, F, U, X, Y, V, G, Q, Z, J, K, ee, te, ie, ne, se, oe = (B = /^([\d\.]+)(em|vw|px)$/, F = R(function(e) {
          return "return " + function() {
            for (var e = arguments, t = 0, i = e[0]; ++t in e;) i = i.replace(e[t], e[++t]);
            return i
          }((e || "").toLowerCase(), /\band\b/g, "&&", /,/g, "||", /min-([a-z-\s]+):/g, "e.$1>=", /max-([a-z-\s]+):/g, "e.$1<=", /calc([^)]+)/g, "($1)", /(\d+[\.]*[\d]*)([a-z]+)/g, "($1 * e.$2)", /^(?!(e.[a-z]|[0-9\.&=|><\+\-\*\(\)\/])).*/gi, "") + ";"
        }), function(e, t) {
          var i;
          if (!(e in A))
            if (A[e] = !1, t && (i = e.match(B))) A[e] = i[1] * H[i[2]];
            else try {
              A[e] = new Function("e", F(e))(H)
            } catch (e) {}
          return A[e]
        }),
        re = function(e, t) {
          return e.w ? (e.cWidth = d.calcListLength(t || "100vw"), e.res = e.w / e.cWidth) : e.res = e.d, e
        },
        ae = function(e) {
          if (u) {
            var t, i, n, s = e || {};
            if (s.elements && 1 === s.elements.nodeType && ("IMG" === s.elements.nodeName.toUpperCase() ? s.elements = [s.elements] : (s.context = s.elements, s.elements = null)), n = (t = s.elements || d.qsa(s.context || o, s.reevaluate || s.reselect ? d.sel : d.selShort)).length) {
              for (d.setupRun(s), j = !0, i = 0; i < n; i++) d.fillImg(t[i], s);
              d.teardownRun(s)
            }
          }
        };

      function le(e, t) {
        return e.res - t.res
      }

      function ce(e, t) {
        var i, n, s;
        if (e && t)
          for (s = d.parseSet(t), e = d.makeUrl(e), i = 0; i < s.length; i++)
            if (e === d.makeUrl(s[i].url)) {
              n = s[i];
              break
            } return n
      }
      s.console && console.warn, T in h || (T = "src"), y["image/jpeg"] = !0, y["image/gif"] = !0, y["image/png"] = !0, y["image/svg+xml"] = o.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image", "1.1"), d.ns = ("pf" + (new Date).getTime()).substr(0, 9), d.supSrcset = "srcset" in h, d.supSizes = "sizes" in h, d.supPicture = !!s.HTMLPictureElement, d.supSrcset && d.supPicture && !d.supSizes && (U = o.createElement("img"), h.srcset = "data:,a", U.src = "data:,a", d.supSrcset = h.complete === U.complete, d.supPicture = d.supSrcset && d.supPicture), d.supSrcset && !d.supSizes ? (X = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==", Y = o.createElement("img"), V = function() {
        2 === Y.width && (d.supSizes = !0), l = d.supSrcset && !d.supSizes, u = !0, setTimeout(ae)
      }, Y.onload = V, Y.onerror = V, Y.setAttribute("sizes", "9px"), Y.srcset = X + " 1w,data:image/gif;base64,R0lGODlhAgABAPAAAP///wAAACH5BAAAAAAALAAAAAACAAEAAAICBAoAOw== 9w", Y.src = X) : u = !0, d.selShort = "picture>img,img[srcset]", d.sel = d.selShort, d.cfg = w, d.DPR = D || 1, d.u = H, d.types = y, d.setSize = p, d.makeUrl = R(function(e) {
        return z.href = e, z.href
      }), d.qsa = function(e, t) {
        return "querySelector" in e ? e.querySelectorAll(t) : []
      }, d.matchesMedia = function() {
        return s.matchMedia && (matchMedia("(min-width: 0.1em)") || {}).matches ? d.matchesMedia = function(e) {
          return !e || matchMedia(e).matches
        } : d.matchesMedia = d.mMQ, d.matchesMedia.apply(this, arguments)
      }, d.mMQ = function(e) {
        return !e || oe(e)
      }, d.calcLength = function(e) {
        var t = oe(e, !0) || !1;
        return t < 0 && (t = !1), t
      }, d.supportsType = function(e) {
        return !e || y[e]
      }, d.parseSize = R(function(e) {
        var t = (e || "").match(_);
        return {
          media: t && t[1],
          length: t && t[2]
        }
      }), d.parseSet = function(e) {
        return e.cands || (e.cands = function(e, t) {
          function i(t) {
            var i, n = t.exec(e.substring(c));
            if (n) return i = n[0], c += i.length, i
          }
          var n, s, o, r, a, l = e.length,
            c = 0,
            d = [];

          function u() {
            var e, i, o, r, a, l, c, u, p, h = !1,
              f = {};
            for (r = 0; r < s.length; r++) l = (a = s[r])[a.length - 1], c = a.substring(0, a.length - 1), u = parseInt(c, 10), p = parseFloat(c), N.test(c) && "w" === l ? ((e || i) && (h = !0), 0 === u ? h = !0 : e = u) : q.test(c) && "x" === l ? ((e || i || o) && (h = !0), p < 0 ? h = !0 : i = p) : N.test(c) && "h" === l ? ((o || i) && (h = !0), 0 === u ? h = !0 : o = u) : h = !0;
            h || (f.url = n, e && (f.w = e), i && (f.d = i), o && (f.h = o), o || i || e || (f.d = 1), 1 === f.d && (t.has1x = !0), f.set = t, d.push(f))
          }

          function p() {
            for (i(L), o = "", r = "in descriptor";;) {
              if (a = e.charAt(c), "in descriptor" === r)
                if (W(a)) o && (s.push(o), o = "", r = "after descriptor");
                else {
                  if ("," === a) return c += 1, o && s.push(o), void u();
                  if ("(" === a) o += a, r = "in parens";
                  else {
                    if ("" === a) return o && s.push(o), void u();
                    o += a
                  }
                }
              else if ("in parens" === r)
                if (")" === a) o += a, r = "in descriptor";
                else {
                  if ("" === a) return s.push(o), void u();
                  o += a
                }
              else if ("after descriptor" === r)
                if (W(a));
                else {
                  if ("" === a) return void u();
                  r = "in descriptor", c -= 1
                } c += 1
            }
          }
          for (;;) {
            if (i(P), c >= l) return d;
            n = i(O), s = [], "," === n.slice(-1) ? (n = n.replace(M, ""), u()) : p()
          }
        }(e.srcset, e)), e.cands
      }, d.getEmValue = function() {
        var e;
        if (!a && (e = o.body)) {
          var t = o.createElement("div"),
            i = m.style.cssText,
            n = e.style.cssText;
          t.style.cssText = "position:absolute;left:0;visibility:hidden;display:block;padding:0;border:none;font-size:1em;width:1em;overflow:hidden;clip:rect(0px, 0px, 0px, 0px)", m.style.cssText = S, e.style.cssText = S, e.appendChild(t), a = t.offsetWidth, e.removeChild(t), a = parseFloat(a, 10), m.style.cssText = i, e.style.cssText = n
        }
        return a || 16
      }, d.calcListLength = function(e) {
        if (!(e in E) || w.uT) {
          var t = d.calcLength(function(e) {
            var t, i, n, s, o, r, a, l = /^(?:[+-]?[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?(?:ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmin|vmax|vw)$/i,
              c = /^calc\((?:[0-9a-z \.\+\-\*\/\(\)]+)\)$/i;
            for (n = (i = function(e) {
                var t, i = "",
                  n = [],
                  s = [],
                  o = 0,
                  r = 0,
                  a = !1;

                function l() {
                  i && (n.push(i), i = "")
                }

                function c() {
                  n[0] && (s.push(n), n = [])
                }
                for (;;) {
                  if ("" === (t = e.charAt(r))) return l(), c(), s;
                  if (a) {
                    if ("*" === t && "/" === e[r + 1]) {
                      a = !1, r += 2, l();
                      continue
                    }
                    r += 1
                  } else {
                    if (W(t)) {
                      if (e.charAt(r - 1) && W(e.charAt(r - 1)) || !i) {
                        r += 1;
                        continue
                      }
                      if (0 === o) {
                        l(), r += 1;
                        continue
                      }
                      t = " "
                    } else if ("(" === t) o += 1;
                    else if (")" === t) o -= 1;
                    else {
                      if ("," === t) {
                        l(), c(), r += 1;
                        continue
                      }
                      if ("/" === t && "*" === e.charAt(r + 1)) {
                        a = !0, r += 2;
                        continue
                      }
                    }
                    i += t, r += 1
                  }
                }
              }(e)).length, t = 0; t < n; t++)
              if (o = (s = i[t])[s.length - 1], a = o, l.test(a) && parseFloat(a) >= 0 || c.test(a) || "0" === a || "-0" === a || "+0" === a) {
                if (r = o, s.pop(), 0 === s.length) return r;
                if (s = s.join(" "), d.matchesMedia(s)) return r
              } return "100vw"
          }(e));
          E[e] = t || H.width
        }
        return E[e]
      }, d.setRes = function(e) {
        var t;
        if (e)
          for (var i = 0, n = (t = d.parseSet(e)).length; i < n; i++) re(t[i], e.sizes);
        return t
      }, d.setRes.res = re, d.applySetCandidate = function(e, t) {
        if (e.length) {
          var i, n, s, o, r, a, l, c, u, p, h, f, g, v, m, y, x = t[d.ns],
            C = d.DPR;
          if (a = x.curSrc || t[T], (l = x.curCan || function(e, t, i) {
              var n;
              return !i && t && (i = (i = e[d.ns].sets) && i[i.length - 1]), (n = ce(t, i)) && (t = d.makeUrl(t), e[d.ns].curSrc = t, e[d.ns].curCan = n, n.res || re(n, n.set.sizes)), n
            }(t, a, e[0].set)) && l.set === e[0].set && ((u = b && !t.complete && l.res - .1 > C) || (l.cached = !0, l.res >= C && (r = l))), !r)
            for (e.sort(le), r = e[(o = e.length) - 1], n = 0; n < o; n++)
              if ((i = e[n]).res >= C) {
                r = e[s = n - 1] && (u || a !== d.makeUrl(i.url)) && (p = e[s].res, h = i.res, f = C, g = e[s].cached, v = void 0, m = void 0, y = void 0, "saveData" === w.algorithm ? p > 2.7 ? y = f + 1 : (m = (h - f) * (v = Math.pow(p - .6, 1.5)), g && (m += .1 * v), y = p + m) : y = f > 1 ? Math.sqrt(p * h) : p, y > f) ? e[s] : i;
                break
              } r && (c = d.makeUrl(r.url), x.curSrc = c, x.curCan = r, c !== a && d.setSrc(t, r), d.setSize(t))
        }
      }, d.setSrc = function(e, t) {
        var i;
        e.src = t.url, "image/svg+xml" === t.set.type && (i = e.style.width, e.style.width = e.offsetWidth + 1 + "px", e.offsetWidth + 1 && (e.style.width = i))
      }, d.getSet = function(e) {
        var t, i, n, s = !1,
          o = e[d.ns].sets;
        for (t = 0; t < o.length && !s; t++)
          if ((i = o[t]).srcset && d.matchesMedia(i.media) && (n = d.supportsType(i.type))) {
            "pending" === n && (i = n), s = i;
            break
          } return s
      }, d.parseSets = function(e, t, i) {
        var n, s, o, r, a = t && "PICTURE" === t.nodeName.toUpperCase(),
          c = e[d.ns];
        (void 0 === c.src || i.src) && (c.src = f.call(e, "src"), c.src ? g.call(e, "data-pfsrc", c.src) : v.call(e, "data-pfsrc")), (void 0 === c.srcset || i.srcset || !d.supSrcset || e.srcset) && (n = f.call(e, "srcset"), c.srcset = n, r = !0), c.sets = [], a && (c.pic = !0, function(e, t) {
          var i, n, s, o, r = e.getElementsByTagName("source");
          for (i = 0, n = r.length; i < n; i++)(s = r[i])[d.ns] = !0, (o = s.getAttribute("srcset")) && t.push({
            srcset: o,
            media: s.getAttribute("media"),
            type: s.getAttribute("type"),
            sizes: s.getAttribute("sizes")
          })
        }(t, c.sets)), c.srcset ? (s = {
          srcset: c.srcset,
          sizes: f.call(e, "sizes")
        }, c.sets.push(s), (o = (l || c.src) && C.test(c.srcset || "")) || !c.src || ce(c.src, s) || s.has1x || (s.srcset += ", " + c.src, s.cands.push({
          url: c.src,
          d: 1,
          set: s
        }))) : c.src && c.sets.push({
          srcset: c.src,
          sizes: null
        }), c.curCan = null, c.curSrc = void 0, c.supported = !(a || s && !d.supSrcset || o && !d.supSizes), r && d.supSrcset && !c.supported && (n ? (g.call(e, "data-pfsrcset", n), e.srcset = "") : v.call(e, "data-pfsrcset")), c.supported && !c.srcset && (!c.src && e.src || e.src !== d.makeUrl(c.src)) && (null === c.src ? e.removeAttribute("src") : e.src = c.src), c.parsed = !0
      }, d.fillImg = function(e, t) {
        var i, n, s, o, r, a = t.reselect || t.reevaluate;
        (e[d.ns] || (e[d.ns] = {}), i = e[d.ns], a || i.evaled !== c) && (i.parsed && !t.reevaluate || d.parseSets(e, e.parentNode, t), i.supported ? i.evaled = c : (n = e, o = d.getSet(n), r = !1, "pending" !== o && (r = c, o && (s = d.setRes(o), d.applySetCandidate(s, n))), n[d.ns].evaled = r))
      }, d.setupRun = function() {
        j && !$ && D === s.devicePixelRatio || ($ = !1, D = s.devicePixelRatio, A = {}, E = {}, d.DPR = D || 1, H.width = Math.max(s.innerWidth || 0, m.clientWidth), H.height = Math.max(s.innerHeight || 0, m.clientHeight), H.vw = H.width / 100, H.vh = H.height / 100, c = [H.height, H.width, D].join("-"), H.em = d.getEmValue(), H.rem = H.em)
      }, d.supPicture ? (ae = p, d.fillImg = p) : (te = s.attachEvent ? /d$|^c/ : /d$|^c|^i/, ie = function() {
        var e = o.readyState || "";
        ne = setTimeout(ie, "loading" === e ? 200 : 999), o.body && (d.fillImgs(), (G = G || te.test(e)) && clearTimeout(ne))
      }, ne = setTimeout(ie, o.body ? 9 : 99), se = m.clientHeight, I(s, "resize", (Q = function() {
        $ = Math.max(s.innerWidth || 0, m.clientWidth) !== H.width || m.clientHeight !== se, se = m.clientHeight, $ && d.fillImgs()
      }, Z = 99, ee = function() {
        var e = new Date - K;
        e < Z ? J = setTimeout(ee, Z - e) : (J = null, Q())
      }, function() {
        K = new Date, J || (J = setTimeout(ee, Z))
      })), I(o, "readystatechange", ie)), d.picturefill = ae, d.fillImgs = ae, d.teardownRun = p, ae._ = d, s.picturefillCFG = {
        pf: d,
        push: function(e) {
          var t = e.shift();
          "function" == typeof d[t] ? d[t].apply(d, e) : (w[t] = e[0], j && d.fillImgs({
            reselect: !0
          }))
        }
      };
      for (; k && k.length;) s.picturefillCFG.push(k.shift());
      s.picturefill = ae, "object" == typeof e && "object" == typeof e.exports ? e.exports = ae : void 0 === (n = function() {
        return ae
      }.call(t, i, t, e)) || (e.exports = n), d.supPicture || (y["image/webp"] = function(e, t) {
        var i = new s.Image;
        return i.onerror = function() {
          y[e] = !1, ae()
        }, i.onload = function() {
          y[e] = 1 === i.width, ae()
        }, i.src = t, "pending"
      }("image/webp", "data:image/webp;base64,UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAABBxAR/Q9ERP8DAABWUDggGAAAADABAJ0BKgEAAQADADQlpAADcAD++/1QAA=="))
    }(window, document)
  },
  YiUv: function(e, t, i) {
    (function(e, t) {
      var i, n;
      ! function(e, i, n, s) {
        function o(t, i) {
          this.settings = null, this.options = e.extend({}, o.Defaults, i), 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, i) {
            this._handlers[i] = e.proxy(this[i], 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, i) {
            this._pipe.push({
              filter: i.filter,
              run: e.proxy(i.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: i,
          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 || "",
              i = !this.settings.autoWidth,
              n = this.settings.rtl,
              s = {
                width: "auto",
                "margin-left": n ? t : "",
                "margin-right": n ? "" : t
              };
            !i && this.$stage.children().css(s), e.css = s
          }
        }, {
          filter: ["width", "items", "settings"],
          run: function(e) {
            var t = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,
              i = null,
              n = this._items.length,
              s = !this.settings.autoWidth,
              o = [];
            for (e.items = {
                merge: !1,
                width: t
              }; n--;) i = this._mergers[n], i = this.settings.mergeFit && Math.min(i, this.settings.items) || i, e.items.merge = i > 1 || e.items.merge, o[n] = s ? t * i : this._items[n].width();
            this._widths = o
          }
        }, {
          filter: ["items", "settings"],
          run: function() {
            var t = [],
              i = this._items,
              n = this.settings,
              s = Math.max(2 * n.items, 4),
              o = 2 * Math.ceil(i.length / 2),
              r = n.loop && i.length ? n.rewind ? s : Math.max(s, o) : 0,
              a = "",
              l = "";
            for (r /= 2; r > 0;) t.push(this.normalize(t.length / 2, !0)), a += i[t[t.length - 1]][0].outerHTML, t.push(this.normalize(i.length - 1 - (t.length - 1) / 2, !0)), l = i[t[t.length - 1]][0].outerHTML + l, r -= 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, i = -1, n = 0, s = 0, o = []; ++i < t;) n = o[i - 1] || 0, s = this._widths[this.relative(i)] + this.settings.margin, o.push(n + s * e);
            this._coordinates = o
          }
        }, {
          filter: ["width", "items", "settings"],
          run: function() {
            var e = this.settings.stagePadding,
              t = this._coordinates,
              i = {
                width: Math.ceil(Math.abs(t[t.length - 1])) + 2 * e,
                "padding-left": e || "",
                "padding-right": e || ""
              };
            this.$stage.css(i)
          }
        }, {
          filter: ["width", "items", "settings"],
          run: function(e) {
            var t = this._coordinates.length,
              i = !this.settings.autoWidth,
              n = this.$stage.children();
            if (i && e.items.merge)
              for (; t--;) e.css.width = this._widths[this.relative(t)], n.eq(t).css(e.css);
            else i && (e.css.width = e.items.width, n.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, i, n, s = this.settings.rtl ? 1 : -1,
              o = 2 * this.settings.stagePadding,
              r = this.coordinates(this.current()) + o,
              a = r + this.width() * s,
              l = [];
            for (i = 0, n = this._coordinates.length; i < n; i++) e = this._coordinates[i - 1] || 0, t = Math.abs(this._coordinates[i]) + o * s, (this.op(e, "<=", r) && this.op(e, ">", a) || this.op(t, "<", r) && this.op(t, ">", a)) && l.push(i);
            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");
          if (t.length) return 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"), this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass)
        }, o.prototype.initialize = function() {
          var e, t, i;
          (this.enter("initializing"), this.trigger("initialize"), this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl), this.settings.autoWidth && !this.is("pre-loading")) && (e = this.$element.find("img"), t = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : void 0, i = this.$element.children(t).width(), e.length && i <= 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(),
            i = this.options.responsive,
            n = -1,
            s = null;
          i ? (e.each(i, function(e) {
            e <= t && e > n && (n = Number(e))
          }), "function" == typeof(s = e.extend({}, this.options, i[n])).stagePadding && (s.stagePadding = s.stagePadding()), delete s.responsive, s.responsiveClass && this.$element.attr("class", this.$element.attr("class").replace(new RegExp("(" + this.options.responsiveClass + "-)\\S+\\s", "g"), "$1" + n))) : s = e.extend({}, this.options), this.trigger("change", {
            property: {
              name: "settings",
              value: s
            }
          }), this._breakpoint = n, this.settings = s, 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 i = this.trigger("prepare", {
            content: t
          });
          return i.data || (i.data = e("<" + this.settings.itemElement + "/>").addClass(this.options.itemClass).append(t)), this.trigger("prepared", {
            content: i.data
          }), i.data
        }, o.prototype.update = function() {
          for (var t = 0, i = this._pipe.length, n = e.proxy(function(e) {
              return this[e]
            }, this._invalidated), s = {}; t < i;)(this._invalidated.all || e.grep(this._pipe[t].filter, n).length > 0) && this._pipe[t].run(s), 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() {
          i.clearTimeout(this.resizeTimer), this.resizeTimer = i.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)), !1 !== this.settings.responsive && this.on(i, "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 i = null;
          3 !== t.which && (e.support.transform ? i = {
            x: (i = this.$stage.css("transform").replace(/.*\(|\)| /g, "").split(","))[16 === i.length ? 12 : 4],
            y: i[16 === i.length ? 13 : 5]
          } : (i = this.$stage.position(), i = {
            x: this.settings.rtl ? i.left + this.$stage.width() - this.width() + this.settings.margin : i.left,
            y: i.top
          }), this.is("animating") && (e.support.transform ? this.animate(i.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 = i, this._drag.stage.current = i, this._drag.pointer = this.pointer(t), e(n).on("mouseup.owl.core touchend.owl.core", e.proxy(this.onDragEnd, this)), e(n).one("mousemove.owl.core touchmove.owl.core", e.proxy(function(t) {
            var i = this.difference(this._drag.pointer, this.pointer(t));
            e(n).on("mousemove.owl.core touchmove.owl.core", e.proxy(this.onDragMove, this)), Math.abs(i.x) < Math.abs(i.y) && this.is("valid") || (t.preventDefault(), this.enter("dragging"), this.trigger("drag"))
          }, this)))
        }, o.prototype.onDragMove = function(e) {
          var t = null,
            i = null,
            n = null,
            s = this.difference(this._drag.pointer, this.pointer(e)),
            o = this.difference(this._drag.stage.start, s);
          this.is("dragging") && (e.preventDefault(), this.settings.loop ? (t = this.coordinates(this.minimum()), i = this.coordinates(this.maximum() + 1) - t, o.x = ((o.x - t) % i + i) % i + t) : (t = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()), i = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()), n = this.settings.pullDrag ? -1 * s.x / 5 : 0, o.x = Math.max(Math.min(o.x, t + n), i + n)), this._drag.stage.current = o, this.animate(o.x))
        }, o.prototype.onDragEnd = function(t) {
          var i = this.difference(this._drag.pointer, this.pointer(t)),
            s = this._drag.stage.current,
            o = i.x > 0 ^ this.settings.rtl ? "left" : "right";
          e(n).off(".owl.core"), this.$element.removeClass(this.options.grabClass), (0 !== i.x && this.is("dragging") || !this.is("valid")) && (this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed), this.current(this.closest(s.x, 0 !== i.x ? o : this._drag.direction)), this.invalidate("position"), this.update(), this._drag.direction = o, (Math.abs(i.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, i) {
          var n = -1,
            s = this.width(),
            o = this.coordinates();
          return this.settings.freeDrag || e.each(o, e.proxy(function(e, r) {
            return "left" === i && t > r - 30 && t < r + 30 ? n = e : "right" === i && t > r - s - 30 && t < r - s + 30 ? n = e + 1 : this.op(t, "<", r) && this.op(t, ">", void 0 !== o[e + 1] ? o[e + 1] : r - s) && (n = "left" === i ? e + 1 : e), -1 === n
          }, this)), this.settings.loop || (this.op(t, ">", o[this.minimum()]) ? n = t = this.minimum() : this.op(t, "<", o[this.maximum()]) && (n = t = this.maximum())), n
        }, o.prototype.animate = function(t) {
          var i = this.speed() > 0;
          this.is("animating") && this.onTransitionEnd(), i && (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 : "")
          }) : i ? 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 (void 0 === e) return this._current;
          if (0 !== this._items.length) {
            if (e = this.normalize(e), this._current !== e) {
              var t = this.trigger("change", {
                property: {
                  name: "position",
                  value: e
                }
              });
              void 0 !== t.data && (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) {
          void 0 !== (e = this.normalize(e)) && (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 i = this._items.length,
            n = t ? 0 : this._clones.length;
          return !this.isNumeric(e) || i < 1 ? e = void 0 : (e < 0 || e >= i + n) && (e = ((e - n / 2) % i + i) % i + n / 2), e
        }, o.prototype.relative = function(e) {
          return e -= this._clones.length / 2, this.normalize(e, !0)
        }, o.prototype.maximum = function(e) {
          var t, i, n, s = this.settings,
            o = this._coordinates.length;
          if (s.loop) o = this._clones.length / 2 + this._items.length - 1;
          else if (s.autoWidth || s.merge) {
            if (t = this._items.length)
              for (i = this._items[--t].width(), n = this.$element.width(); t-- && !((i += this._items[t].width() + this.settings.margin) > n););
            o = t + 1
          } else o = s.center ? this._items.length - 1 : this._items.length - s.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 void 0 === e ? this._items.slice() : (e = this.normalize(e, !0), this._items[e])
        }, o.prototype.mergers = function(e) {
          return void 0 === e ? this._mergers.slice() : (e = this.normalize(e, !0), this._mergers[e])
        }, o.prototype.clones = function(t) {
          var i = this._clones.length / 2,
            n = i + this._items.length,
            s = function(e) {
              return e % 2 == 0 ? n + e / 2 : i - (e + 1) / 2
            };
          return void 0 === t ? e.map(this._clones, function(e, t) {
            return s(t)
          }) : e.map(this._clones, function(e, i) {
            return e === t ? s(i) : null
          })
        }, o.prototype.speed = function(e) {
          return void 0 !== e && (this._speed = e), this._speed
        }, o.prototype.coordinates = function(t) {
          var i, n = 1,
            s = t - 1;
          return void 0 === t ? e.map(this._coordinates, e.proxy(function(e, t) {
            return this.coordinates(t)
          }, this)) : (this.settings.center ? (this.settings.rtl && (n = -1, s = t + 1), i = this._coordinates[t], i += (this.width() - i + (this._coordinates[s] || 0)) / 2 * n) : i = this._coordinates[s] || 0, i = Math.ceil(i))
        }, o.prototype.duration = function(e, t, i) {
          return 0 === i ? 0 : Math.min(Math.max(Math.abs(t - e), 1), 6) * Math.abs(i || this.settings.smartSpeed)
        }, o.prototype.to = function(e, t) {
          var i = this.current(),
            n = null,
            s = e - this.relative(i),
            o = (s > 0) - (s < 0),
            r = this._items.length,
            a = this.minimum(),
            l = this.maximum();
          this.settings.loop ? (!this.settings.rewind && Math.abs(s) > r / 2 && (s += -1 * o * r), (n = (((e = i + s) - a) % r + r) % r + a) !== e && n - s <= l && n - s > 0 && (i = n - s, e = n, this.reset(i))) : e = this.settings.rewind ? (e % (l += 1) + l) % l : Math.max(a, Math.min(l, e)), this.speed(this.duration(i, 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) {
          if (void 0 !== e && (e.stopPropagation(), (e.target || e.srcElement || e.originalTarget) !== this.$stage.get(0))) return !1;
          this.leave("animating"), this.trigger("translated")
        }, o.prototype.viewport = function() {
          var t;
          return this.options.responsiveBaseElement !== i ? t = e(this.options.responsiveBaseElement).width() : i.innerWidth ? t = i.innerWidth : n.documentElement && n.documentElement.clientWidth ? t = n.documentElement.clientWidth : console.warn("Can not detect viewport width."), t
        }, o.prototype.replace = function(i) {
          this.$stage.empty(), this._items = [], i && (i = i instanceof t ? i : e(i)), this.settings.nestedItemSelector && (i = i.find("." + this.settings.nestedItemSelector)), i.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(i, n) {
          var s = this.relative(this._current);
          n = void 0 === n ? this._items.length : this.normalize(n, !0), i = i instanceof t ? i : e(i), this.trigger("add", {
            content: i,
            position: n
          }), i = this.prepare(i), 0 === this._items.length || n === this._items.length ? (0 === this._items.length && this.$stage.append(i), 0 !== this._items.length && this._items[n - 1].after(i), this._items.push(i), this._mergers.push(1 * i.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)) : (this._items[n].before(i), this._items.splice(n, 0, i), this._mergers.splice(n, 0, 1 * i.find("[data-merge]").addBack("[data-merge]").attr("data-merge") || 1)), this._items[s] && this.reset(this._items[s].index()), this.invalidate("items"), this.trigger("added", {
            content: i,
            position: n
          })
        }, o.prototype.remove = function(e) {
          void 0 !== (e = this.normalize(e, !0)) && (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, i) {
            this.enter("pre-loading"), i = e(i), e(new Image).one("load", e.proxy(function(e) {
              i.attr("src", e.target.src), i.css("opacity", 1), this.leave("pre-loading"), !this.is("pre-loading") && !this.is("initializing") && this.refresh()
            }, this)).attr("src", i.attr("src") || i.attr("data-src") || i.attr("data-src-retina"))
          }, this))
        }, o.prototype.destroy = function() {
          for (var t in this.$element.off(".owl.core"), this.$stage.off(".owl.core"), e(n).off(".owl.core"), !1 !== this.settings.responsive && (i.clearTimeout(this.resizeTimer), this.off(i, "resize", this._handlers.onThrottledResize)), 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, i) {
          var n = this.settings.rtl;
          switch (t) {
            case "<":
              return n ? e > i : e < i;
            case ">":
              return n ? e < i : e > i;
            case ">=":
              return n ? e <= i : e >= i;
            case "<=":
              return n ? e >= i : e <= i
          }
        }, o.prototype.on = function(e, t, i, n) {
          e.addEventListener ? e.addEventListener(t, i, n) : e.attachEvent && e.attachEvent("on" + t, i)
        }, o.prototype.off = function(e, t, i, n) {
          e.removeEventListener ? e.removeEventListener(t, i, n) : e.detachEvent && e.detachEvent("on" + t, i)
        }, o.prototype.trigger = function(t, i, n, s, r) {
          var a = {
              item: {
                count: this._items.length,
                index: this.current()
              }
            },
            l = e.camelCase(e.grep(["on", t, n], function(e) {
              return e
            }).join("-").toLowerCase()),
            c = e.Event([t, "owl", n || "carousel"].join(".").toLowerCase(), e.extend({
              relatedTarget: this
            }, a, i));
          return this._supress[t] || (e.each(this._plugins, function(e, t) {
            t.onTrigger && t.onTrigger(c)
          }), this.register({
            type: o.Type.Event,
            name: t
          }), this.$element.trigger(c), this.settings && "function" == typeof this.settings[l] && this.settings[l].call(this, c)), c
        }, o.prototype.enter = function(t) {
          e.each([t].concat(this._states.tags[t] || []), e.proxy(function(e, t) {
            void 0 === this._states.current[t] && (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 i = e.event.special[t.name]._default;
              e.event.special[t.name]._default = function(e) {
                return !i || !i.apply || e.namespace && -1 !== e.namespace.indexOf("owl") ? e.namespace && e.namespace.indexOf("owl") > -1 : i.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(i, n) {
            return e.inArray(i, this._states.tags[t.name]) === n
          }, 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 = e.originalEvent || e || i.event).touches && e.touches.length ? e.touches[0] : e.changedTouches && e.changedTouches.length ? e.changedTouches[0] : 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 i = Array.prototype.slice.call(arguments, 1);
          return this.each(function() {
            var n = e(this),
              s = n.data("owl.carousel");
            s || (s = new o(this, "object" == typeof t && t), n.data("owl.carousel", s), e.each(["next", "prev", "to", "destroy", "refresh", "replace", "add", "remove"], function(t, i) {
              s.register({
                type: o.Type.Event,
                name: i
              }), s.$element.on(i + ".owl.carousel.core", e.proxy(function(e) {
                e.namespace && e.relatedTarget !== this && (this.suppress([i]), s[i].apply(this, [].slice.call(arguments, 1)), this.release([i]))
              }, s))
            })), "string" == typeof t && "_" !== t.charAt(0) && s[t].apply(s, i)
          })
        }, e.fn.owlCarousel.Constructor = o
      }(window.Zepto || e, window, document),
      function(e, t, i, n) {
        var s = 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({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers)
        };
        s.Defaults = {
          autoRefresh: !0,
          autoRefreshInterval: 500
        }, s.prototype.watch = function() {
          this._interval || (this._visible = this._core.isVisible(), this._interval = t.setInterval(e.proxy(this.refresh, this), this._core.settings.autoRefreshInterval))
        }, s.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())
        }, s.prototype.destroy = function() {
          var e, i;
          for (e in t.clearInterval(this._interval), this._handlers) this._core.$element.off(e, this._handlers[e]);
          for (i in Object.getOwnPropertyNames(this)) "function" != typeof this[i] && (this[i] = null)
        }, e.fn.owlCarousel.Constructor.Plugins.AutoRefresh = s
      }(window.Zepto || e, window, document),
      function(e, t, i, n) {
        var s = 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 i = this._core.settings,
                  n = i.center && Math.ceil(i.items / 2) || i.items,
                  s = i.center && -1 * n || 0,
                  o = (t.property && void 0 !== t.property.value ? t.property.value : this._core.current()) + s,
                  r = this._core.clones().length,
                  a = e.proxy(function(e, t) {
                    this.load(t)
                  }, this);
                for (i.lazyLoadEager > 0 && (n += i.lazyLoadEager, i.loop && (o -= i.lazyLoadEager, n++)); s++ < n;) this.load(r / 2 + this._core.relative(o)), r && e.each(this._core.clones(this._core.relative(o)), a), o++
              }
            }, this)
          }, this._core.options = e.extend({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers)
        };
        s.Defaults = {
          lazyLoad: !1,
          lazyLoadEager: 0
        }, s.prototype.load = function(i) {
          var n = this._core.$stage.children().eq(i),
            s = n && n.find(".owl-lazy");
          !s || e.inArray(n.get(0), this._loaded) > -1 || (s.each(e.proxy(function(i, n) {
            var s, o = e(n),
              r = t.devicePixelRatio > 1 && o.attr("data-src-retina") || o.attr("data-src") || o.attr("data-srcset");
            this._core.trigger("load", {
              element: o,
              url: r
            }, "lazy"), o.is("img") ? o.one("load.owl.lazy", e.proxy(function() {
              o.css("opacity", 1), this._core.trigger("loaded", {
                element: o,
                url: r
              }, "lazy")
            }, this)).attr("src", r) : o.is("source") ? o.one("load.owl.lazy", e.proxy(function() {
              this._core.trigger("loaded", {
                element: o,
                url: r
              }, "lazy")
            }, this)).attr("srcset", r) : ((s = new Image).onload = e.proxy(function() {
              o.css({
                "background-image": 'url("' + r + '")',
                opacity: "1"
              }), this._core.trigger("loaded", {
                element: o,
                url: r
              }, "lazy")
            }, this), s.src = r)
          }, this)), this._loaded.push(n.get(0)))
        }, s.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 = s
      }(window.Zepto || e, window, document),
      function(e, t, i, n) {
        var s = function(i) {
          this._core = i, 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({}, s.Defaults, this._core.options), this._core.$element.on(this._handlers), this._intervalId = null;
          var n = this;
          e(t).on("load", function() {
            n._core.settings.autoHeight && n.update()
          }), e(t).resize(function() {
            n._core.settings.autoHeight && (null != n._intervalId && clearTimeout(n._intervalId), n._intervalId = setTimeout(function() {
              n.update()
            }, 250))
          })
        };
        s.Defaults = {
          autoHeight: !1,
          autoHeightClass: "owl-height"
        }, s.prototype.update = function() {
          var t = this._core._current,
            i = t + this._core.settings.items,
            n = this._core.settings.lazyLoad,
            s = this._core.$stage.children().toArray().slice(t, i),
            o = [],
            r = 0;
          e.each(s, function(t, i) {
            o.push(e(i).height())
          }), (r = Math.max.apply(null, o)) <= 1 && n && this._previousHeight && (r = this._previousHeight), this._previousHeight = r, this._core.$stage.parent().height(r).addClass(this._core.settings.autoHeightClass)
        }, s.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 = s
      }(window.Zepto || e, window, document),
      function(e, t, i, n) {
        var s = 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 i = e(t.content).find(".owl-video");
                i.length && (i.css("display", "none"), this.fetch(i, e(t.content)))
              }
            }, this)
          }, this._core.options = e.extend({}, s.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))
        };
        s.Defaults = {
          video: !1,
          videoHeight: !1,
          videoWidth: !1
        }, s.prototype.fetch = function(e, t) {
          var i = e.attr("data-vimeo-id") ? "vimeo" : e.attr("data-vzaar-id") ? "vzaar" : "youtube",
            n = e.attr("data-vimeo-id") || e.attr("data-youtube-id") || e.attr("data-vzaar-id"),
            s = e.attr("data-width") || this._core.settings.videoWidth,
            o = e.attr("data-height") || this._core.settings.videoHeight,
            r = e.attr("href");
          if (!r) throw new Error("Missing video URL.");
          if ((n = r.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+)?/))[3].indexOf("youtu") > -1) i = "youtube";
          else if (n[3].indexOf("vimeo") > -1) i = "vimeo";
          else {
            if (!(n[3].indexOf("vzaar") > -1)) throw new Error("Video URL not supported.");
            i = "vzaar"
          }
          n = n[6], this._videos[r] = {
            type: i,
            id: n,
            width: s,
            height: o
          }, t.attr("data-video", r), this.thumbnail(e, this._videos[r])
        }, s.prototype.thumbnail = function(t, i) {
          var n, s, o = i.width && i.height ? "width:" + i.width + "px;height:" + i.height + "px;" : "",
            r = t.find("img"),
            a = "src",
            l = "",
            c = this._core.settings,
            d = function(i) {
              '<div class="owl-video-play-icon"></div>',
              n = c.lazyLoad ? e("<div/>", {
                class: "owl-video-tn " + l,
                srcType: i
              }) : e("<div/>", {
                class: "owl-video-tn",
                style: "opacity:1;background-image:url(" + i + ")"
              }),
              t.after(n),
              t.after('<div class="owl-video-play-icon"></div>')
            };
          if (t.wrap(e("<div/>", {
              class: "owl-video-wrapper",
              style: o
            })), this._core.settings.lazyLoad && (a = "data-src", l = "owl-lazy"), r.length) return d(r.attr(a)), r.remove(), !1;
          "youtube" === i.type ? (s = "//img.youtube.com/vi/" + i.id + "/hqdefault.jpg", d(s)) : "vimeo" === i.type ? e.ajax({
            type: "GET",
            url: "//vimeo.com/api/v2/video/" + i.id + ".json",
            jsonp: "callback",
            dataType: "jsonp",
            success: function(e) {
              s = e[0].thumbnail_large, d(s)
            }
          }) : "vzaar" === i.type && e.ajax({
            type: "GET",
            url: "//vzaar.com/api/videos/" + i.id + ".json",
            jsonp: "callback",
            dataType: "jsonp",
            success: function(e) {
              s = e.framegrab_url, d(s)
            }
          })
        }, s.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")
        }, s.prototype.play = function(t) {
          var i, n = e(t.target).closest("." + this._core.settings.itemClass),
            s = this._videos[n.attr("data-video")],
            o = s.width || "100%",
            r = s.height || this._core.$stage.height();
          this._playing || (this._core.enter("playing"), this._core.trigger("play", null, "video"), n = this._core.items(this._core.relative(n.index())), this._core.reset(n.index()), (i = e('<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>')).attr("height", r), i.attr("width", o), "youtube" === s.type ? i.attr("src", "//www.youtube.com/embed/" + s.id + "?autoplay=1&rel=0&v=" + s.id) : "vimeo" === s.type ? i.attr("src", "//player.vimeo.com/video/" + s.id + "?autoplay=1") : "vzaar" === s.type && i.attr("src", "//view.vzaar.com/" + s.id + "/player?autoplay=true"), e(i).wrap('<div class="owl-video-frame" />').insertAfter(n.find(".owl-video")), this._playing = n.addClass("owl-video-playing"))
        }, s.prototype.isInFullScreen = function() {
          var t = i.fullscreenElement || i.mozFullScreenElement || i.webkitFullscreenElement;
          return t && e(t).parent().hasClass("owl-video-frame")
        }, s.prototype.destroy = function() {
          var e, t;
          for (e in this._core.$element.off("click.owl.video"), 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 = s
      }(window.Zepto || e, window, document), i = window.Zepto || e, window, document, (n = function(e) {
          this.core = e, this.core.options = i.extend({}, n.Defaults, this.core.options), this.swapping = !0, this.previous = void 0, this.next = void 0, this.handlers = {
            "change.owl.carousel": i.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": i.proxy(function(e) {
              e.namespace && (this.swapping = "translated" == e.type)
            }, this),
            "translate.owl.carousel": i.proxy(function(e) {
              e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap()
            }, this)
          }, this.core.$element.on(this.handlers)
        }).Defaults = {
          animateOut: !1,
          animateIn: !1
        }, n.prototype.swap = function() {
          if (1 === this.core.settings.items && i.support.animation && i.support.transition) {
            this.core.speed(0);
            var e, t = i.proxy(this.clear, this),
              n = this.core.$stage.children().eq(this.previous),
              s = this.core.$stage.children().eq(this.next),
              o = this.core.settings.animateIn,
              r = this.core.settings.animateOut;
            this.core.current() !== this.previous && (r && (e = this.core.coordinates(this.previous) - this.core.coordinates(this.next), n.one(i.support.animation.end, t).css({
              left: e + "px"
            }).addClass("animated owl-animated-out").addClass(r)), o && s.one(i.support.animation.end, t).addClass("animated owl-animated-in").addClass(o))
          }
        }, n.prototype.clear = function(e) {
          i(e.target).css({
            left: ""
          }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.onTransitionEnd()
        }, n.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)
        }, i.fn.owlCarousel.Constructor.Plugins.Animate = n,
        function(e, t, i, n) {
          var s = 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, i) {
                e.namespace && this.play(t, i)
              }, 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({}, s.Defaults, this._core.options)
          };
          s.Defaults = {
            autoplay: !1,
            autoplayTimeout: 5e3,
            autoplayHoverPause: !1,
            autoplaySpeed: !1
          }, s.prototype._next = function(n) {
            this._call = t.setTimeout(e.proxy(this._next, this, n), this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()), this._core.is("interacting") || i.hidden || this._core.next(n || this._core.settings.autoplaySpeed)
          }, s.prototype.read = function() {
            return (new Date).getTime() - this._time
          }, s.prototype.play = function(i, n) {
            var s;
            this._core.is("rotating") || this._core.enter("rotating"), i = i || this._core.settings.autoplayTimeout, s = Math.min(this._time % (this._timeout || i), i), this._paused ? (this._time = this.read(), this._paused = !1) : t.clearTimeout(this._call), this._time += this.read() % i - s, this._timeout = i, this._call = t.setTimeout(e.proxy(this._next, this, n), i - s)
          }, s.prototype.stop = function() {
            this._core.is("rotating") && (this._time = 0, this._paused = !0, t.clearTimeout(this._call), this._core.leave("rotating"))
          }, s.prototype.pause = function() {
            this._core.is("rotating") && !this._paused && (this._time = this.read(), this._paused = !0, t.clearTimeout(this._call))
          }, s.prototype.destroy = function() {
            var e, t;
            for (e in this.stop(), 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 = s
        }(window.Zepto || e, window, document),
        function(e, t, i, n) {
          "use strict";
          var s = 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({}, s.Defaults, this._core.options), this.$element.on(this._handlers)
          };
          s.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
          }, s.prototype.initialize = function() {
            var t, i = this._core.settings;
            for (t in this._controls.$relative = (i.navContainer ? e(i.navContainer) : e("<div>").addClass(i.navContainerClass).appendTo(this.$element)).addClass("disabled"), this._controls.$previous = e("<" + i.navElement + ">").addClass(i.navClass[0]).html(i.navText[0]).prependTo(this._controls.$relative).on("click", e.proxy(function(e) {
                this.prev(i.navSpeed)
              }, this)), this._controls.$next = e("<" + i.navElement + ">").addClass(i.navClass[1]).html(i.navText[1]).appendTo(this._controls.$relative).on("click", e.proxy(function(e) {
                this.next(i.navSpeed)
              }, this)), i.dotsData || (this._templates = [e('<button role="button">').addClass(i.dotClass).append(e("<span>")).prop("outerHTML")]), this._controls.$absolute = (i.dotsContainer ? e(i.dotsContainer) : e("<div>").addClass(i.dotsClass).appendTo(this.$element)).addClass("disabled"), this._controls.$absolute.on("click", "button", e.proxy(function(t) {
                var n = e(t.target).parent().is(this._controls.$absolute) ? e(t.target).index() : e(t.target).parent().index();
                t.preventDefault(), this.to(n, i.dotsSpeed)
              }, this)), this._overrides) this._core[t] = e.proxy(this[t], this)
          }, s.prototype.destroy = function() {
            var e, t, i, n, s;
            for (e in s = this._core.settings, this._handlers) this.$element.off(e, this._handlers[e]);
            for (t in this._controls) "$relative" === t && s.navContainer ? this._controls[t].html("") : this._controls[t].remove();
            for (n in this.overides) this._core[n] = this._overrides[n];
            for (i in Object.getOwnPropertyNames(this)) "function" != typeof this[i] && (this[i] = null)
          }, s.prototype.update = function() {
            var e, t, i = this._core.clones().length / 2,
              n = i + this._core.items().length,
              s = this._core.maximum(!0),
              o = this._core.settings,
              r = o.center || o.autoWidth || o.dotsData ? 1 : o.dotsEach || o.items;
            if ("page" !== o.slideBy && (o.slideBy = Math.min(o.slideBy, o.items)), o.dots || "page" == o.slideBy)
              for (this._pages = [], e = i, t = 0, 0; e < n; e++) {
                if (t >= r || 0 === t) {
                  if (this._pages.push({
                      start: Math.min(s, e - i),
                      end: e - i + r - 1
                    }), Math.min(s, e - i) === s) break;
                  t = 0, 0
                }
                t += this._core.mergers(this._core.relative(e))
              }
          }, s.prototype.draw = function() {
            var t, i = this._core.settings,
              n = this._core.items().length <= i.items,
              s = this._core.relative(this._core.current()),
              o = i.loop || i.rewind;
            this._controls.$relative.toggleClass("disabled", !i.nav || n), i.nav && (this._controls.$previous.toggleClass("disabled", !o && s <= this._core.minimum(!0)), this._controls.$next.toggleClass("disabled", !o && s >= this._core.maximum(!0))), this._controls.$absolute.toggleClass("disabled", !i.dots || n), i.dots && (t = this._pages.length - this._controls.$absolute.children().length, i.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"))
          }, s.prototype.onTrigger = function(t) {
            var i = this._core.settings;
            t.page = {
              index: e.inArray(this.current(), this._pages),
              count: this._pages.length,
              size: i && (i.center || i.autoWidth || i.dotsData ? 1 : i.dotsEach || i.items)
            }
          }, s.prototype.current = function() {
            var t = this._core.relative(this._core.current());
            return e.grep(this._pages, e.proxy(function(e, i) {
              return e.start <= t && e.end >= t
            }, this)).pop()
          }, s.prototype.getPosition = function(t) {
            var i, n, s = this._core.settings;
            return "page" == s.slideBy ? (i = e.inArray(this.current(), this._pages), n = this._pages.length, t ? ++i : --i, i = this._pages[(i % n + n) % n].start) : (i = this._core.relative(this._core.current()), n = this._core.items().length, t ? i += s.slideBy : i -= s.slideBy), i
          }, s.prototype.next = function(t) {
            e.proxy(this._overrides.to, this._core)(this.getPosition(!0), t)
          }, s.prototype.prev = function(t) {
            e.proxy(this._overrides.to, this._core)(this.getPosition(!1), t)
          }, s.prototype.to = function(t, i, n) {
            var s;
            !n && this._pages.length ? (s = this._pages.length, e.proxy(this._overrides.to, this._core)(this._pages[(t % s + s) % s].start, i)) : e.proxy(this._overrides.to, this._core)(t, i)
          }, e.fn.owlCarousel.Constructor.Plugins.Navigation = s
        }(window.Zepto || e, window, document),
        function(e, t, i, n) {
          "use strict";
          var s = function(i) {
            this._core = i, this._hashes = {}, this.$element = this._core.$element, this._handlers = {
              "initialized.owl.carousel": e.proxy(function(i) {
                i.namespace && "URLHash" === this._core.settings.startPosition && e(t).trigger("hashchange.owl.navigation")
              }, this),
              "prepared.owl.carousel": e.proxy(function(t) {
                if (t.namespace) {
                  var i = e(t.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");
                  if (!i) return;
                  this._hashes[i] = t.content
                }
              }, this),
              "changed.owl.carousel": e.proxy(function(i) {
                if (i.namespace && "position" === i.property.name) {
                  var n = this._core.items(this._core.relative(this._core.current())),
                    s = e.map(this._hashes, function(e, t) {
                      return e === n ? t : null
                    }).join();
                  if (!s || t.location.hash.slice(1) === s) return;
                  t.location.hash = s
                }
              }, this)
            }, this._core.options = e.extend({}, s.Defaults, this._core.options), this.$element.on(this._handlers), e(t).on("hashchange.owl.navigation", e.proxy(function(e) {
              var i = t.location.hash.substring(1),
                n = this._core.$stage.children(),
                s = this._hashes[i] && n.index(this._hashes[i]);
              void 0 !== s && s !== this._core.current() && this._core.to(this._core.relative(s), !1, !0)
            }, this))
          };
          s.Defaults = {
            URLhashListener: !1
          }, s.prototype.destroy = function() {
            var i, n;
            for (i in e(t).off("hashchange.owl.navigation"), this._handlers) this._core.$element.off(i, this._handlers[i]);
            for (n in Object.getOwnPropertyNames(this)) "function" != typeof this[n] && (this[n] = null)
          }, e.fn.owlCarousel.Constructor.Plugins.Hash = s
        }(window.Zepto || e, window, document),
        function(e, t, i, n) {
          var s = e("<support>").get(0).style,
            o = "Webkit Moz O ms".split(" "),
            r = {
              transition: {
                end: {
                  WebkitTransition: "webkitTransitionEnd",
                  MozTransition: "transitionend",
                  OTransition: "oTransitionEnd",
                  transition: "transitionend"
                }
              },
              animation: {
                end: {
                  WebkitAnimation: "webkitAnimationEnd",
                  MozAnimation: "animationend",
                  OAnimation: "oAnimationEnd",
                  animation: "animationend"
                }
              }
            },
            a = function() {
              return !!d("transform")
            },
            l = function() {
              return !!d("perspective")
            },
            c = function() {
              return !!d("animation")
            };

          function d(t, i) {
            var r = !1,
              a = t.charAt(0).toUpperCase() + t.slice(1);
            return e.each((t + " " + o.join(a + " ") + a).split(" "), function(e, t) {
              if (s[t] !== n) return r = !i || t, !1
            }), r
          }

          function u(e) {
            return d(e, !0)
          }(function() {
            return !!d("transition")
          })() && (e.support.transition = new String(u("transition")), e.support.transition.end = r.transition.end[e.support.transition]), c() && (e.support.animation = new String(u("animation")), e.support.animation.end = r.animation.end[e.support.animation]), a() && (e.support.transform = new String(u("transform")), e.support.transform3d = l())
        }(window.Zepto || e, window, document)
    }).call(t, i("7t+N"), i("7t+N"))
  },
  g7Pl: function(e, t, i) {
    "use strict";
    Object.defineProperty(t, "__esModule", {
      value: !0
    });
    i("YfKf");
    var n = function() {
        var e = window.navigator.userAgent,
          t = "";
        e.indexOf("Mac") > -1 && (t = "mac"), e.indexOf("iPhone") > -1 && (t = "ios"), e.indexOf("Win") > -1 && (t = "win"), e.indexOf("Linux") > -1 && (t = "linux"), document.querySelector("html").classList.add(t)
      },
      s = i("7t+N"),
      o = i.n(s),
      r = {
        $doc: o()(document),
        $win: o()(window),
        $body: o()("body")
      },
      a = function() {
        var e = o()(".c-scrpr"),
          t = o()(".c-post");
        if (e) {
          var i = r.$body.outerHeight() - t.outerHeight(),
            n = o()(".c-comments"),
            s = {
              windowScrollTop: r.$win.scrollTop(),
              windowOuterHeight: r.$win.outerHeight(),
              bodyHeight: r.$doc.height()
            },
            a = function() {
              i = r.$body.outerHeight() - t.outerHeight(), n.length && (i += n.outerHeight()), s.windowScrollTop = r.$win.scrollTop(), s.windowOuterHeight = r.$win.outerHeight(), s.bodyHeight = r.$doc.height()
            };
          a(), r.$win.on("resize", a), r.$win.on("load", a), r.$win.on("scroll touchmove", function() {
            s.windowScrollTop = r.$win.scrollTop(), s.windowOuterHeight = r.$win.outerHeight(), s.bodyHeight = r.$doc.height();
            var t = s.windowScrollTop / (s.bodyHeight - s.windowOuterHeight - i) * 100;
            e.css("width", "".concat(t, "%"))
          });
          var l = s.windowScrollTop / (s.bodyHeight - s.windowOuterHeight - i) * 100;
          e.css("width", "".concat(l, "%")), r.$win.on("scroll touchmove", function() {
            r.$win.scrollTop() > 10 ? r.$body.addClass("scrolled") : r.$body.removeClass("scrolled")
          })
        }
      },
      l = function() {
        var e = o()(".c-post__lower--share"),
          t = o()(".c-post__nav"),
          i = o()(".c-post__nav--share"),
          n = "0";
        if (e && e.length && t && t.length) {
          var s = {
              offsetTop: e.offset().top,
              windowScrollTop: r.$win.scrollTop(),
              postHeight: r.$doc.height() / 2
            },
            a = function() {
              s.offsetTop = e.offset().top, s.windowScrollTop = r.$win.scrollTop(), s.postHeight = r.$doc.height() / 2
            };
          a(), r.$win.on("resize", a), r.$win.on("scroll touchmove", function() {
            s.windowScrollTop = r.$win.scrollTop(), s.windowScrollTop >= s.postHeight ? n = "-66.666666%" : s.windowScrollTop >= s.offsetTop ? (n = "-33.333333%", i.length && i.addClass("active")) : (n = "0", i.length && i.removeClass("active")), t.css("transform", "translateY(".concat(n, ")"))
          })
        }
      },
      c = "nav-open",
      d = function() {
        var e = o()(".c-main-nav__toggle"),
          t = o()(".c-main-nav__wrapper"),
          i = function() {
            r.$body.hasClass(c) ? (r.$body.removeClass("animate-in"), r.$body.addClass("animate-out"), r.$doc.trigger("closeNav"), setTimeout(function() {
              r.$body.removeClass("".concat(c, " ").concat("animate-out"))
            }, 350)) : r.$body.addClass("".concat(c, " ").concat("animate-in"))
          };
        e && e.length && t && t.length && e.click(function() {
          i()
        });
        var n = o()(".c-main-nav__wrapper--backdrop, .c-main-nav__close");
        n && n.length && n.click(function() {
          i()
        })
      },
      u = function() {
        var e = o()("[data-subnav] .c-main-nav__open-close"),
          t = o()(".c-main-nav__wrapper"),
          i = o()(".home, .category-planning"),
          n = !0;
        i && i.length && (n = !(r.$win.width() > 1239)), e && e.length && n && (e.on("click", function(i) {
          i.preventDefault();
          var n = o()(i.target);
          n.hasClass("c-main-nav__link") || (n = n.closest(".c-main-nav__link")), n.hasClass("active") ? (n.removeClass("active"), t.removeClass("subactive")) : (e.removeClass("active"), n.addClass("active"), t.addClass("subactive"))
        }), r.$doc.on("closeNav", function() {
          t.removeClass("subactive")
        }));
        var s = o()("[data-subnav-close]");
        s && s.length && s.on("click", function(i) {
          i.preventDefault(), e.removeClass("active"), t.removeClass("subactive")
        })
      },
      p = function() {
        var e = o()("[data-android][data-ios]"),
          t = o()(".c-main-nav__bottom");
        if (e.length) {
          var i = "";
          (navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i)) && (i = e.data("ios")), navigator.userAgent.match(/android/i) && (i = e.data("android")), i.length ? e.attr("href", i) : t.addClass("desktop")
        }
      },
      h = (i("YiUv"), i("5xbe"), function() {
        var e = ['<i class="icon-chevron-left"></i>', '<i class="icon-chevron-right"></i>'],
          t = o()(".owl-carousel.c-archive__love-list"),
          i = {
            margin: 0,
            stagePadding: 25,
            autoHeight: !0,
            dots: !1,
            nav: !0,
            navText: e,
            lazyLoad: !0,
            responsive: {
              0: {
                margin: 35,
                autoHeight: !0,
                autoWidth: !0
              },
              768: {
                margin: 32,
                autoHeight: !1,
                autoWidth: !0
              },
              1024: {
                margin: 32,
                autoHeight: !1,
                autoWidth: !1
              },
              1240: {
                autoWidth: !1,
                items: 4,
                stagePadding: 0
              },
              1400: {
                margin: 50,
                autoHeight: !1,
                autoWidth: !0
              }
            }
          };
        t.on("initialized.owl.carousel", function() {
          setTimeout(function() {
            var e = t.find(".owl-nav"),
              i = t.closest(".c-archive__love-content");
            e.length && i.length && o()(i.find(".c-archive__love-title")).append(e)
          })
        }), t.owlCarousel(i);
        var n = t.data("posts-per-page"),
          s = t.data("exclude"),
          a = t.data("cat"),
          l = !1;
        t.on("changed.owl.carousel", function() {
          var e = t.data("offset");
          if (!l) {
            l = !0;
            var i = {
              action: "ajax_get_more_latest_stories",
              offset: e,
              exclude: s,
              posts_per_page: n
            };
            a && (i.cat = a), o.a.ajax({
              type: "POST",
              url: "/blog/wp-admin/admin-ajax.php",
              data: i,
              success: function(e) {
                var i = JSON.parse(e),
                  n = i.offset;
                t.data("offset", n), t.attr("data-offset", n), o.a.each(i.html, function(e, i) {
                  t.trigger("add.owl.carousel", [o()(i)])
                }), t.trigger("refresh.owl.carousel"), r.$doc.trigger("updateTrunc"), l = !1
              }
            })
          }
        });
        var c = o()(".owl-carousel.c-archive__news-list");
        if (c.length) {
          var d = {
              items: 1,
              margin: 0,
              stagePadding: 165,
              dots: !1,
              autoWidth: !0,
              nav: !0,
              navText: e
            },
            u = function() {
              r.$win.width() > 999 ? c.trigger("destroy.owl.carousel") : (r.$win.width() > 767 ? (d.items = 2, d.stagePadding = 0) : (d.items = 1, d.stagePadding = 165), c.owlCarousel(d))
            };
          u(), r.$win.on("resize", function() {
            u()
          })
        }
        var p = {
          margin: 20,
          dots: !1,
          autoWidth: !0,
          navText: e,
          responsive: {
            0: {
              items: 1,
              nav: !0
            },
            2550: {
              items: 3,
              nav: !1
            }
          }
        };
        o()(".owl-carousel.c-essential-guides__list").owlCarousel(p)
      }),
      f = function() {
        var e = o()("[data-learn]"),
          t = o()(".c-learn__content");
        e.length && e.on("click", function(i) {
          i.preventDefault();
          var n = i.target,
            s = n.hash,
            r = o()(s);
          r && (e.removeClass("active"), n.classList.add("active"), t.removeClass("active"), r.addClass("active"))
        })
      },
      g = function() {
        var e = o()(".c-search-overlay"),
          t = e.find("#s"),
          i = o()(".c-main-nav__search"),
          n = o()(".c-search-overlay__close");
        i.length && i.click(function(i) {
          i.preventDefault(), e.addClass("active"), t.focus()
        }), n.length && n.click(function(i) {
          i.preventDefault(), e.removeClass("active"), t.blur()
        })
      },
      v = function() {
        var e = o()("#load-more-articles"),
          t = o()("#search-items");
        e.length && e.click(function(i) {
          i.preventDefault();
          var n = o()(i.target),
            s = n.data("offset"),
            r = n.data("tag"),
            a = n.data("author"),
            l = n.data("cat"),
            c = n.data("exclude");
          o.a.ajax({
            type: "GET",
            url: "/blog/wp-admin/admin-ajax.php",
            data: {
              action: "ajax_get_more_posts",
              s: window.location.search,
              offset: s,
              tag: r,
              a: a,
              cat: l,
              exclude: c
            },
            success: function(i) {
              var n = JSON.parse(i),
                o = s + 16;
              e.data("offset", o), e.attr("data-offset", o), t.append(n.html), n.end && e.remove()
            }
          })
        })
      };
    var m = function(e, t) {
        var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
        if (void 0 === t || isNaN(t)) throw Error("maxHeight is required");
        var n = "string" == typeof e ? document.querySelectorAll(e) : e;
        if (n) {
          var s = i.character || "",
            o = i.classname || "js-shave",
            r = "boolean" != typeof i.spaces || i.spaces,
            a = '<span class="js-shave-char">'.concat(s, "</span>");
          "length" in n || (n = [n]);
          for (var l = 0; l < n.length; l += 1) {
            var c = n[l],
              d = c.style,
              u = c.querySelector(".".concat(o)),
              p = void 0 === c.textContent ? "innerText" : "textContent";
            u && (c.removeChild(c.querySelector(".js-shave-char")), c[p] = c[p]);
            var h = c[p],
              f = r ? h.split(" ") : h;
            if (!(f.length < 2)) {
              var g = d.height;
              d.height = "auto";
              var v = d.maxHeight;
              if (d.maxHeight = "none", c.offsetHeight <= t) d.height = g, d.maxHeight = v;
              else {
                for (var m = f.length - 1, y = 0, w = void 0; y < m;) w = y + m + 1 >> 1, c[p] = r ? f.slice(0, w).join(" ") : f.slice(0, w), c.insertAdjacentHTML("beforeend", a), c.offsetHeight > t ? m = w - 1 : y = w;
                c[p] = r ? f.slice(0, m).join(" ") : f.slice(0, m), c.insertAdjacentHTML("beforeend", a);
                var x = r ? " ".concat(f.slice(m).join(" ")) : f.slice(m),
                  b = document.createTextNode(x),
                  T = document.createElement("span");
                T.classList.add(o), T.style.display = "none", T.appendChild(b), c.insertAdjacentElement("beforeend", T), d.height = g, d.maxHeight = v
              }
            }
          }
        }
      },
      y = function() {
        var e = o()(".c-related__bottom-grid");
        if (e.length) {
          var t = e.find(">.c-post__related-post");
          e.find(">p, h3").remove(), t.each(function(e, t) {
            var i = o()(t);
            e < 3 ? (i.removeClass("c-post__related-post"), i.addClass("o-grid__col o-grid__col-large--12 o-grid__col--4 c-archive__category-item c-related-posts__item"), i.attr("data-trunc-post", ""), i.find(".rp4wp_component.rp4wp_component_taxonomy.rp4wp_component_3").addClass("u-small-text c-archive__category-item-cat").removeClass("rp4wp_component rp4wp_component_taxonomy rp4wp_component_3"), i.find(".rp4wp_component_excerpt p").attr("data-trunc", "")) : i.remove()
          })
        }
        var i = function() {
          if (r.$win.width() >= 1e3) {
            var e = o()("[data-trunc-post]");
            e.length && o.a.each(e, function(e, t) {
              var i = o()(t),
                n = i.find(".c-archive__category-link-content, .c-archive__love-list__item-title, .rp4wp_component_title");
              n.length > 1 && (n = o()(n[1]));
              var s = n.height(),
                r = 115;
              s > 55 && (r = 100), s > 85 && (r = 60), s > 115 && (r = 30), m(i.find("[data-trunc]"), r)
            })
          }
        };
        i(), r.$win.on("load", function() {
          i()
        }), r.$doc.on("updateTrunc", function() {
          i()
        })
      },
      w = function() {
        var e = o()("[data-footer-children]");
        e && e.length && e.on("click", function(t) {
          t.preventDefault();
          var i = o()(t.target);
          i.hasClass("c-footer__link") || (i = i.closest(".c-footer__link"));
          var n = i.closest(".c-footer__item");
          n.hasClass("active") ? n.removeClass("active") : (e.parent().removeClass("active"), n.addClass("active"))
        })
      };
    i("gqkz");
    n(), a(), l(), d(), u(), p(), h(), f(), g(), v(), y(), w()
  },
  gqkz: function(e, t, i) {
    var n, s, o;
    ! function(r) {
      "use strict";
      s = [i("7t+N")], void 0 === (o = "function" == typeof(n = r) ? n.apply(t, s) : n) || (e.exports = o)
    }(function(e) {
      "use strict";
      var t = window.Slick || {};
      (t = function() {
        var t = 0;
        return function(i, n) {
          var s, o = this;
          o.defaults = {
            accessibility: !0,
            adaptiveHeight: !1,
            appendArrows: e(i),
            appendDots: e(i),
            arrows: !0,
            asNavFor: null,
            prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',
            nextArrow: '<button class="slick-next" aria-label="Next" type="button">Next</button>',
            autoplay: !1,
            autoplaySpeed: 3e3,
            centerMode: !1,
            centerPadding: "50px",
            cssEase: "ease",
            customPaging: function(t, i) {
              return e('<button type="button" />').text(i + 1)
            },
            dots: !1,
            dotsClass: "slick-dots",
            draggable: !0,
            easing: "linear",
            edgeFriction: .35,
            fade: !1,
            focusOnSelect: !1,
            focusOnChange: !1,
            infinite: !0,
            initialSlide: 0,
            lazyLoad: "ondemand",
            mobileFirst: !1,
            pauseOnHover: !0,
            pauseOnFocus: !0,
            pauseOnDotsHover: !1,
            respondTo: "window",
            responsive: null,
            rows: 1,
            rtl: !1,
            slide: "",
            slidesPerRow: 1,
            slidesToShow: 1,
            slidesToScroll: 1,
            speed: 500,
            swipe: !0,
            swipeToSlide: !1,
            touchMove: !0,
            touchThreshold: 5,
            useCSS: !0,
            useTransform: !0,
            variableWidth: !1,
            vertical: !1,
            verticalSwiping: !1,
            waitForAnimate: !0,
            zIndex: 1e3
          }, o.initials = {
            animating: !1,
            dragging: !1,
            autoPlayTimer: null,
            currentDirection: 0,
            currentLeft: null,
            currentSlide: 0,
            direction: 1,
            $dots: null,
            listWidth: null,
            listHeight: null,
            loadIndex: 0,
            $nextArrow: null,
            $prevArrow: null,
            scrolling: !1,
            slideCount: null,
            slideWidth: null,
            $slideTrack: null,
            $slides: null,
            sliding: !1,
            slideOffset: 0,
            swipeLeft: null,
            swiping: !1,
            $list: null,
            touchObject: {},
            transformsEnabled: !1,
            unslicked: !1
          }, e.extend(o, o.initials), o.activeBreakpoint = null, o.animType = null, o.animProp = null, o.breakpoints = [], o.breakpointSettings = [], o.cssTransitions = !1, o.focussed = !1, o.interrupted = !1, o.hidden = "hidden", o.paused = !0, o.positionProp = null, o.respondTo = null, o.rowCount = 1, o.shouldClick = !0, o.$slider = e(i), o.$slidesCache = null, o.transformType = null, o.transitionType = null, o.visibilityChange = "visibilitychange", o.windowWidth = 0, o.windowTimer = null, s = e(i).data("slick") || {}, o.options = e.extend({}, o.defaults, n, s), o.currentSlide = o.options.initialSlide, o.originalSettings = o.options, void 0 !== document.mozHidden ? (o.hidden = "mozHidden", o.visibilityChange = "mozvisibilitychange") : void 0 !== document.webkitHidden && (o.hidden = "webkitHidden", o.visibilityChange = "webkitvisibilitychange"), o.autoPlay = e.proxy(o.autoPlay, o), o.autoPlayClear = e.proxy(o.autoPlayClear, o), o.autoPlayIterator = e.proxy(o.autoPlayIterator, o), o.changeSlide = e.proxy(o.changeSlide, o), o.clickHandler = e.proxy(o.clickHandler, o), o.selectHandler = e.proxy(o.selectHandler, o), o.setPosition = e.proxy(o.setPosition, o), o.swipeHandler = e.proxy(o.swipeHandler, o), o.dragHandler = e.proxy(o.dragHandler, o), o.keyHandler = e.proxy(o.keyHandler, o), o.instanceUid = t++, o.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/, o.registerBreakpoints(), o.init(!0)
        }
      }()).prototype.activateADA = function() {
        this.$slideTrack.find(".slick-active").attr({
          "aria-hidden": "false"
        }).find("a, input, button, select").attr({
          tabindex: "0"
        })
      }, t.prototype.addSlide = t.prototype.slickAdd = function(t, i, n) {
        var s = this;
        if ("boolean" == typeof i) n = i, i = null;
        else if (i < 0 || i >= s.slideCount) return !1;
        s.unload(), "number" == typeof i ? 0 === i && 0 === s.$slides.length ? e(t).appendTo(s.$slideTrack) : n ? e(t).insertBefore(s.$slides.eq(i)) : e(t).insertAfter(s.$slides.eq(i)) : !0 === n ? e(t).prependTo(s.$slideTrack) : e(t).appendTo(s.$slideTrack), s.$slides = s.$slideTrack.children(this.options.slide), s.$slideTrack.children(this.options.slide).detach(), s.$slideTrack.append(s.$slides), s.$slides.each(function(t, i) {
          e(i).attr("data-slick-index", t)
        }), s.$slidesCache = s.$slides, s.reinit()
      }, t.prototype.animateHeight = function() {
        var e = this;
        if (1 === e.options.slidesToShow && !0 === e.options.adaptiveHeight && !1 === e.options.vertical) {
          var t = e.$slides.eq(e.currentSlide).outerHeight(!0);
          e.$list.animate({
            height: t
          }, e.options.speed)
        }
      }, t.prototype.animateSlide = function(t, i) {
        var n = {},
          s = this;
        s.animateHeight(), !0 === s.options.rtl && !1 === s.options.vertical && (t = -t), !1 === s.transformsEnabled ? !1 === s.options.vertical ? s.$slideTrack.animate({
          left: t
        }, s.options.speed, s.options.easing, i) : s.$slideTrack.animate({
          top: t
        }, s.options.speed, s.options.easing, i) : !1 === s.cssTransitions ? (!0 === s.options.rtl && (s.currentLeft = -s.currentLeft), e({
          animStart: s.currentLeft
        }).animate({
          animStart: t
        }, {
          duration: s.options.speed,
          easing: s.options.easing,
          step: function(e) {
            e = Math.ceil(e), !1 === s.options.vertical ? (n[s.animType] = "translate(" + e + "px, 0px)", s.$slideTrack.css(n)) : (n[s.animType] = "translate(0px," + e + "px)", s.$slideTrack.css(n))
          },
          complete: function() {
            i && i.call()
          }
        })) : (s.applyTransition(), t = Math.ceil(t), !1 === s.options.vertical ? n[s.animType] = "translate3d(" + t + "px, 0px, 0px)" : n[s.animType] = "translate3d(0px," + t + "px, 0px)", s.$slideTrack.css(n), i && setTimeout(function() {
          s.disableTransition(), i.call()
        }, s.options.speed))
      }, t.prototype.getNavTarget = function() {
        var t = this.options.asNavFor;
        return t && null !== t && (t = e(t).not(this.$slider)), t
      }, t.prototype.asNavFor = function(t) {
        var i = this.getNavTarget();
        null !== i && "object" == typeof i && i.each(function() {
          var i = e(this).slick("getSlick");
          i.unslicked || i.slideHandler(t, !0)
        })
      }, t.prototype.applyTransition = function(e) {
        var t = this,
          i = {};
        !1 === t.options.fade ? i[t.transitionType] = t.transformType + " " + t.options.speed + "ms " + t.options.cssEase : i[t.transitionType] = "opacity " + t.options.speed + "ms " + t.options.cssEase, !1 === t.options.fade ? t.$slideTrack.css(i) : t.$slides.eq(e).css(i)
      }, t.prototype.autoPlay = function() {
        var e = this;
        e.autoPlayClear(), e.slideCount > e.options.slidesToShow && (e.autoPlayTimer = setInterval(e.autoPlayIterator, e.options.autoplaySpeed))
      }, t.prototype.autoPlayClear = function() {
        this.autoPlayTimer && clearInterval(this.autoPlayTimer)
      }, t.prototype.autoPlayIterator = function() {
        var e = this,
          t = e.currentSlide + e.options.slidesToScroll;
        e.paused || e.interrupted || e.focussed || (!1 === e.options.infinite && (1 === e.direction && e.currentSlide + 1 === e.slideCount - 1 ? e.direction = 0 : 0 === e.direction && (t = e.currentSlide - e.options.slidesToScroll, e.currentSlide - 1 == 0 && (e.direction = 1))), e.slideHandler(t))
      }, t.prototype.buildArrows = function() {
        var t = this;
        !0 === t.options.arrows && (t.$prevArrow = e(t.options.prevArrow).addClass("slick-arrow"), t.$nextArrow = e(t.options.nextArrow).addClass("slick-arrow"), t.slideCount > t.options.slidesToShow ? (t.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), t.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.prependTo(t.options.appendArrows), t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.appendTo(t.options.appendArrows), !0 !== t.options.infinite && t.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true")) : t.$prevArrow.add(t.$nextArrow).addClass("slick-hidden").attr({
          "aria-disabled": "true",
          tabindex: "-1"
        }))
      }, t.prototype.buildDots = function() {
        var t, i, n = this;
        if (!0 === n.options.dots && n.slideCount > n.options.slidesToShow) {
          for (n.$slider.addClass("slick-dotted"), i = e("<ul />").addClass(n.options.dotsClass), t = 0; t <= n.getDotCount(); t += 1) i.append(e("<li />").append(n.options.customPaging.call(this, n, t)));
          n.$dots = i.appendTo(n.options.appendDots), n.$dots.find("li").first().addClass("slick-active")
        }
      }, t.prototype.buildOut = function() {
        var t = this;
        t.$slides = t.$slider.children(t.options.slide + ":not(.slick-cloned)").addClass("slick-slide"), t.slideCount = t.$slides.length, t.$slides.each(function(t, i) {
          e(i).attr("data-slick-index", t).data("originalStyling", e(i).attr("style") || "")
        }), t.$slider.addClass("slick-slider"), t.$slideTrack = 0 === t.slideCount ? e('<div class="slick-track"/>').appendTo(t.$slider) : t.$slides.wrapAll('<div class="slick-track"/>').parent(), t.$list = t.$slideTrack.wrap('<div class="slick-list"/>').parent(), t.$slideTrack.css("opacity", 0), !0 !== t.options.centerMode && !0 !== t.options.swipeToSlide || (t.options.slidesToScroll = 1), e("img[data-lazy]", t.$slider).not("[src]").addClass("slick-loading"), t.setupInfinite(), t.buildArrows(), t.buildDots(), t.updateDots(), t.setSlideClasses("number" == typeof t.currentSlide ? t.currentSlide : 0), !0 === t.options.draggable && t.$list.addClass("draggable")
      }, t.prototype.buildRows = function() {
        var e, t, i, n, s, o, r, a = this;
        if (n = document.createDocumentFragment(), o = a.$slider.children(), a.options.rows > 0) {
          for (r = a.options.slidesPerRow * a.options.rows, s = Math.ceil(o.length / r), e = 0; e < s; e++) {
            var l = document.createElement("div");
            for (t = 0; t < a.options.rows; t++) {
              var c = document.createElement("div");
              for (i = 0; i < a.options.slidesPerRow; i++) {
                var d = e * r + (t * a.options.slidesPerRow + i);
                o.get(d) && c.appendChild(o.get(d))
              }
              l.appendChild(c)
            }
            n.appendChild(l)
          }
          a.$slider.empty().append(n), a.$slider.children().children().children().css({
            width: 100 / a.options.slidesPerRow + "%",
            display: "inline-block"
          })
        }
      }, t.prototype.checkResponsive = function(t, i) {
        var n, s, o, r = this,
          a = !1,
          l = r.$slider.width(),
          c = window.innerWidth || e(window).width();
        if ("window" === r.respondTo ? o = c : "slider" === r.respondTo ? o = l : "min" === r.respondTo && (o = Math.min(c, l)), r.options.responsive && r.options.responsive.length && null !== r.options.responsive) {
          for (n in s = null, r.breakpoints) r.breakpoints.hasOwnProperty(n) && (!1 === r.originalSettings.mobileFirst ? o < r.breakpoints[n] && (s = r.breakpoints[n]) : o > r.breakpoints[n] && (s = r.breakpoints[n]));
          null !== s ? null !== r.activeBreakpoint ? (s !== r.activeBreakpoint || i) && (r.activeBreakpoint = s, "unslick" === r.breakpointSettings[s] ? r.unslick(s) : (r.options = e.extend({}, r.originalSettings, r.breakpointSettings[s]), !0 === t && (r.currentSlide = r.options.initialSlide), r.refresh(t)), a = s) : (r.activeBreakpoint = s, "unslick" === r.breakpointSettings[s] ? r.unslick(s) : (r.options = e.extend({}, r.originalSettings, r.breakpointSettings[s]), !0 === t && (r.currentSlide = r.options.initialSlide), r.refresh(t)), a = s) : null !== r.activeBreakpoint && (r.activeBreakpoint = null, r.options = r.originalSettings, !0 === t && (r.currentSlide = r.options.initialSlide), r.refresh(t), a = s), t || !1 === a || r.$slider.trigger("breakpoint", [r, a])
        }
      }, t.prototype.changeSlide = function(t, i) {
        var n, s, o = this,
          r = e(t.currentTarget);
        switch (r.is("a") && t.preventDefault(), r.is("li") || (r = r.closest("li")), n = o.slideCount % o.options.slidesToScroll != 0 ? 0 : (o.slideCount - o.currentSlide) % o.options.slidesToScroll, t.data.message) {
          case "previous":
            s = 0 === n ? o.options.slidesToScroll : o.options.slidesToShow - n, o.slideCount > o.options.slidesToShow && o.slideHandler(o.currentSlide - s, !1, i);
            break;
          case "next":
            s = 0 === n ? o.options.slidesToScroll : n, o.slideCount > o.options.slidesToShow && o.slideHandler(o.currentSlide + s, !1, i);
            break;
          case "index":
            var a = 0 === t.data.index ? 0 : t.data.index || r.index() * o.options.slidesToScroll;
            o.slideHandler(o.checkNavigable(a), !1, i), r.children().trigger("focus");
            break;
          default:
            return
        }
      }, t.prototype.checkNavigable = function(e) {
        var t, i;
        if (i = 0, e > (t = this.getNavigableIndexes())[t.length - 1]) e = t[t.length - 1];
        else
          for (var n in t) {
            if (e < t[n]) {
              e = i;
              break
            }
            i = t[n]
          }
        return e
      }, t.prototype.cleanUpEvents = function() {
        var t = this;
        t.options.dots && null !== t.$dots && (e("li", t.$dots).off("click.slick", t.changeSlide).off("mouseenter.slick", e.proxy(t.interrupt, t, !0)).off("mouseleave.slick", e.proxy(t.interrupt, t, !1)), !0 === t.options.accessibility && t.$dots.off("keydown.slick", t.keyHandler)), t.$slider.off("focus.slick blur.slick"), !0 === t.options.arrows && t.slideCount > t.options.slidesToShow && (t.$prevArrow && t.$prevArrow.off("click.slick", t.changeSlide), t.$nextArrow && t.$nextArrow.off("click.slick", t.changeSlide), !0 === t.options.accessibility && (t.$prevArrow && t.$prevArrow.off("keydown.slick", t.keyHandler), t.$nextArrow && t.$nextArrow.off("keydown.slick", t.keyHandler))), t.$list.off("touchstart.slick mousedown.slick", t.swipeHandler), t.$list.off("touchmove.slick mousemove.slick", t.swipeHandler), t.$list.off("touchend.slick mouseup.slick", t.swipeHandler), t.$list.off("touchcancel.slick mouseleave.slick", t.swipeHandler), t.$list.off("click.slick", t.clickHandler), e(document).off(t.visibilityChange, t.visibility), t.cleanUpSlideEvents(), !0 === t.options.accessibility && t.$list.off("keydown.slick", t.keyHandler), !0 === t.options.focusOnSelect && e(t.$slideTrack).children().off("click.slick", t.selectHandler), e(window).off("orientationchange.slick.slick-" + t.instanceUid, t.orientationChange), e(window).off("resize.slick.slick-" + t.instanceUid, t.resize), e("[draggable!=true]", t.$slideTrack).off("dragstart", t.preventDefault), e(window).off("load.slick.slick-" + t.instanceUid, t.setPosition)
      }, t.prototype.cleanUpSlideEvents = function() {
        var t = this;
        t.$list.off("mouseenter.slick", e.proxy(t.interrupt, t, !0)), t.$list.off("mouseleave.slick", e.proxy(t.interrupt, t, !1))
      }, t.prototype.cleanUpRows = function() {
        var e, t = this;
        t.options.rows > 0 && ((e = t.$slides.children().children()).removeAttr("style"), t.$slider.empty().append(e))
      }, t.prototype.clickHandler = function(e) {
        !1 === this.shouldClick && (e.stopImmediatePropagation(), e.stopPropagation(), e.preventDefault())
      }, t.prototype.destroy = function(t) {
        var i = this;
        i.autoPlayClear(), i.touchObject = {}, i.cleanUpEvents(), e(".slick-cloned", i.$slider).detach(), i.$dots && i.$dots.remove(), i.$prevArrow && i.$prevArrow.length && (i.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), i.htmlExpr.test(i.options.prevArrow) && i.$prevArrow.remove()), i.$nextArrow && i.$nextArrow.length && (i.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), i.htmlExpr.test(i.options.nextArrow) && i.$nextArrow.remove()), i.$slides && (i.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function() {
          e(this).attr("style", e(this).data("originalStyling"))
        }), i.$slideTrack.children(this.options.slide).detach(), i.$slideTrack.detach(), i.$list.detach(), i.$slider.append(i.$slides)), i.cleanUpRows(), i.$slider.removeClass("slick-slider"), i.$slider.removeClass("slick-initialized"), i.$slider.removeClass("slick-dotted"), i.unslicked = !0, t || i.$slider.trigger("destroy", [i])
      }, t.prototype.disableTransition = function(e) {
        var t = this,
          i = {};
        i[t.transitionType] = "", !1 === t.options.fade ? t.$slideTrack.css(i) : t.$slides.eq(e).css(i)
      }, t.prototype.fadeSlide = function(e, t) {
        var i = this;
        !1 === i.cssTransitions ? (i.$slides.eq(e).css({
          zIndex: i.options.zIndex
        }), i.$slides.eq(e).animate({
          opacity: 1
        }, i.options.speed, i.options.easing, t)) : (i.applyTransition(e), i.$slides.eq(e).css({
          opacity: 1,
          zIndex: i.options.zIndex
        }), t && setTimeout(function() {
          i.disableTransition(e), t.call()
        }, i.options.speed))
      }, t.prototype.fadeSlideOut = function(e) {
        var t = this;
        !1 === t.cssTransitions ? t.$slides.eq(e).animate({
          opacity: 0,
          zIndex: t.options.zIndex - 2
        }, t.options.speed, t.options.easing) : (t.applyTransition(e), t.$slides.eq(e).css({
          opacity: 0,
          zIndex: t.options.zIndex - 2
        }))
      }, t.prototype.filterSlides = t.prototype.slickFilter = function(e) {
        var t = this;
        null !== e && (t.$slidesCache = t.$slides, t.unload(), t.$slideTrack.children(this.options.slide).detach(), t.$slidesCache.filter(e).appendTo(t.$slideTrack), t.reinit())
      }, t.prototype.focusHandler = function() {
        var t = this;
        t.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick", "*", function(i) {
          i.stopImmediatePropagation();
          var n = e(this);
          setTimeout(function() {
            t.options.pauseOnFocus && (t.focussed = n.is(":focus"), t.autoPlay())
          }, 0)
        })
      }, t.prototype.getCurrent = t.prototype.slickCurrentSlide = function() {
        return this.currentSlide
      }, t.prototype.getDotCount = function() {
        var e = this,
          t = 0,
          i = 0,
          n = 0;
        if (!0 === e.options.infinite)
          if (e.slideCount <= e.options.slidesToShow) ++n;
          else
            for (; t < e.slideCount;) ++n, t = i + e.options.slidesToScroll, i += e.options.slidesToScroll <= e.options.slidesToShow ? e.options.slidesToScroll : e.options.slidesToShow;
        else if (!0 === e.options.centerMode) n = e.slideCount;
        else if (e.options.asNavFor)
          for (; t < e.slideCount;) ++n, t = i + e.options.slidesToScroll, i += e.options.slidesToScroll <= e.options.slidesToShow ? e.options.slidesToScroll : e.options.slidesToShow;
        else n = 1 + Math.ceil((e.slideCount - e.options.slidesToShow) / e.options.slidesToScroll);
        return n - 1
      }, t.prototype.getLeft = function(e) {
        var t, i, n, s, o = this,
          r = 0;
        return o.slideOffset = 0, i = o.$slides.first().outerHeight(!0), !0 === o.options.infinite ? (o.slideCount > o.options.slidesToShow && (o.slideOffset = o.slideWidth * o.options.slidesToShow * -1, s = -1, !0 === o.options.vertical && !0 === o.options.centerMode && (2 === o.options.slidesToShow ? s = -1.5 : 1 === o.options.slidesToShow && (s = -2)), r = i * o.options.slidesToShow * s), o.slideCount % o.options.slidesToScroll != 0 && e + o.options.slidesToScroll > o.slideCount && o.slideCount > o.options.slidesToShow && (e > o.slideCount ? (o.slideOffset = (o.options.slidesToShow - (e - o.slideCount)) * o.slideWidth * -1, r = (o.options.slidesToShow - (e - o.slideCount)) * i * -1) : (o.slideOffset = o.slideCount % o.options.slidesToScroll * o.slideWidth * -1, r = o.slideCount % o.options.slidesToScroll * i * -1))) : e + o.options.slidesToShow > o.slideCount && (o.slideOffset = (e + o.options.slidesToShow - o.slideCount) * o.slideWidth, r = (e + o.options.slidesToShow - o.slideCount) * i), o.slideCount <= o.options.slidesToShow && (o.slideOffset = 0, r = 0), !0 === o.options.centerMode && o.slideCount <= o.options.slidesToShow ? o.slideOffset = o.slideWidth * Math.floor(o.options.slidesToShow) / 2 - o.slideWidth * o.slideCount / 2 : !0 === o.options.centerMode && !0 === o.options.infinite ? o.slideOffset += o.slideWidth * Math.floor(o.options.slidesToShow / 2) - o.slideWidth : !0 === o.options.centerMode && (o.slideOffset = 0, o.slideOffset += o.slideWidth * Math.floor(o.options.slidesToShow / 2)), t = !1 === o.options.vertical ? e * o.slideWidth * -1 + o.slideOffset : e * i * -1 + r, !0 === o.options.variableWidth && (n = o.slideCount <= o.options.slidesToShow || !1 === o.options.infinite ? o.$slideTrack.children(".slick-slide").eq(e) : o.$slideTrack.children(".slick-slide").eq(e + o.options.slidesToShow), t = !0 === o.options.rtl ? n[0] ? -1 * (o.$slideTrack.width() - n[0].offsetLeft - n.width()) : 0 : n[0] ? -1 * n[0].offsetLeft : 0, !0 === o.options.centerMode && (n = o.slideCount <= o.options.slidesToShow || !1 === o.options.infinite ? o.$slideTrack.children(".slick-slide").eq(e) : o.$slideTrack.children(".slick-slide").eq(e + o.options.slidesToShow + 1), t = !0 === o.options.rtl ? n[0] ? -1 * (o.$slideTrack.width() - n[0].offsetLeft - n.width()) : 0 : n[0] ? -1 * n[0].offsetLeft : 0, t += (o.$list.width() - n.outerWidth()) / 2)), t
      }, t.prototype.getOption = t.prototype.slickGetOption = function(e) {
        return this.options[e]
      }, t.prototype.getNavigableIndexes = function() {
        var e, t = this,
          i = 0,
          n = 0,
          s = [];
        for (!1 === t.options.infinite ? e = t.slideCount : (i = -1 * t.options.slidesToScroll, n = -1 * t.options.slidesToScroll, e = 2 * t.slideCount); i < e;) s.push(i), i = n + t.options.slidesToScroll, n += t.options.slidesToScroll <= t.options.slidesToShow ? t.options.slidesToScroll : t.options.slidesToShow;
        return s
      }, t.prototype.getSlick = function() {
        return this
      }, t.prototype.getSlideCount = function() {
        var t, i, n = this;
        return i = !0 === n.options.centerMode ? n.slideWidth * Math.floor(n.options.slidesToShow / 2) : 0, !0 === n.options.swipeToSlide ? (n.$slideTrack.find(".slick-slide").each(function(s, o) {
          if (o.offsetLeft - i + e(o).outerWidth() / 2 > -1 * n.swipeLeft) return t = o, !1
        }), Math.abs(e(t).attr("data-slick-index") - n.currentSlide) || 1) : n.options.slidesToScroll
      }, t.prototype.goTo = t.prototype.slickGoTo = function(e, t) {
        this.changeSlide({
          data: {
            message: "index",
            index: parseInt(e)
          }
        }, t)
      }, t.prototype.init = function(t) {
        var i = this;
        e(i.$slider).hasClass("slick-initialized") || (e(i.$slider).addClass("slick-initialized"), i.buildRows(), i.buildOut(), i.setProps(), i.startLoad(), i.loadSlider(), i.initializeEvents(), i.updateArrows(), i.updateDots(), i.checkResponsive(!0), i.focusHandler()), t && i.$slider.trigger("init", [i]), !0 === i.options.accessibility && i.initADA(), i.options.autoplay && (i.paused = !1, i.autoPlay())
      }, t.prototype.initADA = function() {
        var t = this,
          i = Math.ceil(t.slideCount / t.options.slidesToShow),
          n = t.getNavigableIndexes().filter(function(e) {
            return e >= 0 && e < t.slideCount
          });
        t.$slides.add(t.$slideTrack.find(".slick-cloned")).attr({
          "aria-hidden": "true",
          tabindex: "-1"
        }).find("a, input, button, select").attr({
          tabindex: "-1"
        }), null !== t.$dots && (t.$slides.not(t.$slideTrack.find(".slick-cloned")).each(function(i) {
          var s = n.indexOf(i);
          if (e(this).attr({
              role: "tabpanel",
              id: "slick-slide" + t.instanceUid + i,
              tabindex: -1
            }), -1 !== s) {
            var o = "slick-slide-control" + t.instanceUid + s;
            e("#" + o).length && e(this).attr({
              "aria-describedby": o
            })
          }
        }), t.$dots.attr("role", "tablist").find("li").each(function(s) {
          var o = n[s];
          e(this).attr({
            role: "presentation"
          }), e(this).find("button").first().attr({
            role: "tab",
            id: "slick-slide-control" + t.instanceUid + s,
            "aria-controls": "slick-slide" + t.instanceUid + o,
            "aria-label": s + 1 + " of " + i,
            "aria-selected": null,
            tabindex: "-1"
          })
        }).eq(t.currentSlide).find("button").attr({
          "aria-selected": "true",
          tabindex: "0"
        }).end());
        for (var s = t.currentSlide, o = s + t.options.slidesToShow; s < o; s++) t.options.focusOnChange ? t.$slides.eq(s).attr({
          tabindex: "0"
        }) : t.$slides.eq(s).removeAttr("tabindex");
        t.activateADA()
      }, t.prototype.initArrowEvents = function() {
        var e = this;
        !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.off("click.slick").on("click.slick", {
          message: "previous"
        }, e.changeSlide), e.$nextArrow.off("click.slick").on("click.slick", {
          message: "next"
        }, e.changeSlide), !0 === e.options.accessibility && (e.$prevArrow.on("keydown.slick", e.keyHandler), e.$nextArrow.on("keydown.slick", e.keyHandler)))
      }, t.prototype.initDotEvents = function() {
        var t = this;
        !0 === t.options.dots && t.slideCount > t.options.slidesToShow && (e("li", t.$dots).on("click.slick", {
          message: "index"
        }, t.changeSlide), !0 === t.options.accessibility && t.$dots.on("keydown.slick", t.keyHandler)), !0 === t.options.dots && !0 === t.options.pauseOnDotsHover && t.slideCount > t.options.slidesToShow && e("li", t.$dots).on("mouseenter.slick", e.proxy(t.interrupt, t, !0)).on("mouseleave.slick", e.proxy(t.interrupt, t, !1))
      }, t.prototype.initSlideEvents = function() {
        var t = this;
        t.options.pauseOnHover && (t.$list.on("mouseenter.slick", e.proxy(t.interrupt, t, !0)), t.$list.on("mouseleave.slick", e.proxy(t.interrupt, t, !1)))
      }, t.prototype.initializeEvents = function() {
        var t = this;
        t.initArrowEvents(), t.initDotEvents(), t.initSlideEvents(), t.$list.on("touchstart.slick mousedown.slick", {
          action: "start"
        }, t.swipeHandler), t.$list.on("touchmove.slick mousemove.slick", {
          action: "move"
        }, t.swipeHandler), t.$list.on("touchend.slick mouseup.slick", {
          action: "end"
        }, t.swipeHandler), t.$list.on("touchcancel.slick mouseleave.slick", {
          action: "end"
        }, t.swipeHandler), t.$list.on("click.slick", t.clickHandler), e(document).on(t.visibilityChange, e.proxy(t.visibility, t)), !0 === t.options.accessibility && t.$list.on("keydown.slick", t.keyHandler), !0 === t.options.focusOnSelect && e(t.$slideTrack).children().on("click.slick", t.selectHandler), e(window).on("orientationchange.slick.slick-" + t.instanceUid, e.proxy(t.orientationChange, t)), e(window).on("resize.slick.slick-" + t.instanceUid, e.proxy(t.resize, t)), e("[draggable!=true]", t.$slideTrack).on("dragstart", t.preventDefault), e(window).on("load.slick.slick-" + t.instanceUid, t.setPosition), e(t.setPosition)
      }, t.prototype.initUI = function() {
        var e = this;
        !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.show(), e.$nextArrow.show()), !0 === e.options.dots && e.slideCount > e.options.slidesToShow && e.$dots.show()
      }, t.prototype.keyHandler = function(e) {
        var t = this;
        e.target.tagName.match("TEXTAREA|INPUT|SELECT") || (37 === e.keyCode && !0 === t.options.accessibility ? t.changeSlide({
          data: {
            message: !0 === t.options.rtl ? "next" : "previous"
          }
        }) : 39 === e.keyCode && !0 === t.options.accessibility && t.changeSlide({
          data: {
            message: !0 === t.options.rtl ? "previous" : "next"
          }
        }))
      }, t.prototype.lazyLoad = function() {
        var t, i, n, s = this;

        function o(t) {
          e("img[data-lazy]", t).each(function() {
            var t = e(this),
              i = e(this).attr("data-lazy"),
              n = e(this).attr("data-srcset"),
              o = e(this).attr("data-sizes") || s.$slider.attr("data-sizes"),
              r = document.createElement("img");
            r.onload = function() {
              t.animate({
                opacity: 0
              }, 100, function() {
                n && (t.attr("srcset", n), o && t.attr("sizes", o)), t.attr("src", i).animate({
                  opacity: 1
                }, 200, function() {
                  t.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")
                }), s.$slider.trigger("lazyLoaded", [s, t, i])
              })
            }, r.onerror = function() {
              t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), s.$slider.trigger("lazyLoadError", [s, t, i])
            }, r.src = i
          })
        }
        if (!0 === s.options.centerMode ? !0 === s.options.infinite ? n = (i = s.currentSlide + (s.options.slidesToShow / 2 + 1)) + s.options.slidesToShow + 2 : (i = Math.max(0, s.currentSlide - (s.options.slidesToShow / 2 + 1)), n = s.options.slidesToShow / 2 + 1 + 2 + s.currentSlide) : (i = s.options.infinite ? s.options.slidesToShow + s.currentSlide : s.currentSlide, n = Math.ceil(i + s.options.slidesToShow), !0 === s.options.fade && (i > 0 && i--, n <= s.slideCount && n++)), t = s.$slider.find(".slick-slide").slice(i, n), "anticipated" === s.options.lazyLoad)
          for (var r = i - 1, a = n, l = s.$slider.find(".slick-slide"), c = 0; c < s.options.slidesToScroll; c++) r < 0 && (r = s.slideCount - 1), t = (t = t.add(l.eq(r))).add(l.eq(a)), r--, a++;
        o(t), s.slideCount <= s.options.slidesToShow ? o(s.$slider.find(".slick-slide")) : s.currentSlide >= s.slideCount - s.options.slidesToShow ? o(s.$slider.find(".slick-cloned").slice(0, s.options.slidesToShow)) : 0 === s.currentSlide && o(s.$slider.find(".slick-cloned").slice(-1 * s.options.slidesToShow))
      }, t.prototype.loadSlider = function() {
        var e = this;
        e.setPosition(), e.$slideTrack.css({
          opacity: 1
        }), e.$slider.removeClass("slick-loading"), e.initUI(), "progressive" === e.options.lazyLoad && e.progressiveLazyLoad()
      }, t.prototype.next = t.prototype.slickNext = function() {
        this.changeSlide({
          data: {
            message: "next"
          }
        })
      }, t.prototype.orientationChange = function() {
        this.checkResponsive(), this.setPosition()
      }, t.prototype.pause = t.prototype.slickPause = function() {
        this.autoPlayClear(), this.paused = !0
      }, t.prototype.play = t.prototype.slickPlay = function() {
        var e = this;
        e.autoPlay(), e.options.autoplay = !0, e.paused = !1, e.focussed = !1, e.interrupted = !1
      }, t.prototype.postSlide = function(t) {
        var i = this;
        i.unslicked || (i.$slider.trigger("afterChange", [i, t]), i.animating = !1, i.slideCount > i.options.slidesToShow && i.setPosition(), i.swipeLeft = null, i.options.autoplay && i.autoPlay(), !0 === i.options.accessibility && (i.initADA(), i.options.focusOnChange && e(i.$slides.get(i.currentSlide)).attr("tabindex", 0).focus()))
      }, t.prototype.prev = t.prototype.slickPrev = function() {
        this.changeSlide({
          data: {
            message: "previous"
          }
        })
      }, t.prototype.preventDefault = function(e) {
        e.preventDefault()
      }, t.prototype.progressiveLazyLoad = function(t) {
        t = t || 1;
        var i, n, s, o, r, a = this,
          l = e("img[data-lazy]", a.$slider);
        l.length ? (i = l.first(), n = i.attr("data-lazy"), s = i.attr("data-srcset"), o = i.attr("data-sizes") || a.$slider.attr("data-sizes"), (r = document.createElement("img")).onload = function() {
          s && (i.attr("srcset", s), o && i.attr("sizes", o)), i.attr("src", n).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"), !0 === a.options.adaptiveHeight && a.setPosition(), a.$slider.trigger("lazyLoaded", [a, i, n]), a.progressiveLazyLoad()
        }, r.onerror = function() {
          t < 3 ? setTimeout(function() {
            a.progressiveLazyLoad(t + 1)
          }, 500) : (i.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), a.$slider.trigger("lazyLoadError", [a, i, n]), a.progressiveLazyLoad())
        }, r.src = n) : a.$slider.trigger("allImagesLoaded", [a])
      }, t.prototype.refresh = function(t) {
        var i, n, s = this;
        n = s.slideCount - s.options.slidesToShow, !s.options.infinite && s.currentSlide > n && (s.currentSlide = n), s.slideCount <= s.options.slidesToShow && (s.currentSlide = 0), i = s.currentSlide, s.destroy(!0), e.extend(s, s.initials, {
          currentSlide: i
        }), s.init(), t || s.changeSlide({
          data: {
            message: "index",
            index: i
          }
        }, !1)
      }, t.prototype.registerBreakpoints = function() {
        var t, i, n, s = this,
          o = s.options.responsive || null;
        if ("array" === e.type(o) && o.length) {
          for (t in s.respondTo = s.options.respondTo || "window", o)
            if (n = s.breakpoints.length - 1, o.hasOwnProperty(t)) {
              for (i = o[t].breakpoint; n >= 0;) s.breakpoints[n] && s.breakpoints[n] === i && s.breakpoints.splice(n, 1), n--;
              s.breakpoints.push(i), s.breakpointSettings[i] = o[t].settings
            } s.breakpoints.sort(function(e, t) {
            return s.options.mobileFirst ? e - t : t - e
          })
        }
      }, t.prototype.reinit = function() {
        var t = this;
        t.$slides = t.$slideTrack.children(t.options.slide).addClass("slick-slide"), t.slideCount = t.$slides.length, t.currentSlide >= t.slideCount && 0 !== t.currentSlide && (t.currentSlide = t.currentSlide - t.options.slidesToScroll), t.slideCount <= t.options.slidesToShow && (t.currentSlide = 0), t.registerBreakpoints(), t.setProps(), t.setupInfinite(), t.buildArrows(), t.updateArrows(), t.initArrowEvents(), t.buildDots(), t.updateDots(), t.initDotEvents(), t.cleanUpSlideEvents(), t.initSlideEvents(), t.checkResponsive(!1, !0), !0 === t.options.focusOnSelect && e(t.$slideTrack).children().on("click.slick", t.selectHandler), t.setSlideClasses("number" == typeof t.currentSlide ? t.currentSlide : 0), t.setPosition(), t.focusHandler(), t.paused = !t.options.autoplay, t.autoPlay(), t.$slider.trigger("reInit", [t])
      }, t.prototype.resize = function() {
        var t = this;
        e(window).width() !== t.windowWidth && (clearTimeout(t.windowDelay), t.windowDelay = window.setTimeout(function() {
          t.windowWidth = e(window).width(), t.checkResponsive(), t.unslicked || t.setPosition()
        }, 50))
      }, t.prototype.removeSlide = t.prototype.slickRemove = function(e, t, i) {
        var n = this;
        if (e = "boolean" == typeof e ? !0 === (t = e) ? 0 : n.slideCount - 1 : !0 === t ? --e : e, n.slideCount < 1 || e < 0 || e > n.slideCount - 1) return !1;
        n.unload(), !0 === i ? n.$slideTrack.children().remove() : n.$slideTrack.children(this.options.slide).eq(e).remove(), n.$slides = n.$slideTrack.children(this.options.slide), n.$slideTrack.children(this.options.slide).detach(), n.$slideTrack.append(n.$slides), n.$slidesCache = n.$slides, n.reinit()
      }, t.prototype.setCSS = function(e) {
        var t, i, n = this,
          s = {};
        !0 === n.options.rtl && (e = -e), t = "left" == n.positionProp ? Math.ceil(e) + "px" : "0px", i = "top" == n.positionProp ? Math.ceil(e) + "px" : "0px", s[n.positionProp] = e, !1 === n.transformsEnabled ? n.$slideTrack.css(s) : (s = {}, !1 === n.cssTransitions ? (s[n.animType] = "translate(" + t + ", " + i + ")", n.$slideTrack.css(s)) : (s[n.animType] = "translate3d(" + t + ", " + i + ", 0px)", n.$slideTrack.css(s)))
      }, t.prototype.setDimensions = function() {
        var e = this;
        !1 === e.options.vertical ? !0 === e.options.centerMode && e.$list.css({
          padding: "0px " + e.options.centerPadding
        }) : (e.$list.height(e.$slides.first().outerHeight(!0) * e.options.slidesToShow), !0 === e.options.centerMode && e.$list.css({
          padding: e.options.centerPadding + " 0px"
        })), e.listWidth = e.$list.width(), e.listHeight = e.$list.height(), !1 === e.options.vertical && !1 === e.options.variableWidth ? (e.slideWidth = Math.ceil(e.listWidth / e.options.slidesToShow), e.$slideTrack.width(Math.ceil(e.slideWidth * e.$slideTrack.children(".slick-slide").length))) : !0 === e.options.variableWidth ? e.$slideTrack.width(5e3 * e.slideCount) : (e.slideWidth = Math.ceil(e.listWidth), e.$slideTrack.height(Math.ceil(e.$slides.first().outerHeight(!0) * e.$slideTrack.children(".slick-slide").length)));
        var t = e.$slides.first().outerWidth(!0) - e.$slides.first().width();
        !1 === e.options.variableWidth && e.$slideTrack.children(".slick-slide").width(e.slideWidth - t)
      }, t.prototype.setFade = function() {
        var t, i = this;
        i.$slides.each(function(n, s) {
          t = i.slideWidth * n * -1, !0 === i.options.rtl ? e(s).css({
            position: "relative",
            right: t,
            top: 0,
            zIndex: i.options.zIndex - 2,
            opacity: 0
          }) : e(s).css({
            position: "relative",
            left: t,
            top: 0,
            zIndex: i.options.zIndex - 2,
            opacity: 0
          })
        }), i.$slides.eq(i.currentSlide).css({
          zIndex: i.options.zIndex - 1,
          opacity: 1
        })
      }, t.prototype.setHeight = function() {
        var e = this;
        if (1 === e.options.slidesToShow && !0 === e.options.adaptiveHeight && !1 === e.options.vertical) {
          var t = e.$slides.eq(e.currentSlide).outerHeight(!0);
          e.$list.css("height", t)
        }
      }, t.prototype.setOption = t.prototype.slickSetOption = function() {
        var t, i, n, s, o, r = this,
          a = !1;
        if ("object" === e.type(arguments[0]) ? (n = arguments[0], a = arguments[1], o = "multiple") : "string" === e.type(arguments[0]) && (n = arguments[0], s = arguments[1], a = arguments[2], "responsive" === arguments[0] && "array" === e.type(arguments[1]) ? o = "responsive" : void 0 !== arguments[1] && (o = "single")), "single" === o) r.options[n] = s;
        else if ("multiple" === o) e.each(n, function(e, t) {
          r.options[e] = t
        });
        else if ("responsive" === o)
          for (i in s)
            if ("array" !== e.type(r.options.responsive)) r.options.responsive = [s[i]];
            else {
              for (t = r.options.responsive.length - 1; t >= 0;) r.options.responsive[t].breakpoint === s[i].breakpoint && r.options.responsive.splice(t, 1), t--;
              r.options.responsive.push(s[i])
            } a && (r.unload(), r.reinit())
      }, t.prototype.setPosition = function() {
        var e = this;
        e.setDimensions(), e.setHeight(), !1 === e.options.fade ? e.setCSS(e.getLeft(e.currentSlide)) : e.setFade(), e.$slider.trigger("setPosition", [e])
      }, t.prototype.setProps = function() {
        var e = this,
          t = document.body.style;
        e.positionProp = !0 === e.options.vertical ? "top" : "left", "top" === e.positionProp ? e.$slider.addClass("slick-vertical") : e.$slider.removeClass("slick-vertical"), void 0 === t.WebkitTransition && void 0 === t.MozTransition && void 0 === t.msTransition || !0 === e.options.useCSS && (e.cssTransitions = !0), e.options.fade && ("number" == typeof e.options.zIndex ? e.options.zIndex < 3 && (e.options.zIndex = 3) : e.options.zIndex = e.defaults.zIndex), void 0 !== t.OTransform && (e.animType = "OTransform", e.transformType = "-o-transform", e.transitionType = "OTransition", void 0 === t.perspectiveProperty && void 0 === t.webkitPerspective && (e.animType = !1)), void 0 !== t.MozTransform && (e.animType = "MozTransform", e.transformType = "-moz-transform", e.transitionType = "MozTransition", void 0 === t.perspectiveProperty && void 0 === t.MozPerspective && (e.animType = !1)), void 0 !== t.webkitTransform && (e.animType = "webkitTransform", e.transformType = "-webkit-transform", e.transitionType = "webkitTransition", void 0 === t.perspectiveProperty && void 0 === t.webkitPerspective && (e.animType = !1)), void 0 !== t.msTransform && (e.animType = "msTransform", e.transformType = "-ms-transform", e.transitionType = "msTransition", void 0 === t.msTransform && (e.animType = !1)), void 0 !== t.transform && !1 !== e.animType && (e.animType = "transform", e.transformType = "transform", e.transitionType = "transition"), e.transformsEnabled = e.options.useTransform && null !== e.animType && !1 !== e.animType
      }, t.prototype.setSlideClasses = function(e) {
        var t, i, n, s, o = this;
        if (i = o.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden", "true"), o.$slides.eq(e).addClass("slick-current"), !0 === o.options.centerMode) {
          var r = o.options.slidesToShow % 2 == 0 ? 1 : 0;
          t = Math.floor(o.options.slidesToShow / 2), !0 === o.options.infinite && (e >= t && e <= o.slideCount - 1 - t ? o.$slides.slice(e - t + r, e + t + 1).addClass("slick-active").attr("aria-hidden", "false") : (n = o.options.slidesToShow + e, i.slice(n - t + 1 + r, n + t + 2).addClass("slick-active").attr("aria-hidden", "false")), 0 === e ? i.eq(i.length - 1 - o.options.slidesToShow).addClass("slick-center") : e === o.slideCount - 1 && i.eq(o.options.slidesToShow).addClass("slick-center")), o.$slides.eq(e).addClass("slick-center")
        } else e >= 0 && e <= o.slideCount - o.options.slidesToShow ? o.$slides.slice(e, e + o.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false") : i.length <= o.options.slidesToShow ? i.addClass("slick-active").attr("aria-hidden", "false") : (s = o.slideCount % o.options.slidesToShow, n = !0 === o.options.infinite ? o.options.slidesToShow + e : e, o.options.slidesToShow == o.options.slidesToScroll && o.slideCount - e < o.options.slidesToShow ? i.slice(n - (o.options.slidesToShow - s), n + s).addClass("slick-active").attr("aria-hidden", "false") : i.slice(n, n + o.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false"));
        "ondemand" !== o.options.lazyLoad && "anticipated" !== o.options.lazyLoad || o.lazyLoad()
      }, t.prototype.setupInfinite = function() {
        var t, i, n, s = this;
        if (!0 === s.options.fade && (s.options.centerMode = !1), !0 === s.options.infinite && !1 === s.options.fade && (i = null, s.slideCount > s.options.slidesToShow)) {
          for (n = !0 === s.options.centerMode ? s.options.slidesToShow + 1 : s.options.slidesToShow, t = s.slideCount; t > s.slideCount - n; t -= 1) i = t - 1, e(s.$slides[i]).clone(!0).attr("id", "").attr("data-slick-index", i - s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");
          for (t = 0; t < n + s.slideCount; t += 1) i = t, e(s.$slides[i]).clone(!0).attr("id", "").attr("data-slick-index", i + s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");
          s.$slideTrack.find(".slick-cloned").find("[id]").each(function() {
            e(this).attr("id", "")
          })
        }
      }, t.prototype.interrupt = function(e) {
        e || this.autoPlay(), this.interrupted = e
      }, t.prototype.selectHandler = function(t) {
        var i = this,
          n = e(t.target).is(".slick-slide") ? e(t.target) : e(t.target).parents(".slick-slide"),
          s = parseInt(n.attr("data-slick-index"));
        s || (s = 0), i.slideCount <= i.options.slidesToShow ? i.slideHandler(s, !1, !0) : i.slideHandler(s)
      }, t.prototype.slideHandler = function(e, t, i) {
        var n, s, o, r, a, l, c = this;
        if (t = t || !1, !(!0 === c.animating && !0 === c.options.waitForAnimate || !0 === c.options.fade && c.currentSlide === e))
          if (!1 === t && c.asNavFor(e), n = e, a = c.getLeft(n), r = c.getLeft(c.currentSlide), c.currentLeft = null === c.swipeLeft ? r : c.swipeLeft, !1 === c.options.infinite && !1 === c.options.centerMode && (e < 0 || e > c.getDotCount() * c.options.slidesToScroll)) !1 === c.options.fade && (n = c.currentSlide, !0 !== i && c.slideCount > c.options.slidesToShow ? c.animateSlide(r, function() {
            c.postSlide(n)
          }) : c.postSlide(n));
          else if (!1 === c.options.infinite && !0 === c.options.centerMode && (e < 0 || e > c.slideCount - c.options.slidesToScroll)) !1 === c.options.fade && (n = c.currentSlide, !0 !== i && c.slideCount > c.options.slidesToShow ? c.animateSlide(r, function() {
          c.postSlide(n)
        }) : c.postSlide(n));
        else {
          if (c.options.autoplay && clearInterval(c.autoPlayTimer), s = n < 0 ? c.slideCount % c.options.slidesToScroll != 0 ? c.slideCount - c.slideCount % c.options.slidesToScroll : c.slideCount + n : n >= c.slideCount ? c.slideCount % c.options.slidesToScroll != 0 ? 0 : n - c.slideCount : n, c.animating = !0, c.$slider.trigger("beforeChange", [c, c.currentSlide, s]), o = c.currentSlide, c.currentSlide = s, c.setSlideClasses(c.currentSlide), c.options.asNavFor && (l = (l = c.getNavTarget()).slick("getSlick")).slideCount <= l.options.slidesToShow && l.setSlideClasses(c.currentSlide), c.updateDots(), c.updateArrows(), !0 === c.options.fade) return !0 !== i ? (c.fadeSlideOut(o), c.fadeSlide(s, function() {
            c.postSlide(s)
          })) : c.postSlide(s), void c.animateHeight();
          !0 !== i && c.slideCount > c.options.slidesToShow ? c.animateSlide(a, function() {
            c.postSlide(s)
          }) : c.postSlide(s)
        }
      }, t.prototype.startLoad = function() {
        var e = this;
        !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.hide(), e.$nextArrow.hide()), !0 === e.options.dots && e.slideCount > e.options.slidesToShow && e.$dots.hide(), e.$slider.addClass("slick-loading")
      }, t.prototype.swipeDirection = function() {
        var e, t, i, n, s = this;
        return e = s.touchObject.startX - s.touchObject.curX, t = s.touchObject.startY - s.touchObject.curY, i = Math.atan2(t, e), (n = Math.round(180 * i / Math.PI)) < 0 && (n = 360 - Math.abs(n)), n <= 45 && n >= 0 ? !1 === s.options.rtl ? "left" : "right" : n <= 360 && n >= 315 ? !1 === s.options.rtl ? "left" : "right" : n >= 135 && n <= 225 ? !1 === s.options.rtl ? "right" : "left" : !0 === s.options.verticalSwiping ? n >= 35 && n <= 135 ? "down" : "up" : "vertical"
      }, t.prototype.swipeEnd = function(e) {
        var t, i, n = this;
        if (n.dragging = !1, n.swiping = !1, n.scrolling) return n.scrolling = !1, !1;
        if (n.interrupted = !1, n.shouldClick = !(n.touchObject.swipeLength > 10), void 0 === n.touchObject.curX) return !1;
        if (!0 === n.touchObject.edgeHit && n.$slider.trigger("edge", [n, n.swipeDirection()]), n.touchObject.swipeLength >= n.touchObject.minSwipe) {
          switch (i = n.swipeDirection()) {
            case "left":
            case "down":
              t = n.options.swipeToSlide ? n.checkNavigable(n.currentSlide + n.getSlideCount()) : n.currentSlide + n.getSlideCount(), n.currentDirection = 0;
              break;
            case "right":
            case "up":
              t = n.options.swipeToSlide ? n.checkNavigable(n.currentSlide - n.getSlideCount()) : n.currentSlide - n.getSlideCount(), n.currentDirection = 1
          }
          "vertical" != i && (n.slideHandler(t), n.touchObject = {}, n.$slider.trigger("swipe", [n, i]))
        } else n.touchObject.startX !== n.touchObject.curX && (n.slideHandler(n.currentSlide), n.touchObject = {})
      }, t.prototype.swipeHandler = function(e) {
        var t = this;
        if (!(!1 === t.options.swipe || "ontouchend" in document && !1 === t.options.swipe || !1 === t.options.draggable && -1 !== e.type.indexOf("mouse"))) switch (t.touchObject.fingerCount = e.originalEvent && void 0 !== e.originalEvent.touches ? e.originalEvent.touches.length : 1, t.touchObject.minSwipe = t.listWidth / t.options.touchThreshold, !0 === t.options.verticalSwiping && (t.touchObject.minSwipe = t.listHeight / t.options.touchThreshold), e.data.action) {
          case "start":
            t.swipeStart(e);
            break;
          case "move":
            t.swipeMove(e);
            break;
          case "end":
            t.swipeEnd(e)
        }
      }, t.prototype.swipeMove = function(e) {
        var t, i, n, s, o, r, a = this;
        return o = void 0 !== e.originalEvent ? e.originalEvent.touches : null, !(!a.dragging || a.scrolling || o && 1 !== o.length) && (t = a.getLeft(a.currentSlide), a.touchObject.curX = void 0 !== o ? o[0].pageX : e.clientX, a.touchObject.curY = void 0 !== o ? o[0].pageY : e.clientY, a.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(a.touchObject.curX - a.touchObject.startX, 2))), r = Math.round(Math.sqrt(Math.pow(a.touchObject.curY - a.touchObject.startY, 2))), !a.options.verticalSwiping && !a.swiping && r > 4 ? (a.scrolling = !0, !1) : (!0 === a.options.verticalSwiping && (a.touchObject.swipeLength = r), i = a.swipeDirection(), void 0 !== e.originalEvent && a.touchObject.swipeLength > 4 && (a.swiping = !0, e.preventDefault()), s = (!1 === a.options.rtl ? 1 : -1) * (a.touchObject.curX > a.touchObject.startX ? 1 : -1), !0 === a.options.verticalSwiping && (s = a.touchObject.curY > a.touchObject.startY ? 1 : -1), n = a.touchObject.swipeLength, a.touchObject.edgeHit = !1, !1 === a.options.infinite && (0 === a.currentSlide && "right" === i || a.currentSlide >= a.getDotCount() && "left" === i) && (n = a.touchObject.swipeLength * a.options.edgeFriction, a.touchObject.edgeHit = !0), !1 === a.options.vertical ? a.swipeLeft = t + n * s : a.swipeLeft = t + n * (a.$list.height() / a.listWidth) * s, !0 === a.options.verticalSwiping && (a.swipeLeft = t + n * s), !0 !== a.options.fade && !1 !== a.options.touchMove && (!0 === a.animating ? (a.swipeLeft = null, !1) : void a.setCSS(a.swipeLeft))))
      }, t.prototype.swipeStart = function(e) {
        var t, i = this;
        if (i.interrupted = !0, 1 !== i.touchObject.fingerCount || i.slideCount <= i.options.slidesToShow) return i.touchObject = {}, !1;
        void 0 !== e.originalEvent && void 0 !== e.originalEvent.touches && (t = e.originalEvent.touches[0]), i.touchObject.startX = i.touchObject.curX = void 0 !== t ? t.pageX : e.clientX, i.touchObject.startY = i.touchObject.curY = void 0 !== t ? t.pageY : e.clientY, i.dragging = !0
      }, t.prototype.unfilterSlides = t.prototype.slickUnfilter = function() {
        var e = this;
        null !== e.$slidesCache && (e.unload(), e.$slideTrack.children(this.options.slide).detach(), e.$slidesCache.appendTo(e.$slideTrack), e.reinit())
      }, t.prototype.unload = function() {
        var t = this;
        e(".slick-cloned", t.$slider).remove(), t.$dots && t.$dots.remove(), t.$prevArrow && t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.remove(), t.$nextArrow && t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.remove(), t.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden", "true").css("width", "")
      }, t.prototype.unslick = function(e) {
        var t = this;
        t.$slider.trigger("unslick", [t, e]), t.destroy()
      }, t.prototype.updateArrows = function() {
        var e = this;
        Math.floor(e.options.slidesToShow / 2), !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && !e.options.infinite && (e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), e.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), 0 === e.currentSlide ? (e.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true"), e.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : e.currentSlide >= e.slideCount - e.options.slidesToShow && !1 === e.options.centerMode ? (e.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : e.currentSlide >= e.slideCount - 1 && !0 === e.options.centerMode && (e.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")))
      }, t.prototype.updateDots = function() {
        var e = this;
        null !== e.$dots && (e.$dots.find("li").removeClass("slick-active").end(), e.$dots.find("li").eq(Math.floor(e.currentSlide / e.options.slidesToScroll)).addClass("slick-active"))
      }, t.prototype.visibility = function() {
        var e = this;
        e.options.autoplay && (document[e.hidden] ? e.interrupted = !0 : e.interrupted = !1)
      }, e.fn.slick = function() {
        var e, i, n = this,
          s = arguments[0],
          o = Array.prototype.slice.call(arguments, 1),
          r = n.length;
        for (e = 0; e < r; e++)
          if ("object" == typeof s || void 0 === s ? n[e].slick = new t(n[e], s) : i = n[e].slick[s].apply(n[e].slick, o), void 0 !== i) return i;
        return n
      }
    })
  },
  "multi /src/scripts/app.js": function(e, t, i) {
    e.exports = i("g7Pl")
  }
});
//# sourceMappingURL=app-941dbf238b.bundle.js.map