{"version":3,"sources":["bootstrap.min.js","console.js","jquery.animatescroll.js","jquery.detectmobilebrowser.js","matchMedia.addListener.js","matchMedia.js","owl.carousel.js","main.js"],"names":["jQuery","Error","a","b","fn","jquery","split","emulateTransitionEnd","c","d","this","one","setTimeout","trigger","support","transition","end","document","createElement","WebkitTransition","MozTransition","OTransition","style","event","special","bsTransitionEnd","bindType","delegateType","handle","target","is","handleObj","handler","apply","arguments","on","close","VERSION","TRANSITION_DURATION","prototype","g","detach","remove","e","f","attr","replace","preventDefault","length","closest","Event","isDefaultPrevented","removeClass","hasClass","alert","each","data","call","Constructor","noConflict","toggle","setState","$element","options","extend","DEFAULTS","isLoading","loadingText","resetText","proxy","addClass","prop","removeAttr","find","toggleClass","button","first","test","type","slide","to","interval","pause","cycle","$indicators","paused","sliding","$active","$items","keyboard","keydown","documentElement","wrap","tagName","which","prev","next","clearInterval","setInterval","getItemIndex","parent","children","index","getItemForDirection","eq","h","i","j","k","relatedTarget","direction","l","m","offsetWidth","join","carousel","window","$trigger","id","transitioning","$parent","getParent","addAriaAndCollapsedClass","dimension","show","camelCase","hide","offsetHeight","collapse","contains","insertAfter","stopPropagation","dropdown","$body","body","$dialog","$backdrop","isShown","originalBodyPad","scrollbarWidth","ignoreBackdropClick","remote","load","BACKDROP_TRANSITION_DURATION","backdrop","checkScrollbar","setScrollbar","escape","resize","appendTo","scrollTop","adjustDialog","enforceFocus","off","hideModal","has","handleUpdate","resetAdjustments","resetScrollbar","removeBackdrop","currentTarget","focus","scrollHeight","clientHeight","css","paddingLeft","bodyIsOverflowing","paddingRight","innerWidth","getBoundingClientRect","right","Math","abs","left","clientWidth","measureScrollbar","parseInt","className","append","removeChild","modal","enabled","timeout","hoverState","inState","init","animation","placement","selector","template","title","delay","html","container","viewport","padding","getOptions","$viewport","isFunction","click","hover","constructor","enter","leave","_options","fixTitle","getDefaults","getDelegateOptions","tip","clearTimeout","isInStateTrue","hasContent","ownerDocument","getUID","setContent","top","display","getPosition","n","o","bottom","width","p","getCalculatedOffset","applyPlacement","q","$tip","isNaN","offset","setOffset","using","round","getViewportAdjustedDelta","replaceArrow","arrow","getTitle","height","SVGElement","scroll","random","getElementById","$arrow","enable","disable","toggleEnabled","destroy","removeData","tooltip","content","getContent","popover","$scrollElement","offsets","targets","activeTarget","process","refresh","getScrollHeight","max","isWindow","map","sort","push","activate","clear","parents","parentsUntil","scrollspy","element","tab","$target","checkPosition","checkPositionWithEventLoop","affixed","unpin","pinnedOffset","RESET","getState","getPinnedOffset","affix","offsetBottom","offsetTop","noop","method","methods","console","$","easing","def","swing","x","t","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","cos","PI","easeOutSine","sin","easeInOutSine","easeInExpo","pow","easeOutExpo","easeInOutExpo","easeInCirc","sqrt","easeOutCirc","easeInOutCirc","easeInElastic","s","asin","easeOutElastic","easeInOutElastic","easeInBack","undefined","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","easeInOutBounce","animatescroll","opts","defaults","onScrollStart","stop","animate","scrollSpeed","onScrollEnd","browser","mobile","substr","navigator","userAgent","vendor","opera","matchMedia","addListener","handleChange","evt","timeoutID","il","queries","mql","listeners","matches","localMatchMedia","media","jl","hasMediaQueries","isListening","listener","addEventListener","removeListener","splice","styleMedia","info","script","getElementsByTagName","parentNode","insertBefore","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","Owl","settings","Defaults","_handlers","_plugins","_supress","_current","_speed","_coordinates","_breakpoint","_width","_items","_clones","_mergers","_widths","_invalidated","_pipe","_drag","time","pointer","stage","start","current","_states","tags","initializing","animating","dragging","Plugins","key","plugin","charAt","toLowerCase","slice","Workers","priority","worker","filter","run","setup","initialize","items","loop","center","rewind","mouseDrag","touchDrag","pullDrag","freeDrag","margin","stagePadding","merge","mergeFit","autoWidth","startPosition","rtl","smartSpeed","fluidSpeed","dragEndSpeed","responsive","responsiveRefreshRate","responsiveBaseElement","fallbackEasing","nestedItemSelector","itemElement","stageElement","refreshClass","loadedClass","loadingClass","rtlClass","responsiveClass","dragClass","itemClass","stageClass","stageOuterClass","grabClass","Width","Default","Inner","Outer","Type","State","cache","relative","$stage","grid","margin-left","margin-right","toFixed","iterator","widths","min","clones","view","size","ceil","repeat","prepend","normalize","outerHTML","prependTo","previous","coordinates","padding-left","padding-right","minimum","maximum","reset","inner","outer","begin","op","imgs","nestedSelector","preloadAutoWidthImages","not","invalidate","registerEventHandlers","overwrites","match","breakpoint","Number","RegExp","property","name","value","optionsLogic","prepare","item","update","all","grep","onThrottledResize","resizeTimer","onResize","onTransitionEnd","onDragStart","onDragEnd","transform","y","position","speed","Date","getTime","delta","difference","onDragMove","pull","coordinate","transform3d","state","part","v","suppress","release","isNumeric","reciprocalItemsWidth","elementWidth","mergers","even","odd","multiplier","newPosition","duration","from","factor","revert","distance","srcElement","originalTarget","get","empty","nodeType","addBack","add","after","before","images","Image","src","unwrap","contents","capture","attachEvent","removeEventListener","detachEvent","namespace","status","count","onTrigger","register","concat","object","owl","_default","indexOf","tag","inArray","events","result","originalEvent","touches","changedTouches","pageX","pageY","clientX","clientY","number","parseFloat","second","owlCarousel","option","args","Array","$this","Zepto","AutoRefresh","_core","_interval","_visible","initialized.owl.carousel","autoRefresh","watch","autoRefreshInterval","Object","getOwnPropertyNames","Lazy","_loaded","initialized.owl.carousel change.owl.carousel resized.owl.carousel","lazyLoad","$item","$elements","image","url","devicePixelRatio","onload","background-image","opacity","handlers","AutoHeight","initialized.owl.carousel refreshed.owl.carousel","autoHeight","changed.owl.carousel","loaded.owl.lazy","autoHeightClass","maxheight","visible","toArray","heights","Video","_videos","_playing","resize.owl.carousel","video","isInFullScreen","refreshed.owl.carousel","prepared.owl.carousel","fetch","play","videoHeight","videoWidth","thumbnail","create","path","tnLink","lazyClass","srcType","dimensions","customTn","ajax","jsonp","dataType","success","thumbnail_large","framegrab_url","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","Animate","scope","core","swapping","change.owl.carousel","drag.owl.carousel dragged.owl.carousel translated.owl.carousel","translate.owl.carousel","animateOut","animateIn","swap","incoming","outgoing","Autoplay","_timeout","_paused","autoplay","_setAutoPlayInterval","play.owl.autoplay","stop.owl.autoplay","mouseover.owl.autoplay","autoplayHoverPause","mouseleave.owl.autoplay","touchstart.owl.core","touchend.owl.core","autoplayTimeout","autoplaySpeed","_getNextTimeout","hidden","Navigation","_initialized","_pages","_controls","_templates","_overrides","dotsData","dotClass","added.owl.carousel","pop","remove.owl.carousel","draw","nav","navText","navSpeed","navElement","navContainer","navContainerClass","navClass","slideBy","dotsClass","dots","dotsEach","dotsSpeed","dotsContainer","override","$relative","$previous","$next","$absolute","control","overides","lower","upper","disabled","page","successor","standard","Hash","_hashes","hash","location","substring","URLhashListener","prefixes","WebkitAnimation","MozAnimation","OAnimation","tests","prefixed","toUpperCase","String","didScroll","siteInit","variables","$window","$html","$header","$logo","_isSmallScreen","_isMediumScreen","_isLargeScreen","_isExtraLargeScreen","_isPortrait","_easing","DOMready","_isExtraSmallScreen","isTouchDevice","initSidebar","initSidebarNav","goTo","initCounter","initMobileMenu","initAnimate","initInfiniteScroll","toggleObj","hideBox","DOMload","DocumentTouch","orientation","panelslider","bodyClass","clickClose","onOpen","bind","isInView","visiblePartX","visiblePartY","0","600","1000","$padding","log","slideToggle","initHighlight","ias","pagination","extension","IASTriggerExtension","IASSpinnerExtension","initStripesBg","_linesBG","_linesFooter","color","lineMaker","LineMaker","lines","animateLinesIn","lineMakerFooter","ready","lastScrollTop","navbarHeight","outerHeight","hasScrolled","st"],"mappings":"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","file":"scripts.min.js","sourcesContent":["/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under the MIT license\n */\nif(\"undefined\"==typeof jQuery)throw new Error(\"Bootstrap's JavaScript requires jQuery\");+function(a){\"use strict\";var b=a.fn.jquery.split(\" \")[0].split(\".\");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error(\"Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4\")}(jQuery),+function(a){\"use strict\";function b(){var a=document.createElement(\"bootstrap\"),b={WebkitTransition:\"webkitTransitionEnd\",MozTransition:\"transitionend\",OTransition:\"oTransitionEnd otransitionend\",transition:\"transitionend\"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(\"bsTransitionEnd\",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){\"use strict\";function b(b){return this.each(function(){var c=a(this),e=c.data(\"bs.alert\");e||c.data(\"bs.alert\",e=new d(this)),\"string\"==typeof b&&e[b].call(c)})}var c='[data-dismiss=\"alert\"]',d=function(b){a(b).on(\"click\",c,this.close)};d.VERSION=\"3.3.7\",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger(\"closed.bs.alert\").remove()}var e=a(this),f=e.attr(\"data-target\");f||(f=e.attr(\"href\"),f=f&&f.replace(/.*(?=#[^\\s]*$)/,\"\"));var g=a(\"#\"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(\".alert\")),g.trigger(b=a.Event(\"close.bs.alert\")),b.isDefaultPrevented()||(g.removeClass(\"in\"),a.support.transition&&g.hasClass(\"fade\")?g.one(\"bsTransitionEnd\",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on(\"click.bs.alert.data-api\",c,d.prototype.close)}(jQuery),+function(a){\"use strict\";function b(b){return this.each(function(){var d=a(this),e=d.data(\"bs.button\"),f=\"object\"==typeof b&&b;e||d.data(\"bs.button\",e=new c(this,f)),\"toggle\"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION=\"3.3.7\",c.DEFAULTS={loadingText:\"loading...\"},c.prototype.setState=function(b){var c=\"disabled\",d=this.$element,e=d.is(\"input\")?\"val\":\"html\",f=d.data();b+=\"Text\",null==f.resetText&&d.data(\"resetText\",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),\"loadingText\"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle=\"buttons\"]');if(b.length){var c=this.$element.find(\"input\");\"radio\"==c.prop(\"type\")?(c.prop(\"checked\")&&(a=!1),b.find(\".active\").removeClass(\"active\"),this.$element.addClass(\"active\")):\"checkbox\"==c.prop(\"type\")&&(c.prop(\"checked\")!==this.$element.hasClass(\"active\")&&(a=!1),this.$element.toggleClass(\"active\")),c.prop(\"checked\",this.$element.hasClass(\"active\")),a&&c.trigger(\"change\")}else this.$element.attr(\"aria-pressed\",!this.$element.hasClass(\"active\")),this.$element.toggleClass(\"active\")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on(\"click.bs.button.data-api\",'[data-toggle^=\"button\"]',function(c){var d=a(c.target).closest(\".btn\");b.call(d,\"toggle\"),a(c.target).is('input[type=\"radio\"], input[type=\"checkbox\"]')||(c.preventDefault(),d.is(\"input,button\")?d.trigger(\"focus\"):d.find(\"input:visible,button:visible\").first().trigger(\"focus\"))}).on(\"focus.bs.button.data-api blur.bs.button.data-api\",'[data-toggle^=\"button\"]',function(b){a(b.target).closest(\".btn\").toggleClass(\"focus\",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){\"use strict\";function b(b){return this.each(function(){var d=a(this),e=d.data(\"bs.carousel\"),f=a.extend({},c.DEFAULTS,d.data(),\"object\"==typeof b&&b),g=\"string\"==typeof b?b:f.slide;e||d.data(\"bs.carousel\",e=new c(this,f)),\"number\"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(\".carousel-indicators\"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on(\"keydown.bs.carousel\",a.proxy(this.keydown,this)),\"hover\"==this.options.pause&&!(\"ontouchstart\"in document.documentElement)&&this.$element.on(\"mouseenter.bs.carousel\",a.proxy(this.pause,this)).on(\"mouseleave.bs.carousel\",a.proxy(this.cycle,this))};c.VERSION=\"3.3.7\",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:\"hover\",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(\".item\"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d=\"prev\"==a&&0===c||\"next\"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e=\"prev\"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(\".item.active\"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one(\"slid.bs.carousel\",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?\"next\":\"prev\",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(\".next, .prev\").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide(\"next\")},c.prototype.prev=function(){if(!this.sliding)return this.slide(\"prev\")},c.prototype.slide=function(b,d){var e=this.$element.find(\".item.active\"),f=d||this.getItemForDirection(b,e),g=this.interval,h=\"next\"==b?\"left\":\"right\",i=this;if(f.hasClass(\"active\"))return this.sliding=!1;var j=f[0],k=a.Event(\"slide.bs.carousel\",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(\".active\").removeClass(\"active\");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass(\"active\")}var m=a.Event(\"slid.bs.carousel\",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass(\"slide\")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one(\"bsTransitionEnd\",function(){f.removeClass([b,h].join(\" \")).addClass(\"active\"),e.removeClass([\"active\",h].join(\" \")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass(\"active\"),f.addClass(\"active\"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr(\"data-target\")||(d=e.attr(\"href\"))&&d.replace(/.*(?=#[^\\s]+$)/,\"\"));if(f.hasClass(\"carousel\")){var g=a.extend({},f.data(),e.data()),h=e.attr(\"data-slide-to\");h&&(g.interval=!1),b.call(f,g),h&&f.data(\"bs.carousel\").to(h),c.preventDefault()}};a(document).on(\"click.bs.carousel.data-api\",\"[data-slide]\",e).on(\"click.bs.carousel.data-api\",\"[data-slide-to]\",e),a(window).on(\"load\",function(){a('[data-ride=\"carousel\"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){\"use strict\";function b(b){var c,d=b.attr(\"data-target\")||(c=b.attr(\"href\"))&&c.replace(/.*(?=#[^\\s]+$)/,\"\");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data(\"bs.collapse\"),f=a.extend({},d.DEFAULTS,c.data(),\"object\"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data(\"bs.collapse\",e=new d(this,f)),\"string\"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle=\"collapse\"][href=\"#'+b.id+'\"],[data-toggle=\"collapse\"][data-target=\"#'+b.id+'\"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION=\"3.3.7\",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass(\"width\");return a?\"width\":\"height\"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass(\"in\")){var b,e=this.$parent&&this.$parent.children(\".panel\").children(\".in, .collapsing\");if(!(e&&e.length&&(b=e.data(\"bs.collapse\"),b&&b.transitioning))){var f=a.Event(\"show.bs.collapse\");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,\"hide\"),b||e.data(\"bs.collapse\",null));var g=this.dimension();this.$element.removeClass(\"collapse\").addClass(\"collapsing\")[g](0).attr(\"aria-expanded\",!0),this.$trigger.removeClass(\"collapsed\").attr(\"aria-expanded\",!0),this.transitioning=1;var h=function(){this.$element.removeClass(\"collapsing\").addClass(\"collapse in\")[g](\"\"),this.transitioning=0,this.$element.trigger(\"shown.bs.collapse\")};if(!a.support.transition)return h.call(this);var i=a.camelCase([\"scroll\",g].join(\"-\"));this.$element.one(\"bsTransitionEnd\",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass(\"in\")){var b=a.Event(\"hide.bs.collapse\");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass(\"collapsing\").removeClass(\"collapse in\").attr(\"aria-expanded\",!1),this.$trigger.addClass(\"collapsed\").attr(\"aria-expanded\",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass(\"collapsing\").addClass(\"collapse\").trigger(\"hidden.bs.collapse\")};return a.support.transition?void this.$element[c](0).one(\"bsTransitionEnd\",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass(\"in\")?\"hide\":\"show\"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle=\"collapse\"][data-parent=\"'+this.options.parent+'\"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass(\"in\");a.attr(\"aria-expanded\",c),b.toggleClass(\"collapsed\",!c).attr(\"aria-expanded\",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on(\"click.bs.collapse.data-api\",'[data-toggle=\"collapse\"]',function(d){var e=a(this);e.attr(\"data-target\")||d.preventDefault();var f=b(e),g=f.data(\"bs.collapse\"),h=g?\"toggle\":e.data();c.call(f,h)})}(jQuery),+function(a){\"use strict\";function b(b){var c=b.attr(\"data-target\");c||(c=b.attr(\"href\"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\\s]*$)/,\"\"));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass(\"open\")&&(c&&\"click\"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event(\"hide.bs.dropdown\",f)),c.isDefaultPrevented()||(d.attr(\"aria-expanded\",\"false\"),e.removeClass(\"open\").trigger(a.Event(\"hidden.bs.dropdown\",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data(\"bs.dropdown\");d||c.data(\"bs.dropdown\",d=new g(this)),\"string\"==typeof b&&d[b].call(c)})}var e=\".dropdown-backdrop\",f='[data-toggle=\"dropdown\"]',g=function(b){a(b).on(\"click.bs.dropdown\",this.toggle)};g.VERSION=\"3.3.7\",g.prototype.toggle=function(d){var e=a(this);if(!e.is(\".disabled, :disabled\")){var f=b(e),g=f.hasClass(\"open\");if(c(),!g){\"ontouchstart\"in document.documentElement&&!f.closest(\".navbar-nav\").length&&a(document.createElement(\"div\")).addClass(\"dropdown-backdrop\").insertAfter(a(this)).on(\"click\",c);var h={relatedTarget:this};if(f.trigger(d=a.Event(\"show.bs.dropdown\",h)),d.isDefaultPrevented())return;e.trigger(\"focus\").attr(\"aria-expanded\",\"true\"),f.toggleClass(\"open\").trigger(a.Event(\"shown.bs.dropdown\",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(\".disabled, :disabled\")){var e=b(d),g=e.hasClass(\"open\");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger(\"focus\"),d.trigger(\"click\");var h=\" li:not(.disabled):visible a\",i=e.find(\".dropdown-menu\"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:\"\",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:\"\"})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:\"\",paddingRight:\"\"})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:\"hover focus\",title:\"\",delay:0,html:!1,container:!1,viewport:{selector:\"body\",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error(\"`selector` option must be specified when initializing \"+this.type+\" on the window.document object!\");for(var e=this.options.trigger.split(\" \"),f=e.length;f--;){var g=e[f];if(\"click\"==g)this.$element.on(\"click.\"+this.type,this.options.selector,a.proxy(this.toggle,this));else if(\"manual\"!=g){var h=\"hover\"==g?\"mouseenter\":\"focusin\",i=\"hover\"==g?\"mouseleave\":\"focusout\";this.$element.on(h+\".\"+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+\".\"+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:\"manual\",selector:\"\"}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&\"number\"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data(\"bs.\"+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data(\"bs.\"+this.type,c)),b instanceof a.Event&&(c.inState[\"focusin\"==b.type?\"focus\":\"hover\"]=!0),c.tip().hasClass(\"in\")||\"in\"==c.hoverState?void(c.hoverState=\"in\"):(clearTimeout(c.timeout),c.hoverState=\"in\",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){\"in\"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data(\"bs.\"+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data(\"bs.\"+this.type,c)),b instanceof a.Event&&(c.inState[\"focusout\"==b.type?\"focus\":\"hover\"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState=\"out\",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){\"out\"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event(\"show.bs.\"+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr(\"id\",g),this.$element.attr(\"aria-describedby\",g),this.options.animation&&f.addClass(\"fade\");var h=\"function\"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\\s?auto?\\s?/i,j=i.test(h);j&&(h=h.replace(i,\"\")||\"top\"),f.detach().css({top:0,left:0,display:\"block\"}).addClass(h).data(\"bs.\"+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger(\"inserted.bs.\"+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h=\"bottom\"==h&&k.bottom+m>o.bottom?\"top\":\"top\"==h&&k.top-mo.width?\"left\":\"left\"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr(\"data-original-title\")||(\"function\"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+\" `template` option must consist of exactly 1 top-level element!\");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".tooltip-arrow\")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data(\"bs.\"+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data(\"bs.\"+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass(\"in\")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off(\".\"+a.type).removeData(\"bs.\"+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){\"use strict\";function b(b){return this.each(function(){var d=a(this),e=d.data(\"bs.popover\"),f=\"object\"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data(\"bs.popover\",e=new c(this,f)),\"string\"==typeof b&&e[b]())})}var c=function(a,b){this.init(\"popover\",a,b)};if(!a.fn.tooltip)throw new Error(\"Popover requires tooltip.js\");c.VERSION=\"3.3.7\",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:\"right\",trigger:\"click\",content:\"\",template:'

'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(\".popover-title\")[this.options.html?\"html\":\"text\"](b),a.find(\".popover-content\").children().detach().end()[this.options.html?\"string\"==typeof c?\"html\":\"append\":\"text\"](c),a.removeClass(\"fade top bottom left right in\"),a.find(\".popover-title\").html()||a.find(\".popover-title\").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr(\"data-content\")||(\"function\"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".arrow\")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){\"use strict\";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||\"\")+\" .nav li > a\",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on(\"scroll.bs.scrollspy\",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data(\"bs.scrollspy\"),f=\"object\"==typeof c&&c;e||d.data(\"bs.scrollspy\",e=new b(this,f)),\"string\"==typeof c&&e[c]()})}b.VERSION=\"3.3.7\",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c=\"offset\",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c=\"position\",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data(\"target\")||b.attr(\"href\"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(\":visible\")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active\").removeClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!1),b.addClass(\"active\").find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),h?(b[0].offsetWidth,b.addClass(\"in\")):b.removeClass(\"fade\"),b.parent(\".dropdown-menu\").length&&b.closest(\"li.dropdown\").addClass(\"active\").end().find('[data-toggle=\"tab\"]').attr(\"aria-expanded\",!0),e&&e()}var g=d.find(\"> .active\"),h=e&&a.support.transition&&(g.length&&g.hasClass(\"fade\")||!!d.find(\"> .fade\").length);g.length&&h?g.one(\"bsTransitionEnd\",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass(\"in\")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),\"show\")};a(document).on(\"click.bs.tab.data-api\",'[data-toggle=\"tab\"]',e).on(\"click.bs.tab.data-api\",'[data-toggle=\"pill\"]',e)}(jQuery),+function(a){\"use strict\";function b(b){return this.each(function(){var d=a(this),e=d.data(\"bs.affix\"),f=\"object\"==typeof b&&b;e||d.data(\"bs.affix\",e=new c(this,f)),\"string\"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on(\"scroll.bs.affix.data-api\",a.proxy(this.checkPosition,this)).on(\"click.bs.affix.data-api\",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION=\"3.3.7\",c.RESET=\"affix affix-top affix-bottom\",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&\"top\"==this.affixed)return e=a-d&&\"bottom\"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass(\"affix\");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(\":visible\")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());\"object\"!=typeof d&&(f=e=d),\"function\"==typeof e&&(e=d.top(this.$element)),\"function\"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css(\"top\",\"\");var i=\"affix\"+(h?\"-\"+h:\"\"),j=a.Event(i+\".bs.affix\");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin=\"bottom\"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace(\"affix\",\"affixed\")+\".bs.affix\")}\"bottom\"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on(\"load\",function(){a('[data-spy=\"affix\"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery);","// Avoid `console` errors in browsers that lack a console.\n(function() {\n\tvar method;\n\tvar noop = function () {};\n\tvar methods = [\n\t\t'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error',\n\t\t'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log',\n\t\t'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd',\n\t\t'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn'\n\t];\n\tvar length = methods.length;\n\tvar console = (window.console = window.console || {});\n\n\twhile (length--) {\n\t\tmethod = methods[length];\n\n\t\t// Only stub undefined methods.\n\t\tif (!console[method]) {\n\t\t\tconsole[method] = noop;\n\t\t}\n\t}\n}());\n","/*\n * @build : 20-07-2013\n * @author : Ram swaroop\n * @site : Compzets.com\n */\n(function($){\n \n // defines various easing effects\n $.easing['jswing'] = $.easing['swing'];\n $.extend( $.easing,\n {\n def: 'easeOutQuad',\n swing: function (x, t, b, c, d) {\n return $.easing[$.easing.def](x, t, b, c, d);\n },\n easeInQuad: function (x, t, b, c, d) {\n return c*(t/=d)*t + b;\n },\n easeOutQuad: function (x, t, b, c, d) {\n return -c *(t/=d)*(t-2) + b;\n },\n easeInOutQuad: function (x, t, b, c, d) {\n if ((t/=d/2) < 1) return c/2*t*t + b;\n return -c/2 * ((--t)*(t-2) - 1) + b;\n },\n easeInCubic: function (x, t, b, c, d) {\n return c*(t/=d)*t*t + b;\n },\n easeOutCubic: function (x, t, b, c, d) {\n return c*((t=t/d-1)*t*t + 1) + b;\n },\n easeInOutCubic: function (x, t, b, c, d) {\n if ((t/=d/2) < 1) return c/2*t*t*t + b;\n return c/2*((t-=2)*t*t + 2) + b;\n },\n easeInQuart: function (x, t, b, c, d) {\n return c*(t/=d)*t*t*t + b;\n },\n easeOutQuart: function (x, t, b, c, d) {\n return -c * ((t=t/d-1)*t*t*t - 1) + b;\n },\n easeInOutQuart: function (x, t, b, c, d) {\n if ((t/=d/2) < 1) return c/2*t*t*t*t + b;\n return -c/2 * ((t-=2)*t*t*t - 2) + b;\n },\n easeInQuint: function (x, t, b, c, d) {\n return c*(t/=d)*t*t*t*t + b;\n },\n easeOutQuint: function (x, t, b, c, d) {\n return c*((t=t/d-1)*t*t*t*t + 1) + b;\n },\n easeInOutQuint: function (x, t, b, c, d) {\n if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;\n return c/2*((t-=2)*t*t*t*t + 2) + b;\n },\n easeInSine: function (x, t, b, c, d) {\n return -c * Math.cos(t/d * (Math.PI/2)) + c + b;\n },\n easeOutSine: function (x, t, b, c, d) {\n return c * Math.sin(t/d * (Math.PI/2)) + b;\n },\n easeInOutSine: function (x, t, b, c, d) {\n return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;\n },\n easeInExpo: function (x, t, b, c, d) {\n return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;\n },\n easeOutExpo: function (x, t, b, c, d) {\n return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;\n },\n easeInOutExpo: function (x, t, b, c, d) {\n if (t==0) return b;\n if (t==d) return b+c;\n if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;\n return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;\n },\n easeInCirc: function (x, t, b, c, d) {\n return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;\n },\n easeOutCirc: function (x, t, b, c, d) {\n return c * Math.sqrt(1 - (t=t/d-1)*t) + b;\n },\n easeInOutCirc: function (x, t, b, c, d) {\n if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;\n return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;\n },\n easeInElastic: function (x, t, b, c, d) {\n var s=1.70158;var p=0;var a=c;\n if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;\n if (a < Math.abs(c)) { a=c; var s=p/4; }\n else var s = p/(2*Math.PI) * Math.asin (c/a);\n return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;\n },\n easeOutElastic: function (x, t, b, c, d) {\n var s=1.70158;var p=0;var a=c;\n if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;\n if (a < Math.abs(c)) { a=c; var s=p/4; }\n else var s = p/(2*Math.PI) * Math.asin (c/a);\n return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;\n },\n easeInOutElastic: function (x, t, b, c, d) {\n var s=1.70158;var p=0;var a=c;\n if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);\n if (a < Math.abs(c)) { a=c; var s=p/4; }\n else var s = p/(2*Math.PI) * Math.asin (c/a);\n if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;\n return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;\n },\n easeInBack: function (x, t, b, c, d, s) {\n if (s == undefined) s = 1.70158;\n return c*(t/=d)*t*((s+1)*t - s) + b;\n },\n easeOutBack: function (x, t, b, c, d, s) {\n if (s == undefined) s = 1.70158;\n return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;\n },\n easeInOutBack: function (x, t, b, c, d, s) {\n if (s == undefined) s = 1.70158; \n if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;\n return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;\n },\n easeInBounce: function (x, t, b, c, d) {\n return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b;\n },\n easeOutBounce: function (x, t, b, c, d) {\n if ((t/=d) < (1/2.75)) {\n return c*(7.5625*t*t) + b;\n } else if (t < (2/2.75)) {\n return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;\n } else if (t < (2.5/2.75)) {\n return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;\n } else {\n return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;\n }\n },\n easeInOutBounce: function (x, t, b, c, d) {\n if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;\n return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;\n }\n });\n \n $.fn.animatescroll = function(options) {\n \n // fetches options\n var opts = $.extend({},$.fn.animatescroll.defaults,options);\n\n // make sure the callback is a function\n if (typeof opts.onScrollStart == 'function') {\n // brings the scope to the callback\n opts.onScrollStart.call(this);\n }\n \n if(opts.element == \"html,body\") {\n // Get the distance of particular id or class from top\n var offset = this.offset().top;\n \n // Scroll the page to the desired position\n $(opts.element).stop().animate({ scrollTop: offset - opts.padding}, opts.scrollSpeed, opts.easing);\n }\n else {\n // Scroll the element to the desired position\n $(opts.element).stop().animate({ scrollTop: this.offset().top - this.parent().offset().top + this.parent().scrollTop() - opts.padding}, opts.scrollSpeed, opts.easing);\n }\n\n setTimeout(function() {\n\n // make sure the callback is a function\n if (typeof opts.onScrollEnd == 'function') {\n // brings the scope to the callback\n opts.onScrollEnd.call(this);\n }\n }, opts.scrollSpeed);\n };\n \n // default options\n $.fn.animatescroll.defaults = { \n easing:\"swing\",\n scrollSpeed:800,\n padding:0,\n element:\"html,body\"\n }; \n \n}(jQuery));","/**\n * jQuery.browser.mobile (http://detectmobilebrowser.com/)\n *\n * jQuery.browser.mobile will be true if the browser is a mobile device\n *\n **/\n(function(a){(jQuery.browser=jQuery.browser||{}).mobile=/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0,4))})(navigator.userAgent||navigator.vendor||window.opera);","/*! matchMedia() polyfill addListener/removeListener extension. Author & copyright (c) 2012: Scott Jehl. Dual MIT/BSD license */\n(function(){\n // Bail out for browsers that have addListener support\n if (window.matchMedia && window.matchMedia('all').addListener) {\n return false;\n }\n\n var localMatchMedia = window.matchMedia,\n hasMediaQueries = localMatchMedia('only all').matches,\n isListening = false,\n timeoutID = 0, // setTimeout for debouncing 'handleChange'\n queries = [], // Contains each 'mql' and associated 'listeners' if 'addListener' is used\n handleChange = function(evt) {\n // Debounce\n clearTimeout(timeoutID);\n\n timeoutID = setTimeout(function() {\n for (var i = 0, il = queries.length; i < il; i++) {\n var mql = queries[i].mql,\n listeners = queries[i].listeners || [],\n matches = localMatchMedia(mql.media).matches;\n\n // Update mql.matches value and call listeners\n // Fire listeners only if transitioning to or from matched state\n if (matches !== mql.matches) {\n mql.matches = matches;\n\n for (var j = 0, jl = listeners.length; j < jl; j++) {\n listeners[j].call(window, mql);\n }\n }\n }\n }, 30);\n };\n\n window.matchMedia = function(media) {\n var mql = localMatchMedia(media),\n listeners = [],\n index = 0;\n\n mql.addListener = function(listener) {\n // Changes would not occur to css media type so return now (Affects IE <= 8)\n if (!hasMediaQueries) {\n return;\n }\n\n // Set up 'resize' listener for browsers that support CSS3 media queries (Not for IE <= 8)\n // There should only ever be 1 resize listener running for performance\n if (!isListening) {\n isListening = true;\n window.addEventListener('resize', handleChange, true);\n }\n\n // Push object only if it has not been pushed already\n if (index === 0) {\n index = queries.push({\n mql : mql,\n listeners : listeners\n });\n }\n\n listeners.push(listener);\n };\n\n mql.removeListener = function(listener) {\n for (var i = 0, il = listeners.length; i < il; i++){\n if (listeners[i] === listener){\n listeners.splice(i, 1);\n }\n }\n };\n\n return mql;\n };\n}());\n","/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license */\n\nwindow.matchMedia || (window.matchMedia = function() {\n \"use strict\";\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n var styleMedia = (window.styleMedia || window.media);\n\n // For those that don't support matchMedium\n if (!styleMedia) {\n var style = document.createElement('style'),\n script = document.getElementsByTagName('script')[0],\n info = null;\n\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n script.parentNode.insertBefore(style, script);\n\n // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\n info = ('getComputedStyle' in window) && window.getComputedStyle(style, null) || style.currentStyle;\n\n styleMedia = {\n matchMedium: function(media) {\n var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }';\n\n // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\n if (style.styleSheet) {\n style.styleSheet.cssText = text;\n } else {\n style.textContent = text;\n }\n\n // Test if media query is true or false\n return info.width === '1px';\n }\n };\n }\n\n return function(media) {\n return {\n matches: styleMedia.matchMedium(media || 'all'),\n media: media || 'all'\n };\n };\n}());\n","/**\n * Owl Carousel v2.2.0\n * Copyright 2013-2016 David Deutsch\n * Licensed under MIT (https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE)\n */\n/**\n * Owl carousel\n * @version 2.1.6\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n * @todo Lazy Load Icon\n * @todo prevent animationend bubling\n * @todo itemsScaleUp\n * @todo Test Zepto\n * @todo stagePadding calculate wrong active classes\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates a carousel.\n\t * @class The Owl Carousel.\n\t * @public\n\t * @param {HTMLElement|jQuery} element - The element to create the carousel for.\n\t * @param {Object} [options] - The options\n\t */\n\tfunction Owl(element, options) {\n\n\t\t/**\n\t\t * Current settings for the carousel.\n\t\t * @public\n\t\t */\n\t\tthis.settings = null;\n\n\t\t/**\n\t\t * Current options set by the caller including defaults.\n\t\t * @public\n\t\t */\n\t\tthis.options = $.extend({}, Owl.Defaults, options);\n\n\t\t/**\n\t\t * Plugin element.\n\t\t * @public\n\t\t */\n\t\tthis.$element = $(element);\n\n\t\t/**\n\t\t * Proxied event handlers.\n\t\t * @protected\n\t\t */\n\t\tthis._handlers = {};\n\n\t\t/**\n\t\t * References to the running plugins of this carousel.\n\t\t * @protected\n\t\t */\n\t\tthis._plugins = {};\n\n\t\t/**\n\t\t * Currently suppressed events to prevent them from beeing retriggered.\n\t\t * @protected\n\t\t */\n\t\tthis._supress = {};\n\n\t\t/**\n\t\t * Absolute current position.\n\t\t * @protected\n\t\t */\n\t\tthis._current = null;\n\n\t\t/**\n\t\t * Animation speed in milliseconds.\n\t\t * @protected\n\t\t */\n\t\tthis._speed = null;\n\n\t\t/**\n\t\t * Coordinates of all items in pixel.\n\t\t * @todo The name of this member is missleading.\n\t\t * @protected\n\t\t */\n\t\tthis._coordinates = [];\n\n\t\t/**\n\t\t * Current breakpoint.\n\t\t * @todo Real media queries would be nice.\n\t\t * @protected\n\t\t */\n\t\tthis._breakpoint = null;\n\n\t\t/**\n\t\t * Current width of the plugin element.\n\t\t */\n\t\tthis._width = null;\n\n\t\t/**\n\t\t * All real items.\n\t\t * @protected\n\t\t */\n\t\tthis._items = [];\n\n\t\t/**\n\t\t * All cloned items.\n\t\t * @protected\n\t\t */\n\t\tthis._clones = [];\n\n\t\t/**\n\t\t * Merge values of all items.\n\t\t * @todo Maybe this could be part of a plugin.\n\t\t * @protected\n\t\t */\n\t\tthis._mergers = [];\n\n\t\t/**\n\t\t * Widths of all items.\n\t\t */\n\t\tthis._widths = [];\n\n\t\t/**\n\t\t * Invalidated parts within the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._invalidated = {};\n\n\t\t/**\n\t\t * Ordered list of workers for the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._pipe = [];\n\n\t\t/**\n\t\t * Current state information for the drag operation.\n\t\t * @todo #261\n\t\t * @protected\n\t\t */\n\t\tthis._drag = {\n\t\t\ttime: null,\n\t\t\ttarget: null,\n\t\t\tpointer: null,\n\t\t\tstage: {\n\t\t\t\tstart: null,\n\t\t\t\tcurrent: null\n\t\t\t},\n\t\t\tdirection: null\n\t\t};\n\n\t\t/**\n\t\t * Current state information and their tags.\n\t\t * @type {Object}\n\t\t * @protected\n\t\t */\n\t\tthis._states = {\n\t\t\tcurrent: {},\n\t\t\ttags: {\n\t\t\t\t'initializing': [ 'busy' ],\n\t\t\t\t'animating': [ 'busy' ],\n\t\t\t\t'dragging': [ 'interacting' ]\n\t\t\t}\n\t\t};\n\n\t\t$.each([ 'onResize', 'onThrottledResize' ], $.proxy(function(i, handler) {\n\t\t\tthis._handlers[handler] = $.proxy(this[handler], this);\n\t\t}, this));\n\n\t\t$.each(Owl.Plugins, $.proxy(function(key, plugin) {\n\t\t\tthis._plugins[key.charAt(0).toLowerCase() + key.slice(1)]\n\t\t\t\t= new plugin(this);\n\t\t}, this));\n\n\t\t$.each(Owl.Workers, $.proxy(function(priority, worker) {\n\t\t\tthis._pipe.push({\n\t\t\t\t'filter': worker.filter,\n\t\t\t\t'run': $.proxy(worker.run, this)\n\t\t\t});\n\t\t}, this));\n\n\t\tthis.setup();\n\t\tthis.initialize();\n\t}\n\n\t/**\n\t * Default options for the carousel.\n\t * @public\n\t */\n\tOwl.Defaults = {\n\t\titems: 3,\n\t\tloop: false,\n\t\tcenter: false,\n\t\trewind: false,\n\n\t\tmouseDrag: true,\n\t\ttouchDrag: true,\n\t\tpullDrag: true,\n\t\tfreeDrag: false,\n\n\t\tmargin: 0,\n\t\tstagePadding: 0,\n\n\t\tmerge: false,\n\t\tmergeFit: true,\n\t\tautoWidth: false,\n\n\t\tstartPosition: 0,\n\t\trtl: false,\n\n\t\tsmartSpeed: 250,\n\t\tfluidSpeed: false,\n\t\tdragEndSpeed: false,\n\n\t\tresponsive: {},\n\t\tresponsiveRefreshRate: 200,\n\t\tresponsiveBaseElement: window,\n\n\t\tfallbackEasing: 'swing',\n\n\t\tinfo: false,\n\n\t\tnestedItemSelector: false,\n\t\titemElement: 'div',\n\t\tstageElement: 'div',\n\n\t\trefreshClass: 'owl-refresh',\n\t\tloadedClass: 'owl-loaded',\n\t\tloadingClass: 'owl-loading',\n\t\trtlClass: 'owl-rtl',\n\t\tresponsiveClass: 'owl-responsive',\n\t\tdragClass: 'owl-drag',\n\t\titemClass: 'owl-item',\n\t\tstageClass: 'owl-stage',\n\t\tstageOuterClass: 'owl-stage-outer',\n\t\tgrabClass: 'owl-grab'\n\t};\n\n\t/**\n\t * Enumeration for width.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Width = {\n\t\tDefault: 'default',\n\t\tInner: 'inner',\n\t\tOuter: 'outer'\n\t};\n\n\t/**\n\t * Enumeration for types.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Type = {\n\t\tEvent: 'event',\n\t\tState: 'state'\n\t};\n\n\t/**\n\t * Contains all registered plugins.\n\t * @public\n\t */\n\tOwl.Plugins = {};\n\n\t/**\n\t * List of workers involved in the update process.\n\t */\n\tOwl.Workers = [ {\n\t\tfilter: [ 'width', 'settings' ],\n\t\trun: function() {\n\t\t\tthis._width = this.$element.width();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = this._items && this._items[this.relative(this._current)];\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tthis.$stage.children('.cloned').remove();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar margin = this.settings.margin || '',\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\trtl = this.settings.rtl,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': 'auto',\n\t\t\t\t\t'margin-left': rtl ? margin : '',\n\t\t\t\t\t'margin-right': rtl ? '' : margin\n\t\t\t\t};\n\n\t\t\t!grid && this.$stage.children().css(css);\n\n\t\t\tcache.css = css;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar width = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,\n\t\t\t\tmerge = null,\n\t\t\t\titerator = this._items.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\twidths = [];\n\n\t\t\tcache.items = {\n\t\t\t\tmerge: false,\n\t\t\t\twidth: width\n\t\t\t};\n\n\t\t\twhile (iterator--) {\n\t\t\t\tmerge = this._mergers[iterator];\n\t\t\t\tmerge = this.settings.mergeFit && Math.min(merge, this.settings.items) || merge;\n\n\t\t\t\tcache.items.merge = merge > 1 || cache.items.merge;\n\n\t\t\t\twidths[iterator] = !grid ? this._items[iterator].width() : width * merge;\n\t\t\t}\n\n\t\t\tthis._widths = widths;\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar clones = [],\n\t\t\t\titems = this._items,\n\t\t\t\tsettings = this.settings,\n\t\t\t\tview = Math.max(settings.items * 2, 4),\n\t\t\t\tsize = Math.ceil(items.length / 2) * 2,\n\t\t\t\trepeat = settings.loop && items.length ? settings.rewind ? view : Math.max(view, size) : 0,\n\t\t\t\tappend = '',\n\t\t\t\tprepend = '';\n\n\t\t\trepeat /= 2;\n\n\t\t\twhile (repeat--) {\n\t\t\t\tclones.push(this.normalize(clones.length / 2, true));\n\t\t\t\tappend = append + items[clones[clones.length - 1]][0].outerHTML;\n\t\t\t\tclones.push(this.normalize(items.length - 1 - (clones.length - 1) / 2, true));\n\t\t\t\tprepend = items[clones[clones.length - 1]][0].outerHTML + prepend;\n\t\t\t}\n\n\t\t\tthis._clones = clones;\n\n\t\t\t$(append).addClass('cloned').appendTo(this.$stage);\n\t\t\t$(prepend).addClass('cloned').prependTo(this.$stage);\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tsize = this._clones.length + this._items.length,\n\t\t\t\titerator = -1,\n\t\t\t\tprevious = 0,\n\t\t\t\tcurrent = 0,\n\t\t\t\tcoordinates = [];\n\n\t\t\twhile (++iterator < size) {\n\t\t\t\tprevious = coordinates[iterator - 1] || 0;\n\t\t\t\tcurrent = this._widths[this.relative(iterator)] + this.settings.margin;\n\t\t\t\tcoordinates.push(previous + current * rtl);\n\t\t\t}\n\n\t\t\tthis._coordinates = coordinates;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar padding = this.settings.stagePadding,\n\t\t\t\tcoordinates = this._coordinates,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': Math.ceil(Math.abs(coordinates[coordinates.length - 1])) + padding * 2,\n\t\t\t\t\t'padding-left': padding || '',\n\t\t\t\t\t'padding-right': padding || ''\n\t\t\t\t};\n\n\t\t\tthis.$stage.css(css);\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar iterator = this._coordinates.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\titems = this.$stage.children();\n\n\t\t\tif (grid && cache.items.merge) {\n\t\t\t\twhile (iterator--) {\n\t\t\t\t\tcache.css.width = this._widths[this.relative(iterator)];\n\t\t\t\t\titems.eq(iterator).css(cache.css);\n\t\t\t\t}\n\t\t\t} else if (grid) {\n\t\t\t\tcache.css.width = cache.items.width;\n\t\t\t\titems.css(cache.css);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tfilter: [ 'items' ],\n\t\trun: function() {\n\t\t\tthis._coordinates.length < 1 && this.$stage.removeAttr('style');\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = cache.current ? this.$stage.children().index(cache.current) : 0;\n\t\t\tcache.current = Math.max(this.minimum(), Math.min(this.maximum(), cache.current));\n\t\t\tthis.reset(cache.current);\n\t\t}\n\t}, {\n\t\tfilter: [ 'position' ],\n\t\trun: function() {\n\t\t\tthis.animate(this.coordinates(this._current));\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'position', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tpadding = this.settings.stagePadding * 2,\n\t\t\t\tbegin = this.coordinates(this.current()) + padding,\n\t\t\t\tend = begin + this.width() * rtl,\n\t\t\t\tinner, outer, matches = [], i, n;\n\n\t\t\tfor (i = 0, n = this._coordinates.length; i < n; i++) {\n\t\t\t\tinner = this._coordinates[i - 1] || 0;\n\t\t\t\touter = Math.abs(this._coordinates[i]) + padding * rtl;\n\n\t\t\t\tif ((this.op(inner, '<=', begin) && (this.op(inner, '>', end)))\n\t\t\t\t\t|| (this.op(outer, '<', begin) && this.op(outer, '>', end))) {\n\t\t\t\t\tmatches.push(i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.$stage.children('.active').removeClass('active');\n\t\t\tthis.$stage.children(':eq(' + matches.join('), :eq(') + ')').addClass('active');\n\n\t\t\tif (this.settings.center) {\n\t\t\t\tthis.$stage.children('.center').removeClass('center');\n\t\t\t\tthis.$stage.children().eq(this.current()).addClass('center');\n\t\t\t}\n\t\t}\n\t} ];\n\n\t/**\n\t * Initializes the carousel.\n\t * @protected\n\t */\n\tOwl.prototype.initialize = function() {\n\t\tthis.enter('initializing');\n\t\tthis.trigger('initialize');\n\n\t\tthis.$element.toggleClass(this.settings.rtlClass, this.settings.rtl);\n\n\t\tif (this.settings.autoWidth && !this.is('pre-loading')) {\n\t\t\tvar imgs, nestedSelector, width;\n\t\t\timgs = this.$element.find('img');\n\t\t\tnestedSelector = this.settings.nestedItemSelector ? '.' + this.settings.nestedItemSelector : undefined;\n\t\t\twidth = this.$element.children(nestedSelector).width();\n\n\t\t\tif (imgs.length && width <= 0) {\n\t\t\t\tthis.preloadAutoWidthImages(imgs);\n\t\t\t}\n\t\t}\n\n\t\tthis.$element.addClass(this.options.loadingClass);\n\n\t\t// create stage\n\t\tthis.$stage = $('<' + this.settings.stageElement + ' class=\"' + this.settings.stageClass + '\"/>')\n\t\t\t.wrap('
');\n\n\t\t// append stage\n\t\tthis.$element.append(this.$stage.parent());\n\n\t\t// append content\n\t\tthis.replace(this.$element.children().not(this.$stage.parent()));\n\n\t\t// check visibility\n\t\tif (this.$element.is(':visible')) {\n\t\t\t// update view\n\t\t\tthis.refresh();\n\t\t} else {\n\t\t\t// invalidate width\n\t\t\tthis.invalidate('width');\n\t\t}\n\n\t\tthis.$element\n\t\t\t.removeClass(this.options.loadingClass)\n\t\t\t.addClass(this.options.loadedClass);\n\n\t\t// register event handlers\n\t\tthis.registerEventHandlers();\n\n\t\tthis.leave('initializing');\n\t\tthis.trigger('initialized');\n\t};\n\n\t/**\n\t * Setups the current settings.\n\t * @todo Remove responsive classes. Why should adaptive designs be brought into IE8?\n\t * @todo Support for media queries by using `matchMedia` would be nice.\n\t * @public\n\t */\n\tOwl.prototype.setup = function() {\n\t\tvar viewport = this.viewport(),\n\t\t\toverwrites = this.options.responsive,\n\t\t\tmatch = -1,\n\t\t\tsettings = null;\n\n\t\tif (!overwrites) {\n\t\t\tsettings = $.extend({}, this.options);\n\t\t} else {\n\t\t\t$.each(overwrites, function(breakpoint) {\n\t\t\t\tif (breakpoint <= viewport && breakpoint > match) {\n\t\t\t\t\tmatch = Number(breakpoint);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tsettings = $.extend({}, this.options, overwrites[match]);\n\t\t\tif (typeof settings.stagePadding === 'function') {\n\t\t\t\tsettings.stagePadding = settings.stagePadding();\n\t\t\t}\n\t\t\tdelete settings.responsive;\n\n\t\t\t// responsive class\n\t\t\tif (settings.responsiveClass) {\n\t\t\t\tthis.$element.attr('class',\n\t\t\t\t\tthis.$element.attr('class').replace(new RegExp('(' + this.options.responsiveClass + '-)\\\\S+\\\\s', 'g'), '$1' + match)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tthis.trigger('change', { property: { name: 'settings', value: settings } });\n\t\tthis._breakpoint = match;\n\t\tthis.settings = settings;\n\t\tthis.invalidate('settings');\n\t\tthis.trigger('changed', { property: { name: 'settings', value: this.settings } });\n\t};\n\n\t/**\n\t * Updates option logic if necessery.\n\t * @protected\n\t */\n\tOwl.prototype.optionsLogic = function() {\n\t\tif (this.settings.autoWidth) {\n\t\t\tthis.settings.stagePadding = false;\n\t\t\tthis.settings.merge = false;\n\t\t}\n\t};\n\n\t/**\n\t * Prepares an item before add.\n\t * @todo Rename event parameter `content` to `item`.\n\t * @protected\n\t * @returns {jQuery|HTMLElement} - The item container.\n\t */\n\tOwl.prototype.prepare = function(item) {\n\t\tvar event = this.trigger('prepare', { content: item });\n\n\t\tif (!event.data) {\n\t\t\tevent.data = $('<' + this.settings.itemElement + '/>')\n\t\t\t\t.addClass(this.options.itemClass).append(item)\n\t\t}\n\n\t\tthis.trigger('prepared', { content: event.data });\n\n\t\treturn event.data;\n\t};\n\n\t/**\n\t * Updates the view.\n\t * @public\n\t */\n\tOwl.prototype.update = function() {\n\t\tvar i = 0,\n\t\t\tn = this._pipe.length,\n\t\t\tfilter = $.proxy(function(p) { return this[p] }, this._invalidated),\n\t\t\tcache = {};\n\n\t\twhile (i < n) {\n\t\t\tif (this._invalidated.all || $.grep(this._pipe[i].filter, filter).length > 0) {\n\t\t\t\tthis._pipe[i].run(cache);\n\t\t\t}\n\t\t\ti++;\n\t\t}\n\n\t\tthis._invalidated = {};\n\n\t\t!this.is('valid') && this.enter('valid');\n\t};\n\n\t/**\n\t * Gets the width of the view.\n\t * @public\n\t * @param {Owl.Width} [dimension=Owl.Width.Default] - The dimension to return.\n\t * @returns {Number} - The width of the view in pixel.\n\t */\n\tOwl.prototype.width = function(dimension) {\n\t\tdimension = dimension || Owl.Width.Default;\n\t\tswitch (dimension) {\n\t\t\tcase Owl.Width.Inner:\n\t\t\tcase Owl.Width.Outer:\n\t\t\t\treturn this._width;\n\t\t\tdefault:\n\t\t\t\treturn this._width - this.settings.stagePadding * 2 + this.settings.margin;\n\t\t}\n\t};\n\n\t/**\n\t * Refreshes the carousel primarily for adaptive purposes.\n\t * @public\n\t */\n\tOwl.prototype.refresh = function() {\n\t\tthis.enter('refreshing');\n\t\tthis.trigger('refresh');\n\n\t\tthis.setup();\n\n\t\tthis.optionsLogic();\n\n\t\tthis.$element.addClass(this.options.refreshClass);\n\n\t\tthis.update();\n\n\t\tthis.$element.removeClass(this.options.refreshClass);\n\n\t\tthis.leave('refreshing');\n\t\tthis.trigger('refreshed');\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onThrottledResize = function() {\n\t\twindow.clearTimeout(this.resizeTimer);\n\t\tthis.resizeTimer = window.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate);\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onResize = function() {\n\t\tif (!this._items.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this._width === this.$element.width()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (!this.$element.is(':visible')) {\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.enter('resizing');\n\n\t\tif (this.trigger('resize').isDefaultPrevented()) {\n\t\t\tthis.leave('resizing');\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.invalidate('width');\n\n\t\tthis.refresh();\n\n\t\tthis.leave('resizing');\n\t\tthis.trigger('resized');\n\t};\n\n\t/**\n\t * Registers event handlers.\n\t * @todo Check `msPointerEnabled`\n\t * @todo #261\n\t * @protected\n\t */\n\tOwl.prototype.registerEventHandlers = function() {\n\t\tif ($.support.transition) {\n\t\t\tthis.$stage.on($.support.transition.end + '.owl.core', $.proxy(this.onTransitionEnd, this));\n\t\t}\n\n\t\tif (this.settings.responsive !== false) {\n\t\t\tthis.on(window, 'resize', this._handlers.onThrottledResize);\n\t\t}\n\n\t\tif (this.settings.mouseDrag) {\n\t\t\tthis.$element.addClass(this.options.dragClass);\n\t\t\tthis.$stage.on('mousedown.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('dragstart.owl.core selectstart.owl.core', function() { return false });\n\t\t}\n\n\t\tif (this.settings.touchDrag){\n\t\t\tthis.$stage.on('touchstart.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('touchcancel.owl.core', $.proxy(this.onDragEnd, this));\n\t\t}\n\t};\n\n\t/**\n\t * Handles `touchstart` and `mousedown` events.\n\t * @todo Horizontal swipe threshold as option\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragStart = function(event) {\n\t\tvar stage = null;\n\n\t\tif (event.which === 3) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ($.support.transform) {\n\t\t\tstage = this.$stage.css('transform').replace(/.*\\(|\\)| /g, '').split(',');\n\t\t\tstage = {\n\t\t\t\tx: stage[stage.length === 16 ? 12 : 4],\n\t\t\t\ty: stage[stage.length === 16 ? 13 : 5]\n\t\t\t};\n\t\t} else {\n\t\t\tstage = this.$stage.position();\n\t\t\tstage = {\n\t\t\t\tx: this.settings.rtl ?\n\t\t\t\t\tstage.left + this.$stage.width() - this.width() + this.settings.margin :\n\t\t\t\t\tstage.left,\n\t\t\t\ty: stage.top\n\t\t\t};\n\t\t}\n\n\t\tif (this.is('animating')) {\n\t\t\t$.support.transform ? this.animate(stage.x) : this.$stage.stop()\n\t\t\tthis.invalidate('position');\n\t\t}\n\n\t\tthis.$element.toggleClass(this.options.grabClass, event.type === 'mousedown');\n\n\t\tthis.speed(0);\n\n\t\tthis._drag.time = new Date().getTime();\n\t\tthis._drag.target = $(event.target);\n\t\tthis._drag.stage.start = stage;\n\t\tthis._drag.stage.current = stage;\n\t\tthis._drag.pointer = this.pointer(event);\n\n\t\t$(document).on('mouseup.owl.core touchend.owl.core', $.proxy(this.onDragEnd, this));\n\n\t\t$(document).one('mousemove.owl.core touchmove.owl.core', $.proxy(function(event) {\n\t\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event));\n\n\t\t\t$(document).on('mousemove.owl.core touchmove.owl.core', $.proxy(this.onDragMove, this));\n\n\t\t\tif (Math.abs(delta.x) < Math.abs(delta.y) && this.is('valid')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\n\t\t\tthis.enter('dragging');\n\t\t\tthis.trigger('drag');\n\t\t}, this));\n\t};\n\n\t/**\n\t * Handles the `touchmove` and `mousemove` events.\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragMove = function(event) {\n\t\tvar minimum = null,\n\t\t\tmaximum = null,\n\t\t\tpull = null,\n\t\t\tdelta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this.difference(this._drag.stage.start, delta);\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\n\t\tif (this.settings.loop) {\n\t\t\tminimum = this.coordinates(this.minimum());\n\t\t\tmaximum = this.coordinates(this.maximum() + 1) - minimum;\n\t\t\tstage.x = (((stage.x - minimum) % maximum + maximum) % maximum) + minimum;\n\t\t} else {\n\t\t\tminimum = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum());\n\t\t\tmaximum = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum());\n\t\t\tpull = this.settings.pullDrag ? -1 * delta.x / 5 : 0;\n\t\t\tstage.x = Math.max(Math.min(stage.x, minimum + pull), maximum + pull);\n\t\t}\n\n\t\tthis._drag.stage.current = stage;\n\n\t\tthis.animate(stage.x);\n\t};\n\n\t/**\n\t * Handles the `touchend` and `mouseup` events.\n\t * @todo #261\n\t * @todo Threshold for click event\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragEnd = function(event) {\n\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this._drag.stage.current,\n\t\t\tdirection = delta.x > 0 ^ this.settings.rtl ? 'left' : 'right';\n\n\t\t$(document).off('.owl.core');\n\n\t\tthis.$element.removeClass(this.options.grabClass);\n\n\t\tif (delta.x !== 0 && this.is('dragging') || !this.is('valid')) {\n\t\t\tthis.speed(this.settings.dragEndSpeed || this.settings.smartSpeed);\n\t\t\tthis.current(this.closest(stage.x, delta.x !== 0 ? direction : this._drag.direction));\n\t\t\tthis.invalidate('position');\n\t\t\tthis.update();\n\n\t\t\tthis._drag.direction = direction;\n\n\t\t\tif (Math.abs(delta.x) > 3 || new Date().getTime() - this._drag.time > 300) {\n\t\t\t\tthis._drag.target.one('click.owl.core', function() { return false; });\n\t\t\t}\n\t\t}\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.leave('dragging');\n\t\tthis.trigger('dragged');\n\t};\n\n\t/**\n\t * Gets absolute position of the closest item for a coordinate.\n\t * @todo Setting `freeDrag` makes `closest` not reusable. See #165.\n\t * @protected\n\t * @param {Number} coordinate - The coordinate in pixel.\n\t * @param {String} direction - The direction to check for the closest item. Ether `left` or `right`.\n\t * @return {Number} - The absolute position of the closest item.\n\t */\n\tOwl.prototype.closest = function(coordinate, direction) {\n\t\tvar position = -1,\n\t\t\tpull = 30,\n\t\t\twidth = this.width(),\n\t\t\tcoordinates = this.coordinates();\n\n\t\tif (!this.settings.freeDrag) {\n\t\t\t// check closest item\n\t\t\t$.each(coordinates, $.proxy(function(index, value) {\n\t\t\t\t// on a left pull, check on current index\n\t\t\t\tif (direction === 'left' && coordinate > value - pull && coordinate < value + pull) {\n\t\t\t\t\tposition = index;\n\t\t\t\t// on a right pull, check on previous index\n\t\t\t\t// to do so, subtract width from value and set position = index + 1\n\t\t\t\t} else if (direction === 'right' && coordinate > value - width - pull && coordinate < value - width + pull) {\n\t\t\t\t\tposition = index + 1;\n\t\t\t\t} else if (this.op(coordinate, '<', value)\n\t\t\t\t\t&& this.op(coordinate, '>', coordinates[index + 1] || value - width)) {\n\t\t\t\t\tposition = direction === 'left' ? index + 1 : index;\n\t\t\t\t}\n\t\t\t\treturn position === -1;\n\t\t\t}, this));\n\t\t}\n\n\t\tif (!this.settings.loop) {\n\t\t\t// non loop boundries\n\t\t\tif (this.op(coordinate, '>', coordinates[this.minimum()])) {\n\t\t\t\tposition = coordinate = this.minimum();\n\t\t\t} else if (this.op(coordinate, '<', coordinates[this.maximum()])) {\n\t\t\t\tposition = coordinate = this.maximum();\n\t\t\t}\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Animates the stage.\n\t * @todo #270\n\t * @public\n\t * @param {Number} coordinate - The coordinate in pixels.\n\t */\n\tOwl.prototype.animate = function(coordinate) {\n\t\tvar animate = this.speed() > 0;\n\n\t\tthis.is('animating') && this.onTransitionEnd();\n\n\t\tif (animate) {\n\t\t\tthis.enter('animating');\n\t\t\tthis.trigger('translate');\n\t\t}\n\n\t\tif ($.support.transform3d && $.support.transition) {\n\t\t\tthis.$stage.css({\n\t\t\t\ttransform: 'translate3d(' + coordinate + 'px,0px,0px)',\n\t\t\t\ttransition: (this.speed() / 1000) + 's'\n\t\t\t});\n\t\t} else if (animate) {\n\t\t\tthis.$stage.animate({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t}, this.speed(), this.settings.fallbackEasing, $.proxy(this.onTransitionEnd, this));\n\t\t} else {\n\t\t\tthis.$stage.css({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Checks whether the carousel is in a specific state or not.\n\t * @param {String} state - The state to check.\n\t * @returns {Boolean} - The flag which indicates if the carousel is busy.\n\t */\n\tOwl.prototype.is = function(state) {\n\t\treturn this._states.current[state] && this._states.current[state] > 0;\n\t};\n\n\t/**\n\t * Sets the absolute position of the current item.\n\t * @public\n\t * @param {Number} [position] - The new absolute position or nothing to leave it unchanged.\n\t * @returns {Number} - The absolute position of the current item.\n\t */\n\tOwl.prototype.current = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._current;\n\t\t}\n\n\t\tif (this._items.length === 0) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tposition = this.normalize(position);\n\n\t\tif (this._current !== position) {\n\t\t\tvar event = this.trigger('change', { property: { name: 'position', value: position } });\n\n\t\t\tif (event.data !== undefined) {\n\t\t\t\tposition = this.normalize(event.data);\n\t\t\t}\n\n\t\t\tthis._current = position;\n\n\t\t\tthis.invalidate('position');\n\n\t\t\tthis.trigger('changed', { property: { name: 'position', value: this._current } });\n\t\t}\n\n\t\treturn this._current;\n\t};\n\n\t/**\n\t * Invalidates the given part of the update routine.\n\t * @param {String} [part] - The part to invalidate.\n\t * @returns {Array.} - The invalidated parts.\n\t */\n\tOwl.prototype.invalidate = function(part) {\n\t\tif ($.type(part) === 'string') {\n\t\t\tthis._invalidated[part] = true;\n\t\t\tthis.is('valid') && this.leave('valid');\n\t\t}\n\t\treturn $.map(this._invalidated, function(v, i) { return i });\n\t};\n\n\t/**\n\t * Resets the absolute position of the current item.\n\t * @public\n\t * @param {Number} position - The absolute position of the new item.\n\t */\n\tOwl.prototype.reset = function(position) {\n\t\tposition = this.normalize(position);\n\n\t\tif (position === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._speed = 0;\n\t\tthis._current = position;\n\n\t\tthis.suppress([ 'translate', 'translated' ]);\n\n\t\tthis.animate(this.coordinates(position));\n\n\t\tthis.release([ 'translate', 'translated' ]);\n\t};\n\n\t/**\n\t * Normalizes an absolute or a relative position of an item.\n\t * @public\n\t * @param {Number} position - The absolute or relative position to normalize.\n\t * @param {Boolean} [relative=false] - Whether the given position is relative or not.\n\t * @returns {Number} - The normalized position.\n\t */\n\tOwl.prototype.normalize = function(position, relative) {\n\t\tvar n = this._items.length,\n\t\t\tm = relative ? 0 : this._clones.length;\n\n\t\tif (!this.isNumeric(position) || n < 1) {\n\t\t\tposition = undefined;\n\t\t} else if (position < 0 || position >= n + m) {\n\t\t\tposition = ((position - m / 2) % n + n) % n + m / 2;\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Converts an absolute position of an item into a relative one.\n\t * @public\n\t * @param {Number} position - The absolute position to convert.\n\t * @returns {Number} - The converted position.\n\t */\n\tOwl.prototype.relative = function(position) {\n\t\tposition -= this._clones.length / 2;\n\t\treturn this.normalize(position, true);\n\t};\n\n\t/**\n\t * Gets the maximum position for the current item.\n\t * @public\n\t * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.\n\t * @returns {Number}\n\t */\n\tOwl.prototype.maximum = function(relative) {\n\t\tvar settings = this.settings,\n\t\t\tmaximum = this._coordinates.length,\n\t\t\titerator,\n\t\t\treciprocalItemsWidth,\n\t\t\telementWidth;\n\n\t\tif (settings.loop) {\n\t\t\tmaximum = this._clones.length / 2 + this._items.length - 1;\n\t\t} else if (settings.autoWidth || settings.merge) {\n\t\t\titerator = this._items.length;\n\t\t\treciprocalItemsWidth = this._items[--iterator].width();\n\t\t\telementWidth = this.$element.width();\n\t\t\twhile (iterator--) {\n\t\t\t\treciprocalItemsWidth += this._items[iterator].width() + this.settings.margin;\n\t\t\t\tif (reciprocalItemsWidth > elementWidth) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tmaximum = iterator + 1;\n\t\t} else if (settings.center) {\n\t\t\tmaximum = this._items.length - 1;\n\t\t} else {\n\t\t\tmaximum = this._items.length - settings.items;\n\t\t}\n\n\t\tif (relative) {\n\t\t\tmaximum -= this._clones.length / 2;\n\t\t}\n\n\t\treturn Math.max(maximum, 0);\n\t};\n\n\t/**\n\t * Gets the minimum position for the current item.\n\t * @public\n\t * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.\n\t * @returns {Number}\n\t */\n\tOwl.prototype.minimum = function(relative) {\n\t\treturn relative ? 0 : this._clones.length / 2;\n\t};\n\n\t/**\n\t * Gets an item at the specified relative position.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @return {jQuery|Array.} - The item at the given position or all items if no position was given.\n\t */\n\tOwl.prototype.items = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._items.slice();\n\t\t}\n\n\t\tposition = this.normalize(position, true);\n\t\treturn this._items[position];\n\t};\n\n\t/**\n\t * Gets an item at the specified relative position.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @return {jQuery|Array.} - The item at the given position or all items if no position was given.\n\t */\n\tOwl.prototype.mergers = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._mergers.slice();\n\t\t}\n\n\t\tposition = this.normalize(position, true);\n\t\treturn this._mergers[position];\n\t};\n\n\t/**\n\t * Gets the absolute positions of clones for an item.\n\t * @public\n\t * @param {Number} [position] - The relative position of the item.\n\t * @returns {Array.} - The absolute positions of clones for the item or all if no position was given.\n\t */\n\tOwl.prototype.clones = function(position) {\n\t\tvar odd = this._clones.length / 2,\n\t\t\teven = odd + this._items.length,\n\t\t\tmap = function(index) { return index % 2 === 0 ? even + index / 2 : odd - (index + 1) / 2 };\n\n\t\tif (position === undefined) {\n\t\t\treturn $.map(this._clones, function(v, i) { return map(i) });\n\t\t}\n\n\t\treturn $.map(this._clones, function(v, i) { return v === position ? map(i) : null });\n\t};\n\n\t/**\n\t * Sets the current animation speed.\n\t * @public\n\t * @param {Number} [speed] - The animation speed in milliseconds or nothing to leave it unchanged.\n\t * @returns {Number} - The current animation speed in milliseconds.\n\t */\n\tOwl.prototype.speed = function(speed) {\n\t\tif (speed !== undefined) {\n\t\t\tthis._speed = speed;\n\t\t}\n\n\t\treturn this._speed;\n\t};\n\n\t/**\n\t * Gets the coordinate of an item.\n\t * @todo The name of this method is missleanding.\n\t * @public\n\t * @param {Number} position - The absolute position of the item within `minimum()` and `maximum()`.\n\t * @returns {Number|Array.} - The coordinate of the item in pixel or all coordinates.\n\t */\n\tOwl.prototype.coordinates = function(position) {\n\t\tvar multiplier = 1,\n\t\t\tnewPosition = position - 1,\n\t\t\tcoordinate;\n\n\t\tif (position === undefined) {\n\t\t\treturn $.map(this._coordinates, $.proxy(function(coordinate, index) {\n\t\t\t\treturn this.coordinates(index);\n\t\t\t}, this));\n\t\t}\n\n\t\tif (this.settings.center) {\n\t\t\tif (this.settings.rtl) {\n\t\t\t\tmultiplier = -1;\n\t\t\t\tnewPosition = position + 1;\n\t\t\t}\n\n\t\t\tcoordinate = this._coordinates[position];\n\t\t\tcoordinate += (this.width() - coordinate + (this._coordinates[newPosition] || 0)) / 2 * multiplier;\n\t\t} else {\n\t\t\tcoordinate = this._coordinates[newPosition] || 0;\n\t\t}\n\n\t\tcoordinate = Math.ceil(coordinate);\n\n\t\treturn coordinate;\n\t};\n\n\t/**\n\t * Calculates the speed for a translation.\n\t * @protected\n\t * @param {Number} from - The absolute position of the start item.\n\t * @param {Number} to - The absolute position of the target item.\n\t * @param {Number} [factor=undefined] - The time factor in milliseconds.\n\t * @returns {Number} - The time in milliseconds for the translation.\n\t */\n\tOwl.prototype.duration = function(from, to, factor) {\n\t\tif (factor === 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn Math.min(Math.max(Math.abs(to - from), 1), 6) * Math.abs((factor || this.settings.smartSpeed));\n\t};\n\n\t/**\n\t * Slides to the specified item.\n\t * @public\n\t * @param {Number} position - The position of the item.\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.to = function(position, speed) {\n\t\tvar current = this.current(),\n\t\t\trevert = null,\n\t\t\tdistance = position - this.relative(current),\n\t\t\tdirection = (distance > 0) - (distance < 0),\n\t\t\titems = this._items.length,\n\t\t\tminimum = this.minimum(),\n\t\t\tmaximum = this.maximum();\n\n\t\tif (this.settings.loop) {\n\t\t\tif (!this.settings.rewind && Math.abs(distance) > items / 2) {\n\t\t\t\tdistance += direction * -1 * items;\n\t\t\t}\n\n\t\t\tposition = current + distance;\n\t\t\trevert = ((position - minimum) % items + items) % items + minimum;\n\n\t\t\tif (revert !== position && revert - distance <= maximum && revert - distance > 0) {\n\t\t\t\tcurrent = revert - distance;\n\t\t\t\tposition = revert;\n\t\t\t\tthis.reset(current);\n\t\t\t}\n\t\t} else if (this.settings.rewind) {\n\t\t\tmaximum += 1;\n\t\t\tposition = (position % maximum + maximum) % maximum;\n\t\t} else {\n\t\t\tposition = Math.max(minimum, Math.min(maximum, position));\n\t\t}\n\n\t\tthis.speed(this.duration(current, position, speed));\n\t\tthis.current(position);\n\n\t\tif (this.$element.is(':visible')) {\n\t\t\tthis.update();\n\t\t}\n\t};\n\n\t/**\n\t * Slides to the next item.\n\t * @public\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.next = function(speed) {\n\t\tspeed = speed || false;\n\t\tthis.to(this.relative(this.current()) + 1, speed);\n\t};\n\n\t/**\n\t * Slides to the previous item.\n\t * @public\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t */\n\tOwl.prototype.prev = function(speed) {\n\t\tspeed = speed || false;\n\t\tthis.to(this.relative(this.current()) - 1, speed);\n\t};\n\n\t/**\n\t * Handles the end of an animation.\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onTransitionEnd = function(event) {\n\n\t\t// if css2 animation then event object is undefined\n\t\tif (event !== undefined) {\n\t\t\tevent.stopPropagation();\n\n\t\t\t// Catch only owl-stage transitionEnd event\n\t\t\tif ((event.target || event.srcElement || event.originalTarget) !== this.$stage.get(0)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tthis.leave('animating');\n\t\tthis.trigger('translated');\n\t};\n\n\t/**\n\t * Gets viewport width.\n\t * @protected\n\t * @return {Number} - The width in pixel.\n\t */\n\tOwl.prototype.viewport = function() {\n\t\tvar width;\n\t\tif (this.options.responsiveBaseElement !== window) {\n\t\t\twidth = $(this.options.responsiveBaseElement).width();\n\t\t} else if (window.innerWidth) {\n\t\t\twidth = window.innerWidth;\n\t\t} else if (document.documentElement && document.documentElement.clientWidth) {\n\t\t\twidth = document.documentElement.clientWidth;\n\t\t} else {\n\t\t\tthrow 'Can not detect viewport width.';\n\t\t}\n\t\treturn width;\n\t};\n\n\t/**\n\t * Replaces the current content.\n\t * @public\n\t * @param {HTMLElement|jQuery|String} content - The new content.\n\t */\n\tOwl.prototype.replace = function(content) {\n\t\tthis.$stage.empty();\n\t\tthis._items = [];\n\n\t\tif (content) {\n\t\t\tcontent = (content instanceof jQuery) ? content : $(content);\n\t\t}\n\n\t\tif (this.settings.nestedItemSelector) {\n\t\t\tcontent = content.find('.' + this.settings.nestedItemSelector);\n\t\t}\n\n\t\tcontent.filter(function() {\n\t\t\treturn this.nodeType === 1;\n\t\t}).each($.proxy(function(index, item) {\n\t\t\titem = this.prepare(item);\n\t\t\tthis.$stage.append(item);\n\t\t\tthis._items.push(item);\n\t\t\tthis._mergers.push(item.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t}, this));\n\n\t\tthis.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0);\n\n\t\tthis.invalidate('items');\n\t};\n\n\t/**\n\t * Adds an item.\n\t * @todo Use `item` instead of `content` for the event arguments.\n\t * @public\n\t * @param {HTMLElement|jQuery|String} content - The item content to add.\n\t * @param {Number} [position] - The relative position at which to insert the item otherwise the item will be added to the end.\n\t */\n\tOwl.prototype.add = function(content, position) {\n\t\tvar current = this.relative(this._current);\n\n\t\tposition = position === undefined ? this._items.length : this.normalize(position, true);\n\t\tcontent = content instanceof jQuery ? content : $(content);\n\n\t\tthis.trigger('add', { content: content, position: position });\n\n\t\tcontent = this.prepare(content);\n\n\t\tif (this._items.length === 0 || position === this._items.length) {\n\t\t\tthis._items.length === 0 && this.$stage.append(content);\n\t\t\tthis._items.length !== 0 && this._items[position - 1].after(content);\n\t\t\tthis._items.push(content);\n\t\t\tthis._mergers.push(content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t} else {\n\t\t\tthis._items[position].before(content);\n\t\t\tthis._items.splice(position, 0, content);\n\t\t\tthis._mergers.splice(position, 0, content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);\n\t\t}\n\n\t\tthis._items[current] && this.reset(this._items[current].index());\n\n\t\tthis.invalidate('items');\n\n\t\tthis.trigger('added', { content: content, position: position });\n\t};\n\n\t/**\n\t * Removes an item by its position.\n\t * @todo Use `item` instead of `content` for the event arguments.\n\t * @public\n\t * @param {Number} position - The relative position of the item to remove.\n\t */\n\tOwl.prototype.remove = function(position) {\n\t\tposition = this.normalize(position, true);\n\n\t\tif (position === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.trigger('remove', { content: this._items[position], position: position });\n\n\t\tthis._items[position].remove();\n\t\tthis._items.splice(position, 1);\n\t\tthis._mergers.splice(position, 1);\n\n\t\tthis.invalidate('items');\n\n\t\tthis.trigger('removed', { content: null, position: position });\n\t};\n\n\t/**\n\t * Preloads images with auto width.\n\t * @todo Replace by a more generic approach\n\t * @protected\n\t */\n\tOwl.prototype.preloadAutoWidthImages = function(images) {\n\t\timages.each($.proxy(function(i, element) {\n\t\t\tthis.enter('pre-loading');\n\t\t\telement = $(element);\n\t\t\t$(new Image()).one('load', $.proxy(function(e) {\n\t\t\t\telement.attr('src', e.target.src);\n\t\t\t\telement.css('opacity', 1);\n\t\t\t\tthis.leave('pre-loading');\n\t\t\t\t!this.is('pre-loading') && !this.is('initializing') && this.refresh();\n\t\t\t}, this)).attr('src', element.attr('src') || element.attr('data-src') || element.attr('data-src-retina'));\n\t\t}, this));\n\t};\n\n\t/**\n\t * Destroys the carousel.\n\t * @public\n\t */\n\tOwl.prototype.destroy = function() {\n\n\t\tthis.$element.off('.owl.core');\n\t\tthis.$stage.off('.owl.core');\n\t\t$(document).off('.owl.core');\n\n\t\tif (this.settings.responsive !== false) {\n\t\t\twindow.clearTimeout(this.resizeTimer);\n\t\t\tthis.off(window, 'resize', this._handlers.onThrottledResize);\n\t\t}\n\n\t\tfor (var i in this._plugins) {\n\t\t\tthis._plugins[i].destroy();\n\t\t}\n\n\t\tthis.$stage.children('.cloned').remove();\n\n\t\tthis.$stage.unwrap();\n\t\tthis.$stage.children().contents().unwrap();\n\t\tthis.$stage.children().unwrap();\n\n\t\tthis.$element\n\t\t\t.removeClass(this.options.refreshClass)\n\t\t\t.removeClass(this.options.loadingClass)\n\t\t\t.removeClass(this.options.loadedClass)\n\t\t\t.removeClass(this.options.rtlClass)\n\t\t\t.removeClass(this.options.dragClass)\n\t\t\t.removeClass(this.options.grabClass)\n\t\t\t.attr('class', this.$element.attr('class').replace(new RegExp(this.options.responsiveClass + '-\\\\S+\\\\s', 'g'), ''))\n\t\t\t.removeData('owl.carousel');\n\t};\n\n\t/**\n\t * Operators to calculate right-to-left and left-to-right.\n\t * @protected\n\t * @param {Number} [a] - The left side operand.\n\t * @param {String} [o] - The operator.\n\t * @param {Number} [b] - The right side operand.\n\t */\n\tOwl.prototype.op = function(a, o, b) {\n\t\tvar rtl = this.settings.rtl;\n\t\tswitch (o) {\n\t\t\tcase '<':\n\t\t\t\treturn rtl ? a > b : a < b;\n\t\t\tcase '>':\n\t\t\t\treturn rtl ? a < b : a > b;\n\t\t\tcase '>=':\n\t\t\t\treturn rtl ? a <= b : a >= b;\n\t\t\tcase '<=':\n\t\t\t\treturn rtl ? a >= b : a <= b;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\t/**\n\t * Attaches to an internal event.\n\t * @protected\n\t * @param {HTMLElement} element - The event source.\n\t * @param {String} event - The event name.\n\t * @param {Function} listener - The event handler to attach.\n\t * @param {Boolean} capture - Wether the event should be handled at the capturing phase or not.\n\t */\n\tOwl.prototype.on = function(element, event, listener, capture) {\n\t\tif (element.addEventListener) {\n\t\t\telement.addEventListener(event, listener, capture);\n\t\t} else if (element.attachEvent) {\n\t\t\telement.attachEvent('on' + event, listener);\n\t\t}\n\t};\n\n\t/**\n\t * Detaches from an internal event.\n\t * @protected\n\t * @param {HTMLElement} element - The event source.\n\t * @param {String} event - The event name.\n\t * @param {Function} listener - The attached event handler to detach.\n\t * @param {Boolean} capture - Wether the attached event handler was registered as a capturing listener or not.\n\t */\n\tOwl.prototype.off = function(element, event, listener, capture) {\n\t\tif (element.removeEventListener) {\n\t\t\telement.removeEventListener(event, listener, capture);\n\t\t} else if (element.detachEvent) {\n\t\t\telement.detachEvent('on' + event, listener);\n\t\t}\n\t};\n\n\t/**\n\t * Triggers a public event.\n\t * @todo Remove `status`, `relatedTarget` should be used instead.\n\t * @protected\n\t * @param {String} name - The event name.\n\t * @param {*} [data=null] - The event data.\n\t * @param {String} [namespace=carousel] - The event namespace.\n\t * @param {String} [state] - The state which is associated with the event.\n\t * @param {Boolean} [enter=false] - Indicates if the call enters the specified state or not.\n\t * @returns {Event} - The event arguments.\n\t */\n\tOwl.prototype.trigger = function(name, data, namespace, state, enter) {\n\t\tvar status = {\n\t\t\titem: { count: this._items.length, index: this.current() }\n\t\t}, handler = $.camelCase(\n\t\t\t$.grep([ 'on', name, namespace ], function(v) { return v })\n\t\t\t\t.join('-').toLowerCase()\n\t\t), event = $.Event(\n\t\t\t[ name, 'owl', namespace || 'carousel' ].join('.').toLowerCase(),\n\t\t\t$.extend({ relatedTarget: this }, status, data)\n\t\t);\n\n\t\tif (!this._supress[name]) {\n\t\t\t$.each(this._plugins, function(name, plugin) {\n\t\t\t\tif (plugin.onTrigger) {\n\t\t\t\t\tplugin.onTrigger(event);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.register({ type: Owl.Type.Event, name: name });\n\t\t\tthis.$element.trigger(event);\n\n\t\t\tif (this.settings && typeof this.settings[handler] === 'function') {\n\t\t\t\tthis.settings[handler].call(this, event);\n\t\t\t}\n\t\t}\n\n\t\treturn event;\n\t};\n\n\t/**\n\t * Enters a state.\n\t * @param name - The state name.\n\t */\n\tOwl.prototype.enter = function(name) {\n\t\t$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {\n\t\t\tif (this._states.current[name] === undefined) {\n\t\t\t\tthis._states.current[name] = 0;\n\t\t\t}\n\n\t\t\tthis._states.current[name]++;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Leaves a state.\n\t * @param name - The state name.\n\t */\n\tOwl.prototype.leave = function(name) {\n\t\t$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {\n\t\t\tthis._states.current[name]--;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Registers an event or state.\n\t * @public\n\t * @param {Object} object - The event or state to register.\n\t */\n\tOwl.prototype.register = function(object) {\n\t\tif (object.type === Owl.Type.Event) {\n\t\t\tif (!$.event.special[object.name]) {\n\t\t\t\t$.event.special[object.name] = {};\n\t\t\t}\n\n\t\t\tif (!$.event.special[object.name].owl) {\n\t\t\t\tvar _default = $.event.special[object.name]._default;\n\t\t\t\t$.event.special[object.name]._default = function(e) {\n\t\t\t\t\tif (_default && _default.apply && (!e.namespace || e.namespace.indexOf('owl') === -1)) {\n\t\t\t\t\t\treturn _default.apply(this, arguments);\n\t\t\t\t\t}\n\t\t\t\t\treturn e.namespace && e.namespace.indexOf('owl') > -1;\n\t\t\t\t};\n\t\t\t\t$.event.special[object.name].owl = true;\n\t\t\t}\n\t\t} else if (object.type === Owl.Type.State) {\n\t\t\tif (!this._states.tags[object.name]) {\n\t\t\t\tthis._states.tags[object.name] = object.tags;\n\t\t\t} else {\n\t\t\t\tthis._states.tags[object.name] = this._states.tags[object.name].concat(object.tags);\n\t\t\t}\n\n\t\t\tthis._states.tags[object.name] = $.grep(this._states.tags[object.name], $.proxy(function(tag, i) {\n\t\t\t\treturn $.inArray(tag, this._states.tags[object.name]) === i;\n\t\t\t}, this));\n\t\t}\n\t};\n\n\t/**\n\t * Suppresses events.\n\t * @protected\n\t * @param {Array.} events - The events to suppress.\n\t */\n\tOwl.prototype.suppress = function(events) {\n\t\t$.each(events, $.proxy(function(index, event) {\n\t\t\tthis._supress[event] = true;\n\t\t}, this));\n\t};\n\n\t/**\n\t * Releases suppressed events.\n\t * @protected\n\t * @param {Array.} events - The events to release.\n\t */\n\tOwl.prototype.release = function(events) {\n\t\t$.each(events, $.proxy(function(index, event) {\n\t\t\tdelete this._supress[event];\n\t\t}, this));\n\t};\n\n\t/**\n\t * Gets unified pointer coordinates from event.\n\t * @todo #261\n\t * @protected\n\t * @param {Event} - The `mousedown` or `touchstart` event.\n\t * @returns {Object} - Contains `x` and `y` coordinates of current pointer position.\n\t */\n\tOwl.prototype.pointer = function(event) {\n\t\tvar result = { x: null, y: null };\n\n\t\tevent = event.originalEvent || event || window.event;\n\n\t\tevent = event.touches && event.touches.length ?\n\t\t\tevent.touches[0] : event.changedTouches && event.changedTouches.length ?\n\t\t\t\tevent.changedTouches[0] : event;\n\n\t\tif (event.pageX) {\n\t\t\tresult.x = event.pageX;\n\t\t\tresult.y = event.pageY;\n\t\t} else {\n\t\t\tresult.x = event.clientX;\n\t\t\tresult.y = event.clientY;\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t/**\n\t * Determines if the input is a Number or something that can be coerced to a Number\n\t * @protected\n\t * @param {Number|String|Object|Array|Boolean|RegExp|Function|Symbol} - The input to be tested\n\t * @returns {Boolean} - An indication if the input is a Number or can be coerced to a Number\n\t */\n\tOwl.prototype.isNumeric = function(number) {\n\t\treturn !isNaN(parseFloat(number));\n\t};\n\n\t/**\n\t * Gets the difference of two vectors.\n\t * @todo #261\n\t * @protected\n\t * @param {Object} - The first vector.\n\t * @param {Object} - The second vector.\n\t * @returns {Object} - The difference.\n\t */\n\tOwl.prototype.difference = function(first, second) {\n\t\treturn {\n\t\t\tx: first.x - second.x,\n\t\t\ty: first.y - second.y\n\t\t};\n\t};\n\n\t/**\n\t * The jQuery Plugin for the Owl Carousel\n\t * @todo Navigation plugin `next` and `prev`\n\t * @public\n\t */\n\t$.fn.owlCarousel = function(option) {\n\t\tvar args = Array.prototype.slice.call(arguments, 1);\n\n\t\treturn this.each(function() {\n\t\t\tvar $this = $(this),\n\t\t\t\tdata = $this.data('owl.carousel');\n\n\t\t\tif (!data) {\n\t\t\t\tdata = new Owl(this, typeof option == 'object' && option);\n\t\t\t\t$this.data('owl.carousel', data);\n\n\t\t\t\t$.each([\n\t\t\t\t\t'next', 'prev', 'to', 'destroy', 'refresh', 'replace', 'add', 'remove'\n\t\t\t\t], function(i, event) {\n\t\t\t\t\tdata.register({ type: Owl.Type.Event, name: event });\n\t\t\t\t\tdata.$element.on(event + '.owl.carousel.core', $.proxy(function(e) {\n\t\t\t\t\t\tif (e.namespace && e.relatedTarget !== this) {\n\t\t\t\t\t\t\tthis.suppress([ event ]);\n\t\t\t\t\t\t\tdata[event].apply(this, [].slice.call(arguments, 1));\n\t\t\t\t\t\t\tthis.release([ event ]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, data));\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (typeof option == 'string' && option.charAt(0) !== '_') {\n\t\t\t\tdata[option].apply(data, args);\n\t\t\t}\n\t\t});\n\t};\n\n\t/**\n\t * The constructor for the jQuery Plugin\n\t * @public\n\t */\n\t$.fn.owlCarousel.Constructor = Owl;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * AutoRefresh Plugin\n * @version 2.1.0\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the auto refresh plugin.\n\t * @class The Auto Refresh Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar AutoRefresh = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Refresh interval.\n\t\t * @protected\n\t\t * @type {number}\n\t\t */\n\t\tthis._interval = null;\n\n\t\t/**\n\t\t * Whether the element is currently visible or not.\n\t\t * @protected\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._visible = null;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoRefresh) {\n\t\t\t\t\tthis.watch();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, AutoRefresh.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoRefresh.Defaults = {\n\t\tautoRefresh: true,\n\t\tautoRefreshInterval: 500\n\t};\n\n\t/**\n\t * Watches the element.\n\t */\n\tAutoRefresh.prototype.watch = function() {\n\t\tif (this._interval) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._visible = this._core.$element.is(':visible');\n\t\tthis._interval = window.setInterval($.proxy(this.refresh, this), this._core.settings.autoRefreshInterval);\n\t};\n\n\t/**\n\t * Refreshes the element.\n\t */\n\tAutoRefresh.prototype.refresh = function() {\n\t\tif (this._core.$element.is(':visible') === this._visible) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._visible = !this._visible;\n\n\t\tthis._core.$element.toggleClass('owl-hidden', !this._visible);\n\n\t\tthis._visible && (this._core.invalidate('width') && this._core.refresh());\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tAutoRefresh.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\twindow.clearInterval(this._interval);\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.AutoRefresh = AutoRefresh;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Lazy Plugin\n * @version 2.1.0\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the lazy plugin.\n\t * @class The Lazy Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar Lazy = function(carousel) {\n\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Already loaded items.\n\t\t * @protected\n\t\t * @type {Array.}\n\t\t */\n\t\tthis._loaded = [];\n\n\t\t/**\n\t\t * Event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel change.owl.carousel resized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (!e.namespace) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!this._core.settings || !this._core.settings.lazyLoad) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ((e.property && e.property.name == 'position') || e.type == 'initialized') {\n\t\t\t\t\tvar settings = this._core.settings,\n\t\t\t\t\t\tn = (settings.center && Math.ceil(settings.items / 2) || settings.items),\n\t\t\t\t\t\ti = ((settings.center && n * -1) || 0),\n\t\t\t\t\t\tposition = (e.property && e.property.value !== undefined ? e.property.value : this._core.current()) + i,\n\t\t\t\t\t\tclones = this._core.clones().length,\n\t\t\t\t\t\tload = $.proxy(function(i, v) { this.load(v) }, this);\n\n\t\t\t\t\twhile (i++ < n) {\n\t\t\t\t\t\tthis.load(clones / 2 + this._core.relative(position));\n\t\t\t\t\t\tclones && $.each(this._core.clones(this._core.relative(position)), load);\n\t\t\t\t\t\tposition++;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set the default options\n\t\tthis._core.options = $.extend({}, Lazy.Defaults, this._core.options);\n\n\t\t// register event handler\n\t\tthis._core.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tLazy.Defaults = {\n\t\tlazyLoad: false\n\t};\n\n\t/**\n\t * Loads all resources of an item at the specified position.\n\t * @param {Number} position - The absolute position of the item.\n\t * @protected\n\t */\n\tLazy.prototype.load = function(position) {\n\t\tvar $item = this._core.$stage.children().eq(position),\n\t\t\t$elements = $item && $item.find('.owl-lazy');\n\n\t\tif (!$elements || $.inArray($item.get(0), this._loaded) > -1) {\n\t\t\treturn;\n\t\t}\n\n\t\t$elements.each($.proxy(function(index, element) {\n\t\t\tvar $element = $(element), image,\n\t\t\t\turl = (window.devicePixelRatio > 1 && $element.attr('data-src-retina')) || $element.attr('data-src');\n\n\t\t\tthis._core.trigger('load', { element: $element, url: url }, 'lazy');\n\n\t\t\tif ($element.is('img')) {\n\t\t\t\t$element.one('load.owl.lazy', $.proxy(function() {\n\t\t\t\t\t$element.css('opacity', 1);\n\t\t\t\t\tthis._core.trigger('loaded', { element: $element, url: url }, 'lazy');\n\t\t\t\t}, this)).attr('src', url);\n\t\t\t} else {\n\t\t\t\timage = new Image();\n\t\t\t\timage.onload = $.proxy(function() {\n\t\t\t\t\t$element.css({\n\t\t\t\t\t\t'background-image': 'url(' + url + ')',\n\t\t\t\t\t\t'opacity': '1'\n\t\t\t\t\t});\n\t\t\t\t\tthis._core.trigger('loaded', { element: $element, url: url }, 'lazy');\n\t\t\t\t}, this);\n\t\t\t\timage.src = url;\n\t\t\t}\n\t\t}, this));\n\n\t\tthis._loaded.push($item.get(0));\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @public\n\t */\n\tLazy.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this.handlers) {\n\t\t\tthis._core.$element.off(handler, this.handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Lazy = Lazy;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * AutoHeight Plugin\n * @version 2.1.0\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the auto height plugin.\n\t * @class The Auto Height Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar AutoHeight = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight) {\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight && e.property.name == 'position'){\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'loaded.owl.lazy': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoHeight\n\t\t\t\t\t&& e.element.closest('.' + this._core.settings.itemClass).index() === this._core.current()) {\n\t\t\t\t\tthis.update();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, AutoHeight.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoHeight.Defaults = {\n\t\tautoHeight: false,\n\t\tautoHeightClass: 'owl-height'\n\t};\n\n\t/**\n\t * Updates the view.\n\t */\n\tAutoHeight.prototype.update = function() {\n\t\tvar start = this._core._current,\n\t\t\tend = start + this._core.settings.items,\n\t\t\tvisible = this._core.$stage.children().toArray().slice(start, end),\n\t\t\theights = [],\n\t\t\tmaxheight = 0;\n\n\t\t$.each(visible, function(index, item) {\n\t\t\theights.push($(item).height());\n\t\t});\n\n\t\tmaxheight = Math.max.apply(null, heights);\n\n\t\tthis._core.$stage.parent()\n\t\t\t.height(maxheight)\n\t\t\t.addClass(this._core.settings.autoHeightClass);\n\t};\n\n\tAutoHeight.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.AutoHeight = AutoHeight;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Video Plugin\n * @version 2.1.0\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the video plugin.\n\t * @class The Video Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar Video = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Cache all video URLs.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._videos = {};\n\n\t\t/**\n\t\t * Current playing item.\n\t\t * @protected\n\t\t * @type {jQuery}\n\t\t */\n\t\tthis._playing = null;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @todo The cloned content removale is too late\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis._core.register({ type: 'state', name: 'playing', tags: [ 'interacting' ] });\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'resize.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.video && this.isInFullScreen()) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.is('resizing')) {\n\t\t\t\t\tthis._core.$stage.find('.cloned .owl-video-frame').remove();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name === 'position' && this._playing) {\n\t\t\t\t\tthis.stop();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'prepared.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (!e.namespace) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar $element = $(e.content).find('.owl-video');\n\n\t\t\t\tif ($element.length) {\n\t\t\t\t\t$element.css('display', 'none');\n\t\t\t\t\tthis.fetch($element, $(e.content));\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Video.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\n\t\tthis._core.$element.on('click.owl.video', '.owl-video-play-icon', $.proxy(function(e) {\n\t\t\tthis.play(e);\n\t\t}, this));\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tVideo.Defaults = {\n\t\tvideo: false,\n\t\tvideoHeight: false,\n\t\tvideoWidth: false\n\t};\n\n\t/**\n\t * Gets the video ID and the type (YouTube/Vimeo/vzaar only).\n\t * @protected\n\t * @param {jQuery} target - The target containing the video data.\n\t * @param {jQuery} item - The item containing the video.\n\t */\n\tVideo.prototype.fetch = function(target, item) {\n\t\t\tvar type = (function() {\n\t\t\t\t\tif (target.attr('data-vimeo-id')) {\n\t\t\t\t\t\treturn 'vimeo';\n\t\t\t\t\t} else if (target.attr('data-vzaar-id')) {\n\t\t\t\t\t\treturn 'vzaar'\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn 'youtube';\n\t\t\t\t\t}\n\t\t\t\t})(),\n\t\t\t\tid = target.attr('data-vimeo-id') || target.attr('data-youtube-id') || target.attr('data-vzaar-id'),\n\t\t\t\twidth = target.attr('data-width') || this._core.settings.videoWidth,\n\t\t\t\theight = target.attr('data-height') || this._core.settings.videoHeight,\n\t\t\t\turl = target.attr('href');\n\n\t\tif (url) {\n\n\t\t\t/*\n\t\t\t\t\tParses the id's out of the following urls (and probably more):\n\t\t\t\t\thttps://www.youtube.com/watch?v=:id\n\t\t\t\t\thttps://youtu.be/:id\n\t\t\t\t\thttps://vimeo.com/:id\n\t\t\t\t\thttps://vimeo.com/channels/:channel/:id\n\t\t\t\t\thttps://vimeo.com/groups/:group/videos/:id\n\t\t\t\t\thttps://app.vzaar.com/videos/:id\n\n\t\t\t\t\tVisual example: https://regexper.com/#(http%3A%7Chttps%3A%7C)%5C%2F%5C%2F(player.%7Cwww.%7Capp.)%3F(vimeo%5C.com%7Cyoutu(be%5C.com%7C%5C.be%7Cbe%5C.googleapis%5C.com)%7Cvzaar%5C.com)%5C%2F(video%5C%2F%7Cvideos%5C%2F%7Cembed%5C%2F%7Cchannels%5C%2F.%2B%5C%2F%7Cgroups%5C%2F.%2B%5C%2F%7Cwatch%5C%3Fv%3D%7Cv%5C%2F)%3F(%5BA-Za-z0-9._%25-%5D*)(%5C%26%5CS%2B)%3F\n\t\t\t*/\n\n\t\t\tid = url.match(/(http:|https:|)\\/\\/(player.|www.|app.)?(vimeo\\.com|youtu(be\\.com|\\.be|be\\.googleapis\\.com)|vzaar\\.com)\\/(video\\/|videos\\/|embed\\/|channels\\/.+\\/|groups\\/.+\\/|watch\\?v=|v\\/)?([A-Za-z0-9._%-]*)(\\&\\S+)?/);\n\n\t\t\tif (id[3].indexOf('youtu') > -1) {\n\t\t\t\ttype = 'youtube';\n\t\t\t} else if (id[3].indexOf('vimeo') > -1) {\n\t\t\t\ttype = 'vimeo';\n\t\t\t} else if (id[3].indexOf('vzaar') > -1) {\n\t\t\t\ttype = 'vzaar';\n\t\t\t} else {\n\t\t\t\tthrow new Error('Video URL not supported.');\n\t\t\t}\n\t\t\tid = id[6];\n\t\t} else {\n\t\t\tthrow new Error('Missing video URL.');\n\t\t}\n\n\t\tthis._videos[url] = {\n\t\t\ttype: type,\n\t\t\tid: id,\n\t\t\twidth: width,\n\t\t\theight: height\n\t\t};\n\n\t\titem.attr('data-video', url);\n\n\t\tthis.thumbnail(target, this._videos[url]);\n\t};\n\n\t/**\n\t * Creates video thumbnail.\n\t * @protected\n\t * @param {jQuery} target - The target containing the video data.\n\t * @param {Object} info - The video info object.\n\t * @see `fetch`\n\t */\n\tVideo.prototype.thumbnail = function(target, video) {\n\t\tvar tnLink,\n\t\t\ticon,\n\t\t\tpath,\n\t\t\tdimensions = video.width && video.height ? 'style=\"width:' + video.width + 'px;height:' + video.height + 'px;\"' : '',\n\t\t\tcustomTn = target.find('img'),\n\t\t\tsrcType = 'src',\n\t\t\tlazyClass = '',\n\t\t\tsettings = this._core.settings,\n\t\t\tcreate = function(path) {\n\t\t\t\ticon = '
';\n\n\t\t\t\tif (settings.lazyLoad) {\n\t\t\t\t\ttnLink = '
';\n\t\t\t\t} else {\n\t\t\t\t\ttnLink = '
';\n\t\t\t\t}\n\t\t\t\ttarget.after(tnLink);\n\t\t\t\ttarget.after(icon);\n\t\t\t};\n\n\t\t// wrap video content into owl-video-wrapper div\n\t\ttarget.wrap('
');\n\n\t\tif (this._core.settings.lazyLoad) {\n\t\t\tsrcType = 'data-src';\n\t\t\tlazyClass = 'owl-lazy';\n\t\t}\n\n\t\t// custom thumbnail\n\t\tif (customTn.length) {\n\t\t\tcreate(customTn.attr(srcType));\n\t\t\tcustomTn.remove();\n\t\t\treturn false;\n\t\t}\n\n\t\tif (video.type === 'youtube') {\n\t\t\tpath = \"//img.youtube.com/vi/\" + video.id + \"/hqdefault.jpg\";\n\t\t\tcreate(path);\n\t\t} else if (video.type === 'vimeo') {\n\t\t\t$.ajax({\n\t\t\t\ttype: 'GET',\n\t\t\t\turl: '//vimeo.com/api/v2/video/' + video.id + '.json',\n\t\t\t\tjsonp: 'callback',\n\t\t\t\tdataType: 'jsonp',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tpath = data[0].thumbnail_large;\n\t\t\t\t\tcreate(path);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (video.type === 'vzaar') {\n\t\t\t$.ajax({\n\t\t\t\ttype: 'GET',\n\t\t\t\turl: '//vzaar.com/api/videos/' + video.id + '.json',\n\t\t\t\tjsonp: 'callback',\n\t\t\t\tdataType: 'jsonp',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tpath = data.framegrab_url;\n\t\t\t\t\tcreate(path);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Stops the current video.\n\t * @public\n\t */\n\tVideo.prototype.stop = function() {\n\t\tthis._core.trigger('stop', null, 'video');\n\t\tthis._playing.find('.owl-video-frame').remove();\n\t\tthis._playing.removeClass('owl-video-playing');\n\t\tthis._playing = null;\n\t\tthis._core.leave('playing');\n\t\tthis._core.trigger('stopped', null, 'video');\n\t};\n\n\t/**\n\t * Starts the current video.\n\t * @public\n\t * @param {Event} event - The event arguments.\n\t */\n\tVideo.prototype.play = function(event) {\n\t\tvar target = $(event.target),\n\t\t\titem = target.closest('.' + this._core.settings.itemClass),\n\t\t\tvideo = this._videos[item.attr('data-video')],\n\t\t\twidth = video.width || '100%',\n\t\t\theight = video.height || this._core.$stage.height(),\n\t\t\thtml;\n\n\t\tif (this._playing) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._core.enter('playing');\n\t\tthis._core.trigger('play', null, 'video');\n\n\t\titem = this._core.items(this._core.relative(item.index()));\n\n\t\tthis._core.reset(item.index());\n\n\t\tif (video.type === 'youtube') {\n\t\t\thtml = '';\n\t\t} else if (video.type === 'vimeo') {\n\t\t\thtml = '';\n\t\t} else if (video.type === 'vzaar') {\n\t\t\thtml = '';\n\t\t}\n\n\t\t$('
' + html + '
').insertAfter(item.find('.owl-video'));\n\n\t\tthis._playing = item.addClass('owl-video-playing');\n\t};\n\n\t/**\n\t * Checks whether an video is currently in full screen mode or not.\n\t * @todo Bad style because looks like a readonly method but changes members.\n\t * @protected\n\t * @returns {Boolean}\n\t */\n\tVideo.prototype.isInFullScreen = function() {\n\t\tvar element = document.fullscreenElement || document.mozFullScreenElement ||\n\t\t\t\tdocument.webkitFullscreenElement;\n\n\t\treturn element && $(element).parent().hasClass('owl-video-frame');\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tVideo.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tthis._core.$element.off('click.owl.video');\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Video = Video;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Animate Plugin\n * @version 2.1.0\n * @author Bartosz Wojciechowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the animate plugin.\n\t * @class The Navigation Plugin\n\t * @param {Owl} scope - The Owl Carousel\n\t */\n\tvar Animate = function(scope) {\n\t\tthis.core = scope;\n\t\tthis.core.options = $.extend({}, Animate.Defaults, this.core.options);\n\t\tthis.swapping = true;\n\t\tthis.previous = undefined;\n\t\tthis.next = undefined;\n\n\t\tthis.handlers = {\n\t\t\t'change.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name == 'position') {\n\t\t\t\t\tthis.previous = this.core.current();\n\t\t\t\t\tthis.next = e.property.value;\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'drag.owl.carousel dragged.owl.carousel translated.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.swapping = e.type == 'translated';\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'translate.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn)) {\n\t\t\t\t\tthis.swap();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\tthis.core.$element.on(this.handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAnimate.Defaults = {\n\t\tanimateOut: false,\n\t\tanimateIn: false\n\t};\n\n\t/**\n\t * Toggles the animation classes whenever an translations starts.\n\t * @protected\n\t * @returns {Boolean|undefined}\n\t */\n\tAnimate.prototype.swap = function() {\n\n\t\tif (this.core.settings.items !== 1) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!$.support.animation || !$.support.transition) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.core.speed(0);\n\n\t\tvar left,\n\t\t\tclear = $.proxy(this.clear, this),\n\t\t\tprevious = this.core.$stage.children().eq(this.previous),\n\t\t\tnext = this.core.$stage.children().eq(this.next),\n\t\t\tincoming = this.core.settings.animateIn,\n\t\t\toutgoing = this.core.settings.animateOut;\n\n\t\tif (this.core.current() === this.previous) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (outgoing) {\n\t\t\tleft = this.core.coordinates(this.previous) - this.core.coordinates(this.next);\n\t\t\tprevious.one($.support.animation.end, clear)\n\t\t\t\t.css( { 'left': left + 'px' } )\n\t\t\t\t.addClass('animated owl-animated-out')\n\t\t\t\t.addClass(outgoing);\n\t\t}\n\n\t\tif (incoming) {\n\t\t\tnext.one($.support.animation.end, clear)\n\t\t\t\t.addClass('animated owl-animated-in')\n\t\t\t\t.addClass(incoming);\n\t\t}\n\t};\n\n\tAnimate.prototype.clear = function(e) {\n\t\t$(e.target).css( { 'left': '' } )\n\t\t\t.removeClass('animated owl-animated-out owl-animated-in')\n\t\t\t.removeClass(this.core.settings.animateIn)\n\t\t\t.removeClass(this.core.settings.animateOut);\n\t\tthis.core.onTransitionEnd();\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @public\n\t */\n\tAnimate.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tfor (handler in this.handlers) {\n\t\t\tthis.core.$element.off(handler, this.handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Animate = Animate;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Autoplay Plugin\n * @version 2.1.0\n * @author Bartosz Wojciechowski\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates the autoplay plugin.\n\t * @class The Autoplay Plugin\n\t * @param {Owl} scope - The Owl Carousel\n\t */\n\tvar Autoplay = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * The autoplay timeout.\n\t\t * @type {Timeout}\n\t\t */\n\t\tthis._timeout = null;\n\n\t\t/**\n\t\t * Indicates whenever the autoplay is paused.\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._paused = false;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name === 'settings') {\n\t\t\t\t\tif (this._core.settings.autoplay) {\n\t\t\t\t\t\tthis.play();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.stop();\n\t\t\t\t\t}\n\t\t\t\t} else if (e.namespace && e.property.name === 'position') {\n\t\t\t\t\t//console.log('play?', e);\n\t\t\t\t\tif (this._core.settings.autoplay) {\n\t\t\t\t\t\tthis._setAutoPlayInterval();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.autoplay) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'play.owl.autoplay': $.proxy(function(e, t, s) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.play(t, s);\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'stop.owl.autoplay': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tthis.stop();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'mouseover.owl.autoplay': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.pause();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'mouseleave.owl.autoplay': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'touchstart.owl.core': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {\n\t\t\t\t\tthis.pause();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'touchend.owl.core': $.proxy(function() {\n\t\t\t\tif (this._core.settings.autoplayHoverPause) {\n\t\t\t\t\tthis.play();\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// register event handlers\n\t\tthis._core.$element.on(this._handlers);\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Autoplay.Defaults, this._core.options);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tAutoplay.Defaults = {\n\t\tautoplay: false,\n\t\tautoplayTimeout: 5000,\n\t\tautoplayHoverPause: false,\n\t\tautoplaySpeed: false\n\t};\n\n\t/**\n\t * Starts the autoplay.\n\t * @public\n\t * @param {Number} [timeout] - The interval before the next animation starts.\n\t * @param {Number} [speed] - The animation speed for the animations.\n\t */\n\tAutoplay.prototype.play = function(timeout, speed) {\n\t\tthis._paused = false;\n\n\t\tif (this._core.is('rotating')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._core.enter('rotating');\n\n\t\tthis._setAutoPlayInterval();\n\t};\n\n\t/**\n\t * Gets a new timeout\n\t * @private\n\t * @param {Number} [timeout] - The interval before the next animation starts.\n\t * @param {Number} [speed] - The animation speed for the animations.\n\t * @return {Timeout}\n\t */\n\tAutoplay.prototype._getNextTimeout = function(timeout, speed) {\n\t\tif ( this._timeout ) {\n\t\t\twindow.clearTimeout(this._timeout);\n\t\t}\n\t\treturn window.setTimeout($.proxy(function() {\n\t\t\tif (this._paused || this._core.is('busy') || this._core.is('interacting') || document.hidden) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis._core.next(speed || this._core.settings.autoplaySpeed);\n\t\t}, this), timeout || this._core.settings.autoplayTimeout);\n\t};\n\n\t/**\n\t * Sets autoplay in motion.\n\t * @private\n\t */\n\tAutoplay.prototype._setAutoPlayInterval = function() {\n\t\tthis._timeout = this._getNextTimeout();\n\t};\n\n\t/**\n\t * Stops the autoplay.\n\t * @public\n\t */\n\tAutoplay.prototype.stop = function() {\n\t\tif (!this._core.is('rotating')) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow.clearTimeout(this._timeout);\n\t\tthis._core.leave('rotating');\n\t};\n\n\t/**\n\t * Stops the autoplay.\n\t * @public\n\t */\n\tAutoplay.prototype.pause = function() {\n\t\tif (!this._core.is('rotating')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._paused = true;\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t */\n\tAutoplay.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\tthis.stop();\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.autoplay = Autoplay;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Navigation Plugin\n * @version 2.1.0\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\t'use strict';\n\n\t/**\n\t * Creates the navigation plugin.\n\t * @class The Navigation Plugin\n\t * @param {Owl} carousel - The Owl Carousel.\n\t */\n\tvar Navigation = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Indicates whether the plugin is initialized or not.\n\t\t * @protected\n\t\t * @type {Boolean}\n\t\t */\n\t\tthis._initialized = false;\n\n\t\t/**\n\t\t * The current paging indexes.\n\t\t * @protected\n\t\t * @type {Array}\n\t\t */\n\t\tthis._pages = [];\n\n\t\t/**\n\t\t * All DOM elements of the user interface.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._controls = {};\n\n\t\t/**\n\t\t * Markup for an indicator.\n\t\t * @protected\n\t\t * @type {Array.}\n\t\t */\n\t\tthis._templates = [];\n\n\t\t/**\n\t\t * The carousel element.\n\t\t * @type {jQuery}\n\t\t */\n\t\tthis.$element = this._core.$element;\n\n\t\t/**\n\t\t * Overridden methods of the carousel.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._overrides = {\n\t\t\tnext: this._core.next,\n\t\t\tprev: this._core.prev,\n\t\t\tto: this._core.to\n\t\t};\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'prepared.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.push('
' +\n\t\t\t\t\t\t$(e.content).find('[data-dot]').addBack('[data-dot]').attr('data-dot') + '
');\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'added.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.splice(e.position, 0, this._templates.pop());\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'remove.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.dotsData) {\n\t\t\t\t\tthis._templates.splice(e.position, 1);\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name == 'position') {\n\t\t\t\t\tthis.draw();\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && !this._initialized) {\n\t\t\t\t\tthis._core.trigger('initialize', null, 'navigation');\n\t\t\t\t\tthis.initialize();\n\t\t\t\t\tthis.update();\n\t\t\t\t\tthis.draw();\n\t\t\t\t\tthis._initialized = true;\n\t\t\t\t\tthis._core.trigger('initialized', null, 'navigation');\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'refreshed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._initialized) {\n\t\t\t\t\tthis._core.trigger('refresh', null, 'navigation');\n\t\t\t\t\tthis.update();\n\t\t\t\t\tthis.draw();\n\t\t\t\t\tthis._core.trigger('refreshed', null, 'navigation');\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Navigation.Defaults, this._core.options);\n\n\t\t// register event handlers\n\t\tthis.$element.on(this._handlers);\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t * @todo Rename `slideBy` to `navBy`\n\t */\n\tNavigation.Defaults = {\n\t\tnav: false,\n\t\tnavText: [ 'prev', 'next' ],\n\t\tnavSpeed: false,\n\t\tnavElement: 'div',\n\t\tnavContainer: false,\n\t\tnavContainerClass: 'owl-nav',\n\t\tnavClass: [ 'owl-prev', 'owl-next' ],\n\t\tslideBy: 1,\n\t\tdotClass: 'owl-dot',\n\t\tdotsClass: 'owl-dots',\n\t\tdots: true,\n\t\tdotsEach: false,\n\t\tdotsData: false,\n\t\tdotsSpeed: false,\n\t\tdotsContainer: false\n\t};\n\n\t/**\n\t * Initializes the layout of the plugin and extends the carousel.\n\t * @protected\n\t */\n\tNavigation.prototype.initialize = function() {\n\t\tvar override,\n\t\t\tsettings = this._core.settings;\n\n\t\t// create DOM structure for relative navigation\n\t\tthis._controls.$relative = (settings.navContainer ? $(settings.navContainer)\n\t\t\t: $('
').addClass(settings.navContainerClass).appendTo(this.$element)).addClass('disabled');\n\n\t\tthis._controls.$previous = $('<' + settings.navElement + '>')\n\t\t\t.addClass(settings.navClass[0])\n\t\t\t.html(settings.navText[0])\n\t\t\t.prependTo(this._controls.$relative)\n\t\t\t.on('click', $.proxy(function(e) {\n\t\t\t\tthis.prev(settings.navSpeed);\n\t\t\t}, this));\n\t\tthis._controls.$next = $('<' + settings.navElement + '>')\n\t\t\t.addClass(settings.navClass[1])\n\t\t\t.html(settings.navText[1])\n\t\t\t.appendTo(this._controls.$relative)\n\t\t\t.on('click', $.proxy(function(e) {\n\t\t\t\tthis.next(settings.navSpeed);\n\t\t\t}, this));\n\n\t\t// create DOM structure for absolute navigation\n\t\tif (!settings.dotsData) {\n\t\t\tthis._templates = [ $('
')\n\t\t\t\t.addClass(settings.dotClass)\n\t\t\t\t.append($(''))\n\t\t\t\t.prop('outerHTML') ];\n\t\t}\n\n\t\tthis._controls.$absolute = (settings.dotsContainer ? $(settings.dotsContainer)\n\t\t\t: $('
').addClass(settings.dotsClass).appendTo(this.$element)).addClass('disabled');\n\n\t\tthis._controls.$absolute.on('click', 'div', $.proxy(function(e) {\n\t\t\tvar index = $(e.target).parent().is(this._controls.$absolute)\n\t\t\t\t? $(e.target).index() : $(e.target).parent().index();\n\n\t\t\te.preventDefault();\n\n\t\t\tthis.to(index, settings.dotsSpeed);\n\t\t}, this));\n\n\t\t// override public methods of the carousel\n\t\tfor (override in this._overrides) {\n\t\t\tthis._core[override] = $.proxy(this[override], this);\n\t\t}\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @protected\n\t */\n\tNavigation.prototype.destroy = function() {\n\t\tvar handler, control, property, override;\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (control in this._controls) {\n\t\t\tthis._controls[control].remove();\n\t\t}\n\t\tfor (override in this.overides) {\n\t\t\tthis._core[override] = this._overrides[override];\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t/**\n\t * Updates the internal state.\n\t * @protected\n\t */\n\tNavigation.prototype.update = function() {\n\t\tvar i, j, k,\n\t\t\tlower = this._core.clones().length / 2,\n\t\t\tupper = lower + this._core.items().length,\n\t\t\tmaximum = this._core.maximum(true),\n\t\t\tsettings = this._core.settings,\n\t\t\tsize = settings.center || settings.autoWidth || settings.dotsData\n\t\t\t\t? 1 : settings.dotsEach || settings.items;\n\n\t\tif (settings.slideBy !== 'page') {\n\t\t\tsettings.slideBy = Math.min(settings.slideBy, settings.items);\n\t\t}\n\n\t\tif (settings.dots || settings.slideBy == 'page') {\n\t\t\tthis._pages = [];\n\n\t\t\tfor (i = lower, j = 0, k = 0; i < upper; i++) {\n\t\t\t\tif (j >= size || j === 0) {\n\t\t\t\t\tthis._pages.push({\n\t\t\t\t\t\tstart: Math.min(maximum, i - lower),\n\t\t\t\t\t\tend: i - lower + size - 1\n\t\t\t\t\t});\n\t\t\t\t\tif (Math.min(maximum, i - lower) === maximum) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tj = 0, ++k;\n\t\t\t\t}\n\t\t\t\tj += this._core.mergers(this._core.relative(i));\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * Draws the user interface.\n\t * @todo The option `dotsData` wont work.\n\t * @protected\n\t */\n\tNavigation.prototype.draw = function() {\n\t\tvar difference,\n\t\t\tsettings = this._core.settings,\n\t\t\tdisabled = this._core.items().length <= settings.items,\n\t\t\tindex = this._core.relative(this._core.current()),\n\t\t\tloop = settings.loop || settings.rewind;\n\n\t\tthis._controls.$relative.toggleClass('disabled', !settings.nav || disabled);\n\n\t\tif (settings.nav) {\n\t\t\tthis._controls.$previous.toggleClass('disabled', !loop && index <= this._core.minimum(true));\n\t\t\tthis._controls.$next.toggleClass('disabled', !loop && index >= this._core.maximum(true));\n\t\t}\n\n\t\tthis._controls.$absolute.toggleClass('disabled', !settings.dots || disabled);\n\n\t\tif (settings.dots) {\n\t\t\tdifference = this._pages.length - this._controls.$absolute.children().length;\n\n\t\t\tif (settings.dotsData && difference !== 0) {\n\t\t\t\tthis._controls.$absolute.html(this._templates.join(''));\n\t\t\t} else if (difference > 0) {\n\t\t\t\tthis._controls.$absolute.append(new Array(difference + 1).join(this._templates[0]));\n\t\t\t} else if (difference < 0) {\n\t\t\t\tthis._controls.$absolute.children().slice(difference).remove();\n\t\t\t}\n\n\t\t\tthis._controls.$absolute.find('.active').removeClass('active');\n\t\t\tthis._controls.$absolute.children().eq($.inArray(this.current(), this._pages)).addClass('active');\n\t\t}\n\t};\n\n\t/**\n\t * Extends event data.\n\t * @protected\n\t * @param {Event} event - The event object which gets thrown.\n\t */\n\tNavigation.prototype.onTrigger = function(event) {\n\t\tvar settings = this._core.settings;\n\n\t\tevent.page = {\n\t\t\tindex: $.inArray(this.current(), this._pages),\n\t\t\tcount: this._pages.length,\n\t\t\tsize: settings && (settings.center || settings.autoWidth || settings.dotsData\n\t\t\t\t? 1 : settings.dotsEach || settings.items)\n\t\t};\n\t};\n\n\t/**\n\t * Gets the current page position of the carousel.\n\t * @protected\n\t * @returns {Number}\n\t */\n\tNavigation.prototype.current = function() {\n\t\tvar current = this._core.relative(this._core.current());\n\t\treturn $.grep(this._pages, $.proxy(function(page, index) {\n\t\t\treturn page.start <= current && page.end >= current;\n\t\t}, this)).pop();\n\t};\n\n\t/**\n\t * Gets the current succesor/predecessor position.\n\t * @protected\n\t * @returns {Number}\n\t */\n\tNavigation.prototype.getPosition = function(successor) {\n\t\tvar position, length,\n\t\t\tsettings = this._core.settings;\n\n\t\tif (settings.slideBy == 'page') {\n\t\t\tposition = $.inArray(this.current(), this._pages);\n\t\t\tlength = this._pages.length;\n\t\t\tsuccessor ? ++position : --position;\n\t\t\tposition = this._pages[((position % length) + length) % length].start;\n\t\t} else {\n\t\t\tposition = this._core.relative(this._core.current());\n\t\t\tlength = this._core.items().length;\n\t\t\tsuccessor ? position += settings.slideBy : position -= settings.slideBy;\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Slides to the next item or page.\n\t * @public\n\t * @param {Number} [speed=false] - The time in milliseconds for the transition.\n\t */\n\tNavigation.prototype.next = function(speed) {\n\t\t$.proxy(this._overrides.to, this._core)(this.getPosition(true), speed);\n\t};\n\n\t/**\n\t * Slides to the previous item or page.\n\t * @public\n\t * @param {Number} [speed=false] - The time in milliseconds for the transition.\n\t */\n\tNavigation.prototype.prev = function(speed) {\n\t\t$.proxy(this._overrides.to, this._core)(this.getPosition(false), speed);\n\t};\n\n\t/**\n\t * Slides to the specified item or page.\n\t * @public\n\t * @param {Number} position - The position of the item or page.\n\t * @param {Number} [speed] - The time in milliseconds for the transition.\n\t * @param {Boolean} [standard=false] - Whether to use the standard behaviour or not.\n\t */\n\tNavigation.prototype.to = function(position, speed, standard) {\n\t\tvar length;\n\n\t\tif (!standard && this._pages.length) {\n\t\t\tlength = this._pages.length;\n\t\t\t$.proxy(this._overrides.to, this._core)(this._pages[((position % length) + length) % length].start, speed);\n\t\t} else {\n\t\t\t$.proxy(this._overrides.to, this._core)(position, speed);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Navigation = Navigation;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Hash Plugin\n * @version 2.1.0\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\t'use strict';\n\n\t/**\n\t * Creates the hash plugin.\n\t * @class The Hash Plugin\n\t * @param {Owl} carousel - The Owl Carousel\n\t */\n\tvar Hash = function(carousel) {\n\t\t/**\n\t\t * Reference to the core.\n\t\t * @protected\n\t\t * @type {Owl}\n\t\t */\n\t\tthis._core = carousel;\n\n\t\t/**\n\t\t * Hash index for the items.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._hashes = {};\n\n\t\t/**\n\t\t * The carousel element.\n\t\t * @type {jQuery}\n\t\t */\n\t\tthis.$element = this._core.$element;\n\n\t\t/**\n\t\t * All event handlers.\n\t\t * @protected\n\t\t * @type {Object}\n\t\t */\n\t\tthis._handlers = {\n\t\t\t'initialized.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && this._core.settings.startPosition === 'URLHash') {\n\t\t\t\t\t$(window).trigger('hashchange.owl.navigation');\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'prepared.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace) {\n\t\t\t\t\tvar hash = $(e.content).find('[data-hash]').addBack('[data-hash]').attr('data-hash');\n\n\t\t\t\t\tif (!hash) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._hashes[hash] = e.content;\n\t\t\t\t}\n\t\t\t}, this),\n\t\t\t'changed.owl.carousel': $.proxy(function(e) {\n\t\t\t\tif (e.namespace && e.property.name === 'position') {\n\t\t\t\t\tvar current = this._core.items(this._core.relative(this._core.current())),\n\t\t\t\t\t\thash = $.map(this._hashes, function(item, hash) {\n\t\t\t\t\t\t\treturn item === current ? hash : null;\n\t\t\t\t\t\t}).join();\n\n\t\t\t\t\tif (!hash || window.location.hash.slice(1) === hash) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\twindow.location.hash = hash;\n\t\t\t\t}\n\t\t\t}, this)\n\t\t};\n\n\t\t// set default options\n\t\tthis._core.options = $.extend({}, Hash.Defaults, this._core.options);\n\n\t\t// register the event handlers\n\t\tthis.$element.on(this._handlers);\n\n\t\t// register event listener for hash navigation\n\t\t$(window).on('hashchange.owl.navigation', $.proxy(function(e) {\n\t\t\tvar hash = window.location.hash.substring(1),\n\t\t\t\titems = this._core.$stage.children(),\n\t\t\t\tposition = this._hashes[hash] && items.index(this._hashes[hash]);\n\n\t\t\tif (position === undefined || position === this._core.current()) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._core.to(this._core.relative(position), false, true);\n\t\t}, this));\n\t};\n\n\t/**\n\t * Default options.\n\t * @public\n\t */\n\tHash.Defaults = {\n\t\tURLhashListener: false\n\t};\n\n\t/**\n\t * Destroys the plugin.\n\t * @public\n\t */\n\tHash.prototype.destroy = function() {\n\t\tvar handler, property;\n\n\t\t$(window).off('hashchange.owl.navigation');\n\n\t\tfor (handler in this._handlers) {\n\t\t\tthis._core.$element.off(handler, this._handlers[handler]);\n\t\t}\n\t\tfor (property in Object.getOwnPropertyNames(this)) {\n\t\t\ttypeof this[property] != 'function' && (this[property] = null);\n\t\t}\n\t};\n\n\t$.fn.owlCarousel.Constructor.Plugins.Hash = Hash;\n\n})(window.Zepto || window.jQuery, window, document);\n\n/**\n * Support Plugin\n *\n * @version 2.1.0\n * @author Vivid Planet Software GmbH\n * @author Artus Kolanowski\n * @author David Deutsch\n * @license The MIT License (MIT)\n */\n;(function($, window, document, undefined) {\n\n\tvar style = $('').get(0).style,\n\t\tprefixes = 'Webkit Moz O ms'.split(' '),\n\t\tevents = {\n\t\t\ttransition: {\n\t\t\t\tend: {\n\t\t\t\t\tWebkitTransition: 'webkitTransitionEnd',\n\t\t\t\t\tMozTransition: 'transitionend',\n\t\t\t\t\tOTransition: 'oTransitionEnd',\n\t\t\t\t\ttransition: 'transitionend'\n\t\t\t\t}\n\t\t\t},\n\t\t\tanimation: {\n\t\t\t\tend: {\n\t\t\t\t\tWebkitAnimation: 'webkitAnimationEnd',\n\t\t\t\t\tMozAnimation: 'animationend',\n\t\t\t\t\tOAnimation: 'oAnimationEnd',\n\t\t\t\t\tanimation: 'animationend'\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\ttests = {\n\t\t\tcsstransforms: function() {\n\t\t\t\treturn !!test('transform');\n\t\t\t},\n\t\t\tcsstransforms3d: function() {\n\t\t\t\treturn !!test('perspective');\n\t\t\t},\n\t\t\tcsstransitions: function() {\n\t\t\t\treturn !!test('transition');\n\t\t\t},\n\t\t\tcssanimations: function() {\n\t\t\t\treturn !!test('animation');\n\t\t\t}\n\t\t};\n\n\tfunction test(property, prefixed) {\n\t\tvar result = false,\n\t\t\tupper = property.charAt(0).toUpperCase() + property.slice(1);\n\n\t\t$.each((property + ' ' + prefixes.join(upper + ' ') + upper).split(' '), function(i, property) {\n\t\t\tif (style[property] !== undefined) {\n\t\t\t\tresult = prefixed ? property : true;\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfunction prefixed(property) {\n\t\treturn test(property, true);\n\t}\n\n\tif (tests.csstransitions()) {\n\t\t/* jshint -W053 */\n\t\t$.support.transition = new String(prefixed('transition'))\n\t\t$.support.transition.end = events.transition.end[ $.support.transition ];\n\t}\n\n\tif (tests.cssanimations()) {\n\t\t/* jshint -W053 */\n\t\t$.support.animation = new String(prefixed('animation'))\n\t\t$.support.animation.end = events.animation.end[ $.support.animation ];\n\t}\n\n\tif (tests.csstransforms()) {\n\t\t/* jshint -W053 */\n\t\t$.support.transform = new String(prefixed('transform'));\n\t\t$.support.transform3d = tests.csstransforms3d();\n\t}\n\n})(window.Zepto || window.jQuery, window, document);\n","'use strict';\n/* jshint -W117 */\nvar siteInit = {\n\tvariables: {\n\n\t\t$window: $(window),\n\t\t$html: $('html'),\n\t\t$body: $('body'),\n\t\t$header: $('.page__header'),\n\t\t$logo: $('.logo'),\n\n\t\t_isSmallScreen: false,\n\t\t_isMediumScreen: false,\n\t\t_isLargeScreen: false,\n\t\t_isExtraLargeScreen: false,\n\t\t_isPortrait: false,\n\t\t_easing: 'Quart.easeOut'\n\t\t//_bodyClass: $('body').attr('class')\n\n\t},\n\n\tDOMready: function() {\n\t\tif (window.matchMedia) {\n\t\t\tsiteInit.variables._isExtraSmallScreen = (window.matchMedia('(min-width:30em)').matches); // sopra i 480px\n\t\t\tsiteInit.variables._isSmallScreen = (window.matchMedia('(min-width:48em)').matches); // sopra i 768px\n\t\t\tsiteInit.variables._isMediumScreen = (window.matchMedia('(min-width:92em)').matches); // sopra i 992px\n\t\t\tsiteInit.variables._isLargeScreen = (window.matchMedia('(min-width:75em)').matches); // sopra i 1200px\n\t\t\tsiteInit.variables._isExtraLargeScreen = (window.matchMedia('(min-width:95em)').matches); // sopra i 1520px\n\t\t\tsiteInit.variables._isPortrait = (window.matchMedia('(orientation: portrait)').matches);\n\t\t}\n\n\t\tif (siteInit.isTouchDevice() === true) {\n\t $('html').addClass('touch'); //your logic for touch device here\n \t} else {\n \t $('html').addClass('no-touch'); //your logic for non touch device here\n \t}\n\n \tif ($('.js-sidebar').length > 0) {\n \t\tsiteInit.initSidebar();\n\t\t\tsiteInit.initSidebarNav();\n \t}\n\n\t\tif ($('.js-goto').length > 0) {\n\t\t\tsiteInit.goTo();\n\t\t}\n\n\t\tif ($('.js-counter').length > 0) {\n\t\t\tsiteInit.initCounter();\n\t\t}\n\n\t\tif ($('.js-navigation').length > 0) {\n\t\t\tsiteInit.initMobileMenu();\n\t\t}\n\n\t\tif ($('.js-animate').length > 0) {\n\t\t\tsiteInit.initAnimate();\n\t\t}\n\n\t\tif ($('.js-infinite-scroll').length > 0) {\n\t\t\tsiteInit.initInfiniteScroll();\n\t\t}\n\n\t\tif ($('.js-toggle').length > 0) {\n\t\t\tsiteInit.toggleObj();\n\t\t}\n\t\t//siteInit.initStripesBg();\n\t\tif ($('.js-carousel').length > 0) {\n\t\t\tsiteInit.carousel();\n\t\t}\n\n\t\tif ($('.box').length > 0) {\n\t\t\tsiteInit.hideBox();\n\t\t}\n\t},\n\n\tDOMload: function() {\n\n\t},\n\n\tisTouchDevice: function() {\n\t\treturn true === ('ontouchstart' in window || window.DocumentTouch && document instanceof DocumentTouch);\n\t},\n\n\torientation: function() {\n\t\treturn (siteInit.variables.$window.width() > siteInit.variables.$window.height()) ? 'landscape' : 'portrait';\n\t},\n\n\tinitMobileMenu: function() {\n\t\t$('.js-navigation').on('click', function(e) {\n\t\t\te.preventDefault();\n\n\t\t\tif($(this).hasClass('is-active'))\n\t\t\t{\n\t\t\t\t$('.navigation').removeClass('is-visible');\n\t\t\t\t$(this).text('MenĂ¹');\n\t\t\t}\n\t\t\telse {\n\t\t\t\t$('.navigation').addClass('is-visible');\n\t\t\t\t$(this).text('Chiudi');\n\t\t\t}\n\n\t\t\t$(this).toggleClass('is-active'); /*.toggleClass('icon--close');*/\n\t\t});\n\t},\n\n\tinitSidebar: function() {\n\t\t$('.js-sidebar__btn').panelslider({\n\n\t\t\tbodyClass: 'sidebar-right', // Class to be added to body when panel is opened\n\t\t\tclickClose: true, // If true closes panel when clicking outside it\n\t\t\tonOpen: null // Callback after the panel opens\n\n\t\t});\n\t},\n\n\tinitSidebarNav: function() {\n\t\t$('.navigation-sidebar').addClass('is-hide');\n\n\t\t$('.js-trigger-navigation-sidebar').bind('inview', function(event, isInView, visiblePartX, visiblePartY) {\n\t\t\tif (isInView) {\n\t\t\t\t// element is now visible in the viewport\n\t\t\t\tif (visiblePartY === 'bottom') {\n\t\t\t\t\t$('.navigation-sidebar').addClass('is-hide');\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$('.navigation-sidebar').removeClass('is-hide');\n\t\t\t}\n\t\t});\n\t},\n\n\tcarousel: function() {\n\t\t$('.js-carousel').owlCarousel({\n\t\t\tloop: true,\n\t\t\tmargin: 10,\n\t\t\tnav: true,\n\t\t\tresponsive: {\n\t\t\t\t0: {\n\t\t\t\t\titems: 1\n\t\t\t\t},\n\t\t\t\t600: {\n\t\t\t\t\titems: 1\n\t\t\t\t},\n\t\t\t\t1000: {\n\t\t\t\t\titems: 1\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n\n\thideBox: function() {\n\t\t$('.box').each(function(){\n\t\t\tif ($(this).contents().length < 1) {\n\t\t\t\t$(this).addClass('hidden');\n\t\t\t\t//console.log( $('.box').contents() );\n\t\t\t}\n\t\t});\n\t\t// if ( $('.box').contents() == \"\" || $('.box').contents() == null ) {\n\t\t// }\n\t},\n\n\tgoTo: function() {\n\t\t$('.js-goto').on('click', function(e){\n\t\t\te.preventDefault();\n\n\t\t\t$padding = $(this).data('padding');\n\n\t\t\tif (($padding) === undefined || ($padding) === null){\n\t\t\t\t$padding = 0;\n\t\t\t}\n\n\t\t\t$('.js-goto-anchor').animatescroll({easing: 'easeInOutQuad', padding: $padding });\n\t\t});\n\t},\n\n\ttoggleObj: function() {\n\t\t$('.js-toggle').on('click', function(e) {\n\t\t\t$target = $('#' + $(this).data('toggleTarget'));\n\n\t\t\tconsole.log($target);\n\t\t\tif ($target.length > 0) {\n\t\t\t\t$target.slideToggle();\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t});\n\t},\n\n\tinitAnimate: function() {\n\t\t$('.js-animate').bind('inview', function(event, isInView) {\n\t\t\tif (isInView) {\n\t\t\t\t$(this).addClass('js-animate--start');\n\t\t\t}\n\t\t});\n\t},\n\n\tinitHighlight: function(){\n\t\t$('em').bind('inview', function(event, isInView) {\n\t\t\tif (isInView) {\n\t\t\t\t$(this).addClass('js-animate').addClass('is-highlight');\n\t\t\t}\n\t\t});\n\t},\n\n\tinitInfiniteScroll: function() {\n\t\tvar ias = jQuery.ias({\n\t\t\tcontainer: '.js-infinite-scroll',\n\t\t\titem: '.post',\n\t\t\tpagination: '.section__footer',\n\t\t\tnext: '.js-infinite-link--prev'\n\n\t\t});\n\n\t\t//ias.extension(new IASSpinnerExtension());\n\t\tias.extension(new IASTriggerExtension({\n\t\t\toffset: 2,\n\t\t\ttext: $('.js-infinite-link--prev').data('infinite-scroll-text'),\n\t\t\thtml: '
',\n\t\t}));\n\n\t\tias.extension(new IASSpinnerExtension({\n\t\t\tsrc: 'https://www.evoluzionetelematica.it/wp-content/themes/evoluzionetelematica/img/loading.gif',\n\t\t\thtml: '
'\n\t\t}));\n\t},\n\n\tinitStripesBg: function() {\n\t\t// LINEMAKERS\n\t\tvar _linesBG,\n\t\t\t_linesFooter;\n\n\t\t_linesBG = [\n\t\t\t{top: 0, left: '50%', width: 1, height: '100vh', color: '#e1e1e1', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t];\n\t\t_linesFooter = [\n\t\t\t{top: 0, left: '50%', width: 1, height: '100vh', color: '#2a2a2a', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t];\n\n\t\tif (siteInit.variables._isLargeScreen) {\n\t\t\t_linesBG = [\n\t\t\t\t{top: 0, left: '25%', width: 1, height: '100vh', color: '#e1e1e1', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t\t\t{top: 0, left: '50%', width: 1, height: '100vh', color: '#e1e1e1', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t\t\t{top: 0, left: '75%', width: 1, height: '100vh', color: '#e1e1e1', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }}\n\t\t\t];\n\n\t\t\t_linesFooter = [\n\t\t\t\t{top: 0, left: '25%', width: 1, height: '100vh', color: '#2a2a2a', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t\t\t{top: 0, left: '50%', width: 1, height: '100vh', color: '#2a2a2a', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }},\n\t\t\t\t{top: 0, left: '75%', width: 1, height: '100vh', color: '#2a2a2a', hidden: true, animation: { duration: 2000, easing: 'easeInOutExpo', delay: 0, direction: 'TopBottom' }}\n\t\t\t];\n\t\t}\n\n\t\tvar lineMaker = new LineMaker({\n\t\t\t// Where to insert the lines container.\n\t\t\t//element: //the DOM element or a string to specify the selector, e.g. '#id' or '.classname'.\n\t\t\t// position: if fixed the lines container will have fixed position.\n\t\t\tposition: 'fixed',\n\t\t\t// The lines settings:\n\t\t\t//\n\t\t\t// top, left, width, height: numerical for pixels or string for % and viewport units. Examples: 2 || '20%' || '50vw'.\n\t\t\t// color: the (bg)color of the line.\n\t\t\t// hidden: defines if the line is rendered initially or hidden by default.\n\t\t\t// animation: animation properties for the line\n\t\t\t// duration: animation speed.\n\t\t\t// easing: animation easing (animejs easing. To see all possible values console animejs.easings).\n\t\t\t// delay: animation delay.\n\t\t\t// direction: line animation direction. Possible values: TopBottom || BottomTop || LeftRight || RightLeft || CenterV || CenterH.\n\t\t\tlines: _linesBG\n\t\t});\n\n\t\tsetTimeout(function() {\n\t\t\tlineMaker.animateLinesIn();\n\t\t}, 500);\n\n\n\t\tvar lineMakerFooter = new LineMaker({\n\t\t\t// Where to insert the lines container.\n\t\t\t//element: '.page__footer', //the DOM element or a string to specify the selector, e.g. '#id' or '.classname'.\n\t\t\t// element: the DOM element or a string to specify the selector, e.g. '#id' or '.classname'.\n\t\t\t// position: Whether to prepend or append to the parent.element\n\t\t\t// position: if fixed the lines container will have fixed position.\n\t\t\tposition: 'absolute',\n\t\t\tparent: {element: '.page__footer', position: 'prepend'},\n\t\t\t// The lines settings:\n\t\t\t//\n\t\t\t// top, left, width, height: numerical for pixels or string for % and viewport units. Examples: 2 || '20%' || '50vw'.\n\t\t\t// color: the (bg)color of the line.\n\t\t\t// hidden: defines if the line is rendered initially or hidden by default.\n\t\t\t// animation: animation properties for the line\n\t\t\t// duration: animation speed.\n\t\t\t// easing: animation easing (animejs easing. To see all possible values console animejs.easings).\n\t\t\t// delay: animation delay.\n\t\t\t// direction: line animation direction. Possible values: TopBottom || BottomTop || LeftRight || RightLeft || CenterV || CenterH.\n\t\t\tlines: _linesFooter\n\t\t});\n\n\t\tsetTimeout(function() {\n\t\t\tlineMakerFooter.animateLinesIn();\n\t\t}, 500);\n\t}\n\n};\n\n$(document).ready(function() {\n\tsiteInit.DOMready();\n});\n\n/*$(window).load(function () {\n siteInit.DOMload();\n});*/\n\n$(window).on('scroll', function() {\n\tdidScroll = true;\n});\n\n// Hide menĂ¹ on on scroll down\n\nvar didScroll;\nvar lastScrollTop = 0;\nvar delta = 5;\nvar navbarHeight = $('.page__header').outerHeight();\n\n// run hasScrolled() and reset didScroll status\nsetInterval(function() {\n\tif (didScroll && siteInit.variables._isSmallScreen) {\n\t\thasScrolled();\n\t\tdidScroll = false;\n\t}\n}, 250);\n\nfunction hasScrolled() {\n\tvar st = $(window).scrollTop();\n\n\t// Make sure they scroll more than delta\n\tif (Math.abs(lastScrollTop - st) <= delta) {\n\t\treturn;\n\t}\n\n\t// If they scrolled down and are past the navbar, add class .nav-up.\n\t// This is necessary so you never see what is \"behind\" the navbar.\n\tif (st > lastScrollTop && st > navbarHeight) {\n\t\t// Scroll Down\n\t\t$('.page__header').addClass('is-hide').removeClass('is-visible');\n\t} else {\n\t\t// Scroll Up\n\t\tif (st + $(window).height() < $(document).height()) {\n\t\t\t$('.page__header').removeClass('is-hide').addClass('is-visible');\n\t\t}\n\t\tif ($(window).scrollTop() < '120') {\n\t\t\t$('.page__header').removeClass('is-visible');\n\t\t}\n\t}\n\n\tlastScrollTop = st;\n}\n"]}