/*
 * jQuery FlexSlider v2.5.0
 * Copyright 2012 WooThemes
 * Contributing Author: Tyler Smith
 */ !(function ($) {
  ($.flexslider = function (e, t) {
    var a = $(e);
    a.vars = $.extend({}, $.flexslider.defaults, t);
    var n = a.vars.namespace,
      i =
        window.navigator &&
        window.navigator.msPointerEnabled &&
        window.MSGesture,
      s =
        ("ontouchstart" in window ||
          i ||
          (window.DocumentTouch && document instanceof DocumentTouch)) &&
        a.vars.touch,
      r = "click touchend MSPointerUp keyup",
      o = "",
      l,
      c = "vertical" === a.vars.direction,
      d = a.vars.reverse,
      u = a.vars.itemWidth > 0,
      v = "fade" === a.vars.animation,
      p = "" !== a.vars.asNavFor,
      m = {},
      f = !0;
    $.data(e, "flexslider", a),
      (m = {
        init: function () {
          (a.animating = !1),
            (a.currentSlide = parseInt(
              a.vars.startAt ? a.vars.startAt : 0,
              10
            )),
            isNaN(a.currentSlide) && (a.currentSlide = 0),
            (a.animatingTo = a.currentSlide),
            (a.atEnd = 0 === a.currentSlide || a.currentSlide === a.last),
            (a.containerSelector = a.vars.selector.substr(
              0,
              a.vars.selector.search(" ")
            )),
            (a.slides = $(a.vars.selector, a)),
            (a.container = $(a.containerSelector, a)),
            (a.count = a.slides.length),
            (a.syncExists = $(a.vars.sync).length > 0),
            "slide" === a.vars.animation && (a.vars.animation = "swing"),
            (a.prop = c ? "top" : "marginLeft"),
            (a.args = {}),
            (a.manualPause = !1),
            (a.stopped = !1),
            (a.started = !1),
            (a.startTimeout = null),
            (a.transitions =
              !a.vars.video &&
              !v &&
              a.vars.useCSS &&
              (function () {
                var e = document.createElement("div"),
                  t = [
                    "perspectiveProperty",
                    "WebkitPerspective",
                    "MozPerspective",
                    "OPerspective",
                    "msPerspective",
                  ];
                for (var n in t)
                  if (void 0 !== e.style[t[n]])
                    return (
                      (a.pfx = t[n].replace("Perspective", "").toLowerCase()),
                      (a.prop = "-" + a.pfx + "-transform"),
                      !0
                    );
                return !1;
              })()),
            (a.ensureAnimationEnd = ""),
            "" !== a.vars.controlsContainer &&
              (a.controlsContainer =
                $(a.vars.controlsContainer).length > 0 &&
                $(a.vars.controlsContainer)),
            "" !== a.vars.manualControls &&
              (a.manualControls =
                $(a.vars.manualControls).length > 0 &&
                $(a.vars.manualControls)),
            "" !== a.vars.customDirectionNav &&
              (a.customDirectionNav =
                2 === $(a.vars.customDirectionNav).length &&
                $(a.vars.customDirectionNav)),
            a.vars.randomize &&
              (a.slides.sort(function () {
                return Math.round(Math.random()) - 0.5;
              }),
              a.container.empty().append(a.slides)),
            a.doMath(),
            a.setup("init"),
            a.vars.controlNav && m.controlNav.setup(),
            a.vars.directionNav && m.directionNav.setup(),
            a.vars.keyboard &&
              (1 === $(a.containerSelector).length ||
                a.vars.multipleKeyboard) &&
              $(document).bind("keyup", function (e) {
                var t = e.keyCode;
                if (!a.animating && (39 === t || 37 === t)) {
                  var n =
                    39 === t
                      ? a.getTarget("next")
                      : 37 === t
                      ? a.getTarget("prev")
                      : !1;
                  a.flexAnimate(n, a.vars.pauseOnAction);
                }
              }),
            a.vars.mousewheel &&
              a.bind("mousewheel", function (e, t, n, i) {
                e.preventDefault();
                var s = a.getTarget(0 > t ? "next" : "prev");
                a.flexAnimate(s, a.vars.pauseOnAction);
              }),
            a.vars.pausePlay && m.pausePlay.setup(),
            a.vars.slideshow &&
              a.vars.pauseInvisible &&
              m.pauseInvisible.init(),
            a.vars.slideshow &&
              (a.vars.pauseOnHover &&
                a.hover(
                  function () {
                    a.manualPlay || a.manualPause || a.pause();
                  },
                  function () {
                    a.manualPause || a.manualPlay || a.stopped || a.play();
                  }
                ),
              (a.vars.pauseInvisible && m.pauseInvisible.isHidden()) ||
                (a.vars.initDelay > 0
                  ? (a.startTimeout = setTimeout(a.play, a.vars.initDelay))
                  : a.play())),
            p && m.asNav.setup(),
            s && a.vars.touch && m.touch(),
            (!v || (v && a.vars.smoothHeight)) &&
              $(window).bind("resize orientationchange focus", m.resize),
            a.find("img").attr("draggable", "false"),
            setTimeout(function () {
              a.vars.start(a);
            }, 200);
        },
        asNav: {
          setup: function () {
            (a.asNav = !0),
              (a.animatingTo = Math.floor(a.currentSlide / a.move)),
              (a.currentItem = a.currentSlide),
              a.slides
                .removeClass(n + "active-slide")
                .eq(a.currentItem)
                .addClass(n + "active-slide"),
              i
                ? ((e._slider = a),
                  a.slides.each(function () {
                    var e = this;
                    (e._gesture = new MSGesture()),
                      (e._gesture.target = e),
                      e.addEventListener(
                        "MSPointerDown",
                        function (e) {
                          e.preventDefault(),
                            e.currentTarget._gesture &&
                              e.currentTarget._gesture.addPointer(e.pointerId);
                        },
                        !1
                      ),
                      e.addEventListener("MSGestureTap", function (e) {
                        e.preventDefault();
                        var t = $(this),
                          n = t.index();
                        $(a.vars.asNavFor).data("flexslider").animating ||
                          t.hasClass("active") ||
                          ((a.direction = a.currentItem < n ? "next" : "prev"),
                          a.flexAnimate(n, a.vars.pauseOnAction, !1, !0, !0));
                      });
                  }))
                : a.slides.on(r, function (e) {
                    e.preventDefault();
                    var t = $(this),
                      i = t.index(),
                      s = t.offset().left - $(a).scrollLeft();
                    0 >= s && t.hasClass(n + "active-slide")
                      ? a.flexAnimate(a.getTarget("prev"), !0)
                      : $(a.vars.asNavFor).data("flexslider").animating ||
                        t.hasClass(n + "active-slide") ||
                        ((a.direction = a.currentItem < i ? "next" : "prev"),
                        a.flexAnimate(i, a.vars.pauseOnAction, !1, !0, !0));
                  });
          },
        },
        controlNav: {
          setup: function () {
            a.manualControls
              ? m.controlNav.setupManual()
              : m.controlNav.setupPaging();
          },
          setupPaging: function () {
            var e =
                "thumbnails" === a.vars.controlNav
                  ? "control-thumbs"
                  : "control-paging",
              t = 1,
              i,
              s;
            if (
              ((a.controlNavScaffold = $(
                '<ol class="' + n + "control-nav " + n + e + '"></ol>'
              )),
              a.pagingCount > 1)
            )
              for (var l = 0; l < a.pagingCount; l++) {
                if (
                  ((s = a.slides.eq(l)),
                  (i =
                    "thumbnails" === a.vars.controlNav
                      ? '<img src="' + s.attr("data-thumb") + '"/>'
                      : "<a>" + t + "</a>"),
                  "thumbnails" === a.vars.controlNav &&
                    !0 === a.vars.thumbCaptions)
                ) {
                  var c = s.attr("data-thumbcaption");
                  "" !== c &&
                    void 0 !== c &&
                    (i += '<span class="' + n + 'caption">' + c + "</span>");
                }
                a.controlNavScaffold.append("<li>" + i + "</li>"), t++;
              }
            a.controlsContainer
              ? $(a.controlsContainer).append(a.controlNavScaffold)
              : a.append(a.controlNavScaffold),
              m.controlNav.set(),
              m.controlNav.active(),
              a.controlNavScaffold.delegate("a, img", r, function (e) {
                if ((e.preventDefault(), "" === o || o === e.type)) {
                  var t = $(this),
                    i = a.controlNav.index(t);
                  t.hasClass(n + "active") ||
                    ((a.direction = i > a.currentSlide ? "next" : "prev"),
                    a.flexAnimate(i, a.vars.pauseOnAction));
                }
                "" === o && (o = e.type), m.setToClearWatchedEvent();
              });
          },
          setupManual: function () {
            (a.controlNav = a.manualControls),
              m.controlNav.active(),
              a.controlNav.bind(r, function (e) {
                if ((e.preventDefault(), "" === o || o === e.type)) {
                  var t = $(this),
                    i = a.controlNav.index(t);
                  t.hasClass(n + "active") ||
                    ((a.direction = i > a.currentSlide ? "next" : "prev"),
                    a.flexAnimate(i, a.vars.pauseOnAction));
                }
                "" === o && (o = e.type), m.setToClearWatchedEvent();
              });
          },
          set: function () {
            var e = "thumbnails" === a.vars.controlNav ? "img" : "a";
            a.controlNav = $(
              "." + n + "control-nav li " + e,
              a.controlsContainer ? a.controlsContainer : a
            );
          },
          active: function () {
            a.controlNav
              .removeClass(n + "active")
              .eq(a.animatingTo)
              .addClass(n + "active");
          },
          update: function (e, t) {
            a.pagingCount > 1 && "add" === e
              ? a.controlNavScaffold.append(
                  $("<li><a>" + a.count + "</a></li>")
                )
              : 1 === a.pagingCount
              ? a.controlNavScaffold.find("li").remove()
              : a.controlNav.eq(t).closest("li").remove(),
              m.controlNav.set(),
              a.pagingCount > 1 && a.pagingCount !== a.controlNav.length
                ? a.update(t, e)
                : m.controlNav.active();
          },
        },
        directionNav: {
          setup: function () {
            var e = $(
              '<ul class="' +
                n +
                'direction-nav"><li class="' +
                n +
                'nav-prev"><a class="' +
                n +
                'prev" href="#">' +
                a.vars.prevText +
                '</a></li><li class="' +
                n +
                'nav-next"><a class="' +
                n +
                'next" href="#">' +
                a.vars.nextText +
                "</a></li></ul>"
            );
            a.customDirectionNav
              ? (a.directionNav = a.customDirectionNav)
              : a.controlsContainer
              ? ($(a.controlsContainer).append(e),
                (a.directionNav = $(
                  "." + n + "direction-nav li a",
                  a.controlsContainer
                )))
              : (a.append(e),
                (a.directionNav = $("." + n + "direction-nav li a", a))),
              m.directionNav.update(),
              a.directionNav.bind(r, function (e) {
                e.preventDefault();
                var t;
                ("" === o || o === e.type) &&
                  ((t = a.getTarget(
                    $(this).hasClass(n + "next") ? "next" : "prev"
                  )),
                  a.flexAnimate(t, a.vars.pauseOnAction)),
                  "" === o && (o = e.type),
                  m.setToClearWatchedEvent();
              });
          },
          update: function () {
            var e = n + "disabled";
            1 === a.pagingCount
              ? a.directionNav.addClass(e).attr("tabindex", "-1")
              : a.vars.animationLoop
              ? a.directionNav.removeClass(e).removeAttr("tabindex")
              : 0 === a.animatingTo
              ? a.directionNav
                  .removeClass(e)
                  .filter("." + n + "prev")
                  .addClass(e)
                  .attr("tabindex", "-1")
              : a.animatingTo === a.last
              ? a.directionNav
                  .removeClass(e)
                  .filter("." + n + "next")
                  .addClass(e)
                  .attr("tabindex", "-1")
              : a.directionNav.removeClass(e).removeAttr("tabindex");
          },
        },
        pausePlay: {
          setup: function () {
            var e = $('<div class="' + n + 'pauseplay"><a></a></div>');
            a.controlsContainer
              ? (a.controlsContainer.append(e),
                (a.pausePlay = $("." + n + "pauseplay a", a.controlsContainer)))
              : (a.append(e), (a.pausePlay = $("." + n + "pauseplay a", a))),
              m.pausePlay.update(a.vars.slideshow ? n + "pause" : n + "play"),
              a.pausePlay.bind(r, function (e) {
                e.preventDefault(),
                  ("" === o || o === e.type) &&
                    ($(this).hasClass(n + "pause")
                      ? ((a.manualPause = !0), (a.manualPlay = !1), a.pause())
                      : ((a.manualPause = !1), (a.manualPlay = !0), a.play())),
                  "" === o && (o = e.type),
                  m.setToClearWatchedEvent();
              });
          },
          update: function (e) {
            "play" === e
              ? a.pausePlay
                  .removeClass(n + "pause")
                  .addClass(n + "play")
                  .html(a.vars.playText)
              : a.pausePlay
                  .removeClass(n + "play")
                  .addClass(n + "pause")
                  .html(a.vars.pauseText);
          },
        },
        touch: function () {
          function t(t) {
            t.stopPropagation(),
              a.animating
                ? t.preventDefault()
                : (a.pause(),
                  e._gesture.addPointer(t.pointerId),
                  (w = 0),
                  (p = c ? a.h : a.w),
                  (f = Number(new Date())),
                  (l =
                    u && d && a.animatingTo === a.last
                      ? 0
                      : u && d
                      ? a.limit -
                        (a.itemW + a.vars.itemMargin) * a.move * a.animatingTo
                      : u && a.currentSlide === a.last
                      ? a.limit
                      : u
                      ? (a.itemW + a.vars.itemMargin) * a.move * a.currentSlide
                      : d
                      ? (a.last - a.currentSlide + a.cloneOffset) * p
                      : (a.currentSlide + a.cloneOffset) * p));
          }
          function n(t) {
            t.stopPropagation();
            var a = t.target._slider;
            if (a) {
              var n = -t.translationX,
                i = -t.translationY;
              return (
                (w += c ? i : n),
                (m = w),
                (y = c
                  ? Math.abs(w) < Math.abs(-n)
                  : Math.abs(w) < Math.abs(-i)),
                t.detail === t.MSGESTURE_FLAG_INERTIA
                  ? void setImmediate(function () {
                      e._gesture.stop();
                    })
                  : void (
                      (!y || Number(new Date()) - f > 500) &&
                      (t.preventDefault(),
                      !v &&
                        a.transitions &&
                        (a.vars.animationLoop ||
                          (m =
                            w /
                            ((0 === a.currentSlide && 0 > w) ||
                            (a.currentSlide === a.last && w > 0)
                              ? Math.abs(w) / p + 2
                              : 1)),
                        a.setProps(l + m, "setTouch")))
                    )
              );
            }
          }
          function s(e) {
            e.stopPropagation();
            var t = e.target._slider;
            if (t) {
              if (t.animatingTo === t.currentSlide && !y && null !== m) {
                var a = d ? -m : m,
                  n = t.getTarget(a > 0 ? "next" : "prev");
                t.canAdvance(n) &&
                ((Number(new Date()) - f < 550 && Math.abs(a) > 50) ||
                  Math.abs(a) > p / 2)
                  ? t.flexAnimate(n, t.vars.pauseOnAction)
                  : v ||
                    t.flexAnimate(t.currentSlide, t.vars.pauseOnAction, !0);
              }
              (r = null), (o = null), (m = null), (l = null), (w = 0);
            }
          }
          var r,
            o,
            l,
            p,
            m,
            f,
            g,
            h,
            S,
            y = !1,
            x = 0,
            b = 0,
            w = 0;
          i
            ? ((e.style.msTouchAction = "none"),
              (e._gesture = new MSGesture()),
              (e._gesture.target = e),
              e.addEventListener("MSPointerDown", t, !1),
              (e._slider = a),
              e.addEventListener("MSGestureChange", n, !1),
              e.addEventListener("MSGestureEnd", s, !1))
            : ((g = function (t) {
                a.animating
                  ? t.preventDefault()
                  : (window.navigator.msPointerEnabled ||
                      1 === t.touches.length) &&
                    (a.pause(),
                    (p = c ? a.h : a.w),
                    (f = Number(new Date())),
                    (x = t.touches[0].pageX),
                    (b = t.touches[0].pageY),
                    (l =
                      u && d && a.animatingTo === a.last
                        ? 0
                        : u && d
                        ? a.limit -
                          (a.itemW + a.vars.itemMargin) * a.move * a.animatingTo
                        : u && a.currentSlide === a.last
                        ? a.limit
                        : u
                        ? (a.itemW + a.vars.itemMargin) *
                          a.move *
                          a.currentSlide
                        : d
                        ? (a.last - a.currentSlide + a.cloneOffset) * p
                        : (a.currentSlide + a.cloneOffset) * p),
                    (r = c ? b : x),
                    (o = c ? x : b),
                    e.addEventListener("touchmove", h, !1),
                    e.addEventListener("touchend", S, !1));
              }),
              (h = function (e) {
                (x = e.touches[0].pageX),
                  (b = e.touches[0].pageY),
                  (m = c ? r - b : r - x),
                  (y = c
                    ? Math.abs(m) < Math.abs(x - o)
                    : Math.abs(m) < Math.abs(b - o));
                var t = 500;
                (!y || Number(new Date()) - f > t) &&
                  (e.preventDefault(),
                  !v &&
                    a.transitions &&
                    (a.vars.animationLoop ||
                      (m /=
                        (0 === a.currentSlide && 0 > m) ||
                        (a.currentSlide === a.last && m > 0)
                          ? Math.abs(m) / p + 2
                          : 1),
                    a.setProps(l + m, "setTouch")));
              }),
              (S = function (t) {
                if (
                  (e.removeEventListener("touchmove", h, !1),
                  a.animatingTo === a.currentSlide && !y && null !== m)
                ) {
                  var n = d ? -m : m,
                    i = a.getTarget(n > 0 ? "next" : "prev");
                  a.canAdvance(i) &&
                  ((Number(new Date()) - f < 550 && Math.abs(n) > 50) ||
                    Math.abs(n) > p / 2)
                    ? a.flexAnimate(i, a.vars.pauseOnAction)
                    : v ||
                      a.flexAnimate(a.currentSlide, a.vars.pauseOnAction, !0);
                }
                e.removeEventListener("touchend", S, !1),
                  (r = null),
                  (o = null),
                  (m = null),
                  (l = null);
              }),
              e.addEventListener("touchstart", g, !1));
        },
        resize: function () {
          !a.animating &&
            a.is(":visible") &&
            (u || a.doMath(),
            v
              ? m.smoothHeight()
              : u
              ? (a.slides.width(a.computedW),
                a.update(a.pagingCount),
                a.setProps())
              : c
              ? (a.viewport.height(a.h), a.setProps(a.h, "setTotal"))
              : (a.vars.smoothHeight && m.smoothHeight(),
                a.newSlides.width(a.computedW),
                a.setProps(a.computedW, "setTotal")));
        },
        smoothHeight: function (e) {
          if (!c || v) {
            var t = v ? a : a.viewport;
            e
              ? t.animate({ height: a.slides.eq(a.animatingTo).height() }, e)
              : t.height(a.slides.eq(a.animatingTo).height());
          }
        },
        sync: function (e) {
          var t = $(a.vars.sync).data("flexslider"),
            n = a.animatingTo;
          switch (e) {
            case "animate":
              t.flexAnimate(n, a.vars.pauseOnAction, !1, !0);
              break;
            case "play":
              t.playing || t.asNav || t.play();
              break;
            case "pause":
              t.pause();
          }
        },
        uniqueID: function (e) {
          return (
            e
              .filter("[id]")
              .add(e.find("[id]"))
              .each(function () {
                var e = $(this);
                e.attr("id", e.attr("id") + "_clone");
              }),
            e
          );
        },
        pauseInvisible: {
          visProp: null,
          init: function () {
            var e = m.pauseInvisible.getHiddenProp();
            if (e) {
              var t = e.replace(/[H|h]idden/, "") + "visibilitychange";
              document.addEventListener(t, function () {
                m.pauseInvisible.isHidden()
                  ? a.startTimeout
                    ? clearTimeout(a.startTimeout)
                    : a.pause()
                  : a.started
                  ? a.play()
                  : a.vars.initDelay > 0
                  ? setTimeout(a.play, a.vars.initDelay)
                  : a.play();
              });
            }
          },
          isHidden: function () {
            var e = m.pauseInvisible.getHiddenProp();
            return e ? document[e] : !1;
          },
          getHiddenProp: function () {
            var e = ["webkit", "moz", "ms", "o"];
            if ("hidden" in document) return "hidden";
            for (var t = 0; t < e.length; t++)
              if (e[t] + "Hidden" in document) return e[t] + "Hidden";
            return null;
          },
        },
        setToClearWatchedEvent: function () {
          clearTimeout(l),
            (l = setTimeout(function () {
              o = "";
            }, 3e3));
        },
      }),
      (a.flexAnimate = function (e, t, i, r, o) {
        if (
          (a.vars.animationLoop ||
            e === a.currentSlide ||
            (a.direction = e > a.currentSlide ? "next" : "prev"),
          p &&
            1 === a.pagingCount &&
            (a.direction = a.currentItem < e ? "next" : "prev"),
          !a.animating && (a.canAdvance(e, o) || i) && a.is(":visible"))
        ) {
          if (p && r) {
            var l = $(a.vars.asNavFor).data("flexslider");
            if (
              ((a.atEnd = 0 === e || e === a.count - 1),
              l.flexAnimate(e, !0, !1, !0, o),
              (a.direction = a.currentItem < e ? "next" : "prev"),
              (l.direction = a.direction),
              Math.ceil((e + 1) / a.visible) - 1 === a.currentSlide || 0 === e)
            )
              return (
                (a.currentItem = e),
                a.slides
                  .removeClass(n + "active-slide")
                  .eq(e)
                  .addClass(n + "active-slide"),
                !1
              );
            (a.currentItem = e),
              a.slides
                .removeClass(n + "active-slide")
                .eq(e)
                .addClass(n + "active-slide"),
              (e = Math.floor(e / a.visible));
          }
          if (
            ((a.animating = !0),
            (a.animatingTo = e),
            t && a.pause(),
            a.vars.before(a),
            a.syncExists && !o && m.sync("animate"),
            a.vars.controlNav && m.controlNav.active(),
            u ||
              a.slides
                .removeClass(n + "active-slide")
                .eq(e)
                .addClass(n + "active-slide"),
            (a.atEnd = 0 === e || e === a.last),
            a.vars.directionNav && m.directionNav.update(),
            e === a.last && (a.vars.end(a), a.vars.animationLoop || a.pause()),
            v)
          )
            s
              ? (a.slides.eq(a.currentSlide).css({ opacity: 0, zIndex: 1 }),
                a.slides.eq(e).css({ opacity: 1, zIndex: 2 }),
                a.wrapup(f))
              : (a.slides
                  .eq(a.currentSlide)
                  .css({ zIndex: 1 })
                  .animate(
                    { opacity: 0 },
                    a.vars.animationSpeed,
                    a.vars.easing
                  ),
                a.slides
                  .eq(e)
                  .css({ zIndex: 2 })
                  .animate(
                    { opacity: 1 },
                    a.vars.animationSpeed,
                    a.vars.easing,
                    a.wrapup
                  ));
          else {
            var f = c ? a.slides.filter(":first").height() : a.computedW,
              g,
              h,
              S;
            u
              ? ((g = a.vars.itemMargin),
                (S = (a.itemW + g) * a.move * a.animatingTo),
                (h = S > a.limit && 1 !== a.visible ? a.limit : S))
              : (h =
                  0 === a.currentSlide &&
                  e === a.count - 1 &&
                  a.vars.animationLoop &&
                  "next" !== a.direction
                    ? d
                      ? (a.count + a.cloneOffset) * f
                      : 0
                    : a.currentSlide === a.last &&
                      0 === e &&
                      a.vars.animationLoop &&
                      "prev" !== a.direction
                    ? d
                      ? 0
                      : (a.count + 1) * f
                    : d
                    ? (a.count - 1 - e + a.cloneOffset) * f
                    : (e + a.cloneOffset) * f),
              a.setProps(h, "", a.vars.animationSpeed),
              a.transitions
                ? ((a.vars.animationLoop && a.atEnd) ||
                    ((a.animating = !1), (a.currentSlide = a.animatingTo)),
                  a.container.unbind("webkitTransitionEnd transitionend"),
                  a.container.bind(
                    "webkitTransitionEnd transitionend",
                    function () {
                      clearTimeout(a.ensureAnimationEnd), a.wrapup(f);
                    }
                  ),
                  clearTimeout(a.ensureAnimationEnd),
                  (a.ensureAnimationEnd = setTimeout(function () {
                    a.wrapup(f);
                  }, a.vars.animationSpeed + 100)))
                : a.container.animate(
                    a.args,
                    a.vars.animationSpeed,
                    a.vars.easing,
                    function () {
                      a.wrapup(f);
                    }
                  );
          }
          a.vars.smoothHeight && m.smoothHeight(a.vars.animationSpeed);
        }
      }),
      (a.wrapup = function (e) {
        v ||
          u ||
          (0 === a.currentSlide &&
          a.animatingTo === a.last &&
          a.vars.animationLoop
            ? a.setProps(e, "jumpEnd")
            : a.currentSlide === a.last &&
              0 === a.animatingTo &&
              a.vars.animationLoop &&
              a.setProps(e, "jumpStart")),
          (a.animating = !1),
          (a.currentSlide = a.animatingTo),
          a.vars.after(a);
      }),
      (a.animateSlides = function () {
        !a.animating && f && a.flexAnimate(a.getTarget("next"));
      }),
      (a.pause = function () {
        clearInterval(a.animatedSlides),
          (a.animatedSlides = null),
          (a.playing = !1),
          a.vars.pausePlay && m.pausePlay.update("play"),
          a.syncExists && m.sync("pause");
      }),
      (a.play = function () {
        a.playing && clearInterval(a.animatedSlides),
          (a.animatedSlides =
            a.animatedSlides ||
            setInterval(a.animateSlides, a.vars.slideshowSpeed)),
          (a.started = a.playing = !0),
          a.vars.pausePlay && m.pausePlay.update("pause"),
          a.syncExists && m.sync("play");
      }),
      (a.stop = function () {
        a.pause(), (a.stopped = !0);
      }),
      (a.canAdvance = function (e, t) {
        var n = p ? a.pagingCount - 1 : a.last;
        return t
          ? !0
          : p &&
            a.currentItem === a.count - 1 &&
            0 === e &&
            "prev" === a.direction
          ? !0
          : p &&
            0 === a.currentItem &&
            e === a.pagingCount - 1 &&
            "next" !== a.direction
          ? !1
          : e !== a.currentSlide || p
          ? a.vars.animationLoop
            ? !0
            : a.atEnd &&
              0 === a.currentSlide &&
              e === n &&
              "next" !== a.direction
            ? !1
            : a.atEnd &&
              a.currentSlide === n &&
              0 === e &&
              "next" === a.direction
            ? !1
            : !0
          : !1;
      }),
      (a.getTarget = function (e) {
        return (
          (a.direction = e),
          "next" === e
            ? a.currentSlide === a.last
              ? 0
              : a.currentSlide + 1
            : 0 === a.currentSlide
            ? a.last
            : a.currentSlide - 1
        );
      }),
      (a.setProps = function (e, t, n) {
        var i = (function () {
          var n = e
              ? e
              : (a.itemW + a.vars.itemMargin) * a.move * a.animatingTo,
            i = (function () {
              if (u)
                return "setTouch" === t
                  ? e
                  : d && a.animatingTo === a.last
                  ? 0
                  : d
                  ? a.limit -
                    (a.itemW + a.vars.itemMargin) * a.move * a.animatingTo
                  : a.animatingTo === a.last
                  ? a.limit
                  : n;
              switch (t) {
                case "setTotal":
                  return d
                    ? (a.count - 1 - a.currentSlide + a.cloneOffset) * e
                    : (a.currentSlide + a.cloneOffset) * e;
                case "setTouch":
                  return d ? e : e;
                case "jumpEnd":
                  return d ? e : a.count * e;
                case "jumpStart":
                  return d ? a.count * e : e;
                default:
                  return e;
              }
            })();
          return -1 * i + "px";
        })();
        a.transitions &&
          ((i = c
            ? "translate3d(0," + i + ",0)"
            : "translate3d(" + i + ",0,0)"),
          (n = void 0 !== n ? n / 1e3 + "s" : "0s"),
          a.container.css("-" + a.pfx + "-transition-duration", n),
          a.container.css("transition-duration", n)),
          (a.args[a.prop] = i),
          (a.transitions || void 0 === n) && a.container.css(a.args),
          a.container.css("transform", i);
      }),
      (a.setup = function (e) {
        if (v)
          a.slides.css({
            width: "100%",
            float: "left",
            marginRight: "-100%",
            position: "relative",
          }),
            "init" === e &&
              (s
                ? a.slides
                    .css({
                      opacity: 0,
                      display: "block",
                      webkitTransition:
                        "opacity " + a.vars.animationSpeed / 1e3 + "s ease",
                      zIndex: 1,
                    })
                    .eq(a.currentSlide)
                    .css({ opacity: 1, zIndex: 2 })
                : 0 == a.vars.fadeFirstSlide
                ? a.slides
                    .css({ opacity: 0, display: "block", zIndex: 1 })
                    .eq(a.currentSlide)
                    .css({ zIndex: 2 })
                    .css({ opacity: 1 })
                : a.slides
                    .css({ opacity: 0, display: "block", zIndex: 1 })
                    .eq(a.currentSlide)
                    .css({ zIndex: 2 })
                    .animate(
                      { opacity: 1 },
                      a.vars.animationSpeed,
                      a.vars.easing
                    )),
            a.vars.smoothHeight && m.smoothHeight();
        else {
          var t, i;
          "init" === e &&
            ((a.viewport = $('<div class="' + n + 'viewport"></div>')
              .css({ overflow: "hidden", position: "relative" })
              .appendTo(a)
              .append(a.container)),
            (a.cloneCount = 0),
            (a.cloneOffset = 0),
            d &&
              ((i = $.makeArray(a.slides).reverse()),
              (a.slides = $(i)),
              a.container.empty().append(a.slides))),
            a.vars.animationLoop &&
              !u &&
              ((a.cloneCount = 2),
              (a.cloneOffset = 1),
              "init" !== e && a.container.find(".clone").remove(),
              a.container
                .append(
                  m
                    .uniqueID(a.slides.first().clone().addClass("clone"))
                    .attr("aria-hidden", "true")
                )
                .prepend(
                  m
                    .uniqueID(a.slides.last().clone().addClass("clone"))
                    .attr("aria-hidden", "true")
                )),
            (a.newSlides = $(a.vars.selector, a)),
            (t = d
              ? a.count - 1 - a.currentSlide + a.cloneOffset
              : a.currentSlide + a.cloneOffset),
            c && !u
              ? (a.container
                  .height(200 * (a.count + a.cloneCount) + "%")
                  .css("position", "absolute")
                  .width("100%"),
                setTimeout(
                  function () {
                    a.newSlides.css({ display: "block" }),
                      a.doMath(),
                      a.viewport.height(a.h),
                      a.setProps(t * a.h, "init");
                  },
                  "init" === e ? 100 : 0
                ))
              : (a.container.width(200 * (a.count + a.cloneCount) + "%"),
                a.setProps(t * a.computedW, "init"),
                setTimeout(
                  function () {
                    a.doMath(),
                      a.newSlides.css({
                        width: a.computedW,
                        float: "left",
                        display: "block",
                      }),
                      a.vars.smoothHeight && m.smoothHeight();
                  },
                  "init" === e ? 100 : 0
                ));
        }
        u ||
          a.slides
            .removeClass(n + "active-slide")
            .eq(a.currentSlide)
            .addClass(n + "active-slide"),
          a.vars.init(a);
      }),
      (a.doMath = function () {
        var e = a.slides.first(),
          t = a.vars.itemMargin,
          n = a.vars.minItems,
          i = a.vars.maxItems;
        (a.w = void 0 === a.viewport ? a.width() : a.viewport.width()),
          (a.h = e.height()),
          (a.boxPadding = e.outerWidth() - e.width()),
          u
            ? ((a.itemT = a.vars.itemWidth + t),
              (a.minW = n ? n * a.itemT : a.w),
              (a.maxW = i ? i * a.itemT - t : a.w),
              (a.itemW =
                a.minW > a.w
                  ? (a.w - t * (n - 1)) / n
                  : a.maxW < a.w
                  ? (a.w - t * (i - 1)) / i
                  : a.vars.itemWidth > a.w
                  ? a.w
                  : a.vars.itemWidth),
              (a.visible = Math.floor(a.w / a.itemW)),
              (a.move =
                a.vars.move > 0 && a.vars.move < a.visible
                  ? a.vars.move
                  : a.visible),
              (a.pagingCount = Math.ceil((a.count - a.visible) / a.move + 1)),
              (a.last = a.pagingCount - 1),
              (a.limit =
                1 === a.pagingCount
                  ? 0
                  : a.vars.itemWidth > a.w
                  ? a.itemW * (a.count - 1) + t * (a.count - 1)
                  : (a.itemW + t) * a.count - a.w - t))
            : ((a.itemW = a.w),
              (a.pagingCount = a.count),
              (a.last = a.count - 1)),
          (a.computedW = a.itemW - a.boxPadding);
      }),
      (a.update = function (e, t) {
        a.doMath(),
          u ||
            (e < a.currentSlide
              ? (a.currentSlide += 1)
              : e <= a.currentSlide && 0 !== e && (a.currentSlide -= 1),
            (a.animatingTo = a.currentSlide)),
          a.vars.controlNav &&
            !a.manualControls &&
            (("add" === t && !u) || a.pagingCount > a.controlNav.length
              ? m.controlNav.update("add")
              : (("remove" === t && !u) ||
                  a.pagingCount < a.controlNav.length) &&
                (u &&
                  a.currentSlide > a.last &&
                  ((a.currentSlide -= 1), (a.animatingTo -= 1)),
                m.controlNav.update("remove", a.last))),
          a.vars.directionNav && m.directionNav.update();
      }),
      (a.addSlide = function (e, t) {
        var n = $(e);
        (a.count += 1),
          (a.last = a.count - 1),
          c && d
            ? void 0 !== t
              ? a.slides.eq(a.count - t).after(n)
              : a.container.prepend(n)
            : void 0 !== t
            ? a.slides.eq(t).before(n)
            : a.container.append(n),
          a.update(t, "add"),
          (a.slides = $(a.vars.selector + ":not(.clone)", a)),
          a.setup(),
          a.vars.added(a);
      }),
      (a.removeSlide = function (e) {
        var t = isNaN(e) ? a.slides.index($(e)) : e;
        (a.count -= 1),
          (a.last = a.count - 1),
          isNaN(e)
            ? $(e, a.slides).remove()
            : c && d
            ? a.slides.eq(a.last).remove()
            : a.slides.eq(e).remove(),
          a.doMath(),
          a.update(t, "remove"),
          (a.slides = $(a.vars.selector + ":not(.clone)", a)),
          a.setup(),
          a.vars.removed(a);
      }),
      m.init();
  }),
    $(window)
      .blur(function (e) {
        focused = !1;
      })
      .focus(function (e) {
        focused = !0;
      }),
    ($.flexslider.defaults = {
      namespace: "flex-",
      selector: ".slides > li",
      animation: "fade",
      easing: "swing",
      direction: "horizontal",
      reverse: !1,
      animationLoop: !0,
      smoothHeight: !1,
      startAt: 0,
      slideshow: !0,
      slideshowSpeed: 7e3,
      animationSpeed: 600,
      initDelay: 0,
      randomize: !1,
      fadeFirstSlide: !0,
      thumbCaptions: !1,
      pauseOnAction: !0,
      pauseOnHover: !1,
      pauseInvisible: !0,
      useCSS: !0,
      touch: !0,
      video: !1,
      controlNav: !0,
      directionNav: !0,
      prevText: "Previous",
      nextText: "Next",
      keyboard: !0,
      multipleKeyboard: !1,
      mousewheel: !1,
      pausePlay: !1,
      pauseText: "Pause",
      playText: "Play",
      controlsContainer: "",
      manualControls: "",
      customDirectionNav: "",
      sync: "",
      asNavFor: "",
      itemWidth: 0,
      itemMargin: 0,
      minItems: 1,
      maxItems: 0,
      move: 0,
      allowOneSlide: !0,
      start: function () {},
      before: function () {},
      after: function () {},
      end: function () {},
      added: function () {},
      removed: function () {},
      init: function () {},
    }),
    ($.fn.flexslider = function (e) {
      if ((void 0 === e && (e = {}), "object" == typeof e))
        return this.each(function () {
          var t = $(this),
            a = e.selector ? e.selector : ".slides > li",
            n = t.find(a);
          (1 === n.length && e.allowOneSlide === !0) || 0 === n.length
            ? (n.fadeIn(400), e.start && e.start(t))
            : void 0 === t.data("flexslider") && new $.flexslider(this, e);
        });
      var t = $(this).data("flexslider");
      switch (e) {
        case "play":
          t.play();
          break;
        case "pause":
          t.pause();
          break;
        case "stop":
          t.stop();
          break;
        case "next":
          t.flexAnimate(t.getTarget("next"), !0);
          break;
        case "prev":
        case "previous":
          t.flexAnimate(t.getTarget("prev"), !0);
          break;
        default:
          "number" == typeof e && t.flexAnimate(e, !0);
      }
    });
})(jQuery);
