text: /*
   *  jQuery OwlCarousel v1.21
   *
   *  Copyright (c) 2013 Bartosz Wojciechowski
   *  http://www.owlgraphic.com/owlcarousel
   *
   *  Licensed under MIT
   *
   */
   
  // Object.create function
  if ( typeof Object.create !== "function" ) {
      Object.create = function( obj ) {
          function F() {};
          F.prototype = obj;
          return new F();
      };
  }
  (function( $, window, document, undefined ) {
  
      var Carousel = {
          init :function(options, el){
              var base = this;
              base.options = $.extend({}, $.fn.owlCarousel.options, options);
              var elem = el;
              var $elem = $(el);
              base.$elem = $elem;
              base.loadContent()
          },
  
          loadContent : function(){
              var base = this;
  
              if (typeof base.options.beforeInit === "function") {
                  base.options.beforeInit.apply(this,[base.$elem]);
              }
  
              if (typeof base.options.jsonPath === "string") {
                  var url = base.options.jsonPath;
  
                  function getData(data) {
                      if (typeof base.options.jsonSuccess === "function") {
                          base.options.jsonSuccess.apply(this,[data]);
                      } else {
                          var content = "";
                          for(var i in data["owl"]){
                              content += data["owl"][i]["item"];
                          }
                          base.$elem.html(content);
                      }
                      base.logIn();
                  }
                  $.getJSON(url,getData);
              } else {
                  base.logIn();
              }
          },
  
          logIn : function(){
              var base = this;
  
              base.baseClass();
  
              base.$elem
              .css({opacity: 0})
  
              base.checkTouch();
              base.support3d();
  
              base.wrapperWidth = 0;
              base.currentSlide = 0; //Starting Position
  
              base.userItems = base.$elem.children();
              base.itemsAmount = base.userItems.length;
              base.wrapItems();
  
              base.owlItems = base.$elem.find(".owl-item");
              base.owlWrapper = base.$elem.find(".owl-wrapper");
  
              base.orignalItems = base.options.items;
              base.playDirection = "next";
  
              base.checkVisible;
  
              //setTimeout(function(){
              base.onStartup();
              //},0);
              base.customEvents();
  
          },
  
          onStartup : function(){
              var base = this;
              base.updateItems();
              base.calculateAll();
              base.buildControls();
              base.updateControls();
              base.response();
              base.moveEvents();
              base.stopOnHover();
              if(base.options.autoPlay === true){
                  base.options.autoPlay = 5000;
              }
              base.play();
              base.$elem.find(".owl-wrapper").css("display","block")
  
              if(!base.$elem.is(":visible")){
                  base.watchVisibility();
              } else {
                  setTimeout(function(){
                      base.$elem.animate({opacity: 1},200);
                  },10);
              }
              base.onstartup = false;
              base.eachMoveUpdate();
              if (typeof base.options.afterInit === "function") {
                  base.options.afterInit.apply(this,[base.$elem]);
              }
          },
  
          eachMoveUpdate : function(){
              var base = this;
              base.lazyLoad();
              base.autoHeight();
              if(base.options.singleItem === true){
                  base.addActiveClass();
              }
              if (typeof base.options.afterAction === "function") {
                  base.options.afterAction.apply(this);
              }
          },
  
          updateVars : function(){
              var base = this;
              base.watchVisibility();
              base.updateItems();
              base.calculateAll();
              base.updatePosition();
              base.updateControls();
              base.eachMoveUpdate();
          },
  
          reload : function(elements){
              var base = this;
              setTimeout(function(){
                  base.updateVars();
              },0)
          },
  
          watchVisibility : function(){
              var base = this;
              clearInterval(base.checkVisible);
              if(!base.$elem.is(":visible")){
                  base.$elem.css({opacity: 0});
                  clearInterval(base.autoPlaySpeed);
              } else {
                  return false;
              }
              base.checkVisible = setInterval(function(){
                  if (base.$elem.is(":visible")) {
                      base.reload();
                      base.$elem.animate({opacity: 1},200);
                      clearInterval(base.checkVisible);
                  }
              }, 500);
          },
  
          wrapItems : function(){
              var base = this;
              base.userItems.wrapAll("<div class=\"owl-wrapper\">").wrap("<div class=\"owl-item\"></div>");
              base.$elem.find(".owl-wrapper").wrap("<div class=\"owl-wrapper-outer\">");
              base.wrapperOuter = base.$elem.find(".owl-wrapper-outer");
              base.$elem.css("display","block");
          },
  
          baseClass : function(){
              var base = this;
              var hasBaseClass = base.$elem.hasClass(base.options.baseClass);
              var hasThemeClass = base.$elem.hasClass(base.options.theme);
  
              if(!hasBaseClass){
                  base.$elem.addClass(base.options.baseClass);
              }
  
              if(!hasThemeClass){
                  base.$elem.addClass(base.options.theme);
              }
          },
  
          updateItems : function(){
              var base = this;
  
              if(base.options.responsive === false){
                  return false;
              }
  
              if(base.options.singleItem === true){
                  base.options.items = base.orignalItems = 1;
                  base.options.itemsDesktop = false;
                  base.options.itemsDesktopSmall = false;
                  base.options.itemsTablet = false;
                  base.options.itemsMobile = false;
                  return false;
              }
  
              var width = $(window).width();
  
              if(width > (base.options.itemsDesktop[0] || base.orignalItems) ){
                   base.options.items = base.orignalItems
              }
  
              if(width <= base.options.itemsDesktop[0] && base.options.itemsDesktop !== false){
                  base.options.items = base.options.itemsDesktop[1];
              }
  
              if(width <= base.options.itemsDesktopSmall[0] && base.options.itemsDesktopSmall !== false){
                  base.options.items = base.options.itemsDesktopSmall[1];
              }
  
              if(width <= base.options.itemsTablet[0]  && base.options.itemsTablet !== false){
                  base.options.items = base.options.itemsTablet[1];
              }
  
              if(width <= base.options.itemsMobile[0] && base.options.itemsMobile !== false){
                  base.options.items = base.options.itemsMobile[1];
              }
  
              //if number of items is less than declared
              if(base.options.items > base.itemsAmount){
                  base.options.items = base.itemsAmount;
              }
          },
  
          response : function(){
              var base = this,
                  smallDelay;
              if(base.options.responsive !== true){
                  return false
              }
              $(window).resize(function(){
                  if(base.options.autoPlay !== false){
                      clearInterval(base.autoPlaySpeed);
                  }
                  clearTimeout(smallDelay)
                  smallDelay = setTimeout(function(){
                      base.updateVars();
                  },base.options.responsiveRefreshRate);
              })
          },
  
          updatePosition : function(){
              var base = this;
  
              if(base.support3d === true){
                  if(base.positionsInArray[base.currentSlide] > base.maximumPixels){
                      base.transition3d(base.positionsInArray[base.currentSlide]);
                  } else {
                      base.transition3d(0);
                      base.currentSlide = 0;
                  }
              } else{
                  if(base.positionsInArray[base.currentSlide] > base.maximumPixels){
                      base.css2slide(base.positionsInArray[base.currentSlide]);
                  } else {
                      base.css2slide(0);
                      base.currentSlide = 0;
                  }
              }
              if(base.options.autoPlay !== false){
                  base.checkAp();
              }
          },
  
          appendItemsSizes : function(){
              var base = this;
  
              var roundPages = 0;
              var lastItem = base.itemsAmount - base.options.items;
  
              base.owlItems.each(function(index){
                  $(this)
                  .css({"width": base.itemWidth})
                  .data("owl-item",Number(index));
  
                  if(index % base.options.items === 0 || index === lastItem){
                      if(!(index > lastItem)){
                          roundPages +=1;
                      }
                  }
                  $(this).data("owl-roundPages",roundPages);
              });
          },
  
          appendWrapperSizes : function(){
              var base = this;
              var width = 0;
  
              var width = base.owlItems.length * base.itemWidth;
  
              base.owlWrapper.css({
                  "width": width*2,
                  "left": 0
              });
              base.appendItemsSizes();
          },
  
          calculateAll : function(){
              var base = this;
              base.calculateWidth();
              base.appendWrapperSizes();
              base.loops();
              base.max();
          },
  
          calculateWidth : function(){
              var base = this;
              base.itemWidth = Math.round(base.$elem.width()/base.options.items)
          },
  
          max : function(){
              var base = this;
              base.maximumSlide = base.itemsAmount - base.options.items;
              var maximum = (base.itemsAmount * base.itemWidth) - base.options.items * base.itemWidth;
                  maximum = maximum * -1
              base.maximumPixels = maximum;
              return maximum;
          },
  
          min : function(){
              return 0;
          },
  
          loops : function(){
              var base = this;
  
              base.positionsInArray = [0];
              var elWidth = 0;
  
              for(var i = 0; i<base.itemsAmount; i++){
                  elWidth += base.itemWidth;
                  base.positionsInArray.push(-elWidth)
              }
          },
  
          buildControls : function(){
              var base = this;
              if(base.options.navigation === true || base.options.pagination === true){
                  base.owlControls = $("<div class=\"owl-controls\"/>").toggleClass("clickable", !base.isTouch).appendTo(base.$elem);
              }
              if(base.options.pagination === true){
                  base.buildPagination();
              }
              if(base.options.navigation === true){
                  base.buildButtons();
              }
          },
  
          buildButtons : function(){
              var base = this;
              var buttonsWrapper = $("<div class=\"owl-buttons\"/>");
              base.owlControls.append(buttonsWrapper);
  
              base.buttonPrev = $("<div/>",{
                  "class" : "owl-prev",
                  "html" : base.options.navigationText[0] || ""
                  });
  
              base.buttonNext = $("<div/>",{
                  "class" : "owl-next",
                  "html" : base.options.navigationText[1] || ""
                  });
  
              buttonsWrapper
              .append(base.buttonPrev)
              .append(base.buttonNext);
  
              buttonsWrapper.on(base.getEvent(), "div[class^=\"owl\"]", function(event){
                  event.preventDefault();
                  if($(this).hasClass("owl-next")){
                      base.next();
                  } else{
                      base.prev();
                  }
              })
          },
  
          getEvent : function(){
              var base = this;
              if (base.isTouch === true){
                  return "touchend.owlControls";
              } else {
                  return "click.owlControls";
              }
          },
  
          buildPagination : function(){
              var base = this;
  
              base.paginationWrapper = $("<ul class=\"owl-pagination pagination\"/>");
              base.owlControls.append(base.paginationWrapper);
  
              base.paginationWrapper.on(base.getEvent(), ".owl-page", function(event){
                  event.preventDefault();
                  if(Number($(this).data("owl-page")) !== base.currentSlide){
                      base.goTo( Number($(this).data("owl-page")), true);
                  }
              });
          },
  
          updatePagination : function(){
              var base = this;
              if(base.options.pagination === false){
                  return false;
              }
  
              base.paginationWrapper.html("");
  
              var counter = 0;
              var lastPage = base.itemsAmount - base.itemsAmount % base.options.items;
  
              for(var i = 0; i<base.itemsAmount; i++){
                  if(i % base.options.items === 0){
                      counter +=1;
                      if(lastPage === i){
                          var lastItem = base.itemsAmount - base.options.items;
                      }
                      var paginationButton = $("<li/>",{
                          "class" : "owl-page"
                          });
                      var paginationButtonInner = $("<span></span>",{
                          "text": base.options.paginationNumbers === true ? counter : "",
                          "class": base.options.paginationNumbers === true ? "owl-numbers" : ""
                      });
                      paginationButton.append(paginationButtonInner);
  
                      paginationButton.data("owl-page",lastPage === i ? lastItem : i);
                      paginationButton.data("owl-roundPages",counter);
  
                      base.paginationWrapper.append(paginationButton);
                  }
              }
              base.checkPagination();
          },
          checkPagination : function(){
              var base = this;
  
              base.paginationWrapper.find(".owl-page").each(function(i,v){
                  if($(this).data("owl-roundPages") === $(base.owlItems[base.currentSlide]).data("owl-roundPages") ){
                      base.paginationWrapper
                          .find(".owl-page")
                          .removeClass("active")
                          .removeClass("visible_pager");
                      $(this)
                          .addClass("active visible_pager")
                          .prev(".owl-page")
                              .addClass("visible_pager");
                      $(this).next(".owl-page")
                              .addClass("visible_pager");
                  }
              });
          },
  
          checkNavigation : function(){
              var base = this;
  
              if(base.options.navigation === false){
                  return false;
              }
              if(base.options.goToFirstNav === false){
                  if(base.currentSlide === 0 && base.maximumSlide === 0){
                      base.buttonPrev.addClass("disabled");
                      base.buttonNext.addClass("disabled");
                  } else if(base.currentSlide === 0 && base.maximumSlide !== 0){
                      base.buttonPrev.addClass("disabled");
                      base.buttonNext.removeClass("disabled");
                  } else if (base.currentSlide === base.maximumSlide){
                      base.buttonPrev.removeClass("disabled");
                      base.buttonNext.addClass("disabled");
                  } else if(base.currentSlide !== 0 && base.currentSlide !== base.maximumSlide){
                      base.buttonPrev.removeClass("disabled");
                      base.buttonNext.removeClass("disabled");
                  }
              }
          },
  
          updateControls : function(){
              var base = this;
              base.updatePagination();
              base.checkNavigation();
              if(base.owlControls){
                  if(base.options.items === base.itemsAmount){
                      base.owlControls.hide();
                  } else {
                      base.owlControls.show();
                  }
              }
          },
  
          destroyControls : function(){
              var base = this;
              if(base.owlControls){
                  base.owlControls.remove();
              }
          },
  
          next : function(speed){
              var base = this;
              base.currentSlide += base.options.scrollPerPage === true ? base.options.items : 1;
              if(base.currentSlide > base.maximumSlide + (base.options.scrollPerPage == true ? (base.options.items - 1) : 0)){
                  if(base.options.goToFirstNav === true){
                      base.currentSlide = 0;
                      speed = "goToFirst";
                  } else {
                      base.currentSlide = base.maximumSlide;
                      return false;
                  }
              }
              base.goTo(base.currentSlide,speed);
          },
  
          prev : function(speed){
              var base = this;
              if(base.options.scrollPerPage === true && base.currentSlide > 0 && base.currentSlide < base.options.items){
                  base.currentSlide = 0
              } else {
              base.currentSlide -= base.options.scrollPerPage === true ? base.options.items : 1;
              }
              if(base.currentSlide < 0){
                  if(base.options.goToFirstNav === true){
                      base.currentSlide = base.maximumSlide;
                      speed = "goToFirst"
                  } else {
                      base.currentSlide =0;
                      return false;
                  }
              }
              base.goTo(base.currentSlide,speed);
          },
  
          goTo : function(position,pagination){
              var base = this;
  
              if(typeof base.options.beforeMove === "function") {
                  base.options.beforeMove.apply(this);
              }
              if(position >= base.maximumSlide){
                  position = base.maximumSlide;
              }
              else if( position <= 0 ){
                  position = 0;
              }
              base.currentSlide = position;
  
              var goToPixel = base.positionsInArray[position];
  
              if(base.support3d === true){
                  base.isCss3Finish = false;
  
                  if(pagination === true){
                      base.swapTransitionSpeed("paginationSpeed");
                      setTimeout(function() {
                          base.isCss3Finish = true;
                      }, base.options.paginationSpeed);
  
                  } else if(pagination === "goToFirst" ){
                      base.swapTransitionSpeed(base.options.goToFirstSpeed);
                      setTimeout(function() {
                          base.isCss3Finish = true;
                      }, base.options.goToFirstSpeed);
  
                  } else {
                      base.swapTransitionSpeed("slideSpeed");
                      setTimeout(function() {
                          base.isCss3Finish = true;
                      }, base.options.slideSpeed);
                  }
                  base.transition3d(goToPixel);
              } else {
                  if(pagination === true){
                      base.css2slide(goToPixel, base.options.paginationSpeed);
                  } else if(pagination === "goToFirst" ){
                      base.css2slide(goToPixel, base.options.goToFirstSpeed);
                  } else {
                      base.css2slide(goToPixel, base.options.slideSpeed);
                  }
              }
              if(base.options.pagination === true){
                  base.checkPagination();
              }
              if(base.options.navigation === true){
                  base.checkNavigation();
              }
              if(base.options.autoPlay !== false){
                  base.checkAp();
              }
              base.eachMoveUpdate();
              if(typeof base.options.afterMove === "function") {
                  base.options.afterMove.apply(this);
              }
          },
  
          stop: function(){
              var base = this;
              base.apStatus = "stop";
              clearInterval(base.autoPlaySpeed);
          },
  
          checkAp : function(){
              var base = this;
              if(base.apStatus !== "stop"){
                  base.play();
              }
          },
  
          play : function(){
              var base = this;
              base.apStatus = "play";
              if(base.options.autoPlay === false){
                  return false;
              }
              clearInterval(base.autoPlaySpeed);
              base.autoPlaySpeed = setInterval(function(){
                  if(base.currentSlide < base.maximumSlide && base.playDirection === "next"){
                      base.next(true);
                  } else if(base.currentSlide === base.maximumSlide){
                      if(base.options.goToFirst === true){
                          base.goTo(0,"goToFirst");
                      } else{
                          base.playDirection = "prev";
                          base.prev(true);
                      }
                  } else if(base.playDirection === "prev" && base.currentSlide > 0){
                      base.prev(true);
                  } else if(base.playDirection === "prev" && base.currentSlide === 0){
                      base.playDirection = "next";
                      base.next(true);
                  }
              },base.options.autoPlay);
          },
  
          swapTransitionSpeed : function(action){
              var base = this;
              if(action === "slideSpeed"){
                  base.owlWrapper.css(base.addTransition(base.options.slideSpeed));
              } else if(action === "paginationSpeed" ){
                  base.owlWrapper.css(base.addTransition(base.options.paginationSpeed));
              } else if(typeof action !== "string"){
                  base.owlWrapper.css(base.addTransition(action));
              }
          },
  
          addTransition : function(speed){
              var base = this;
              return {
                  "-webkit-transition": "all "+ speed +"ms ease",
                  "-moz-transition": "all "+ speed +"ms ease",
                  "-o-transition": "all "+ speed +"ms ease",
                  "transition": "all "+ speed +"ms ease"
              };
          },
  
          removeTransition : function(){
              return {
                  "-webkit-transition": "",
                  "-moz-transition": "",
                  "-o-transition": "",
                  "transition": ""
              };
          },
  
          doTranslate : function(pixels){
              return {
                  "-webkit-transform": "translate3d("+pixels+"px, 0px, 0px)",
                  "-moz-transform": "translate3d("+pixels+"px, 0px, 0px)",
                  "-o-transform": "translate3d("+pixels+"px, 0px, 0px)",
                  "-ms-transform": "translate3d("+pixels+"px, 0px, 0px)",
                  "transform": "translate3d("+pixels+"px, 0px,0px)"
              };
          },
  
          transition3d : function(value){
              var base = this;
              base.owlWrapper.css(base.doTranslate(Math.abs(value)));
          },
  
          css2move : function(value){
              var base = this;
              base.owlWrapper.css({"left" : Math.abs(value)});
          },
  
          css2slide : function(value,speed){
              var base = this;
  
              base.isCssFinish = false;
              base.owlWrapper.stop(true,true).animate({
                  "left" : Math.abs(value)
              }, {
                  duration : speed || base.options.slideSpeed ,
                  complete : function(){
                      base.isCssFinish = true;
                  }
              });
          },
  
          support3d : function(){
                  var base = this;
  
                  var sTranslate3D = "translate3d(0px, 0px, 0px)";
                   var eTemp = document.createElement("div");
                  eTemp.style.cssText = "  -moz-transform:"    + sTranslate3D +
                                        "; -ms-transform:"     + sTranslate3D +
                                        "; -o-transform:"      + sTranslate3D +
                                        "; -webkit-transform:" + sTranslate3D +
                                        "; transform:"         + sTranslate3D;
                  var rxTranslate = /translate3d\(0px, 0px, 0px\)/g;
                  var asSupport = eTemp.style.cssText.match(rxTranslate);
                  var bHasSupport = (asSupport !== null && asSupport.length === 1);
                  base.support3d = bHasSupport
                  return bHasSupport;
          },
  
          checkTouch : function(){
              var base = this;
              base.isTouch = ("ontouchstart" in document.documentElement);
          },
  
          moveEvents : function(){
              var base = this;
              if(base.options.mouseDraggable || base.isTouch === true){
                  base.eventTypes();
                  base.gestures();
                  base.disabledEvents();
              }
          },
  
          eventTypes : function(){
          var base = this;
          var types;
  
          base.ev_types = {};
  
          if(base.isTouch) {
          types = [
              "touchstart.owl",
              "touchmove.owl",
              "touchend.owl"
              ];
          } else{
          types = [
              "mousedown.owl",
              "mousemove.owl",
              "mouseup.owl"
              ];
          }
          base.ev_types["start"] = types[0];
          base.ev_types["move"] = types[1];
          base.ev_types["end"] = types[2];
          },
  
          disabledEvents :  function(){
              var base = this;
              if(base.isTouch !== true){
                  base.$elem.on("dragstart.owl","img", function(event) { event.preventDefault();});
                  base.$elem.bind("mousedown.disableTextSelect", function() {return false;});
              }
          },
  
          gestures : function(){
              var base = this;
  
              var locals = {
                  offsetX : 0,
                  offsetY : 0,
                  baseElWidth : 0,
                  relativePos : 0,
                  position: null,
                  minSwipe : null,
                  maxSwipe: null,
                  sliding : null,
                  targetElement : null
              }
  
              base.isCssFinish = true;
  
              function getTouches(event){
                  if(base.isTouch === true){
                      return {
                          x : event.touches[0].pageX,
                          y : event.touches[0].pageY
                      }
                  } else {
                      if(event.pageX !== undefined){
                          return {
                              x : event.pageX,
                              y : event.pageY
                          }
                      } else {
                          return {
                              x : event.clientX,
                              y : event.clientY
                          }
                      }
                  }
              }
  
              function swapEvents(type){
                  if(type === "on"){
                      $(document).on(base.ev_types["move"], dragMove);
                      $(document).on(base.ev_types["end"], dragEnd);
                  } else if(type === "off"){
                      $(document).off(base.ev_types["move"]);
                      $(document).off(base.ev_types["end"]);
                  }
              }
              function dragStart(event) {
                  var event = event.originalEvent || event || window.event;
  
                  if(base.isCssFinish === false){
                      return false;
                  }
                  if(base.isCss3Finish === false){
                      return false;
                  }
  
                  if(base.options.autoPlay !== false){
                      clearInterval(base.autoPlaySpeed);
                  }
  
                  if(base.isTouch !== true && !base.owlWrapper.hasClass("grabbing")){
                      base.owlWrapper.addClass("grabbing")
                  }
  
                  base.newPosX = 0;
                  base.newRelativeX = 0;
  
                  $(this).css(base.removeTransition());
  
                  var position = $(this).position();
                  locals.relativePos = position.left;
                  
                  locals.offsetX = getTouches(event).x - position.left;
                  locals.offsetY = getTouches(event).y - position.top;
  
                  swapEvents("on");
  
                  locals.sliding = false;
                  locals.targetElement = event.target || event.srcElement;
              }
  
              function dragMove(event){
                  var event = event.originalEvent || event || window.event;
  
                  base.newPosX = getTouches(event).x- locals.offsetX;
                  base.newPosY = getTouches(event).y - locals.offsetY;
                  base.newRelativeX = base.newPosX - locals.relativePos;
  
                  if(base.newRelativeX > 8 || base.newRelativeX < -8 && base.isTouch === true){
                      event.preventDefault ? event.preventDefault() : event.returnValue = false;
                      locals.sliding = true;
                  }
  
                  if((base.newPosY > 10 || base.newPosY < -10) && locals.sliding === false){
                       $(document).off("touchmove.owl");
                  }
  
                  var minSwipe = function(){
                      return  base.newRelativeX / 5;
                  }
                  var maxSwipe = function(){
                      return  base.maximumPixels + base.newRelativeX / 5;
                  }
  
                  base.newPosX = Math.max(Math.min( base.newPosX, minSwipe() ), maxSwipe() );
                  if(base.support3d === true){
                      base.transition3d(base.newPosX);
                  } else {
                      base.css2move(base.newPosX);
                  }
              }
  
              var dragEnd = function(event){
                  var event = event.originalEvent || event || window.event;
                  event.target = event.target || event.srcElement;
  
                  if(base.isTouch !== true){
                      base.owlWrapper.removeClass("grabbing");
                  }
  
                  swapEvents("off");
  
                  if(base.newPosX !== 0){
                      var newPosition = base.getNewPosition();
                      base.goTo(newPosition);
                      if(locals.targetElement === event.target && base.isTouch !== true){
                          $(event.target).on("click.disable", function(ev){
                              ev.stopImmediatePropagation()
                              ev.stopPropagation();
                              ev.preventDefault();
                              $(event.target).off("click.disable");
                          });
                      var handlers = $._data(event.target, "events")["click"];
                      var owlStopEvent = handlers.pop();
                      handlers.splice(0, 0, owlStopEvent);
                      }
                  }
              }
              base.$elem.on(base.ev_types["start"], ".owl-wrapper", dragStart); 
          },
  
          clearEvents : function(){
              var base = this;
              base.$elem.off(".owl");
              $(document).off(".owl");
          },
  
          getNewPosition : function(){
              var base = this,
                  newPosition;
  
              var newPosition = base.improveClosest();
  
              if(newPosition>base.maximumSlide){
                  base.currentSlide = base.maximumSlide;
                  newPosition  = base.maximumSlide;
              } else if( base.newPosX >=0 ){
                  newPosition = 0;
                  base.currentSlide = 0;
              }
              return newPosition;
          },
  
          improveClosest : function(){
              var base = this;
              var array = base.positionsInArray;
              var goal = base.newPosX;
              var closest = null;
              $.each(array, function(i,v){
                  if( goal - (base.itemWidth/20) > array[i+1] && goal - (base.itemWidth/20)< v && base.moveDirection() === "left") {
                      closest = v;
                      base.currentSlide = i;
                  } 
                  else if (goal + (base.itemWidth/20) < v && goal + (base.itemWidth/20) > array[i+1] && base.moveDirection() === "right"){
                      closest = array[i+1];
                      base.currentSlide = i+1;
                  }
              });
              return base.currentSlide;
          },
  
          moveDirection : function(){
              var base = this,
                  direction;
              if(base.newRelativeX < 0 ){
                  direction = "right"
                  base.playDirection = "next"
              } else {
                  direction = "left"
                  base.playDirection = "prev"
              }
              return direction
          },
  
          customEvents : function(){
              var base = this;
              base.$elem.on("owl.next",function(){
                  base.next();
              });
              base.$elem.on("owl.prev",function(){
                  base.prev();
              });
              base.$elem.on("owl.play",function(event,speed){
                  base.options.autoPlay = speed;
                  base.play();
                  base.hoverStatus = "play";
              });
              base.$elem.on("owl.stop",function(){
                  base.stop();
                  base.hoverStatus = "stop";
              });
          },
          
          stopOnHover : function(){
              var base = this;
              if(base.options.stopOnHover === true && base.isTouch === false && base.options.autoPlay !== false){
                  base.$elem.on("mouseover", function(){
                      base.stop();
                  });
                  base.$elem.on("mouseout", function(){
                      if(base.hoverStatus !== "stop"){
                          base.play();
                      }
                  });
              }
          },
  
          lazyLoad : function(){
              var base = this;
  
              if(base.options.lazyLoad === false){
                  return false;
              }
  
              for(var i=0; i<base.itemsAmount; i++){
                  var item = $(base.owlItems[i]),
                      itemNumber = item.data("owl-item"),
                      lazyImg = item.find(".lazyOwl"),
                      follow;
  
                  if(item.data("owl-loaded") === undefined){
                      lazyImg.hide();
                      item.addClass("loading").data("owl-loaded","checked");
                  } else if(item.data("owl-loaded") === "loaded"){
                      continue;
                  }
  
                  if(base.options.lazyFollow === true){
                      follow = itemNumber >= base.currentSlide;
                  }else {
                      follow = true;
                  }
  
                  if(follow && itemNumber < base.currentSlide + base.options.items){
                      item.data("owl-loaded", "loaded");
  
                      var link = lazyImg.data("src");
                      if(link){
                          lazyImg[0].src = link;
                          lazyImg.removeAttr("data-src");
                      }
  
                      lazyImg.fadeIn(200);
                      item.removeClass("loading");
                  }
              }
          },
  
          autoHeight : function(){
              var base = this;
              if(base.options.autoHeight === true){
                  var itemHeight = $(base.owlItems[base.currentSlide]).css("height");
                  base.wrapperOuter.css("height",itemHeight);
  
                  setTimeout(function(){
                      if(itemHeight !== $(base.owlItems[base.currentSlide]).css("height")){
                          base.wrapperOuter.css("height",itemHeight);
                      }
                  },400);
  
                  setTimeout(function(){
                      if(!base.wrapperOuter.hasClass("autoHeight")){
                          base.wrapperOuter.addClass("autoHeight");
                      }
                  },0);
              }
          },
          addActiveClass : function(){
              var base = this;
              $(base.owlItems).removeClass('active');
              $(base.owlItems[base.currentSlide]).addClass('active');
          }
  
      };
  
  
      $.fn.owlCarousel = function( options ){
          return this.each(function() {
              var carousel = Object.create( Carousel );
              carousel.init( options, this );
              $.data( this, "owlCarousel", carousel );
          });
      };
  
      $.fn.owlCarousel.options = {
  
          items : 5,
          itemsDesktop : [1199,4],
          itemsDesktopSmall : [979,3],
          itemsTablet: [768,2],
          itemsMobile : [479,1],
          singleItem:false,
  
          slideSpeed : 200,
          paginationSpeed : 800,
  
          autoPlay : false,
          stopOnHover : false,
          goToFirst : true,
          goToFirstSpeed : 1000,
  
          navigation : false,
          navigationText : ["prev","next"],
          goToFirstNav : true,
          scrollPerPage : false,
  
          pagination : true,
          paginationNumbers: false,
  
          responsive: true,
          responsiveRefreshRate : 200,
  
          baseClass : "owl-carousel",
          theme : "owl-theme",
  
          lazyLoad : false,
          lazyFollow : true,
  
          autoHeight : false,
  
          jsonPath : false,
          jsonSuccess : false,
  
          mouseDraggable : true,
  
          beforeInit : false,
          afterInit : false,
          beforeMove: false,
          afterMove: false,
          afterAction : false
      };
  })( jQuery, window, document );            