PageSourceSearch

https://www.bristol-salzburg.at/js/uncompressed_responsive.js

js bristol-salzburg.at collected 2026-10-06 20:13:32 UTC 97,228 bytes, 1,249 lines download raw bytes

1/*
2    Responsive framework javascript collection
3    Version 2.4 2019-03-27
4*/
5var framework_ver = '2.4 (cms R12.0+)';
6
7function iv(element, ggroup)
8{
9    if(typeof(hs) == 'undefined') return true;
10
11    if(typeof(ggroup) == "undefined") ggroup = 'ghs';
12    /* 0 - desktop, 1 - tablet, 2 - mobile */
13    if(!jQuery('.rscale').length) return true; // No rule, we have no idea where we are, allow the image to be opened directly
14    if(jQuery('.rscale').width() == 2) return false;
15
16    return hs.expand(element, { slideshowGroup: ggroup });
17}
18
19function ive(element)
20{
21    if(typeof(hs) == 'undefined') return true;
22
23    /* 0 - desktop, 1 - tablet, 2 - mobile */
24    if(jQuery('.rscale').width() == 2) return true;
25
26    return hs.htmlExpand(element, {objectType: 'iframe'});
27}
28
29/* ****************************************************************** */
30/* jQuery / extra functions */
31/* ****************************************************************** */
32$.fn.hasAttr = function(name) {
33   return this.attr(name) !== undefined;
34};
35function utf8_decode(a){var c=[],e=0,g=0,f=0,d=0,b=0;a+="";while(e<a.length){f=a.charCodeAt(e);if(f<128){c[g++]=String.fromCharCode(f);e++}else{if((f>191)&&(f<224)){d=a.charCodeAt(e+1);c[g++]=String.fromCharCode(((f&31)<<6)|(d&63));e+=2}else{d=a.charCodeAt(e+1);
35b=a.charCodeAt(e+2);c[g++]=String.fromCharCode(((f&15)<<12)|((d&63)<<6)|(b&63));e+=3}}}return c.join("")}
36function utf8_encode(a){var h=(a+"");var i="";var b,e;var c=0;b=e=0;c=h.length;for(var d=0;d<c;d++){var g=h.charCodeAt(d);var f=null;if(g<128){e++}else{if(g>127&&g<2048){f=String.fromCharCode((g>>6)|192)+String.fromCharCode((g&63)|128)}else{f=String.fromCharCode((g>>12)|224)+String.fromCharCode(((g>>6)&63)|128)+String.fromCharCode((g&63)|128)}}if(f!==null){if(e>b){i+=h.substring(b,e)}i+=f;b=e=d+1}}if(e>b){i+=h.substring(b,h.length)}return i}
37function unserialize(f){var c=this;var a=function(h){var i=h.charCodeAt(0);if(i<128){return 0}if(i<2048){return 1}return 2};var b=function(j,k,i,h){throw new c.window[j](k,i,h)};var g=function(l,n,m){var h=[];var k=l.slice(n,n+1);var j=2;while(k!=m){if((j+n)>l.length){b("Error","Invalid")}h.push(k);k=l.slice(n+(j-1),n+j);j+=1}return[h.length,h.join("")]};var e=function(m,n,l){var h;h=[];for(var j=0;j<l;j++){var k=m.slice(n+(j-1),n+j);h.push(k);l-=a(k)}return[h.length,h.join("")]};var d=function(z,l){var y;var j;var q=0;var m;var h;var v;var p;if(!l){l=0}var x=(z.slice(l,l+1)).toLowerCase();var o=l+2;var w=function(i){return i};switch(x){case"i":w=function(i){return parseInt(i,10)};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"b":w=function(i){return parseInt(i,10)!==0};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"d":w=function(i){return parseFloat(i)};j=g(z,o,";");q=j[0];y=j[1];o+=q+1;break;case"n":y=null;break;case"s":m=g(z,o,":");q=m[0];h=m[1];o+=q+2;j=e(z,o+1,parseInt(h,10));q=j[0];y=j[1];o+=q+2;if(q!=parseInt(h,10)&&q!=y.length){b("SyntaxError","String length mismatch")}y=c.utf8_decode(y);break;case"a":y={};v=g(z,o,":");q=v[0];p=v[1];o+=q+2;for(var u=0;u<parseInt(p,10);u++){var k=d(z,o);var r=k[1];var A=k[2];o+=r;var t=d(z,o);var n=t[1];var s=t[2];o+=n;y[A]=s}o+=1;break;default:b("SyntaxError","Unknown / Unhandled data type(s): "+x);break}return[x,o-l,w(y)]};return d((f+""),0)[2]}
38function serialize(c){var h=function(o){var n=typeof o,k;var m;if(n=="object"&&!o){return"null"}if(n=="object"){if(!o.constructor){return"object"}var j=o.constructor.toString();k=j.match(/(\w+)\(/);if(k){j=k[1].toLowerCase()}var l=["boolean","number","string","array"];for(m in l){if(j==l[m]){n=l[m];break}}}return n};var e=h(c);var a,b="";switch(e){case"function":a="";break;case"boolean":a="b:"+(c?"1":"0");break;case"number":a=(Math.round(c)==c?"i":"d")+":"+c;break;case"string":c=this.utf8_encode(c);a="s:"+encodeURIComponent(c).replace(/%../g,"x").length+':"'+c+'"';break;case"array":case"object":a="a";var d=0;var f="";var i;var g;for(g in c){b=h(c[g]);if(b=="function"){continue}i=(g.match(/^[0-9]+$/)?parseInt(g,10):g);f+=this.serialize(i)+this.serialize(c[g]);d++}a+=":"+d+":{"+f+"}";break;case"undefined":default:a="N";break}if(e!="object"&&e!="array"){a+=";"}return a};
39
40/* ****************************************************************** */
41/* jQuery / State & Resize function */
42/* ****************************************************************** */
43$.regResize = function(fnc)
44{
45    if(typeof($.fnc_resize) == 'undefined') $.fnc_resize = [];
46    $.fnc_resize.push(fnc);
47}
48$.regResizeHandler = function()
49{
50    if($.jqww == $(window).width()) return; // Viewport actually did not resized
51    $.jqww = $(window).width();
52    for(var i in $.fnc_resize)
53        $.fnc_resize[i]( $.jqww );
54}
55$.regResizeInit = function()
56{
57    $.jqww = $(window).width();
58    jQuery(window).resize( function(){ $.regResizeHandler()} );
59}
60jQuery(document).ready(function(){ $.regResizeInit(); });
61
62/**/
63$.regStateChange = function(fnc)
64{
65    if(typeof($.fnc_statechange) == 'undefined') $.fnc_statechange = [];
66    $.fnc_statechange.push(fnc);
67}
68$.regStateChangeHandler = function()
69{
70    var state = jQuery('body > .rscale').width();
71    if($.jqrstate == state) return; // State didn't changed
72    var old_state = $.jqrstate;
73    $.jqrstate = state;
74
75    for(var i in $.fnc_statechange)
76        $.fnc_statechange[i]( state, old_state );
77}
78jQuery(document).ready(function(){
79    $.regResize( function(){ $.regStateChangeHandler()} );
80});
81
82/* ****************************************************************** */
83/* Onsite storage management */
84/* ****************************************************************** */
85var storage = {};
86storage.getItem = function(name)
87{
88    if(typeof(Storage) !== "undefined")
89    {
90        if(storage.status(name) == 0) return undefined; // Storage expired
91        return unescape(localStorage[name]);
92    }
93    else
94        return storage.readCookie(name);
95}
96storage.getJSON = function(name)
97{
98    var list = storage.getItem(name);
99
100    if(typeof(list) == 'number') list = '[]'; // We have an error, create a new array
101    if( (typeof(list) == 'undefined') || (list == null) ) list = '[]';
102    try
103    {
104        list = JSON.parse(list);
105    }
106    catch(ex)
107    {
108        console.log(ex);
109        list = []; // We could not parse the saved array, create an empty array
110    }
111
112    return list;
113}
114storage.putItem = function(name, storeValue, expire)
115{
116    /*
117        returns: 1 on success, 0 on space exceeded, -1 on any other error
118    */
119    if(typeof(expire) == 'undefined') var expire = 30; // Days
120    storeValue = escape(storeValue); // Escape special chars
121
122    if(typeof(Storage) != 'undefined')
123    {
124        // Store in local management
125        try{
126            localStorage[name] = storeValue;
127            localStorage[name + '_expire'] = Math.round(new Date()) + expire * 24 * 60 * 60 * 1000;
128        } catch (ex) { console.log(ex); return -1; }
129        return 1;
130    }
131    else
132    {
133        // Store in cookie
134        return store.createCookie(name, storeValue, expire);
135    }
136
137    return 1;
138}
139storage.putJSON = function(name, json, expire)
140{
141    json = JSON.stringify(json);
142    return storage.putItem(name, json, expire);
143}
144storage.status = function(name)
145{
146    /* Returns 1 on ok, 0 on item has expired and was removed from local Storage */
147    var current = Math.round(new Date());
148    var stored_time = localStorage.getItem(name + '_expire');
149    if (typeof(stored_time) == 'undefined') { stored_time = 0; }
150
151    if (stored_time < current)
152    {
153        // Remove expired item
154        storage.removeItem(name);
155        return 0;
156    }
157    return 1;
158}
159storage.removeItem = function(name)
160{
161    localStorage.removeItem(name);
162    localStorage.removeItem(name + '_expire');
163}
164
165/* ****************************************************************** */
166/* Onsite cookie management */
167/* ****************************************************************** */
168storage.createCookie = function(name, value, daysValid)
169{
170    value = escape(value);
171    if(value > 3800) return 0; // Cookie limit exceeded
172
173    try
174    {
175        if (daysValid)
176        {
177                var date = new Date();
178                date.setTime(date.getTime()+(daysValid*24*60*60*1000));
179                var expires = "; expires="+date.toGMTString();
180        }
181        else
182            var expires = "";
183        document.cookie = name+"="+value+expires+"; path=/";
184    }catch(ex) { console.log(ex); return -1; }
185
186    return 1;
187}
188storage.readCookie = function(name)
189{
190    var nameEQ = name + "=";
191    var ca = document.cookie.split(';');
192    for(var i=0;i < ca.length;i++)
193    {
194            var c = ca[i];
195            while (c.charAt(0)==' ') c = c.substring(1,c.length);
196            if (c.indexOf(nameEQ) == 0)
197                return unescape(c.substring(nameEQ.length,c.length));
198    }
199    return null;
200}
201storage.eraseCookie = function(name)
202{
203    storage.createCookie(name,"",-1);
204}
205
206/* ****************************************************************** */
207/* jQuery / accessibility function */
208/* ****************************************************************** */
209function initAccessibilityRoles()
210{
211    // role="button" support
212    if(typeof(window['_resp_role_button_support']) != 'undefined')
213    {
214        jQuery('[role="button"]').each(function(){
215            if(jQuery(this).attr('data-init-as') != undefined) return; // allready inited
216            jQuery(this).on('keypress', function(event){
217                if(event.which == 13) jQuery(event.target).click();
218            });
219            jQuery(this).attr('data-init-as', true);
220        });
221    }
222
223    // role="link" support
224    if(typeof(window['_resp_role_link_support']) != 'undefined')
225    {
226        jQuery('[role="link"]').each(function(){
227            if(jQuery(this).attr('data-init-as') != undefined) return; // allready inited
228            jQuery(this).on('keypress', function(event){
229                if(event.which == 13) jQuery(event.target).click();
230            });
231            jQuery(this).attr('data-init-as', true);
232        });
233    }
234}
235jQuery(document).ready(function(){
236    initAccessibilityRoles();
237});
238
239/* ****************************************************************** */
240/* Accessibility map
241/* ****************************************************************** */
242jQuery(document).ready(function(){
243    var asmap = jQuery('#as_map');
244    if(!asmap.length) return; // No map present
245    jQuery(asmap)
246        .on('focusin', function(){
247            jQuery(asmap).addClass('opened');
248        })
249        .on('focusout', function(){
250            jQuery(asmap).removeClass('opened');
251        });
252    jQuery(asmap).find('a,[role="button"],[role="link"]').focus(function(){ jQuery('#as_map').addClass('opened'); });
253});
254function asMapToggle() { jQuery('#as_map').toggleClass('opened'); return false; }
255/* Other */
256function focusToElement(el) { jQuery(el).focus(); }
257function focusToFirstLink(el) { jQuery(el).find('a:first').focus(); }
258function speakText(text)
259{
260    if(!jQuery('#as_reader').length)
261        jQuery('body').append('<div style="width: 0px; height: 0px; overflow: hidden; position: absolute; bottom: -1000px;" tabindex="-1" aria-disabled="true"><p id="as_reader" aria-live="rude"></p></div>');
262    jQuery('#as_reader').html( text );
263}
264function scrollTo(el, anim)
265{
266    if(!jQuery(el).length) return;
267
268    if(typeof(anim) != 'undefined')
269        jQuery('html, body').animate({ scrollTop: jQuery(el).offset().top }, 'normal');
270    else
271        jQuery('html, body').scrollTo(el);
272}
273
274/* ****************************************************************** */
275/* Header image desktop/mobile switcher */
276/* ****************************************************************** */
277function getFileExt(filename)
278{
279    return filename.split('.').pop();
280}
281function headerImageByState(himg)
282{
283    var ext = getFileExt(himg);
284    var postfix = '';
285    himg = himg.replace('-gross.', '.');
286    himg = himg.replace('-klein.', '.');
287    switch(jQuery('.rscale').width())
288    {
289        case 1: postfix = '-gross'; break;
290        case 2: postfix = '-klein'; break;
291    }
292    return himg.replace('.' + ext, postfix + '.' + ext);
293}
294function headImageHandler()
295{
296    if(typeof(headImage) == 'undefined') return;
297
298    document.getElementById('headImageImg').src = headerImageByState(headImage);
299}
300
301function headImagePlainInit()
302{
303    if( !jQuery('#headImageImg').length || (typeof(headImage) == 'undefined') ) if(!jQuery('#headImageImg').length) { console.warn('Header image: invalid config (1)'); return; } // No image, nothing to set up
304
305    headImageHandler();
306    jQuery(window).resize(function()
307    {
308        if(window['jqww'] == $(window).width()) return; // Stupid iphone/ipad bug, sending resize even on scroll
309        window['jqww'] = $(window).width();
310        headImageHandler(); // Switch between mobile and desktop size
311    });
312}
313
314// Fullscreen header
315function adjustSiteImage()
316{
317    if((typeof(window['bg_img_w']) == 'undefined')||(typeof(window['bg_img_w']) == 'undefined')) { console.warn('Header image: runtime config error (2aa)'); return; }
318    if(jQuery('body > .rscale').width() != 0) { jQuery('#headImageImg').css('width', '').css('height', '').css('top', '').css('left', ''); return; }
319    var bg_img_w = window['bg_img_w']; var bg_img_h = window['bg_img_h'];
320    var sw = jQuery(window).width(); var sh = jQuery(window).height(); var d = bg_img_w / bg_img_h; var iw = bg_img_w; var ih = bg_img_h;
321    if(sw/d > sh)
322    {
323        iw = sw; ih = iw/d;
324        jQuery('#headImageImg').css('width', iw).css('height', ih).css('top', Math.ceil( -(ih-sh)/2 ) ).css('left', '');
325    }
326    else
327    {
328        ih = sh; iw = ih*d;
329        jQuery('#headImageImg').css('width', iw).css('height', ih).css('top', '' ).css('left', Math.ceil( -(iw-sw)/2 ));
330    }
331}
332function headerImageFullscreenInit()
333{
334    if((typeof(window['bg_img_w']) == 'undefined')||(typeof(window['bg_img_h']) == 'undefined')) { console.warn('Header image: invalid config (2a)'); return; }
335    if(!jQuery('#headImageImg').length || (typeof(headImage) == 'undefined')) { console.warn('Header image: invalid config (2b)'); return; }
336    headImageHandler();
337    adjustSiteImage();
338    $.regResize(function(new_width){
339        headImageHandler(); // Switch between mobile and desktop size
340        adjustSiteImage(); // Autoscale the image on desktop state
341    });
342};
343
344
345// HeaderImage Slider
346var his_cnt = 0;
347var his_busy = false;
348var his_asi = 0;
349var preloadFadeOut = false;
350
351function headerImageSliderInit()
352{
353    var $himgc = jQuery('body').find('.header_image');
354    if(!$himgc)
355        { console.warn('Header image: invalid config (3)'); return; };
356
357    // Package Slider
358    if(typeof window['header_image_slider_config'] == "undefined")
359    {
360        window['header_image_slider_config'] = {
361            dots: true,
362            arrows:true,
363            animationSpeed: 700,
364            autoplay:true,
365            autoplaySpeed: 2000,
366        };
367    }
368
369    $himgc.slick({
370        isSlider: true,
371        dots: window['header_image_slider_config'].dots,
372        arrows:window['header_image_slider_config'].arrows,
373        infinite: true,
374        speed: window['header_image_slider_config'].animationSpeed,
375        autoplay:window['header_image_slider_config'].autoplay,
376        autoplaySpeed: window['header_image_slider_config'].autoplaySpeed,
377        slidesToShow: 1,
378        slidesToScroll: 1,
379        pauseOnHover: 0,
380        fade: true,
381        cssEase: 'linear'
382    });
383
384    var images = $himgc.find('.slick-slide img');
385
386    headImageHandlerSlider(images)
387    $.regResize(function(new_width){
388        headImageHandlerSlider(images) // Switch between mobile and desktop size
389    });
390};
391
392function headImageHandlerSlider(images)
393{
394    if(typeof images != "object" || images.length < 1) return;
395
396    var postfix = '';
397    switch(jQuery('.rscale').width())
398    {
399        case 1: postfix = '-gross'; break;
400        case 2: postfix = '-klein'; break;
401    }
402
403    for(var i = 0; i < images.length; i++)
404    {
405        var himg = $(images[i]).attr('src');
406        var ext = getFileExt(himg);
407        himg = himg.replace('-gross.', '.');
408        himg = himg.replace('-klein.', '.');
409        himg = himg.replace('.' + ext, postfix + '.' + ext);
410        $(images[i]).attr('src',himg);
411    }
412}
413
414// Overall init
415var _hi = false;
416function initHeaderImage(type)
417{
418    if(_hi) { console.warn('Header image allready initialized'); return; }
419    _hi = true;
420    switch(type)
421    {
422        case 'slider':
423            headerImageSliderInit();
424        break
425
426        case 'fullscreen':
427            headerImageFullscreenInit();
428        break;
429
430        case 'plain':
431            headImagePlainInit();
432        break;
433
434        default:
435            // Autodetect
436            var $headerImageC = $('body').find('.header_image');
437            var images = $headerImageC.find('img');
438            if(images.length > 1) { headerImageSliderInit(); return; }
439            if(jQuery('#headImageImg').length)
440            {
441                if(jQuery('#headImageImg').css('position') == 'fixed')
442                    headerImageFullscreenInit();
443                else
444                    headImagePlainInit();
445                return;
446            }
447            console.warn('Header image: unable to autodetect header image type');
448    }
449}
450
451function headerImagePreload($preloader, $headerImageC)
452{
453    if($preloader.length < 1 || $headerImageC.length < 1) return;
454
455    var $img = $headerImageC.find('img');
456    if($img.length < 1 ) return;
457
458    $img.first().on('load', function(){
459        if(!preloadFadeOut)
460        {
461            $preloader.fadeOut(750, "swing");
462            preloadFadeOut = true;
463        }
464    //Load event do not trigger by the cached images
465    }).each(function() {
466        if(this.complete) $(this).trigger('load');
467    });
468}
469
470//Preloader Screen
471jQuery(document).ready(function(){
472    var $preloader = jQuery('#preloader');
473    var $headerImageC = jQuery('body').find('.header_image');
474
475    headerImagePreload($preloader, $headerImageC);
476});
477
478
479/* ****************************************************************** */
480/* Accordion */
481/* ****************************************************************** */
482function art_accord_close(e, fast)
483{
484    if(typeof(fast) != 'undefined')
485        jQuery(e).addClass('closed');
486    else
487        jQuery(e).find('.art_inner').first().slideUp(1000, function(){ jQuery(this).css('display', '').closest('.art_element').addClass('closed'); });
488    jQuery(e).find('.iframe_youtube').css('display', 'none');
489}
490function art_accord_open(e)
491{
492    var offset = 0;
493    var rscale = jQuery('body > .rscale').width();
494    if(typeof(window['accord_offset']) != 'undefined') offset = window['accord_offset'][rscale];
495
496
497    jQuery(e).find('.art_inner').first().slideDown(1000, function() { jQuery(this).css('display', '').closest('.art_element').removeClass('closed'); $(this).find('.art_element').addClass('algo-animate')});
498
499    jQuery(e).find('.iframe_youtube').css('display', '');
500
501    setTimeout(function(){
502        jQuery(e).find('.art_element.art_imageline .imlsldr').each(function()
503        {
504            jQuery(this).slick('slickNext');
505        });
506    },500);
507}
508function art_accord(e)
509{
510    if(!jQuery(e).children('.acc').is(':visible')) return; // we are not on phone state
511
512    var art = jQuery(e).parent().closest('.art_element');
513    if(jQuery(art).hasClass('closed'))
514        art_accord_open(art);
515    else
516        art_accord_close(art);
517}
518function art_accordItem(e)
519{
520    var art = jQuery(e).parent().closest('.art_element');
521    jQuery(art).siblings('.accitem').each(function(){ art_accord_close(this, true); });
522
523    if(jQuery(art).hasClass('closed'))
524        art_accord_open(art);
525    else
526        art_accord_close(art);
527}
528jQuery(document).ready(function()
529{
530    jQuery('.art_headline.accord').each(function(){
531        var $el = this;
532        if(jQuery($el).closest('.art_element').hasClass('accitem'))
533            jQuery($el).bind('click', function(){ art_accordItem($el); } );
534        else
535            jQuery($el).bind('click', function(){ art_accord(this); } );
536    });
537});
538
539/* ****************************************************************** */
540/* Package slider */
541/* ****************************************************************** */
542jQuery(document).ready(function(){
543    // Package Slider
544    if(typeof window['art_package_slider_config'] == "undefined")
545    {
546        window['art_package_slider_config'] = {
547            dots: true,
548            arrows: true,
549            slidesToShow: 3,
550            slidesToScroll: 1,
551            speed: 600,
552            autoplay: true,
553            autoplaySpeed: 6000,
554            tablet_breakpoint: 1025,
555            tablet_slidesToShow: 2,
556            mobile_breakpoint: 650,
557            mobile_slidesToShow: 1
558        };
559    }
560
561    $('.art_element.art_group.pkgslider').each(function()
562    {
563        var slider = $(this).find('.pkg_c');
564
565        //Desktop, Tablet, Mobile
566        if($(slider).hasClass('pkgfull')) window['art_package_slider_config'].isSlider = [true,true,true];
567        else if($(slider).hasClass('pkgtablet')) window['art_package_slider_config'].isSlider = [false,true,true];
568        else if($(slider).hasClass('pkgmobile')) window['art_package_slider_config'].isSlider = [false,false,true];
569        else window['art_package_slider_config'].isSlider = [false,false,false];
570
571
572        $(slider).slick({
573            isSlider:window['art_package_slider_config'].isSlider[0],
574            dots: window['art_package_slider_config'].dots,
575            arrows: window['art_package_slider_config'].arrows,
576            speed: window['art_package_slider_config'].speed,
577            slidesToShow: window['art_package_slider_config'].slidesToShow,
578            slidesToScroll: 1,
579            autoplay: window['art_package_slider_config'].autoplay,
580            autoplaySpeed: window['art_package_slider_config'].autoplaySpeed,
581            infinite: true,
582            responsive: [
583                {
584                    breakpoint: window['art_package_slider_config'].tablet_breakpoint,
585                    settings: {
586                        slidesToShow: window['art_package_slider_config'].tablet_slidesToShow,
587                        isSlider:window['art_package_slider_config'].isSlider[1]
588                    }
589                },
590                {
591                    breakpoint: window['art_package_slider_config'].mobile_breakpoint,
592                    settings: {
593                        slidesToShow: window['art_package_slider_config'].mobile_slidesToShow,
594                        isSlider:window['art_package_slider_config'].isSlider[2]
595                    }
596                }
597            ]
598        });
599    })
600});
601
602/* ****************************************************************** */
603/* Anything slider */
604/* ****************************************************************** */
605jQuery(document).ready(function(){
606    // Package Slider
607    if(typeof window['art_anything_slider_config'] == "undefined")
608    {
609        window['art_anything_slider_config'] = {
610                isSlider: true,
611                slidesToShow: 1,
612                dots: true,
613                arrows: true,
614                speed: 600,
615                autoplay: true,
616                autoplaySpeed: 5000,
617                adaptiveHeight: true,
618                tablet_breakpoint: 1025,
619                tablet_isSlider: true,
620                tablet_slidesToShow: 1,
621                mobile_breakpoint: 650,
622                mobile_isSlider: true,
623                mobile_slidesToShow: 1
624        };
625    }
626
627    $('.art_element.art_group.anything_slider').each(function()
628    {
629        var slider = $(this).find('.anything_sl_c');
630
631        $(slider).slick({
632            isSlider: window['art_anything_slider_config'].isSlider,
633            dots: window['art_anything_slider_config'].dots,
634            arrows: window['art_anything_slider_config'].arrows,
635            speed: window['art_anything_slider_config'].speed,
636            slidesToShow: window['art_anything_slider_config'].slidesToShow,
637            slidesToScroll: 1,
638            autoplay: window['art_anything_slider_config'].autoplay,
639            autoplaySpeed: window['art_anything_slider_config'].autoplaySpeed,
640            infinite: true,
641            adaptiveHeight:window['art_anything_slider_config'].adaptiveHeight,
642            responsive: [
643                {
644                    breakpoint: window['art_anything_slider_config'].tablet_breakpoint,
645                    settings: {
646                        isSlider:window['art_anything_slider_config'].tablet_isSlider,
647                        slidesToShow: window['art_anything_slider_config'].tablet_slidesToShow,
648                    }
649                },
650                {
651                    breakpoint: window['art_anything_slider_config'].mobile_breakpoint,
652                    settings: {
653                        isSlider:window['art_anything_slider_config'].mobile_isSlider,
654                        slidesToShow: window['art_anything_slider_config'].mobile_slidesToShow,
655                    }
656                }
657            ]
658        });
659    })
660});
661
662/* ****************************************************************** */
663/* Mobile tables */
664/* ****************************************************************** */
665function generate_mobile_table(callback)
666{
667    jQuery('.art_table table').each(function()
668    {
669        var table = $(this);
670
671        if(table.hasClass('no_mobile')) return;
672
673        if(typeof(callback) != 'undefined')
674        {
675            var ret = callback(table);
676            if((typeof(ret) == 'undefined') || (ret != true)) return;
677        }
678
679        table.addClass('hide_on_mobile');
680        var head = table.find('thead th');
681        var rows = table.find('tbody tr').clone();
682        var mclass = table.attr('class'); if(mclass != '') mclass += ' ';
683        var attrs = '';
684        var attrscopy = ['cellpadding', 'cellspacing'];
685        for(var i in attrscopy)
686            if(jQuery(table).hasAttr(attrscopy[i])) attrs += attrscopy[i]+'='+jQuery(table).attr(attrscopy[i])+' ';
687
688        var newtable = $(
689          '<table class="' + mclass + ' mobile_table"' + attrs + '><tbody></tbody></table>').removeClass('hide_on_mobile');
690
691        var newtable_tbody = newtable.find('tbody');
692
693        rows.each(function(i)
694        {
695            var cols = $(this).find('td');
696            var classname = 'odd';
697
698            cols.each(function(k)
699            {
700                if(classname == 'odd') classname = 'even'; else classname = 'odd';
701
702                var new_tr = $('<tr class="' + classname + '"></tr>').appendTo(newtable_tbody);
703                if(k != 0)
704                {
705                    new_tr.append( jQuery(head.clone().get(k)).attr('width', '60%') );
706                    new_tr.append( $(this).attr('width', '40%') );
707                }
708                else
709                {
710                    new_tr.append( $(this).attr('colspan', '2').addClass('trtitle') );
711                }
712            });
713
714        });
715
716        $(this).after(newtable);
717    });
718}
719
720/* ****************************************************************** */
721/* Swipe event */
722/* ****************************************************************** */
723(function(jQuery) {
724  jQuery.fn.swipeEvents = function() {
725    return this.each(function() {
726
727      var startX,
728          startY,
729          jQuerythis = jQuery(this);
730
731      jQuerythis.bind('touchstart', touchstart);
732
733      function touchstart(event) {
734        var touches = event.originalEvent.touches;
735        if (touches && touches.length) {
736          startX = touches[0].pageX;
737          startY = touches[0].pageY;
738          jQuerythis.unbind('touchmove');
739          jQuerythis.bind('touchmove', touchmove);
740        }
741      }
742
743      function touchmove(event) {
744        var touches = event.originalEvent.touches;
745        if (touches && touches.length) {
746          var deltaX = startX - touches[0].pageX;
747          var deltaY = startY - touches[0].pageY;
748
749          if (deltaX >= 25)
750            jQuerythis.trigger("swipeLeft");
751          if (deltaX <= -25)
752            jQuerythis.trigger("swipeRight");
753          if (Math.abs(deltaX) >= 25 || Math.abs(deltaY) >= 25) jQuerythis.unbind('touchmove', touchmove);
754          }
755      }
756    });
757  };
758})(jQuery);
759
760/* ****************************************************************** */
761/* Rollover images */
762/* ****************************************************************** */
763jQuery(document).ready(function($) {
764    //rollover swap images with data-hover
765    $(".rollover").hover(function()
766    { 	// mouseover
767        var img_src = $(this).children('img:first').attr('src');
768        var new_src = $(this).attr('data-hover');
769        $(this).children('img:first').attr('src', new_src);
770        $(this).attr('data-hover', img_src);
771    },
772    function()
773    { 	// mouse out
774        var img_src = $(this).children('img:first').attr('src');
775        var new_src = $(this).attr('data-hover');
776        $(this).children('img:first').attr('src', new_src);
777        $(this).attr('data-hover', img_src);
778    });
779
780    //preload images
781    var cache = new Array(); //cycle through all rollover elements and add rollover img src to cache array
782    $(".rollover").each(function()
783    {
784        if($(this).attr('data-hover') != '')
785        {
786            var cacheImage = document.createElement('img');
787            cacheImage.src = $(this).attr('data-hover');
788            cache.push(cacheImage);
789        }
790    });
791});
792
793/* ****************************************************************** */
794/* Gallery */
795/* ****************************************************************** */
796var gbusy = false;
797jQuery(document).ready(function(){ initGallery(); });
798function initGallery()
799{
800    if(!jQuery('.art_element.art_gallery')) return;
801    jQuery('.art_element.art_gallery').each(function(){ initGalleryInd(this); });
802}
803function initGalleryInd(gal)
804{
805    if(jQuery(gal).parents('.room_details').length)
806    {
807        return false;
808    }
809    // The first image is the current
810    jQuery(gal).find('.galc').children('a:first').children('img').addClass('current');
811    // Get gallery container
812    var galc = jQuery(gal).find('.galc:first');
813
814    if(typeof window['art_gallery_slider_config'] == "undefined")
815    {
816        window['art_gallery_slider_config'] = {
817            dots: true,
818            arrows: true,
819            slidesToShow: 3,
820            slidesToScroll: 1,
821            speed: 600,
822            autoplay: true,
823            autoplaySpeed: 6000,
824            tablet_breakpoint: 1025,
825            tablet_slidesToShow: 2,
826            mobile_breakpoint: 650,
827            mobile_slidesToShow: 1,
828            variableWidth: true
829        };
830    }
831
832    // Decide the gallery type and init accordingly
833    if(jQuery(galc).hasClass('gal_slider'))
834    {
835        $(galc).slick({
836            isSlider: true,
837            dots: window['art_gallery_slider_config'].dots,
838            arrows: window['art_gallery_slider_config'].arrows,
839            speed: window['art_gallery_slider_config'].speed,
840            slidesToShow: window['art_gallery_slider_config'].slidesToShow,
841            slidesToScroll: window['art_gallery_slider_config'].slidesToScroll,
842            autoplay: window['art_gallery_slider_config'].autoplay,
843            autoplaySpeed: window['art_gallery_slider_config'].autoplaySpeed,
844            infinite: true,
845            variableWidth:  window['art_gallery_slider_config'].variableWidth,
846            responsive: [
847                {
848                    breakpoint: window['art_gallery_slider_config'].tablet_breakpoint,
849                    settings: {
850                        slidesToShow: window['art_gallery_slider_config'].tablet_slidesToShow,
851                    }
852                },
853                {
854                    breakpoint: window['art_gallery_slider_config'].mobile_breakpoint,
855                    settings: {
856                        slidesToShow: window['art_gallery_slider_config'].mobile_slidesToShow,
857                    }
858                }
859            ]
860        });
861    }
862    else
863    {
864        $(galc).slick({
865            isSlider: false,
866            dots: false,
867            arrows: true,
868            slidesToShow: 1,
869            slidesToScroll: 1,
870            speed: window['art_gallery_slider_config'].speed,
871            autoplay: window['art_gallery_slider_config'].autoplay,
872            autoplaySpeed: window['art_gallery_slider_config'].autoplaySpeed,
873            responsive: [
874                {
875                    breakpoint: window['art_gallery_slider_config'].mobile_breakpoint,
876                    settings: {
877                        isSlider: true,
878                    }
879                }
880            ]
881        });
882    }
883}
884function galleryNavNext(gal)
885{
886    // Call for auto sliding
887    var gal_navdot = jQuery(gal).find('.gal_navdot');
888    var galdotc = jQuery(gal_navdot).find('.dot.active');
889    var galdotn = jQuery(galdotc).next();
890    if(!galdotn.length) galdotn = jQuery(gal_navdot).find('.dot:first');
891    galleryNavSlider(galdotn);
892}
893function galleryNavSlider(dot)
894{
895    if(gbusy) return;
896    gbusy = true;
897
898    var dotc = jQuery(dot).closest('.gal_navdot');
899    var galc = jQuery(dotc).closest('.galc');
900
901    var dota = jQuery(dotc).children('.dot.active');
902    var cindx = jQuery(dotc).children('.dot').index(dot);
903    var aindx = jQuery(dotc).children('.dot').index(dota);
904    if(cindx == aindx) return; // We are allready on the current element
905
906    // Find matching images
907    var imgc = jQuery(galc).find('img.current');
908    var imgn = jQuery(galc).find('a > img').get(cindx);
909
910    // Switch images
911    jQuery(imgn).css('opacity', 0).css('z-index', 10).animate({'opacity': 1}, window['art_gal_slider_animation_speed'], function(){ jQuery(imgc).removeClass('current'); jQuery(this).addClass('current').css('opacity', '').css('z-index', ''); gbusy = false; });
912
913    // Switch dot selection
914    jQuery(dotc).children('span:eq('+aindx+')').removeClass('active');
915    jQuery(dotc).children('span:eq('+cindx+')').addClass('active');
916}
917function galleryNav(el, dir)
918{
919    if(gbusy) return;
920    gbusy = true;
921
922    var gal = jQuery(el).closest('.galc');
923
924    var current = jQuery(gal).find('.current').parent();
925
926    if(dir > 0)
927    {
928        var nextpos = '100%';
929        var next = jQuery(current).next('a.iv');
930        if(!next.length) { next = jQuery(gal).children('a:first'); nextpos = '100%'; }
931
932        current = jQuery(current).children('img');
933        next = jQuery(next).children('img');
934
935        jQuery(current).animate({'left':'-100%'},'slow',function(){ jQuery(this).removeClass('current').css('left',''); gbusy=false; })
936        jQuery(next).css('left', nextpos).css('display','block').css('z-index', 3).animate({'left':0},'slow',function(){ jQuery(this).css('z-index','').css('left','').css('display','').addClass('current'); });
937    }
938    else
939    {
940        var prevpos = '-100%';
941        var prev = jQuery(current).prev('a.iv');
942        if(!prev.length) { prev = jQuery(gal).children('a:last'); prevpos = '-100%'; }
943
944        current = jQuery(current).children('img');
945        prev = jQuery(prev).children('img');
946
947        jQuery(current).animate({'left':'100%'},'slow',function(){ jQuery(this).removeClass('current').css('left',''); gbusy=false; })
948        jQuery(prev).css('left', prevpos).css('display','block').css('z-index', 3).animate({'left':0},'slow',function(){ jQuery(this).css('display','').css('z-index','').css('left','').addClass('current'); });
949    }
950}
951
952//Init Slick Slider
953function initImageInLineSlickSlider(slider)
954{
955
956    // Package Slider
957    if(typeof window['art_imageline_slider_config'] == "undefined")
958    {
959        window['art_imageline_slider_config'] = {
960            dots: false,
961            arrows: true,
962            speed: 600,
963            autoplay: false,
964            autoplaySpeed: 5000,
965            mobile_breakpoint: 650
966        };
967    }
968
969    //Desktop, Tablet, Mobile
970    window['art_imageline_slider_config'].isSlider = [false,false,true];
971
972
973    $(slider).slick({
974        isSlider:window['art_imageline_slider_config'].isSlider[0],
975        dots: window['art_imageline_slider_config'].dots,
976        arrows: window['art_imageline_slider_config'].arrows,
977        speed: window['art_imageline_slider_config'].speed,
978        slidesToShow: window['art_imageline_slider_config'].slidesToShow,
979        slidesToScroll:1,
980        autoplay: window['art_imageline_slider_config'].autoplay,
981        autoplaySpeed: window['art_imageline_slider_config'].autoplaySpeed,
982        infinite: true,
983        responsive: [
984            {
985                breakpoint: window['art_imageline_slider_config'].mobile_breakpoint,
986                settings: {
987                    isSlider:window['art_imageline_slider_config'].isSlider[2]
988                }
989            }
990        ]
991    });
992}
993
994/* ****************************************************************** */
995/* Images in line */
996/* ****************************************************************** */
997jQuery(document).ready(function(){
998    $('.art_element.art_imageline .imlsldr').each(function()
999    {
1000        initImageInLineSlickSlider(jQuery(this));
1001    });
1002
1003});
1004
1005/* ****************************************************************** */
1006/* Slider menu */
1007/* ****************************************************************** */
1008var imenu = null;
1009var menuSlider = null;
1010var menuSliderCallbackFn = null;
1011
1012function menu_adjustInnerContainer()
1013{
1014    var t = false;
1015    if(jQuery(menuSlider).hasClass('closed')) t = true;
1016    if(t) jQuery(menuSlider).css('top', '-1000%').removeClass('closed');
1017    jQuery('.menusl').css('height', jQuery('.menusl .menuslbox.current').outerHeight() );
1018    if(t) jQuery(menuSlider).addClass('closed').css('top', '');
1019}
1020function menu_adjustOuterContainer()
1021{
1022    //Outer container
1023    jQuery(menuSlider).css('height', jQuery('.main_c').height());
1024
1025    // Inside menu height
1026    menu_adjustInnerContainer();
1027}
1028function menu_slideOversee()
1029{
1030    if(typeof(menuSliderOverrideCallbackFn) == 'function')
1031    {
1032        var ret = menuSliderOverrideCallbackFn();
1033        if(ret) return; // Native code was canceled by outside menuSliderOverrideCallbackFn function
1034    }
1035
1036    // Clear que to avoid Oversee/Open bug
1037    jQuery(menuSlider).clearQueue().stop();
1038
1039    var pos = jQuery(menuSlider).data('pos');
1040    if(!jQuery(menuSlider).hasClass('closed'))
1041    {
1042        if(pos == 'left')
1043        {
1044            jQuery(menuSlider).animate({'left': '-100%'}, 'normal', function(){ jQuery(this).addClass('closed'); jQuery(imenu).removeClass('opened'); if(typeof(menuSliderCallbackFn)=='function') menuSliderCallbackFn(); });
1045            jQuery('.main').animate({'left': '0%'}, 'normal');
1046        }
1047        else
1048        {
1049            jQuery(menuSlider).animate({'left': '100%'}, 'normal', function(){ jQuery(this).addClass('closed'); jQuery(imenu).removeClass('opened'); if(typeof(menuSliderCallbackFn)=='function') menuSliderCallbackFn(); });
1050            jQuery('.main').animate({'left': '0%'}, 'normal');
1051        }
1052    }
1053}
1054function menu_slideNavTo(el, next, dir)
1055{
1056    el = '#'+el;
1057    next = '#'+next;
1058
1059    if(dir == 0)
1060    {
1061        jQuery(el).css('left', '0%').removeClass('current').animate({'left': '-100%'}, 300);
1062        jQuery(next).css('left', '100%').addClass('current').animate({'left': '0%'}, 300, function(){
1063            menu_unsetFocusable(el);
1064            menu_setFocusable(next);
1065        });
1066        menu_adjustInnerContainer();
1067    }
1068    else
1069    {
1070        jQuery(el).css('left', '0%').removeClass('current').animate({'left': '100%'}, 300);
1071        jQuery(next).css('left', '-100%').addClass('current').animate({'left': '0%'}, 300, function(){
1072            menu_unsetFocusable(el);
1073            menu_setFocusable(next);
1074        });
1075        menu_adjustInnerContainer();
1076    }
1077
1078    return false;
1079}
1080function menu_unsetFocusable(submenu)
1081{
1082    jQuery(submenu).attr('aria-hidden', 'true');
1083    jQuery(submenu).find('a').attr('aria-hidden', 'true').attr('tabindex', '-1');
1084}
1085function menu_setFocusable(submenu)
1086{
1087    jQuery(submenu).attr('aria-hidden', 'false');
1088    jQuery(submenu).find('a').attr('aria-hidden', '').attr('tabindex', '');
1089    jQuery(submenu).find('a:first').focus();
1090}
1091function initMenuAccessibility(container)
1092{
1093    // If snippet failed to determine a current level, then mark the root as current
1094    if(!jQuery(menuSlider).find('.menuslbox.current').length) jQuery(menuSlider).find('.menuslbox:first').addClass('current');
1095
1096    // Accessibility - hide all other level beside the ".current" from focus/tab list
1097    jQuery(container).find('.menuslbox:not(.current)').each(function(){
1098        menu_unsetFocusable(this);
1099    });
1100}
1101jQuery(document).ready(function(){
1102    if(jQuery('#menu_slide_layer').length)
1103    {
1104        menuSlider = jQuery('#menu_slide_layer');
1105
1106        initMenuAccessibility(menuSlider);
1107        $.regResize(function(new_width){
1108            menu_slideOversee();
1109        });
1110        menu_adjustInnerContainer();
1111    }
1112});
1113
1114/* Plain mobile friendly menu */
1115// onfocus="menu_onfocus(this, 'mob_menu_btn')"
1116function menu_onfocus(el, button_id, callback)
1117{
1118    menu_open(jQuery('#'+button_id), true);
1119    if(typeof(callback) == 'function') callback(el, button_id);
1120    return false;
1121}
1122//onblur="menu_onblur(this, 'mob_menu_btn')"
1123function menu_onblur(el, button_id, callback)
1124{
1125    menu_open(jQuery('#'+button_id), false);
1126    if(typeof(callback) == 'function') callback(el, button_id);
1127    return false;
1128}
1129
1130function menu_open(el, forceAction)
1131{
1132    var menu_layer = jQuery('#mobile_menu_layer');
1133
1134    // Fix .menusl div height
1135    menu_adjustInnerContainer();
1136
1137    if((typeof(forceAction) != 'undefined')&&(forceAction))
1138    {
1139        if(jQuery(el).hasClass('closed'))
1140            jQuery(menu_layer).slideDown('normal', function(){ jQuery(this).removeClass('closed').css('display', ''); jQuery(el).removeClass('closed'); });
1141        return false;
1142    }
1143
1144    if((typeof(forceAction) != 'undefined')&&(!forceAction))
1145    {
1146        if(!jQuery(el).hasClass('closed'))
1147            jQuery(menu_layer).slideUp('normal', function(){ jQuery(this).css('display', '').addClass('closed'); jQuery(el).addClass('closed'); });
1148        return false;
1149    }
1150
1151    if(jQuery(el).hasClass('closed'))
1152        jQuery(menu_layer).slideDown('normal', function(){ jQuery(this).removeClass('closed').css('display', ''); jQuery(el).removeClass('closed'); });
1153    else
1154        jQuery(menu_layer).slideUp('normal', function(){ jQuery(this).css('display', '').addClass('closed'); jQuery(el).addClass('closed'); });
1155    return false;
1156}
1157jQuery(document).ready(function(){
1158    if(jQuery('#mobile_menu_layer').length)
1159    {
1160        menuSlider = jQuery('#mobile_menu_layer');
1161
1162        // If snippet failed to determine a current level, then mark the root as current
1163        if(!jQuery(menuSlider).find('.menuslbox.current').length) jQuery(menuSlider).find('.menuslbox:first').addClass('current');
1164
1165        // Fix .menusl div height
1166        menu_adjustInnerContainer();
1167    }
1168});
1169
1170/******************************************/
1171/*          FOCUS ONLY ON TAB             */
1172/******************************************/
1173/* https://github.com/WICG/focus-visible */
1174function initFocusOnTab(){var hadKeyboardEvent=true;var hadFocusVisibleRecently=false;var hadFocusVisibleRecentlyTimeout=null;var inputTypesWhitelist={text:true,search:true,url:true,tel:true,email:true,password:true,number:true,date:true,month:true,week:true,time:true,datetime:true,'datetime-local':true};function isValidFocusTarget(el){if(el&&el!==document&&el.nodeName!=='HTML'&&el.nodeName!=='BODY'&&'classList'in el&&'contains'in el.classList){return true;}
1175return false;}
1176function focusTriggersKeyboardModality(el){var type=el.type;var tagName=el.tagName;if(tagName=='INPUT'&&inputTypesWhitelist[type]&&!el.readOnly){return true;}
1177if(tagName=='TEXTAREA'&&!el.readOnly){return true;}
1178if(el.isContentEditable){return true;}
1179return false;}
1180function addFocusVisibleClass(el){if(el.classList.contains('focus-visible')){return;}
1181el.classList.add('focus-visible');el.setAttribute('data-focus-visible-added','');}
1182function removeFocusVisibleClass(el){if(!el.hasAttribute('data-focus-visible-added')){return;}
1183el.classList.remove('focus-visible');el.removeAttribute('data-focus-visible-added');}
1184function onKeyDown(e){if(isValidFocusTarget(document.activeElement)){addFocusVisibleClass(document.activeElement);}
1185hadKeyboardEvent=true;}
1186function onPointerDown(e){hadKeyboardEvent=false;}
1187function onFocus(e){if(!isValidFocusTarget(e.target)){return;}
1188if(hadKeyboardEvent||focusTriggersKeyboardModality(e.target)){addFocusVisibleClass(e.target);}}
1189function onBlur(e){if(!isValidFocusTarget(e.target)){return;}
1190if(e.target.classList.contains('focus-visible')||e.target.hasAttribute('data-focus-visible-added')){hadFocusVisibleRecently=true;window.clearTimeout(hadFocusVisibleRecentlyTimeout);hadFocusVisibleRecentlyTimeout=window.setTimeout(function(){hadFocusVisibleRecently=false;window.clearTimeout(hadFocusVisibleRecentlyTimeout);},100);removeFocusVisibleClass(e.target);}}
1191function onVisibilityChange(e){if(document.visibilityState=='hidden'){if(hadFocusVisibleRecently){hadKeyboardEvent=true;}
1192addInitialPointerMoveListeners();}}
1193function addInitialPointerMoveListeners(){document.addEventListener('mousemove',onInitialPointerMove);document.addEventListener('mousedown',onInitialPointerMove);document.addEventListener('mouseup',onInitialPointerMove);document.addEventListener('pointermove',onInitialPointerMove);document.addEventListener('pointerdown',onInitialPointerMove);document.addEventListener('pointerup',onInitialPointerMove);document.addEventListener('touchmove',onInitialPointerMove);document.addEventListener('touchstart',onInitialPointerMove);document.addEventListener('touchend',onInitialPointerMove);}
1194function removeInitialPointerMoveListeners(){document.removeEventListener('mousemove',onInitialPointerMove);document.removeEventListener('mousedown',onInitialPointerMove);document.removeEventListener('mouseup',onInitialPointerMove);document.removeEventListener('pointermove',onInitialPointerMove);document.removeEventListener('pointerdown',onInitialPointerMove);document.removeEventListener('pointerup',onInitialPointerMove);document.removeEventListener('touchmove',onInitialPointerMove);document.removeEventListener('touchstart',onInitialPointerMove);document.removeEventListener('touchend',onInitialPointerMove);}
1195function onInitialPointerMove(e){if(e.target.nodeName.toLowerCase()==='html'){return;}
1196hadKeyboardEvent=false;removeInitialPointerMoveListeners();}
1197document.addEventListener('keydown',onKeyDown,true);document.addEventListener('mousedown',onPointerDown,true);document.addEventListener('pointerdown',onPointerDown,true);document.addEventListener('touchstart',onPointerDown,true);document.addEventListener('focus',onFocus,true);document.addEventListener('blur',onBlur,true);document.addEventListener('visibilitychange',onVisibilityChange,true);addInitialPointerMoveListeners();document.body.classList.add('js-focus-visible');}
1198function onDOMReady(callback){var loaded;function load(){if(!loaded){loaded=true;callback();}}
1199if(['interactive','complete'].indexOf(document.readyState)>=0){callback();}else{loaded=false;document.addEventListener('DOMContentLoaded',load,false);window.addEventListener('load',load,false);}}
1200if(typeof document!=='undefined'){onDOMReady(initFocusOnTab);}
1201
1202
1203
1204/**
1205 * jQuery Grid-A-Licious(tm) v3.01
1206 *
1207 * Terms of Use - jQuery Grid-A-Licious(tm)
1208 * under the MIT (http://www.opensource.org/licenses/mit-license.php) License.
1209 *
1210 * Copyright 2008-2012 Andreas Pihlström (Suprb). All rights reserved.
1211 * (http://suprb.com/apps/gridalicious/)
1212 *
1213 */
1214(function($,sr){var debounce=function(func,threshold,execAsap){var timeout;return function debounced(){var obj=this,args=arguments;function delayed(){if(!execAsap)func.apply(obj,args);timeout=null};if(timeout)clearTimeout(timeout);else if(execAsap)func.apply(obj,args);timeout=setTimeout(delayed,threshold||150)}}
1215jQuery.fn[sr]=function(fn){return fn?this.bind('resize',debounce(fn)):this.trigger(sr)}})(jQuery,'smartresize');(function($){$.Gal=function(options,element){this.element=$(element);this._init(options)};$.Gal.settings={selector:'.item',width:225,gutter:20,animate:!1,animationOptions:{speed:200,duration:300,effect:'fadeInOnAppear',queue:!0,complete:function(){}},};$.Gal.prototype={_init:function(options){var container=this;this.name=this._setName(5);this.gridArr=[];this.gridArrAppend=[];this.gridArrPrepend=[];this.setArr=!1;this.setGrid=!1;this.setOptions;this.cols=0;this.itemCount=0;this.prependCount=0;this.isPrepending=!1;this.appendCount=0;this.resetCount=!0;this.ifCallback=!0;this.box=this.element;this.boxWidth=this.box.width();this.options=$.extend(!0,{},$.Gal.settings,options);this.gridArr=$.makeArray(this.box.find(this.options.selector));this.isResizing=!1;this.w=0;this.boxArr=[];this._setCols();this._renderGrid('append');$(this.box).addClass('gridalicious');$(window).smartresize(function(){container.resize()})},_setName:function(length,current){current=current?current:'';return length?this._setName(--length,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz".charAt(Math.floor(Math.random()*60))+current):current},_setCols:function(){this.cols=Math.floor(this.box.width()/this.options.width);if(this.cols<1){this.cols=1}
1216diff=(this.box.width()-(this.cols*this.options.width)-this.options.gutter)/this.cols;w=(this.options.width+diff)/this.box.width()*100;this.w=w;for(var i=0;i<this.cols;i++){var div=$('<div></div>').addClass('galcolumn').attr('id','item'+i+this.name).css({'width':w+'%','paddingLeft':this.options.gutter,'paddingBottom':this.options.gutter,'float':'left','-webkit-box-sizing':'border-box','-moz-box-sizing':'border-box','-o-box-sizing':'border-box','box-sizing':'border-box'});this.box.append(div)}
1217this.box.find($('#clear'+this.name)).remove();var clear=$('<div></div>').css({'clear':'both','height':'0','width':'0','display':'block'}).attr('id','clear'+this.name);this.box.append(clear)},_renderGrid:function(method,arr,count,prepArray){var items=[];var boxes=[];var prependArray=[];var itemCount=0;var prependCount=this.prependCount;var appendCount=this.appendCount;var gutter=this.options.gutter;var cols=this.cols;var name=this.name;var animationDelay=this.options.animationDelay;var i=0;var w=$('.galcolumn').width();if(arr){boxes=arr;if(method=="append"||method=="resize"){appendCount+=count;itemCount=this.appendCount}
1218if(method=="prepend"){this.isPrepending=!0;itemCount=Math.round(count%cols);if(itemCount<=0)itemCount=cols}
1219if(method=="renderAfterPrepend"){appendCount+=count;itemCount=count}}
1220else{boxes=this.gridArr;appendCount=$(this.gridArr).length}
1221$.each(boxes,function(index,value){var item=$(value);var width='100%';if(item.hasClass('not-responsive')){width='auto'}
1222var animDelay=(((index)%cols)*animationDelay)+"s";item.css({'marginBottom':gutter,'zoom':'1','filter':'alpha(opacity=0)','animation-delay':animDelay,'transition-delay':animDelay,}).find('img, object, embed, iframe').css({'width':width,'height':'auto','display':'block','margin-left':'auto','margin-right':'auto',});if(method=='prepend'){itemCount--;$("#item"+itemCount+name).prepend(item);items.push(item);if(itemCount==0)itemCount=cols}else{$("#item"+itemCount+name).append(item);items.push(item);itemCount++;if(itemCount>=cols)itemCount=0;if(appendCount>=cols)appendCount=(appendCount-cols)}});this.appendCount=appendCount;this.itemCount=itemCount;if(method=="append"||method=="prepend"){if(method=="prepend"){this._updateAfterPrepend(this.gridArr,boxes)}
1223this.isPrepending=!1}
1224else if(method=="resize"){this._renderItem(this.gridArr)}},_collectItems:function(){var collection=[];$(this.box).find(this.options.selector).each(function(i){collection.push($(this))});return collection},render:function()
1225{this._renderItem(this.gridArr)},_renderItem:function(items){var speed=this.options.animationOptions.speed;var effect=this.options.animationOptions.effect;var duration=this.options.animationOptions.duration;var queue=this.options.animationOptions.queue;var animate=this.options.animate;var complete=this.options.animationOptions.complete;var i=0;var t=0;if(animate===!0&&!this.isResizing){if(queue===!0&&effect=="fadeInOnAppear"){if(this.isPrepending)items.reverse();$.each(items,function(index,value){setTimeout(function(){$(value).animate({opacity:'1.0'},duration);t++;if(t==items.length){complete.call(undefined,items)}},i*speed);i++})}else if(queue===!1&&effect=="fadeInOnAppear"){if(this.isPrepending)items.reverse();$.each(items,function(index,value){$(value).animate({opacity:'1.0'},duration);t++;if(t==items.length){if(this.ifCallback){complete.call(undefined,items)}}})}
1226if(queue===!0&&!effect){$.each(items,function(index,value){$(value).css({'opacity':'1','filter':'alpha(opacity=100)'});t++;if(t==items.length){if(this.ifCallback){complete.call(undefined,items)}}})}}else{$.each(items,function(index,value){$(value).css({'opacity':'1','filter':'alpha(opacity=100)'})});if(this.ifCallback){complete.call(items)}}},_updateAfterPrepend:function(prevItems,newItems){var gridArr=this.gridArr;$.each(newItems,function(index,value){gridArr.unshift(value)})
1227this.gridArr=gridArr},resize:function(){if(this.box.width()===this.boxWidth){return}
1228this.box.find($('.galcolumn')).remove();this._setCols();this.ifCallback=!1;this.isResizing=!0;this._renderGrid('resize');this.ifCallback=!0;this.isResizing=!1;this.boxWidth=this.box.width()},append:function(items){var gridArr=this.gridArr;var gridArrAppend=this.gridArrPrepend;
1228$.each(items,function(index,value){gridArr.push(value);gridArrAppend.push(value)});this._renderGrid('append',items,$(items).length)},prepend:function(items){this.ifCallback=!1;this._renderGrid('prepend',items,$(items).length);this.ifCallback=!0},}
1229$.fn.gridalicious=function(options,e){if(typeof options==='string'){this.each(function(){var container=$.data(this,'gridalicious');container[options].apply(container,[e])})}else{this.each(function(){$.data(this,'gridalicious',new $.Gal(options,this))})}
1230return this}})(jQuery)
1231
1232/*
1233     _ _      _       _
1234 ___| (_) ___| | __  (_)___
1235/ __| | |/ __| |/ /  | / __|
1236\__ \ | | (__|   < _ | \__ \
1237|___/_|_|\___|_|\_(_)/ |___/
1238                   |__/
1239
1240 Version: 1.6.0
1241  Author: Ken Wheeler
1242 Website: http://kenwheeler.github.io
1243    Docs: http://kenwheeler.github.io/slick
1244    Repo: http://github.com/kenwheeler/slick
1245  Issues: http://github.com/kenwheeler/slick/issues
1246
1247 */
1248/* global window, document, define, jQuery, setInterval, clearInterval */
1249!function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'<button type="button" data-role="none" class="slick-prev" aria-label="Previous" tabindex="0" role="button">Previous</button>',nextArrow:'<button type="button" data-role="none" class="slick-next" aria-label="Next" tabindex="0" role="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" data-role="none" role="button" tabindex="0" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&&!1===s.options.vertical&&(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots&&o.slideCount>o.options.slidesToShow){for(o.$slider.addClass("slick-dotted"),t=i("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active").attr("aria-hidden","false")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div aria-live="polite" class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&&e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.o
1249ptions.rows>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&&e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide)),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.
1249slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition),i(document).off("ready.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*:not(.slick-arrow)",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s=this,n=0;return s.slideOffset=0,t=s.$slides.first().outerHeight(!0),!0===s.options.infinite?(s.slideCount>s.options.slidesToShow&&(s.slideOffset=s.slideWidth*s.options.slidesToShow*-1,n=t*s.options.slidesToShow*-1),s.slideCount%s.options.slidesToScroll!=0&&i+s.options.slidesToScroll>s.slideCount&&s.slideCount>s.options.slidesToShow&&(i>s.slideCount?(s.slideOffset=(s.options.slidesToShow-(i-s.slideCount))*s.slideWidth*-1,n=(s.options.slidesToShow-(i-s.slideCount))*t*-1):(s.slideOffset=s.slideCount%s.options.slidesToScroll*s.slideWidth*-1,n=s.slideCount%s.options.slidesToScroll*t*-1))):i+s.options.slidesToShow>s.slideCount&&(s.slideOffset=(i+s.options.slidesToShow-s.slideCount)*s.slideWidth,n=(i+s.options.slidesToShow-s.slideCount)*t),s.slideCount<=s.options.slidesToShow&&(s.slideOffset=0,n=0),!0===s.options.centerMode&&!0===s.options.infinite?s.slideOffset+=s.slideWidth*Math.floor(s.options.slidesToShow/2)-s.slideWidth:!0===s.options.centerMode&&(s.slideOffset=0,s.slideOffset+=s.slideWidth*Math.floor(s.options.slidesToShow/2)),e=!1===s.options.vertical?i*s.slideWidth*-1+s.slideOffset:i*t*-1+n,!0===s.options.variableWidth&&(o=s.slideCount<=s.options.slidesToShow||!1===s.options.infinite?s.$slideTrack.children(".slick-slide").eq(i):s.$slideTrack.children(".slick-slide").eq(i+s.options.slidesToShow),e=!0===s.options.rtl?o[0]?-1*(s.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===s.options.centerMode&&(o=s.slideCount<=s.options.slidesToShow||!1===s.options.infinite?s.$slideTrack.children(".slick-slide").eq(i):s.$slideTrack.children(".slick-slide").eq(i+s.options.slidesToShow+1),e=!0===s.options.rtl?o[0]?-1*(s.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(s.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2>-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:
1249parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.options.isSlider&&t.buildOut(),t.setProps(),t.startLoad(),t.options.isSlider?(t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots()):i(window).on("resize.slick.slick-"+t.instanceUid,i.proxy(t.resize,t)),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.options.isSlider&&t.initADA(),t.options.autoplay&&t.options.isSlider&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this;e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),e.$slideTrack.attr("role","listbox"),e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){i(this).attr({role:"option"})}),null!==e.$dots&&e.$dots.attr("role","tablist").find("li").each(function(t){i(this).attr({role:"presentation","aria-selected":"false","aria-controls":"navigation"+e.instanceUid+t,id:"slick-slide"+e.instanceUid+t})}).first().attr("aria-selected","true").end().find("button").attr("role","button").end().closest("div").attr("role","toolbar"),e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&e.slideCount>e.options.slidesToShow&&i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"}
1249,e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(document).on("ready.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=document.createElement("img");o.onload=function(){e.animate({opacity:0}
1249,100,function(){e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy").removeClass("slick-loading")}),s.$slider.trigger("lazyLoaded",[s,e,t])})},o.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),s.$slider.trigger("lazyLoadError",[s,e,t])},o.src=t})}var t,o,s=this;!0===s.options.centerMode?!0===s.options.infinite?o=(t=s.currentSlide+(s.options.slidesToShow/2+1))+s.options.slidesToShow+2:(t=Math.max(0,s.currentSlide-(s.options.slidesToShow/2+1)),o=s.options.slidesToShow/2+1+2+s.currentSlide):(t=s.options.infinite?s.options.slidesToShow+s.currentSlide:s.currentSlide,o=Math.ceil(t+s.options.slidesToShow),!0===s.options.fade&&(t>0&&t--,o<=s.slideCount&&o++)),e(s.$slider.find(".slick-slide").slice(t,o)),s.slideCount<=s.options.slidesToShow?e(s.$slider.find(".slick-slide")):s.currentSlide>=s.slideCount-s.options.slidesToShow?e(s.$slider.find(".slick-cloned").slice(0,s.options.slidesToShow)):0===s.currentSlide&&e(s.$slider.find(".slick-cloned").slice(-1*s.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(i){var e=this;e.unslicked||(e.$slider.trigger("afterChange",[e,i]),e.animating=!1,e.setPosition(),e.swipeLeft=null,e.options.autoplay&&e.autoPlay(),!0===e.options.accessibility&&e.initADA())},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n=this,r=i("img[data-lazy]",n.$slider);r.length?(t=r.first(),o=t.attr("data-lazy"),(s=document.createElement("img")).onload=function(){t.attr("src",o).removeAttr("data-lazy").removeClass("slick-loading"),!0===n.options.adaptiveHeight&&n.setPosition(),n.$slider.trigger("lazyLoaded",[n,t,o]),n.progressiveLazyLoad()},s.onerror=function(){e<3?setTimeout(function(){n.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,t,o]),n.progressiveLazyLoad())},s.src=o):n.$slider.trigger("allImagesLoaded",[n])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,null!=s.$list?s.destroy(!0):i(s.$slider).removeClass("slick-initialized"),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,t=n[e].breakpoint,n.hasOwnProperty(e)){for(;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount<1||i<0||i>o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};
1249!0===o.options.rtl&&(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&&i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}
1249):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.options.isSlider&&(i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i]))},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode?(e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")):i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false")),"ondemand"===n.options.lazyLoad&&n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e<o;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));if(s||(s=0),t.slideCount<=t.options.slidesToShow)return t.setSlideClasses(s),void t.asNavFor(s);t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,(!0!==a.animating||!0!==a.options.waitForAnimate)&&!(!0===a.options.fade&&a.currentSlide===i||a.slideCount<=a.options.slidesToShow))if(!1===e&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+
1249o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!r.dragging||n&&1!==n.length)&&(e=r.getLeft(r.currentSlide),r.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,r.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,r.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(r.touchObject.curX-r.touchObject.startX,2))),!0===r.options.verticalSwiping&&(r.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(r.touchObject.curY-r.touchObject.startY,2)))),"vertical"!==(t=r.swipeDirection())?(void 0!==i.originalEvent&&r.touchObject.swipeLength>4&&i.preventDefault(),s=(!1===r.options.rtl?1:-1)*(r.touchObject.curX>r.touchObject.startX?1:-1),!0===r.options.verticalSwiping&&(s=r.touchObject.curY>r.touchObject.startY?1:-1),o=r.touchObject.swipeLength,r.touchObject.edgeHit=!1,!1===r.options.infinite&&(0===r.currentSlide&&"right"===t||r.currentSlide>=r.getDotCount()&&"left"===t)&&(o=r.touchObject.swipeLength*r.options.edgeFriction,r.touchObject.edgeHit=!0),!1===r.options.vertical?r.swipeLeft=e+o*s:r.swipeLeft=e+o*(r.$list.height()/r.listWidth)*s,!0===r.options.verticalSwiping&&(r.swipeLeft=e+o*s),!0!==r.options.fade&&!1!==r.options.touchMove&&(!0===r.animating?(r.swipeLeft=null,!1):void r.setCSS(r.swipeLeft))):void 0)},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")}
1249,e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find("li").removeClass("slick-active").attr("aria-hidden","true"),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active").attr("aria-hidden","false"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});

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.