1!(function (i) { 2 "use strict"; 3 "function" == typeof define && define.amd 4 ? define(["jquery"], i) 5 : "undefined" != typeof exports 6 ? (module.exports = i(require("jquery"))) 7 : i(jQuery); 8})(function (i) { 9 "use strict"; 10 var e = window.Slick || {}; 11 ((e = (function () { 12 var e = 0; 13 return function (t, o) { 14 var s, 15 n = this; 16 (n.defaults = { 17 accessibility: !0, 18 adaptiveHeight: !1, 19 appendArrows: i(t), 20 appendDots: i(t), 21 arrows: !0, 22 asNavFor: null, 23 prevArrow: 24 '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>', 25 nextArrow: 26 '<button class="slick-next" aria-label="Next" type="button">Next</button>', 27 autoplay: !1, 28 autoplaySpeed: 3e3, 29 centerMode: !1, 30 centerPadding: "50px", 31 cssEase: "ease", 32 customPaging: function (e, t) { 33 return i('<button type="button" />').text(t + 1); 34 }, 35 dots: !1, 36 dotsClass: "slick-dots", 37 draggable: !0, 38 easing: "linear", 39 edgeFriction: 0.35, 40 fade: !1, 41 focusOnSelect: !1, 42 focusOnChange: !1, 43 infinite: !0, 44 initialSlide: 0, 45 lazyLoad: "ondemand", 46 mobileFirst: !1, 47 pauseOnHover: !0, 48 pauseOnFocus: !0, 49 pauseOnDotsHover: !1, 50 respondTo: "window", 51 responsive: null, 52 rows: 1, 53 rtl: !1, 54 slide: "", 55 slidesPerRow: 1, 56 slidesToShow: 1, 57 slidesToScroll: 1, 58 speed: 500, 59 swipe: !0, 60 swipeToSlide: !1, 61 touchMove: !0, 62 touchThreshold: 5, 63 useCSS: !0, 64 useTransform: !0, 65 variableWidth: !1, 66 vertical: !1, 67 verticalSwiping: !1, 68 waitForAnimate: !0, 69 zIndex: 1e3, 70 }), 71 (n.initials = { 72 animating: !1, 73 dragging: !1, 74 autoPlayTimer: null, 75 currentDirection: 0, 76 currentLeft: null, 77 currentSlide: 0, 78 direction: 1, 79 $dots: null, 80 listWidth: null, 81 listHeight: null, 82 loadIndex: 0, 83 $nextArrow: null, 84 $prevArrow: null, 85 scrolling: !1, 86 slideCount: null, 87 slideWidth: null, 88 $slideTrack: null, 89 $slides: null, 90 sliding: !1, 91 slideOffset: 0, 92 swipeLeft: null, 93 swiping: !1, 94 $list: null, 95 touchObject: {}, 96 transformsEnabled: !1, 97 unslicked: !1, 98 }), 99 i.extend(n, n.initials), 100 (n.activeBreakpoint = null), 101 (n.animType = null), 102 (n.animProp = null), 103 (n.breakpoints = []), 104 (n.breakpointSettings = []), 105 (n.cssTransitions = !1), 106 (n.focussed = !1), 107 (n.interrupted = !1), 108 (n.hidden = "hidden"), 109 (n.paused = !0), 110 (n.positionProp = null), 111 (n.respondTo = null),
112 (n.rowCount = 1), 113 (n.shouldClick = !0), 114 (n.$slider = i(t)), 115 (n.$slidesCache = null), 116 (n.transformType = null), 117 (n.transitionType = null), 118 (n.visibilityChange = "visibilitychange"), 119 (n.windowWidth = 0), 120 (n.windowTimer = null), 121 (s = i(t).data("slick") || {}), 122 (n.options = i.extend({}, n.defaults, o, s)), 123 (n.currentSlide = n.options.initialSlide), 124 (n.originalSettings = n.options), 125 void 0 !== document.mozHidden 126 ? ((n.hidden = "mozHidden"), 127 (n.visibilityChange = "mozvisibilitychange")) 128 : void 0 !== document.webkitHidden && 129 ((n.hidden = "webkitHidden"), 130 (n.visibilityChange = "webkitvisibilitychange")), 131 (n.autoPlay = i.proxy(n.autoPlay, n)), 132 (n.autoPlayClear = i.proxy(n.autoPlayClear, n)), 133 (n.autoPlayIterator = i.proxy(n.autoPlayIterator, n)), 134 (n.changeSlide = i.proxy(n.changeSlide, n)), 135 (n.clickHandler = i.proxy(n.clickHandler, n)), 136 (n.selectHandler = i.proxy(n.selectHandler, n)), 137 (n.setPosition = i.proxy(n.setPosition, n)), 138 (n.swipeHandler = i.proxy(n.swipeHandler, n)), 139 (n.dragHandler = i.proxy(n.dragHandler, n)), 140 (n.keyHandler = i.proxy(n.keyHandler, n)), 141 (n.instanceUid = e++), 142 (n.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/), 143 n.registerBreakpoints(), 144 n.init(!0); 145 }; 146 })()).prototype.activateADA = function () { 147 this.$slideTrack 148 .find(".slick-active") 149 .attr({ "aria-hidden": "false" }) 150 .find("a, input, button, select") 151 .attr({ tabindex: "0" }); 152 }), 153 (e.prototype.addSlide = e.prototype.slickAdd = 154 function (e, t, o) { 155 var s = this; 156 if ("boolean" == typeof t) (o = t), (t = null); 157 else if (t < 0 || t >= s.slideCount) return !1; 158 s.unload(), 159 "number" == typeof t 160 ? 0 === t && 0 === s.$slides.length 161 ? i(e).appendTo(s.$slideTrack) 162 : o 163 ? i(e).insertBefore(s.$slides.eq(t)) 164 : i(e).insertAfter(s.$slides.eq(t)) 165 : !0 === o 166 ? i(e).prependTo(s.$slideTrack) 167 : i(e).appendTo(s.$slideTrack), 168 (s.$slides = s.$slideTrack.children(this.options.slide)), 169 s.$slideTrack.children(this.options.slide).detach(), 170 s.$slideTrack.append(s.$slides), 171 s.$slides.each(function (e, t) { 172 i(t).attr("data-slick-index", e); 173 }), 174 (s.$slidesCache = s.$slides), 175 s.reinit(); 176 }), 177 (e.prototype.animateHeight = function () { 178 var i = this; 179 if ( 180 1 === i.options.slidesToShow && 181 !0 === i.options.adaptiveHeight && 182 !1 === i.options.vertical 183 ) { 184 var e = i.$slides.eq(i.currentSlide).outerHeight(!0); 185 i.$list.animate({ height: e }, i.options.speed); 186 } 187 }), 188 (e.prototype.animateSlide = function (e, t) { 189 var o = {}, 190 s = this; 191 s.animateHeight(), 192 !0 === s.options.rtl && !1 === s.options.vertical && (e = -e), 193 !1 === s.transformsEnabled 194 ? !1 === s.options.vertical 195 ? s.$slideTrack.animate( 196 { left: e }, 197 s.options.speed, 198 s.options.easing, 199 t 200 ) 201 : s.$slideTrack.animate( 202 { top: e }, 203 s.options.speed, 204 s.options.easing, 205 t 206 ) 207 : !1 === s.cssTransitions 208 ? (!0 === s.options.rtl && (s.currentLeft = -s.currentLeft), 209 i({ animStart: s.currentLeft }).animate( 210 { animStart: e }, 211 { 212 duration: s.options.speed, 213 easing: s.options.easing, 214 step: function (i) { 215 (i = Math.ceil(i)), 216 !1 === s.options.vertical 217 ? ((o[s.animType] = "translate(" + i + "px, 0px)"), 218 s.$slideTrack.css(o)) 219 : ((o[s.animType] = "translate(0px," + i + "px)"), 220 s.$slideTrack.css(o)); 221 }, 222 complete: function () { 223 t && t.call(); 224 }, 225 } 226 )) 227 : (s.applyTransition(),
228 (e = Math.ceil(e)), 229 !1 === s.options.vertical 230 ? (o[s.animType] = "translate3d(" + e + "px, 0px, 0px)") 231 : (o[s.animType] = "translate3d(0px," + e + "px, 0px)"), 232 s.$slideTrack.css(o), 233 t && 234 setTimeout(function () { 235 s.disableTransition(), t.call(); 236 }, s.options.speed)); 237 }), 238 (e.prototype.getNavTarget = function () { 239 var e = this, 240 t = e.options.asNavFor; 241 return t && null !== t && (t = i(t).not(e.$slider)), t; 242 }), 243 (e.prototype.asNavFor = function (e) { 244 var t = this.getNavTarget(); 245 null !== t && 246 "object" == typeof t && 247 t.each(function () { 248 var t = i(this).slick("getSlick"); 249 t.unslicked || t.slideHandler(e, !0); 250 }); 251 }), 252 (e.prototype.applyTransition = function (i) { 253 var e = this, 254 t = {}; 255 !1 === e.options.fade 256 ? (t[e.transitionType] = 257 e.transformType + " " + e.options.speed + "ms " + e.options.cssEase) 258 : (t[e.transitionType] = 259 "opacity " + e.options.speed + "ms " + e.options.cssEase), 260 !1 === e.options.fade ? e.$slideTrack.css(t) : e.$slides.eq(i).css(t); 261 }), 262 (e.prototype.autoPlay = function () { 263 var i = this; 264 i.autoPlayClear(), 265 i.slideCount > i.options.slidesToShow && 266 (i.autoPlayTimer = setInterval( 267 i.autoPlayIterator, 268 i.options.autoplaySpeed 269 )); 270 }), 271 (e.prototype.autoPlayClear = function () { 272 var i = this; 273 i.autoPlayTimer && clearInterval(i.autoPlayTimer); 274 }), 275 (e.prototype.autoPlayIterator = function () { 276 var i = this, 277 e = i.currentSlide + i.options.slidesToScroll; 278 i.paused || 279 i.interrupted || 280 i.focussed || 281 (!1 === i.options.infinite && 282 (1 === i.direction && i.currentSlide + 1 === i.slideCount - 1 283 ? (i.direction = 0) 284 : 0 === i.direction && 285 ((e = i.currentSlide - i.options.slidesToScroll), 286 i.currentSlide - 1 == 0 && (i.direction = 1))), 287 i.slideHandler(e)); 288 }), 289 (e.prototype.buildArrows = function () { 290 var e = this; 291 !0 === e.options.arrows && 292 ((e.$prevArrow = i(e.options.prevArrow).addClass("slick-arrow")), 293 (e.$nextArrow = i(e.options.nextArrow).addClass("slick-arrow")), 294 e.slideCount > e.options.slidesToShow 295 ? (e.$prevArrow 296 .removeClass("slick-hidden") 297 .removeAttr("aria-hidden tabindex"), 298 e.$nextArrow 299 .removeClass("slick-hidden") 300 .removeAttr("aria-hidden tabindex"), 301 e.htmlExpr.test(e.options.prevArrow) && 302 e.$prevArrow.prependTo(e.options.appendArrows), 303 e.htmlExpr.test(e.options.nextArrow) && 304 e.$nextArrow.appendTo(e.options.appendArrows), 305 !0 !== e.options.infinite && 306 e.$prevArrow 307 .addClass("slick-disabled") 308 .attr("aria-disabled", "true")) 309 : e.$prevArrow 310 .add(e.$nextArrow) 311 .addClass("slick-hidden") 312 .attr({ "aria-disabled": "true", tabindex: "-1" })); 313 }), 314 (e.prototype.buildDots = function () { 315 var e, 316 t, 317 o = this; 318 if (!0 === o.options.dots) { 319 for ( 320 o.$slider.addClass("slick-dotted"), 321 t = i("<ul />").addClass(o.options.dotsClass), 322 e = 0; 323 e <= o.getDotCount(); 324 e += 1 325 ) 326 t.append(i("<li />").append(o.options.customPaging.call(this, o, e))); 327 (o.$dots = t.appendTo(o.options.appendDots)), 328 o.$dots.find("li").first().addClass("slick-active"); 329 } 330 }), 331 (e.prototype.buildOut = function () { 332 var e = this; 333 (e.$slides = e.$slider 334 .children(e.options.slide + ":not(.slick-cloned)") 335 .addClass("slick-slide")), 336 (e.slideCount = e.$slides.length), 337 e.$slides.each(function (e, t) { 338 i(t) 339 .attr("data-slick-index", e) 340 .data("originalStyling", i(t).attr("style") || ""); 341 }), 342 e.$slider.addClass("slick-slider"), 343 (e.$slideTrack = 344 0 === e.slideCount 345 ? i('<div class="slick-track"/>').appendTo(e.$slider) 346 : e.$slides.wrapAll('<div class="slick-track"/>').parent()), 347 (e.$list = e.$slideTrack.wrap('<div class="slick-list"/>').parent()), 348 e.$slideTrack.css("opacity", 0), 349 (!0 !== e.options.centerMode && !0 !== e.options.swipeToSlide) || 350 (e.options.slidesToScroll = 1), 351 i("img[data-lazy]", e.$slider).not("[src]").addClass("slick-loading"), 352 e.setupInfinite(), 353 e.buildArrows(), 354 e.buildDots(), 355 e.updateDots(), 356 e.setSlideClasses( 357 "number" == typeof e.currentSlide ? e.currentSlide : 0 358 ), 359 !0 === e.options.draggable && e.$list.addClass("draggable"); 360 }), 361 (e.prototype.buildRows = function () { 362 var i, 363 e, 364 t, 365 o, 366 s, 367 n, 368 r, 369 l = this; 370 if ( 371 ((o = document.createDocumentFragment()), 372 (n = l.$slider.children()), 373 l.options.rows > 1) 374 ) { 375 for ( 376 r = l.options.slidesPerRow * l.options.rows, 377 s = Math.ceil(n.length / r), 378 i = 0; 379 i < s; 380 i++ 381 ) { 382 var d = document.createElement("div"); 383 for (e = 0; e < l.options.rows; e++) { 384 var a = document.createElement("div"); 385 for (t = 0; t < l.options.slidesPerRow; t++) { 386 var c = i * r + (e * l.options.slidesPerRow + t); 387 n.get(c) && a.appendChild(n.get(c)); 388 } 389 d.appendChild(a); 390 } 391 o.appendChild(d); 392 } 393 l.$slider.empty().append(o), 394 l.$slider 395 .children() 396 .children() 397 .children() 398 .css({ 399 width: 100 / l.options.slidesPerRow + "%", 400 display: "inline-block", 401 }); 402 } 403 }), 404 (e.prototype.checkResponsive = function (e, t) { 405 var o, 406 s, 407 n, 408 r = this, 409 l = !1, 410 d = r.$slider.width(), 411 a = window.innerWidth || i(window).width(); 412 if ( 413 ("window" === r.respondTo 414 ? (n = a) 415 : "slider" === r.respondTo 416 ? (n = d) 417 : "min" === r.respondTo && (n = Math.min(a, d)), 418 r.options.responsive && 419 r.options.responsive.length && 420 null !== r.options.responsive) 421 ) { 422 s = null; 423 for (o in r.breakpoints) 424 r.breakpoints.hasOwnProperty(o) && 425 (!1 === r.originalSettings.mobileFirst 426 ? n < r.breakpoints[o] && (s = r.breakpoints[o]) 427 : n > r.breakpoints[o] && (s = r.breakpoints[o])); 428 null !== s 429 ? null !== r.activeBreakpoint 430 ? (s !== r.activeBreakpoint || t) && 431 ((r.activeBreakpoint = s), 432 "unslick" === r.breakpointSettings[s] 433 ? r.unslick(s) 434 : ((r.options = i.extend( 435 {}, 436 r.originalSettings, 437 r.breakpointSettings[s] 438 )), 439 !0 === e && (r.currentSlide = r.options.initialSlide), 440 r.refresh(e)), 441 (l = s)) 442 : ((r.activeBreakpoint = s), 443 "unslick" === r.breakpointSettings[s] 444 ? r.unslick(s) 445 : ((r.options = i.extend( 446 {}, 447 r.originalSettings, 448 r.breakpointSettings[s] 449 )), 450 !0 === e && (r.currentSlide = r.options.initialSlide), 451 r.refresh(e)), 452 (l = s)) 453 : null !== r.activeBreakpoint && 454 ((r.activeBreakpoint = null),
455 (r.options = r.originalSettings), 456 !0 === e && (r.currentSlide = r.options.initialSlide), 457 r.refresh(e), 458 (l = s)), 459 e || !1 === l || r.$slider.trigger("breakpoint", [r, l]); 460 } 461 }), 462 (e.prototype.changeSlide = function (e, t) { 463 var o, 464 s, 465 n, 466 r = this, 467 l = i(e.currentTarget); 468 switch ( 469 (l.is("a") && e.preventDefault(), 470 l.is("li") || (l = l.closest("li")), 471 (n = r.slideCount % r.options.slidesToScroll != 0), 472 (o = n 473 ? 0 474 : (r.slideCount - r.currentSlide) % r.options.slidesToScroll), 475 e.data.message) 476 ) { 477 case "previous": 478 (s = 0 === o ? r.options.slidesToScroll : r.options.slidesToShow - o), 479 r.slideCount > r.options.slidesToShow && 480 r.slideHandler(r.currentSlide - s, !1, t); 481 break; 482 case "next": 483 (s = 0 === o ? r.options.slidesToScroll : o), 484 r.slideCount > r.options.slidesToShow && 485 r.slideHandler(r.currentSlide + s, !1, t); 486 break; 487 case "index": 488 var d = 489 0 === e.data.index 490 ? 0 491 : e.data.index || l.index() * r.options.slidesToScroll; 492 r.slideHandler(r.checkNavigable(d), !1, t), 493 l.children().trigger("focus"); 494 break; 495 default: 496 return; 497 } 498 }), 499 (e.prototype.checkNavigable = function (i) { 500 var e, t; 501 if (((e = this.getNavigableIndexes()), (t = 0), i > e[e.length - 1])) 502 i = e[e.length - 1]; 503 else 504 for (var o in e) { 505 if (i < e[o]) { 506 i = t; 507 break; 508 } 509 t = e[o]; 510 } 511 return i; 512 }), 513 (e.prototype.cleanUpEvents = function () { 514 var e = this; 515 e.options.dots && 516 null !== e.$dots && 517 (i("li", e.$dots) 518 .off("click.slick", e.changeSlide) 519 .off("mouseenter.slick", i.proxy(e.interrupt, e, !0)) 520 .off("mouseleave.slick", i.proxy(e.interrupt, e, !1)), 521 !0 === e.options.accessibility && 522 e.$dots.off("keydown.slick", e.keyHandler)), 523 e.$slider.off("focus.slick blur.slick"), 524 !0 === e.options.arrows && 525 e.slideCount > e.options.slidesToShow && 526 (e.$prevArrow && e.$prevArrow.off("click.slick", e.changeSlide), 527 e.$nextArrow && e.$nextArrow.off("click.slick", e.changeSlide), 528 !0 === e.options.accessibility && 529 (e.$prevArrow && e.$prevArrow.off("keydown.slick", e.keyHandler), 530 e.$nextArrow && e.$nextArrow.off("keydown.slick", e.keyHandler))), 531 e.$list.off("touchstart.slick mousedown.slick", e.swipeHandler), 532 e.$list.off("touchmove.slick mousemove.slick", e.swipeHandler), 533 e.$list.off("touchend.slick mouseup.slick", e.swipeHandler),
534 e.$list.off("touchcancel.slick mouseleave.slick", e.swipeHandler), 535 e.$list.off("click.slick", e.clickHandler), 536 i(document).off(e.visibilityChange, e.visibility), 537 e.cleanUpSlideEvents(), 538 !0 === e.options.accessibility && 539 e.$list.off("keydown.slick", e.keyHandler), 540 !0 === e.options.focusOnSelect && 541 i(e.$slideTrack).children().off("click.slick", e.selectHandler), 542 i(window).off( 543 "orientationchange.slick.slick-" + e.instanceUid, 544 e.orientationChange 545 ), 546 i(window).off("resize.slick.slick-" + e.instanceUid, e.resize), 547 i("[draggable!=true]", e.$slideTrack).off( 548 "dragstart", 549 e.preventDefault 550 ), 551 i(window).off("load.slick.slick-" + e.instanceUid, e.setPosition); 552 }), 553 (e.prototype.cleanUpSlideEvents = function () { 554 var e = this; 555 e.$list.off("mouseenter.slick", i.proxy(e.interrupt, e, !0)), 556 e.$list.off("mouseleave.slick", i.proxy(e.interrupt, e, !1)); 557 }), 558 (e.prototype.cleanUpRows = function () { 559 var i, 560 e = this; 561 e.options.rows > 1 && 562 ((i = e.$slides.children().children()).removeAttr("style"), 563 e.$slider.empty().append(i)); 564 }), 565 (e.prototype.clickHandler = function (i) { 566 !1 === this.shouldClick && 567 (i.stopImmediatePropagation(), i.stopPropagation(), i.preventDefault()); 568 }), 569 (e.prototype.destroy = function (e) { 570 var t = this; 571 t.autoPlayClear(), 572 (t.touchObject = {}), 573 t.cleanUpEvents(), 574 i(".slick-cloned", t.$slider).detach(), 575 t.$dots && t.$dots.remove(), 576 t.$prevArrow && 577 t.$prevArrow.length && 578 (t.$prevArrow 579 .removeClass("slick-disabled slick-arrow slick-hidden") 580 .removeAttr("aria-hidden aria-disabled tabindex") 581 .css("display", ""), 582 t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.remove()), 583 t.$nextArrow && 584 t.$nextArrow.length && 585 (t.$nextArrow 586 .removeClass("slick-disabled slick-arrow slick-hidden") 587 .removeAttr("aria-hidden aria-disabled tabindex") 588 .css("display", ""), 589 t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.remove()), 590 t.$slides && 591 (t.$slides 592 .removeClass( 593 "slick-slide slick-active slick-center slick-visible slick-current" 594 ) 595 .removeAttr("aria-hidden") 596 .removeAttr("data-slick-index") 597 .each(function () { 598 i(this).attr("style", i(this).data("originalStyling")); 599 }), 600 t.$slideTrack.children(this.options.slide).detach(), 601 t.$slideTrack.detach(), 602 t.$list.detach(), 603 t.$slider.append(t.$slides)), 604 t.cleanUpRows(), 605 t.$slider.removeClass("slick-slider"), 606 t.$slider.removeClass("slick-initialized"), 607 t.$slider.removeClass("slick-dotted"), 608 (t.unslicked = !0), 609 e || t.$slider.trigger("destroy", [t]); 610 }), 611 (e.prototype.disableTransition = function (i) { 612 var e = this, 613 t = {}; 614 (t[e.transitionType] = ""), 615 !1 === e.options.fade ? e.$slideTrack.css(t) : e.$slides.eq(i).css(t); 616 }), 617 (e.prototype.fadeSlide = function (i, e) { 618 var t = this; 619 !1 === t.cssTransitions 620 ? (t.$slides.eq(i).css({ zIndex: t.options.zIndex }), 621 t.$slides 622 .eq(i) 623 .animate({ opacity: 1 }, t.options.speed, t.options.easing, e)) 624 : (t.applyTransition(i), 625 t.$slides.eq(i).css({ opacity: 1, zIndex: t.options.zIndex }), 626 e && 627 setTimeout(function () { 628 t.disableTransition(i), e.call(); 629 }, t.options.speed)); 630 }), 631 (e.prototype.fadeSlideOut = function (i) { 632 var e = this; 633 !1 === e.cssTransitions 634 ? e.$slides 635 .eq(i) 636 .animate( 637 { opacity: 0, zIndex: e.options.zIndex - 2 }, 638 e.options.speed, 639 e.options.easing 640 ) 641 : (e.applyTransition(i), 642 e.$slides.eq(i).css({ opacity: 0, zIndex: e.options.zIndex - 2 })); 643 }),
644 (e.prototype.filterSlides = e.prototype.slickFilter = 645 function (i) { 646 var e = this; 647 null !== i && 648 ((e.$slidesCache = e.$slides), 649 e.unload(), 650 e.$slideTrack.children(this.options.slide).detach(), 651 e.$slidesCache.filter(i).appendTo(e.$slideTrack), 652 e.reinit()); 653 }), 654 (e.prototype.focusHandler = function () { 655 var e = this; 656 e.$slider 657 .off("focus.slick blur.slick") 658 .on("focus.slick blur.slick", "*", function (t) { 659 t.stopImmediatePropagation(); 660 var o = i(this); 661 setTimeout(function () { 662 e.options.pauseOnFocus && 663 ((e.focussed = o.is(":focus")), e.autoPlay()); 664 }, 0); 665 }); 666 }), 667 (e.prototype.getCurrent = e.prototype.slickCurrentSlide = 668 function () { 669 return this.currentSlide; 670 }), 671 (e.prototype.getDotCount = function () { 672 var i = this, 673 e = 0, 674 t = 0, 675 o = 0; 676 if (!0 === i.options.infinite) 677 if (i.slideCount <= i.options.slidesToShow) ++o; 678 else 679 for (; e < i.slideCount; ) 680 ++o, 681 (e = t + i.options.slidesToScroll), 682 (t += 683 i.options.slidesToScroll <= i.options.slidesToShow 684 ? i.options.slidesToScroll 685 : i.options.slidesToShow); 686 else if (!0 === i.options.centerMode) o = i.slideCount; 687 else if (i.options.asNavFor) 688 for (; e < i.slideCount; ) 689 ++o, 690 (e = t + i.options.slidesToScroll), 691 (t += 692 i.options.slidesToScroll <= i.options.slidesToShow 693 ? i.options.slidesToScroll 694 : i.options.slidesToShow); 695 else 696 o = 697 1 + 698 Math.ceil( 699 (i.slideCount - i.options.slidesToShow) / i.options.slidesToScroll 700 ); 701 return o - 1; 702 }), 703 (e.prototype.getLeft = function (i) { 704 var e, 705 t, 706 o, 707 s, 708 n = this, 709 r = 0; 710 return ( 711 (n.slideOffset = 0), 712 (t = n.$slides.first().outerHeight(!0)), 713 !0 === n.options.infinite 714 ? (n.slideCount > n.options.slidesToShow && 715 ((n.slideOffset = n.slideWidth * n.options.slidesToShow * -1), 716 (s = -1), 717 !0 === n.options.vertical && 718 !0 === n.options.centerMode && 719 (2 === n.options.slidesToShow 720 ? (s = -1.5) 721 : 1 === n.options.slidesToShow && (s = -2)), 722 (r = t * n.options.slidesToShow * s)), 723 n.slideCount % n.options.slidesToScroll != 0 && 724 i + n.options.slidesToScroll > n.slideCount && 725 n.slideCount > n.options.slidesToShow && 726 (i > n.slideCount 727 ? ((n.slideOffset = 728 (n.options.slidesToShow - (i - n.slideCount)) * 729 n.slideWidth * 730 -1), 731 (r = (n.options.slidesToShow - (i - n.slideCount)) * t * -1)) 732 : ((n.slideOffset = 733 (n.slideCount % n.options.slidesToScroll) * 734 n.slideWidth * 735 -1), 736 (r = (n.slideCount % n.options.slidesToScroll) * t * -1)))) 737 : i + n.options.slidesToShow > n.slideCount && 738 ((n.slideOffset = 739 (i + n.options.slidesToShow - n.slideCount) * n.slideWidth), 740 (r = (i + n.options.slidesToShow - n.slideCount) * t)), 741 n.slideCount <= n.options.slidesToShow && 742 ((n.slideOffset = 0), (r = 0)), 743 !0 === n.options.centerMode && n.slideCount <= n.options.slidesToShow 744 ? (n.slideOffset = 745 (n.slideWidth * Math.floor(n.options.slidesToShow)) / 2 - 746 (n.slideWidth * n.slideCount) / 2) 747 : !0 === n.options.centerMode && !0 === n.options.infinite 748 ? (n.slideOffset += 749 n.slideWidth * Math.floor(n.options.slidesToShow / 2) - 750 n.slideWidth) 751 : !0 === n.options.centerMode && 752 ((n.slideOffset = 0), 753 (n.slideOffset += 754 n.slideWidth * Math.floor(n.options.slidesToShow / 2))), 755 (e = 756 !1 === n.options.vertical 757 ? i * n.slideWidth * -1 + n.slideOffset 758 : i * t * -1 + r), 759 !0 === n.options.variableWidth && 760 ((o = 761 n.slideCount <= n.options.slidesToShow || !1 === n.options.infinite 762 ? n.$slideTrack.children(".slick-slide").eq(i) 763 : n.$slideTrack 764 .children(".slick-slide") 765 .eq(i + n.options.slidesToShow)), 766 (e = 767 !0 === n.options.rtl 768 ? o[0] 769 ? -1 * (n.$slideTrack.width() - o[0].offsetLeft - o.width()) 770 : 0 771 : o[0] 772 ? -1 * o[0].offsetLeft 773 : 0), 774 !0 === n.options.centerMode && 775 ((o = 776 n.slideCount <= n.options.slidesToShow || 777 !1 === n.options.infinite 778 ? n.$slideTrack.children(".slick-slide").eq(i) 779 : n.$slideTrack 780 .children(".slick-slide") 781 .eq(i + n.options.slidesToShow + 1)), 782 (e = 783 !0 === n.options.rtl 784 ? o[0] 785 ? -1 * (n.$slideTrack.width() - o[0].offsetLeft - o.width()) 786 : 0 787 : o[0] 788 ? -1 * o[0].offsetLeft 789 : 0), 790 (e += (n.$list.width() - o.outerWidth()) / 2))), 791 e 792 ); 793 }), 794 (e.prototype.getOption = e.prototype.slickGetOption = 795 function (i) { 796 return this.options[i]; 797 }), 798 (e.prototype.getNavigableIndexes = function () { 799 var i, 800 e = this, 801 t = 0, 802 o = 0, 803 s = []; 804 for ( 805 !1 === e.options.infinite 806 ? (i = e.slideCount) 807 : ((t = -1 * e.options.slidesToScroll), 808 (o = -1 * e.options.slidesToScroll),
809 (i = 2 * e.slideCount)); 810 t < i; 811 812 ) 813 s.push(t), 814 (t = o + e.options.slidesToScroll), 815 (o += 816 e.options.slidesToScroll <= e.options.slidesToShow 817 ? e.options.slidesToScroll 818 : e.options.slidesToShow); 819 return s; 820 }), 821 (e.prototype.getSlick = function () { 822 return this; 823 }), 824 (e.prototype.getSlideCount = function () { 825 var e, 826 t, 827 o = this; 828 return ( 829 (t = 830 !0 === o.options.centerMode 831 ? o.slideWidth * Math.floor(o.options.slidesToShow / 2) 832 : 0), 833 !0 === o.options.swipeToSlide 834 ? (o.$slideTrack.find(".slick-slide").each(function (s, n) { 835 if (n.offsetLeft - t + i(n).outerWidth() / 2 > -1 * o.swipeLeft) 836 return (e = n), !1; 837 }), 838 Math.abs(i(e).attr("data-slick-index") - o.currentSlide) || 1) 839 : o.options.slidesToScroll 840 ); 841 }), 842 (e.prototype.goTo = e.prototype.slickGoTo = 843 function (i, e) { 844 this.changeSlide({ data: { message: "index", index: parseInt(i) } }, e); 845 }), 846 (e.prototype.init = function (e) { 847 var t = this; 848 i(t.$slider).hasClass("slick-initialized") || 849 (i(t.$slider).addClass("slick-initialized"), 850 t.buildRows(), 851 t.buildOut(), 852 t.setProps(), 853 t.startLoad(), 854 t.loadSlider(), 855 t.initializeEvents(), 856 t.updateArrows(), 857 t.updateDots(), 858 t.checkResponsive(!0), 859 t.focusHandler()), 860 e && t.$slider.trigger("init", [t]), 861 !0 === t.options.accessibility && t.initADA(), 862 t.options.autoplay && ((t.paused = !1), t.autoPlay()); 863 }), 864 (e.prototype.initADA = function () { 865 var e = this, 866 t = Math.ceil(e.slideCount / e.options.slidesToShow), 867 o = e.getNavigableIndexes().filter(function (i) { 868 return i >= 0 && i < e.slideCount; 869 }); 870 e.$slides 871 .add(e.$slideTrack.find(".slick-cloned")) 872 .attr({ "aria-hidden": "true", tabindex: "-1" }) 873 .find("a, input, button, select") 874 .attr({ tabindex: "-1" }), 875 null !== e.$dots && 876 (e.$slides 877 .not(e.$slideTrack.find(".slick-cloned")) 878 .each(function (t) { 879 var s = o.indexOf(t); 880 i(this).attr({ 881 role: "tabpanel", 882 id: "slick-slide" + e.instanceUid + t, 883 tabindex: -1, 884 }), 885 -1 !== s && 886 i(this).attr({ 887 "aria-describedby": 888 "slick-slide-control" + e.instanceUid + s, 889 }); 890 }), 891 e.$dots 892 .attr("role", "tablist") 893 .find("li") 894 .each(function (s) { 895 var n = o[s]; 896 i(this).attr({ role: "presentation" }), 897 i(this) 898 .find("button") 899 .first() 900 .attr({ 901 role: "tab", 902 id: "slick-slide-control" + e.instanceUid + s, 903 "aria-controls": "slick-slide" + e.instanceUid + n, 904 "aria-label": s + 1 + " of " + t, 905 "aria-selected": null, 906 tabindex: "-1", 907 }); 908 }) 909 .eq(e.currentSlide) 910 .find("button") 911 .attr({ "aria-selected": "true", tabindex: "0" }) 912 .end()); 913 for (var s = e.currentSlide, n = s + e.options.slidesToShow; s < n; s++) 914 e.$slides.eq(s).attr("tabindex", 0); 915 e.activateADA(); 916 }), 917 (e.prototype.initArrowEvents = function () { 918 var i = this; 919 !0 === i.options.arrows && 920 i.slideCount > i.options.slidesToShow && 921 (i.$prevArrow 922 .off("click.slick") 923 .on("click.slick", { message: "previous" }, i.changeSlide), 924 i.$nextArrow 925 .off("click.slick") 926 .on("click.slick", { message: "next" }, i.changeSlide), 927 !0 === i.options.accessibility && 928 (i.$prevArrow.on("keydown.slick", i.keyHandler), 929 i.$nextArrow.on("keydown.slick", i.keyHandler))); 930 }), 931 (e.prototype.initDotEvents = function () { 932 var e = this; 933 !0 === e.options.dots && 934 (i("li", e.$dots).on( 935 "click.slick", 936 { message: "index" }, 937 e.changeSlide 938 ), 939 !0 === e.options.accessibility && 940 e.$dots.on("keydown.slick", e.keyHandler)), 941 !0 === e.options.dots && 942 !0 === e.options.pauseOnDotsHover && 943 i("li", e.$dots) 944 .on("mouseenter.slick", i.proxy(e.interrupt, e, !0))
945 .on("mouseleave.slick", i.proxy(e.interrupt, e, !1)); 946 }), 947 (e.prototype.initSlideEvents = function () { 948 var e = this; 949 e.options.pauseOnHover && 950 (e.$list.on("mouseenter.slick", i.proxy(e.interrupt, e, !0)), 951 e.$list.on("mouseleave.slick", i.proxy(e.interrupt, e, !1))); 952 }), 953 (e.prototype.initializeEvents = function () { 954 var e = this; 955 e.initArrowEvents(), 956 e.initDotEvents(), 957 e.initSlideEvents(), 958 e.$list.on( 959 "touchstart.slick mousedown.slick", 960 { action: "start" }, 961 e.swipeHandler 962 ), 963 e.$list.on( 964 "touchmove.slick mousemove.slick", 965 { action: "move" }, 966 e.swipeHandler 967 ), 968 e.$list.on( 969 "touchend.slick mouseup.slick", 970 { action: "end" }, 971 e.swipeHandler 972 ), 973 e.$list.on( 974 "touchcancel.slick mouseleave.slick", 975 { action: "end" }, 976 e.swipeHandler 977 ), 978 e.$list.on("click.slick", e.clickHandler), 979 i(document).on(e.visibilityChange, i.proxy(e.visibility, e)), 980 !0 === e.options.accessibility && 981 e.$list.on("keydown.slick", e.keyHandler), 982 !0 === e.options.focusOnSelect && 983 i(e.$slideTrack).children().on("click.slick", e.selectHandler), 984 i(window).on( 985 "orientationchange.slick.slick-" + e.instanceUid, 986 i.proxy(e.orientationChange, e) 987 ), 988 i(window).on( 989 "resize.slick.slick-" + e.instanceUid, 990 i.proxy(e.resize, e) 991 ), 992 i("[draggable!=true]", e.$slideTrack).on("dragstart", e.preventDefault), 993 i(window).on("load.slick.slick-" + e.instanceUid, e.setPosition), 994 i(e.setPosition); 995 }), 996 (e.prototype.initUI = function () { 997 var i = this; 998 !0 === i.options.arrows && 999 i.slideCount > i.options.slidesToShow && 1000 (i.$prevArrow.show(), i.$nextArrow.show()), 1001 !0 === i.options.dots && 1002 i.slideCount > i.options.slidesToShow && 1003 i.$dots.show(); 1004 }), 1005 (e.prototype.keyHandler = function (i) { 1006 var e = this; 1007 i.target.tagName.match("TEXTAREA|INPUT|SELECT") || 1008 (37 === i.keyCode && !0 === e.options.accessibility 1009 ? e.changeSlide({ 1010 data: { message: !0 === e.options.rtl ? "next" : "previous" }, 1011 }) 1012 : 39 === i.keyCode && 1013 !0 === e.options.accessibility && 1014 e.changeSlide({ 1015 data: { message: !0 === e.options.rtl ? "previous" : "next" }, 1016 })); 1017 }), 1018 (e.prototype.lazyLoad = function () { 1019 function e(e) { 1020 i("img[data-lazy]", e).each(function () { 1021 var e = i(this), 1022 t = i(this).attr("data-lazy"), 1023 o = i(this).attr("data-srcset"), 1024 s = i(this).attr("data-sizes") || n.$slider.attr("data-sizes"), 1025 r = document.createElement("img"); 1026 (r.onload = function () { 1027 e.animate({ opacity: 0 }, 100, function () { 1028 o && (e.attr("srcset", o), s && e.attr("sizes", s)), 1029 e.attr("src", t).animate({ opacity: 1 }, 200, function () { 1030 e.removeAttr("data-lazy data-srcset data-sizes").removeClass( 1031 "slick-loading" 1032 ); 1033 }), 1034 n.$slider.trigger("lazyLoaded", [n, e, t]); 1035 }); 1036 }), 1037 (r.onerror = function () { 1038 e 1039 .removeAttr("data-lazy") 1040 .removeClass("slick-loading") 1041 .addClass("slick-lazyload-error"), 1042 n.$slider.trigger("lazyLoadError", [n, e, t]); 1043 }), 1044 (r.src = t); 1045 }); 1046 } 1047 var t, 1048 o, 1049 s, 1050 n = this; 1051 if ( 1052 (!0 === n.options.centerMode 1053 ? !0 === n.options.infinite 1054 ? (s = 1055 (o = n.currentSlide + (n.options.slidesToShow / 2 + 1)) + 1056 n.options.slidesToShow + 1057 2) 1058 : ((o = Math.max( 1059 0, 1060 n.currentSlide - (n.options.slidesToShow / 2 + 1) 1061 )), 1062 (s = n.options.slidesToShow / 2 + 1 + 2 + n.currentSlide)) 1063 : ((o = n.options.infinite 1064 ? n.options.slidesToShow + n.currentSlide 1065 : n.currentSlide), 1066 (s = Math.ceil(o + n.options.slidesToShow)), 1067 !0 === n.options.fade && (o > 0 && o--, s <= n.slideCount && s++)), 1068 (t = n.$slider.find(".slick-slide").slice(o, s)), 1069 "anticipated" === n.options.lazyLoad) 1070 ) 1071 for ( 1072 var r = o - 1, l = s, d = n.$slider.find(".slick-slide"), a = 0; 1073 a < n.options.slidesToScroll; 1074 a++ 1075 ) 1076 r < 0 && (r = n.slideCount - 1), 1077 (t = (t = t.add(d.eq(r))).add(d.eq(l))), 1078 r--, 1079 l++; 1080 e(t), 1081 n.slideCount <= n.options.slidesToShow 1082 ? e(n.$slider.find(".slick-slide")) 1083 : n.currentSlide >= n.slideCount - n.options.slidesToShow 1084 ? e(n.$slider.find(".slick-cloned").slice(0, n.options.slidesToShow)) 1085 : 0 === n.currentSlide && 1086 e( 1087 n.$slider.find(".slick-cloned").slice(-1 * n.options.slidesToShow) 1088 ); 1089 }), 1090 (e.prototype.loadSlider = function () { 1091 var i = this; 1092 i.setPosition(), 1093 i.$slideTrack.css({ opacity: 1 }), 1094 i.$slider.removeClass("slick-loading"), 1095 i.initUI(), 1096 "progressive" === i.options.lazyLoad && i.progressiveLazyLoad(); 1097 }), 1098 (e.prototype.next = e.prototype.slickNext = 1099 function () { 1100 this.changeSlide({ data: { message: "next" } }); 1101 }), 1102 (e.prototype.orientationChange = function () { 1103 var i = this; 1104 i.checkResponsive(), i.setPosition(); 1105 }), 1106 (e.prototype.pause = e.prototype.slickPause = 1107 function () { 1108 var i = this; 1109 i.autoPlayClear(), (i.paused = !0); 1110 }), 1111 (e.prototype.play = e.prototype.slickPlay = 1112 function () { 1113 var i = this; 1114 i.autoPlay(), 1115 (i.options.autoplay = !0), 1116 (i.paused = !1), 1117 (i.focussed = !1), 1118 (i.interrupted = !1); 1119 }), 1120 (e.prototype.postSlide = function (e) { 1121 var t = this; 1122 t.unslicked || 1123 (t.$slider.trigger("afterChange", [t, e]), 1124 (t.animating = !1), 1125 t.slideCount > t.options.slidesToShow && t.setPosition(), 1126 (t.swipeLeft = null),
1127 t.options.autoplay && t.autoPlay(), 1128 !0 === t.options.accessibility && 1129 (t.initADA(), 1130 t.options.focusOnChange && 1131 i(t.$slides.get(t.currentSlide)).attr("tabindex", 0).focus())); 1132 }), 1133 (e.prototype.prev = e.prototype.slickPrev = 1134 function () { 1135 this.changeSlide({ data: { message: "previous" } }); 1136 }), 1137 (e.prototype.preventDefault = function (i) { 1138 i.preventDefault(); 1139 }), 1140 (e.prototype.progressiveLazyLoad = function (e) { 1141 e = e || 1; 1142 var t, 1143 o, 1144 s, 1145 n, 1146 r, 1147 l = this, 1148 d = i("img[data-lazy]", l.$slider); 1149 d.length 1150 ? ((t = d.first()), 1151 (o = t.attr("data-lazy")), 1152 (s = t.attr("data-srcset")), 1153 (n = t.attr("data-sizes") || l.$slider.attr("data-sizes")), 1154 ((r = document.createElement("img")).onload = function () { 1155 s && (t.attr("srcset", s), n && t.attr("sizes", n)), 1156 t 1157 .attr("src", o) 1158 .removeAttr("data-lazy data-srcset data-sizes") 1159 .removeClass("slick-loading"), 1160 !0 === l.options.adaptiveHeight && l.setPosition(), 1161 l.$slider.trigger("lazyLoaded", [l, t, o]), 1162 l.progressiveLazyLoad(); 1163 }), 1164 (r.onerror = function () { 1165 e < 3 1166 ? setTimeout(function () { 1167 l.progressiveLazyLoad(e + 1); 1168 }, 500) 1169 : (t 1170 .removeAttr("data-lazy") 1171 .removeClass("slick-loading") 1172 .addClass("slick-lazyload-error"), 1173 l.$slider.trigger("lazyLoadError", [l, t, o]), 1174 l.progressiveLazyLoad()); 1175 }), 1176 (r.src = o)) 1177 : l.$slider.trigger("allImagesLoaded", [l]); 1178 }), 1179 (e.prototype.refresh = function (e) { 1180 var t, 1181 o, 1182 s = this; 1183 (o = s.slideCount - s.options.slidesToShow), 1184 !s.options.infinite && s.currentSlide > o && (s.currentSlide = o), 1185 s.slideCount <= s.options.slidesToShow && (s.currentSlide = 0), 1186 (t = s.currentSlide), 1187 s.destroy(!0), 1188 i.extend(s, s.initials, { currentSlide: t }), 1189 s.init(), 1190 e || s.changeSlide({ data: { message: "index", index: t } }, !1); 1191 }), 1192 (e.prototype.registerBreakpoints = function () { 1193 var e, 1194 t, 1195 o, 1196 s = this, 1197 n = s.options.responsive || null; 1198 if ("array" === i.type(n) && n.length) { 1199 s.respondTo = s.options.respondTo || "window"; 1200 for (e in n) 1201 if (((o = s.breakpoints.length - 1), n.hasOwnProperty(e))) { 1202 for (t = n[e].breakpoint; o >= 0; ) 1203 s.breakpoints[o] && 1204 s.breakpoints[o] === t && 1205 s.breakpoints.splice(o, 1), 1206 o--; 1207 s.breakpoints.push(t), (s.breakpointSettings[t] = n[e].settings); 1208 } 1209 s.breakpoints.sort(function (i, e) { 1210 return s.options.mobileFirst ? i - e : e - i; 1211 }); 1212 } 1213 }), 1214 (e.prototype.reinit = function () { 1215 var e = this; 1216 (e.$slides = e.$slideTrack 1217 .children(e.options.slide) 1218 .addClass("slick-slide")), 1219 (e.slideCount = e.$slides.length), 1220 e.currentSlide >= e.slideCount && 1221 0 !== e.currentSlide && 1222 (e.currentSlide = e.currentSlide - e.options.slidesToScroll), 1223 e.slideCount <= e.options.slidesToShow && (e.currentSlide = 0), 1224 e.registerBreakpoints(), 1225 e.setProps(), 1226 e.setupInfinite(), 1227 e.buildArrows(), 1228 e.updateArrows(), 1229 e.initArrowEvents(), 1230 e.buildDots(), 1231 e.updateDots(), 1232 e.initDotEvents(), 1233 e.cleanUpSlideEvents(), 1234 e.initSlideEvents(), 1235 e.checkResponsive(!1, !0), 1236 !0 === e.options.focusOnSelect && 1237 i(e.$slideTrack).children().on("click.slick", e.selectHandler), 1238 e.setSlideClasses( 1239 "number" == typeof e.currentSlide ? e.currentSlide : 0 1240 ), 1241 e.setPosition(), 1242 e.focusHandler(), 1243 (e.paused = !e.options.autoplay), 1244 e.autoPlay(), 1245 e.$slider.trigger("reInit", [e]); 1246 }), 1247 (e.prototype.resize = function () { 1248 var e = this; 1249 i(window).width() !== e.windowWidth && 1250 (clearTimeout(e.windowDelay), 1251 (e.windowDelay = window.setTimeout(function () { 1252 (e.windowWidth = i(window).width()), 1253 e.checkResponsive(), 1254 e.unslicked || e.setPosition(); 1255 }, 50))); 1256 }), 1257 (e.prototype.removeSlide = e.prototype.slickRemove = 1258 function (i, e, t) { 1259 var o = this; 1260 if ( 1261 ((i = 1262 "boolean" == typeof i 1263 ? !0 === (e = i) 1264 ? 0 1265 : o.slideCount - 1 1266 : !0 === e 1267 ? --i 1268 : i), 1269 o.slideCount < 1 || i < 0 || i > o.slideCount - 1) 1270 ) 1271 return !1; 1272 o.unload(), 1273 !0 === t 1274 ? o.$slideTrack.children().remove() 1275 : o.$slideTrack.children(this.options.slide).eq(i).remove(), 1276 (o.$slides = o.$slideTrack.children(this.options.slide)), 1277 o.$slideTrack.children(this.options.slide).detach(), 1278 o.$slideTrack.append(o.$slides), 1279 (o.$slidesCache = o.$slides), 1280 o.reinit(); 1281 }), 1282 (e.prototype.setCSS = function (i) { 1283 var e, 1284 t, 1285 o = this, 1286 s = {}; 1287 !0 === o.options.rtl && (i = -i), 1288 (e = "left" == o.positionProp ? Math.ceil(i) + "px" : "0px"), 1289 (t = "top" == o.positionProp ? Math.ceil(i) + "px" : "0px"), 1290 (s[o.positionProp] = i), 1291 !1 === o.transformsEnabled 1292 ? o.$slideTrack.css(s) 1293 : ((s = {}), 1294 !1 === o.cssTransitions 1295 ? ((s[o.animType] = "translate(" + e + ", " + t + ")"), 1296 o.$slideTrack.css(s)) 1297 : ((s[o.animType] = "translate3d(" + e + ", " + t + ", 0px)"), 1298 o.$slideTrack.css(s))); 1299 }), 1300 (e.prototype.setDimensions = function () { 1301 var i = this; 1302 !1 === i.options.vertical 1303 ? !0 === i.options.centerMode && 1304 i.$list.css({ padding: "0px " + i.options.centerPadding }) 1305 : (i.$list.height( 1306 i.$slides.first().outerHeight(!0) * i.options.slidesToShow 1307 ), 1308 !0 === i.options.centerMode && 1309 i.$list.css({ padding: i.options.centerPadding + " 0px" })), 1310 (i.listWidth = i.$list.width()), 1311 (i.listHeight = i.$list.height()), 1312 !1 === i.options.vertical && !1 === i.options.variableWidth 1313 ? ((i.slideWidth = Math.ceil(i.listWidth / i.options.slidesToShow)), 1314 i.$slideTrack.width( 1315 Math.ceil( 1316 i.slideWidth * i.$slideTrack.children(".slick-slide").length 1317 ) 1318 )) 1319 : !0 === i.options.variableWidth 1320 ? i.$slideTrack.width(5e3 * i.slideCount) 1321 : ((i.slideWidth = Math.ceil(i.listWidth)), 1322 i.$slideTrack.height( 1323 Math.ceil( 1324 i.$slides.first().outerHeight(!0) * 1325 i.$slideTrack.children(".slick-slide").length 1326 ) 1327 )); 1328 var e = i.$slides.first().outerWidth(!0) - i.$slides.first().width(); 1329 !1 === i.options.variableWidth && 1330 i.$slideTrack.children(".slick-slide").width(i.slideWidth - e); 1331 }), 1332 (e.prototype.setFade = function () { 1333 var e, 1334 t = this; 1335 t.$slides.each(function (o, s) { 1336 (e = t.slideWidth * o * -1), 1337 !0 === t.options.rtl 1338 ? i(s).css({ 1339 position: "relative", 1340 right: e, 1341 top: 0, 1342 zIndex: t.options.zIndex - 2, 1343 opacity: 0, 1344 }) 1345 : i(s).css({ 1346 position: "relative", 1347 left: e, 1348 top: 0, 1349 zIndex: t.options.zIndex - 2, 1350 opacity: 0, 1351 }); 1352 }), 1353 t.$slides 1354 .eq(t.currentSlide) 1355 .css({ zIndex: t.options.zIndex - 1, opacity: 1 }); 1356 }), 1357 (e.prototype.setHeight = function () { 1358 var i = this; 1359 if ( 1360 1 === i.options.slidesToShow && 1361 !0 === i.options.adaptiveHeight && 1362 !1 === i.options.vertical 1363 ) { 1364 var e = i.$slides.eq(i.currentSlide).outerHeight(!0); 1365 i.$list.css("height", e); 1366 } 1367 }), 1368 (e.prototype.setOption = e.prototype.slickSetOption = 1369 function () { 1370 var e, 1371 t, 1372 o, 1373 s, 1374 n, 1375 r = this, 1376 l = !1; 1377 if ( 1378 ("object" === i.type(arguments[0]) 1379 ? ((o = arguments[0]), (l = arguments[1]), (n = "multiple")) 1380 : "string" === i.type(arguments[0]) && 1381 ((o = arguments[0]), 1382 (s = arguments[1]), 1383 (l = arguments[2]), 1384 "responsive" === arguments[0] && "array" === i.type(arguments[1]) 1385 ? (n = "responsive") 1386 : void 0 !== arguments[1] && (n = "single")), 1387 "single" === n) 1388 ) 1389 r.options[o] = s; 1390 else if ("multiple" === n) 1391 i.each(o, function (i, e) { 1392 r.options[i] = e; 1393 }); 1394 else if ("responsive" === n) 1395 for (t in s) 1396 if ("array" !== i.type(r.options.responsive)) 1397 r.options.responsive = [s[t]]; 1398 else { 1399 for (e = r.options.responsive.length - 1; e >= 0; ) 1400 r.options.responsive[e].breakpoint === s[t].breakpoint && 1401 r.options.responsive.splice(e, 1), 1402 e--; 1403 r.options.responsive.push(s[t]); 1404 } 1405 l && (r.unload(), r.reinit()); 1406 }), 1407 (e.prototype.setPosition = function () { 1408 var i = this; 1409 i.setDimensions(), 1410 i.setHeight(), 1411 !1 === i.options.fade 1412 ? i.setCSS(i.getLeft(i.currentSlide)) 1413 : i.setFade(), 1414 i.$slider.trigger("setPosition", [i]); 1415 }), 1416 (e.prototype.setProps = function () { 1417 var i = this, 1418 e = document.body.style; 1419 (i.positionProp = !0 === i.options.vertical ? "top" : "left"), 1420 "top" === i.positionProp 1421 ? i.$slider.addClass("slick-vertical") 1422 : i.$slider.removeClass("slick-vertical"), 1423 (void 0 === e.WebkitTransition && 1424 void 0 === e.MozTransition && 1425 void 0 === e.msTransition) || 1426 (!0 === i.options.useCSS && (i.cssTransitions = !0)), 1427 i.options.fade && 1428 ("number" == typeof i.options.zIndex 1429 ? i.options.zIndex < 3 && (i.options.zIndex = 3) 1430 : (i.options.zIndex = i.defaults.zIndex)), 1431 void 0 !== e.OTransform && 1432 ((i.animType = "OTransform"), 1433 (i.transformType = "-o-transform"), 1434 (i.transitionType = "OTransition"), 1435 void 0 === e.perspectiveProperty && 1436 void 0 === e.webkitPerspective && 1437 (i.animType = !1)), 1438 void 0 !== e.MozTransform && 1439 ((i.animType = "MozTransform"), 1440 (i.transformType = "-moz-transform"), 1441 (i.transitionType = "MozTransition"), 1442 void 0 === e.perspectiveProperty && 1443 void 0 === e.MozPerspective && 1444 (i.animType = !1)), 1445 void 0 !== e.webkitTransform &&
1446 ((i.animType = "webkitTransform"), 1447 (i.transformType = "-webkit-transform"), 1448 (i.transitionType = "webkitTransition"), 1449 void 0 === e.perspectiveProperty && 1450 void 0 === e.webkitPerspective && 1451 (i.animType = !1)), 1452 void 0 !== e.msTransform && 1453 ((i.animType = "msTransform"), 1454 (i.transformType = "-ms-transform"), 1455 (i.transitionType = "msTransition"), 1456 void 0 === e.msTransform && (i.animType = !1)), 1457 void 0 !== e.transform && 1458 !1 !== i.animType && 1459 ((i.animType = "transform"), 1460 (i.transformType = "transform"), 1461 (i.transitionType = "transition")), 1462 (i.transformsEnabled = 1463 i.options.useTransform && null !== i.animType && !1 !== i.animType); 1464 }), 1465 (e.prototype.setSlideClasses = function (i) { 1466 var e, 1467 t, 1468 o, 1469 s, 1470 n = this; 1471 if ( 1472 ((t = n.$slider 1473 .find(".slick-slide") 1474 .removeClass("slick-active slick-center slick-current") 1475 .attr("aria-hidden", "true")), 1476 n.$slides.eq(i).addClass("slick-current"), 1477 !0 === n.options.centerMode) 1478 ) { 1479 var r = n.options.slidesToShow % 2 == 0 ? 1 : 0; 1480 (e = Math.floor(n.options.slidesToShow / 2)), 1481 !0 === n.options.infinite && 1482 (i >= e && i <= n.slideCount - 1 - e 1483 ? n.$slides 1484 .slice(i - e + r, i + e + 1) 1485 .addClass("slick-active") 1486 .attr("aria-hidden", "false") 1487 : ((o = n.options.slidesToShow + i), 1488 t 1489 .slice(o - e + 1 + r, o + e + 2) 1490 .addClass("slick-active") 1491 .attr("aria-hidden", "false")), 1492 0 === i 1493 ? t 1494 .eq(t.length - 1 - n.options.slidesToShow) 1495 .addClass("slick-center") 1496 : i === n.slideCount - 1 && 1497 t.eq(n.options.slidesToShow).addClass("slick-center")), 1498 n.$slides.eq(i).addClass("slick-center"); 1499 } else 1500 i >= 0 && i <= n.slideCount - n.options.slidesToShow 1501 ? n.$slides 1502 .slice(i, i + n.options.slidesToShow) 1503 .addClass("slick-active") 1504 .attr("aria-hidden", "false") 1505 : t.length <= n.options.slidesToShow 1506 ? t.addClass("slick-active").attr("aria-hidden", "false") 1507 : ((s = n.slideCount % n.options.slidesToShow), 1508 (o = !0 === n.options.infinite ? n.options.slidesToShow + i : i), 1509 n.options.slidesToShow == n.options.slidesToScroll && 1510 n.slideCount - i < n.options.slidesToShow 1511 ? t 1512 .slice(o - (n.options.slidesToShow - s), o + s) 1513 .addClass("slick-active") 1514 .attr("aria-hidden", "false") 1515 : t 1516 .slice(o, o + n.options.slidesToShow) 1517 .addClass("slick-active") 1518 .attr("aria-hidden", "false")); 1519 ("ondemand" !== n.options.lazyLoad && 1520 "anticipated" !== n.options.lazyLoad) || 1521 n.lazyLoad(); 1522 }), 1523 (e.prototype.setupInfinite = function () { 1524 var e, 1525 t, 1526 o, 1527 s = this; 1528 if ( 1529 (!0 === s.options.fade && (s.options.centerMode = !1), 1530 !0 === s.options.infinite && 1531 !1 === s.options.fade && 1532 ((t = null), s.slideCount > s.options.slidesToShow)) 1533 ) { 1534 for ( 1535 o = 1536 !0 === s.options.centerMode 1537 ? s.options.slidesToShow + 1 1538 : s.options.slidesToShow, 1539 e = s.slideCount; 1540 e > s.slideCount - o; 1541 e -= 1 1542 ) 1543 (t = e - 1), 1544 i(s.$slides[t]) 1545 .clone(!0) 1546 .attr("id", "") 1547 .attr("data-slick-index", t - s.slideCount) 1548 .prependTo(s.$slideTrack) 1549 .addClass("slick-cloned"); 1550 for (e = 0; e < o + s.slideCount; e += 1) 1551 (t = e), 1552 i(s.$slides[t]) 1553 .clone(!0) 1554 .attr("id", "") 1555 .attr("data-slick-index", t + s.slideCount) 1556 .appendTo(s.$slideTrack) 1557 .addClass("slick-cloned"); 1558 s.$slideTrack 1559 .find(".slick-cloned") 1560 .find("[id]") 1561 .each(function () { 1562 i(this).attr("id", ""); 1563 }); 1564 } 1565 }), 1566 (e.prototype.interrupt = function (i) { 1567 var e = this; 1568 i || e.autoPlay(), (e.interrupted = i); 1569 }), 1570 (e.prototype.selectHandler = function (e) { 1571 var t = this, 1572 o = i(e.target).is(".slick-slide") 1573 ? i(e.target) 1574 : i(e.target).parents(".slick-slide"), 1575 s = parseInt(o.attr("data-slick-index")); 1576 s || (s = 0), 1577 t.slideCount <= t.options.slidesToShow 1578 ? t.slideHandler(s, !1, !0) 1579 : t.slideHandler(s); 1580 }), 1581 (e.prototype.slideHandler = function (i, e, t) { 1582 var o, 1583 s, 1584 n, 1585 r, 1586 l, 1587 d = null, 1588 a = this; 1589 if ( 1590 ((e = e || !1), 1591 !( 1592 (!0 === a.animating && !0 === a.options.waitForAnimate) || 1593 (!0 === a.options.fade && a.currentSlide === i) 1594 )) 1595 ) 1596 if ( 1597 (!1 === e && a.asNavFor(i), 1598 (o = i), 1599 (d = a.getLeft(o)), 1600 (r = a.getLeft(a.currentSlide)), 1601 (a.currentLeft = null === a.swipeLeft ? r : a.swipeLeft), 1602 !1 === a.options.infinite && 1603 !1 === a.options.centerMode && 1604 (i < 0 || i > a.getDotCount() * a.options.slidesToScroll)) 1605 ) 1606 !1 === a.options.fade && 1607 ((o = a.currentSlide), 1608 !0 !== t 1609 ? a.animateSlide(r, function () { 1610 a.postSlide(o); 1611 }) 1612 : a.postSlide(o)); 1613 else if ( 1614 !1 === a.options.infinite && 1615 !0 === a.options.centerMode && 1616 (i < 0 || i > a.slideCount - a.options.slidesToScroll) 1617 ) 1618 !1 === a.options.fade && 1619 ((o = a.currentSlide), 1620 !0 !== t 1621 ? a.animateSlide(r, function () { 1622 a.postSlide(o); 1623 }) 1624 : a.postSlide(o)); 1625 else { 1626 if ( 1627 (a.options.autoplay && clearInterval(a.autoPlayTimer), 1628 (s = 1629 o < 0 1630 ? a.slideCount % a.options.slidesToScroll != 0 1631 ? a.slideCount - (a.slideCount % a.options.slidesToScroll) 1632 : a.slideCount + o 1633 : o >= a.slideCount 1634 ? a.slideCount % a.options.slidesToScroll != 0 1635 ? 0 1636 : o - a.slideCount 1637 : o), 1638 (a.animating = !0), 1639 a.$slider.trigger("beforeChange", [a, a.currentSlide, s]), 1640 (n = a.currentSlide), 1641 (a.currentSlide = s), 1642 a.setSlideClasses(a.currentSlide), 1643 a.options.asNavFor && 1644 (l = (l = a.getNavTarget()).slick("getSlick")).slideCount <= 1645 l.options.slidesToShow && 1646 l.setSlideClasses(a.currentSlide), 1647 a.updateDots(), 1648 a.updateArrows(), 1649 !0 === a.options.fade) 1650 ) 1651 return ( 1652 !0 !== t 1653 ? (a.fadeSlideOut(n), 1654 a.fadeSlide(s, function () { 1655 a.postSlide(s); 1656 })) 1657 : a.postSlide(s), 1658 void a.animateHeight() 1659 ); 1660 !0 !== t 1661 ? a.animateSlide(d, function () { 1662 a.postSlide(s); 1663 }) 1664 : a.postSlide(s); 1665 } 1666 }), 1667 (e.prototype.startLoad = function () { 1668 var i = this; 1669 !0 === i.options.arrows && 1670 i.slideCount > i.options.slidesToShow && 1671 (i.$prevArrow.hide(), i.$nextArrow.hide()), 1672 !0 === i.options.dots && 1673 i.slideCount > i.options.slidesToShow && 1674 i.$dots.hide(), 1675 i.$slider.addClass("slick-loading"); 1676 }), 1677 (e.prototype.swipeDirection = function () { 1678 var i, 1679 e, 1680 t, 1681 o, 1682 s = this; 1683 return ( 1684 (i = s.touchObject.startX - s.touchObject.curX), 1685 (e = s.touchObject.startY - s.touchObject.curY), 1686 (t = Math.atan2(e, i)), 1687 (o = Math.round((180 * t) / Math.PI)) < 0 && (o = 360 - Math.abs(o)), 1688 o <= 45 && o >= 0 1689 ? !1 === s.options.rtl 1690 ? "left" 1691 : "right" 1692 : o <= 360 && o >= 315 1693 ? !1 === s.options.rtl 1694 ? "left" 1695 : "right" 1696 : o >= 135 && o <= 225 1697 ? !1 === s.options.rtl 1698 ? "right" 1699 : "left" 1700 : !0 === s.options.verticalSwiping 1701 ? o >= 35 && o <= 135 1702 ? "down" 1703 : "up" 1704 : "vertical" 1705 ); 1706 }), 1707 (e.prototype.swipeEnd = function (i) { 1708 var e, 1709 t, 1710 o = this; 1711 if (((o.dragging = !1), (o.swiping = !1), o.scrolling)) 1712 return (o.scrolling = !1), !1; 1713 if ( 1714 ((o.interrupted = !1), 1715 (o.shouldClick = !(o.touchObject.swipeLength > 10)), 1716 void 0 === o.touchObject.curX) 1717 ) 1718 return !1; 1719 if ( 1720 (!0 === o.touchObject.edgeHit && 1721 o.$slider.trigger("edge", [o, o.swipeDirection()]), 1722 o.touchObject.swipeLength >= o.touchObject.minSwipe) 1723 ) { 1724 switch ((t = o.swipeDirection())) {
1725 case "left": 1726 case "down": 1727 (e = o.options.swipeToSlide 1728 ? o.checkNavigable(o.currentSlide + o.getSlideCount()) 1729 : o.currentSlide + o.getSlideCount()), 1730 (o.currentDirection = 0); 1731 break; 1732 case "right": 1733 case "up": 1734 (e = o.options.swipeToSlide 1735 ? o.checkNavigable(o.currentSlide - o.getSlideCount()) 1736 : o.currentSlide - o.getSlideCount()), 1737 (o.currentDirection = 1); 1738 } 1739 "vertical" != t && 1740 (o.slideHandler(e), 1741 (o.touchObject = {}), 1742 o.$slider.trigger("swipe", [o, t])); 1743 } else 1744 o.touchObject.startX !== o.touchObject.curX && 1745 (o.slideHandler(o.currentSlide), (o.touchObject = {})); 1746 }), 1747 (e.prototype.swipeHandler = function (i) { 1748 var e = this; 1749 if ( 1750 !( 1751 !1 === e.options.swipe || 1752 ("ontouchend" in document && !1 === e.options.swipe) || 1753 (!1 === e.options.draggable && -1 !== i.type.indexOf("mouse")) 1754 ) 1755 ) 1756 switch ( 1757 ((e.touchObject.fingerCount = 1758 i.originalEvent && void 0 !== i.originalEvent.touches 1759 ? i.originalEvent.touches.length 1760 : 1), 1761 (e.touchObject.minSwipe = e.listWidth / e.options.touchThreshold), 1762 !0 === e.options.verticalSwiping && 1763 (e.touchObject.minSwipe = e.listHeight / e.options.touchThreshold), 1764 i.data.action) 1765 ) { 1766 case "start": 1767 e.swipeStart(i); 1768 break; 1769 case "move": 1770 e.swipeMove(i); 1771 break; 1772 case "end": 1773 e.swipeEnd(i); 1774 } 1775 }), 1776 (e.prototype.swipeMove = function (i) { 1777 var e, 1778 t, 1779 o, 1780 s, 1781 n, 1782 r, 1783 l = this; 1784 return ( 1785 (n = void 0 !== i.originalEvent ? i.originalEvent.touches : null), 1786 !(!l.dragging || l.scrolling || (n && 1 !== n.length)) && 1787 ((e = l.getLeft(l.currentSlide)), 1788 (l.touchObject.curX = void 0 !== n ? n[0].pageX : i.clientX), 1789 (l.touchObject.curY = void 0 !== n ? n[0].pageY : i.clientY), 1790 (l.touchObject.swipeLength = Math.round( 1791 Math.sqrt(Math.pow(l.touchObject.curX - l.touchObject.startX, 2)) 1792 )), 1793 (r = Math.round( 1794 Math.sqrt(Math.pow(l.touchObject.curY - l.touchObject.startY, 2)) 1795 )), 1796 !l.options.verticalSwiping && !l.swiping && r > 4 1797 ? ((l.scrolling = !0), !1) 1798 : (!0 === l.options.verticalSwiping && 1799 (l.touchObject.swipeLength = r), 1800 (t = l.swipeDirection()), 1801 void 0 !== i.originalEvent && 1802 l.touchObject.swipeLength > 4 && 1803 ((l.swiping = !0), i.preventDefault()), 1804 (s = 1805 (!1 === l.options.rtl ? 1 : -1) * 1806 (l.touchObject.curX > l.touchObject.startX ? 1 : -1)), 1807 !0 === l.options.verticalSwiping && 1808 (s = l.touchObject.curY > l.touchObject.startY ? 1 : -1), 1809 (o = l.touchObject.swipeLength), 1810 (l.touchObject.edgeHit = !1), 1811 !1 === l.options.infinite && 1812 ((0 === l.currentSlide && "right" === t) || 1813 (l.currentSlide >= l.getDotCount() && "left" === t)) && 1814 ((o = l.touchObject.swipeLength * l.options.edgeFriction), 1815 (l.touchObject.edgeHit = !0)), 1816 !1 === l.options.vertical 1817 ? (l.swipeLeft = e + o * s) 1818 : (l.swipeLeft = e + o * (l.$list.height() / l.listWidth) * s), 1819 !0 === l.options.verticalSwiping && (l.swipeLeft = e + o * s), 1820 !0 !== l.options.fade && 1821 !1 !== l.options.touchMove && 1822 (!0 === l.animating 1823 ? ((l.swipeLeft = null), !1) 1824 : void l.setCSS(l.swipeLeft)))) 1825 ); 1826 }), 1827 (e.prototype.swipeStart = function (i) { 1828 var e, 1829 t = this; 1830 if ( 1831 ((t.interrupted = !0), 1832 1 !== t.touchObject.fingerCount || 1833 t.slideCount <= t.options.slidesToShow) 1834 ) 1835 return (t.touchObject = {}), !1; 1836 void 0 !== i.originalEvent && 1837 void 0 !== i.originalEvent.touches && 1838 (e = i.originalEvent.touches[0]), 1839 (t.touchObject.startX = t.touchObject.curX = 1840 void 0 !== e ? e.pageX : i.clientX), 1841 (t.touchObject.startY = t.touchObject.curY = 1842 void 0 !== e ? e.pageY : i.clientY), 1843 (t.dragging = !0); 1844 }), 1845 (e.prototype.unfilterSlides = e.prototype.slickUnfilter = 1846 function () { 1847 var i = this; 1848 null !== i.$slidesCache && 1849 (i.unload(), 1850 i.$slideTrack.children(this.options.slide).detach(), 1851 i.$slidesCache.appendTo(i.$slideTrack), 1852 i.reinit()); 1853 }), 1854 (e.prototype.unload = function () { 1855 var e = this; 1856 i(".slick-cloned", e.$slider).remove(), 1857 e.$dots && e.$dots.remove(), 1858 e.$prevArrow && 1859 e.htmlExpr.test(e.options.prevArrow) && 1860 e.$prevArrow.remove(), 1861 e.$nextArrow && 1862 e.htmlExpr.test(e.options.nextArrow) && 1863 e.$nextArrow.remove(), 1864 e.$slides 1865 .removeClass("slick-slide slick-active slick-visible slick-current") 1866 .attr("aria-hidden", "true") 1867 .css("width", ""); 1868 }),
1869 (e.prototype.unslick = function (i) { 1870 var e = this; 1871 e.$slider.trigger("unslick", [e, i]), e.destroy(); 1872 }), 1873 (e.prototype.updateArrows = function () { 1874 var i = this; 1875 Math.floor(i.options.slidesToShow / 2), 1876 !0 === i.options.arrows && 1877 i.slideCount > i.options.slidesToShow && 1878 !i.options.infinite && 1879 (i.$prevArrow 1880 .removeClass("slick-disabled") 1881 .attr("aria-disabled", "false"), 1882 i.$nextArrow 1883 .removeClass("slick-disabled") 1884 .attr("aria-disabled", "false"), 1885 0 === i.currentSlide 1886 ? (i.$prevArrow 1887 .addClass("slick-disabled") 1888 .attr("aria-disabled", "true"), 1889 i.$nextArrow 1890 .removeClass("slick-disabled") 1891 .attr("aria-disabled", "false")) 1892 : i.currentSlide >= i.slideCount - i.options.slidesToShow && 1893 !1 === i.options.centerMode 1894 ? (i.$nextArrow 1895 .addClass("slick-disabled") 1896 .attr("aria-disabled", "true"), 1897 i.$prevArrow 1898 .removeClass("slick-disabled") 1899 .attr("aria-disabled", "false")) 1900 : i.currentSlide >= i.slideCount - 1 && 1901 !0 === i.options.centerMode && 1902 (i.$nextArrow 1903 .addClass("slick-disabled") 1904 .attr("aria-disabled", "true"), 1905 i.$prevArrow 1906 .removeClass("slick-disabled") 1907 .attr("aria-disabled", "false"))); 1908 }), 1909 (e.prototype.updateDots = function () { 1910 var i = this; 1911 null !== i.$dots && 1912 (i.$dots.find("li").removeClass("slick-active").end(), 1913 i.$dots 1914 .find("li") 1915 .eq(Math.floor(i.currentSlide / i.options.slidesToScroll)) 1916 .addClass("slick-active")); 1917 }), 1918 (e.prototype.visibility = function () { 1919 var i = this; 1920 i.options.autoplay && 1921 (document[i.hidden] ? (i.interrupted = !0) : (i.interrupted = !1)); 1922 }), 1923 (i.fn.slick = function () { 1924 var i, 1925 t, 1926 o = this, 1927 s = arguments[0], 1928 n = Array.prototype.slice.call(arguments, 1), 1929 r = o.length; 1930 for (i = 0; i < r; i++) 1931 if ( 1932 ("object" == typeof s || void 0 === s 1933 ? (o[i].slick = new e(o[i], s)) 1934 : (t = o[i].slick[s].apply(o[i].slick, n)), 1935 void 0 !== t) 1936 ) 1937 return t; 1938 return o; 1939 }); 1940});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.