{"version":3,"sources":["../../../../../../../bower_components/slick.js/slick/slick.js"],"names":["factory","define","amd","exports","module","require","jQuery","$","Slick","window","element","settings","dataSettings","_","this","defaults","accessibility","adaptiveHeight","appendArrows","appendDots","arrows","asNavFor","prevArrow","nextArrow","autoplay","autoplaySpeed","centerMode","centerPadding","cssEase","customPaging","slider","i","dots","dotsClass","draggable","easing","edgeFriction","fade","focusOnSelect","infinite","initialSlide","lazyLoad","mobileFirst","pauseOnHover","pauseOnDotsHover","respondTo","responsive","rows","rtl","slide","slidesPerRow","slidesToShow","slidesToScroll","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","verticalSwiping","waitForAnimate","zIndex","initials","animating","dragging","autoPlayTimer","currentDirection","currentLeft","currentSlide","direction","$dots","listWidth","listHeight","loadIndex","$nextArrow","$prevArrow","slideCount","slideWidth","$slideTrack","$slides","sliding","slideOffset","swipeLeft","$list","touchObject","transformsEnabled","unslicked","extend","activeBreakpoint","animType","animProp","breakpoints","breakpointSettings","cssTransitions","hidden","paused","positionProp","rowCount","shouldClick","$slider","$slidesCache","transformType","transitionType","visibilityChange","windowWidth","windowTimer","data","options","originalSettings","document","mozHidden","webkitHidden","autoPlay","proxy","autoPlayClear","changeSlide","clickHandler","selectHandler","setPosition","swipeHandler","dragHandler","keyHandler","autoPlayIterator","instanceUid","htmlExpr","registerBreakpoints","init","checkResponsive","prototype","addSlide","slickAdd","markup","index","addBefore","unload","length","appendTo","insertBefore","eq","insertAfter","prependTo","children","detach","append","each","attr","reinit","animateHeight","targetHeight","outerHeight","animate","height","animateSlide","targetLeft","callback","animProps","left","top","animStart","duration","step","now","Math","ceil","css","complete","call","applyTransition","setTimeout","disableTransition","not","target","slick","slideHandler","transition","clearInterval","setInterval","buildArrows","addClass","removeClass","removeAttr","test","add","aria-disabled","tabindex","buildDots","dotString","getDotCount","find","first","buildOut","wrapAll","parent","wrap","setupInfinite","updateDots","setSlideClasses","buildRows","a","b","c","newSlides","numOfSlides","originalSlides","slidesPerSection","createDocumentFragment","createElement","row","get","appendChild","html","width","display","initial","forceUpdate","breakpoint","targetBreakpoint","respondToWidth","triggerBreakpoint","sliderWidth","innerWidth","min","hasOwnProperty","unslick","refresh","trigger","event","dontAnimate","indexOffset","unevenOffset","$target","is","preventDefault","closest","message","checkNavigable","navigables","prevNavigable","getNavigableIndexes","n","cleanUpEvents","off","setPaused","visibility","orientationChange","resize","cleanUpRows","stopImmediatePropagation","stopPropagation","destroy","remove","fadeSlide","slideIndex","opacity","fadeSlideOut","filterSlides","slickFilter","filter","getCurrent","slickCurrentSlide","breakPoint","counter","pagerQty","getLeft","verticalHeight","targetSlide","verticalOffset","floor","offsetLeft","outerWidth","getOption","slickGetOption","option","max","indexes","push","getSlick","getSlideCount","slidesTraversed","swipedSlide","centerOffset","abs","goTo","slickGoTo","parseInt","creation","hasClass","setProps","startLoad","loadSlider","initializeEvents","updateArrows","initADA","initArrowEvents","on","initDotEvents","action","initUI","show","tagName","match","keyCode","loadImages","imagesScope","image","imageSource","imageToLoad","onload","src","loadRange","cloneRange","rangeStart","rangeEnd","slice","progressiveLazyLoad","next","slickNext","pause","slickPause","play","slickPlay","postSlide","prev","slickPrev","imgCount","targetImage","load","error","initializing","firstVisible","currentBreakpoint","l","responsiveSettings","type","splice","sort","focusHandler","clearTimeout","windowDelay","removeSlide","slickRemove","removeBefore","removeAll","setCSS","position","x","y","positionProps","setDimensions","padding","offset","setFade","right","setHeight","setOption","slickSetOption","value","item","bodyStyle","body","style","undefined","WebkitTransition","MozTransition","msTransition","OTransform","perspectiveProperty","webkitPerspective","MozTransform","MozPerspective","webkitTransform","msTransform","transform","allSlides","remainder","infiniteCount","clone","targetElement","parents","sync","animSlide","oldSlide","slideLeft","hide","swipeDirection","xDist","yDist","r","swipeAngle","startX","curX","startY","curY","atan2","round","PI","swipeEnd","swipeLength","edgeHit","minSwipe","indexOf","fingerCount","originalEvent","touches","swipeStart","swipeMove","curLeft","positionOffset","pageX","clientX","pageY","clientY","sqrt","pow","unfilterSlides","slickUnfilter","fromBreakpoint","aria-hidden","role","aria-describedby","aria-selected","aria-controls","id","end","activateADA","sf","isPlay","fn","ret","opt","arguments","args","Array","apply"],"mappings":"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","file":"slick.min.js","sourcesContent":["/*\n _ _ _ _\n ___| (_) ___| | __ (_)___\n/ __| | |/ __| |/ / | / __|\n\\__ \\ | | (__| < _ | \\__ \\\n|___/_|_|\\___|_|\\_(_)/ |___/\n |__/\n\n Version: 1.5.9\n Author: Ken Wheeler\n Website: http://kenwheeler.github.io\n Docs: http://kenwheeler.github.io/slick\n Repo: http://github.com/kenwheeler/slick\n Issues: http://github.com/kenwheeler/slick/issues\n\n */\n/* global window, document, define, jQuery, setInterval, clearInterval */\n(function(factory) {\n 'use strict';\n if (typeof define === 'function' && define.amd) {\n define(['jquery'], factory);\n } else if (typeof exports !== 'undefined') {\n module.exports = factory(require('jquery'));\n } else {\n factory(jQuery);\n }\n\n}(function($) {\n 'use strict';\n var Slick = window.Slick || {};\n\n Slick = (function() {\n\n var instanceUid = 0;\n\n function Slick(element, settings) {\n\n var _ = this, dataSettings;\n\n _.defaults = {\n accessibility: true,\n adaptiveHeight: false,\n appendArrows: $(element),\n appendDots: $(element),\n arrows: true,\n asNavFor: null,\n prevArrow: '',\n nextArrow: '',\n autoplay: false,\n autoplaySpeed: 3000,\n centerMode: false,\n centerPadding: '50px',\n cssEase: 'ease',\n customPaging: function(slider, i) {\n return '';\n },\n dots: false,\n dotsClass: 'slick-dots',\n draggable: true,\n easing: 'linear',\n edgeFriction: 0.35,\n fade: false,\n focusOnSelect: false,\n infinite: true,\n initialSlide: 0,\n lazyLoad: 'ondemand',\n mobileFirst: false,\n pauseOnHover: true,\n pauseOnDotsHover: false,\n respondTo: 'window',\n responsive: null,\n rows: 1,\n rtl: false,\n slide: '',\n slidesPerRow: 1,\n slidesToShow: 1,\n slidesToScroll: 1,\n speed: 500,\n swipe: true,\n swipeToSlide: false,\n touchMove: true,\n touchThreshold: 5,\n useCSS: true,\n useTransform: false,\n variableWidth: false,\n vertical: false,\n verticalSwiping: false,\n waitForAnimate: true,\n zIndex: 1000\n };\n\n _.initials = {\n animating: false,\n dragging: false,\n autoPlayTimer: null,\n currentDirection: 0,\n currentLeft: null,\n currentSlide: 0,\n direction: 1,\n $dots: null,\n listWidth: null,\n listHeight: null,\n loadIndex: 0,\n $nextArrow: null,\n $prevArrow: null,\n slideCount: null,\n slideWidth: null,\n $slideTrack: null,\n $slides: null,\n sliding: false,\n slideOffset: 0,\n swipeLeft: null,\n $list: null,\n touchObject: {},\n transformsEnabled: false,\n unslicked: false\n };\n\n $.extend(_, _.initials);\n\n _.activeBreakpoint = null;\n _.animType = null;\n _.animProp = null;\n _.breakpoints = [];\n _.breakpointSettings = [];\n _.cssTransitions = false;\n _.hidden = 'hidden';\n _.paused = false;\n _.positionProp = null;\n _.respondTo = null;\n _.rowCount = 1;\n _.shouldClick = true;\n _.$slider = $(element);\n _.$slidesCache = null;\n _.transformType = null;\n _.transitionType = null;\n _.visibilityChange = 'visibilitychange';\n _.windowWidth = 0;\n _.windowTimer = null;\n\n dataSettings = $(element).data('slick') || {};\n\n _.options = $.extend({}, _.defaults, dataSettings, settings);\n\n _.currentSlide = _.options.initialSlide;\n\n _.originalSettings = _.options;\n\n if (typeof document.mozHidden !== 'undefined') {\n _.hidden = 'mozHidden';\n _.visibilityChange = 'mozvisibilitychange';\n } else if (typeof document.webkitHidden !== 'undefined') {\n _.hidden = 'webkitHidden';\n _.visibilityChange = 'webkitvisibilitychange';\n }\n\n _.autoPlay = $.proxy(_.autoPlay, _);\n _.autoPlayClear = $.proxy(_.autoPlayClear, _);\n _.changeSlide = $.proxy(_.changeSlide, _);\n _.clickHandler = $.proxy(_.clickHandler, _);\n _.selectHandler = $.proxy(_.selectHandler, _);\n _.setPosition = $.proxy(_.setPosition, _);\n _.swipeHandler = $.proxy(_.swipeHandler, _);\n _.dragHandler = $.proxy(_.dragHandler, _);\n _.keyHandler = $.proxy(_.keyHandler, _);\n _.autoPlayIterator = $.proxy(_.autoPlayIterator, _);\n\n _.instanceUid = instanceUid++;\n\n // A simple way to check for HTML strings\n // Strict HTML recognition (must start with <)\n // Extracted from jQuery v1.11 source\n _.htmlExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*)$/;\n\n\n _.registerBreakpoints();\n _.init(true);\n _.checkResponsive(true);\n\n }\n\n return Slick;\n\n }());\n\n Slick.prototype.addSlide = Slick.prototype.slickAdd = function(markup, index, addBefore) {\n\n var _ = this;\n\n if (typeof(index) === 'boolean') {\n addBefore = index;\n index = null;\n } else if (index < 0 || (index >= _.slideCount)) {\n return false;\n }\n\n _.unload();\n\n if (typeof(index) === 'number') {\n if (index === 0 && _.$slides.length === 0) {\n $(markup).appendTo(_.$slideTrack);\n } else if (addBefore) {\n $(markup).insertBefore(_.$slides.eq(index));\n } else {\n $(markup).insertAfter(_.$slides.eq(index));\n }\n } else {\n if (addBefore === true) {\n $(markup).prependTo(_.$slideTrack);\n } else {\n $(markup).appendTo(_.$slideTrack);\n }\n }\n\n _.$slides = _.$slideTrack.children(this.options.slide);\n\n _.$slideTrack.children(this.options.slide).detach();\n\n _.$slideTrack.append(_.$slides);\n\n _.$slides.each(function(index, element) {\n $(element).attr('data-slick-index', index);\n });\n\n _.$slidesCache = _.$slides;\n\n _.reinit();\n\n };\n\n Slick.prototype.animateHeight = function() {\n var _ = this;\n if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {\n var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);\n _.$list.animate({\n height: targetHeight\n }, _.options.speed);\n }\n };\n\n Slick.prototype.animateSlide = function(targetLeft, callback) {\n\n var animProps = {},\n _ = this;\n\n _.animateHeight();\n\n if (_.options.rtl === true && _.options.vertical === false) {\n targetLeft = -targetLeft;\n }\n if (_.transformsEnabled === false) {\n if (_.options.vertical === false) {\n _.$slideTrack.animate({\n left: targetLeft\n }, _.options.speed, _.options.easing, callback);\n } else {\n _.$slideTrack.animate({\n top: targetLeft\n }, _.options.speed, _.options.easing, callback);\n }\n\n } else {\n\n if (_.cssTransitions === false) {\n if (_.options.rtl === true) {\n _.currentLeft = -(_.currentLeft);\n }\n $({\n animStart: _.currentLeft\n }).animate({\n animStart: targetLeft\n }, {\n duration: _.options.speed,\n easing: _.options.easing,\n step: function(now) {\n now = Math.ceil(now);\n if (_.options.vertical === false) {\n animProps[_.animType] = 'translate(' +\n now + 'px, 0px)';\n _.$slideTrack.css(animProps);\n } else {\n animProps[_.animType] = 'translate(0px,' +\n now + 'px)';\n _.$slideTrack.css(animProps);\n }\n },\n complete: function() {\n if (callback) {\n callback.call();\n }\n }\n });\n\n } else {\n\n _.applyTransition();\n targetLeft = Math.ceil(targetLeft);\n\n if (_.options.vertical === false) {\n animProps[_.animType] = 'translate3d(' + targetLeft + 'px, 0px, 0px)';\n } else {\n animProps[_.animType] = 'translate3d(0px,' + targetLeft + 'px, 0px)';\n }\n _.$slideTrack.css(animProps);\n\n if (callback) {\n setTimeout(function() {\n\n _.disableTransition();\n\n callback.call();\n }, _.options.speed);\n }\n\n }\n\n }\n\n };\n\n Slick.prototype.asNavFor = function(index) {\n\n var _ = this,\n asNavFor = _.options.asNavFor;\n\n if ( asNavFor && asNavFor !== null ) {\n asNavFor = $(asNavFor).not(_.$slider);\n }\n\n if ( asNavFor !== null && typeof asNavFor === 'object' ) {\n asNavFor.each(function() {\n var target = $(this).slick('getSlick');\n if(!target.unslicked) {\n target.slideHandler(index, true);\n }\n });\n }\n\n };\n\n Slick.prototype.applyTransition = function(slide) {\n\n var _ = this,\n transition = {};\n\n if (_.options.fade === false) {\n transition[_.transitionType] = _.transformType + ' ' + _.options.speed + 'ms ' + _.options.cssEase;\n } else {\n transition[_.transitionType] = 'opacity ' + _.options.speed + 'ms ' + _.options.cssEase;\n }\n\n if (_.options.fade === false) {\n _.$slideTrack.css(transition);\n } else {\n _.$slides.eq(slide).css(transition);\n }\n\n };\n\n Slick.prototype.autoPlay = function() {\n\n var _ = this;\n\n if (_.autoPlayTimer) {\n clearInterval(_.autoPlayTimer);\n }\n\n if (_.slideCount > _.options.slidesToShow && _.paused !== true) {\n _.autoPlayTimer = setInterval(_.autoPlayIterator,\n _.options.autoplaySpeed);\n }\n\n };\n\n Slick.prototype.autoPlayClear = function() {\n\n var _ = this;\n if (_.autoPlayTimer) {\n clearInterval(_.autoPlayTimer);\n }\n\n };\n\n Slick.prototype.autoPlayIterator = function() {\n\n var _ = this;\n\n if (_.options.infinite === false) {\n\n if (_.direction === 1) {\n\n if ((_.currentSlide + 1) === _.slideCount -\n 1) {\n _.direction = 0;\n }\n\n _.slideHandler(_.currentSlide + _.options.slidesToScroll);\n\n } else {\n\n if ((_.currentSlide - 1 === 0)) {\n\n _.direction = 1;\n\n }\n\n _.slideHandler(_.currentSlide - _.options.slidesToScroll);\n\n }\n\n } else {\n\n _.slideHandler(_.currentSlide + _.options.slidesToScroll);\n\n }\n\n };\n\n Slick.prototype.buildArrows = function() {\n\n var _ = this;\n\n if (_.options.arrows === true ) {\n\n _.$prevArrow = $(_.options.prevArrow).addClass('slick-arrow');\n _.$nextArrow = $(_.options.nextArrow).addClass('slick-arrow');\n\n if( _.slideCount > _.options.slidesToShow ) {\n\n _.$prevArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');\n _.$nextArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');\n\n if (_.htmlExpr.test(_.options.prevArrow)) {\n _.$prevArrow.prependTo(_.options.appendArrows);\n }\n\n if (_.htmlExpr.test(_.options.nextArrow)) {\n _.$nextArrow.appendTo(_.options.appendArrows);\n }\n\n if (_.options.infinite !== true) {\n _.$prevArrow\n .addClass('slick-disabled')\n .attr('aria-disabled', 'true');\n }\n\n } else {\n\n _.$prevArrow.add( _.$nextArrow )\n\n .addClass('slick-hidden')\n .attr({\n 'aria-disabled': 'true',\n 'tabindex': '-1'\n });\n\n }\n\n }\n\n };\n\n Slick.prototype.buildDots = function() {\n\n var _ = this,\n i, dotString;\n\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\n\n dotString = '';\n\n _.$dots = $(dotString).appendTo(\n _.options.appendDots);\n\n _.$dots.find('li').first().addClass('slick-active').attr('aria-hidden', 'false');\n\n }\n\n };\n\n Slick.prototype.buildOut = function() {\n\n var _ = this;\n\n _.$slides =\n _.$slider\n .children( _.options.slide + ':not(.slick-cloned)')\n .addClass('slick-slide');\n\n _.slideCount = _.$slides.length;\n\n _.$slides.each(function(index, element) {\n $(element)\n .attr('data-slick-index', index)\n .data('originalStyling', $(element).attr('style') || '');\n });\n\n _.$slider.addClass('slick-slider');\n\n _.$slideTrack = (_.slideCount === 0) ?\n $('
').appendTo(_.$slider) :\n _.$slides.wrapAll('
').parent();\n\n _.$list = _.$slideTrack.wrap(\n '
').parent();\n _.$slideTrack.css('opacity', 0);\n\n if (_.options.centerMode === true || _.options.swipeToSlide === true) {\n _.options.slidesToScroll = 1;\n }\n\n $('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');\n\n _.setupInfinite();\n\n _.buildArrows();\n\n _.buildDots();\n\n _.updateDots();\n\n\n _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);\n\n if (_.options.draggable === true) {\n _.$list.addClass('draggable');\n }\n\n };\n\n Slick.prototype.buildRows = function() {\n\n var _ = this, a, b, c, newSlides, numOfSlides, originalSlides,slidesPerSection;\n\n newSlides = document.createDocumentFragment();\n originalSlides = _.$slider.children();\n\n if(_.options.rows > 1) {\n\n slidesPerSection = _.options.slidesPerRow * _.options.rows;\n numOfSlides = Math.ceil(\n originalSlides.length / slidesPerSection\n );\n\n for(a = 0; a < numOfSlides; a++){\n var slide = document.createElement('div');\n for(b = 0; b < _.options.rows; b++) {\n var row = document.createElement('div');\n for(c = 0; c < _.options.slidesPerRow; c++) {\n var target = (a * slidesPerSection + ((b * _.options.slidesPerRow) + c));\n if (originalSlides.get(target)) {\n row.appendChild(originalSlides.get(target));\n }\n }\n slide.appendChild(row);\n }\n newSlides.appendChild(slide);\n }\n\n _.$slider.html(newSlides);\n _.$slider.children().children().children()\n .css({\n 'width':(100 / _.options.slidesPerRow) + '%',\n 'display': 'inline-block'\n });\n\n }\n\n };\n\n Slick.prototype.checkResponsive = function(initial, forceUpdate) {\n\n var _ = this,\n breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint = false;\n var sliderWidth = _.$slider.width();\n var windowWidth = window.innerWidth || $(window).width();\n\n if (_.respondTo === 'window') {\n respondToWidth = windowWidth;\n } else if (_.respondTo === 'slider') {\n respondToWidth = sliderWidth;\n } else if (_.respondTo === 'min') {\n respondToWidth = Math.min(windowWidth, sliderWidth);\n }\n\n if ( _.options.responsive &&\n _.options.responsive.length &&\n _.options.responsive !== null) {\n\n targetBreakpoint = null;\n\n for (breakpoint in _.breakpoints) {\n if (_.breakpoints.hasOwnProperty(breakpoint)) {\n if (_.originalSettings.mobileFirst === false) {\n if (respondToWidth < _.breakpoints[breakpoint]) {\n targetBreakpoint = _.breakpoints[breakpoint];\n }\n } else {\n if (respondToWidth > _.breakpoints[breakpoint]) {\n targetBreakpoint = _.breakpoints[breakpoint];\n }\n }\n }\n }\n\n if (targetBreakpoint !== null) {\n if (_.activeBreakpoint !== null) {\n if (targetBreakpoint !== _.activeBreakpoint || forceUpdate) {\n _.activeBreakpoint =\n targetBreakpoint;\n if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\n _.unslick(targetBreakpoint);\n } else {\n _.options = $.extend({}, _.originalSettings,\n _.breakpointSettings[\n targetBreakpoint]);\n if (initial === true) {\n _.currentSlide = _.options.initialSlide;\n }\n _.refresh(initial);\n }\n triggerBreakpoint = targetBreakpoint;\n }\n } else {\n _.activeBreakpoint = targetBreakpoint;\n if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\n _.unslick(targetBreakpoint);\n } else {\n _.options = $.extend({}, _.originalSettings,\n _.breakpointSettings[\n targetBreakpoint]);\n if (initial === true) {\n _.currentSlide = _.options.initialSlide;\n }\n _.refresh(initial);\n }\n triggerBreakpoint = targetBreakpoint;\n }\n } else {\n if (_.activeBreakpoint !== null) {\n _.activeBreakpoint = null;\n _.options = _.originalSettings;\n if (initial === true) {\n _.currentSlide = _.options.initialSlide;\n }\n _.refresh(initial);\n triggerBreakpoint = targetBreakpoint;\n }\n }\n\n // only trigger breakpoints during an actual break. not on initialize.\n if( !initial && triggerBreakpoint !== false ) {\n _.$slider.trigger('breakpoint', [_, triggerBreakpoint]);\n }\n }\n\n };\n\n Slick.prototype.changeSlide = function(event, dontAnimate) {\n\n var _ = this,\n $target = $(event.target),\n indexOffset, slideOffset, unevenOffset;\n\n // If target is a link, prevent default action.\n if($target.is('a')) {\n event.preventDefault();\n }\n\n // If target is not the
  • element (ie: a child), find the
  • .\n if(!$target.is('li')) {\n $target = $target.closest('li');\n }\n\n unevenOffset = (_.slideCount % _.options.slidesToScroll !== 0);\n indexOffset = unevenOffset ? 0 : (_.slideCount - _.currentSlide) % _.options.slidesToScroll;\n\n switch (event.data.message) {\n\n case 'previous':\n slideOffset = indexOffset === 0 ? _.options.slidesToScroll : _.options.slidesToShow - indexOffset;\n if (_.slideCount > _.options.slidesToShow) {\n _.slideHandler(_.currentSlide - slideOffset, false, dontAnimate);\n }\n break;\n\n case 'next':\n slideOffset = indexOffset === 0 ? _.options.slidesToScroll : indexOffset;\n if (_.slideCount > _.options.slidesToShow) {\n _.slideHandler(_.currentSlide + slideOffset, false, dontAnimate);\n }\n break;\n\n case 'index':\n var index = event.data.index === 0 ? 0 :\n event.data.index || $target.index() * _.options.slidesToScroll;\n\n _.slideHandler(_.checkNavigable(index), false, dontAnimate);\n $target.children().trigger('focus');\n break;\n\n default:\n return;\n }\n\n };\n\n Slick.prototype.checkNavigable = function(index) {\n\n var _ = this,\n navigables, prevNavigable;\n\n navigables = _.getNavigableIndexes();\n prevNavigable = 0;\n if (index > navigables[navigables.length - 1]) {\n index = navigables[navigables.length - 1];\n } else {\n for (var n in navigables) {\n if (index < navigables[n]) {\n index = prevNavigable;\n break;\n }\n prevNavigable = navigables[n];\n }\n }\n\n return index;\n };\n\n Slick.prototype.cleanUpEvents = function() {\n\n var _ = this;\n\n if (_.options.dots && _.$dots !== null) {\n\n $('li', _.$dots).off('click.slick', _.changeSlide);\n\n if (_.options.pauseOnDotsHover === true && _.options.autoplay === true) {\n\n $('li', _.$dots)\n .off('mouseenter.slick', $.proxy(_.setPaused, _, true))\n .off('mouseleave.slick', $.proxy(_.setPaused, _, false));\n\n }\n\n }\n\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\n _.$prevArrow && _.$prevArrow.off('click.slick', _.changeSlide);\n _.$nextArrow && _.$nextArrow.off('click.slick', _.changeSlide);\n }\n\n _.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);\n _.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);\n _.$list.off('touchend.slick mouseup.slick', _.swipeHandler);\n _.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);\n\n _.$list.off('click.slick', _.clickHandler);\n\n $(document).off(_.visibilityChange, _.visibility);\n\n _.$list.off('mouseenter.slick', $.proxy(_.setPaused, _, true));\n _.$list.off('mouseleave.slick', $.proxy(_.setPaused, _, false));\n\n if (_.options.accessibility === true) {\n _.$list.off('keydown.slick', _.keyHandler);\n }\n\n if (_.options.focusOnSelect === true) {\n $(_.$slideTrack).children().off('click.slick', _.selectHandler);\n }\n\n $(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);\n\n $(window).off('resize.slick.slick-' + _.instanceUid, _.resize);\n\n $('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);\n\n $(window).off('load.slick.slick-' + _.instanceUid, _.setPosition);\n $(document).off('ready.slick.slick-' + _.instanceUid, _.setPosition);\n };\n\n Slick.prototype.cleanUpRows = function() {\n\n var _ = this, originalSlides;\n\n if(_.options.rows > 1) {\n originalSlides = _.$slides.children().children();\n originalSlides.removeAttr('style');\n _.$slider.html(originalSlides);\n }\n\n };\n\n Slick.prototype.clickHandler = function(event) {\n\n var _ = this;\n\n if (_.shouldClick === false) {\n event.stopImmediatePropagation();\n event.stopPropagation();\n event.preventDefault();\n }\n\n };\n\n Slick.prototype.destroy = function(refresh) {\n\n var _ = this;\n\n _.autoPlayClear();\n\n _.touchObject = {};\n\n _.cleanUpEvents();\n\n $('.slick-cloned', _.$slider).detach();\n\n if (_.$dots) {\n _.$dots.remove();\n }\n\n\n if ( _.$prevArrow && _.$prevArrow.length ) {\n\n _.$prevArrow\n .removeClass('slick-disabled slick-arrow slick-hidden')\n .removeAttr('aria-hidden aria-disabled tabindex')\n .css(\"display\",\"\");\n\n if ( _.htmlExpr.test( _.options.prevArrow )) {\n _.$prevArrow.remove();\n }\n }\n\n if ( _.$nextArrow && _.$nextArrow.length ) {\n\n _.$nextArrow\n .removeClass('slick-disabled slick-arrow slick-hidden')\n .removeAttr('aria-hidden aria-disabled tabindex')\n .css(\"display\",\"\");\n\n if ( _.htmlExpr.test( _.options.nextArrow )) {\n _.$nextArrow.remove();\n }\n\n }\n\n\n if (_.$slides) {\n\n _.$slides\n .removeClass('slick-slide slick-active slick-center slick-visible slick-current')\n .removeAttr('aria-hidden')\n .removeAttr('data-slick-index')\n .each(function(){\n $(this).attr('style', $(this).data('originalStyling'));\n });\n\n _.$slideTrack.children(this.options.slide).detach();\n\n _.$slideTrack.detach();\n\n _.$list.detach();\n\n _.$slider.append(_.$slides);\n }\n\n _.cleanUpRows();\n\n _.$slider.removeClass('slick-slider');\n _.$slider.removeClass('slick-initialized');\n\n _.unslicked = true;\n\n if(!refresh) {\n _.$slider.trigger('destroy', [_]);\n }\n\n };\n\n Slick.prototype.disableTransition = function(slide) {\n\n var _ = this,\n transition = {};\n\n transition[_.transitionType] = '';\n\n if (_.options.fade === false) {\n _.$slideTrack.css(transition);\n } else {\n _.$slides.eq(slide).css(transition);\n }\n\n };\n\n Slick.prototype.fadeSlide = function(slideIndex, callback) {\n\n var _ = this;\n\n if (_.cssTransitions === false) {\n\n _.$slides.eq(slideIndex).css({\n zIndex: _.options.zIndex\n });\n\n _.$slides.eq(slideIndex).animate({\n opacity: 1\n }, _.options.speed, _.options.easing, callback);\n\n } else {\n\n _.applyTransition(slideIndex);\n\n _.$slides.eq(slideIndex).css({\n opacity: 1,\n zIndex: _.options.zIndex\n });\n\n if (callback) {\n setTimeout(function() {\n\n _.disableTransition(slideIndex);\n\n callback.call();\n }, _.options.speed);\n }\n\n }\n\n };\n\n Slick.prototype.fadeSlideOut = function(slideIndex) {\n\n var _ = this;\n\n if (_.cssTransitions === false) {\n\n _.$slides.eq(slideIndex).animate({\n opacity: 0,\n zIndex: _.options.zIndex - 2\n }, _.options.speed, _.options.easing);\n\n } else {\n\n _.applyTransition(slideIndex);\n\n _.$slides.eq(slideIndex).css({\n opacity: 0,\n zIndex: _.options.zIndex - 2\n });\n\n }\n\n };\n\n Slick.prototype.filterSlides = Slick.prototype.slickFilter = function(filter) {\n\n var _ = this;\n\n if (filter !== null) {\n\n _.$slidesCache = _.$slides;\n\n _.unload();\n\n _.$slideTrack.children(this.options.slide).detach();\n\n _.$slidesCache.filter(filter).appendTo(_.$slideTrack);\n\n _.reinit();\n\n }\n\n };\n\n Slick.prototype.getCurrent = Slick.prototype.slickCurrentSlide = function() {\n\n var _ = this;\n return _.currentSlide;\n\n };\n\n Slick.prototype.getDotCount = function() {\n\n var _ = this;\n\n var breakPoint = 0;\n var counter = 0;\n var pagerQty = 0;\n\n if (_.options.infinite === true) {\n while (breakPoint < _.slideCount) {\n ++pagerQty;\n breakPoint = counter + _.options.slidesToScroll;\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\n }\n } else if (_.options.centerMode === true) {\n pagerQty = _.slideCount;\n } else {\n while (breakPoint < _.slideCount) {\n ++pagerQty;\n breakPoint = counter + _.options.slidesToScroll;\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\n }\n }\n\n return pagerQty - 1;\n\n };\n\n Slick.prototype.getLeft = function(slideIndex) {\n\n var _ = this,\n targetLeft,\n verticalHeight,\n verticalOffset = 0,\n targetSlide;\n\n _.slideOffset = 0;\n verticalHeight = _.$slides.first().outerHeight(true);\n\n if (_.options.infinite === true) {\n if (_.slideCount > _.options.slidesToShow) {\n _.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;\n verticalOffset = (verticalHeight * _.options.slidesToShow) * -1;\n }\n if (_.slideCount % _.options.slidesToScroll !== 0) {\n if (slideIndex + _.options.slidesToScroll > _.slideCount && _.slideCount > _.options.slidesToShow) {\n if (slideIndex > _.slideCount) {\n _.slideOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * _.slideWidth) * -1;\n verticalOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1;\n } else {\n _.slideOffset = ((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;\n verticalOffset = ((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1;\n }\n }\n }\n } else {\n if (slideIndex + _.options.slidesToShow > _.slideCount) {\n _.slideOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;\n verticalOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight;\n }\n }\n\n if (_.slideCount <= _.options.slidesToShow) {\n _.slideOffset = 0;\n verticalOffset = 0;\n }\n\n if (_.options.centerMode === true && _.options.infinite === true) {\n _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth;\n } else if (_.options.centerMode === true) {\n _.slideOffset = 0;\n _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2);\n }\n\n if (_.options.vertical === false) {\n targetLeft = ((slideIndex * _.slideWidth) * -1) + _.slideOffset;\n } else {\n targetLeft = ((slideIndex * verticalHeight) * -1) + verticalOffset;\n }\n\n if (_.options.variableWidth === true) {\n\n if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\n } else {\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow);\n }\n\n if (_.options.rtl === true) {\n if (targetSlide[0]) {\n targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\n } else {\n targetLeft = 0;\n }\n } else {\n targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\n }\n\n if (_.options.centerMode === true) {\n if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\n } else {\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1);\n }\n\n if (_.options.rtl === true) {\n if (targetSlide[0]) {\n targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\n } else {\n targetLeft = 0;\n }\n } else {\n targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\n }\n\n targetLeft += (_.$list.width() - targetSlide.outerWidth()) / 2;\n }\n }\n\n return targetLeft;\n\n };\n\n Slick.prototype.getOption = Slick.prototype.slickGetOption = function(option) {\n\n var _ = this;\n\n return _.options[option];\n\n };\n\n Slick.prototype.getNavigableIndexes = function() {\n\n var _ = this,\n breakPoint = 0,\n counter = 0,\n indexes = [],\n max;\n\n if (_.options.infinite === false) {\n max = _.slideCount;\n } else {\n breakPoint = _.options.slidesToScroll * -1;\n counter = _.options.slidesToScroll * -1;\n max = _.slideCount * 2;\n }\n\n while (breakPoint < max) {\n indexes.push(breakPoint);\n breakPoint = counter + _.options.slidesToScroll;\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\n }\n\n return indexes;\n\n };\n\n Slick.prototype.getSlick = function() {\n\n return this;\n\n };\n\n Slick.prototype.getSlideCount = function() {\n\n var _ = this,\n slidesTraversed, swipedSlide, centerOffset;\n\n centerOffset = _.options.centerMode === true ? _.slideWidth * Math.floor(_.options.slidesToShow / 2) : 0;\n\n if (_.options.swipeToSlide === true) {\n _.$slideTrack.find('.slick-slide').each(function(index, slide) {\n if (slide.offsetLeft - centerOffset + ($(slide).outerWidth() / 2) > (_.swipeLeft * -1)) {\n swipedSlide = slide;\n return false;\n }\n });\n\n slidesTraversed = Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide) || 1;\n\n return slidesTraversed;\n\n } else {\n return _.options.slidesToScroll;\n }\n\n };\n\n Slick.prototype.goTo = Slick.prototype.slickGoTo = function(slide, dontAnimate) {\n\n var _ = this;\n\n _.changeSlide({\n data: {\n message: 'index',\n index: parseInt(slide)\n }\n }, dontAnimate);\n\n };\n\n Slick.prototype.init = function(creation) {\n\n var _ = this;\n\n if (!$(_.$slider).hasClass('slick-initialized')) {\n\n $(_.$slider).addClass('slick-initialized');\n\n _.buildRows();\n _.buildOut();\n _.setProps();\n _.startLoad();\n _.loadSlider();\n _.initializeEvents();\n _.updateArrows();\n _.updateDots();\n\n }\n\n if (creation) {\n _.$slider.trigger('init', [_]);\n }\n\n if (_.options.accessibility === true) {\n _.initADA();\n }\n\n };\n\n Slick.prototype.initArrowEvents = function() {\n\n var _ = this;\n\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\n _.$prevArrow.on('click.slick', {\n message: 'previous'\n }, _.changeSlide);\n _.$nextArrow.on('click.slick', {\n message: 'next'\n }, _.changeSlide);\n }\n\n };\n\n Slick.prototype.initDotEvents = function() {\n\n var _ = this;\n\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\n $('li', _.$dots).on('click.slick', {\n message: 'index'\n }, _.changeSlide);\n }\n\n if (_.options.dots === true && _.options.pauseOnDotsHover === true && _.options.autoplay === true) {\n $('li', _.$dots)\n .on('mouseenter.slick', $.proxy(_.setPaused, _, true))\n .on('mouseleave.slick', $.proxy(_.setPaused, _, false));\n }\n\n };\n\n Slick.prototype.initializeEvents = function() {\n\n var _ = this;\n\n _.initArrowEvents();\n\n _.initDotEvents();\n\n _.$list.on('touchstart.slick mousedown.slick', {\n action: 'start'\n }, _.swipeHandler);\n _.$list.on('touchmove.slick mousemove.slick', {\n action: 'move'\n }, _.swipeHandler);\n _.$list.on('touchend.slick mouseup.slick', {\n action: 'end'\n }, _.swipeHandler);\n _.$list.on('touchcancel.slick mouseleave.slick', {\n action: 'end'\n }, _.swipeHandler);\n\n _.$list.on('click.slick', _.clickHandler);\n\n $(document).on(_.visibilityChange, $.proxy(_.visibility, _));\n\n _.$list.on('mouseenter.slick', $.proxy(_.setPaused, _, true));\n _.$list.on('mouseleave.slick', $.proxy(_.setPaused, _, false));\n\n if (_.options.accessibility === true) {\n _.$list.on('keydown.slick', _.keyHandler);\n }\n\n if (_.options.focusOnSelect === true) {\n $(_.$slideTrack).children().on('click.slick', _.selectHandler);\n }\n\n $(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));\n\n $(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));\n\n $('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);\n\n $(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);\n $(document).on('ready.slick.slick-' + _.instanceUid, _.setPosition);\n\n };\n\n Slick.prototype.initUI = function() {\n\n var _ = this;\n\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\n\n _.$prevArrow.show();\n _.$nextArrow.show();\n\n }\n\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\n\n _.$dots.show();\n\n }\n\n if (_.options.autoplay === true) {\n\n _.autoPlay();\n\n }\n\n };\n\n Slick.prototype.keyHandler = function(event) {\n\n var _ = this;\n //Dont slide if the cursor is inside the form fields and arrow keys are pressed\n if(!event.target.tagName.match('TEXTAREA|INPUT|SELECT')) {\n if (event.keyCode === 37 && _.options.accessibility === true) {\n _.changeSlide({\n data: {\n message: 'previous'\n }\n });\n } else if (event.keyCode === 39 && _.options.accessibility === true) {\n _.changeSlide({\n data: {\n message: 'next'\n }\n });\n }\n }\n\n };\n\n Slick.prototype.lazyLoad = function() {\n\n var _ = this,\n loadRange, cloneRange, rangeStart, rangeEnd;\n\n function loadImages(imagesScope) {\n $('img[data-lazy]', imagesScope).each(function() {\n\n var image = $(this),\n imageSource = $(this).attr('data-lazy'),\n imageToLoad = document.createElement('img');\n\n imageToLoad.onload = function() {\n image\n .animate({ opacity: 0 }, 100, function() {\n image\n .attr('src', imageSource)\n .animate({ opacity: 1 }, 200, function() {\n image\n .removeAttr('data-lazy')\n .removeClass('slick-loading');\n });\n });\n };\n\n imageToLoad.src = imageSource;\n\n });\n }\n\n if (_.options.centerMode === true) {\n if (_.options.infinite === true) {\n rangeStart = _.currentSlide + (_.options.slidesToShow / 2 + 1);\n rangeEnd = rangeStart + _.options.slidesToShow + 2;\n } else {\n rangeStart = Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));\n rangeEnd = 2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide;\n }\n } else {\n rangeStart = _.options.infinite ? _.options.slidesToShow + _.currentSlide : _.currentSlide;\n rangeEnd = rangeStart + _.options.slidesToShow;\n if (_.options.fade === true) {\n if (rangeStart > 0) rangeStart--;\n if (rangeEnd <= _.slideCount) rangeEnd++;\n }\n }\n\n loadRange = _.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);\n loadImages(loadRange);\n\n if (_.slideCount <= _.options.slidesToShow) {\n cloneRange = _.$slider.find('.slick-slide');\n loadImages(cloneRange);\n } else\n if (_.currentSlide >= _.slideCount - _.options.slidesToShow) {\n cloneRange = _.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);\n loadImages(cloneRange);\n } else if (_.currentSlide === 0) {\n cloneRange = _.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);\n loadImages(cloneRange);\n }\n\n };\n\n Slick.prototype.loadSlider = function() {\n\n var _ = this;\n\n _.setPosition();\n\n _.$slideTrack.css({\n opacity: 1\n });\n\n _.$slider.removeClass('slick-loading');\n\n _.initUI();\n\n if (_.options.lazyLoad === 'progressive') {\n _.progressiveLazyLoad();\n }\n\n };\n\n Slick.prototype.next = Slick.prototype.slickNext = function() {\n\n var _ = this;\n\n _.changeSlide({\n data: {\n message: 'next'\n }\n });\n\n };\n\n Slick.prototype.orientationChange = function() {\n\n var _ = this;\n\n _.checkResponsive();\n _.setPosition();\n\n };\n\n Slick.prototype.pause = Slick.prototype.slickPause = function() {\n\n var _ = this;\n\n _.autoPlayClear();\n _.paused = true;\n\n };\n\n Slick.prototype.play = Slick.prototype.slickPlay = function() {\n\n var _ = this;\n\n _.paused = false;\n _.autoPlay();\n\n };\n\n Slick.prototype.postSlide = function(index) {\n\n var _ = this;\n\n _.$slider.trigger('afterChange', [_, index]);\n\n _.animating = false;\n\n _.setPosition();\n\n _.swipeLeft = null;\n\n if (_.options.autoplay === true && _.paused === false) {\n _.autoPlay();\n }\n if (_.options.accessibility === true) {\n _.initADA();\n }\n\n };\n\n Slick.prototype.prev = Slick.prototype.slickPrev = function() {\n\n var _ = this;\n\n _.changeSlide({\n data: {\n message: 'previous'\n }\n });\n\n };\n\n Slick.prototype.preventDefault = function(event) {\n event.preventDefault();\n };\n\n Slick.prototype.progressiveLazyLoad = function() {\n\n var _ = this,\n imgCount, targetImage;\n\n imgCount = $('img[data-lazy]', _.$slider).length;\n\n if (imgCount > 0) {\n targetImage = $('img[data-lazy]', _.$slider).first();\n targetImage.attr('src', null);\n targetImage.attr('src', targetImage.attr('data-lazy')).removeClass('slick-loading').load(function() {\n targetImage.removeAttr('data-lazy');\n _.progressiveLazyLoad();\n\n if (_.options.adaptiveHeight === true) {\n _.setPosition();\n }\n })\n .error(function() {\n targetImage.removeAttr('data-lazy');\n _.progressiveLazyLoad();\n });\n }\n\n };\n\n Slick.prototype.refresh = function( initializing ) {\n\n var _ = this, currentSlide, firstVisible;\n\n firstVisible = _.slideCount - _.options.slidesToShow;\n\n // check that the new breakpoint can actually accept the\n // \"current slide\" as the current slide, otherwise we need\n // to set it to the closest possible value.\n if ( !_.options.infinite ) {\n if ( _.slideCount <= _.options.slidesToShow ) {\n _.currentSlide = 0;\n } else if ( _.currentSlide > firstVisible ) {\n _.currentSlide = firstVisible;\n }\n }\n\n currentSlide = _.currentSlide;\n\n _.destroy(true);\n\n $.extend(_, _.initials, { currentSlide: currentSlide });\n\n _.init();\n\n if( !initializing ) {\n\n _.changeSlide({\n data: {\n message: 'index',\n index: currentSlide\n }\n }, false);\n\n }\n\n };\n\n Slick.prototype.registerBreakpoints = function() {\n\n var _ = this, breakpoint, currentBreakpoint, l,\n responsiveSettings = _.options.responsive || null;\n\n if ( $.type(responsiveSettings) === \"array\" && responsiveSettings.length ) {\n\n _.respondTo = _.options.respondTo || 'window';\n\n for ( breakpoint in responsiveSettings ) {\n\n l = _.breakpoints.length-1;\n currentBreakpoint = responsiveSettings[breakpoint].breakpoint;\n\n if (responsiveSettings.hasOwnProperty(breakpoint)) {\n\n // loop through the breakpoints and cut out any existing\n // ones with the same breakpoint number, we don't want dupes.\n while( l >= 0 ) {\n if( _.breakpoints[l] && _.breakpoints[l] === currentBreakpoint ) {\n _.breakpoints.splice(l,1);\n }\n l--;\n }\n\n _.breakpoints.push(currentBreakpoint);\n _.breakpointSettings[currentBreakpoint] = responsiveSettings[breakpoint].settings;\n\n }\n\n }\n\n _.breakpoints.sort(function(a, b) {\n return ( _.options.mobileFirst ) ? a-b : b-a;\n });\n\n }\n\n };\n\n Slick.prototype.reinit = function() {\n\n var _ = this;\n\n _.$slides =\n _.$slideTrack\n .children(_.options.slide)\n .addClass('slick-slide');\n\n _.slideCount = _.$slides.length;\n\n if (_.currentSlide >= _.slideCount && _.currentSlide !== 0) {\n _.currentSlide = _.currentSlide - _.options.slidesToScroll;\n }\n\n if (_.slideCount <= _.options.slidesToShow) {\n _.currentSlide = 0;\n }\n\n _.registerBreakpoints();\n\n _.setProps();\n _.setupInfinite();\n _.buildArrows();\n _.updateArrows();\n _.initArrowEvents();\n _.buildDots();\n _.updateDots();\n _.initDotEvents();\n\n _.checkResponsive(false, true);\n\n if (_.options.focusOnSelect === true) {\n $(_.$slideTrack).children().on('click.slick', _.selectHandler);\n }\n\n _.setSlideClasses(0);\n\n _.setPosition();\n\n _.$slider.trigger('reInit', [_]);\n\n if (_.options.autoplay === true) {\n _.focusHandler();\n }\n\n };\n\n Slick.prototype.resize = function() {\n\n var _ = this;\n\n if ($(window).width() !== _.windowWidth) {\n clearTimeout(_.windowDelay);\n _.windowDelay = window.setTimeout(function() {\n _.windowWidth = $(window).width();\n _.checkResponsive();\n if( !_.unslicked ) { _.setPosition(); }\n }, 50);\n }\n };\n\n Slick.prototype.removeSlide = Slick.prototype.slickRemove = function(index, removeBefore, removeAll) {\n\n var _ = this;\n\n if (typeof(index) === 'boolean') {\n removeBefore = index;\n index = removeBefore === true ? 0 : _.slideCount - 1;\n } else {\n index = removeBefore === true ? --index : index;\n }\n\n if (_.slideCount < 1 || index < 0 || index > _.slideCount - 1) {\n return false;\n }\n\n _.unload();\n\n if (removeAll === true) {\n _.$slideTrack.children().remove();\n } else {\n _.$slideTrack.children(this.options.slide).eq(index).remove();\n }\n\n _.$slides = _.$slideTrack.children(this.options.slide);\n\n _.$slideTrack.children(this.options.slide).detach();\n\n _.$slideTrack.append(_.$slides);\n\n _.$slidesCache = _.$slides;\n\n _.reinit();\n\n };\n\n Slick.prototype.setCSS = function(position) {\n\n var _ = this,\n positionProps = {},\n x, y;\n\n if (_.options.rtl === true) {\n position = -position;\n }\n x = _.positionProp == 'left' ? Math.ceil(position) + 'px' : '0px';\n y = _.positionProp == 'top' ? Math.ceil(position) + 'px' : '0px';\n\n positionProps[_.positionProp] = position;\n\n if (_.transformsEnabled === false) {\n _.$slideTrack.css(positionProps);\n } else {\n positionProps = {};\n if (_.cssTransitions === false) {\n positionProps[_.animType] = 'translate(' + x + ', ' + y + ')';\n _.$slideTrack.css(positionProps);\n } else {\n positionProps[_.animType] = 'translate3d(' + x + ', ' + y + ', 0px)';\n _.$slideTrack.css(positionProps);\n }\n }\n\n };\n\n Slick.prototype.setDimensions = function() {\n\n var _ = this;\n\n if (_.options.vertical === false) {\n if (_.options.centerMode === true) {\n _.$list.css({\n padding: ('0px ' + _.options.centerPadding)\n });\n }\n } else {\n _.$list.height(_.$slides.first().outerHeight(true) * _.options.slidesToShow);\n if (_.options.centerMode === true) {\n _.$list.css({\n padding: (_.options.centerPadding + ' 0px')\n });\n }\n }\n\n _.listWidth = _.$list.width();\n _.listHeight = _.$list.height();\n\n\n if (_.options.vertical === false && _.options.variableWidth === false) {\n _.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);\n _.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)));\n\n } else if (_.options.variableWidth === true) {\n _.$slideTrack.width(5000 * _.slideCount);\n } else {\n _.slideWidth = Math.ceil(_.listWidth);\n _.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));\n }\n\n var offset = _.$slides.first().outerWidth(true) - _.$slides.first().width();\n if (_.options.variableWidth === false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);\n\n };\n\n Slick.prototype.setFade = function() {\n\n var _ = this,\n targetLeft;\n\n _.$slides.each(function(index, element) {\n targetLeft = (_.slideWidth * index) * -1;\n if (_.options.rtl === true) {\n $(element).css({\n position: 'relative',\n right: targetLeft,\n top: 0,\n zIndex: _.options.zIndex - 2,\n opacity: 0\n });\n } else {\n $(element).css({\n position: 'relative',\n left: targetLeft,\n top: 0,\n zIndex: _.options.zIndex - 2,\n opacity: 0\n });\n }\n });\n\n _.$slides.eq(_.currentSlide).css({\n zIndex: _.options.zIndex - 1,\n opacity: 1\n });\n\n };\n\n Slick.prototype.setHeight = function() {\n\n var _ = this;\n\n if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {\n var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);\n _.$list.css('height', targetHeight);\n }\n\n };\n\n Slick.prototype.setOption = Slick.prototype.slickSetOption = function(option, value, refresh) {\n\n var _ = this, l, item;\n\n if( option === \"responsive\" && $.type(value) === \"array\" ) {\n for ( item in value ) {\n if( $.type( _.options.responsive ) !== \"array\" ) {\n _.options.responsive = [ value[item] ];\n } else {\n l = _.options.responsive.length-1;\n // loop through the responsive object and splice out duplicates.\n while( l >= 0 ) {\n if( _.options.responsive[l].breakpoint === value[item].breakpoint ) {\n _.options.responsive.splice(l,1);\n }\n l--;\n }\n _.options.responsive.push( value[item] );\n }\n }\n } else {\n _.options[option] = value;\n }\n\n if (refresh === true) {\n _.unload();\n _.reinit();\n }\n\n };\n\n Slick.prototype.setPosition = function() {\n\n var _ = this;\n\n _.setDimensions();\n\n _.setHeight();\n\n if (_.options.fade === false) {\n _.setCSS(_.getLeft(_.currentSlide));\n } else {\n _.setFade();\n }\n\n _.$slider.trigger('setPosition', [_]);\n\n };\n\n Slick.prototype.setProps = function() {\n\n var _ = this,\n bodyStyle = document.body.style;\n\n _.positionProp = _.options.vertical === true ? 'top' : 'left';\n\n if (_.positionProp === 'top') {\n _.$slider.addClass('slick-vertical');\n } else {\n _.$slider.removeClass('slick-vertical');\n }\n\n if (bodyStyle.WebkitTransition !== undefined ||\n bodyStyle.MozTransition !== undefined ||\n bodyStyle.msTransition !== undefined) {\n if (_.options.useCSS === true) {\n _.cssTransitions = true;\n }\n }\n\n if ( _.options.fade ) {\n if ( typeof _.options.zIndex === 'number' ) {\n if( _.options.zIndex < 3 ) {\n _.options.zIndex = 3;\n }\n } else {\n _.options.zIndex = _.defaults.zIndex;\n }\n }\n\n if (bodyStyle.OTransform !== undefined) {\n _.animType = 'OTransform';\n _.transformType = '-o-transform';\n _.transitionType = 'OTransition';\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\n }\n if (bodyStyle.MozTransform !== undefined) {\n _.animType = 'MozTransform';\n _.transformType = '-moz-transform';\n _.transitionType = 'MozTransition';\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.MozPerspective === undefined) _.animType = false;\n }\n if (bodyStyle.webkitTransform !== undefined) {\n _.animType = 'webkitTransform';\n _.transformType = '-webkit-transform';\n _.transitionType = 'webkitTransition';\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\n }\n if (bodyStyle.msTransform !== undefined) {\n _.animType = 'msTransform';\n _.transformType = '-ms-transform';\n _.transitionType = 'msTransition';\n if (bodyStyle.msTransform === undefined) _.animType = false;\n }\n if (bodyStyle.transform !== undefined && _.animType !== false) {\n _.animType = 'transform';\n _.transformType = 'transform';\n _.transitionType = 'transition';\n }\n _.transformsEnabled = _.options.useTransform && (_.animType !== null && _.animType !== false);\n };\n\n\n Slick.prototype.setSlideClasses = function(index) {\n\n var _ = this,\n centerOffset, allSlides, indexOffset, remainder;\n\n allSlides = _.$slider\n .find('.slick-slide')\n .removeClass('slick-active slick-center slick-current')\n .attr('aria-hidden', 'true');\n\n _.$slides\n .eq(index)\n .addClass('slick-current');\n\n if (_.options.centerMode === true) {\n\n centerOffset = Math.floor(_.options.slidesToShow / 2);\n\n if (_.options.infinite === true) {\n\n if (index >= centerOffset && index <= (_.slideCount - 1) - centerOffset) {\n\n _.$slides\n .slice(index - centerOffset, index + centerOffset + 1)\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n } else {\n\n indexOffset = _.options.slidesToShow + index;\n allSlides\n .slice(indexOffset - centerOffset + 1, indexOffset + centerOffset + 2)\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n }\n\n if (index === 0) {\n\n allSlides\n .eq(allSlides.length - 1 - _.options.slidesToShow)\n .addClass('slick-center');\n\n } else if (index === _.slideCount - 1) {\n\n allSlides\n .eq(_.options.slidesToShow)\n .addClass('slick-center');\n\n }\n\n }\n\n _.$slides\n .eq(index)\n .addClass('slick-center');\n\n } else {\n\n if (index >= 0 && index <= (_.slideCount - _.options.slidesToShow)) {\n\n _.$slides\n .slice(index, index + _.options.slidesToShow)\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n } else if (allSlides.length <= _.options.slidesToShow) {\n\n allSlides\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n } else {\n\n remainder = _.slideCount % _.options.slidesToShow;\n indexOffset = _.options.infinite === true ? _.options.slidesToShow + index : index;\n\n if (_.options.slidesToShow == _.options.slidesToScroll && (_.slideCount - index) < _.options.slidesToShow) {\n\n allSlides\n .slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder)\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n } else {\n\n allSlides\n .slice(indexOffset, indexOffset + _.options.slidesToShow)\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n }\n\n }\n\n }\n\n if (_.options.lazyLoad === 'ondemand') {\n _.lazyLoad();\n }\n\n };\n\n Slick.prototype.setupInfinite = function() {\n\n var _ = this,\n i, slideIndex, infiniteCount;\n\n if (_.options.fade === true) {\n _.options.centerMode = false;\n }\n\n if (_.options.infinite === true && _.options.fade === false) {\n\n slideIndex = null;\n\n if (_.slideCount > _.options.slidesToShow) {\n\n if (_.options.centerMode === true) {\n infiniteCount = _.options.slidesToShow + 1;\n } else {\n infiniteCount = _.options.slidesToShow;\n }\n\n for (i = _.slideCount; i > (_.slideCount -\n infiniteCount); i -= 1) {\n slideIndex = i - 1;\n $(_.$slides[slideIndex]).clone(true).attr('id', '')\n .attr('data-slick-index', slideIndex - _.slideCount)\n .prependTo(_.$slideTrack).addClass('slick-cloned');\n }\n for (i = 0; i < infiniteCount; i += 1) {\n slideIndex = i;\n $(_.$slides[slideIndex]).clone(true).attr('id', '')\n .attr('data-slick-index', slideIndex + _.slideCount)\n .appendTo(_.$slideTrack).addClass('slick-cloned');\n }\n _.$slideTrack.find('.slick-cloned').find('[id]').each(function() {\n $(this).attr('id', '');\n });\n\n }\n\n }\n\n };\n\n Slick.prototype.setPaused = function(paused) {\n\n var _ = this;\n\n if (_.options.autoplay === true && _.options.pauseOnHover === true) {\n _.paused = paused;\n if (!paused) {\n _.autoPlay();\n } else {\n _.autoPlayClear();\n }\n }\n };\n\n Slick.prototype.selectHandler = function(event) {\n\n var _ = this;\n\n var targetElement =\n $(event.target).is('.slick-slide') ?\n $(event.target) :\n $(event.target).parents('.slick-slide');\n\n var index = parseInt(targetElement.attr('data-slick-index'));\n\n if (!index) index = 0;\n\n if (_.slideCount <= _.options.slidesToShow) {\n\n _.setSlideClasses(index);\n _.asNavFor(index);\n return;\n\n }\n\n _.slideHandler(index);\n\n };\n\n Slick.prototype.slideHandler = function(index, sync, dontAnimate) {\n\n var targetSlide, animSlide, oldSlide, slideLeft, targetLeft = null,\n _ = this;\n\n sync = sync || false;\n\n if (_.animating === true && _.options.waitForAnimate === true) {\n return;\n }\n\n if (_.options.fade === true && _.currentSlide === index) {\n return;\n }\n\n if (_.slideCount <= _.options.slidesToShow) {\n return;\n }\n\n if (sync === false) {\n _.asNavFor(index);\n }\n\n targetSlide = index;\n targetLeft = _.getLeft(targetSlide);\n slideLeft = _.getLeft(_.currentSlide);\n\n _.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;\n\n if (_.options.infinite === false && _.options.centerMode === false && (index < 0 || index > _.getDotCount() * _.options.slidesToScroll)) {\n if (_.options.fade === false) {\n targetSlide = _.currentSlide;\n if (dontAnimate !== true) {\n _.animateSlide(slideLeft, function() {\n _.postSlide(targetSlide);\n });\n } else {\n _.postSlide(targetSlide);\n }\n }\n return;\n } else if (_.options.infinite === false && _.options.centerMode === true && (index < 0 || index > (_.slideCount - _.options.slidesToScroll))) {\n if (_.options.fade === false) {\n targetSlide = _.currentSlide;\n if (dontAnimate !== true) {\n _.animateSlide(slideLeft, function() {\n _.postSlide(targetSlide);\n });\n } else {\n _.postSlide(targetSlide);\n }\n }\n return;\n }\n\n if (_.options.autoplay === true) {\n clearInterval(_.autoPlayTimer);\n }\n\n if (targetSlide < 0) {\n if (_.slideCount % _.options.slidesToScroll !== 0) {\n animSlide = _.slideCount - (_.slideCount % _.options.slidesToScroll);\n } else {\n animSlide = _.slideCount + targetSlide;\n }\n } else if (targetSlide >= _.slideCount) {\n if (_.slideCount % _.options.slidesToScroll !== 0) {\n animSlide = 0;\n } else {\n animSlide = targetSlide - _.slideCount;\n }\n } else {\n animSlide = targetSlide;\n }\n\n _.animating = true;\n\n _.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);\n\n oldSlide = _.currentSlide;\n _.currentSlide = animSlide;\n\n _.setSlideClasses(_.currentSlide);\n\n _.updateDots();\n _.updateArrows();\n\n if (_.options.fade === true) {\n if (dontAnimate !== true) {\n\n _.fadeSlideOut(oldSlide);\n\n _.fadeSlide(animSlide, function() {\n _.postSlide(animSlide);\n });\n\n } else {\n _.postSlide(animSlide);\n }\n _.animateHeight();\n return;\n }\n\n if (dontAnimate !== true) {\n _.animateSlide(targetLeft, function() {\n _.postSlide(animSlide);\n });\n } else {\n _.postSlide(animSlide);\n }\n\n };\n\n Slick.prototype.startLoad = function() {\n\n var _ = this;\n\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\n\n _.$prevArrow.hide();\n _.$nextArrow.hide();\n\n }\n\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\n\n _.$dots.hide();\n\n }\n\n _.$slider.addClass('slick-loading');\n\n };\n\n Slick.prototype.swipeDirection = function() {\n\n var xDist, yDist, r, swipeAngle, _ = this;\n\n xDist = _.touchObject.startX - _.touchObject.curX;\n yDist = _.touchObject.startY - _.touchObject.curY;\n r = Math.atan2(yDist, xDist);\n\n swipeAngle = Math.round(r * 180 / Math.PI);\n if (swipeAngle < 0) {\n swipeAngle = 360 - Math.abs(swipeAngle);\n }\n\n if ((swipeAngle <= 45) && (swipeAngle >= 0)) {\n return (_.options.rtl === false ? 'left' : 'right');\n }\n if ((swipeAngle <= 360) && (swipeAngle >= 315)) {\n return (_.options.rtl === false ? 'left' : 'right');\n }\n if ((swipeAngle >= 135) && (swipeAngle <= 225)) {\n return (_.options.rtl === false ? 'right' : 'left');\n }\n if (_.options.verticalSwiping === true) {\n if ((swipeAngle >= 35) && (swipeAngle <= 135)) {\n return 'left';\n } else {\n return 'right';\n }\n }\n\n return 'vertical';\n\n };\n\n Slick.prototype.swipeEnd = function(event) {\n\n var _ = this,\n slideCount;\n\n _.dragging = false;\n\n _.shouldClick = (_.touchObject.swipeLength > 10) ? false : true;\n\n if (_.touchObject.curX === undefined) {\n return false;\n }\n\n if (_.touchObject.edgeHit === true) {\n _.$slider.trigger('edge', [_, _.swipeDirection()]);\n }\n\n if (_.touchObject.swipeLength >= _.touchObject.minSwipe) {\n\n switch (_.swipeDirection()) {\n case 'left':\n slideCount = _.options.swipeToSlide ? _.checkNavigable(_.currentSlide + _.getSlideCount()) : _.currentSlide + _.getSlideCount();\n _.slideHandler(slideCount);\n _.currentDirection = 0;\n _.touchObject = {};\n _.$slider.trigger('swipe', [_, 'left']);\n break;\n\n case 'right':\n slideCount = _.options.swipeToSlide ? _.checkNavigable(_.currentSlide - _.getSlideCount()) : _.currentSlide - _.getSlideCount();\n _.slideHandler(slideCount);\n _.currentDirection = 1;\n _.touchObject = {};\n _.$slider.trigger('swipe', [_, 'right']);\n break;\n }\n } else {\n if (_.touchObject.startX !== _.touchObject.curX) {\n _.slideHandler(_.currentSlide);\n _.touchObject = {};\n }\n }\n\n };\n\n Slick.prototype.swipeHandler = function(event) {\n\n var _ = this;\n\n if ((_.options.swipe === false) || ('ontouchend' in document && _.options.swipe === false)) {\n return;\n } else if (_.options.draggable === false && event.type.indexOf('mouse') !== -1) {\n return;\n }\n\n _.touchObject.fingerCount = event.originalEvent && event.originalEvent.touches !== undefined ?\n event.originalEvent.touches.length : 1;\n\n _.touchObject.minSwipe = _.listWidth / _.options\n .touchThreshold;\n\n if (_.options.verticalSwiping === true) {\n _.touchObject.minSwipe = _.listHeight / _.options\n .touchThreshold;\n }\n\n switch (event.data.action) {\n\n case 'start':\n _.swipeStart(event);\n break;\n\n case 'move':\n _.swipeMove(event);\n break;\n\n case 'end':\n _.swipeEnd(event);\n break;\n\n }\n\n };\n\n Slick.prototype.swipeMove = function(event) {\n\n var _ = this,\n edgeWasHit = false,\n curLeft, swipeDirection, swipeLength, positionOffset, touches;\n\n touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;\n\n if (!_.dragging || touches && touches.length !== 1) {\n return false;\n }\n\n curLeft = _.getLeft(_.currentSlide);\n\n _.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;\n _.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;\n\n _.touchObject.swipeLength = Math.round(Math.sqrt(\n Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));\n\n if (_.options.verticalSwiping === true) {\n _.touchObject.swipeLength = Math.round(Math.sqrt(\n Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));\n }\n\n swipeDirection = _.swipeDirection();\n\n if (swipeDirection === 'vertical') {\n return;\n }\n\n if (event.originalEvent !== undefined && _.touchObject.swipeLength > 4) {\n event.preventDefault();\n }\n\n positionOffset = (_.options.rtl === false ? 1 : -1) * (_.touchObject.curX > _.touchObject.startX ? 1 : -1);\n if (_.options.verticalSwiping === true) {\n positionOffset = _.touchObject.curY > _.touchObject.startY ? 1 : -1;\n }\n\n\n swipeLength = _.touchObject.swipeLength;\n\n _.touchObject.edgeHit = false;\n\n if (_.options.infinite === false) {\n if ((_.currentSlide === 0 && swipeDirection === 'right') || (_.currentSlide >= _.getDotCount() && swipeDirection === 'left')) {\n swipeLength = _.touchObject.swipeLength * _.options.edgeFriction;\n _.touchObject.edgeHit = true;\n }\n }\n\n if (_.options.vertical === false) {\n _.swipeLeft = curLeft + swipeLength * positionOffset;\n } else {\n _.swipeLeft = curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset;\n }\n if (_.options.verticalSwiping === true) {\n _.swipeLeft = curLeft + swipeLength * positionOffset;\n }\n\n if (_.options.fade === true || _.options.touchMove === false) {\n return false;\n }\n\n if (_.animating === true) {\n _.swipeLeft = null;\n return false;\n }\n\n _.setCSS(_.swipeLeft);\n\n };\n\n Slick.prototype.swipeStart = function(event) {\n\n var _ = this,\n touches;\n\n if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {\n _.touchObject = {};\n return false;\n }\n\n if (event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {\n touches = event.originalEvent.touches[0];\n }\n\n _.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;\n _.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;\n\n _.dragging = true;\n\n };\n\n Slick.prototype.unfilterSlides = Slick.prototype.slickUnfilter = function() {\n\n var _ = this;\n\n if (_.$slidesCache !== null) {\n\n _.unload();\n\n _.$slideTrack.children(this.options.slide).detach();\n\n _.$slidesCache.appendTo(_.$slideTrack);\n\n _.reinit();\n\n }\n\n };\n\n Slick.prototype.unload = function() {\n\n var _ = this;\n\n $('.slick-cloned', _.$slider).remove();\n\n if (_.$dots) {\n _.$dots.remove();\n }\n\n if (_.$prevArrow && _.htmlExpr.test(_.options.prevArrow)) {\n _.$prevArrow.remove();\n }\n\n if (_.$nextArrow && _.htmlExpr.test(_.options.nextArrow)) {\n _.$nextArrow.remove();\n }\n\n _.$slides\n .removeClass('slick-slide slick-active slick-visible slick-current')\n .attr('aria-hidden', 'true')\n .css('width', '');\n\n };\n\n Slick.prototype.unslick = function(fromBreakpoint) {\n\n var _ = this;\n _.$slider.trigger('unslick', [_, fromBreakpoint]);\n _.destroy();\n\n };\n\n Slick.prototype.updateArrows = function() {\n\n var _ = this,\n centerOffset;\n\n centerOffset = Math.floor(_.options.slidesToShow / 2);\n\n if ( _.options.arrows === true &&\n _.slideCount > _.options.slidesToShow &&\n !_.options.infinite ) {\n\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\n _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\n\n if (_.currentSlide === 0) {\n\n _.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\n _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\n\n } else if (_.currentSlide >= _.slideCount - _.options.slidesToShow && _.options.centerMode === false) {\n\n _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\n\n } else if (_.currentSlide >= _.slideCount - 1 && _.options.centerMode === true) {\n\n _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\n\n }\n\n }\n\n };\n\n Slick.prototype.updateDots = function() {\n\n var _ = this;\n\n if (_.$dots !== null) {\n\n _.$dots\n .find('li')\n .removeClass('slick-active')\n .attr('aria-hidden', 'true');\n\n _.$dots\n .find('li')\n .eq(Math.floor(_.currentSlide / _.options.slidesToScroll))\n .addClass('slick-active')\n .attr('aria-hidden', 'false');\n\n }\n\n };\n\n Slick.prototype.visibility = function() {\n\n var _ = this;\n\n if (document[_.hidden]) {\n _.paused = true;\n _.autoPlayClear();\n } else {\n if (_.options.autoplay === true) {\n _.paused = false;\n _.autoPlay();\n }\n }\n\n };\n Slick.prototype.initADA = function() {\n var _ = this;\n _.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({\n 'aria-hidden': 'true',\n 'tabindex': '-1'\n }).find('a, input, button, select').attr({\n 'tabindex': '-1'\n });\n\n _.$slideTrack.attr('role', 'listbox');\n\n _.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function(i) {\n $(this).attr({\n 'role': 'option',\n 'aria-describedby': 'slick-slide' + _.instanceUid + i + ''\n });\n });\n\n if (_.$dots !== null) {\n _.$dots.attr('role', 'tablist').find('li').each(function(i) {\n $(this).attr({\n 'role': 'presentation',\n 'aria-selected': 'false',\n 'aria-controls': 'navigation' + _.instanceUid + i + '',\n 'id': 'slick-slide' + _.instanceUid + i + ''\n });\n })\n .first().attr('aria-selected', 'true').end()\n .find('button').attr('role', 'button').end()\n .closest('div').attr('role', 'toolbar');\n }\n _.activateADA();\n\n };\n\n Slick.prototype.activateADA = function() {\n var _ = this;\n\n _.$slideTrack.find('.slick-active').attr({\n 'aria-hidden': 'false'\n }).find('a, input, button, select').attr({\n 'tabindex': '0'\n });\n\n };\n\n Slick.prototype.focusHandler = function() {\n var _ = this;\n _.$slider.on('focus.slick blur.slick', '*', function(event) {\n event.stopImmediatePropagation();\n var sf = $(this);\n setTimeout(function() {\n if (_.isPlay) {\n if (sf.is(':focus')) {\n _.autoPlayClear();\n _.paused = true;\n } else {\n _.paused = false;\n _.autoPlay();\n }\n }\n }, 0);\n });\n };\n\n $.fn.slick = function() {\n var _ = this,\n opt = arguments[0],\n args = Array.prototype.slice.call(arguments, 1),\n l = _.length,\n i,\n ret;\n for (i = 0; i < l; i++) {\n if (typeof opt == 'object' || typeof opt == 'undefined')\n _[i].slick = new Slick(_[i], opt);\n else\n ret = _[i].slick[opt].apply(_[i].slick, args);\n if (typeof ret != 'undefined') return ret;\n }\n return _;\n };\n\n}));\n"]}