PageSourceSearch

https://hostchefs.gr/templates/slakenew81/asset/js/plugins1.js

js hostchefs.gr collected 2026-10-08 13:04:17 UTC 334,466 bytes, 5,187 lines download raw bytes

1
2/*  jQuery Nice Select - v1.0
3    https://github.com/hernansartorio/jquery-nice-select
4    Made by Hernán Sartorio  */
5!function(e){e.fn.niceSelect=function(t){function s(t){t.after(e("<div></div>").addClass("nice-select").addClass(t.attr("class")||"").addClass(t.attr("disabled")?"disabled":"").attr("tabindex",t.attr("disabled")?null:"0").html('<span class="current"></span><ul class="list"></ul>'));var s=t.next(),n=t.find("option"),i=t.find("option:selected");s.find(".current").html(i.data("display")||i.text()),n.each(function(t){var n=e(this),i=n.data("display");s.find("ul").append(e("<li></li>").attr("data-value",n.val()).attr("data-display",i||null).addClass("option"+(n.is(":selected")?" selected":"")+(n.is(":disabled")?" disabled":"")).html(n.text()))})}if("string"==typeof t)return"update"==t?this.each(function(){var t=e(this),n=e(this).next(".nice-select"),i=n.hasClass("open");n.length&&(n.remove(),s(t),i&&t.next().trigger("click"))}):"destroy"==t?(this.each(function(){var t=e(this),s=e(this).next(".nice-select");s.length&&(s.remove(),t.css("display",""))}),0==e(".nice-select").length&&e(document).off(".nice_select")):console.log('Method "'+t+'" does not exist.'),this;this.hide(),this.each(function(){var t=e(this);t.next().hasClass("nice-select")||s(t)}),e(document).off(".nice_select"),e(document).on("click.nice_select",".nice-select",function(t){var s=e(this);e(".nice-select").not(s).removeClass("open"),s.toggleClass("open"),s.hasClass("open")?(s.find(".option"),s.find(".focus").removeClass("focus"),s.find(".selected").addClass("focus")):s.focus()}),e(document).on("click.nice_select",function(t){0===e(t.target).closest(".nice-select").length&&e(".nice-select").removeClass("open").find(".option")}),e(document).on("click.nice_select",".nice-select .option:not(.disabled)",function(t){var s=e(this),n=s.closest(".nice-select");n.find(".selected").removeClass("selected"),s.addClass("selected");var i=s.data("display")||s.text();n.find(".current").text(i),n.prev("select").val(s.data("value")).trigger("change")}),e(document).on("keydown.nice_select",".nice-select",function(t){var s=e(this),n=e(s.find(".focus")||s.find(".list .option.selected"));if(32==t.keyCode||13==t.keyCode)return s.hasClass("open")?n.trigger("click"):s.trigger("click"),!1;if(40==t.keyCode){if(s.hasClass("open")){var i=n.nextAll(".option:not(.disabled)").first();i.length>0&&(s.find(".focus").removeClass("focus"),i.addClass("focus"))}else s.trigger("click");return!1}if(38==t.keyCode){if(s.hasClass("open")){var l=n.prevAll(".option:not(.disabled)").first();l.length>0&&(s.find(".focus").removeClass("focus"),l.addClass("focus"))}else s.trigger("click");return!1}if(27==t.keyCode)s.hasClass("open")&&s.trigger("click");else if(9==t.keyCode&&s.hasClass("open"))return!1});var n=document.createElement("a").style;return n.cssText="pointer-events:auto","auto"!==n.pointerEvents&&e("html").addClass("no-csspointerevents"),this}}(jQuery);
6
7
8/* ------------------------------------------------------------------------
9	Class: prettyPhoto
10	Use: Lightbox clone for jQuery
11	Author: Stephane Caron (http://www.no-margin-for-errors.com)
12	Version: 3.1.6
13------------------------------------------------------------------------- */
14(function($) {
15	$.prettyPhoto = {version: '3.1.6'};
16	
17	$.fn.prettyPhoto = function(pp_settings) {
18		pp_settings = jQuery.extend({
19			hook: 'rel', /* the attribute tag to use for prettyPhoto hooks. default: 'rel'. For HTML5, use "data-rel" or similar. */
20			animation_speed: 'fast', /* fast/slow/normal */
21			ajaxcallback: function() {},
22			slideshow: 5000, /* false OR interval time in ms */
23			autoplay_slideshow: false, /* true/false */
24			opacity: 0.80, /* Value between 0 and 1 */
25			show_title: true, /* true/false */
26			allow_resize: true, /* Resize the photos bigger than viewport. true/false */
27			allow_expand: true, /* Allow the user to expand a resized image. true/false */
28			default_width: 500,
29			default_height: 344,
30			counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
31			theme: 'pp_default', /* light_rounded / dark_rounded / light_square / dark_square / facebook */
32			horizontal_padding: 20, /* The padding on each side of the picture */
33			hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */
34			wmode: 'opaque', /* Set the flash wmode attribute */
35			autoplay: true, /* Automatically start videos: True/False */
36			modal: false, /* If set to true, only the close button will close the window */
37			deeplinking: true, /* Allow prettyPhoto to update the url to enable deeplinking. */
38			overlay_gallery: true, /* If set to true, a gallery will overlay the fullscreen image on mouse over */
39			overlay_gallery_max: 30, /* Maximum number of pictures in the overlay gallery */
40			keyboard_shortcuts: true, /* Set to false if you open forms inside prettyPhoto */
41			changepicturecallback: function(){}, /* Called everytime an item is shown/changed */
42			callback: function(){}, /* Called when prettyPhoto is closed */
43			ie6_fallback: true,
44			markup: '<div class="pp_pic_holder"> \
45						<div class="ppt">&nbsp;</div> \
46						<div class="pp_top"> \
47							<div class="pp_left"></div> \
48							<div class="pp_middle"></div> \
49							<div class="pp_right"></div> \
50						</div> \
51						<div class="pp_content_container"> \
52							<div class="pp_left"> \
53							<div class="pp_right"> \
54								<div class="pp_content"> \
55									<div class="pp_loaderIcon"></div> \
56									<div class="pp_fade"> \
57										<a href="#" class="pp_expand" title="Expand the image">Expand</a> \
58										<div class="pp_hoverContainer"> \
59											<a class="pp_next" href="#">next</a> \
60											<a class="pp_previous" href="#">previous</a> \
61										</div> \
62										<div id="pp_full_res"></div> \
63										<div class="pp_details"> \
64											<div class="pp_nav"> \
65												<a href="#" class="pp_arrow_previous">Previous</a> \
66												<p class="currentTextHolder">0/0</p> \
67												<a href="#" class="pp_arrow_next">Next</a> \
68											</div> \
69											<p class="pp_description"></p> \
70											<div class="pp_social">{pp_social}</div> \
71											<a class="pp_close" href="#">Close</a> \
72										</div> \
73									</div> \
74								</div> \
75							</div> \
76							</div> \
77						</div> \
78						<div class="pp_bottom"> \
79							<div class="pp_left"></div> \
80							<div class="pp_middle"></div> \
81							<div class="pp_right"></div> \
82						</div> \
83					</div> \
84					<div class="pp_overlay"></div>',
85			gallery_markup: '<div class="pp_gallery"> \
86								<a href="#" class="pp_arrow_previous">Previous</a> \
87								<div> \
88									<ul> \
89										{gallery} \
90									</ul> \
91								</div> \
92								<a href="#" class="pp_arrow_next">Next</a> \
93							</div>',
94			image_markup: '<img id="fullResImage" src="{path}" />',
95			flash_markup: '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="{width}" height="{height}"><param name="wmode" value="{wmode}" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{path}" /><embed src="{path}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="{width}" height="{height}" wmode="{wmode}"></embed></object>',
96			quicktime_markup: '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" height="{height}" width="{width}"><param name="src" value="{path}"><param name="autoplay" value="{autoplay}"><param name="type" value="video/quicktime"><embed src="{path}" height="{height}" width="{width}" autoplay="{autoplay}" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"></embed></object>',
97			iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no"></iframe>',
98			inline_markup: '<div class="pp_inline">{content}</div>',
99			custom_markup: '',
100			social_tools: '<div class="twitter"><a href="http://twitter.com/share" class="twitter-share-button" data-count="none">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div class="facebook"><iframe src="//www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&amp;layout=button_count&amp;show_faces=true&amp;width=500&amp;action=like&amp;font&amp;colorscheme=light&amp;height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe></div>' /* html or false to disable */
101		}, pp_settings);
102		
103		// Global variables accessible only by prettyPhoto
104		var matchedObjects = this, percentBased = false, pp_dimensions, pp_open,
105		
106		// prettyPhoto container specific
107		pp_contentHeight, pp_contentWidth, pp_containerHeight, pp_containerWidth,
108		
109		// Window size
110		windowHeight = $(window).height(), windowWidth = $(window).width(),
111
112		// Global elements
113		pp_slideshow;
114		
115		doresize = true, scroll_pos = _get_scroll();
116	
117		// Window/Keyboard events
118		$(window).unbind('resize.prettyphoto').bind('resize.prettyphoto',function(){ _center_overlay(); _resize_overlay(); });
119		
120		if(pp_settings.keyboard_shortcuts) {
121			$(document).unbind('keydown.prettyphoto').bind('keydown.prettyphoto',function(e){
122				if(typeof $pp_pic_holder != 'undefined'){
123					if($pp_pic_holder.is(':visible')){
124						switch(e.keyCode){
125							case 37:
126								$.prettyPhoto.changePage('previous');
127								e.preventDefault();
128								break;
129							case 39:
130								$.prettyPhoto.changePage('next');
131								e.preventDefault();
132								break;
133							case 27:
134								if(!settings.modal)
135								$.prettyPhoto.close();
136								e.preventDefault();
137								break;
138						};
139						// return false;
140					};
141				};
142			});
143		};
144		
145		/**
146		* Initialize prettyPhoto.
147		*/
148		$.prettyPhoto.initialize = function() {
149			
150			settings = pp_settings;
151			
152			if(settings.theme == 'pp_default') settings.horizontal_padding = 16;
153			
154			// Find out if the picture is part of a set
155			theRel = $(this).attr(settings.hook);
156			galleryRegExp = /\[(?:.*)\]/;
157			isSet = (galleryRegExp.exec(theRel)) ? true : false;
158			
159			// Put the SRCs, TITLEs, ALTs into an array.
160			pp_images = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return $(n).attr('href'); }) : $.makeArray($(this).attr('href'));
161			pp_titles = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return ($(n).find('img').attr('alt')) ? $(n).find('img').attr('alt') : ""; }) : $.makeArray($(this).find('img').attr('alt'));
162			pp_descriptions = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr(settings.hook).indexOf(theRel) != -1) return ($(n).attr('title')) ? $(n).attr('title') : ""; }) : $.makeArray($(this).attr('title'));
163			
164			if(pp_images.length > settings.overlay_gallery_max) settings.overlay_gallery = false;
165			
166			set_position = jQuery.inArray($(this).attr('href'), pp_images); // Define where in the array the clicked item is positionned
167			rel_index = (isSet) ? set_position : $("a["+settings.hook+"^='"+theRel+"']").index($(this));
168			
169			_build_overlay(this); // Build the overlay {this} being the caller
170			
171			if(settings.allow_resize)
172				$(window).bind('scroll.prettyphoto',function(){ _center_overlay(); });
173			
174			
175			$.prettyPhoto.open();
176			
177			return false;
178		}
179
180
181		/**
182		* Opens the prettyPhoto modal box.
183		* @param image {String,Array} Full path to the image to be open, can also be an array containing full images paths.
184		* @param title {String,Array} The title to be displayed with the picture, can also be an array containing all the titles.
185		* @param description {String,Array} The description to be displayed with the picture, can also be an array containing all the descriptions.
186		*/
187		$.prettyPhoto.open = function(event) {
188			if(typeof settings == "undefined"){ // Means it's an API call, need to manually get the settings and set the variables
189				settings = pp_settings;
190				pp_images = $.makeArray(arguments[0]);
191				pp_titles = (arguments[1]) ? $.makeArray(arguments[1]) : $.makeArray("");
192				pp_descriptions = (arguments[2]) ? $.makeArray(arguments[2]) : $.makeArray("");
193				isSet = (pp_images.length > 1) ? true : false;
194				set_position = (arguments[3])? arguments[3]: 0;
195				_build_overlay(event.target); // Build the overlay {this} being the caller
196			}
197			
198			if(settings.hideflash) $('object,embed,iframe[src*=youtube],iframe[src*=vimeo]').css('visibility','hidden'); // Hide the flash
199
200			_checkPosition($(pp_images).size()); // Hide the next/previous links if on first or last images.
201		
202			$('.pp_loaderIcon').show();
203		
204			if(settings.deeplinking)
205				setHashtag();
206		
207			// Rebuild Facebook Like Button with updated href
208			if(settings.social_tools){
209				facebook_like_link = settings.social_tools.replace('{location_href}', encodeURIComponent(location.href)); 
210				$pp_pic_holder.find('.pp_social').html(facebook_like_link);
211			}
212			
213			// Fade the content in
214			if($ppt.is(':hidden')) $ppt.css('opacity',0).show();
215			$pp_overlay.show().fadeTo(settings.animation_speed,settings.opacity);
216
217			// Display the current position
218			$pp_pic_holder.find('.currentTextHolder').text((set_position+1) + settings.counter_separator_label + $(pp_images).size());
219
220			// Set the description
221			if(typeof pp_descriptions[set_position] != 'undefined' && pp_descriptions[set_position] != ""){
222				$pp_pic_holder.find('.pp_description').show().html(unescape(pp_descriptions[set_position]));
223			}else{
224				$pp_pic_holder.find('.pp_description').hide();
225			}
226			
227			// Get the dimensions
228			movie_width = ( parseFloat(getParam('width',pp_images[set_position])) ) ? getParam('width',pp_images[set_position]) : settings.default_width.toString();
229			movie_height = ( parseFloat(getParam('height',pp_images[set_position])) ) ? getParam('height',pp_images[set_position]) : settings.default_height.toString();
230			
231			// If the size is % based, calculate according to window dimensions
232			percentBased=false;
233			if(movie_height.indexOf('%') != -1) { movie_height = parseFloat(($(window).height() * parseFloat(movie_height) / 100) - 150); percentBased = true; }
234			if(movie_width.indexOf('%') != -1) { movie_width = parseFloat(($(window).width() * parseFloat(movie_width) / 100) - 150); percentBased = true; }
235			
236			// Fade the holder
237			$pp_pic_holder.fadeIn(function(){
238				// Set the title
239				(settings.show_title && pp_titles[set_position] != "" && typeof pp_titles[set_position] != "undefined") ? $ppt.html(unescape(pp_titles[set_position])) : $ppt.html('&nbsp;');
240				
241				imgPreloader = "";
242				skipInjection = false;
243				
244				// Inject the proper content
245				switch(_getFileType(pp_images[set_position])){
246					case 'image':
247						imgPreloader = new Image();
248
249						// Preload the neighbour images
250						nextImage = new Image();
251						if(isSet && set_position < $(pp_images).size() -1) nextImage.src = pp_images[set_position + 1];
252						prevImage = new Image();
253						if(isSet && pp_images[set_position - 1]) prevImage.src = pp_images[set_position - 1];
254
255						$pp_pic_holder.find('#pp_full_res')[0].innerHTML = settings.image_markup.replace(/{path}/g,pp_images[set_position]);
256
257						imgPreloader.onload = function(){
258							// Fit item to viewport
259							pp_dimensions = _fitToViewport(imgPreloader.width,imgPreloader.height);
260
261							_showContent();
262						};
263
264						imgPreloader.onerror = function(){
265							alert('Image cannot be loaded. Make sure the path is correct and image exist.');
266							$.prettyPhoto.close();
267						};
268					
269						imgPreloader.src = pp_images[set_position];
270					break;
271				
272					case 'youtube':
273						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
274						
275						// Regular youtube link
276						movie_id = getParam('v',pp_images[set_position]);
277						
278						// youtu.be link
279						if(movie_id == ""){
280							movie_id = pp_images[set_position].split('youtu.be/');
281							movie_id = movie_id[1];
282							if(movie_id.indexOf('?') > 0)
283								movie_id = movie_id.substr(0,movie_id.indexOf('?')); // Strip anything after the ?
284
285							if(movie_id.indexOf('&') > 0)
286								movie_id = movie_id.substr(0,movie_id.indexOf('&')); // Strip anything after the &
287						}
288
289						movie = 'http://www.youtube.com/embed/'+movie_id;
290						(getParam('rel',pp_images[set_position])) ? movie+="?rel="+getParam('rel',pp_images[set_position]) : movie+="?rel=1";
291							
292						if(settings.autoplay) movie += "&autoplay=1";
293					
294						toInject = settings.iframe_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,movie);
295					break;
296				
297					case 'vimeo':
298						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
299					
300						movie_id = pp_images[set_position];
301						var regExp = /http(s?):\/\/(www\.)?vimeo.com\/(\d+)/;
302						var match = movie_id.match(regExp);
303						
304						movie = 'http://player.vimeo.com/video/'+ match[3] +'?title=0&amp;byline=0&amp;portrait=0';
305						if(settings.autoplay) movie += "&autoplay=1;";
306				
307						vimeo_width = pp_dimensions['width'] + '/embed/?moog_width='+ pp_dimensions['width'];
308				
309						toInject = settings.iframe_markup.replace(/{width}/g,vimeo_width).replace(/{height}/g,pp_dimensions['height']).replace(/{path}/g,movie);
310					break;
311				
312					case 'quicktime':
313						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
314						pp_dimensions['height']+=15; pp_dimensions['contentHeight']+=15; pp_dimensions['containerHeight']+=15; // Add space for the control bar
315				
316						toInject = settings.quicktime_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,pp_images[set_position]).replace(/{autoplay}/g,settings.autoplay);
317					break;
318				
319					case 'flash':
320						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
321					
322						flash_vars = pp_images[set_position];
323						flash_vars = flash_vars.substring(pp_images[set_position].indexOf('flashvars') + 10,pp_images[set_position].length);
324
325						filename = pp_images[set_position];
326						filename = filename.substring(0,filename.indexOf('?'));
327					
328						toInject =  settings.flash_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,filename+'?'+flash_vars);
329					break;
330				
331					case 'iframe':
332						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
333				
334						frame_url = pp_images[set_position];
335						frame_url = frame_url.substr(0,frame_url.indexOf('iframe')-1);
336
337						toInject = settings.iframe_markup.replace(/{width}/g,pp_dimensions['width']).replace(/{height}/g,pp_dimensions['height']).replace(/{path}/g,frame_url);
338					break;
339					
340					case 'ajax':
341						doresize = false; // Make sure the dimensions are not resized.
342						pp_dimensions = _fitToViewport(movie_width,movie_height);
343						doresize = true; // Reset the dimensions
344					
345						skipInjection = true;
346						$.get(pp_images[set_position],function(responseHTML){
347							toInject = settings.inline_markup.replace(/{content}/g,responseHTML);
348							$pp_pic_holder.find('#pp_full_res')[0].innerHTML = toInject;
349							_showContent();
350						});
351						
352					break;
353					
354					case 'custom':
355						pp_dimensions = _fitToViewport(movie_width,movie_height); // Fit item to viewport
356					
357						toInject = settings.custom_markup;
358					break;
359				
360					case 'inline':
361						// to get the item height clone it, apply default width, wrap it in the prettyPhoto containers , then delete
362						myClone = $(pp_images[set_position]).clone().append('<br clear="all" />').css({'width':settings.default_width}).wrapInner('<div id="pp_full_res"><div class="pp_inline"></div></div>').appendTo($('body')).show();
363						doresize = false; // Make sure the dimensions are not resized.
364						pp_dimensions = _fitToViewport($(myClone).width(),$(myClone).height());
365						doresize = true; // Reset the dimensions
366						$(myClone).remove();
367						toInject = settings.inline_markup.replace(/{content}/g,$(pp_images[set_position]).html());
368					break;
369				};
370
371				if(!imgPreloader && !skipInjection){
372					$pp_pic_holder.find('#pp_full_res')[0].innerHTML = toInject;
373				
374					// Show content
375					_showContent();
376				};
377			});
378
379			return false;
380		};
381
382	
383		/**
384		* Change page in the prettyPhoto modal box
385		* @param direction {String} Direction of the paging, previous or next.
386		*/
387		$.prettyPhoto.changePage = function(direction){
388			currentGalleryPage = 0;
389			
390			if(direction == 'previous') {
391				set_position--;
392				if (set_position < 0) set_position = $(pp_images).size()-1;
393			}else if(direction == 'next'){
394				set_position++;
395				if(set_position > $(pp_images).size()-1) set_position = 0;
396			}else{
397				set_position=direction;
398			};
399			
400			rel_index = set_position;
401
402			if(!doresize) doresize = true; // Allow the resizing of the images
403			if(settings.allow_expand) {
404				$('.pp_contract').removeClass('pp_contract').addClass('pp_expand');
405			}
406
407			_hideContent(function(){ $.prettyPhoto.open(); });
408		};
409
410
411		/**
412		* Change gallery page in the prettyPhoto modal box
413		* @param direction {String} Direction of the paging, previous or next.
414		*/
415		$.prettyPhoto.changeGalleryPage = function(direction){
416			if(direction=='next'){
417				currentGalleryPage ++;
418
419				if(currentGalleryPage > totalPage) currentGalleryPage = 0;
420			}else if(direction=='previous'){
421				currentGalleryPage --;
422
423				if(currentGalleryPage < 0) currentGalleryPage = totalPage;
424			}else{
425				currentGalleryPage = direction;
426			};
427			
428			slide_speed = (direction == 'next' || direction == 'previous') ? settings.animation_speed : 0;
429
430			slide_to = currentGalleryPage * (itemsPerPage * itemWidth);
431
432			$pp_gallery.find('ul').animate({left:-slide_to},slide_speed);
433		};
434
435
436		/**
437		* Start the slideshow...
438		*/
439		$.prettyPhoto.startSlideshow = function(){
440			if(typeof pp_slideshow == 'undefined'){
441				$pp_pic_holder.find('.pp_play').unbind('click').removeClass('pp_play').addClass('pp_pause').click(function(){
442					$.prettyPhoto.stopSlideshow();
443					return false;
444				});
445				pp_slideshow = setInterval($.prettyPhoto.startSlideshow,settings.slideshow);
446			}else{
447				$.prettyPhoto.changePage('next');	
448			};
449		}
450
451
452		/**
453		* Stop the slideshow...
454		*/
455		$.prettyPhoto.stopSlideshow = function(){
456			$pp_pic_holder.find('.pp_pause').unbind('click').removeClass('pp_pause').addClass('pp_play').click(function(){
457				$.prettyPhoto.startSlideshow();
458				return false;
459			});
460			clearInterval(pp_slideshow);
461			pp_slideshow=undefined;
462		}
463
464
465		/**
466		* Closes prettyPhoto.
467		*/
468		$.prettyPhoto.close = function(){
469			if($pp_overlay.is(":animated")) return;
470			
471			$.prettyPhoto.stopSlideshow();
472			
473			$pp_pic_holder.stop().find('object,embed').css('visibility','hidden');
474			
475			$('div.pp_pic_holder,div.ppt,.pp_fade').fadeOut(settings.animation_speed,function(){ $(this).remove(); });
476			
477			$pp_overlay.fadeOut(settings.animation_speed, function(){
478				
479				if(settings.hideflash) $('object,embed,iframe[src*=youtube],iframe[src*=vimeo]').css('visibility','visible'); // Show the flash
480				
481				$(this).remove(); // No more need for the prettyPhoto markup
482				
483				$(window).unbind('scroll.prettyphoto');
484				
485				clearHashtag();
486				
487				settings.callback();
488				
489				doresize = true;
490				
491				pp_open = false;
492				
493				delete settings;
494			});
495		};
496	
497		/**
498		* Set the proper sizes on the containers and animate the content in.
499		*/
500		function _showContent(){
501			$('.pp_loaderIcon').hide();
502
503			// Calculate the opened top position of the pic holder
504			projectedTop = scroll_pos['scrollTop'] + ((windowHeight/2) - (pp_dimensions['containerHeight']/2));
505			if(projectedTop < 0) projectedTop = 0;
506
507			$ppt.fadeTo(settings.animation_speed,1);
508
509			// Resize the content holder
510			$pp_pic_holder.find('.pp_content')
511				.animate({
512					height:pp_dimensions['contentHeight'],
513					width:pp_dimensions['contentWidth']
514				},settings.animation_speed);
515			
516			// Resize picture the holder
517			$pp_pic_holder.animate({
518				'top': projectedTop,
519				'left': ((windowWidth/2) - (pp_dimensions['containerWidth']/2) < 0) ? 0 : (windowWidth/2) - (pp_dimensions['containerWidth']/2),
520				width:pp_dimensions['containerWidth']
521			},settings.animation_speed,function(){
522				$pp_pic_holder.find('.pp_hoverContainer,#fullResImage').height(pp_dimensions['height']).width(pp_dimensions['width']);
523
524				$pp_pic_holder.find('.pp_fade').fadeIn(settings.animation_speed); // Fade the new content
525
526				// Show the nav
527				if(isSet && _getFileType(pp_images[set_position])=="image") { $pp_pic_holder.find('.pp_hoverContainer').show(); }else{ $pp_pic_holder.find('.pp_hoverContainer').hide(); }
528			
529				if(settings.allow_expand) {
530					if(pp_dimensions['resized']){ // Fade the resizing link if the image is resized
531						$('a.pp_expand,a.pp_contract').show();
532					}else{
533						$('a.pp_expand').hide();
534					}
535				}
536				
537				if(settings.autoplay_slideshow && !pp_slideshow && !pp_open) $.prettyPhoto.startSlideshow();
538				
539				settings.changepicturecallback(); // Callback!
540				
541				pp_open = true;
542			});
543			
544			_insert_gallery();
545			pp_settings.ajaxcallback();
546		};
547		
548		/**
549		* Hide the content...DUH!
550		*/
551		function _hideContent(callback){
552			// Fade out the current picture
553			$pp_pic_holder.find('#pp_full_res object,#pp_full_res embed').css('visibility','hidden');
554			$pp_pic_holder.find('.pp_fade').fadeOut(settings.animation_speed,function(){
555				$('.pp_loaderIcon').show();
556				
557				callback();
558			});
559		};
560	
561		/**
562		* Check the item position in the gallery array, hide or show the navigation links
563		* @param setCount {integer} The total number of items in the set
564		*/
565		function _checkPosition(setCount){
566			(setCount > 1) ? $('.pp_nav').show() : $('.pp_nav').hide(); // Hide the bottom nav if it's not a set.
567		};
568	
569		/**
570		* Resize the item dimensions if it's bigger than the viewport
571		* @param width {integer} Width of the item to be opened
572		* @param height {integer} Height of the item to be opened
573		* @return An array containin the "fitted" dimensions
574		*/
575		function _fitToViewport(width,height){
576			resized = false;
577
578			_getDimensions(width,height);
579			
580			// Define them in case there's no resize needed
581			imageWidth = width, imageHeight = height;
582
583			if( ((pp_containerWidth > windowWidth) || (pp_containerHeight > windowHeight)) && doresize && settings.allow_resize && !percentBased) {
584				resized = true, fitting = false;
585			
586				while (!fitting){
587					if((pp_containerWidth > windowWidth)){
588						imageWidth = (windowWidth - 200);
589						imageHeight = (height/width) * imageWidth;
590					}else if((pp_containerHeight > windowHeight)){
591						imageHeight = (windowHeight - 200);
592						imageWidth = (width/height) * imageHeight;
593					}else{
594						fitting = true;
595					};
596
597					pp_containerHeight = imageHeight, pp_containerWidth = imageWidth;
598				};
599			
600
601				
602				if((pp_containerWidth > windowWidth) || (pp_containerHeight > windowHeight)){
603					_fitToViewport(pp_containerWidth,pp_containerHeight)
604				};
605				
606				_getDimensions(imageWidth,imageHeight);
607			};
608			
609			return {
610				width:Math.floor(imageWidth),
611				height:Math.floor(imageHeight),
612				containerHeight:Math.floor(pp_containerHeight),
613				containerWidth:Math.floor(pp_containerWidth) + (settings.horizontal_padding * 2),
614				contentHeight:Math.floor(pp_contentHeight),
615				contentWidth:Math.floor(pp_contentWidth),
616				resized:resized
617			};
618		};
619		
620		/**
621		* Get the containers dimensions according to the item size
622		* @param width {integer} Width of the item to be opened
623		* @param height {integer} Height of the item to be opened
624		*/
625		function _getDimensions(width,height){
626			width = parseFloat(width);
627			height = parseFloat(height);
628			
629			// Get the details height, to do so, I need to clone it since it's invisible
630			$pp_details = $pp_pic_holder.find('.pp_details');
631			$pp_details.width(width);
632			detailsHeight = parseFloat($pp_details.css('marginTop')) + parseFloat($pp_details.css('marginBottom'));
633			
634			$pp_details = $pp_details.clone().addClass(settings.theme).width(width).appendTo($('body')).css({
635				'position':'absolute',
636				'top':-10000
637			});
638			detailsHeight += $pp_details.height();
639			detailsHeight = (detailsHeight <= 34) ? 36 : detailsHeight; // Min-height for the details
640			$pp_details.remove();
641			
642			// Get the titles height, to do so, I need to clone it since it's invisible
643			$pp_title = $pp_pic_holder.find('.ppt');
644			$pp_title.width(width);
645			titleHeight = parseFloat($pp_title.css('marginTop')) + parseFloat($pp_title.css('marginBottom'));
646			$pp_title = $pp_title.clone().appendTo($('body')).css({
647				'position':'absolute',
648				'top':-10000
649			});
650			titleHeight += $pp_title.height();
651			$pp_title.remove();
652			
653			// Get the container size, to resize the holder to the right dimensions
654			pp_contentHeight = height + detailsHeight;
655			pp_contentWidth = width;
656			pp_containerHeight = pp_contentHeight + titleHeight + $pp_pic_holder.find('.pp_top').height() + $pp_pic_holder.find('.pp_bottom').height();
657			pp_containerWidth = width;
658		}
659	
660		function _getFileType(itemSrc){
661			if (itemSrc.match(/youtube\.com\/watch/i) || itemSrc.match(/youtu\.be/i)) {
662				return 'youtube';
663			}else if (itemSrc.match(/vimeo\.com/i)) {
664				return 'vimeo';
665			}else if(itemSrc.match(/\b.mov\b/i)){ 
666				return 'quicktime';
667			}else if(itemSrc.match(/\b.swf\b/i)){
668				return 'flash';
669			}else if(itemSrc.match(/\biframe=true\b/i)){
670				return 'iframe';
671			}else if(itemSrc.match(/\bajax=true\b/i)){
672				return 'ajax';
673			}else if(itemSrc.match(/\bcustom=true\b/i)){
674				return 'custom';
675			}else if(itemSrc.substr(0,1) == '#'){
676				return 'inline';
677			}else{
678				return 'image';
679			};
680		};
681	
682		function _center_overlay(){
683			if(doresize && typeof $pp_pic_holder != 'undefined') {
684				scroll_pos = _get_scroll();
685				contentHeight = $pp_pic_holder.height(), contentwidth = $pp_pic_holder.width();
686
687				projectedTop = (windowHeight/2) + scroll_pos['scrollTop'] - (contentHeight/2);
688				if(projectedTop < 0) projectedTop = 0;
689				
690				if(contentHeight > windowHeight)
691					return;
692
693				$pp_pic_holder.css({
694					'top': projectedTop,
695					'left': (windowWidth/2) + scroll_pos['scrollLeft'] - (contentwidth/2)
696				});
697			};
698		};
699	
700		function _get_scroll(){
701			if (self.pageYOffset) {
702				return {scrollTop:self.pageYOffset,scrollLeft:self.pageXOffset};
703			} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
704				return {scrollTop:document.documentElement.scrollTop,scrollLeft:document.documentElement.scrollLeft};
705			} else if (document.body) {// all other Explorers
706				return {scrollTop:document.body.scrollTop,scrollLeft:document.body.scrollLeft};
707			};
708		};
709	
710		function _resize_overlay() {
711			windowHeight = $(window).height(), windowWidth = $(window).width();
712			
713			if(typeof $pp_overlay != "undefined") $pp_overlay.height($(document).height()).width(windowWidth);
714		};
715	
716		function _insert_gallery(){
717			if(isSet && settings.overlay_gallery && _getFileType(pp_images[set_position])=="image") {
718				itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
719				navWidth = (settings.theme == "facebook" || settings.theme == "pp_default") ? 50 : 30; // Define the arrow width depending on the theme
720				
721				itemsPerPage = Math.floor((pp_dimensions['containerWidth'] - 100 - navWidth) / itemWidth);
722				itemsPerPage = (itemsPerPage < pp_images.length) ? itemsPerPage : pp_images.length;
723				totalPage = Math.ceil(pp_images.length / itemsPerPage) - 1;
724
725				// Hide the nav in the case there's no need for links
726				if(totalPage == 0){
727					navWidth = 0; // No nav means no width!
728					$pp_gallery.find('.pp_arrow_next,.pp_arrow_previous').hide();
729				}else{
730					$pp_gallery.find('.pp_arrow_next,.pp_arrow_previous').show();
731				};
732
733				galleryWidth = itemsPerPage * itemWidth;
734				fullGalleryWidth = pp_images.length * itemWidth;
735				
736				// Set the proper width to the gallery items
737				$pp_gallery
738					.css('margin-left',-((galleryWidth/2) + (navWidth/2)))
739					.find('div:first').width(galleryWidth+5)
740					.find('ul').width(fullGalleryWidth)
741					.find('li.selected').removeClass('selected');
742				
743				goToPage = (Math.floor(set_position/itemsPerPage) < totalPage) ? Math.floor(set_position/itemsPerPage) : totalPage;
744
745				$.prettyPhoto.changeGalleryPage(goToPage);
746				
747				$pp_gallery_li.filter(':eq('+set_position+')').addClass('selected');
748			}else{
749				$pp_pic_holder.find('.pp_content').unbind('mouseenter mouseleave');
750				// $pp_gallery.hide();
751			}
752		}
753	
754		function _build_overlay(caller){
755			// Inject Social Tool markup into General markup
756			if(settings.social_tools)
757				facebook_like_link = settings.social_tools.replace('{location_href}', encodeURIComponent(location.href)); 
758
759			settings.markup = settings.markup.replace('{pp_social}',''); 
760			
761			$('body').append(settings.markup); // Inject the markup
762			
763			$pp_pic_holder = $('.pp_pic_holder') , $ppt = $('.ppt'), $pp_overlay 
763= $('div.pp_overlay'); // Set my global selectors
764			
765			// Inject the inline gallery!
766			if(isSet && settings.overlay_gallery) {
767				currentGalleryPage = 0;
768				toInject = "";
769				for (var i=0; i < pp_images.length; i++) {
770					if(!pp_images[i].match(/\b(jpg|jpeg|png|gif)\b/gi)){
771						classname = 'default';
772						img_src = '';
773					}else{
774						classname = '';
775						img_src = pp_images[i];
776					}
777					toInject += "<li class='"+classname+"'><a href='#'><img src='" + img_src + "' width='50' alt='' /></a></li>";
778				};
779				
780				toInject = settings.gallery_markup.replace(/{gallery}/g,toInject);
781				
782				$pp_pic_holder.find('#pp_full_res').after(toInject);
783				
784				$pp_gallery = $('.pp_pic_holder .pp_gallery'), $pp_gallery_li = $pp_gallery.find('li'); // Set the gallery selectors
785				
786				$pp_gallery.find('.pp_arrow_next').click(function(){
787					$.prettyPhoto.changeGalleryPage('next');
788					$.prettyPhoto.stopSlideshow();
789					return false;
790				});
791				
792				$pp_gallery.find('.pp_arrow_previous').click(function(){
793					$.prettyPhoto.changeGalleryPage('previous');
794					$.prettyPhoto.stopSlideshow();
795					return false;
796				});
797				
798				$pp_pic_holder.find('.pp_content').hover(
799					function(){
800						$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeIn();
801					},
802					function(){
803						$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeOut();
804					});
805
806				itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
807				$pp_gallery_li.each(function(i){
808					$(this)
809						.find('a')
810						.click(function(){
811							$.prettyPhoto.changePage(i);
812							$.prettyPhoto.stopSlideshow();
813							return false;
814						});
815				});
816			};
817			
818			
819			// Inject the play/pause if it's a slideshow
820			if(settings.slideshow){
821				$pp_pic_holder.find('.pp_nav').prepend('<a href="#" class="pp_play">Play</a>')
822				$pp_pic_holder.find('.pp_nav .pp_play').click(function(){
823					$.prettyPhoto.startSlideshow();
824					return false;
825				});
826			}
827			
828			$pp_pic_holder.attr('class','pp_pic_holder ' + settings.theme); // Set the proper theme
829			
830			$pp_overlay
831				.css({
832					'opacity':0,
833					'height':$(document).height(),
834					'width':$(window).width()
835					})
836				.bind('click',function(){
837					if(!settings.modal) $.prettyPhoto.close();
838				});
839
840			$('a.pp_close').bind('click',function(){ $.prettyPhoto.close(); return false; });
841
842
843			if(settings.allow_expand) {
844				$('a.pp_expand').bind('click',function(e){
845					// Expand the image
846					if($(this).hasClass('pp_expand')){
847						$(this).removeClass('pp_expand').addClass('pp_contract');
848						doresize = false;
849					}else{
850						$(this).removeClass('pp_contract').addClass('pp_expand');
851						doresize = true;
852					};
853				
854					_hideContent(function(){ $.prettyPhoto.open(); });
855			
856					return false;
857				});
858			}
859		
860			$pp_pic_holder.find('.pp_previous, .pp_nav .pp_arrow_previous').bind('click',function(){
861				$.prettyPhoto.changePage('previous');
862				$.prettyPhoto.stopSlideshow();
863				return false;
864			});
865		
866			$pp_pic_holder.find('.pp_next, .pp_nav .pp_arrow_next').bind('click',function(){
867				$.prettyPhoto.changePage('next');
868				$.prettyPhoto.stopSlideshow();
869				return false;
870			});
871			
872			_center_overlay(); // Center it
873		};
874
875		if(!pp_alreadyInitialized && getHashtag()){
876			pp_alreadyInitialized = true;
877			
878			// Grab the rel index to trigger the click on the correct element
879			hashIndex = getHashtag();
880			hashRel = hashIndex;
881			hashIndex = hashIndex.substring(hashIndex.indexOf('/')+1,hashIndex.length-1);
882			hashRel = hashRel.substring(0,hashRel.indexOf('/'));
883
884			// Little timeout to make sure all the prettyPhoto initialize scripts has been run.
885			// Useful in the event the page contain several init scripts.
886			setTimeout(function(){ $("a["+pp_settings.hook+"^='"+hashRel+"']:eq("+hashIndex+")").trigger('click'); },50);
887		}
888		
889		return this.unbind('click.prettyphoto').bind('click.prettyphoto',$.prettyPhoto.initialize); // Return the jQuery object for chaining. The unbind method is used to avoid click conflict when the plugin is called more than once
890	};
891	
892	function getHashtag(){
893		var url = location.href;
894		hashtag = (url.indexOf('#prettyPhoto') !== -1) ? decodeURI(url.substring(url.indexOf('#prettyPhoto')+1,url.length)) : false;
895		if(hashtag){  hashtag = hashtag.replace(/<|>/g,''); }
896		return hashtag;
897	};
898	
899	function setHashtag(){
900		if(typeof theRel == 'undefined') return; // theRel is set on normal calls, it's impossible to deeplink using the API
901		location.hash = theRel + '/'+rel_index+'/';
902	};
903	
904	function clearHashtag(){
905		if ( location.href.indexOf('#prettyPhoto') !== -1 ) location.hash = "prettyPhoto";
906	}
907	
908	function getParam(name,url){
909	  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
910	  var regexS = "[\\?&]"+name+"=([^&#]*)";
911	  var regex = new RegExp( regexS );
912	  var results = regex.exec( url );
913	  return ( results == null ) ? "" : results[1];
914	}
915	
916})(jQuery);
917
918var pp_alreadyInitialized = false; // Used for the deep linking to make sure not to call the same function several times.
919
920
921
922/*!
923 * SlickNav Responsive Mobile Menu v1.0.10
924 * (c) 2016 Josh Cope
925 * licensed under MIT
926 */
927!function(e,t,n){function a(t,n){this.element=t,this.settings=e.extend({},i,n),this.settings.duplicate||n.hasOwnProperty("removeIds")||(this.settings.removeIds=!1),this._defaults=i,this._name=s,this.init()}var i={label:"MENU",duplicate:!0,duration:200,easingOpen:"swing",easingClose:"swing",closedSymbol:"&#9658;",openedSymbol:"&#9660;",prependTo:"body",appendTo:"",parentTag:"a",closeOnClick:!1,allowParentLinks:!1,nestedParentLinks:!0,showChildren:!1,removeIds:!0,removeClasses:!1,removeStyles:!1,brand:"",animations:"jquery",init:function(){},beforeOpen:function(){},beforeClose:function(){},afterOpen:function(){},afterClose:function(){}},s="slicknav",o="slicknav",l={DOWN:40,ENTER:13,ESCAPE:27,LEFT:37,RIGHT:39,SPACE:32,TAB:9,UP:38};a.prototype.init=function(){var n,a,i=this,s=e(this.element),r=this.settings;if(r.duplicate?i.mobileNav=s.clone():i.mobileNav=s,r.removeIds&&(i.mobileNav.removeAttr("id"),i.mobileNav.find("*").each(function(t,n){e(n).removeAttr("id")})),r.removeClasses&&(i.mobileNav.removeAttr("class"),i.mobileNav.find("*").each(function(t,n){e(n).removeAttr("class")})),r.removeStyles&&(i.mobileNav.removeAttr("style"),i.mobileNav.find("*").each(function(t,n){e(n).removeAttr("style")})),n=o+"_icon",""===r.label&&(n+=" "+o+"_no-text"),"a"==r.parentTag&&(r.parentTag='a href="#"'),i.mobileNav.attr("class",o+"_nav"),a=e('<div class="'+o+'_menu"></div>'),""!==r.brand){var c=e('<div class="'+o+'_brand">'+r.brand+"</div>");e(a).append(c)}i.btn=e(["<"+r.parentTag+' aria-haspopup="true" role="button" title="menu" tabindex="0" class="'+o+"_btn "+o+'_collapsed">','<span class="'+o+'_menutxt">'+r.label+"</span>",'<span class="'+n+'">','<span class="'+o+'_icon-bar"></span>','<span class="'+o+'_icon-bar"></span>','<span class="'+o+'_icon-bar"></span>',"</span>","</"+r.parentTag+">"].join("")),e(a).append(i.btn),""!==r.appendTo?e(r.appendTo).append(a):e(r.prependTo).prepend(a),a.append(i.mobileNav);var p=i.mobileNav.find("li");e(p).each(function(){var t=e(this),n={};if(n.children=t.children("ul").attr("role","menu"),t.data("menu",n),n.children.length>0){var a=t.contents(),s=!1,l=[];e(a).each(function(){return e(this).is("ul")?!1:(l.push(this),void(e(this).is("a")&&(s=!0)))});var c=e("<"+r.parentTag+' role="menuitem" aria-haspopup="true" tabindex="-1" class="'+o+'_item"/>');if(r.allowParentLinks&&!r.nestedParentLinks&&s)e(l).wrapAll('<span class="'+o+"_parent-link "+o+'_row"/>').parent();else{var p=e(l).wrapAll(c).parent();p.addClass(o+"_row")}r.showChildren?t.addClass(o+"_open"):t.addClass(o+"_collapsed"),t.addClass(o+"_parent");var d=e('<span class="'+o+'_arrow">'+(r.showChildren?r.openedSymbol:r.closedSymbol)+"</span>");r.allowParentLinks&&!r.nestedParentLinks&&s&&(d=d.wrap(c).parent()),e(l).last().after(d)}else 0===t.children().length&&t.addClass(o+"_txtnode");t.children("a").attr("role","menuitem").click(function(t){r.closeOnClick&&!e(t.target).parent().closest("li").hasClass(o+"_parent")&&e(i.btn).click()}),r.closeOnClick&&r.allowParentLinks&&(t.children("a").children("a").click(function(t){e(i.btn).click()}),t.find("."+o+"_parent-link a:not(."+o+"_item)").click(function(t){e(i.btn).click()}))}),e(p).each(function(){var t=e(this).data("menu");r.showChildren||i._visibilityToggle(t.children,null,!1,null,!0)}),i._visibilityToggle(i.mobileNav,null,!1,"init",!0),i.mobileNav.attr("role","menu"),e(t).mousedown(function(){i._outlines(!1)}),e(t).keyup(function(){i._outlines(!0)}),e(i.btn).click(function(e){e.preventDefault(),i._menuToggle()}),i.mobileNav.on("click","."+o+"_item",function(t){t.preventDefault(),i._itemClick(e(this))}),e(i.btn).keydown(function(t){var n=t||event;switch(n.keyCode){case l.ENTER:case l.SPACE:case l.DOWN:t.preventDefault(),n.keyCode===l.DOWN&&e(i.btn).hasClass(o+"_open")||i._menuToggle(),e(i.btn).next().find('[role="menuitem"]').first().focus()}}
927),i.mobileNav.on("keydown","."+o+"_item",function(t){var n=t||event;switch(n.keyCode){case l.ENTER:t.preventDefault(),i._itemClick(e(t.target));break;case l.RIGHT:t.preventDefault(),e(t.target).parent().hasClass(o+"_collapsed")&&i._itemClick(e(t.target)),e(t.target).next().find('[role="menuitem"]').first().focus()}}),i.mobileNav.on("keydown",'[role="menuitem"]',function(t){var n=t||event;switch(n.keyCode){case l.DOWN:t.preventDefault();var a=e(t.target).parent().parent().children().children('[role="menuitem"]:visible'),s=a.index(t.target),r=s+1;a.length<=r&&(r=0);var c=a.eq(r);c.focus();break;case l.UP:t.preventDefault();var a=e(t.target).parent().parent().children().children('[role="menuitem"]:visible'),s=a.index(t.target),c=a.eq(s-1);c.focus();break;case l.LEFT:if(t.preventDefault(),e(t.target).parent().parent().parent().hasClass(o+"_open")){var p=e(t.target).parent().parent().prev();p.focus(),i._itemClick(p)}else e(t.target).parent().parent().hasClass(o+"_nav")&&(i._menuToggle(),e(i.btn).focus());break;case l.ESCAPE:t.preventDefault(),i._menuToggle(),e(i.btn).focus()}}),r.allowParentLinks&&r.nestedParentLinks&&e("."+o+"_item a").click(function(e){e.stopImmediatePropagation()})},a.prototype._menuToggle=function(e){var t=this,n=t.btn,a=t.mobileNav;n.hasClass(o+"_collapsed")?(n.removeClass(o+"_collapsed"),n.addClass(o+"_open")):(n.removeClass(o+"_open"),n.addClass(o+"_collapsed")),n.addClass(o+"_animating"),t._visibilityToggle(a,n.parent(),!0,n)},a.prototype._itemClick=function(e){var t=this,n=t.settings,a=e.data("menu");a||(a={},a.arrow=e.children("."+o+"_arrow"),a.ul=e.next("ul"),a.parent=e.parent(),a.parent.hasClass(o+"_parent-link")&&(a.parent=e.parent().parent(),a.ul=e.parent().next("ul")),e.data("menu",a)),a.parent.hasClass(o+"_collapsed")?(a.arrow.html(n.openedSymbol),a.parent.removeClass(o+"_collapsed"),a.parent.addClass(o+"_open"),a.parent.addClass(o+"_animating"),t._visibilityToggle(a.ul,a.parent,!0,e)):(a.arrow.html(n.closedSymbol),a.parent.addClass(o+"_collapsed"),a.parent.removeClass(o+"_open"),a.parent.addClass(o+"_animating"),t._visibilityToggle(a.ul,a.parent,!0,e))},a.prototype._visibilityToggle=function(t,n,a,i,s){function l(t,n){e(t).removeClass(o+"_animating"),e(n).removeClass(o+"_animating"),s||p.afterOpen(t)}function r(n,a){t.attr("aria-hidden","true"),d.attr("tabindex","-1"),c._setVisAttr(t,!0),t.hide(),e(n).removeClass(o+"_animating"),e(a).removeClass(o+"_animating"),s?"init"==n&&p.init():p.afterClose(n)}var c=this,p=c.settings,d=c._getActionItems(t),u=0;a&&(u=p.duration),t.hasClass(o+"_hidden")?(t.removeClass(o+"_hidden"),s||p.beforeOpen(i),"jquery"===p.animations?t.stop(!0,!0).slideDown(u,p.easingOpen,function(){l(i,n)}):"velocity"===p.animations&&t.velocity("finish").velocity("slideDown",{duration:u,easing:p.easingOpen,complete:function(){l(i,n)}}),t.attr("aria-hidden","false"),d.attr("tabindex","0"),c._setVisAttr(t,!1)):(t.addClass(o+"_hidden"),s||p.beforeClose(i),"jquery"===p.animations?t.stop(!0,!0).slideUp(u,this.settings.easingClose,function(){r(i,n)}):"velocity"===p.animations&&t.velocity("finish").velocity("slideUp",{duration:u,easing:p.easingClose,complete:function(){r(i,n)}}))},a.prototype._setVisAttr=function(t,n){var a=this,i=t.children("li").children("ul").not("."+o+"_hidden");n?i.each(function(){var t=e(this);t.attr("aria-hidden","true");var i=a._getActionItems(t);i.attr("tabindex","-1"),a._setVisAttr(t,n)}):i.each(function(){var t=e(this);t.attr("aria-hidden","false");var i=a._getActionItems(t);i.attr("tabindex","0"),a._setVisAttr(t,n)})},a.prototype._getActionItems=function(e){var t=e.data("menu");if(!t){t={};var n=e.children("li"),a=n.find("a");t.links=a.add(n.find("."+o+"_item")),e.data("menu",t)}return t.links},a.prototype._outlines=function(t){t?e("."+o+"_item, ."+o+"_btn").css("outline",""):e("."+o+"_item, ."+o+"_btn").css("outline","none")},a.prototype.toggle=function(){var e=this;e._menuToggle()},a.prototype.open=function(){var e=this;e.btn.hasClass(o+"_collapsed")&&e._menuToggle()},a.prototype.close=function(){var e=this;e.btn.hasClass(o+"_open")&&e._menuToggle()},e.fn[s]=function(t){var n=arguments;if(void 0===t||"object"==typeof t)return this.each(function(){e.data(this,"plugin_"+s)||e.data(this,"plugin_"+s,new a(this,t))});if("string"==typeof t&&"_"!==t[0]&&"init"!==t){var i;return this.each(function(){var o=e.data(this,"plugin_"+s);o instanceof a&&"function"==typeof o[t]&&(i=o[t].apply(o,Array.prototype.slice.call(n,1)))}),void 0!==i?i:this}}}(jQuery,document,window);
928
929
930
931
932// Sticky Plugin v1.0.4 for jQuery
933// =============
934// Author: Anthony Garand
935// Improvements by German M. Bravo (Kronuz) and Ruud Kamphuis (ruudk)
936// Improvements by Leonardo C. Daronco (daronco)
937// Created: 02/14/2011
938// Date: 07/20/2015
939// Website: http://stickyjs.com/
940// Description: Makes an element on the page stick on the screen as you scroll
941//              It will only set the 'top' and 'position' of your element, you
942//              might need to adjust the width in some cases.
943
944(function (factory) {
945    if (typeof define === 'function' && define.amd) {
946        // AMD. Register as an anonymous module.
947        define(['jquery'], factory);
948    } else if (typeof module === 'object' && module.exports) {
949        // Node/CommonJS
950        module.exports = factory(require('jquery'));
951    } else {
952        // Browser globals
953        factory(jQuery);
954    }
955}(function ($) {
956    var slice = Array.prototype.slice; // save ref to original slice()
957    var splice = Array.prototype.splice; // save ref to original slice()
958
959  var defaults = {
960      topSpacing: 0,
961      bottomSpacing: 0,
962      className: 'is-sticky',
963      wrapperClassName: 'sticky-wrapper',
964      center: false,
965      getWidthFrom: '',
966      widthFromWrapper: true, // works only when .getWidthFrom is empty
967      responsiveWidth: false,
968      zIndex: 'inherit'
969    },
970    $window = $(window),
971    $document = $(document),
972    sticked = [],
973    windowHeight = $window.height(),
974    scroller = function() {
975      var scrollTop = $window.scrollTop(),
976        documentHeight = $document.height(),
977        dwh = documentHeight - windowHeight,
978        extra = (scrollTop > dwh) ? dwh - scrollTop : 0;
979
980      for (var i = 0, l = sticked.length; i < l; i++) {
981        var s = sticked[i],
982          elementTop = s.stickyWrapper.offset().top,
983          etse = elementTop - s.topSpacing - extra;
984
985        //update height in case of dynamic content
986        s.stickyWrapper.css('height', s.stickyElement.outerHeight());
987
988        if (scrollTop <= etse) {
989          if (s.currentTop !== null) {
990            s.stickyElement
991              .css({
992                'width': '',
993                'position': '',
994                'top': '',
995                'z-index': ''
996              });
997            s.stickyElement.parent().removeClass(s.className);
998            s.stickyElement.trigger('sticky-end', [s]);
999            s.currentTop = null;
1000          }
1001        }
1002        else {
1003          var newTop = documentHeight - s.stickyElement.outerHeight()
1004            - s.topSpacing - s.bottomSpacing - scrollTop - extra;
1005          if (newTop < 0) {
1006            newTop = newTop + s.topSpacing;
1007          } else {
1008            newTop = s.topSpacing;
1009          }
1010          if (s.currentTop !== newTop) {
1011            var newWidth;
1012            if (s.getWidthFrom) {
1013                padding =  s.stickyElement.innerWidth() - s.stickyElement.width();
1014                newWidth = $(s.getWidthFrom).width() - padding || null;
1015            } else if (s.widthFromWrapper) {
1016                newWidth = s.stickyWrapper.width();
1017            }
1018            if (newWidth == null) {
1019                newWidth = s.stickyElement.width();
1020            }
1021            s.stickyElement
1022              .css('width', newWidth)
1023              .css('position', 'fixed')
1024              .css('top', newTop)
1025              .css('z-index', s.zIndex);
1026
1027            s.stickyElement.parent().addClass(s.className);
1028
1029            if (s.currentTop === null) {
1030              s.stickyElement.trigger('sticky-start', [s]);
1031            } else {
1032              // sticky is started but it have to be repositioned
1033              s.stickyElement.trigger('sticky-update', [s]);
1034            }
1035
1036            if (s.currentTop === s.topSpacing && s.currentTop > newTop || s.currentTop === null && newTop < s.topSpacing) {
1037              // just reached bottom || just started to stick but bottom is already reached
1038              s.stickyElement.trigger('sticky-bottom-reached', [s]);
1039            } else if(s.currentTop !== null && newTop === s.topSpacing && s.currentTop < newTop) {
1040              // sticky is started && sticked at topSpacing && overflowing from top just finished
1041              s.stickyElement.trigger('sticky-bottom-unreached', [s]);
1042            }
1043
1044            s.currentTop = newTop;
1045          }
1046
1047          // Check if sticky has reached end of container and stop sticking
1048          var stickyWrapperContainer = s.stickyWrapper.parent();
1049          var unstick = (s.stickyElement.offset().top + s.stickyElement.outerHeight() >= stickyWrapperContainer.offset().top + stickyWrapperContainer.outerHeight()) && (s.stickyElement.offset().top <= s.topSpacing);
1050
1051          if( unstick ) {
1052            s.stickyElement
1053              .css('position', 'absolute')
1054              .css('top', '')
1055              .css('bottom', 0)
1056              .css('z-index', '');
1057          } else {
1058            s.stickyElement
1059              .css('position', 'fixed')
1060              .css('top', newTop)
1061              .css('bottom', '')
1062              .css('z-index', s.zIndex);
1063          }
1064        }
1065      }
1066    },
1067    resizer = function() {
1068      windowHeight = $window.height();
1069
1070      for (var i = 0, l = sticked.length; i < l; i++) {
1071        var s = sticked[i];
1072        var newWidth = null;
1073        if (s.getWidthFrom) {
1074            if (s.responsiveWidth) {
1075                newWidth = $(s.getWidthFrom).width();
1076            }
1077        } else if(s.widthFromWrapper) {
1078            newWidth = s.stickyWrapper.width();
1079        }
1080        if (newWidth != null) {
1081            s.stickyElement.css('width', newWidth);
1082        }
1083      }
1084    },
1085    methods = {
1086      init: function(options) {
1087        return this.each(function() {
1088          var o = $.extend({}, defaults, options);
1089          var stickyElement = $(this);
1090
1091          var stickyId = stickyElement.attr('id');
1092          var wrapperId = stickyId ? stickyId + '-' + defaults.wrapperClassName : defaults.wrapperClassName;
1093          var wrapper = $('<div></div>')
1094            .attr('id', wrapperId)
1095            .addClass(o.wrapperClassName);
1096
1097          stickyElement.wrapAll(function() {
1098            if ($(this).parent("#" + wrapperId).length == 0) {
1099                    return wrapper;
1100            }
1101});
1102
1103          var stickyWrapper = stickyElement.parent();
1104
1105          if (o.center) {
1106            stickyWrapper.css({width:stickyElement.outerWidth(),marginLeft:"auto",marginRight:"auto"});
1107          }
1108
1109          if (stickyElement.css("float") === "right") {
1110            stickyElement.css({"float":"none"}).parent().css({"float":"right"});
1111          }
1112
1113          o.stickyElement = stickyElement;
1114          o.stickyWrapper = stickyWrapper;
1115          o.currentTop    = null;
1116
1117          sticked.push(o);
1118
1119          methods.setWrapperHeight(this);
1120          methods.setupChangeListeners(this);
1121        });
1122      },
1123
1124      setWrapperHeight: function(stickyElement) {
1125        var element = $(stickyElement);
1126        var stickyWrapper = element.parent();
1127        if (stickyWrapper) {
1128          stickyWrapper.css('height', element.outerHeight());
1129        }
1130      },
1131
1132      setupChangeListeners: function(stickyElement) {
1133        if (window.MutationObserver) {
1134          var mutationObserver = new window.MutationObserver(function(mutations) {
1135            if (mutations[0].addedNodes.length || mutations[0].removedNodes.length) {
1136              methods.setWrapperHeight(stickyElement);
1137            }
1138          });
1139          mutationObserver.observe(stickyElement, {subtree: true, childList: true});
1140        } else {
1141          if (window.addEventListener) {
1142            stickyElement.addEventListener('DOMNodeInserted', function() {
1143              methods.setWrapperHeight(stickyElement);
1144            }, false);
1145            stickyElement.addEventListener('DOMNodeRemoved', function() {
1146              methods.setWrapperHeight(stickyElement);
1147            }, false);
1148          } else if (window.attachEvent) {
1149            stickyElement.attachEvent('onDOMNodeInserted', function() {
1150              methods.setWrapperHeight(stickyElement);
1151            });
1152            stickyElement.attachEvent('onDOMNodeRemoved', function() {
1153              methods.setWrapperHeight(stickyElement);
1154            });
1155          }
1156        }
1157      },
1158      update: scroller,
1159      unstick: function(options) {
1160        return this.each(function() {
1161          var that = this;
1162          var unstickyElement = $(that);
1163
1164          var removeIdx = -1;
1165          var i = sticked.length;
1166          while (i-- > 0) {
1167            if (sticked[i].stickyElement.get(0) === that) {
1168                splice.call(sticked,i,1);
1169                removeIdx = i;
1170            }
1171          }
1172          if(removeIdx !== -1) {
1173            unstickyElement.unwrap();
1174            unstickyElement
1175              .css({
1176                'width': '',
1177                'position': '',
1178                'top': '',
1179                'float': '',
1180                'z-index': ''
1181              })
1182            ;
1183          }
1184        });
1185      }
1186    };
1187
1188  // should be more efficient than using $window.scroll(scroller) and $window.resize(resizer):
1189  if (window.addEventListener) {
1190    window.addEventListener('scroll', scroller, false);
1191    window.addEventListener('resize', resizer, false);
1192  } else if (window.attachEvent) {
1193    window.attachEvent('onscroll', scroller);
1194    window.attachEvent('onresize', resizer);
1195  }
1196
1197  $.fn.sticky = function(method) {
1198    if (methods[method]) {
1199      return methods[method].apply(this, slice.call(arguments, 1));
1200    } else if (typeof method === 'object' || !method ) {
1201      return methods.init.apply( this, arguments );
1202    } else {
1203      $.error('Method ' + method + ' does not exist on jQuery.sticky');
1204    }
1205  };
1206
1207  $.fn.unstick = function(method) {
1208    if (methods[method]) {
1209      return methods[method].apply(this, slice.call(arguments, 1));
1210    } else if (typeof method === 'object' || !method ) {
1211      return methods.unstick.apply( this, arguments );
1212    } else {
1213      $.error('Method ' + method + ' does not exist on jQuery.sticky');
1214    }
1215  };
1216  $(function() {
1217    setTimeout(scroller, 0);
1218  });
1219}));
1220
1221
1222/*!
vendor: 10,521 bytes, lines 1223-1236
1223Waypoints - 4.0.1
1224Copyright © 2011-2016 Caleb Troughton
1225Licensed under the MIT license.
1226https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
1227*/
1228!function(){"use strict";function t(o){if(!o)throw new Error("No options passed to Waypoint constructor");if(!o.element)throw new Error("No element option passed to Waypoint constructor");if(!o.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=t.Context.findOrCreateByElement(this.options.context),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll("destroy")},t.disableAll=function(){t.invokeAll("disable")},t.enableAll=function(){t.Context.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.Context.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},t.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){"use strict";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key="waypoint-context-"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointContextKey=this.key,o[t.waypointContextKey]=this,i+=1,n.windowContext||(n.windowContext=!0,n.windowContext=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?"horizontal":"vertical";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(".waypoints"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on("resize.waypoints",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on("scroll.waypoints",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.Context.refreshAll()},e.prototype.handleScroll=function(){var t={},e={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};for(var i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll<a.triggerPoint,h=o.newScroll>=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{contextOffset:e?0:i.left,contextScroll:e?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:e?0:i.top,contextScroll:e?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),"function"==typeof f?f=f.apply(d):"string"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf("%")>-1&&(f=Math.ceil(s.contextDimension*f/100))),l=s.contextScroll-s.contextOffset,d.triggerPoint=Math.floor(y+l-f),h=w<s.oldScroll,p=d.triggerPoint>=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointContextKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.Context=e}(),function(){"use strict";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n="up"===i||"left"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){"use strict";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each(["extend","inArray","isEmptyObject"],function(i,o){t[o]=e[o]}),i.adapters.push({name:"jquery",Adapter:t}),i.Adapter=t}(),function(){"use strict";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});"string"==typeof n.context&&(n.context=t(this).closest(n.context)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}();
1229
1230
1231
1232
1233
1234
1235
1236!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 class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!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,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,
vendor: 6,594 bytes, line 1236
1236sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$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){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")}},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 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
vendor: 3,442 bytes, line 1236
1236ptions.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)),!0===e.options.accessibility&&e.$dots.off("keydown.slick",e.keyHandler)),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),!0===e.options.accessibility&&(e.$prevArrow&&e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&&e.$nextArrow.off("keydown.slick",e.keyHandler))),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.
1236slick",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)},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","*",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)if(i.slideCount<=i.options.slidesToShow)++o;else 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,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),!0===n.options.infinite?(n.slideCount>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&&!0===n.options.centerMode&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),!0===n.options.centerMode&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&&!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&&(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=!1===n.options.vertical?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,!0===n.options.variableWidth&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===n.options.centerMode&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow+1),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(n.$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:
1236parseInt(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.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.initADA(),t.options.autoplay&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i>=0&&i<e.slideCount});e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==e.$dots&&(e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){var s=o.indexOf(t);i(this).attr({role:"tabpanel",id:"slick-slide"+e.instanceUid+t,tabindex:-1}),-1!==s&&i(this).attr({"aria-describedby":"slick-slide-control"+e.instanceUid+s})}),e.$dots.attr("role","tablist").find("li").each(function(s){var n=o[s];i(this).attr({role:"presentation"}),i(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+e.instanceUid+s,"aria-controls":"slick-slide"+e.instanceUid+n,"aria-label":s+1+" of "+t,"aria-selected":null,tabindex:"-1"})}).eq(e.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s<n;s++)e.$slides.eq(s).attr("tabindex",0);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),!0===i.options.accessibility&&(i.$prevArrow.on("keydown.slick",i.keyHandler),i.$nextArrow.on("keydown.slick",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&&e.$dots.on("keydown.slick",e.keyHandler)),!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"}
1236,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(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=i(this).attr("data-srcset"),s=i(this).attr("data-sizes")||n.$slider.attr("data-sizes"),r=document.createElement("img");r.onload=function(){e.animate({opacity:0}
vendor: 5,619 bytes, line 1236
1236,100,function(){o&&(e.attr("srcset",o),s&&e.attr("sizes",s)),e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),n.$slider.trigger("lazyLoaded",[n,e,t])})},r.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,e,t])},r.src=t})}var t,o,s,n=this;if(!0===n.options.centerMode?!0===n.options.infinite?s=(o=n.currentSlide+(n.options.slidesToShow/2+1))+n.options.slidesToShow+2:(o=Math.max(0,n.currentSlide-(n.options.slidesToShow/2+1)),s=n.options.slidesToShow/2+1+2+n.currentSlide):(o=n.options.infinite?n.options.slidesToShow+n.currentSlide:n.currentSlide,s=Math.ceil(o+n.options.slidesToShow),!0===n.options.fade&&(o>0&&o--,s<=n.slideCount&&s++)),t=n.$slider.find(".slick-slide").slice(o,s),"anticipated"===n.options.lazyLoad)for(var r=o-1,l=s,d=n.$slider.find(".slick-slide"),a=0;a<n.options.slidesToScroll;a++)r<0&&(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount<=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide>=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&&e(n.$slider.find(".slick-cloned").slice(-1*n.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(e){var t=this;t.unslicked||(t.$slider.trigger("afterChange",[t,e]),t.animating=!1,t.slideCount>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),!0===t.options.accessibility&&(t.initADA(),t.options.focusOnChange&&i(t.$slides.get(t.currentSlide)).attr("tabindex",0).focus()))},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,r,l=this,d=i("img[data-lazy]",l.$slider);d.length?(t=d.first(),o=t.attr("data-lazy"),s=t.attr("data-srcset"),n=t.attr("data-sizes")||l.$slider.attr("data-sizes"),(r=document.createElement("img")).onload=function(){s&&(t.attr("srcset",s),n&&t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&&l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),l.$slider.trigger("lazyLoadError",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger("allImagesLoaded",[l])},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,s.destroy(!0),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,n.hasOwnProperty(e)){for(t=n[e].breakpoint;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={};
1236!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}
1236):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.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;if(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){var r=n.options.slidesToShow%2==0?1:0;e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,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")}else 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&&"anticipated"!==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+s.slideCount;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"));s||(s=0),t.slideCount<=t.options.slidesToShow?t.slideHandler(s,!1,!0):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))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+
1236o: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.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(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,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&&1!==n.length)&&(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&&!l.swiping&&r>4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&&(0===l.currentSlide&&"right"===t||l.currentSlide>=l.getDotCount()&&"left"===t)&&(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),!1===l.options.vertical?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,!0===l.options.verticalSwiping&&(l.swipeLeft=e+o*s),!0!==l.options.fade&&!1!==l.options.touchMove&&(!0===l.animating?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},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","")}
1236,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").end(),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active"))},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}});
1237
1238
1239
1240
1241
1242
vendor: 23,216 bytes, lines 1243-2189
1243/**
1244 * Owl Carousel v2.3.4
1245 * Copyright 2013-2018 David Deutsch
1246 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
1247 */
1248/**
1249 * Owl carousel
1250 * @version 2.3.4
1251 * @author Bartosz Wojciechowski
1252 * @author David Deutsch
1253 * @license The MIT License (MIT)
1254 * @todo Lazy Load Icon
1255 * @todo prevent animationend bubling
1256 * @todo itemsScaleUp
1257 * @todo Test Zepto
1258 * @todo stagePadding calculate wrong active classes
1259 */
1260;(function($, window, document, undefined) {
1261
1262	/**
1263	 * Creates a carousel.
1264	 * @class The Owl Carousel.
1265	 * @public
1266	 * @param {HTMLElement|jQuery} element - The element to create the carousel for.
1267	 * @param {Object} [options] - The options
1268	 */
1269	function Owl(element, options) {
1270
1271		/**
1272		 * Current settings for the carousel.
1273		 * @public
1274		 */
1275		this.settings = null;
1276
1277		/**
1278		 * Current options set by the caller including defaults.
1279		 * @public
1280		 */
1281		this.options = $.extend({}, Owl.Defaults, options);
1282
1283		/**
1284		 * Plugin element.
1285		 * @public
1286		 */
1287		this.$element = $(element);
1288
1289		/**
1290		 * Proxied event handlers.
1291		 * @protected
1292		 */
1293		this._handlers = {};
1294
1295		/**
1296		 * References to the running plugins of this carousel.
1297		 * @protected
1298		 */
1299		this._plugins = {};
1300
1301		/**
1302		 * Currently suppressed events to prevent them from being retriggered.
1303		 * @protected
1304		 */
1305		this._supress = {};
1306
1307		/**
1308		 * Absolute current position.
1309		 * @protected
1310		 */
1311		this._current = null;
1312
1313		/**
1314		 * Animation speed in milliseconds.
1315		 * @protected
1316		 */
1317		this._speed = null;
1318
1319		/**
1320		 * Coordinates of all items in pixel.
1321		 * @todo The name of this member is missleading.
1322		 * @protected
1323		 */
1324		this._coordinates = [];
1325
1326		/**
1327		 * Current breakpoint.
1328		 * @todo Real media queries would be nice.
1329		 * @protected
1330		 */
1331		this._breakpoint = null;
1332
1333		/**
1334		 * Current width of the plugin element.
1335		 */
1336		this._width = null;
1337
1338		/**
1339		 * All real items.
1340		 * @protected
1341		 */
1342		this._items = [];
1343
1344		/**
1345		 * All cloned items.
1346		 * @protected
1347		 */
1348		this._clones = [];
1349
1350		/**
1351		 * Merge values of all items.
1352		 * @todo Maybe this could be part of a plugin.
1353		 * @protected
1354		 */
1355		this._mergers = [];
1356
1357		/**
1358		 * Widths of all items.
1359		 */
1360		this._widths = [];
1361
1362		/**
1363		 * Invalidated parts within the update process.
1364		 * @protected
1365		 */
1366		this._invalidated = {};
1367
1368		/**
1369		 * Ordered list of workers for the update process.
1370		 * @protected
1371		 */
1372		this._pipe = [];
1373
1374		/**
1375		 * Current state information for the drag operation.
1376		 * @todo #261
1377		 * @protected
1378		 */
1379		this._drag = {
1380			time: null,
1381			target: null,
1382			pointer: null,
1383			stage: {
1384				start: null,
1385				current: null
1386			},
1387			direction: null
1388		};
1389
1390		/**
1391		 * Current state information and their tags.
1392		 * @type {Object}
1393		 * @protected
1394		 */
1395		this._states = {
1396			current: {},
1397			tags: {
1398				'initializing': [ 'busy' ],
1399				'animating': [ 'busy' ],
1400				'dragging': [ 'interacting' ]
1401			}
1402		};
1403
1404		$.each([ 'onResize', 'onThrottledResize' ], $.proxy(function(i, handler) {
1405			this._handlers[handler] = $.proxy(this[handler], this);
1406		}, this));
1407
1408		$.each(Owl.Plugins, $.proxy(function(key, plugin) {
1409			this._plugins[key.charAt(0).toLowerCase() + key.slice(1)]
1410				= new plugin(this);
1411		}, this));
1412
1413		$.each(Owl.Workers, $.proxy(function(priority, worker) {
1414			this._pipe.push({
1415				'filter': worker.filter,
1416				'run': $.proxy(worker.run, this)
1417			});
1418		}, this));
1419
1420		this.setup();
1421		this.initialize();
1422	}
1423
1424	/**
1425	 * Default options for the carousel.
1426	 * @public
1427	 */
1428	Owl.Defaults = {
1429		items: 3,
1430		loop: false,
1431		center: false,
1432		rewind: false,
1433		checkVisibility: true,
1434
1435		mouseDrag: true,
1436		touchDrag: true,
1437		pullDrag: true,
1438		freeDrag: false,
1439
1440		margin: 0,
1441		stagePadding: 0,
1442
1443		merge: false,
1444		mergeFit: true,
1445		autoWidth: false,
1446
1447		startPosition: 0,
1448		rtl: false,
1449
1450		smartSpeed: 250,
1451		fluidSpeed: false,
1452		dragEndSpeed: false,
1453
1454		responsive: {},
1455		responsiveRefreshRate: 200,
1456		responsiveBaseElement: window,
1457
1458		fallbackEasing: 'swing',
1459		slideTransition: '',
1460
1461		info: false,
1462
1463		nestedItemSelector: false,
1464		itemElement: 'div',
1465		stageElement: 'div',
1466
1467		refreshClass: 'owl-refresh',
1468		loadedClass: 'owl-loaded',
1469		loadingClass: 'owl-loading',
1470		rtlClass: 'owl-rtl',
1471		responsiveClass: 'owl-responsive',
1472		dragClass: 'owl-drag',
1473		itemClass: 'owl-item',
1474		stageClass: 'owl-stage',
1475		stageOuterClass: 'owl-stage-outer',
1476		grabClass: 'owl-grab'
1477	};
1478
1479	/**
1480	 * Enumeration for width.
1481	 * @public
1482	 * @readonly
1483	 * @enum {String}
1484	 */
1485	Owl.Width = {
1486		Default: 'default',
1487		Inner: 'inner',
1488		Outer: 'outer'
1489	};
1490
1491	/**
1492	 * Enumeration for types.
1493	 * @public
1494	 * @readonly
1495	 * @enum {String}
1496	 */
1497	Owl.Type = {
1498		Event: 'event',
1499		State: 'state'
1500	};
1501
1502	/**
1503	 * Contains all registered plugins.
1504	 * @public
1505	 */
1506	Owl.Plugins = {};
1507
1508	/**
1509	 * List of workers involved in the update process.
1510	 */
1511	Owl.Workers = [ {
1512		filter: [ 'width', 'settings' ],
1513		run: function() {
1514			this._width = this.$element.width();
1515		}
1516	}, {
1517		filter: [ 'width', 'items', 'settings' ],
1518		run: function(cache) {
1519			cache.current = this._items && this._items[this.relative(this._current)];
1520		}
1521	}, {
1522		filter: [ 'items', 'settings' ],
1523		run: function() {
1524			this.$stage.children('.cloned').remove();
1525		}
1526	}, {
1527		filter: [ 'width', 'items', 'settings' ],
1528		run: function(cache) {
1529			var margin = this.settings.margin || '',
1530				grid = !this.settings.autoWidth,
1531				rtl = this.settings.rtl,
1532				css = {
1533					'width': 'auto',
1534					'margin-left': rtl ? margin : '',
1535					'margin-right': rtl ? '' : margin
1536				};
1537
1538			!grid && this.$stage.children().css(css);
1539
1540			cache.css = css;
1541		}
1542	}, {
1543		filter: [ 'width', 'items', 'settings' ],
1544		run: function(cache) {
1545			var width = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,
1546				merge = null,
1547				iterator = this._items.length,
1548				grid = !this.settings.autoWidth,
1549				widths = [];
1550
1551			cache.items = {
1552				merge: false,
1553				width: width
1554			};
1555
1556			while (iterator--) {
1557				merge = this._mergers[iterator];
1558				merge = this.settings.mergeFit && Math.min(merge, this.settings.items) || merge;
1559
1560				cache.items.merge = merge > 1 || cache.items.merge;
1561
1562				widths[iterator] = !grid ? this._items[iterator].width() : width * merge;
1563			}
1564
1565			this._widths = widths;
1566		}
1567	}, {
1568		filter: [ 'items', 'settings' ],
1569		run: function() {
1570			var clones = [],
1571				items = this._items,
1572				settings = this.settings,
1573				// TODO: Should be computed from number of min width items in stage
1574				view = Math.max(settings.items * 2, 4),
1575				size = Math.ceil(items.length / 2) * 2,
1576				repeat = settings.loop && items.length ? settings.rewind ? view : Math.max(view, size) : 0,
1577				append = '',
1578				prepend = '';
1579
1580			repeat /= 2;
1581
1582			while (repeat > 0) {
1583				// Switch to only using appended clones
1584				clones.push(this.normalize(clones.length / 2, true));
1585				append = append + items[clones[clones.length - 1]][0].outerHTML;
1586				clones.push(this.normalize(items.length - 1 - (clones.length - 1) / 2, true));
1587				prepend = items[clones[clones.length - 1]][0].outerHTML + prepend;
1588				repeat -= 1;
1589			}
1590
1591			this._clones = clones;
1592
1593			$(append).addClass('cloned').appendTo(this.$stage);
1594			$(prepend).addClass('cloned').prependTo(this.$stage);
1595		}
1596	}, {
1597		filter: [ 'width', 'items', 'settings' ],
1598		run: function() {
1599			var rtl = this.settings.rtl ? 1 : -1,
1600				size = this._clones.length + this._items.length,
1601				iterator = -1,
1602				previous = 0,
1603				current = 0,
1604				coordinates = [];
1605
1606			while (++iterator < size) {
1607				previous = coordinates[iterator - 1] || 0;
1608				current = this._widths[this.relative(iterator)] + this.settings.margin;
1609				coordinates.push(previous + current * rtl);
1610			}
1611
1612			this._coordinates = coordinates;
1613		}
1614	}, {
1615		filter: [ 'width', 'items', 'settings' ],
1616		run: function() {
1617			var padding = this.settings.stagePadding,
1618				coordinates = this._coordinates,
1619				css = {
1620					'width': Math.ceil(Math.abs(coordinates[coordinates.length - 1])) + padding * 2,
1621					'padding-left': padding || '',
1622					'padding-right': padding || ''
1623				};
1624
1625			this.$stage.css(css);
1626		}
1627	}, {
1628		filter: [ 'width', 'items', 'settings' ],
1629		run: function(cache) {
1630			var iterator = this._coordinates.length,
1631				grid = !this.settings.autoWidth,
1632				items = this.$stage.children();
1633
1634			if (grid && cache.items.merge) {
1635				while (iterator--) {
1636					cache.css.width = this._widths[this.relative(iterator)];
1637					items.eq(iterator).css(cache.css);
1638				}
1639			} else if (grid) {
1640				cache.css.width = cache.items.width;
1641				items.css(cache.css);
1642			}
1643		}
1644	}, {
1645		filter: [ 'items' ],
1646		run: function() {
1647			this._coordinates.length < 1 && this.$stage.removeAttr('style');
1648		}
1649	}, {
1650		filter: [ 'width', 'items', 'settings' ],
1651		run: function(cache) {
1652			cache.current = cache.current ? this.$stage.children().index(cache.current) : 0;
1653			cache.current = Math.max(this.minimum(), Math.min(this.maximum(), cache.current));
1654			this.reset(cache.current);
1655		}
1656	}, {
1657		filter: [ 'position' ],
1658		run: function() {
1659			this.animate(this.coordinates(this._current));
1660		}
1661	}, {
1662		filter: [ 'width', 'position', 'items', 'settings' ],
1663		run: function() {
1664			var rtl = this.settings.rtl ? 1 : -1,
1665				padding = this.settings.stagePadding * 2,
1666				begin = this.coordinates(this.current()) + padding,
1667				end = begin + this.width() * rtl,
1668				inner, outer, matches = [], i, n;
1669
1670			for (i = 0, n = this._coordinates.length; i < n; i++) {
1671				inner = this._coordinates[i - 1] || 0;
1672				outer = Math.abs(this._coordinates[i]) + padding * rtl;
1673
1674				if ((this.op(inner, '<=', begin) && (this.op(inner, '>', end)))
1675					|| (this.op(outer, '<', begin) && this.op(outer, '>', end))) {
1676					matches.push(i);
1677				}
1678			}
1679
1680			this.$stage.children('.active').removeClass('active');
1681			this.$stage.children(':eq(' + matches.join('), :eq(') + ')').addClass('active');
1682
1683			this.$stage.children('.center').removeClass('center');
1684			if (this.settings.center) {
1685				this.$stage.children().eq(this.current()).addClass('center');
1686			}
1687		}
1688	} ];
1689
1690	/**
1691	 * Create the stage DOM element
1692	 */
1693	Owl.prototype.initializeStage = function() {
1694		this.$stage = this.$element.find('.' + this.settings.stageClass);
1695
1696		// if the stage is already in the DOM, grab it and skip stage initialization
1697		if (this.$stage.length) {
1698			return;
1699		}
1700
1701		this.$element.addClass(this.options.loadingClass);
1702
1703		// create stage
1704		this.$stage = $('<' + this.settings.stageElement + '>', {
1705			"class": this.settings.stageClass
1706		}).wrap( $( '<div/>', {
1707			"class": this.settings.stageOuterClass
1708		}));
1709
1710		// append stage
1711		this.$element.append(this.$stage.parent());
1712	};
1713
1714	/**
1715	 * Create item DOM elements
1716	 */
1717	Owl.prototype.initializeItems = function() {
1718		var $items = this.$element.find('.owl-item');
1719
1720		// if the items are already in the DOM, grab them and skip item initialization
1721		if ($items.length) {
1722			this._items = $items.get().map(function(item) {
1723				return $(item);
1724			});
1725
1726			this._mergers = this._items.map(function() {
1727				return 1;
1728			});
1729
1730			this.refresh();
1731
1732			return;
1733		}
1734
1735		// append content
1736		this.replace(this.$element.children().not(this.$stage.parent()));
1737
1738		// check visibility
1739		if (this.isVisible()) {
1740			// update view
1741			this.refresh();
1742		} else {
1743			// invalidate width
1744			this.invalidate('width');
1745		}
1746
1747		this.$element
1748			.removeClass(this.options.loadingClass)
1749			.addClass(this.options.loadedClass);
1750	};
1751
1752	/**
1753	 * Initializes the carousel.
1754	 * @protected
1755	 */
1756	Owl.prototype.initialize = function() {
1757		this.enter('initializing');
1758		this.trigger('initialize');
1759
1760		this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl);
1761
1762		if (this.settings.autoWidth && !this.is('pre-loading')) {
1763			var imgs, nestedSelector, width;
1764			imgs = this.$element.find('img');
1765			nestedSelector = this.settings.nestedItemSelector ? '.' + this.settings.nestedItemSelector : undefined;
1766			width = this.$element.children(nestedSelector).width();
1767
1768			if (imgs.length && width <= 0) {
1769				this.preloadAutoWidthImages(imgs);
1770			}
1771		}
1772
1773		this.initializeStage();
1774		this.initializeItems();
1775
1776		// register event handlers
1777		this.registerEventHandlers();
1778
1779		this.leave('initializing');
1780		this.trigger('initialized');
1781	};
1782
1783	/**
1784	 * @returns {Boolean} visibility of $element
1785	 *                    if you know the carousel will always be visible you can set `checkVisibility` to `false` to
1786	 *                    prevent the expensive browser layout forced reflow the $element.is(':visible') does
1787	 */
1788	Owl.prototype.isVisible = function() {
1789		return this.settings.checkVisibility
1790			? this.$element.is(':visible')
1791			: true;
1792	};
1793
1794	/**
1795	 * Setups the current settings.
1796	 * @todo Remove responsive classes. Why should adaptive designs be brought into IE8?
1797	 * @todo Support for media queries by using `matchMedia` would be nice.
1798	 * @public
1799	 */
1800	Owl.prototype.setup = function() {
1801		var viewport = this.viewport(),
1802			overwrites = this.options.responsive,
1803			match = -1,
1804			settings = null;
1805
1806		if (!overwrites) {
1807			settings = $.extend({}, this.options);
1808		} else {
1809			$.each(overwrites, function(breakpoint) {
1810				if (breakpoint <= viewport && breakpoint > match) {
1811					match = Number(breakpoint);
1812				}
1813			});
1814
1815			settings = $.extend({}, this.options, overwrites[match]);
1816			if (typeof settings.stagePadding === 'function') {
1817				settings.stagePadding = settings.stagePadding();
1818			}
1819			delete settings.responsive;
1820
1821			// responsive class
1822			if (settings.responsiveClass) {
1823				this.$element.attr('class',
1824					this.$element.attr('class').replace(new RegExp('(' + this.options.responsiveClass + '-)\\S+\\s', 'g'), '$1' + match)
1825				);
1826			}
1827		}
1828
1829		this.trigger('change', { property: { name: 'settings', value: settings } });
1830		this._breakpoint = match;
1831		this.settings = settings;
1832		this.invalidate('settings');
1833		this.trigger('changed', { property: { name: 'settings', value: this.settings } });
1834	};
1835
1836	/**
1837	 * Updates option logic if necessery.
1838	 * @protected
1839	 */
1840	Owl.prototype.optionsLogic = function() {
1841		if (this.settings.autoWidth) {
1842			this.settings.stagePadding = false;
1843			this.settings.merge = false;
1844		}
1845	};
1846
1847	/**
1848	 * Prepares an item before add.
1849	 * @todo Rename event parameter `content` to `item`.
1850	 * @protected
1851	 * @returns {jQuery|HTMLElement} - The item container.
1852	 */
1853	Owl.prototype.prepare = function(item) {
1854		var event = this.trigger('prepare', { content: item });
1855
1856		if (!event.data) {
1857			event.data = $('<' + this.settings.itemElement + '/>')
1858				.addClass(this.options.itemClass).append(item)
1859		}
1860
1861		this.trigger('prepared', { content: event.data });
1862
1863		return event.data;
1864	};
1865
1866	/**
1867	 * Updates the view.
1868	 * @public
1869	 */
1870	Owl.prototype.update = function() {
1871		var i = 0,
1872			n = this._pipe.length,
1873			filter = $.proxy(function(p) { return this[p] }, this._invalidated),
1874			cache = {};
1875
1876		while (i < n) {
1877			if (this._invalidated.all || $.grep(this._pipe[i].filter, filter).length > 0) {
1878				this._pipe[i].run(cache);
1879			}
1880			i++;
1881		}
1882
1883		this._invalidated = {};
1884
1885		!this.is('valid') && this.enter('valid');
1886	};
1887
1888	/**
1889	 * Gets the width of the view.
1890	 * @public
1891	 * @param {Owl.Width} [dimension=Owl.Width.Default] - The dimension to return.
1892	 * @returns {Number} - The width of the view in pixel.
1893	 */
1894	Owl.prototype.width = function(dimension) {
1895		dimension = dimension || Owl.Width.Default;
1896		switch (dimension) {
1897			case Owl.Width.Inner:
1898			case Owl.Width.Outer:
1899				return this._width;
1900			default:
1901				return this._width - this.settings.stagePadding * 2 + this.settings.margin;
1902		}
1903	};
1904
1905	/**
1906	 * Refreshes the carousel primarily for adaptive purposes.
1907	 * @public
1908	 */
1909	Owl.prototype.refresh = function() {
1910		this.enter('refreshing');
1911		this.trigger('refresh');
1912
1913		this.setup();
1914
1915		this.optionsLogic();
1916
1917		this.$element.addClass(this.options.refreshClass);
1918
1919		this.update();
1920
1921		this.$element.removeClass(this.options.refreshClass);
1922
1923		this.leave('refreshing');
1924		this.trigger('refreshed');
1925	};
1926
1927	/**
1928	 * Checks window `resize` event.
1929	 * @protected
1930	 */
1931	Owl.prototype.onThrottledResize = function() {
1932		window.clearTimeout(this.resizeTimer);
1933		this.resizeTimer = window.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate);
1934	};
1935
1936	/**
1937	 * Checks window `resize` event.
1938	 * @protected
1939	 */
1940	Owl.prototype.onResize = function() {
1941		if (!this._items.length) {
1942			return false;
1943		}
1944
1945		if (this._width === this.$element.width()) {
1946			return false;
1947		}
1948
1949		if (!this.isVisible()) {
1950			return false;
1951		}
1952
1953		this.enter('resizing');
1954
1955		if (this.trigger('resize').isDefaultPrevented()) {
1956			this.leave('resizing');
1957			return false;
1958		}
1959
1960		this.invalidate('width');
1961
1962		this.refresh();
1963
1964		this.leave('resizing');
1965		this.trigger('resized');
1966	};
1967
1968	/**
1969	 * Registers event handlers.
1970	 * @todo Check `msPointerEnabled`
1971	 * @todo #261
1972	 * @protected
1973	 */
1974	Owl.prototype.registerEventHandlers = function() {
1975		if ($.support.transition) {
1976			this.$stage.on($.support.transition.end + '.owl.core', $.proxy(this.onTransitionEnd, this));
1977		}
1978
1979		if (this.settings.responsive !== false) {
1980			this.on(window, 'resize', this._handlers.onThrottledResize);
1981		}
1982
1983		if (this.settings.mouseDrag) {
1984			this.$element.addClass(this.options.dragClass);
1985			this.$stage.on('mousedown.owl.core', $.proxy(this.onDragStart, this));
1986			this.$stage.on('dragstart.owl.core selectstart.owl.core', function() { return false });
1987		}
1988
1989		if (this.settings.touchDrag){
1990			this.$stage.on('touchstart.owl.core', $.proxy(this.onDragStart, this));
1991			this.$stage.on('touchcancel.owl.core', $.proxy(this.onDragEnd, this));
1992		}
1993	};
1994
1995	/**
1996	 * Handles `touchstart` and `mousedown` events.
1997	 * @todo Horizontal swipe threshold as option
1998	 * @todo #261
1999	 * @protected
2000	 * @param {Event} event - The event arguments.
2001	 */
2002	Owl.prototype.onDragStart = function(event) {
2003		var stage = null;
2004
2005		if (event.which === 3) {
2006			return;
2007		}
2008
2009		if ($.support.transform) {
2010			stage = this.$stage.css('transform').replace(/.*\(|\)| /g, '').split(',');
2011			stage = {
2012				x: stage[stage.length === 16 ? 12 : 4],
2013				y: stage[stage.length === 16 ? 13 : 5]
2014			};
2015		} else {
2016			stage = this.$stage.position();
2017			stage = {
2018				x: this.settings.rtl ?
2019					stage.left + this.$stage.width() - this.width() + this.settings.margin :
2020					stage.left,
2021				y: stage.top
2022			};
2023		}
2024
2025		if (this.is('animating')) {
2026			$.support.transform ? this.animate(stage.x) : this.$stage.stop()
2027			this.invalidate('position');
2028		}
2029
2030		this.$element.toggleClass(this.options.grabClass, event.type === 'mousedown');
2031
2032		this.speed(0);
2033
2034		this._drag.time = new Date().getTime();
2035		this._drag.target = $(event.target);
2036		this._drag.stage.start = stage;
2037		this._drag.stage.current = stage;
2038		this._drag.pointer = this.pointer(event);
2039
2040		$(document).on('mouseup.owl.core touchend.owl.core', $.proxy(this.onDragEnd, this));
2041
2042		$(document).one('mousemove.owl.core touchmove.owl.core', $.proxy(function(event) {
2043			var delta = this.difference(this._drag.pointer, this.pointer(event));
2044
2045			$(document).on('mousemove.owl.core touchmove.owl.core', $.proxy(this.onDragMove, this));
2046
2047			if (Math.abs(delta.x) < Math.abs(delta.y) && this.is('valid')) {
2048				return;
2049			}
2050
2051			event.preventDefault();
2052
2053			this.enter('dragging');
2054			this.trigger('drag');
2055		}, this));
2056	};
2057
2058	/**
2059	 * Handles the `touchmove` and `mousemove` events.
2060	 * @todo #261
2061	 * @protected
2062	 * @param {Event} event - The event arguments.
2063	 */
2064	Owl.prototype.onDragMove = function(event) {
2065		var minimum = null,
2066			maximum = null,
2067			pull = null,
2068			delta = this.difference(this._drag.pointer, this.pointer(event)),
2069			stage = this.difference(this._drag.stage.start, delta);
2070
2071		if (!this.is('dragging')) {
2072			return;
2073		}
2074
2075		event.preventDefault();
2076
2077		if (this.settings.loop) {
2078			minimum = this.coordinates(this.minimum());
2079			maximum = this.coordinates(this.maximum() + 1) - minimum;
2080			stage.x = (((stage.x - minimum) % maximum + maximum) % maximum) + minimum;
2081		} else {
2082			minimum = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum());
2083			maximum = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum());
2084			pull = this.settings.pullDrag ? -1 * delta.x / 5 : 0;
2085			stage.x = Math.max(Math.min(stage.x, minimum + pull), maximum + pull);
2086		}
2087
2088		this._drag.stage.current = stage;
2089
2090		this.animate(stage.x);
2091	};
2092
2093	/**
2094	 * Handles the `touchend` and `mouseup` events.
2095	 * @todo #261
2096	 * @todo Threshold for click event
2097	 * @protected
2098	 * @param {Event} event - The event arguments.
2099	 */
2100	Owl.prototype.onDragEnd = function(event) {
2101		var delta = this.difference(this._drag.pointer, this.pointer(event)),
2102			stage = this._drag.stage.current,
2103			direction = delta.x > 0 ^ this.settings.rtl ? 'left' : 'right';
2104
2105		$(document).off('.owl.core');
2106
2107		this.$element.removeClass(this.options.grabClass);
2108
2109		if (delta.x !== 0 && this.is('dragging') || !this.is('valid')) {
2110			this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed);
2111			this.current(this.closest(stage.x, delta.x !== 0 ? direction : this._drag.direction));
2112			this.invalidate('position');
2113			this.update();
2114
2115			this._drag.direction = direction;
2116
2117			if (Math.abs(delta.x) > 3 || new Date().getTime() - this._drag.time > 300) {
2118				this._drag.target.one('click.owl.core', function() { return false; });
2119			}
2120		}
2121
2122		if (!this.is('dragging')) {
2123			return;
2124		}
2125
2126		this.leave('dragging');
2127		this.trigger('dragged');
2128	};
2129
2130	/**
2131	 * Gets absolute position of the closest item for a coordinate.
2132	 * @todo Setting `freeDrag` makes `closest` not reusable. See #165.
2133	 * @protected
2134	 * @param {Number} coordinate - The coordinate in pixel.
2135	 * @param {String} direction - The direction to check for the closest item. Ether `left` or `right`.
2136	 * @return {Number} - The absolute position of the closest item.
2137	 */
2138	Owl.prototype.closest = function(coordinate, direction) {
2139		var position = -1,
2140			pull = 30,
2141			width = this.width(),
2142			coordinates = this.coordinates();
2143
2144		if (!this.settings.freeDrag) {
2145			// check closest item
2146			$.each(coordinates, $.proxy(function(index, value) {
2147				// on a left pull, check on current index
2148				if (direction === 'left' && coordinate > value - pull && coordinate < value + pull) {
2149					position = index;
2150				// on a right pull, check on previous index
2151				// to do so, subtract width from value and set position = index + 1
2152				} else if (direction === 'right' && coordinate > value - width - pull && coordinate < value - width + pull) {
2153					position = index + 1;
2154				} else if (this.op(coordinate, '<', value)
2155					&& this.op(coordinate, '>', coordinates[index + 1] !== undefined ? coordinates[index + 1] : value - width)) {
2156					position = direction === 'left' ? index + 1 : index;
2157				}
2158				return position === -1;
2159			}, this));
2160		}
2161
2162		if (!this.settings.loop) {
2163			// non loop boundries
2164			if (this.op(coordinate, '>', coordinates[this.minimum()])) {
2165				position = coordinate = this.minimum();
2166			} else if (this.op(coordinate, '<', coordinates[this.maximum()])) {
2167				position = coordinate = this.maximum();
2168			}
2169		}
2170
2171		return position;
2172	};
2173
2174	/**
2175	 * Animates the stage.
2176	 * @todo #270
2177	 * @public
2178	 * @param {Number} coordinate - The coordinate in pixels.
2179	 */
2180	Owl.prototype.animate = function(coordinate) {
2181		var animate = this.speed() > 0;
2182
2183		this.is('animating') && this.onTransitionEnd();
2184
2185		if (animate) {
2186			this.enter('animating');
2187			this.trigger('translate');
2188		}
2189
vendor: 10,524 bytes, lines 2190-2557
2190		if ($.support.transform3d && $.support.transition) {
2191			this.$stage.css({
2192				transform: 'translate3d(' + coordinate + 'px,0px,0px)',
2193				transition: (this.speed() / 1000) + 's' + (
2194					this.settings.slideTransition ? ' ' + this.settings.slideTransition : ''
2195				)
2196			});
2197		} else if (animate) {
2198			this.$stage.animate({
2199				left: coordinate + 'px'
2200			}, this.speed(), this.settings.fallbackEasing, $.proxy(this.onTransitionEnd, this));
2201		} else {
2202			this.$stage.css({
2203				left: coordinate + 'px'
2204			});
2205		}
2206	};
2207
2208	/**
2209	 * Checks whether the carousel is in a specific state or not.
2210	 * @param {String} state - The state to check.
2211	 * @returns {Boolean} - The flag which indicates if the carousel is busy.
2212	 */
2213	Owl.prototype.is = function(state) {
2214		return this._states.current[state] && this._states.current[state] > 0;
2215	};
2216
2217	/**
2218	 * Sets the absolute position of the current item.
2219	 * @public
2220	 * @param {Number} [position] - The new absolute position or nothing to leave it unchanged.
2221	 * @returns {Number} - The absolute position of the current item.
2222	 */
2223	Owl.prototype.current = function(position) {
2224		if (position === undefined) {
2225			return this._current;
2226		}
2227
2228		if (this._items.length === 0) {
2229			return undefined;
2230		}
2231
2232		position = this.normalize(position);
2233
2234		if (this._current !== position) {
2235			var event = this.trigger('change', { property: { name: 'position', value: position } });
2236
2237			if (event.data !== undefined) {
2238				position = this.normalize(event.data);
2239			}
2240
2241			this._current = position;
2242
2243			this.invalidate('position');
2244
2245			this.trigger('changed', { property: { name: 'position', value: this._current } });
2246		}
2247
2248		return this._current;
2249	};
2250
2251	/**
2252	 * Invalidates the given part of the update routine.
2253	 * @param {String} [part] - The part to invalidate.
2254	 * @returns {Array.<String>} - The invalidated parts.
2255	 */
2256	Owl.prototype.invalidate = function(part) {
2257		if ($.type(part) === 'string') {
2258			this._invalidated[part] = true;
2259			this.is('valid') && this.leave('valid');
2260		}
2261		return $.map(this._invalidated, function(v, i) { return i });
2262	};
2263
2264	/**
2265	 * Resets the absolute position of the current item.
2266	 * @public
2267	 * @param {Number} position - The absolute position of the new item.
2268	 */
2269	Owl.prototype.reset = function(position) {
2270		position = this.normalize(position);
2271
2272		if (position === undefined) {
2273			return;
2274		}
2275
2276		this._speed = 0;
2277		this._current = position;
2278
2279		this.suppress([ 'translate', 'translated' ]);
2280
2281		this.animate(this.coordinates(position));
2282
2283		this.release([ 'translate', 'translated' ]);
2284	};
2285
2286	/**
2287	 * Normalizes an absolute or a relative position of an item.
2288	 * @public
2289	 * @param {Number} position - The absolute or relative position to normalize.
2290	 * @param {Boolean} [relative=false] - Whether the given position is relative or not.
2291	 * @returns {Number} - The normalized position.
2292	 */
2293	Owl.prototype.normalize = function(position, relative) {
2294		var n = this._items.length,
2295			m = relative ? 0 : this._clones.length;
2296
2297		if (!this.isNumeric(position) || n < 1) {
2298			position = undefined;
2299		} else if (position < 0 || position >= n + m) {
2300			position = ((position - m / 2) % n + n) % n + m / 2;
2301		}
2302
2303		return position;
2304	};
2305
2306	/**
2307	 * Converts an absolute position of an item into a relative one.
2308	 * @public
2309	 * @param {Number} position - The absolute position to convert.
2310	 * @returns {Number} - The converted position.
2311	 */
2312	Owl.prototype.relative = function(position) {
2313		position -= this._clones.length / 2;
2314		return this.normalize(position, true);
2315	};
2316
2317	/**
2318	 * Gets the maximum position for the current item.
2319	 * @public
2320	 * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.
2321	 * @returns {Number}
2322	 */
2323	Owl.prototype.maximum = function(relative) {
2324		var settings = this.settings,
2325			maximum = this._coordinates.length,
2326			iterator,
2327			reciprocalItemsWidth,
2328			elementWidth;
2329
2330		if (settings.loop) {
2331			maximum = this._clones.length / 2 + this._items.length - 1;
2332		} else if (settings.autoWidth || settings.merge) {
2333			iterator = this._items.length;
2334			if (iterator) {
2335				reciprocalItemsWidth = this._items[--iterator].width();
2336				elementWidth = this.$element.width();
2337				while (iterator--) {
2338					reciprocalItemsWidth += this._items[iterator].width() + this.settings.margin;
2339					if (reciprocalItemsWidth > elementWidth) {
2340						break;
2341					}
2342				}
2343			}
2344			maximum = iterator + 1;
2345		} else if (settings.center) {
2346			maximum = this._items.length - 1;
2347		} else {
2348			maximum = this._items.length - settings.items;
2349		}
2350
2351		if (relative) {
2352			maximum -= this._clones.length / 2;
2353		}
2354
2355		return Math.max(maximum, 0);
2356	};
2357
2358	/**
2359	 * Gets the minimum position for the current item.
2360	 * @public
2361	 * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position.
2362	 * @returns {Number}
2363	 */
2364	Owl.prototype.minimum = function(relative) {
2365		return relative ? 0 : this._clones.length / 2;
2366	};
2367
2368	/**
2369	 * Gets an item at the specified relative position.
2370	 * @public
2371	 * @param {Number} [position] - The relative position of the item.
2372	 * @return {jQuery|Array.<jQuery>} - The item at the given position or all items if no position was given.
2373	 */
2374	Owl.prototype.items = function(position) {
2375		if (position === undefined) {
2376			return this._items.slice();
2377		}
2378
2379		position = this.normalize(position, true);
2380		return this._items[position];
2381	};
2382
2383	/**
2384	 * Gets an item at the specified relative position.
2385	 * @public
2386	 * @param {Number} [position] - The relative position of the item.
2387	 * @return {jQuery|Array.<jQuery>} - The item at the given position or all items if no position was given.
2388	 */
2389	Owl.prototype.mergers = function(position) {
2390		if (position === undefined) {
2391			return this._mergers.slice();
2392		}
2393
2394		position = this.normalize(position, true);
2395		return this._mergers[position];
2396	};
2397
2398	/**
2399	 * Gets the absolute positions of clones for an item.
2400	 * @public
2401	 * @param {Number} [position] - The relative position of the item.
2402	 * @returns {Array.<Number>} - The absolute positions of clones for the item or all if no position was given.
2403	 */
2404	Owl.prototype.clones = function(position) {
2405		var odd = this._clones.length / 2,
2406			even = odd + this._items.length,
2407			map = function(index) { return index % 2 === 0 ? even + index / 2 : odd - (index + 1) / 2 };
2408
2409		if (position === undefined) {
2410			return $.map(this._clones, function(v, i) { return map(i) });
2411		}
2412
2413		return $.map(this._clones, function(v, i) { return v === position ? map(i) : null });
2414	};
2415
2416	/**
2417	 * Sets the current animation speed.
2418	 * @public
2419	 * @param {Number} [speed] - The animation speed in milliseconds or nothing to leave it unchanged.
2420	 * @returns {Number} - The current animation speed in milliseconds.
2421	 */
2422	Owl.prototype.speed = function(speed) {
2423		if (speed !== undefined) {
2424			this._speed = speed;
2425		}
2426
2427		return this._speed;
2428	};
2429
2430	/**
2431	 * Gets the coordinate of an item.
2432	 * @todo The name of this method is missleanding.
2433	 * @public
2434	 * @param {Number} position - The absolute position of the item within `minimum()` and `maximum()`.
2435	 * @returns {Number|Array.<Number>} - The coordinate of the item in pixel or all coordinates.
2436	 */
2437	Owl.prototype.coordinates = function(position) {
2438		var multiplier = 1,
2439			newPosition = position - 1,
2440			coordinate;
2441
2442		if (position === undefined) {
2443			return $.map(this._coordinates, $.proxy(function(coordinate, index) {
2444				return this.coordinates(index);
2445			}, this));
2446		}
2447
2448		if (this.settings.center) {
2449			if (this.settings.rtl) {
2450				multiplier = -1;
2451				newPosition = position + 1;
2452			}
2453
2454			coordinate = this._coordinates[position];
2455			coordinate += (this.width() - coordinate + (this._coordinates[newPosition] || 0)) / 2 * multiplier;
2456		} else {
2457			coordinate = this._coordinates[newPosition] || 0;
2458		}
2459
2460		coordinate = Math.ceil(coordinate);
2461
2462		return coordinate;
2463	};
2464
2465	/**
2466	 * Calculates the speed for a translation.
2467	 * @protected
2468	 * @param {Number} from - The absolute position of the start item.
2469	 * @param {Number} to - The absolute position of the target item.
2470	 * @param {Number} [factor=undefined] - The time factor in milliseconds.
2471	 * @returns {Number} - The time in milliseconds for the translation.
2472	 */
2473	Owl.prototype.duration = function(from, to, factor) {
2474		if (factor === 0) {
2475			return 0;
2476		}
2477
2478		return Math.min(Math.max(Math.abs(to - from), 1), 6) * Math.abs((factor || this.settings.smartSpeed));
2479	};
2480
2481	/**
2482	 * Slides to the specified item.
2483	 * @public
2484	 * @param {Number} position - The position of the item.
2485	 * @param {Number} [speed] - The time in milliseconds for the transition.
2486	 */
2487	Owl.prototype.to = function(position, speed) {
2488		var current = this.current(),
2489			revert = null,
2490			distance = position - this.relative(current),
2491			direction = (distance > 0) - (distance < 0),
2492			items = this._items.length,
2493			minimum = this.minimum(),
2494			maximum = this.maximum();
2495
2496		if (this.settings.loop) {
2497			if (!this.settings.rewind && Math.abs(distance) > items / 2) {
2498				distance += direction * -1 * items;
2499			}
2500
2501			position = current + distance;
2502			revert = ((position - minimum) % items + items) % items + minimum;
2503
2504			if (revert !== position && revert - distance <= maximum && revert - distance > 0) {
2505				current = revert - distance;
2506				position = revert;
2507				this.reset(current);
2508			}
2509		} else if (this.settings.rewind) {
2510			maximum += 1;
2511			position = (position % maximum + maximum) % maximum;
2512		} else {
2513			position = Math.max(minimum, Math.min(maximum, position));
2514		}
2515
2516		this.speed(this.duration(current, position, speed));
2517		this.current(position);
2518
2519		if (this.isVisible()) {
2520			this.update();
2521		}
2522	};
2523
2524	/**
2525	 * Slides to the next item.
2526	 * @public
2527	 * @param {Number} [speed] - The time in milliseconds for the transition.
2528	 */
2529	Owl.prototype.next = function(speed) {
2530		speed = speed || false;
2531		this.to(this.relative(this.current()) + 1, speed);
2532	};
2533
2534	/**
2535	 * Slides to the previous item.
2536	 * @public
2537	 * @param {Number} [speed] - The time in milliseconds for the transition.
2538	 */
2539	Owl.prototype.prev = function(speed) {
2540		speed = speed || false;
2541		this.to(this.relative(this.current()) - 1, speed);
2542	};
2543
2544	/**
2545	 * Handles the end of an animation.
2546	 * @protected
2547	 * @param {Event} event - The event arguments.
2548	 */
2549	Owl.prototype.onTransitionEnd = function(event) {
2550
2551		// if css2 animation then event object is undefined
2552		if (event !== undefined) {
2553			event.stopPropagation();
2554
2555			// Catch only owl-stage transitionEnd event
2556			if ((event.target || event.srcElement || event.originalTarget) !== this.$stage.get(0)) {
2557				return false;
vendor: 22,957 bytes, lines 2558-3406
2558			}
2559		}
2560
2561		this.leave('animating');
2562		this.trigger('translated');
2563	};
2564
2565	/**
2566	 * Gets viewport width.
2567	 * @protected
2568	 * @return {Number} - The width in pixel.
2569	 */
2570	Owl.prototype.viewport = function() {
2571		var width;
2572		if (this.options.responsiveBaseElement !== window) {
2573			width = $(this.options.responsiveBaseElement).width();
2574		} else if (window.innerWidth) {
2575			width = window.innerWidth;
2576		} else if (document.documentElement && document.documentElement.clientWidth) {
2577			width = document.documentElement.clientWidth;
2578		} else {
2579			console.warn('Can not detect viewport width.');
2580		}
2581		return width;
2582	};
2583
2584	/**
2585	 * Replaces the current content.
2586	 * @public
2587	 * @param {HTMLElement|jQuery|String} content - The new content.
2588	 */
2589	Owl.prototype.replace = function(content) {
2590		this.$stage.empty();
2591		this._items = [];
2592
2593		if (content) {
2594			content = (content instanceof jQuery) ? content : $(content);
2595		}
2596
2597		if (this.settings.nestedItemSelector) {
2598			content = content.find('.' + this.settings.nestedItemSelector);
2599		}
2600
2601		content.filter(function() {
2602			return this.nodeType === 1;
2603		}).each($.proxy(function(index, item) {
2604			item = this.prepare(item);
2605			this.$stage.append(item);
2606			this._items.push(item);
2607			this._mergers.push(item.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);
2608		}, this));
2609
2610		this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0);
2611
2612		this.invalidate('items');
2613	};
2614
2615	/**
2616	 * Adds an item.
2617	 * @todo Use `item` instead of `content` for the event arguments.
2618	 * @public
2619	 * @param {HTMLElement|jQuery|String} content - The item content to add.
2620	 * @param {Number} [position] - The relative position at which to insert the item otherwise the item will be added to the end.
2621	 */
2622	Owl.prototype.add = function(content, position) {
2623		var current = this.relative(this._current);
2624
2625		position = position === undefined ? this._items.length : this.normalize(position, true);
2626		content = content instanceof jQuery ? content : $(content);
2627
2628		this.trigger('add', { content: content, position: position });
2629
2630		content = this.prepare(content);
2631
2632		if (this._items.length === 0 || position === this._items.length) {
2633			this._items.length === 0 && this.$stage.append(content);
2634			this._items.length !== 0 && this._items[position - 1].after(content);
2635			this._items.push(content);
2636			this._mergers.push(content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);
2637		} else {
2638			this._items[position].before(content);
2639			this._items.splice(position, 0, content);
2640			this._mergers.splice(position, 0, content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1);
2641		}
2642
2643		this._items[current] && this.reset(this._items[current].index());
2644
2645		this.invalidate('items');
2646
2647		this.trigger('added', { content: content, position: position });
2648	};
2649
2650	/**
2651	 * Removes an item by its position.
2652	 * @todo Use `item` instead of `content` for the event arguments.
2653	 * @public
2654	 * @param {Number} position - The relative position of the item to remove.
2655	 */
2656	Owl.prototype.remove = function(position) {
2657		position = this.normalize(position, true);
2658
2659		if (position === undefined) {
2660			return;
2661		}
2662
2663		this.trigger('remove', { content: this._items[position], position: position });
2664
2665		this._items[position].remove();
2666		this._items.splice(position, 1);
2667		this._mergers.splice(position, 1);
2668
2669		this.invalidate('items');
2670
2671		this.trigger('removed', { content: null, position: position });
2672	};
2673
2674	/**
2675	 * Preloads images with auto width.
2676	 * @todo Replace by a more generic approach
2677	 * @protected
2678	 */
2679	Owl.prototype.preloadAutoWidthImages = function(images) {
2680		images.each($.proxy(function(i, element) {
2681			this.enter('pre-loading');
2682			element = $(element);
2683			$(new Image()).one('load', $.proxy(function(e) {
2684				element.attr('src', e.target.src);
2685				element.css('opacity', 1);
2686				this.leave('pre-loading');
2687				!this.is('pre-loading') && !this.is('initializing') && this.refresh();
2688			}, this)).attr('src', element.attr('src') || element.attr('data-src') || element.attr('data-src-retina'));
2689		}, this));
2690	};
2691
2692	/**
2693	 * Destroys the carousel.
2694	 * @public
2695	 */
2696	Owl.prototype.destroy = function() {
2697
2698		this.$element.off('.owl.core');
2699		this.$stage.off('.owl.core');
2700		$(document).off('.owl.core');
2701
2702		if (this.settings.responsive !== false) {
2703			window.clearTimeout(this.resizeTimer);
2704			this.off(window, 'resize', this._handlers.onThrottledResize);
2705		}
2706
2707		for (var i in this._plugins) {
2708			this._plugins[i].destroy();
2709		}
2710
2711		this.$stage.children('.cloned').remove();
2712
2713		this.$stage.unwrap();
2714		this.$stage.children().contents().unwrap();
2715		this.$stage.children().unwrap();
2716		this.$stage.remove();
2717		this.$element
2718			.removeClass(this.options.refreshClass)
2719			.removeClass(this.options.loadingClass)
2720			.removeClass(this.options.loadedClass)
2721			.removeClass(this.options.rtlClass)
2722			.removeClass(this.options.dragClass)
2723			.removeClass(this.options.grabClass)
2724			.attr('class', this.$element.attr('class').replace(new RegExp(this.options.responsiveClass + '-\\S+\\s', 'g'), ''))
2725			.removeData('owl.carousel');
2726	};
2727
2728	/**
2729	 * Operators to calculate right-to-left and left-to-right.
2730	 * @protected
2731	 * @param {Number} [a] - The left side operand.
2732	 * @param {String} [o] - The operator.
2733	 * @param {Number} [b] - The right side operand.
2734	 */
2735	Owl.prototype.op = function(a, o, b) {
2736		var rtl = this.settings.rtl;
2737		switch (o) {
2738			case '<':
2739				return rtl ? a > b : a < b;
2740			case '>':
2741				return rtl ? a < b : a > b;
2742			case '>=':
2743				return rtl ? a <= b : a >= b;
2744			case '<=':
2745				return rtl ? a >= b : a <= b;
2746			default:
2747				break;
2748		}
2749	};
2750
2751	/**
2752	 * Attaches to an internal event.
2753	 * @protected
2754	 * @param {HTMLElement} element - The event source.
2755	 * @param {String} event - The event name.
2756	 * @param {Function} listener - The event handler to attach.
2757	 * @param {Boolean} capture - Wether the event should be handled at the capturing phase or not.
2758	 */
2759	Owl.prototype.on = function(element, event, listener, capture) {
2760		if (element.addEventListener) {
2761			element.addEventListener(event, listener, capture);
2762		} else if (element.attachEvent) {
2763			element.attachEvent('on' + event, listener);
2764		}
2765	};
2766
2767	/**
2768	 * Detaches from an internal event.
2769	 * @protected
2770	 * @param {HTMLElement} element - The event source.
2771	 * @param {String} event - The event name.
2772	 * @param {Function} listener - The attached event handler to detach.
2773	 * @param {Boolean} capture - Wether the attached event handler was registered as a capturing listener or not.
2774	 */
2775	Owl.prototype.off = function(element, event, listener, capture) {
2776		if (element.removeEventListener) {
2777			element.removeEventListener(event, listener, capture);
2778		} else if (element.detachEvent) {
2779			element.detachEvent('on' + event, listener);
2780		}
2781	};
2782
2783	/**
2784	 * Triggers a public event.
2785	 * @todo Remove `status`, `relatedTarget` should be used instead.
2786	 * @protected
2787	 * @param {String} name - The event name.
2788	 * @param {*} [data=null] - The event data.
2789	 * @param {String} [namespace=carousel] - The event namespace.
2790	 * @param {String} [state] - The state which is associated with the event.
2791	 * @param {Boolean} [enter=false] - Indicates if the call enters the specified state or not.
2792	 * @returns {Event} - The event arguments.
2793	 */
2794	Owl.prototype.trigger = function(name, data, namespace, state, enter) {
2795		var status = {
2796			item: { count: this._items.length, index: this.current() }
2797		}, handler = $.camelCase(
2798			$.grep([ 'on', name, namespace ], function(v) { return v })
2799				.join('-').toLowerCase()
2800		), event = $.Event(
2801			[ name, 'owl', namespace || 'carousel' ].join('.').toLowerCase(),
2802			$.extend({ relatedTarget: this }, status, data)
2803		);
2804
2805		if (!this._supress[name]) {
2806			$.each(this._plugins, function(name, plugin) {
2807				if (plugin.onTrigger) {
2808					plugin.onTrigger(event);
2809				}
2810			});
2811
2812			this.register({ type: Owl.Type.Event, name: name });
2813			this.$element.trigger(event);
2814
2815			if (this.settings && typeof this.settings[handler] === 'function') {
2816				this.settings[handler].call(this, event);
2817			}
2818		}
2819
2820		return event;
2821	};
2822
2823	/**
2824	 * Enters a state.
2825	 * @param name - The state name.
2826	 */
2827	Owl.prototype.enter = function(name) {
2828		$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {
2829			if (this._states.current[name] === undefined) {
2830				this._states.current[name] = 0;
2831			}
2832
2833			this._states.current[name]++;
2834		}, this));
2835	};
2836
2837	/**
2838	 * Leaves a state.
2839	 * @param name - The state name.
2840	 */
2841	Owl.prototype.leave = function(name) {
2842		$.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) {
2843			this._states.current[name]--;
2844		}, this));
2845	};
2846
2847	/**
2848	 * Registers an event or state.
2849	 * @public
2850	 * @param {Object} object - The event or state to register.
2851	 */
2852	Owl.prototype.register = function(object) {
2853		if (object.type === Owl.Type.Event) {
2854			if (!$.event.special[object.name]) {
2855				$.event.special[object.name] = {};
2856			}
2857
2858			if (!$.event.special[object.name].owl) {
2859				var _default = $.event.special[object.name]._default;
2860				$.event.special[object.name]._default = function(e) {
2861					if (_default && _default.apply && (!e.namespace || e.namespace.indexOf('owl') === -1)) {
2862						return _default.apply(this, arguments);
2863					}
2864					return e.namespace && e.namespace.indexOf('owl') > -1;
2865				};
2866				$.event.special[object.name].owl = true;
2867			}
2868		} else if (object.type === Owl.Type.State) {
2869			if (!this._states.tags[object.name]) {
2870				this._states.tags[object.name] = object.tags;
2871			} else {
2872				this._states.tags[object.name] = this._states.tags[object.name].concat(object.tags);
2873			}
2874
2875			this._states.tags[object.name] = $.grep(this._states.tags[object.name], $.proxy(function(tag, i) {
2876				return $.inArray(tag, this._states.tags[object.name]) === i;
2877			}, this));
2878		}
2879	};
2880
2881	/**
2882	 * Suppresses events.
2883	 * @protected
2884	 * @param {Array.<String>} events - The events to suppress.
2885	 */
2886	Owl.prototype.suppress = function(events) {
2887		$.each(events, $.proxy(function(index, event) {
2888			this._supress[event] = true;
2889		}, this));
2890	};
2891
2892	/**
2893	 * Releases suppressed events.
2894	 * @protected
2895	 * @param {Array.<String>} events - The events to release.
2896	 */
2897	Owl.prototype.release = function(events) {
2898		$.each(events, $.proxy(function(index, event) {
2899			delete this._supress[event];
2900		}, this));
2901	};
2902
2903	/**
2904	 * Gets unified pointer coordinates from event.
2905	 * @todo #261
2906	 * @protected
2907	 * @param {Event} - The `mousedown` or `touchstart` event.
2908	 * @returns {Object} - Contains `x` and `y` coordinates of current pointer position.
2909	 */
2910	Owl.prototype.pointer = function(event) {
2911		var result = { x: null, y: null };
2912
2913		event = event.originalEvent || event || window.event;
2914
2915		event = event.touches && event.touches.length ?
2916			event.touches[0] : event.changedTouches && event.changedTouches.length ?
2917				event.changedTouches[0] : event;
2918
2919		if (event.pageX) {
2920			result.x = event.pageX;
2921			result.y = event.pageY;
2922		} else {
2923			result.x = event.clientX;
2924			result.y = event.clientY;
2925		}
2926
2927		return result;
2928	};
2929
2930	/**
2931	 * Determines if the input is a Number or something that can be coerced to a Number
2932	 * @protected
2933	 * @param {Number|String|Object|Array|Boolean|RegExp|Function|Symbol} - The input to be tested
2934	 * @returns {Boolean} - An indication if the input is a Number or can be coerced to a Number
2935	 */
2936	Owl.prototype.isNumeric = function(number) {
2937		return !isNaN(parseFloat(number));
2938	};
2939
2940	/**
2941	 * Gets the difference of two vectors.
2942	 * @todo #261
2943	 * @protected
2944	 * @param {Object} - The first vector.
2945	 * @param {Object} - The second vector.
2946	 * @returns {Object} - The difference.
2947	 */
2948	Owl.prototype.difference = function(first, second) {
2949		return {
2950			x: first.x - second.x,
2951			y: first.y - second.y
2952		};
2953	};
2954
2955	/**
2956	 * The jQuery Plugin for the Owl Carousel
2957	 * @todo Navigation plugin `next` and `prev`
2958	 * @public
2959	 */
2960	$.fn.owlCarousel = function(option) {
2961		var args = Array.prototype.slice.call(arguments, 1);
2962
2963		return this.each(function() {
2964			var $this = $(this),
2965				data = $this.data('owl.carousel');
2966
2967			if (!data) {
2968				data = new Owl(this, typeof option == 'object' && option);
2969				$this.data('owl.carousel', data);
2970
2971				$.each([
2972					'next', 'prev', 'to', 'destroy', 'refresh', 'replace', 'add', 'remove'
2973				], function(i, event) {
2974					data.register({ type: Owl.Type.Event, name: event });
2975					data.$element.on(event + '.owl.carousel.core', $.proxy(function(e) {
2976						if (e.namespace && e.relatedTarget !== this) {
2977							this.suppress([ event ]);
2978							data[event].apply(this, [].slice.call(arguments, 1));
2979							this.release([ event ]);
2980						}
2981					}, data));
2982				});
2983			}
2984
2985			if (typeof option == 'string' && option.charAt(0) !== '_') {
2986				data[option].apply(data, args);
2987			}
2988		});
2989	};
2990
2991	/**
2992	 * The constructor for the jQuery Plugin
2993	 * @public
2994	 */
2995	$.fn.owlCarousel.Constructor = Owl;
2996
2997})(window.Zepto || window.jQuery, window, document);
2998
2999/**
3000 * AutoRefresh Plugin
3001 * @version 2.3.4
3002 * @author Artus Kolanowski
3003 * @author David Deutsch
3004 * @license The MIT License (MIT)
3005 */
3006;(function($, window, document, undefined) {
3007
3008	/**
3009	 * Creates the auto refresh plugin.
3010	 * @class The Auto Refresh Plugin
3011	 * @param {Owl} carousel - The Owl Carousel
3012	 */
3013	var AutoRefresh = function(carousel) {
3014		/**
3015		 * Reference to the core.
3016		 * @protected
3017		 * @type {Owl}
3018		 */
3019		this._core = carousel;
3020
3021		/**
3022		 * Refresh interval.
3023		 * @protected
3024		 * @type {number}
3025		 */
3026		this._interval = null;
3027
3028		/**
3029		 * Whether the element is currently visible or not.
3030		 * @protected
3031		 * @type {Boolean}
3032		 */
3033		this._visible = null;
3034
3035		/**
3036		 * All event handlers.
3037		 * @protected
3038		 * @type {Object}
3039		 */
3040		this._handlers = {
3041			'initialized.owl.carousel': $.proxy(function(e) {
3042				if (e.namespace && this._core.settings.autoRefresh) {
3043					this.watch();
3044				}
3045			}, this)
3046		};
3047
3048		// set default options
3049		this._core.options = $.extend({}, AutoRefresh.Defaults, this._core.options);
3050
3051		// register event handlers
3052		this._core.$element.on(this._handlers);
3053	};
3054
3055	/**
3056	 * Default options.
3057	 * @public
3058	 */
3059	AutoRefresh.Defaults = {
3060		autoRefresh: true,
3061		autoRefreshInterval: 500
3062	};
3063
3064	/**
3065	 * Watches the element.
3066	 */
3067	AutoRefresh.prototype.watch = function() {
3068		if (this._interval) {
3069			return;
3070		}
3071
3072		this._visible = this._core.isVisible();
3073		this._interval = window.setInterval($.proxy(this.refresh, this), this._core.settings.autoRefreshInterval);
3074	};
3075
3076	/**
3077	 * Refreshes the element.
3078	 */
3079	AutoRefresh.prototype.refresh = function() {
3080		if (this._core.isVisible() === this._visible) {
3081			return;
3082		}
3083
3084		this._visible = !this._visible;
3085
3086		this._core.$element.toggleClass('owl-hidden', !this._visible);
3087
3088		this._visible && (this._core.invalidate('width') && this._core.refresh());
3089	};
3090
3091	/**
3092	 * Destroys the plugin.
3093	 */
3094	AutoRefresh.prototype.destroy = function() {
3095		var handler, property;
3096
3097		window.clearInterval(this._interval);
3098
3099		for (handler in this._handlers) {
3100			this._core.$element.off(handler, this._handlers[handler]);
3101		}
3102		for (property in Object.getOwnPropertyNames(this)) {
3103			typeof this[property] != 'function' && (this[property] = null);
3104		}
3105	};
3106
3107	$.fn.owlCarousel.Constructor.Plugins.AutoRefresh = AutoRefresh;
3108
3109})(window.Zepto || window.jQuery, window, document);
3110
3111/**
3112 * Lazy Plugin
3113 * @version 2.3.4
3114 * @author Bartosz Wojciechowski
3115 * @author David Deutsch
3116 * @license The MIT License (MIT)
3117 */
3118;(function($, window, document, undefined) {
3119
3120	/**
3121	 * Creates the lazy plugin.
3122	 * @class The Lazy Plugin
3123	 * @param {Owl} carousel - The Owl Carousel
3124	 */
3125	var Lazy = function(carousel) {
3126
3127		/**
3128		 * Reference to the core.
3129		 * @protected
3130		 * @type {Owl}
3131		 */
3132		this._core = carousel;
3133
3134		/**
3135		 * Already loaded items.
3136		 * @protected
3137		 * @type {Array.<jQuery>}
3138		 */
3139		this._loaded = [];
3140
3141		/**
3142		 * Event handlers.
3143		 * @protected
3144		 * @type {Object}
3145		 */
3146		this._handlers = {
3147			'initialized.owl.carousel change.owl.carousel resized.owl.carousel': $.proxy(function(e) {
3148				if (!e.namespace) {
3149					return;
3150				}
3151
3152				if (!this._core.settings || !this._core.settings.lazyLoad) {
3153					return;
3154				}
3155
3156				if ((e.property && e.property.name == 'position') || e.type == 'initialized') {
3157					var settings = this._core.settings,
3158						n = (settings.center && Math.ceil(settings.items / 2) || settings.items),
3159						i = ((settings.center && n * -1) || 0),
3160						position = (e.property && e.property.value !== undefined ? e.property.value : this._core.current()) + i,
3161						clones = this._core.clones().length,
3162						load = $.proxy(function(i, v) { this.load(v) }, this);
3163					//TODO: Need documentation for this new option
3164					if (settings.lazyLoadEager > 0) {
3165						n += settings.lazyLoadEager;
3166						// If the carousel is looping also preload images that are to the "left"
3167						if (settings.loop) {
3168              position -= settings.lazyLoadEager;
3169              n++;
3170            }
3171					}
3172
3173					while (i++ < n) {
3174						this.load(clones / 2 + this._core.relative(position));
3175						clones && $.each(this._core.clones(this._core.relative(position)), load);
3176						position++;
3177					}
3178				}
3179			}, this)
3180		};
3181
3182		// set the default options
3183		this._core.options = $.extend({}, Lazy.Defaults, this._core.options);
3184
3185		// register event handler
3186		this._core.$element.on(this._handlers);
3187	};
3188
3189	/**
3190	 * Default options.
3191	 * @public
3192	 */
3193	Lazy.Defaults = {
3194		lazyLoad: false,
3195		lazyLoadEager: 0
3196	};
3197
3198	/**
3199	 * Loads all resources of an item at the specified position.
3200	 * @param {Number} position - The absolute position of the item.
3201	 * @protected
3202	 */
3203	Lazy.prototype.load = function(position) {
3204		var $item = this._core.$stage.children().eq(position),
3205			$elements = $item && $item.find('.owl-lazy');
3206
3207		if (!$elements || $.inArray($item.get(0), this._loaded) > -1) {
3208			return;
3209		}
3210
3211		$elements.each($.proxy(function(index, element) {
3212			var $element = $(element), image,
3213                url = (window.devicePixelRatio > 1 && $element.attr('data-src-retina')) || $element.attr('data-src') || $element.attr('data-srcset');
3214
3215			this._core.trigger('load', { element: $element, url: url }, 'lazy');
3216
3217			if ($element.is('img')) {
3218				$element.one('load.owl.lazy', $.proxy(function() {
3219					$element.css('opacity', 1);
3220					this._core.trigger('loaded', { element: $element, url: url }, 'lazy');
3221				}, this)).attr('src', url);
3222            } else if ($element.is('source')) {
3223                $element.one('load.owl.lazy', $.proxy(function() {
3224                    this._core.trigger('loaded', { element: $element, url: url }, 'lazy');
3225                }, this)).attr('srcset', url);
3226			} else {
3227				image = new Image();
3228				image.onload = $.proxy(function() {
3229					$element.css({
3230						'background-image': 'url("' + url + '")',
3231						'opacity': '1'
3232					});
3233					this._core.trigger('loaded', { element: $element, url: url }, 'lazy');
3234				}, this);
3235				image.src = url;
3236			}
3237		}, this));
3238
3239		this._loaded.push($item.get(0));
3240	};
3241
3242	/**
3243	 * Destroys the plugin.
3244	 * @public
3245	 */
3246	Lazy.prototype.destroy = function() {
3247		var handler, property;
3248
3249		for (handler in this.handlers) {
3250			this._core.$element.off(handler, this.handlers[handler]);
3251		}
3252		for (property in Object.getOwnPropertyNames(this)) {
3253			typeof this[property] != 'function' && (this[property] = null);
3254		}
3255	};
3256
3257	$.fn.owlCarousel.Constructor.Plugins.Lazy = Lazy;
3258
3259})(window.Zepto || window.jQuery, window, document);
3260
3261/**
3262 * AutoHeight Plugin
3263 * @version 2.3.4
3264 * @author Bartosz Wojciechowski
3265 * @author David Deutsch
3266 * @license The MIT License (MIT)
3267 */
3268;(function($, window, document, undefined) {
3269
3270	/**
3271	 * Creates the auto height plugin.
3272	 * @class The Auto Height Plugin
3273	 * @param {Owl} carousel - The Owl Carousel
3274	 */
3275	var AutoHeight = function(carousel) {
3276		/**
3277		 * Reference to the core.
3278		 * @protected
3279		 * @type {Owl}
3280		 */
3281		this._core = carousel;
3282
3283		this._previousHeight = null;
3284
3285		/**
3286		 * All event handlers.
3287		 * @protected
3288		 * @type {Object}
3289		 */
3290		this._handlers = {
3291			'initialized.owl.carousel refreshed.owl.carousel': $.proxy(function(e) {
3292				if (e.namespace && this._core.settings.autoHeight) {
3293					this.update();
3294				}
3295			}, this),
3296			'changed.owl.carousel': $.proxy(function(e) {
3297				if (e.namespace && this._core.settings.autoHeight && e.property.name === 'position'){
3298					this.update();
3299				}
3300			}, this),
3301			'loaded.owl.lazy': $.proxy(function(e) {
3302				if (e.namespace && this._core.settings.autoHeight
3303					&& e.element.closest('.' + this._core.settings.itemClass).index() === this._core.current()) {
3304					this.update();
3305				}
3306			}, this)
3307		};
3308
3309		// set default options
3310		this._core.options = $.extend({}, AutoHeight.Defaults, this._core.options);
3311
3312		// register event handlers
3313		this._core.$element.on(this._handlers);
3314		this._intervalId = null;
3315		var refThis = this;
3316
3317		// These changes have been taken from a PR by gavrochelegnou proposed in #1575
3318		// and have been made compatible with the latest jQuery version
3319		$(window).on('load', function() {
3320			if (refThis._core.settings.autoHeight) {
3321				refThis.update();
3322			}
3323		});
3324
3325		// Autoresize the height of the carousel when window is resized
3326		// When carousel has images, the height is dependent on the width
3327		// and should also change on resize
3328		$(window).resize(function() {
3329			if (refThis._core.settings.autoHeight) {
3330				if (refThis._intervalId != null) {
3331					clearTimeout(refThis._intervalId);
3332				}
3333
3334				refThis._intervalId = setTimeout(function() {
3335					refThis.update();
3336				}, 250);
3337			}
3338		});
3339
3340	};
3341
3342	/**
3343	 * Default options.
3344	 * @public
3345	 */
3346	AutoHeight.Defaults = {
3347		autoHeight: false,
3348		autoHeightClass: 'owl-height'
3349	};
3350
3351	/**
3352	 * Updates the view.
3353	 */
3354	AutoHeight.prototype.update = function() {
3355		var start = this._core._current,
3356			end = start + this._core.settings.items,
3357			lazyLoadEnabled = this._core.settings.lazyLoad,
3358			visible = this._core.$stage.children().toArray().slice(start, end),
3359			heights = [],
3360			maxheight = 0;
3361
3362		$.each(visible, function(index, item) {
3363			heights.push($(item).height());
3364		});
3365
3366		maxheight = Math.max.apply(null, heights);
3367
3368		if (maxheight <= 1 && lazyLoadEnabled && this._previousHeight) {
3369			maxheight = this._previousHeight;
3370		}
3371
3372		this._previousHeight = maxheight;
3373
3374		this._core.$stage.parent()
3375			.height(maxheight)
3376			.addClass(this._core.settings.autoHeightClass);
3377	};
3378
3379	AutoHeight.prototype.destroy = function() {
3380		var handler, property;
3381
3382		for (handler in this._handlers) {
3383			this._core.$element.off(handler, this._handlers[handler]);
3384		}
3385		for (property in Object.getOwnPropertyNames(this)) {
3386			typeof this[property] !== 'function' && (this[property] = null);
3387		}
3388	};
3389
3390	$.fn.owlCarousel.Constructor.Plugins.AutoHeight = AutoHeight;
3391
3392})(window.Zepto || window.jQuery, window, document);
3393
3394/**
3395 * Video Plugin
3396 * @version 2.3.4
3397 * @author Bartosz Wojciechowski
3398 * @author David Deutsch
3399 * @license The MIT License (MIT)
3400 */
3401;(function($, window, document, undefined) {
3402
3403	/**
3404	 * Creates the video plugin.
3405	 * @class The Video Plugin
3406	 * @param {Owl} carousel - The Owl Carousel
vendor: 5,347 bytes, lines 3407-3604
3407	 */
3408	var Video = function(carousel) {
3409		/**
3410		 * Reference to the core.
3411		 * @protected
3412		 * @type {Owl}
3413		 */
3414		this._core = carousel;
3415
3416		/**
3417		 * Cache all video URLs.
3418		 * @protected
3419		 * @type {Object}
3420		 */
3421		this._videos = {};
3422
3423		/**
3424		 * Current playing item.
3425		 * @protected
3426		 * @type {jQuery}
3427		 */
3428		this._playing = null;
3429
3430		/**
3431		 * All event handlers.
3432		 * @todo The cloned content removale is too late
3433		 * @protected
3434		 * @type {Object}
3435		 */
3436		this._handlers = {
3437			'initialized.owl.carousel': $.proxy(function(e) {
3438				if (e.namespace) {
3439					this._core.register({ type: 'state', name: 'playing', tags: [ 'interacting' ] });
3440				}
3441			}, this),
3442			'resize.owl.carousel': $.proxy(function(e) {
3443				if (e.namespace && this._core.settings.video && this.isInFullScreen()) {
3444					e.preventDefault();
3445				}
3446			}, this),
3447			'refreshed.owl.carousel': $.proxy(function(e) {
3448				if (e.namespace && this._core.is('resizing')) {
3449					this._core.$stage.find('.cloned .owl-video-frame').remove();
3450				}
3451			}, this),
3452			'changed.owl.carousel': $.proxy(function(e) {
3453				if (e.namespace && e.property.name === 'position' && this._playing) {
3454					this.stop();
3455				}
3456			}, this),
3457			'prepared.owl.carousel': $.proxy(function(e) {
3458				if (!e.namespace) {
3459					return;
3460				}
3461
3462				var $element = $(e.content).find('.owl-video');
3463
3464				if ($element.length) {
3465					$element.css('display', 'none');
3466					this.fetch($element, $(e.content));
3467				}
3468			}, this)
3469		};
3470
3471		// set default options
3472		this._core.options = $.extend({}, Video.Defaults, this._core.options);
3473
3474		// register event handlers
3475		this._core.$element.on(this._handlers);
3476
3477		this._core.$element.on('click.owl.video', '.owl-video-play-icon', $.proxy(function(e) {
3478			this.play(e);
3479		}, this));
3480	};
3481
3482	/**
3483	 * Default options.
3484	 * @public
3485	 */
3486	Video.Defaults = {
3487		video: false,
3488		videoHeight: false,
3489		videoWidth: false
3490	};
3491
3492	/**
3493	 * Gets the video ID and the type (YouTube/Vimeo/vzaar only).
3494	 * @protected
3495	 * @param {jQuery} target - The target containing the video data.
3496	 * @param {jQuery} item - The item containing the video.
3497	 */
3498	Video.prototype.fetch = function(target, item) {
3499			var type = (function() {
3500					if (target.attr('data-vimeo-id')) {
3501						return 'vimeo';
3502					} else if (target.attr('data-vzaar-id')) {
3503						return 'vzaar'
3504					} else {
3505						return 'youtube';
3506					}
3507				})(),
3508				id = target.attr('data-vimeo-id') || target.attr('data-youtube-id') || target.attr('data-vzaar-id'),
3509				width = target.attr('data-width') || this._core.settings.videoWidth,
3510				height = target.attr('data-height') || this._core.settings.videoHeight,
3511				url = target.attr('href');
3512
3513		if (url) {
3514
3515			/*
3516					Parses the id's out of the following urls (and probably more):
3517					https://www.youtube.com/watch?v=:id
3518					https://youtu.be/:id
3519					https://vimeo.com/:id
3520					https://vimeo.com/channels/:channel/:id
3521					https://vimeo.com/groups/:group/videos/:id
3522					https://app.vzaar.com/videos/:id
3523
3524					Visual example: https://regexper.com/#(http%3A%7Chttps%3A%7C)%5C%2F%5C%2F(player.%7Cwww.%7Capp.)%3F(vimeo%5C.com%7Cyoutu(be%5C.com%7C%5C.be%7Cbe%5C.googleapis%5C.com)%7Cvzaar%5C.com)%5C%2F(video%5C%2F%7Cvideos%5C%2F%7Cembed%5C%2F%7Cchannels%5C%2F.%2B%5C%2F%7Cgroups%5C%2F.%2B%5C%2F%7Cwatch%5C%3Fv%3D%7Cv%5C%2F)%3F(%5BA-Za-z0-9._%25-%5D*)(%5C%26%5CS%2B)%3F
3525			*/
3526
3527			id = url.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com|be\-nocookie\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/);
3528
3529			if (id[3].indexOf('youtu') > -1) {
3530				type = 'youtube';
3531			} else if (id[3].indexOf('vimeo') > -1) {
3532				type = 'vimeo';
3533			} else if (id[3].indexOf('vzaar') > -1) {
3534				type = 'vzaar';
3535			} else {
3536				throw new Error('Video URL not supported.');
3537			}
3538			id = id[6];
3539		} else {
3540			throw new Error('Missing video URL.');
3541		}
3542
3543		this._videos[url] = {
3544			type: type,
3545			id: id,
3546			width: width,
3547			height: height
3548		};
3549
3550		item.attr('data-video', url);
3551
3552		this.thumbnail(target, this._videos[url]);
3553	};
3554
3555	/**
3556	 * Creates video thumbnail.
3557	 * @protected
3558	 * @param {jQuery} target - The target containing the video data.
3559	 * @param {Object} info - The video info object.
3560	 * @see `fetch`
3561	 */
3562	Video.prototype.thumbnail = function(target, video) {
3563		var tnLink,
3564			icon,
3565			path,
3566			dimensions = video.width && video.height ? 'width:' + video.width + 'px;height:' + video.height + 'px;' : '',
3567			customTn = target.find('img'),
3568			srcType = 'src',
3569			lazyClass = '',
3570			settings = this._core.settings,
3571			create = function(path) {
3572				icon = '<div class="owl-video-play-icon"></div>';
3573
3574				if (settings.lazyLoad) {
3575					tnLink = $('<div/>',{
3576						"class": 'owl-video-tn ' + lazyClass,
3577						"srcType": path
3578					});
3579				} else {
3580					tnLink = $( '<div/>', {
3581						"class": "owl-video-tn",
3582						"style": 'opacity:1;background-image:url(' + path + ')'
3583					});
3584				}
3585				target.after(tnLink);
3586				target.after(icon);
3587			};
3588
3589		// wrap video content into owl-video-wrapper div
3590		target.wrap( $( '<div/>', {
3591			"class": "owl-video-wrapper",
3592			"style": dimensions
3593		}));
3594
3595		if (this._core.settings.lazyLoad) {
3596			srcType = 'data-src';
3597			lazyClass = 'owl-lazy';
3598		}
3599
3600		// custom thumbnail
3601		if (customTn.length) {
3602			create(customTn.attr(srcType));
3603			customTn.remove();
3604			return false;
vendor: 15,295 bytes, lines 3605-4222
3605		}
3606
3607		if (video.type === 'youtube') {
3608			path = "//img.youtube.com/vi/" + video.id + "/hqdefault.jpg";
3609			create(path);
3610		} else if (video.type === 'vimeo') {
3611			$.ajax({
3612				type: 'GET',
3613				url: '//vimeo.com/api/v2/video/' + video.id + '.json',
3614				jsonp: 'callback',
3615				dataType: 'jsonp',
3616				success: function(data) {
3617					path = data[0].thumbnail_large;
3618					create(path);
3619				}
3620			});
3621		} else if (video.type === 'vzaar') {
3622			$.ajax({
3623				type: 'GET',
3624				url: '//vzaar.com/api/videos/' + video.id + '.json',
3625				jsonp: 'callback',
3626				dataType: 'jsonp',
3627				success: function(data) {
3628					path = data.framegrab_url;
3629					create(path);
3630				}
3631			});
3632		}
3633	};
3634
3635	/**
3636	 * Stops the current video.
3637	 * @public
3638	 */
3639	Video.prototype.stop = function() {
3640		this._core.trigger('stop', null, 'video');
3641		this._playing.find('.owl-video-frame').remove();
3642		this._playing.removeClass('owl-video-playing');
3643		this._playing = null;
3644		this._core.leave('playing');
3645		this._core.trigger('stopped', null, 'video');
3646	};
3647
3648	/**
3649	 * Starts the current video.
3650	 * @public
3651	 * @param {Event} event - The event arguments.
3652	 */
3653	Video.prototype.play = function(event) {
3654		var target = $(event.target),
3655			item = target.closest('.' + this._core.settings.itemClass),
3656			video = this._videos[item.attr('data-video')],
3657			width = video.width || '100%',
3658			height = video.height || this._core.$stage.height(),
3659			html,
3660			iframe;
3661
3662		if (this._playing) {
3663			return;
3664		}
3665
3666		this._core.enter('playing');
3667		this._core.trigger('play', null, 'video');
3668
3669		item = this._core.items(this._core.relative(item.index()));
3670
3671		this._core.reset(item.index());
3672
3673		html = $( '<iframe frameborder="0" allowfullscreen mozallowfullscreen webkitAllowFullScreen ></iframe>' );
3674		html.attr( 'height', height );
3675		html.attr( 'width', width );
3676		if (video.type === 'youtube') {
3677			html.attr( 'src', '//www.youtube.com/embed/' + video.id + '?autoplay=1&rel=0&v=' + video.id );
3678		} else if (video.type === 'vimeo') {
3679			html.attr( 'src', '//player.vimeo.com/video/' + video.id + '?autoplay=1' );
3680		} else if (video.type === 'vzaar') {
3681			html.attr( 'src', '//view.vzaar.com/' + video.id + '/player?autoplay=true' );
3682		}
3683
3684		iframe = $(html).wrap( '<div class="owl-video-frame" />' ).insertAfter(item.find('.owl-video'));
3685
3686		this._playing = item.addClass('owl-video-playing');
3687	};
3688
3689	/**
3690	 * Checks whether an video is currently in full screen mode or not.
3691	 * @todo Bad style because looks like a readonly method but changes members.
3692	 * @protected
3693	 * @returns {Boolean}
3694	 */
3695	Video.prototype.isInFullScreen = function() {
3696		var element = document.fullscreenElement || document.mozFullScreenElement ||
3697				document.webkitFullscreenElement;
3698
3699		return element && $(element).parent().hasClass('owl-video-frame');
3700	};
3701
3702	/**
3703	 * Destroys the plugin.
3704	 */
3705	Video.prototype.destroy = function() {
3706		var handler, property;
3707
3708		this._core.$element.off('click.owl.video');
3709
3710		for (handler in this._handlers) {
3711			this._core.$element.off(handler, this._handlers[handler]);
3712		}
3713		for (property in Object.getOwnPropertyNames(this)) {
3714			typeof this[property] != 'function' && (this[property] = null);
3715		}
3716	};
3717
3718	$.fn.owlCarousel.Constructor.Plugins.Video = Video;
3719
3720})(window.Zepto || window.jQuery, window, document);
3721
3722/**
3723 * Animate Plugin
3724 * @version 2.3.4
3725 * @author Bartosz Wojciechowski
3726 * @author David Deutsch
3727 * @license The MIT License (MIT)
3728 */
3729;(function($, window, document, undefined) {
3730
3731	/**
3732	 * Creates the animate plugin.
3733	 * @class The Navigation Plugin
3734	 * @param {Owl} scope - The Owl Carousel
3735	 */
3736	var Animate = function(scope) {
3737		this.core = scope;
3738		this.core.options = $.extend({}, Animate.Defaults, this.core.options);
3739		this.swapping = true;
3740		this.previous = undefined;
3741		this.next = undefined;
3742
3743		this.handlers = {
3744			'change.owl.carousel': $.proxy(function(e) {
3745				if (e.namespace && e.property.name == 'position') {
3746					this.previous = this.core.current();
3747					this.next = e.property.value;
3748				}
3749			}, this),
3750			'drag.owl.carousel dragged.owl.carousel translated.owl.carousel': $.proxy(function(e) {
3751				if (e.namespace) {
3752					this.swapping = e.type == 'translated';
3753				}
3754			}, this),
3755			'translate.owl.carousel': $.proxy(function(e) {
3756				if (e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn)) {
3757					this.swap();
3758				}
3759			}, this)
3760		};
3761
3762		this.core.$element.on(this.handlers);
3763	};
3764
3765	/**
3766	 * Default options.
3767	 * @public
3768	 */
3769	Animate.Defaults = {
3770		animateOut: false,
3771		animateIn: false
3772	};
3773
3774	/**
3775	 * Toggles the animation classes whenever an translations starts.
3776	 * @protected
3777	 * @returns {Boolean|undefined}
3778	 */
3779	Animate.prototype.swap = function() {
3780
3781		if (this.core.settings.items !== 1) {
3782			return;
3783		}
3784
3785		if (!$.support.animation || !$.support.transition) {
3786			return;
3787		}
3788
3789		this.core.speed(0);
3790
3791		var left,
3792			clear = $.proxy(this.clear, this),
3793			previous = this.core.$stage.children().eq(this.previous),
3794			next = this.core.$stage.children().eq(this.next),
3795			incoming = this.core.settings.animateIn,
3796			outgoing = this.core.settings.animateOut;
3797
3798		if (this.core.current() === this.previous) {
3799			return;
3800		}
3801
3802		if (outgoing) {
3803			left = this.core.coordinates(this.previous) - this.core.coordinates(this.next);
3804			previous.one($.support.animation.end, clear)
3805				.css( { 'left': left + 'px' } )
3806				.addClass('animated owl-animated-out')
3807				.addClass(outgoing);
3808		}
3809
3810		if (incoming) {
3811			next.one($.support.animation.end, clear)
3812				.addClass('animated owl-animated-in')
3813				.addClass(incoming);
3814		}
3815	};
3816
3817	Animate.prototype.clear = function(e) {
3818		$(e.target).css( { 'left': '' } )
3819			.removeClass('animated owl-animated-out owl-animated-in')
3820			.removeClass(this.core.settings.animateIn)
3821			.removeClass(this.core.settings.animateOut);
3822		this.core.onTransitionEnd();
3823	};
3824
3825	/**
3826	 * Destroys the plugin.
3827	 * @public
3828	 */
3829	Animate.prototype.destroy = function() {
3830		var handler, property;
3831
3832		for (handler in this.handlers) {
3833			this.core.$element.off(handler, this.handlers[handler]);
3834		}
3835		for (property in Object.getOwnPropertyNames(this)) {
3836			typeof this[property] != 'function' && (this[property] = null);
3837		}
3838	};
3839
3840	$.fn.owlCarousel.Constructor.Plugins.Animate = Animate;
3841
3842})(window.Zepto || window.jQuery, window, document);
3843
3844/**
3845 * Autoplay Plugin
3846 * @version 2.3.4
3847 * @author Bartosz Wojciechowski
3848 * @author Artus Kolanowski
3849 * @author David Deutsch
3850 * @author Tom De Caluwé
3851 * @license The MIT License (MIT)
3852 */
3853;(function($, window, document, undefined) {
3854
3855	/**
3856	 * Creates the autoplay plugin.
3857	 * @class The Autoplay Plugin
3858	 * @param {Owl} scope - The Owl Carousel
3859	 */
3860	var Autoplay = function(carousel) {
3861		/**
3862		 * Reference to the core.
3863		 * @protected
3864		 * @type {Owl}
3865		 */
3866		this._core = carousel;
3867
3868		/**
3869		 * The autoplay timeout id.
3870		 * @type {Number}
3871		 */
3872		this._call = null;
3873
3874		/**
3875		 * Depending on the state of the plugin, this variable contains either
3876		 * the start time of the timer or the current timer value if it's
3877		 * paused. Since we start in a paused state we initialize the timer
3878		 * value.
3879		 * @type {Number}
3880		 */
3881		this._time = 0;
3882
3883		/**
3884		 * Stores the timeout currently used.
3885		 * @type {Number}
3886		 */
3887		this._timeout = 0;
3888
3889		/**
3890		 * Indicates whenever the autoplay is paused.
3891		 * @type {Boolean}
3892		 */
3893		this._paused = true;
3894
3895		/**
3896		 * All event handlers.
3897		 * @protected
3898		 * @type {Object}
3899		 */
3900		this._handlers = {
3901			'changed.owl.carousel': $.proxy(function(e) {
3902				if (e.namespace && e.property.name === 'settings') {
3903					if (this._core.settings.autoplay) {
3904						this.play();
3905					} else {
3906						this.stop();
3907					}
3908				} else if (e.namespace && e.property.name === 'position' && this._paused) {
3909					// Reset the timer. This code is triggered when the position
3910					// of the carousel was changed through user interaction.
3911					this._time = 0;
3912				}
3913			}, this),
3914			'initialized.owl.carousel': $.proxy(function(e) {
3915				if (e.namespace && this._core.settings.autoplay) {
3916					this.play();
3917				}
3918			}, this),
3919			'play.owl.autoplay': $.proxy(function(e, t, s) {
3920				if (e.namespace) {
3921					this.play(t, s);
3922				}
3923			}, this),
3924			'stop.owl.autoplay': $.proxy(function(e) {
3925				if (e.namespace) {
3926					this.stop();
3927				}
3928			}, this),
3929			'mouseover.owl.autoplay': $.proxy(function() {
3930				if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {
3931					this.pause();
3932				}
3933			}, this),
3934			'mouseleave.owl.autoplay': $.proxy(function() {
3935				if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {
3936					this.play();
3937				}
3938			}, this),
3939			'touchstart.owl.core': $.proxy(function() {
3940				if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) {
3941					this.pause();
3942				}
3943			}, this),
3944			'touchend.owl.core': $.proxy(function() {
3945				if (this._core.settings.autoplayHoverPause) {
3946					this.play();
3947				}
3948			}, this)
3949		};
3950
3951		// register event handlers
3952		this._core.$element.on(this._handlers);
3953
3954		// set default options
3955		this._core.options = $.extend({}, Autoplay.Defaults, this._core.options);
3956	};
3957
3958	/**
3959	 * Default options.
3960	 * @public
3961	 */
3962	Autoplay.Defaults = {
3963		autoplay: false,
3964		autoplayTimeout: 5000,
3965		autoplayHoverPause: false,
3966		autoplaySpeed: false
3967	};
3968
3969	/**
3970	 * Transition to the next slide and set a timeout for the next transition.
3971	 * @private
3972	 * @param {Number} [speed] - The animation speed for the animations.
3973	 */
3974	Autoplay.prototype._next = function(speed) {
3975		this._call = window.setTimeout(
3976			$.proxy(this._next, this, speed),
3977			this._timeout * (Math.round(this.read() / this._timeout) + 1) - this.read()
3978		);
3979
3980		if (this._core.is('interacting') || document.hidden) {
3981			return;
3982		}
3983		this._core.next(speed || this._core.settings.autoplaySpeed);
3984	}
3985
3986	/**
3987	 * Reads the current timer value when the timer is playing.
3988	 * @public
3989	 */
3990	Autoplay.prototype.read = function() {
3991		return new Date().getTime() - this._time;
3992	};
3993
3994	/**
3995	 * Starts the autoplay.
3996	 * @public
3997	 * @param {Number} [timeout] - The interval before the next animation starts.
3998	 * @param {Number} [speed] - The animation speed for the animations.
3999	 */
4000	Autoplay.prototype.play = function(timeout, speed) {
4001		var elapsed;
4002
4003		if (!this._core.is('rotating')) {
4004			this._core.enter('rotating');
4005		}
4006
4007		timeout = timeout || this._core.settings.autoplayTimeout;
4008
4009		// Calculate the elapsed time since the last transition. If the carousel
4010		// wasn't playing this calculation will yield zero.
4011		elapsed = Math.min(this._time % (this._timeout || timeout), timeout);
4012
4013		if (this._paused) {
4014			// Start the clock.
4015			this._time = this.read();
4016			this._paused = false;
4017		} else {
4018			// Clear the active timeout to allow replacement.
4019			window.clearTimeout(this._call);
4020		}
4021
4022		// Adjust the origin of the timer to match the new timeout value.
4023		this._time += this.read() % timeout - elapsed;
4024
4025		this._timeout = timeout;
4026		this._call = window.setTimeout($.proxy(this._next, this, speed), timeout - elapsed);
4027	};
4028
4029	/**
4030	 * Stops the autoplay.
4031	 * @public
4032	 */
4033	Autoplay.prototype.stop = function() {
4034		if (this._core.is('rotating')) {
4035			// Reset the clock.
4036			this._time = 0;
4037			this._paused = true;
4038
4039			window.clearTimeout(this._call);
4040			this._core.leave('rotating');
4041		}
4042	};
4043
4044	/**
4045	 * Pauses the autoplay.
4046	 * @public
4047	 */
4048	Autoplay.prototype.pause = function() {
4049		if (this._core.is('rotating') && !this._paused) {
4050			// Pause the clock.
4051			this._time = this.read();
4052			this._paused = true;
4053
4054			window.clearTimeout(this._call);
4055		}
4056	};
4057
4058	/**
4059	 * Destroys the plugin.
4060	 */
4061	Autoplay.prototype.destroy = function() {
4062		var handler, property;
4063
4064		this.stop();
4065
4066		for (handler in this._handlers) {
4067			this._core.$element.off(handler, this._handlers[handler]);
4068		}
4069		for (property in Object.getOwnPropertyNames(this)) {
4070			typeof this[property] != 'function' && (this[property] = null);
4071		}
4072	};
4073
4074	$.fn.owlCarousel.Constructor.Plugins.autoplay = Autoplay;
4075
4076})(window.Zepto || window.jQuery, window, document);
4077
4078/**
4079 * Navigation Plugin
4080 * @version 2.3.4
4081 * @author Artus Kolanowski
4082 * @author David Deutsch
4083 * @license The MIT License (MIT)
4084 */
4085;(function($, window, document, undefined) {
4086	'use strict';
4087
4088	/**
4089	 * Creates the navigation plugin.
4090	 * @class The Navigation Plugin
4091	 * @param {Owl} carousel - The Owl Carousel.
4092	 */
4093	var Navigation = function(carousel) {
4094		/**
4095		 * Reference to the core.
4096		 * @protected
4097		 * @type {Owl}
4098		 */
4099		this._core = carousel;
4100
4101		/**
4102		 * Indicates whether the plugin is initialized or not.
4103		 * @protected
4104		 * @type {Boolean}
4105		 */
4106		this._initialized = false;
4107
4108		/**
4109		 * The current paging indexes.
4110		 * @protected
4111		 * @type {Array}
4112		 */
4113		this._pages = [];
4114
4115		/**
4116		 * All DOM elements of the user interface.
4117		 * @protected
4118		 * @type {Object}
4119		 */
4120		this._controls = {};
4121
4122		/**
4123		 * Markup for an indicator.
4124		 * @protected
4125		 * @type {Array.<String>}
4126		 */
4127		this._templates = [];
4128
4129		/**
4130		 * The carousel element.
4131		 * @type {jQuery}
4132		 */
4133		this.$element = this._core.$element;
4134
4135		/**
4136		 * Overridden methods of the carousel.
4137		 * @protected
4138		 * @type {Object}
4139		 */
4140		this._overrides = {
4141			next: this._core.next,
4142			prev: this._core.prev,
4143			to: this._core.to
4144		};
4145
4146		/**
4147		 * All event handlers.
4148		 * @protected
4149		 * @type {Object}
4150		 */
4151		this._handlers = {
4152			'prepared.owl.carousel': $.proxy(function(e) {
4153				if (e.namespace && this._core.settings.dotsData) {
4154					this._templates.push('<div class="' + this._core.settings.dotClass + '">' +
4155						$(e.content).find('[data-dot]').addBack('[data-dot]').attr('data-dot') + '</div>');
4156				}
4157			}, this),
4158			'added.owl.carousel': $.proxy(function(e) {
4159				if (e.namespace && this._core.settings.dotsData) {
4160					this._templates.splice(e.position, 0, this._templates.pop());
4161				}
4162			}, this),
4163			'remove.owl.carousel': $.proxy(function(e) {
4164				if (e.namespace && this._core.settings.dotsData) {
4165					this._templates.splice(e.position, 1);
4166				}
4167			}, this),
4168			'changed.owl.carousel': $.proxy(function(e) {
4169				if (e.namespace && e.property.name == 'position') {
4170					this.draw();
4171				}
4172			}, this),
4173			'initialized.owl.carousel': $.proxy(function(e) {
4174				if (e.namespace && !this._initialized) {
4175					this._core.trigger('initialize', null, 'navigation');
4176					this.initialize();
4177					this.update();
4178					this.draw();
4179					this._initialized = true;
4180					this._core.trigger('initialized', null, 'navigation');
4181				}
4182			}, this),
4183			'refreshed.owl.carousel': $.proxy(function(e) {
4184				if (e.namespace && this._initialized) {
4185					this._core.trigger('refresh', null, 'navigation');
4186					this.update();
4187					this.draw();
4188					this._core.trigger('refreshed', null, 'navigation');
4189				}
4190			}, this)
4191		};
4192
4193		// set default options
4194		this._core.options = $.extend({}, Navigation.Defaults, this._core.options);
4195
4196		// register event handlers
4197		this.$element.on(this._handlers);
4198	};
4199
4200	/**
4201	 * Default options.
4202	 * @public
4203	 * @todo Rename `slideBy` to `navBy`
4204	 */
4205	Navigation.Defaults = {
4206		nav: false,
4207		navText: [
4208			'<span aria-label="' + 'Previous' + '">&#x2039;</span>',
4209			'<span aria-label="' + 'Next' + '">&#x203a;</span>'
4210		],
4211		navSpeed: false,
4212		navElement: 'button type="button" role="presentation"',
4213		navContainer: false,
4214		navContainerClass: 'owl-nav',
4215		navClass: [
4216			'owl-prev',
4217			'owl-next'
4218		],
4219		slideBy: 1,
4220		dotClass: 'owl-dot',
4221		dotsClass: 'owl-dots',
4222		dots: 
4222fals
vendor: 7,752 bytes, lines 4222-4483
4222e,
4223		dotsEach: false,
4224		dotsData: false,
4225		dotsSpeed: false,
4226		dotsContainer: false
4227	};
4228
4229	/**
4230	 * Initializes the layout of the plugin and extends the carousel.
4231	 * @protected
4232	 */
4233	Navigation.prototype.initialize = function() {
4234		var override,
4235			settings = this._core.settings;
4236
4237		// create DOM structure for relative navigation
4238		this._controls.$relative = (settings.navContainer ? $(settings.navContainer)
4239			: $('<div>').addClass(settings.navContainerClass).appendTo(this.$element)).addClass('disabled');
4240
4241		this._controls.$previous = $('<' + settings.navElement + '>')
4242			.addClass(settings.navClass[0])
4243			.html(settings.navText[0])
4244			.prependTo(this._controls.$relative)
4245			.on('click', $.proxy(function(e) {
4246				this.prev(settings.navSpeed);
4247			}, this));
4248		this._controls.$next = $('<' + settings.navElement + '>')
4249			.addClass(settings.navClass[1])
4250			.html(settings.navText[1])
4251			.appendTo(this._controls.$relative)
4252			.on('click', $.proxy(function(e) {
4253				this.next(settings.navSpeed);
4254			}, this));
4255
4256		// create DOM structure for absolute navigation
4257		if (!settings.dotsData) {
4258			this._templates = [ $('<button role="button">')
4259				.addClass(settings.dotClass)
4260				.append($('<span>'))
4261				.prop('outerHTML') ];
4262		}
4263
4264		this._controls.$absolute = (settings.dotsContainer ? $(settings.dotsContainer)
4265			: $('<div>').addClass(settings.dotsClass).appendTo(this.$element)).addClass('disabled');
4266
4267		this._controls.$absolute.on('click', 'button', $.proxy(function(e) {
4268			var index = $(e.target).parent().is(this._controls.$absolute)
4269				? $(e.target).index() : $(e.target).parent().index();
4270
4271			e.preventDefault();
4272
4273			this.to(index, settings.dotsSpeed);
4274		}, this));
4275
4276		/*$el.on('focusin', function() {
4277			$(document).off(".carousel");
4278
4279			$(document).on('keydown.carousel', function(e) {
4280				if(e.keyCode == 37) {
4281					$el.trigger('prev.owl')
4282				}
4283				if(e.keyCode == 39) {
4284					$el.trigger('next.owl')
4285				}
4286			});
4287		});*/
4288
4289		// override public methods of the carousel
4290		for (override in this._overrides) {
4291			this._core[override] = $.proxy(this[override], this);
4292		}
4293	};
4294
4295	/**
4296	 * Destroys the plugin.
4297	 * @protected
4298	 */
4299	Navigation.prototype.destroy = function() {
4300		var handler, control, property, override, settings;
4301		settings = this._core.settings;
4302
4303		for (handler in this._handlers) {
4304			this.$element.off(handler, this._handlers[handler]);
4305		}
4306		for (control in this._controls) {
4307			if (control === '$relative' && settings.navContainer) {
4308				this._controls[control].html('');
4309			} else {
4310				this._controls[control].remove();
4311			}
4312		}
4313		for (override in this.overides) {
4314			this._core[override] = this._overrides[override];
4315		}
4316		for (property in Object.getOwnPropertyNames(this)) {
4317			typeof this[property] != 'function' && (this[property] = null);
4318		}
4319	};
4320
4321	/**
4322	 * Updates the internal state.
4323	 * @protected
4324	 */
4325	Navigation.prototype.update = function() {
4326		var i, j, k,
4327			lower = this._core.clones().length / 2,
4328			upper = lower + this._core.items().length,
4329			maximum = this._core.maximum(true),
4330			settings = this._core.settings,
4331			size = settings.center || settings.autoWidth || settings.dotsData
4332				? 1 : settings.dotsEach || settings.items;
4333
4334		if (settings.slideBy !== 'page') {
4335			settings.slideBy = Math.min(settings.slideBy, settings.items);
4336		}
4337
4338		if (settings.dots || settings.slideBy == 'page') {
4339			this._pages = [];
4340
4341			for (i = lower, j = 0, k = 0; i < upper; i++) {
4342				if (j >= size || j === 0) {
4343					this._pages.push({
4344						start: Math.min(maximum, i - lower),
4345						end: i - lower + size - 1
4346					});
4347					if (Math.min(maximum, i - lower) === maximum) {
4348						break;
4349					}
4350					j = 0, ++k;
4351				}
4352				j += this._core.mergers(this._core.relative(i));
4353			}
4354		}
4355	};
4356
4357	/**
4358	 * Draws the user interface.
4359	 * @todo The option `dotsData` wont work.
4360	 * @protected
4361	 */
4362	Navigation.prototype.draw = function() {
4363		var difference,
4364			settings = this._core.settings,
4365			disabled = this._core.items().length <= settings.items,
4366			index = this._core.relative(this._core.current()),
4367			loop = settings.loop || settings.rewind;
4368
4369		this._controls.$relative.toggleClass('disabled', !settings.nav || disabled);
4370
4371		if (settings.nav) {
4372			this._controls.$previous.toggleClass('disabled', !loop && index <= this._core.minimum(true));
4373			this._controls.$next.toggleClass('disabled', !loop && index >= this._core.maximum(true));
4374		}
4375
4376		this._controls.$absolute.toggleClass('disabled', !settings.dots || disabled);
4377
4378		if (settings.dots) {
4379			difference = this._pages.length - this._controls.$absolute.children().length;
4380
4381			if (settings.dotsData && difference !== 0) {
4382				this._controls.$absolute.html(this._templates.join(''));
4383			} else if (difference > 0) {
4384				this._controls.$absolute.append(new Array(difference + 1).join(this._templates[0]));
4385			} else if (difference < 0) {
4386				this._controls.$absolute.children().slice(difference).remove();
4387			}
4388
4389			this._controls.$absolute.find('.active').removeClass('active');
4390			this._controls.$absolute.children().eq($.inArray(this.current(), this._pages)).addClass('active');
4391		}
4392	};
4393
4394	/**
4395	 * Extends event data.
4396	 * @protected
4397	 * @param {Event} event - The event object which gets thrown.
4398	 */
4399	Navigation.prototype.onTrigger = function(event) {
4400		var settings = this._core.settings;
4401
4402		event.page = {
4403			index: $.inArray(this.current(), this._pages),
4404			count: this._pages.length,
4405			size: settings && (settings.center || settings.autoWidth || settings.dotsData
4406				? 1 : settings.dotsEach || settings.items)
4407		};
4408	};
4409
4410	/**
4411	 * Gets the current page position of the carousel.
4412	 * @protected
4413	 * @returns {Number}
4414	 */
4415	Navigation.prototype.current = function() {
4416		var current = this._core.relative(this._core.current());
4417		return $.grep(this._pages, $.proxy(function(page, index) {
4418			return page.start <= current && page.end >= current;
4419		}, this)).pop();
4420	};
4421
4422	/**
4423	 * Gets the current succesor/predecessor position.
4424	 * @protected
4425	 * @returns {Number}
4426	 */
4427	Navigation.prototype.getPosition = function(successor) {
4428		var position, length,
4429			settings = this._core.settings;
4430
4431		if (settings.slideBy == 'page') {
4432			position = $.inArray(this.current(), this._pages);
4433			length = this._pages.length;
4434			successor ? ++position : --position;
4435			position = this._pages[((position % length) + length) % length].start;
4436		} else {
4437			position = this._core.relative(this._core.current());
4438			length = this._core.items().length;
4439			successor ? position += settings.slideBy : position -= settings.slideBy;
4440		}
4441
4442		return position;
4443	};
4444
4445	/**
4446	 * Slides to the next item or page.
4447	 * @public
4448	 * @param {Number} [speed=false] - The time in milliseconds for the transition.
4449	 */
4450	Navigation.prototype.next = function(speed) {
4451		$.proxy(this._overrides.to, this._core)(this.getPosition(true), speed);
4452	};
4453
4454	/**
4455	 * Slides to the previous item or page.
4456	 * @public
4457	 * @param {Number} [speed=false] - The time in milliseconds for the transition.
4458	 */
4459	Navigation.prototype.prev = function(speed) {
4460		$.proxy(this._overrides.to, this._core)(this.getPosition(false), speed);
4461	};
4462
4463	/**
4464	 * Slides to the specified item or page.
4465	 * @public
4466	 * @param {Number} position - The position of the item or page.
4467	 * @param {Number} [speed] - The time in milliseconds for the transition.
4468	 * @param {Boolean} [standard=false] - Whether to use the standard behaviour or not.
4469	 */
4470	Navigation.prototype.to = function(position, speed, standard) {
4471		var length;
4472
4473		if (!standard && this._pages.length) {
4474			length = this._pages.length;
4475			$.proxy(this._overrides.to, this._core)(this._pages[((position % length) + length) % length].start, speed);
4476		} else {
4477			$.proxy(this._overrides.to, this._core)(position, speed);
4478		}
4479	};
4480
4481	$.fn.owlCarousel.Constructor.Plugins.Navigation = Navigation;
4482
4483})(
vendor: 4,205 bytes, lines 4483-4663
4483window.Zepto || window.jQuery, window, document);
4484
4485/**
4486 * Hash Plugin
4487 * @version 2.3.4
4488 * @author Artus Kolanowski
4489 * @author David Deutsch
4490 * @license The MIT License (MIT)
4491 */
4492;(function($, window, document, undefined) {
4493	'use strict';
4494
4495	/**
4496	 * Creates the hash plugin.
4497	 * @class The Hash Plugin
4498	 * @param {Owl} carousel - The Owl Carousel
4499	 */
4500	var Hash = function(carousel) {
4501		/**
4502		 * Reference to the core.
4503		 * @protected
4504		 * @type {Owl}
4505		 */
4506		this._core = carousel;
4507
4508		/**
4509		 * Hash index for the items.
4510		 * @protected
4511		 * @type {Object}
4512		 */
4513		this._hashes = {};
4514
4515		/**
4516		 * The carousel element.
4517		 * @type {jQuery}
4518		 */
4519		this.$element = this._core.$element;
4520
4521		/**
4522		 * All event handlers.
4523		 * @protected
4524		 * @type {Object}
4525		 */
4526		this._handlers = {
4527			'initialized.owl.carousel': $.proxy(function(e) {
4528				if (e.namespace && this._core.settings.startPosition === 'URLHash') {
4529					$(window).trigger('hashchange.owl.navigation');
4530				}
4531			}, this),
4532			'prepared.owl.carousel': $.proxy(function(e) {
4533				if (e.namespace) {
4534					var hash = $(e.content).find('[data-hash]').addBack('[data-hash]').attr('data-hash');
4535
4536					if (!hash) {
4537						return;
4538					}
4539
4540					this._hashes[hash] = e.content;
4541				}
4542			}, this),
4543			'changed.owl.carousel': $.proxy(function(e) {
4544				if (e.namespace && e.property.name === 'position') {
4545					var current = this._core.items(this._core.relative(this._core.current())),
4546						hash = $.map(this._hashes, function(item, hash) {
4547							return item === current ? hash : null;
4548						}).join();
4549
4550					if (!hash || window.location.hash.slice(1) === hash) {
4551						return;
4552					}
4553
4554					window.location.hash = hash;
4555				}
4556			}, this)
4557		};
4558
4559		// set default options
4560		this._core.options = $.extend({}, Hash.Defaults, this._core.options);
4561
4562		// register the event handlers
4563		this.$element.on(this._handlers);
4564
4565		// register event listener for hash navigation
4566		$(window).on('hashchange.owl.navigation', $.proxy(function(e) {
4567			var hash = window.location.hash.substring(1),
4568				items = this._core.$stage.children(),
4569				position = this._hashes[hash] && items.index(this._hashes[hash]);
4570
4571			if (position === undefined || position === this._core.current()) {
4572				return;
4573			}
4574
4575			this._core.to(this._core.relative(position), false, true);
4576		}, this));
4577	};
4578
4579	/**
4580	 * Default options.
4581	 * @public
4582	 */
4583	Hash.Defaults = {
4584		URLhashListener: false
4585	};
4586
4587	/**
4588	 * Destroys the plugin.
4589	 * @public
4590	 */
4591	Hash.prototype.destroy = function() {
4592		var handler, property;
4593
4594		$(window).off('hashchange.owl.navigation');
4595
4596		for (handler in this._handlers) {
4597			this._core.$element.off(handler, this._handlers[handler]);
4598		}
4599		for (property in Object.getOwnPropertyNames(this)) {
4600			typeof this[property] != 'function' && (this[property] = null);
4601		}
4602	};
4603
4604	$.fn.owlCarousel.Constructor.Plugins.Hash = Hash;
4605
4606})(window.Zepto || window.jQuery, window, document);
4607
4608
4609
4610/**
4611 * Support Plugin
4612 *
4613 * @version 2.3.4
4614 * @author Vivid Planet Software GmbH
4615 * @author Artus Kolanowski
4616 * @author David Deutsch
4617 * @license The MIT License (MIT)
4618 */
4619;(function($, window, document, undefined) {
4620
4621	var style = $('<support>').get(0).style,
4622		prefixes = 'Webkit Moz O ms'.split(' '),
4623		events = {
4624			transition: {
4625				end: {
4626					WebkitTransition: 'webkitTransitionEnd',
4627					MozTransition: 'transitionend',
4628					OTransition: 'oTransitionEnd',
4629					transition: 'transitionend'
4630				}
4631			},
4632			animation: {
4633				end: {
4634					WebkitAnimation: 'webkitAnimationEnd',
4635					MozAnimation: 'animationend',
4636					OAnimation: 'oAnimationEnd',
4637					animation: 'animationend'
4638				}
4639			}
4640		},
4641		tests = {
4642			csstransforms: function() {
4643				return !!test('transform');
4644			},
4645			csstransforms3d: function() {
4646				return !!test('perspective');
4647			},
4648			csstransitions: function() {
4649				return !!test('transition');
4650			},
4651			cssanimations: function() {
4652				return !!test('animation');
4653			}
4654		};
4655
4656	function test(property, prefixed) {
4657		var result = false,
4658			upper = property.charAt(0).toUpperCase() + property.slice(1);
4659
4660		$.each((property + ' ' + prefixes.join(upper + ' ') + upper).split(' '), function(i, property) {
4661			if (style[property] !== undefined) {
4662				result = prefixed ? property : true;
4663				return false;
4664			}
4665		});
4666
4667		return result;
4668	}
4669
4670	function prefixed(property) {
4671		return test(property, true);
4672	}
4673
4674	if (tests.csstransitions()) {
4675		/* jshint -W053 */
4676		$.support.transition = new String(prefixed('transition'))
4677		$.support.transition.end = events.transition.end[ $.support.transition ];
4678	}
4679
4680	if (tests.cssanimations()) {
4681		/* jshint -W053 */
4682		$.support.animation = new String(prefixed('animation'))
4683		$.support.animation.end = events.animation.end[ $.support.animation ];
4684	}
4685
4686	if (tests.csstransforms()) {
4687		/* jshint -W053 */
4688		$.support.transform = new String(prefixed('transform'));
4689		$.support.transform3d = tests.csstransforms3d();
4690	}
4691
4692})(window.Zepto || window.jQuery, window, document);
4693
4694
4695/*!
4696* jquery.counterup.js 1.0
4697*
4698* Copyright 2013, Benjamin Intal http://gambit.ph @bfintal
4699* Released under the GPL v2 License
4700*
4701* Date: Nov 26, 2013
4702*/
4703(function( $ ){
4704  "use strict";
4705
4706  $.fn.counterUp = function( options ) {
4707
4708    // Defaults
4709    var settings = $.extend({
4710        'time': 400,
4711        'delay': 10
4712    }, options);
4713
4714    return this.each(function(){
4715
4716        // Store the object
4717        var $this = $(this);
4718        var $settings = settings;
4719
4720        var counterUpper = function() {
4721            var nums = [];
4722            var divisions = $settings.time / $settings.delay;
4723            var num = $this.text();
4724            var isComma = /[0-9]+,[0-9]+/.test(num);
4725            num = num.replace(/,/g, '');
4726            var isInt = /^[0-9]+$/.test(num);
4727            var isFloat = /^[0-9]+\.[0-9]+$/.test(num);
4728            var decimalPlaces = isFloat ? (num.split('.')[1] || []).length : 0;
4729
4730            // Generate list of incremental numbers to display
4731            for (var i = divisions; i >= 1; i--) {
4732
4733                // Preserve as int if input was int
4734                var newNum = parseInt(num / divisions * i);
4735
4736                // Preserve float if input was float
4737                if (isFloat) {
4738                    newNum = parseFloat(num / divisions * i).toFixed(decimalPlaces);
4739                }
4740
4741                // Preserve commas if input had commas
4742                if (isComma) {
4743                    while (/(\d+)(\d{3})/.test(newNum.toString())) {
4744                        newNum = newNum.toString().replace(/(\d+)(\d{3})/, '$1'+','+'$2');
4745                    }
4746                }
4747
4748                nums.unshift(newNum);
4749            }
4750
4751            $this.data('counterup-nums', nums);
4752            $this.text('0');
4753
4754            // Updates the number until we're done
4755            var f = function() {
4756                $this.text($this.data('counterup-nums').shift());
4757                if ($this.data('counterup-nums').length) {
4758                    setTimeout($this.data('counterup-func'), $settings.delay);
4759                } else {
4760                    delete $this.data('counterup-nums');
4761                    $this.data('counterup-nums', null);
4762                    $this.data('counterup-func', null);
4763                }
4764            };
4765            $this.data('counterup-func', f);
4766
4767            // Start the count up
4768            setTimeout($this.data('counterup-func'), $settings.delay);
4769        };
4770
4771        // Perform counts when the element gets into view
4772        $this.waypoint(counterUpper, { offset: '100%', triggerOnce: true });
4773    });
4774
4775  };
4776
4777})( jQuery );
4778
4779
4780
4781
4782/*! WOW - v1.1.3 - 2016-05-06
4783* Copyright (c) 2016 Matthieu Aussaguel;*/
4784
4785(function() {
4786    var a, b, c, d, e, f = function(a, b) {
4787            return function() {
4788                return a.apply(b, arguments)
4789            }
4790        },
4791        g = [].indexOf || function(a) {
4792            for (var b = 0, c = this.length; c > b; b++)
4793                if (b in this && this[b] === a) return b;
4794            return -1
4795        };
4796    b = function() {
4797        function a() {}
4798        return a.prototype.extend = function(a, b) {
4799            var c, d;
4800            for (c in b) d = b[c], null == a[c] && (a[c] = d);
4801            return a
4802        }, a.prototype.isMobile = function(a) {
4803            return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)
4804        }, a.prototype.createEvent = function(a, b, c, d) {
4805            var e;
4806            return null == b && (b = !1), null == c && (c = !1), null == d && (d = null), null != document.createEvent ? (e = document.createEvent("CustomEvent"), e.initCustomEvent(a, b, c, d)) : null != document.createEventObject ? (e = document.createEventObject(), e.eventType = a) : e.eventName = a, e
4807        }, a.prototype.emitEvent = function(a, b) {
4808            return null != a.dispatchEvent ? a.dispatchEvent(b) : b in (null != a) ? a[b]() : "on" + b in (null != a) ? a["on" 
vendor: 10,154 bytes, lines 4808-4967
4808+ b]() : void 0
4809        }, a.prototype.addEvent = function(a, b, c) {
4810            return null != a.addEventListener ? a.addEventListener(b, c, !1) : null != a.attachEvent ? a.attachEvent("on" + b, c) : a[b] = c
4811        }, a.prototype.removeEvent = function(a, b, c) {
4812            return null != a.removeEventListener ? a.removeEventListener(b, c, !1) : null != a.detachEvent ? a.detachEvent("on" + b, c) : delete a[b]
4813        }, a.prototype.innerHeight = function() {
4814            return "innerHeight" in window ? window.innerHeight : document.documentElement.clientHeight
4815        }, a
4816    }(), c = this.WeakMap || this.MozWeakMap || (c = function() {
4817        function a() {
4818            this.keys = [], this.values = []
4819        }
4820        return a.prototype.get = function(a) {
4821            var b, c, d, e, f;
4822            for (f = this.keys, b = d = 0, e = f.length; e > d; b = ++d)
4823                if (c = f[b], c === a) return this.values[b]
4824        }, a.prototype.set = function(a, b) {
4825            var c, d, e, f, g;
4826            for (g = this.keys, c = e = 0, f = g.length; f > e; c = ++e)
4827                if (d = g[c], d === a) return void(this.values[c] = b);
4828            return this.keys.push(a), this.values.push(b)
4829        }, a
4830    }()), a = this.MutationObserver || this.WebkitMutationObserver || this.MozMutationObserver || (a = function() {
4831        function a() {
4832            "undefined" != typeof console && null !== console && console.warn("MutationObserver is not supported by your browser."), "undefined" != typeof console && null !== console && console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")
4833        }
4834        return a.notSupported = !0, a.prototype.observe = function() {}, a
4835    }()), d = this.getComputedStyle || function(a, b) {
4836        return this.getPropertyValue = function(b) {
4837            var c;
4838            return "float" === b && (b = "styleFloat"), e.test(b) && b.replace(e, function(a, b) {
4839                return b.toUpperCase()
4840            }), (null != (c = a.currentStyle) ? c[b] : void 0) || null
4841        }, this
4842    }, e = /(\-([a-z]){1})/g, this.WOW = function() {
4843        function e(a) {
4844            null == a && (a = {}), this.scrollCallback = f(this.scrollCallback, this), this.scrollHandler = f(this.scrollHandler, this), this.resetAnimation = f(this.resetAnimation, this), this.start = f(this.start, this), this.scrolled = !0, this.config = this.util().extend(a, this.defaults), null != a.scrollContainer && (this.config.scrollContainer = document.querySelector(a.scrollContainer)), this.animationNameCache = new c, this.wowEvent = this.util().createEvent(this.config.boxClass)
4845        }
4846        return e.prototype.defaults = {
4847            boxClass: "wow",
4848            animateClass: "animated",
4849            offset: 0,
4850            mobile: !0,
4851            live: !0,
4852            callback: null,
4853            scrollContainer: null
4854        }, e.prototype.init = function() {
4855            var a;
4856            return this.element = window.document.documentElement, "interactive" === (a = document.readyState) || "complete" === a ? this.start() : this.util().addEvent(document, "DOMContentLoaded", this.start), this.finished = []
4857        }, e.prototype.start = function() {
4858            var b, c, d, e;
4859            if (this.stopped = !1, this.boxes = function() {
4860                    var a, c, d, e;
4861                    for (d = this.element.querySelectorAll("." + this.config.boxClass), e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
4862                    return e
4863                }.call(this), this.all = function() {
4864                    var a, c, d, e;
4865                    for (d = this.boxes, e = [], a = 0, c = d.length; c > a; a++) b = d[a], e.push(b);
4866                    return e
4867                }.call(this), this.boxes.length)
4868                if (this.disabled()) this.resetStyle();
4869                else
4870                    for (e = this.boxes, c = 0, d = e.length; d > c; c++) b = e[c], this.applyStyle(b, !0);
4871            return this.disabled() || (this.util().addEvent(this.config.scrollContainer || window, "scroll", this.scrollHandler), this.util().addEvent(window, "resize", this.scrollHandler), this.interval = setInterval(this.scrollCallback, 50)), this.config.live ? new a(function(a) {
4872                return function(b) {
4873                    var c, d, e, f, g;
4874                    for (g = [], c = 0, d = b.length; d > c; c++) f = b[c], g.push(function() {
4875                        var a, b, c, d;
4876                        for (c = f.addedNodes || [], d = [], a = 0, b = c.length; b > a; a++) e = c[a], d.push(this.doSync(e));
4877                        return d
4878                    }.call(a));
4879                    return g
4880                }
4881            }(this)).observe(document.body, {
4882                childList: !0,
4883                subtree: !0
4884            }) : void 0
4885        }, e.prototype.stop = function() {
4886            return this.stopped = !0, this.util().removeEvent(this.config.scrollContainer || window, "scroll", this.scrollHandler), this.util().removeEvent(window, "resize", this.scrollHandler), null != this.interval ? clearInterval(this.interval) : void 0
4887        }, e.prototype.sync = function(b) {
4888            return a.notSupported ? this.doSync(this.element) : void 0
4889        }, e.prototype.doSync = function(a) {
4890            var b, c, d, e, f;
4891            if (null == a && (a = this.element), 1 === a.nodeType) {
4892                for (a = a.parentNode || a, e = a.querySelectorAll("." + this.config.boxClass), f = [], c = 0, d = e.length; d > c; c++) b = e[c], g.call(this.all, b) < 0 ? (this.boxes.push(b), this.all.push(b), this.stopped || this.disabled() ? this.resetStyle() : this.applyStyle(b, !0), f.push(this.scrolled = !0)) : f.push(void 0);
4893                return f
4894            }
4895        }, e.prototype.show = function(a) {
4896            return this.applyStyle(a), a.className = a.className + " " + this.config.animateClass, null != this.config.callback && this.config.callback(a), this.util().emitEvent(a, this.wowEvent), this.util().addEvent(a, "animationend", this.resetAnimation), this.util().addEvent(a, "oanimationend", this.resetAnimation), this.util().addEvent(a, "webkitAnimationEnd", this.resetAnimation), this.util().addEvent(a, "MSAnimationEnd", this.resetAnimation), a
4897        }, e.prototype.applyStyle = function(a, b) {
4898            var c, d, e;
4899            return d = a.getAttribute("data-wow-duration"), c = a.getAttribute("data-wow-delay"), e = a.getAttribute("data-wow-iteration"), this.animate(function(f) {
4900                return function() {
4901                    return f.customStyle(a, b, d, c, e)
4902                }
4903            }(this))
4904        }, e.prototype.animate = function() {
4905            return "requestAnimationFrame" in window ? function(a) {
4906                return window.requestAnimationFrame(a)
4907            } : function(a) {
4908                return a()
4909            }
4910        }(), e.prototype.resetStyle = function() {
4911            var a, b, c, d, e;
4912            for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], e.push(a.style.visibility = "visible");
4913            return e
4914        }, e.prototype.resetAnimation = function(a) {
4915            var b;
4916            return a.type.toLowerCase().indexOf("animationend") >= 0 ? (b = a.target || a.srcElement, b.className = b.className.replace(this.config.animateClass, "").trim()) : void 0
4917        }, e.prototype.customStyle = function(a, b, c, d, e) {
4918            return b && this.cacheAnimationName(a), a.style.visibility = b ? "hidden" : "visible", c && this.vendorSet(a.style, {
4919                animationDuration: c
4920            }), d && this.vendorSet(a.style, {
4921                animationDelay: d
4922            }), e && this.vendorSet(a.style, {
4923                animationIterationCount: e
4924            }), this.vendorSet(a.style, {
4925                animationName: b ? "none" : this.cachedAnimationName(a)
4926            }), a
4927        }, e.prototype.vendors = ["moz", "webkit"], e.prototype.vendorSet = function(a, b) {
4928            var c, d, e, f;
4929            d = [];
4930            for (c in b) e = b[c], a["" + c] = e, d.push(function() {
4931                var b, d, g, h;
4932                for (g = this.vendors, h = [], b = 0, d = g.length; d > b; b++) f = g[b], h.push(a["" + f + c.charAt(0).toUpperCase() + c.substr(1)] = e);
4933                return h
4934            }.call(this));
4935            return d
4936        }, e.prototype.vendorCSS = function(a, b) {
4937            var c, e, f, g, h, i;
4938            for (h = d(a), g = h.getPropertyCSSValue(b), f = this.vendors, c = 0, e = f.length; e > c; c++) i = f[c], g = g || h.getPropertyCSSValue("-" + i + "-" + b);
4939            return g
4940        }, e.prototype.animationName = function(a) {
4941            var b;
4942            try {
4943                b = this.vendorCSS(a, "animation-name").cssText
4944            } catch (c) {
4945                b = d(a).getPropertyValue("animation-name")
4946            }
4947            return "none" === b ? "" : b
4948        }, e.prototype.cacheAnimationName = function(a) {
4949            return this.animationNameCache.set(a, this.animationName(a))
4950        }, e.prototype.cachedAnimationName = function(a) {
4951            return this.animationNameCache.get(a)
4952        }, e.prototype.scrollHandler = function() {
4953            return this.scrolled = !0
4954        }, e.prototype.scrollCallback = function() {
4955            var a;
4956            return !this.scrolled || (this.scrolled = !1, this.boxes = function() {
4957                var b, c, d, e;
4958                for (d = this.boxes, e = [], b = 0, c = d.length; c > b; b++) a = d[b], a && (this.isVisible(a) ? this.show(a) : e.push(a));
4959                return e
4960            }.call(this), this.boxes.length || this.config.live) ? void 0 : this.stop()
4961        }, e.prototype.offsetTop = function(a) {
4962            for (var b; void 0 === a.offsetTop;) a = a.parentNode;
4963            for (b = a.offsetTop; a = a.offsetParent;) b += a.offsetTop;
4964            return b
4965        }, e.prototype.isVisible = function(a) {
4966            var b, c, d, e, f;
4967            return c = a.getAttribute("data-wow-offset") || this.config.offset, f = this.config.scrollC
4967ontainer && this.config.scrollContainer.scrollTop || window.pageYOffset, e = f + Math.min(this.element.clientHeight, this.util().innerHeight()) - c, d = this.offsetTop(a), b = d + a.clientHeight, e >= d && b >= f
4968        }, e.prototype.util = function() {
4969            return null != this._util ? this._util : this._util = new b
4970        }, e.prototype.disabled = function() {
4971            return !this.config.mobile && this.util().isMobile(navigator.userAgent)
4972        }, e
4973    }()
4974}).call(this);
4975
4976
4977/*!
4978 * VERSION: 0.1.13
4979 * DATE: 2018-08-27
4980 * UPDATES AND DOCS AT: http://greensock.com/jquery-gsap-plugin/
4981 *
4982 * Requires TweenLite version 1.8.0 or higher and CSSPlugin.
4983 *
4984 * @license Copyright (c) 2013-2018, GreenSock. All rights reserved.
4985 * This work is subject to the terms at http://greensock.com/standard-license or for
4986 * Club GreenSock members, the software agreement that was issued with your membership.
4987 *
4988 * @author: Jack Doyle, [email protected]
4989 */
4990(function($) {
4991	"use strict";
4992
4993	var	_animate = $.fn.animate,
4994		_stop = $.fn.stop,
4995		_enabled = true,
4996		TweenLite, CSSPlugin, _warned,
4997		_copy = function(o) {
4998			var copy = {},
4999				p;
5000			for (p in o) {
5001				copy[p] = o[p];
5002			}
5003			return copy;
5004		},
5005		_reserved = {overwrite:1, delay:1, useFrames:1, runBackwards:1, easeParams:1, yoyo:1, immediateRender:1, repeat:1, repeatDelay:1, autoCSS:1},
5006		_defaultLegacyProps = ",scrollTop,scrollLeft,show,hide,toggle,",
5007		_legacyProps = _defaultLegacyProps,
5008		_copyCriticalReserved = function(main, sub) {
5009			for (var p in _reserved) {
5010				if (_reserved[p] && main[p] !== undefined) {
5011					sub[p] = main[p];
5012				}
5013			}
5014		},
5015		_createEase = function(ease) {
5016			return function(p) {
5017				return ease.getRatio(p);
5018			};
5019		},
5020		_easeMap = {},
5021		_init = function() {
5022			var globals = window.GreenSockGlobals || window,
5023				p;
5024			TweenLite = globals.TweenMax || globals.TweenLite; //we prioritize TweenMax if it's loaded so that we can accommodate special features like repeat, yoyo, repeatDelay, etc.
5025			if (TweenLite) {
5026				globals = globals.com.greensock;
5027				CSSPlugin = globals.plugins.CSSPlugin;
5028				_easeMap = globals.easing.Ease.map || {}; //don't do just window.Ease or window.CSSPlugin because some other libraries like EaselJS/TweenJS use those same names and there could be a collision.
5029			}
5030			if (!TweenLite || !CSSPlugin) {
5031				TweenLite = null;
5032				if (!_warned && window.console) {
5033					window.console.log("The jquery.gsap.js plugin requires the TweenMax (or at least TweenLite and CSSPlugin) JavaScript file(s).");
5034					_warned = true;
5035				}
5036				return;
5037			}
5038			if ($.easing) {
5039				for (p in _easeMap) {
5040					$.easing[p] = _createEase(_easeMap[p]);
5041				}
5042				_init = false;
5043			}
5044		};
5045
5046	$.fn.animate = function(prop, speed, easing, callback) {
5047		prop = prop || {};
5048		if (_init) {
5049			_init();
5050			if (!TweenLite || !CSSPlugin) {
5051				return _animate.call(this, prop, speed, easing, callback);
5052			}
5053		}
5054		if (!_enabled || prop.skipGSAP === true || (typeof(speed) === "object" && typeof(speed.step) === "function")) { //we don't support the "step" feature because it's too costly performance-wise, so fall back to the native animate() call if we sense one. Same with scrollTop and scrollLeft which are handled in a special way in jQuery.
5055			return _animate.call(this, prop, speed, easing, callback);
5056		}
5057		var config = $.speed(speed, easing, callback),
5058			vars = {ease:(_easeMap[config.easing] || ((config.easing === false) ? _easeMap.linear : _easeMap.swing))},
5059			obj = this,
5060			specEasing = (typeof(speed) === "object") ? speed.specialEasing : null,
5061			val, p, doAnimation, specEasingVars;
5062
5063		for (p in prop) {
5064			val = prop[p];
5065			if (val instanceof Array && _easeMap[val[1]]) {
5066				specEasing = specEasing || {};
5067				specEasing[p] = val[1];
5068				val = val[0];
5069			}
5070			if (val === "show" || val === "hide" || val === "toggle" || (_legacyProps.indexOf(p) !== -1 && _legacyProps.indexOf("," + p + ",") !== -1)) { //note: slideUp() and slideDown() pass in opacity:"show" or opacity:"hide"
5071				return _animate.call(this, prop, speed, easing, callback);
5072			} else {
5073				vars[(p.indexOf("-") === -1) ? p : $.camelCase(p)] = val;
5074			}
5075		}
5076
5077		if (specEasing) {
5078			vars = _copy(vars);
5079			specEasingVars = [];
5080			for (p in specEasing) {
5081				val = specEasingVars[specEasingVars.length] = {};
5082				_copyCriticalReserved(vars, val);
5083				val.ease = (_easeMap[specEasing[p]] || vars.ease);
5084				if (p.indexOf("-") !== -1) {
5085					p = $.camelCase(p);
5086				}
5087				val[p] = vars[p];
5088				delete vars[p];
5089			}
5090			if (specEasingVars.length === 0) {
5091				specEasingVars = null;
5092			}
5093		}
5094
5095		doAnimation = function(next) {
5096			var varsCopy = _copy(vars),
5097				i;
5098			if (specEasingVars) {
5099				i = specEasingVars.length;
5100				while (--i > -1) {
5101					TweenLite.to(this, $.fx.off ? 0 : config.duration / 1000, specEasingVars[i]);
5102				}
5103			}
5104			varsCopy.onComplete = function() {
5105				if (next) {
5106					next();
5107				} else if (config.old) {
5108					$(this).each(config.old);
5109				}
5110			};
5111			TweenLite.to(this, $.fx.off ? 0 : config.duration / 1000, varsCopy);
5112		};
5113
5114		if (config.queue !== false) {
5115			obj.queue(config.queue, doAnimation); //note: the queued function will get called once for each element in the jQuery collection.
5116			if (typeof(config.old) === "function") {
5117				$(obj[obj.length-1]).queue(config.queue, function(next) {
5118					config.old.call(obj);
5119					next();
5120				});
5121			}
5122		} else {
5123			doAnimation.call(obj);
5124		}
5125
5126		return obj;
5127	};
5128
5129
5130	$.fn.stop = function(clearQueue, gotoEnd) {
5131		_stop.call(this, clearQueue, gotoEnd);
5132		if (TweenLite) {
5133			if (gotoEnd) {
5134				var tweens = TweenLite.getTweensOf(this),
5135					i = tweens.length,
5136					progress;
5137				while (--i > -1) {
5138					progress = tweens[i].totalTime() / tweens[i].totalDuration();
5139					if (progress > 0 && progress < 1) {
5140						tweens[i].seek(tweens[i].totalDuration());
5141					}
5142				}
5143			}
5144			TweenLite.killTweensOf(this);
5145		}
5146		return this;
5147	};
5148
5149	$.gsap = {
5150		enabled:function(value) {
5151			_enabled = value;
5152		},
5153		version:"0.1.13",
5154		legacyProps:function(value) {
5155			_legacyProps = _defaultLegacyProps + value + ",";
5156		}
5157	};
5158
5159}(jQuery));
5160/*!
5161 * VERSION: 1.20.4
5162 * DATE: 2018-02-15
5163 * UPDATES AND DOCS AT: http://greensock.com
5164 * 
5165 * Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin
5166 *
5167 * @license Copyright (c) 2008-2018, GreenSock. All rights reserved.
5168 * This work is subject to the terms at http://greensock.com/standard-license or for
vendor: 22,646 bytes, lines 5169-5173
5169 * Club GreenSock members, the software agreement that was issued with your membership.
5170 * 
5171 * @author: Jack Doyle, [email protected]
5172 **/
5173var _gsScope="undefined"!=typeof module&&module.exports&&"undefined"!=typeof global?global:this||window;(_gsScope._gsQueue||(_gsScope._gsQueue=[])).push(function(){"use strict";_gsScope._gsDefine("TweenMax",["core.Animation","core.SimpleTimeline","TweenLite"],function(a,b,c){var d=function(a){var b,c=[],d=a.length;for(b=0;b!==d;c.push(a[b++]));return c},e=function(a,b,c){var d,e,f=a.cycle;for(d in f)e=f[d],a[d]="function"==typeof e?e(c,b[c]):e[c%e.length];delete a.cycle},f=function(a,b,d){c.call(this,a,b,d),this._cycle=0,this._yoyo=this.vars.yoyo===!0||!!this.vars.yoyoEase,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._repeat&&this._uncache(!0),this.render=f.prototype.render},g=1e-10,h=c._internals,i=h.isSelector,j=h.isArray,k=f.prototype=c.to({},.1,{}),l=[];f.version="1.20.4",k.constructor=f,k.kill()._gc=!1,f.killTweensOf=f.killDelayedCallsTo=c.killTweensOf,f.getTweensOf=c.getTweensOf,f.lagSmoothing=c.lagSmoothing,f.ticker=c.ticker,f.render=c.render,k.invalidate=function(){return this._yoyo=this.vars.yoyo===!0||!!this.vars.yoyoEase,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._yoyoEase=null,this._uncache(!0),c.prototype.invalidate.call(this)},k.updateTo=function(a,b){var d,e=this.ratio,f=this.vars.immediateRender||a.immediateRender;b&&this._startTime<this._timeline._time&&(this._startTime=this._timeline._time,this._uncache(!1),this._gc?this._enabled(!0,!1):this._timeline.insert(this,this._startTime-this._delay));for(d in a)this.vars[d]=a[d];if(this._initted||f)if(b)this._initted=!1,f&&this.render(0,!0,!0);else if(this._gc&&this._enabled(!0,!1),this._notifyPluginsOfEnabled&&this._firstPT&&c._onPluginEvent("_onDisable",this),this._time/this._duration>.998){var g=this._totalTime;this.render(0,!0,!1),this._initted=!1,this.render(g,!0,!1)}else if(this._initted=!1,this._init(),this._time>0||f)for(var h,i=1/(1-e),j=this._firstPT;j;)h=j.s+j.c,j.c*=i,j.s=h-j.c,j=j._next;return this},k.render=function(a,b,d){this._initted||0===this._duration&&this.vars.repeat&&this.invalidate();var e,f,i,j,k,l,m,n,o,p=this._dirty?this.totalDuration():this._totalDuration,q=this._time,r=this._totalTime,s=this._cycle,t=this._duration,u=this._rawPrevTime;if(a>=p-1e-7&&a>=0?(this._totalTime=p,this._cycle=this._repeat,this._yoyo&&0!==(1&this._cycle)?(this._time=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0):(this._time=t,this.ratio=this._ease._calcEnd?this._ease.getRatio(1):1),this._reversed||(e=!0,f="onComplete",d=d||this._timeline.autoRemoveChildren),0===t&&(this._initted||!this.vars.lazy||d)&&(this._startTime===this._timeline._duration&&(a=0),(0>u||0>=a&&a>=-1e-7||u===g&&"isPause"!==this.data)&&u!==a&&(d=!0,u>g&&(f="onReverseComplete")),this._rawPrevTime=n=!b||a||u===a?a:g)):1e-7>a?(this._totalTime=this._time=this._cycle=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0,(0!==r||0===t&&u>0)&&(f="onReverseComplete",e=this._reversed),0>a&&(this._active=!1,0===t&&(this._initted||!this.vars.lazy||d)&&(u>=0&&(d=!0),this._rawPrevTime=n=!b||a||u===a?a:g)),this._initted||(d=!0)):(this._totalTime=this._time=a,0!==this._repeat&&(j=t+this._repeatDelay,this._cycle=this._totalTime/j>>0,0!==this._cycle&&this._cycle===this._totalTime/j&&a>=r&&this._cycle--,this._time=this._totalTime-this._cycle*j,this._yoyo&&0!==(1&this._cycle)&&(this._time=t-this._time,o=this._yoyoEase||this.vars.yoyoEase,o&&(this._yoyoEase||(o!==!0||this._initted?this._yoyoEase=o=o===!0?this._ease:o instanceof Ease?o:Ease.map[o]:(o=this.vars.ease,this._yoyoEase=o=o?o instanceof Ease?o:"function"==typeof o?new Ease(o,this.vars.easeParams):Ease.map[o]||c.defaultEase:c.defaultEase)),this.ratio=o?1-o.getRatio((t-this._time)/t):0)),this._time>t?this._time=t:this._time<0&&(this._time=0)),this._easeType&&!o?(k=this._time/t,l=this._easeType,m=this._easePower,(1===l||3===l&&k>=.5)&&(k=1-k),3===l&&(k*=2),1===m?k*=k:2===m?k*=k*k:3===m?k*=k*k*k:4===m&&(k*=k*k*k*k),1===l?this.ratio=1-k:2===l?this.ratio=k:this._time/t<.5?this.ratio=k/2:this.ratio=1-k/2):o||(this.ratio=this._ease.getRatio(this._time/t))),q===this._time&&!d&&s===this._cycle)return void(r!==this._totalTime&&this._onUpdate&&(b||this._callback("onUpdate")));if(!this._initted){if(this._init(),!this._initted||this._gc)return;if(!d&&this._firstPT&&(this.vars.lazy!==!1&&this._duration||this.vars.lazy&&!this._duration))return this._time=q,this._totalTime=r,this._rawPrevTime=u,this._cycle=s,h.lazyTweens.push(this),void(this._lazy=[a,b]);!this._time||e||o?e&&this._ease._calcEnd&&!o&&(this.ratio=this._ease.getRatio(0===this._time?0:1)):this.ratio=this._ease.getRatio(this._time/t)}for(this._lazy!==!1&&(this._lazy=!1),this._active||!this._paused&&this._time!==q&&a>=0&&(this._active=!0),0===r&&(2===this._initted&&a>0&&this._init(),this._startAt&&(a>=0?this._startAt.render(a,!0,d):f||(f="_dummyGS")),this.vars.onStart&&(0!==this._totalTime||0===t)&&(b||this._callback("onStart"))),i=this._firstPT;i;)i.f?i.t[i.p](i.c*this.ratio+i.s):i.t[i.p]=i.c*this.ratio+i.s,i=i._next;this._onUpdate&&(0>a&&this._startAt&&this._startTime&&this._startAt.render(a,!0,d),b||(this._totalTime!==r||f)&&this._callback("onUpdate")),this._cycle!==s&&(b||this._gc||this.vars.onRepeat&&this._callback("onRepeat")),f&&(!this._gc||d)&&(0>a&&this._startAt&&!this._onUpdate&&this._startTime&&this._startAt.render(a,!0,d),e&&(this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!b&&this.vars[f]&&this._callback(f),0===t&&this._rawPrevTime===g&&n!==g&&(this._rawPrevTime=0))},f.to=function(a,b,c){return new f(a,b,c)},f.from=function(a,b,c){return c.runBackwards=!0,c.immediateRender=0!=c.immediateRender,new f(a,b,c)},f.fromTo=function(a,b,c,d){return d.startAt=c,d.immediateRender=0!=d.immediateRender&&0!=c.immediateRender,new f(a,b,d)},f.staggerTo=f.allTo=function(a,b,g,h,k,m,n){h=h||0;var o,p,q,r,s=0,t=[],u=function(){g.onComplete&&g.onComplete.apply(g.onCompleteScope||this,arguments),k.apply(n||g.callbackScope||this,m||l)},v=g.cycle,w=g.startAt&&g.startAt.cycle;for(j(a)||("string"==typeof a&&(a=c.selector(a)||a),i(a)&&(a=d(a))),a=a||[],0>h&&(a=d(a),a.reverse(),h*=-1),o=a.length-1,q=0;o>=q;q++){p={};for(r in g)p[r]=g[r];if(v&&(e(p,a,q),null!=p.duration&&(b=p.duration,delete p.duration)),w){w=p.startAt={};for(r in g.startAt)w[r]=g.startAt[r];e(p.startAt,a,q)}p.delay=s+(p.delay||0),q===o&&k&&(p.onComplete=u),t[q]=new f(a[q],b,p),s+=h}return t},f.staggerFrom=f.allFrom=function(a,b,c,d,e,g,h){return c.runBackwards=!0,c.immediateRender=0!=c.immediateRender,f.staggerTo(a,b,c,d,e,g,h)},f.staggerFromTo=f.allFromTo=function(a,b,c,d,e,g,h,i){return d.startAt=c,d.immediateRender=0!=d.immediateRender&&0!=c.immediateRender,f.staggerTo(a,b,d,e,g,h,i)},f.delayedCall=function(a,b,c,d,e){return new f(b,0,{delay:a,onComplete:b,onCompleteParams:c,callbackScope:d,onReverseComplete:b,onReverseCompleteParams:c,immediateRender:!1,useFrames:e,overwrite:0})},f.set=function(a,b){return new f(a,0,b)},f.isTweening=function(a){return c.getTweensOf(a,!0).length>0};var m=function(a,b){for(var d=[],e=0,f=a._first;f;)f instanceof c?d[e++]=f:(b&&(d[e++]=f),d=d.concat(m(f,b)),e=d.length),f=f._next;return d},n=f.getAllTweens=function(b){return m(a._rootTimeline,b).concat(m(a._rootFramesTimeline,b))};f.killAll=function(a,c,d,e){null==c&&(c=!0),null==d&&(d=!0);var f,g,h,i=n(0!=e),j=i.length,k=c&&d&&e;for(h=0;j>h;h++)g=i[h],(k||g instanceof b||(f=g.target===g.vars.onComplete)&&d||c&&!f)&&(a?g.totalTime(g._reversed?0:g.totalDuration()):g._enabled(!1,!1))},f.killChildTweensOf=function(a,b){if(null!=a){var e,g,k,l,m,n=h.tweenLookup;if("string"==typeof a&&(a=c.selector(a)||a),i(a)&&(a=d(a)),j(a))for(l=a.length;--l>-1;)f.killChildTweensOf(a[l],b);else{e=[];for(k in n)for(g=n[k].target.parentNode;g;)g===a&&(e=e.concat(n[k].tweens)),g=g.parentNode;for(m=e.length,l=0;m>l;l++)b&&e[l].totalTime(e[l].totalDuration()),e[l]._enabled(!1,!1)}}};var o=function(a,c,d,e){c=c!==!1,d=d!==!1,e=e!==!1;for(var f,g,h=n(e),i=c&&d&&e,j=h.length;--j>-1;)g=h[j],(i||g instanceof b||(f=g.target===g.vars.onComplete)&&d||c&&!f)&&g.paused(a)};return f.pauseAll=function(a,b,c){o(!0,a,b,c)},f.resumeAll=function(a,b,c){o(!1,a,b,c)},f.globalTimeScale=function(b){var d=a._rootTimeline,e=c.ticker.time;return arguments.length?(b=b||g,d._startTime=e-(e-d._startTime)*d._timeScale/b,d=a._rootFramesTimeline,e=c.ticker.frame,d._startTime=e-(e-d._startTime)*d._timeScale/b,d._timeScale=a._rootTimeline._timeScale=b,b):d._timeScale},k.progress=function(a,b){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&0!==(1&this._cycle)?1-a:a)+this._cycle*(this._duration+this._repeatDelay),b):this._time/this.duration()},k.totalProgress=function(a,b){return arguments.length?this.totalTime(this.totalDuration()*a,b):this._totalTime/this.totalDuration()},k.time=function(a,b){return arguments.length?(this._dirty&&this.totalDuration(),a>this._duration&&(a=this._duration),this._yoyo&&0!==(1&this._cycle)?a=this._duration-a+this._cycle*(this._duration+this._repeatDelay):0!==this._repeat&&(a+=this._cycle*(this._duration+this._repeatDelay)),this.totalTime(a,b)):this._time},k.duration=function(b){return arguments.length?a.prototype.duration.call(this,b):this._duration},k.totalDuration=function(a){return arguments.length?-1===this._repeat?this:this.duration((a-this._repeat*this._repeatDelay)/(this._repeat+1)):(this._dirty&&(this._totalDuration=-1===this._repeat?999999999999:this._duration*(this._repeat+1)+this._repeatDelay*this._repeat,this._dirty=!1),this._totalDuration)},k.repeat=function(a){return arguments.length?(this._repeat=a,this._uncache(!0)):this._repeat},k.repeatDelay=function(a){return arguments.length?(this._repeatDelay=a,this._uncache(!0)):this._repeatDelay},k.yoyo=function(a){return arguments.length?(this._yoyo=a,this):this._yoyo},f},!0),_gsScope._gsDefine("TimelineLite",["core.Animation","core.SimpleTimeline","TweenLite"],function(a,b,c){var d=function(a){b.call(this,a),this._labels={},this.autoRemoveChildren=this.vars.autoRemoveChildren===!0,this.smoothChildTiming=this.vars.smoothChildTiming===!0,this._sortChildren=!0,this._onUpdate=this.vars.onUpdate;var c,d,e=this.vars;for(d in e)c=e[d],i(c)&&-1!==c.join("").indexOf("{self}")&&(e[d]=this._swapSelfInParams(c));i(e.tweens)&&this.add(e.tweens,0,e.align,e.stagger)},e=1e-10,f=c._internals,g=d._internals={},h=f.isSelector,i=f.isArray,j=f.lazyTweens,k=f.lazyRender,l=_gsScope._gsDefine.globals,m=function(a){var b,c={};for(b in a)c[b]=a[b];return c},n=function(a,b,c){var d,e,f=a.cycle;for(d in f)e=f[d],a[d]="function"==typeof e?e(c,b[c]):e[c%e.length];delete a.cycle},o=g.pauseCallback=function(){},p=function(a){var b,c=[],d=a.length;for(b=0;b!==d;c.push(a[b++]));return c},q=d.prototype=new b;return d.version="1.20.4",q.constructor=d,q.kill()._gc=q._forcingPlayhead=q._hasPause=!1,q.to=function(a,b,d,e){var f=d.repeat&&l.TweenMax||c;return b?this.add(new f(a,b,d),e):this.set(a,d,e)},q.from=function(a,b,d,e){return this.add((d.repeat&&l.TweenMax||c).from(a,b,d),e)},q.fromTo=function(a,b,d,e,f){var g=e.repeat&&l.TweenMax||c;return b?this.add(g.fromTo(a,b,d,e),f):this.set(a,e,f)},q.staggerTo=function(a,b,e,f,g,i,j,k){var l,o,q=new d({onComplete:i,onCompleteParams:j,callbackScope:k,smoothChildTiming:this.smoothChildTiming}),r=e.cycle;for("string"==typeof a&&(a=c.selector(a)||a),a=a||[],h(a)&&(a=p(a)),f=f||0,0>f&&(a=p(a),a.reverse(),f*=-1),o=0;o<a.length;o++)l=m(e),l.startAt&&(l.startAt=m(l.startAt),l.startAt.cycle&&n(l.startAt,a,o)),r&&(n(l,a,o),null!=l.duration&&(b=l.duration,delete l.duration)),q.to(a[o],b,l,o*f);return this.add(q,g)},q.staggerFrom=function(a,b,c,d,e,f,g,h){return c.immediateRender=0!=c.immediateRender,c.runBackwards=!0,this.staggerTo(a,b,c,d,e,f,g,h)},q.staggerFromTo=function(a,b,c,d,e,f,g,h,i){return d.startAt=c,d.immediateRender=0!=d.immediateRender&&0!=c.immediateRender,this.staggerTo(a,b,d,e,f,g,h,i)},q.call=function(a,b,d,e){return this.add(c.delayedCall(0,a,b,d),e)},q.set=function(a,b,d){return d=this._parseTimeOrLabel(d,0,!0),null==b.immediateRender&&(b.immediateRender=d===this._time&&!this._paused),this.add(new c(a,0,b),d)},d.exportRoot=function(a,b){a=a||{},null==a.smoothChildTiming&&(a.smoothChildTiming=!0);var e,f,g,h,i=new d(a),j=i._timeline;for(null==b&&(b=!0),j._remove(i,!0),i._startTime=0,i._rawPrevTime=i._time=i._totalTime=j._time,g=j._first;g;)h=g._next,b&&g instanceof c&&g.target===g.vars.onComplete||(f=g._startTime-g._delay,0>f&&(e=1),i.add(g,f)),g=h;return j.add(i,0),e&&i.totalDuration(),i},q.add=function(e,f,g,h){var j,k,l,m,n,o;if("number"!=typeof f&&(f=this._parseTimeOrLabel(f,0,!0,e)),!(e instanceof a)){if(e instanceof Array||e&&e.push&&i(e)){for(g=g||"normal",h=h||0,j=f,k=e.length,l=0;k>l;l++)i(m=e[l])&&(m=new d({tweens:m})),this.add(m,j),"string"!=typeof m&&"function"!=typeof m&&("sequence"===g?j=m._startTime+m.totalDuration()/m._timeScale:"start"===g&&(m._startTime-=m.delay())),j+=h;return this._uncache(!0)}if("string"==typeof e)return this.addLabel(e,f);if("function"!=typeof e)throw"Cannot add "+e+" into the timeline; it is not a tween, timeline, function, or string.";e=c.delayedCall(0,e)}if(b.prototype.add.call(this,e,f),e._time&&e.render((this.rawTime()-e._startTime)*e._timeScale,!1,!1),(this._gc||this._time===this._duration)&&!this._paused&&this._duration<this.duration())for(n=this,o=n.rawTime()>e._startTime;n._timeline;)o&&n._timeline.smoothChildTiming?n.totalTime(n._totalTime,!0):n._gc&&n._enabled(!0,!1),n=n._timeline;return this},q.remove=function(b){if(b instanceof a){this._remove(b,!1);var c=b._timeline=b.vars.useFrames?a._rootFramesTimeline:a._rootTimeline;return b._startTime=(b._paused?b._pauseTime:c._time)-(b._reversed?b.totalDuration()-b._totalTime:b._totalTime)/b._timeScale,this}if(b instanceof Array||b&&b.push&&i(b)){for(var d=b.length;--d>-1;)this.remove(b[d]);return this}return"string"==typeof b?this.removeLabel(b):this.kill(null,b)},q._remove=function(a,c){b.prototype._remove.call(this,a,c);var d=this._last;return d?this._time>this.duration()&&(this._time=this._duration,this._totalTime=this._totalDuration):this._time=this._totalTime=this._duration=this._totalDuration=0,this},q.append=function(a,b){return this.add(a,this._parseTimeOrLabel(null,b,!0,a))},q.insert=q.insertMultiple=function(a,b,c,d){return this.add(a,b||0,c,d)},q.appendMultiple=function(a,b,c,d){return this.add(a,this._parseTimeOrLabel(null,b,!0,a),c,d)},q.addLabel=function(a,b){return this._labels[a]=this._parseTimeOrLabel(b),this},q.addPause=function(a,b,d,e){var f=c.delayedCall(0,o,d,e||this);return f.vars.onComplete=f.vars.onReverseComplete=b,f.data="isPause",this._hasPause=!0,this.add(f,a)},q.removeLabel=function(a){return delete this._labels[a],this},q.getLabelTime=function(a){return null!=this._labels[a]?this._labels[a]:-1},q._parseTimeOrLabel=function(b,c,d,e){var f,g;if(e instanceof a&&e.timeline===this)this.remove(e);else if(e&&(e instanceof Array||e.push&&i(e)))for(g=e.length;--g>-1;)e[g]instanceof a&&e[g].timeline===this&&this.remove(e[g]);if(f="number"!=typeof b||c?this.duration()>99999999999?this.recent().endTime(!1):this._duration:0,"string"==typeof c)return this._parseTimeOrLabel(c,d&&"number"==typeof b&&null==this._labels[c]?b-f:0,d);if(c=c||0,"string"!=typeof b||!isNaN(b)&&null==this._labels[b])null==b&&(b=f);else{if(g=b.indexOf("="),-1===g)return null==this._labels[b]?d?this._labels[b]=f+c:c:this._labels[b]+c;c=parseInt(b.charAt(g-1)+"1",10)*Number(b.substr(g+1)),b=g>1?this._parseTimeOrLabel(b.substr(0,g-1),0,d):f}return Number(b)+c},q.seek=function(a,b){return this.totalTime("number"==typeof a?a:this._parseTimeOrLabel(a),b!==!1)},q.stop=function(){return this.paused(!0)},q.gotoAndPlay=function(a,b){return this.play(a,b)},q.gotoAndStop=function(a,b){return this.pause(a,b)},q.render=function(a,b,c){this._gc&&this._enabled(!0,!1);var d,f,g,h,i,l,m,n=this._time,o=this._dirty?this.totalDuration():this._totalDuration,p=this._startTime,q=this._timeScale,r=this._paused;if(n!==this._time&&(a+=this._time-n),a>=o-1e-7&&a>=0)this._totalTime=this._time=o,this._reversed||this._hasPausedChild()||(f=!0,h="onComplete",i=!!this._timeline.autoRemoveChildren,0===this._duration&&(0>=a&&a>=-1e-7||this._rawPrevTime<0||this._rawPrevTime===e)&&this._rawPrevTime!==a&&this._first&&(i=!0,this._rawPrevTime>e&&(h="onReverseComplete"))),this._rawPrevTime=this._duration||!b||a||this._rawPrevTime===a?a:e,a=o+1e-4;else if(1e-7>a)if(this._totalTime=this._time=0,(0!==n||0===this._duration&&this._rawPrevTime!==e&&(this._rawPrevTime>0||0>a&&this._rawPrevTime>=0))&&(h="onReverseComplete",f=this._reversed),0>a)this._active=!1,this._timeline.autoRemoveChildren&&this._reversed?(i=f=!0,h="onReverseComplete"):this._rawPrevTime>=0&&this._first&&(i=!0),this._rawPrevTime=a;else{if(this._rawPrevTime=this._duration||!b||a||this._rawPrevTime===a?a:e,0===a&&f)for(d=this._first;d&&0===d._startTime;)d._duration||(f=!1),d=d._next;a=0,this._initted||(i=!0)}else{if(this._hasPause&&!this._forcingPlayhead&&!b){if(a>=n)for(d=this._first;d&&d._startTime<=a&&!l;)d._duration||"isPause"!==d.data||d.ratio||0===d._startTime&&0===this._rawPrevTime||(l=d),d=d._next;else for(d=this._last;d&&d._startTime>=a&&!l;)d._duration||"isPause"===d.data&&d._rawPrevTime>0&&(l=d),d=d._prev;l&&(this._time=a=l._startTime,this._totalTime=a+this._cycle*(this._totalDuration+this._repeatDelay))}this._totalTime=this._time=this._rawPrevTime=a}if(this._time!==n&&this._first||c||i||l){if(this._initted||(this._initted=!0),this._active||!this._paused&&this._time!==n&&a>0&&(this._active=!0),0===n&&this.vars.onStart&&(0===this._time&&this._duration||b||this._callback("onStart")),m=this._time,m>=n)for(d=this._first;d&&(g=d._next,m===this._time&&(!this._paused||r));)(d._active||d._startTime<=m&&!d._paused&&!d._gc)&&(l===d&&this.pause(),d._reversed?d.render((d._dirty?d.totalDuration():d._totalDuration)-(a-d._startTime)*d._timeScale,b,c):d.render((a-d._startTime)*d._timeScale,b,c)),d=g;else for(d=this._last;d&&(g=d._prev,m===this._time&&(!this._paused||r));){if(d._active||d._startTime<=n&&!d._paused&&!d._gc){if(l===d){for(l=d._prev;l&&l.endTime()>this._time;)l.render(l._reversed?l.totalDuration()-(a-l._startTime)*l._timeScale:(a-l._startTime)*l._timeScale,b,c),l=l._prev;l=null,this.pause()}d._reversed?d.render((d._dirty?d.totalDuration():d._totalDuration)-(a-d._startTime)*d._timeScale,b,c):d.render((a-d._startTime)*d._timeScale,b,c)}d=g}this._onUpdate&&(b||(j.length&&k(),this._callback("onUpdate"))),h&&(this._gc||(p===this._startTime||q!==this._timeScale)&&(0===this._time||o>=this.totalDuration())&&(f&&(j.length&&k(),this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!b&&this.vars[h]&&this._callback(h)))}},q._hasPausedChild=function(){for(var a=this._first;a;){if(a._paused||a instanceof d&&a._hasPausedChild())return!0;a=a._next}return!1},q.getChildren=function(a,b,d,e){e=e||-9999999999;for(var f=[],g=this._first,h=0;g;)g._startTime<e||(g instanceof c?b!==!1&&(f[h++]=g):(d!==!1&&(f[h++]=g),a!==!1&&(f=f.concat(g.getChildren(!0,b,d)),h=f.length))),g=g._next;return f},q.getTweensOf=function(a,b){var d,e,f=this._gc,g=[],h=0;for(f&&this._enabled(!0,!0),d=c.getTweensOf(a),e=d.length;--e>-1;)(d[e].timeline===this||b&&this._contains(d[e]))&&(g[h++]=d[e]);return f&&this._enabled(!1,!0),g},q.recent=function(){return this._recent},q._contains=function(a){for(var b=a.timeline;b;){if(b===this)return!0;b=b.timeline}return!1},q.shiftChildren=function(a,b,c){c=c||0;for(var d,e=this._first,f=this._labels;e;)e._startTime>=c&&(e._startTime+=a),e=e._next;if(b)for(d in f)f[d]>=c&&(f[d]+=a);return this._uncache(!0)},q._kill=function(a,b){if(!a&&!b)return this._enabled(!1,!1);for(var c=b?this.getTweensOf(b):this.getChildren(!0,!0,!1),d=c.length,e=!1;--d>-1;)c[d]._kill(a,b)&&(e=!0);return e},q.clear=function(a){var b=this.getChildren(!1,!0,!0),c=b.length;for(this._time=this._totalTime=0;--c>-1;)b[c]._enabled(!1,!1);return a!==!1&&(this._labels={}),this._uncache(!0)},q.invalidate=function(){for(var b=this._first;b;)b.invalidate(),b=b._next;return a.prototype.invalidate.call(this)},q._enabled=function(a,c){if(a===this._gc)for(var d=this._first;d;)d._enabled(a,!0),d=d._next;return b.prototype._enabled.call(this,a,c)},q.totalTime=function(b,c,d){this._forcingPlayhead=!0;var e=a.prototype.totalTime.apply(this,arguments);return this._forcingPlayhead=!1,e},q.duration=function(a){return arguments.length?(0!==this.duration()&&0!==a&&this.timeScale(this._duration/a),this):(this._dirty&&this.totalDuration(),this._duration)},q.totalDuration=function(a){if(!arguments.length){if(this._dirty){for(var b,c,d=0,e=this._last,f=999999999999;e;)b=e._prev,e._dirty&&e.totalDuration(),e._startTime>f&&this._sortChildren&&!e._paused&&!this._calculatingDuration?(this._calculatingDuration=1,this.add(e,e._startTime-e._delay),this._calculatingDuration=0):f=e._startTime,e._startTime<0&&!e._paused&&(d-=e._startTime,this._timeline.smoothChildTiming&&(this._startTime+=e._startTime/this._timeScale,this._time-=e._startTime,this._totalTime-=e._startTime,this._rawPrevTime-=e._startTime),this.shiftChildren(-e._startTime,!1,-9999999999),f=0),c=e._startTime+e._totalDuration/e._timeScale,c>d&&(d=c),e=b;this._duration=this._totalDuration=d,this._dirty=!1}return this._totalDuration}return a&&this.totalDuration()?this.timeScale(this._totalDuration/a):this},q.paused=function(b){if(!b)for(var c=this._first,d=this._time;c;)c._startTime===d&&"isPause"===c.data&&(c._rawPrevTime=0),c=c._next;return a.prototype.paused.apply(this,arguments)},q.usesFrames=function(){for(var b=this._timeline;b._timeline;)b=b._timeline;return b===a._rootFramesTimeline},q.rawTime=function(a){return a&&(this._paused||this._repeat&&this.time()>0&&this.totalProgress()<1)?this._totalTime%(this._duration+this._repeatDelay):this._paused?this._totalTime:(this._timeline.rawTime(a)-this._startTime)*this._timeScale},d},!0),_gsScope._gsDefine("TimelineMax",["TimelineLite","TweenLite","easing.Ease"],function(a,b,c){var d=function(b){a.call(this,b),this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._cycle=0,this._yoyo=this.vars.yoyo===!0,this._dirty=!0},e=1e-10,f=b._internals,g=f.lazyTweens,h=f.lazyRender,i=_gsScope._gsDefine.globals,j=new c(null,null,1,0),k=d.prototype=new a;return k.constructor=d,k.kill()._gc=!1,d.version="1.20.4",k.invalidate=function(){return this._yoyo=this.vars.yoyo===!0,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._uncache(!0),a.prototype.invalidate.call(this)},k.addCallback=function(a,c,d,e){return this.add(b.delayedCall(0,a,d,e),
vendor: 7,345 bytes, line 5173
5173c)},k.removeCallback=function(a,b){if(a)if(null==b)this._kill(null,a);else for(var c=this.getTweensOf(a,!1),d=c.length,e=this._parseTimeOrLabel(b);--d>-1;)c[d]._startTime===e&&c[d]._enabled(!1,!1);return this},k.removePause=function(b){return this.removeCallback(a._internals.pauseCallback,b)},k.tweenTo=function(a,c){c=c||{};var d,e,f,g={ease:j,useFrames:this.usesFrames(),immediateRender:!1,lazy:!1},h=c.repeat&&i.TweenMax||b;for(e in c)g[e]=c[e];return g.time=this._parseTimeOrLabel(a),d=Math.abs(Number(g.time)-this._time)/this._timeScale||.001,f=new h(this,d,g),g.onStart=function(){f.target.paused(!0),f.vars.time===f.target.time()||d!==f.duration()||f.isFromTo||f.duration(Math.abs(f.vars.time-f.target.time())/f.target._timeScale).render(f.time(),!0,!0),c.onStart&&c.onStart.apply(c.onStartScope||c.callbackScope||f,c.onStartParams||[])},f},k.tweenFromTo=function(a,b,c){c=c||{},a=this._parseTimeOrLabel(a),c.startAt={onComplete:this.seek,onCompleteParams:[a],callbackScope:this},c.immediateRender=c.immediateRender!==!1;var d=this.tweenTo(b,c);return d.isFromTo=1,d.duration(Math.abs(d.vars.time-a)/this._timeScale||.001)},k.render=function(a,b,c){this._gc&&this._enabled(!0,!1);var d,f,i,j,k,l,m,n,o=this._time,p=this._dirty?this.totalDuration():this._totalDuration,q=this._duration,r=this._totalTime,s=this._startTime,t=this._timeScale,u=this._rawPrevTime,v=this._paused,w=this._cycle;if(o!==this._time&&(a+=this._time-o),a>=p-1e-7&&a>=0)this._locked||(this._totalTime=p,this._cycle=this._repeat),this._reversed||this._hasPausedChild()||(f=!0,j="onComplete",k=!!this._timeline.autoRemoveChildren,0===this._duration&&(0>=a&&a>=-1e-7||0>u||u===e)&&u!==a&&this._first&&(k=!0,u>e&&(j="onReverseComplete"))),this._rawPrevTime=this._duration||!b||a||this._rawPrevTime===a?a:e,this._yoyo&&0!==(1&this._cycle)?this._time=a=0:(this._time=q,a=q+1e-4);else if(1e-7>a)if(this._locked||(this._totalTime=this._cycle=0),this._time=0,(0!==o||0===q&&u!==e&&(u>0||0>a&&u>=0)&&!this._locked)&&(j="onReverseComplete",f=this._reversed),0>a)this._active=!1,this._timeline.autoRemoveChildren&&this._reversed?(k=f=!0,j="onReverseComplete"):u>=0&&this._first&&(k=!0),this._rawPrevTime=a;else{if(this._rawPrevTime=q||!b||a||this._rawPrevTime===a?a:e,0===a&&f)for(d=this._first;d&&0===d._startTime;)d._duration||(f=!1),d=d._next;a=0,this._initted||(k=!0)}else if(0===q&&0>u&&(k=!0),this._time=this._rawPrevTime=a,this._locked||(this._totalTime=a,0!==this._repeat&&(l=q+this._repeatDelay,this._cycle=this._totalTime/l>>0,0!==this._cycle&&this._cycle===this._totalTime/l&&a>=r&&this._cycle--,this._time=this._totalTime-this._cycle*l,this._yoyo&&0!==(1&this._cycle)&&(this._time=q-this._time),this._time>q?(this._time=q,a=q+1e-4):this._time<0?this._time=a=0:a=this._time)),this._hasPause&&!this._forcingPlayhead&&!b){if(a=this._time,a>=o||this._repeat&&w!==this._cycle)for(d=this._first;d&&d._startTime<=a&&!m;)d._duration||"isPause"!==d.data||d.ratio||0===d._startTime&&0===this._rawPrevTime||(m=d),d=d._next;else for(d=this._last;d&&d._startTime>=a&&!m;)d._duration||"isPause"===d.data&&d._rawPrevTime>0&&(m=d),d=d._prev;m&&m._startTime<q&&(this._time=a=m._startTime,this._totalTime=a+this._cycle*(this._totalDuration+this._repeatDelay))}if(this._cycle!==w&&!this._locked){var x=this._yoyo&&0!==(1&w),y=x===(this._yoyo&&0!==(1&this._cycle)),z=this._totalTime,A=this._cycle,B=this._rawPrevTime,C=this._time;if(this._totalTime=w*q,this._cycle<w?x=!x:this._totalTime+=q,this._time=o,this._rawPrevTime=0===q?u-1e-4:u,this._cycle=w,this._locked=!0,o=x?0:q,this.render(o,b,0===q),b||this._gc||this.vars.onRepeat&&(this._cycle=A,this._locked=!1,this._callback("onRepeat")),o!==this._time)return;if(y&&(this._cycle=w,this._locked=!0,o=x?q+1e-4:-1e-4,this.render(o,!0,!1)),this._locked=!1,this._paused&&!v)return;this._time=C,this._totalTime=z,this._cycle=A,this._rawPrevTime=B}if(!(this._time!==o&&this._first||c||k||m))return void(r!==this._totalTime&&this._onUpdate&&(b||this._callback("onUpdate")));if(this._initted||(this._initted=!0),this._active||!this._paused&&this._totalTime!==r&&a>0&&(this._active=!0),0===r&&this.vars.onStart&&(0===this._totalTime&&this._totalDuration||b||this._callback("onStart")),n=this._time,n>=o)for(d=this._first;d&&(i=d._next,n===this._time&&(!this._paused||v));)(d._active||d._startTime<=this._time&&!d._paused&&!d._gc)&&(m===d&&this.pause(),d._reversed?d.render((d._dirty?d.totalDuration():d._totalDuration)-(a-d._startTime)*d._timeScale,b,c):d.render((a-d._startTime)*d._timeScale,b,c)),d=i;else for(d=this._last;d&&(i=d._prev,n===this._time&&(!this._paused||v));){if(d._active||d._startTime<=o&&!d._paused&&!d._gc){if(m===d){for(m=d._prev;m&&m.endTime()>this._time;)m.render(m._reversed?m.totalDuration()-(a-m._startTime)*m._timeScale:(a-m._startTime)*m._timeScale,b,c),m=m._prev;m=null,this.pause()}d._reversed?d.render((d._dirty?d.totalDuration():d._totalDuration)-(a-d._startTime)*d._timeScale,b,c):d.render((a-d._startTime)*d._timeScale,b,c)}d=i}this._onUpdate&&(b||(g.length&&h(),this._callback("onUpdate"))),j&&(this._locked||this._gc||(s===this._startTime||t!==this._timeScale)&&(0===this._time||p>=this.totalDuration())&&(f&&(g.length&&h(),this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!b&&this.vars[j]&&this._callback(j)))},k.getActive=function(a,b,c){null==a&&(a=!0),null==b&&(b=!0),null==c&&(c=!1);var d,e,f=[],g=this.getChildren(a,b,c),h=0,i=g.length;for(d=0;i>d;d++)e=g[d],e.isActive()&&(f[h++]=e);return f},k.getLabelAfter=function(a){a||0!==a&&(a=this._time);var b,c=this.getLabelsArray(),d=c.length;for(b=0;d>b;b++)if(c[b].time>a)return c[b].name;return null},k.getLabelBefore=function(a){null==a&&(a=this._time);for(var b=this.getLabelsArray(),c=b.length;--c>-1;)if(b[c].time<a)return b[c].name;return null},k.getLabelsArray=function(){var a,b=[],c=0;for(a in this._labels)b[c++]={time:this._labels[a],name:a};return b.sort(function(a,b){return a.time-b.time}),b},k.invalidate=function(){return this._locked=!1,a.prototype.invalidate.call(this)},k.progress=function(a,b){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&0!==(1&this._cycle)?1-a:a)+this._cycle*(this._duration+this._repeatDelay),b):this._time/this.duration()||0},k.totalProgress=function(a,b){return arguments.length?this.totalTime(this.totalDuration()*a,b):this._totalTime/this.totalDuration()||0},k.totalDuration=function(b){return arguments.length?-1!==this._repeat&&b?this.timeScale(this.totalDuration()/b):this:(this._dirty&&(a.prototype.totalDuration.call(this),this._totalDuration=-1===this._repeat?999999999999:this._duration*(this._repeat+1)+this._repeatDelay*this._repeat),this._totalDuration)},k.time=function(a,b){return arguments.length?(this._dirty&&this.totalDuration(),a>this._duration&&(a=this._duration),this._yoyo&&0!==(1&this._cycle)?a=this._duration-a+this._cycle*(this._duration+this._repeatDelay):0!==this._repeat&&(a+=this._cycle*(this._duration+this._repeatDelay)),this.totalTime(a,b)):this._time},k.repeat=function(a){return arguments.length?(this._repeat=a,this._uncache(!0)):this._repeat},k.repeatDelay=function(a){return arguments.length?(this._repeatDelay=a,this._uncache(!0)):this._repeatDelay},k.yoyo=function(a){return arguments.length?(this._yoyo=a,this):this._yoyo},k.currentLabel=function(a){return arguments.length?this.seek(a,!0):this.getLabelBefore(this._time+1e-8
vendor: 3,486 bytes, lines 5173-5174
5173)},d},!0),function(){var a=180/Math.PI,b=[],c=[],d=[],e={},f=_gsScope._gsDefine.globals,g=function(a,b,c,d){c===d&&(c=d-(d-b)/1e6),a===b&&(b=a+(c-a)/1e6),this.a=a,this.b=b,this.c=c,this.d=d,this.da=d-a,this.ca=c-a,this.ba=b-a},h=",x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,",i=function(a,b,c,d){var e={a:a},f={},g={},h={c:d},i=(a+b)/2,j=(b+c)/2,k=(c+d)/2,l=(i+j)/2,m=(j+k)/2,n=(m-l)/8;return e.b=i+(a-i)/4,f.b=l+n,e.c=f.a=(e.b+f.b)/2,f.c=g.a=(l+m)/2,g.b=m-n,h.b=k+(d-k)/4,g.c=h.a=(g.b+h.b)/2,[e,f,g,h]},j=function(a,e,f,g,h){var j,k,l,m,n,o,p,q,r,s,t,u,v,w=a.length-1,x=0,y=a[0].a;for(j=0;w>j;j++)n=a[x],k=n.a,l=n.d,m=a[x+1].d,h?(t=b[j],u=c[j],v=(u+t)*e*.25/(g?.5:d[j]||.5),o=l-(l-k)*(g?.5*e:0!==t?v/t:0),p=l+(m-l)*(g?.5*e:0!==u?v/u:0),q=l-(o+((p-o)*(3*t/(t+u)+.5)/4||0))):(o=l-(l-k)*e*.5,p=l+(m-l)*e*.5,q=l-(o+p)/2),o+=q,p+=q,n.c=r=o,0!==j?n.b=y:n.b=y=n.a+.6*(n.c-n.a),n.da=l-k,n.ca=r-k,n.ba=y-k,f?(s=i(k,y,r,l),a.splice(x,1,s[0],s[1],s[2],s[3]),x+=4):x++,y=p;n=a[x],n.b=y,n.c=y+.4*(n.d-y),n.da=n.d-n.a,n.ca=n.c-n.a,n.ba=y-n.a,f&&(s=i(n.a,y,n.c,n.d),a.splice(x,1,s[0],s[1],s[2],s[3]))},k=function(a,d,e,f){var h,i,j,k,l,m,n=[];if(f)for(a=[f].concat(a),i=a.length;--i>-1;)"string"==typeof(m=a[i][d])&&"="===m.charAt(1)&&(a[i][d]=f[d]+Number(m.charAt(0)+m.substr(2)));if(h=a.length-2,0>h)return n[0]=new g(a[0][d],0,0,a[0][d]),n;for(i=0;h>i;i++)j=a[i][d],k=a[i+1][d],n[i]=new g(j,0,0,k),e&&(l=a[i+2][d],b[i]=(b[i]||0)+(k-j)*(k-j),c[i]=(c[i]||0)+(l-k)*(l-k));return n[i]=new g(a[i][d],0,0,a[i+1][d]),n},l=function(a,f,g,i,l,m){var n,o,p,q,r,s,t,u,v={},w=[],x=m||a[0];l="string"==typeof l?","+l+",":h,null==f&&(f=1);for(o in a[0])w.push(o);if(a.length>1){for(u=a[a.length-1],t=!0,n=w.length;--n>-1;)if(o=w[n],Math.abs(x[o]-u[o])>.05){t=!1;break}t&&(a=a.concat(),m&&a.unshift(m),a.push(a[1]),m=a[a.length-3])}for(b.length=c.length=d.length=0,n=w.length;--n>-1;)o=w[n],e[o]=-1!==l.indexOf(","+o+","),v[o]=k(a,o,e[o],m);for(n=b.length;--n>-1;)b[n]=Math.sqrt(b[n]),c[n]=Math.sqrt(c[n]);if(!i){for(n=w.length;--n>-1;)if(e[o])for(p=v[w[n]],
5174s=p.length-1,q=0;s>q;q++)r=p[q+1].da/c[q]+p[q].da/b[q]||0,d[q]=(d[q]||0)+r*r;for(n=d.length;--n>-1;)d[n]=Math.sqrt(d[n])}for(n=w.length,q=g?4:1;--n>-1;)o=w[n],p=v[o],j(p,f,g,i,e[o]),t&&(p.splice(0,q),p.splice(p.length-q,q));return v},m=function(a,b,c){b=b||"soft";var d,e,f,h,i,j,k,l,m,n,o,p={},q="cubic"===b?3:2,r="soft"===b,s=[];if(r&&c&&(a=[c].concat(a)),null==a||a.length<q+1)throw"invalid Bezier data";for(m in a[0])s.push(m);for(j=s.length;--j>-1;){for(m=s[j],p[m]=i=[],n=0,l=a.length,k=0;l>k;k++)d=null==c?a[k][m]:"string"==typeof(o=a[k][m])&&"="===o.charAt(1)?c[m]+Number(o.charAt(0)+o.substr(2)):Number(o),r&&k>1&&l-1>k&&(i[n++]=(d+i[n-2])/2),i[n++]=d;for(l=n-q+1,n=0,k=0;l>k;k+=q)d=i[k],e=i[k+1],f=i[k+2],h=2===q?0:i[k+3],i[n++]=o=3===q?new g(d,e,f,h):new g(d,(2*e+d)/3,(2*e+f)/3,f);i.length=n}return p},n=function(a,b,c){for(var d,e,f,g,h,i,j,k,l,m,n,o=1/c,p=a.length;--p>-1;)for(m=a[p],f=m.a,g=m.d-f,h=m.c-f,i=m.b-f,d=e=0,k=1;c>=k;k++)j=o*k,l=1-j,d=e-(e=(j*j*g+3*l*(j*h+l*i))*j),n=p*c+k-1,b[n]=(b[n]||0)+d*d},o=function(a,b){b=b>>0||6;var c,d,e,f,g=[],h=[],i=0,j=0,k=b-1,l=[],m=[];for(c in a)n(a[c],g,b);for(e=g.length,d=0;e>d;d++)i+=Math.sqrt(g[d]),f=d%b,m[f]=i,f===k&&(j+=i,f=d/b>>0,l[f]=m,h[f]=j,i=0,m=[]);return{length:j,lengths:h,segments:l}},p=_gsScope._gsDefine.plugin({propName:"bezier",priority:-1,version:"1.3.
51748",API:2,global:!0,init:function(a,b,c){this._target=a,b instanceof Array&&(b={values:b}),this._func={},this._mod={},this._props=[],this._timeRes=null==b.timeResolution?6:parseInt(b.timeResolution,10);var d,e,f,g,h,i=b.values||[],j={},k=i[0],n=b.autoRotate||c.vars.orientToBezier;this._autoRotate=n?n instanceof Array?n:[["x","y","rotation",n===!0?0:Number(n)||0]]:null;for(d in k)this._props.push(d);for(f=this._props.length;--f>-1;)d=this._props[f],this._overwriteProps.push(d),e=this._func[d]="function"==typeof a[d],j[d]=e?a[d.indexOf("set")||"function"!=typeof a["get"+d.substr(3)]?d:"get"+d.substr(3)]():parseFloat(a[d]),h||j[d]!==i[0][d]&&(h=j);if(this._beziers="cubic"!==b.type&&"quadratic"!==b.type&&"soft"!==b.type?l(i,isNaN(b.curviness)?1:b.curviness,!1,"thruBasic"===b.type,b.correlate,h):m(i,b.type,j),this._segCount=this._beziers[d].length,this._timeRes){var p=o(this._beziers,this._timeRes);this._length=p.length,this._lengths=p.lengths,this._segments=p.segments,this._l1=this._li=this._s1=this._si=0,this._l2=this._lengths[0],this._curSeg=this._segments[0],this._s2=this._curSeg[0],this._prec=1/this._curSeg.length}if(n=this._autoRotate)for(this._initialRotations=[],n[0]instanceof Array||(this._autoRotate=n=[n]),f=n.length;--f>-1;){for(g=0;3>g;g++)d=n[f][g],this._func[d]="function"==typeof a[d]?a[d.indexOf("set")||"function"!=typeof a["get"+d.substr(3)]?d:"get"+d.substr(3)]:!1;d=n[f][2],this._initialRotations[f]=(this._func[d]?this._func[d].call(this._target):this._target[d])||0,this._overwriteProps.push(d)}return this._startRatio=c.vars.runBackwards?1:0,!0},set:function(b){var c,d,e,f,g,h,i,j,k,l,m=this._segCount,n=this._func,o=this._target,p=b!==this._startRatio;if(this._timeRes){if(k=this._lengths,l=this._curSeg,b*=this._length,e=this._li,b>this._l2&&m-1>e){for(j=m-1;j>e&&(this._l2=k[++e])<=b;);this._l1=k[e-1],this._li=e,this._curSeg=l=this._segments[e],this._s2=l[this._s1=this._si=0]}else if(b<this._l1&&e>0){for(;e>0&&(this._l1=k[--e])>=b;);0===e&&b<this._l1?this._l1=0:e++,this._l2=k[e],this._li=e,this._curSeg=l=this._segments[e],this._s1=l[(this._si=l.length-1)-1]||0,this._s2=l[this._si]}if(c=e,b-=this._l1,e=this._si,b>this._s2&&e<l.length-1){for(j=l.length-1;j>e&&(this._s2=l[++e])<=b;);this._s1=l[e-1],this._si=e}else if(b<this._s1&&e>0){for(;e>0&&(this._s1=l[--e])>=b;);0===e&&b<this._s1?this._s1=0:e++,this._s2=l[e],this._si=e}h=(e+(b-this._s1)/(this._s2-this._s1))*this._prec||0}else c=0>b?0:b>=1?m-1:m*b>>0,h=(b-c*(1/m))*m;for(d=1-h,e=this._props.length;--e>-1;)f=this._props[e],g=this._beziers[f][c],i=(h*h*g.da+3*d*(h*g.ca+d*g.ba))*h+g.a,this._mod[f]&&(i=this._mod[f](i,o)),n[f]?o[f](i):o[f]=i;if(this._autoRotate){var q,r,s,t,u,v,w,x=this._autoRotate;for(e=x.length;--e>-1;)f=x[e][2],v=x[e][3]||0,w=x[e][4]===!0?1:a,g=this._beziers[x[e][0]],q=this._beziers[x[e][1]],g&&q&&(g=g[c],q=q[c],r=g.a+(g.b-g.a)*h,t=g.b+(g.c-g.b)*h,r+=(t-r)*h,t+=(g.c+(g.d-g.c)*h-t)*h,s=q.a+(q.b-q.a)*h,u=q.b+(q.c-q.b)*h,s+=(u-s)*h,u+=(q.c+(q.d-q.c)*h-u)*h,i=p?Math.atan2(u-s,t-r)*w+v:this._initialRotations[e],this._mod[f]&&(i=this._mod[f](i,o)),n[f]?o[f](i):o[f]=i)}}}),q=p.prototype;p.bezierThrough=l,p.cubicToQuadratic=i,p._autoCSS=!0,p.quadraticToCubic=function(a,b,c){return new g(a,(2*b+a)/3,(2*b+c)/3,c)},p._cssRegister=function(){var a=f.CSSPlugin;if(a){var b=a._internals,c=b._parseToProxy,d=b._setPluginRatio,e=b.CSSPropTween;b._registerComplexSpecialProp("bezier",{parser:function(a,b,f,g,h,i){b instanceof Array&&(b={values:b}),i=new p;var j,k,l,m=b.values,n=m.length-1,o=[],q={};if(0>n)return h;for(j=0;n>=j;j++)l=c(a,m[j],g,h,i,n!==j),o[j]=l.end;for(k in b)q[k]=b[k];return q.values=o,h=new e(a,"bezier",0,0,l.pt,2),h.data=l,h.plugin=i,h.setRatio=d,0===q.autoRotate&&(q.autoRotate=!0),!q.autoRotate||q.autoRotate instanceof Array||(j=q.autoRotate===!0?0:Number(q.autoRotate),q.autoRotate=null!=l.end.left?[["left","top","rotation",j,!1]]:null!=l.end.x?[["x","y","rotation",j,!1]]:!1),q.autoRotate&&(g._transform||g._enableTransforms(!1),l.autoRotate=g._target._gsTransform,l.proxy.rotation=l.autoRotate.rotation||0,g._overwriteProps.push("rotation")),i._onInitTween(l.proxy,q,g._tween),h}})}},q._mod=function(a){for(var b,c=this._overwriteProps,d=c.length;--d>-1;)b=a[c[d]],b&&"function"==typeof b&&(this._mod[c[d]]=b)},q._kill=function(a){var b,c,d=this._props;for(b in this._beziers)if(b in a)for(delete this._beziers[b],delete this._func[b],c=d.length;--c>-1;)d[c]===b&&d.splice(c,1);if(d=this._autoRotate)for(c=d.length;--c>-1;)a[d[c][2]]&&d.splice(c,1);return this._super._kill.call(this,a)}}(),_gsScope._gsDefine("plugins.CSSPlugin",["plugins.TweenPlugin","TweenLite"],function(a,b){var c,d,e,f,g=function(){a.call(this,"css"),this._overwriteProps.length=0,this.setRatio=g.prototype.setRatio},h=_gsScope._gsDefine.globals,i={},j=g.prototype=new a("css");j.constructor=g,g.version="1.20.4",g.API=2,g.defaultTransformPerspective=0,g.defaultSkewType="compensated",g.defaultSmoothOrigin=!0,j="px",g.suffixMap={top:j,right:j,bottom:j,left:j,width:j,height:j,fontSize:j,padding:j,margin:j,perspective:j,lineHeight:""};var k,l,m,n,o,p,q,r,s=/(?:\-|\.|\b)(\d|\.|e\-)+/g,t=/(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,u=/(?:\+=|\
vendor: 26,074 bytes, lines 5174-5175
5174-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,v=/(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,w=/(?:\d|\-|\+|=|#|\.)*/g,x=/opacity *= *([^)]*)/i,y=/opacity:([^;]*)/i,z=/alpha\(opacity *=.+?\)/i,A=/^(rgb|hsl)/,B=/([A-Z])/g,C=/-([a-z])/gi,D=/(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,E=function(a,b){return b.toUpperCase()},F=/(?:Left|Right|Width)/i,G=/(M11|M12|M21|M22)=[\d\-\.e]+/gi,H=/progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,I=/,(?=[^\)]*(?:\(|$))/gi,J=/[\s,\(]/i,K=Math.PI/180,L=180/Math.PI,M={},N={style:{}},O=_gsScope.document||{createElement:function(){return N}},P=function(a,b){return O.createElementNS?O.createElementNS(b||"http://www.w3.org/1999/xhtml",a):O.createElement(a)},Q=P("div"),R=P("img"),S=g._internals={_specialProps:i},T=(_gsScope.navigator||{}).userAgent||"",U=function(){var a=T.indexOf("Android"),b=P("a");return m=-1!==T.indexOf("Safari")&&-1===T.indexOf("Chrome")&&(-1===a||parseFloat(T.substr(a+8,2))>3),o=m&&parseFloat(T.substr(T.indexOf("Version/")+8,2))<6,n=-1!==T.indexOf("Firefox"),(/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(T)||/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(T))&&(p=parseFloat(RegExp.$1)),b?(b.style.cssText="top:1px;opacity:.55;",/^0.55/.test(b.style.opacity)):!1}(),V=function(a){return x.test("string"==typeof a?a:(a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100:1},W=function(a){_gsScope.console&&console.log(a)},X="",Y="",Z=function(a,b){b=b||Q;var c,d,e=b.style;if(void 0!==e[a])return a;for(a=a.charAt(0).toUpperCase()+a.substr(1),c=["O","Moz","ms","Ms","Webkit"],d=5;--d>-1&&void 0===e[c[d]+a];);return d>=0?(Y=3===d?"ms":c[d],X="-"+Y.toLowerCase()+"-",Y+a):null},$=O.defaultView?O.defaultView.getComputedStyle:function(){},_=g.getStyle=function(a,b,c,d,e){var f;return U||"opacity"!==b?(!d&&a.style[b]?f=a.style[b]:(c=c||$(a))?f=c[b]||c.getPropertyValue(b)||c.getPropertyValue(b.replace(B,"-$1").toLowerCase()):a.currentStyle&&(f=a.currentStyle[b]),null==e||f&&"none"!==f&&"auto"!==f&&"auto auto"!==f?f:e):V(a)},aa=S.convertToPixels=function(a,c,d,e,f){if("px"===e||!e&&"lineHeight"!==c)return d;if("auto"===e||!d)return 0;var h,i,j,k=F.test(c),l=a,m=Q.style,n=0>d,o=1===d;if(n&&(d=-d),o&&(d*=100),"lineHeight"!==c||e)if("%"===e&&-1!==c.indexOf("border"))h=d/100*(k?a.clientWidth:a.clientHeight);else{if(m.cssText="border:0 solid red;position:"+_(a,"position")+";line-height:0;","%"!==e&&l.appendChild&&"v"!==e.charAt(0)&&"rem"!==e)m[k?"borderLeftWidth":"borderTopWidth"]=d+e;else{if(l=a.parentNode||O.body,-1!==_(l,"display").indexOf("flex")&&(m.position="absolute"),i=l._gsCache,j=b.ticker.frame,i&&k&&i.time===j)return i.width*d/100;m[k?"width":"height"]=d+e}l.appendChild(Q),h=parseFloat(Q[k?"offsetWidth":"offsetHeight"]),l.removeChild(Q),k&&"%"===e&&g.cacheWidths!==!1&&(i=l._gsCache=l._gsCache||{},i.time=j,i.width=h/d*100),0!==h||f||(h=aa(a,c,d,e,!0))}else i=$(a).lineHeight,a.style.lineHeight=d,h=parseFloat($(a).lineHeight),a.style.lineHeight=i;return o&&(h/=100),n?-h:h},ba=S.calculateOffset=function(a,b,c){if("absolute"!==_(a,"position",c))return 0;var d="left"===b?"Left":"Top",e=_(a,"margin"+d,c);return a["offset"+d]-(aa(a,b,parseFloat(e),e.replace(w,""))||0)},ca=function(a,b){var c,d,e,f={};if(b=b||$(a,null))if(c=b.length)for(;--c>-1;)e=b[c],(-1===e.indexOf("-transform")||Da===e)&&(f[e.replace(C,E)]=b.getPropertyValue(e));else for(c in b)(-1===c.indexOf("Transform")||Ca===c)&&(f[c]=b[c]);else if(b=a.currentStyle||a.style)for(c in b)"string"==typeof c&&void 0===f[c]&&(f[c.replace(C,E)]=b[c]);return U||(f.opacity=V(a)),d=Ra(a,b,!1),f.rotation=d.rotation,f.skewX=d.skewX,f.scaleX=d.scaleX,f.scaleY=d.scaleY,f.x=d.x,f.y=d.y,Fa&&(f.z=d.z,f.rotationX=d.rotationX,f.rotationY=d.rotationY,f.scaleZ=d.scaleZ),f.filters&&delete f.filters,f},da=function(a,b,c,d,e){var f,g,h,i={},j=a.style;for(g in c)"cssText"!==g&&"length"!==g&&isNaN(g)&&(b[g]!==(f=c[g])||e&&e[g])&&-1===g.indexOf("Origin")&&("number"==typeof f||"string"==typeof f)&&(i[g]="auto"!==f||"left"!==g&&"top"!==g?""!==f&&"auto"!==f&&"none"!==f||"string"!=typeof b[g]||""===b[g].replace(v,"")?f:0:ba(a,g),void 0!==j[g]&&(h=new sa(j,g,j[g],h)));if(d)for(g in d)"className"!==g&&(i[g]=d[g]);return{difs:i,firstMPT:h}},ea={width:["Left","Right"],height:["Top","Bottom"]},fa=["marginLeft","marginRight","marginTop","marginBottom"],ga=function(a,b,c){if("svg"===(a.nodeName+"").toLowerCase())return(c||$(a))[b]||0;if(a.getCTM&&Oa(a))return a.getBBox()[b]||0;var d=parseFloat("width"===b?a.offsetWidth:a.offsetHeight),e=ea[b],f=e.length;for(c=c||$(a,null);--f>-1;)d-=parseFloat(_(a,"padding"+e[f],c,!0))||0,d-=parseFloat(_(a,"border"+e[f]+"Width",c,!0))||0;return d},ha=function(a,b){if("contain"===a||"auto"===a||"auto auto"===a)return a+" ";(null==a||""===a)&&(a="0 0");var c,d=a.split(" "),e=-1!==a.indexOf("left")?"0%":-1!==a.indexOf("right")?"100%":d[0],f=-1!==a.indexOf("top")?"0%":-1!==a.indexOf("bottom")?"100%":d[1];if(d.length>3&&!b){for(d=a.split(", ").join(",").split(","),a=[],c=0;c<d.length;c++)a.push(ha(d[c]));return a.join(",")}return null==f?f="center"===e?"50%":"0":"center"===f&&(f="50%"),("center"===e||isNaN(parseFloat(e))&&-1===(e+"").indexOf("="))&&(e="50%"),a=e+" "+f+(d.length>2?" "+d[2]:""),b&&(b.oxp=-1!==e.indexOf("%"),b.oyp=-1!==f.indexOf("%"),b.oxr="="===e.charAt(1),b.oyr="="===f.charAt(1),b.ox=parseFloat(e.replace(v,"")),b.oy=parseFloat(f.replace(v,"")),b.v=a),b||a},ia=function(a,b){return"function"==typeof a&&(a=a(r,q)),"string"==typeof a&&"="===a.charAt(1)?parseInt(a.charAt(0)+"1",10)*parseFloat(a.substr(2)):parseFloat(a)-parseFloat(b)||0},ja=function(a,b){return"function"==typeof a&&(a=a(r,q)),null==a?b:"string"==typeof a&&"="===a.charAt(1)?parseInt(a.charAt(0)+"1",10)*parseFloat(a.substr(2))+b:parseFloat(a)||0},ka=function(a,b,c,d){var e,f,g,h,i,j=1e-6;return"function"==typeof a&&(a=a(r,q)),null==a?h=b:"number"==typeof a?h=a:(e=360,f=a.split("_"),i="="===a.charAt(1),g=(i?parseInt(a.charAt(0)+"1",10)*parseFloat(f[0].substr(2)):parseFloat(f[0]))*(-1===a.indexOf("rad")?1:L)-(i?0:b),f.length&&(d&&(d[c]=b+g),-1!==a.indexOf("short")&&(g%=e,g!==g%(e/2)&&(g=0>g?g+e:g-e)),-1!==a.indexOf("_cw")&&0>g?g=(g+9999999999*e)%e-(g/e|0)*e:-1!==a.indexOf("ccw")&&g>0&&(g=(g-9999999999*e)%e-(g/e|0)*e)),h=b+g),j>h&&h>-j&&(h=0),h},la={aqua:[0,255,255],lime:[0,255,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,255],navy:[0,0,128],white:[255,255,255],fuchsia:[255,0,255],olive:[128,128,0],yellow:[255,255,0],orange:[255,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[255,0,0],pink:[255,192,203],cyan:[0,255,255],transparent:[255,255,255,0]},ma=function(a,b,c){return a=0>a?a+1:a>1?a-1:a,255*(1>6*a?b+(c-b)*a*6:.5>a?c:2>3*a?b+(c-b)*(2/3-a)*6:b)+.5|0},na=g.parseColor=function(a,b){var c,d,e,f,g,h,i,j,k,l,m;if(a)if("number"==typeof a)c=[a>>16,a>>8&255,255&a];else{if(","===a.charAt(a.length-1)&&(a=a.substr(0,a.length-1)),la[a])c=la[a];else if("#"===a.charAt(0))4===a.length&&(d=a.charAt(1),e=a.charAt(2),f=a.charAt(3),a="#"+d+d+e+e+f+f),a=parseInt(a.substr(1),16),c=[a>>16,a>>8&255,255&a];else if("hsl"===a.substr(0,3))if(c=m=a.match(s),b){if(-1!==a.indexOf("="))return a.match(t)}else g=Number(c[0])%360/360,h=Number(c[1])/100,i=Number(c[2])/100,e=.5>=i?i*(h+1):i+h-i*h,d=2*i-e,c.length>3&&(c[3]=Number(c[3])),c[0]=ma(g+1/3,d,e),c[1]=ma(g,d,e),c[2]=ma(g-1/3,d,e);else c=a.match(s)||la.transparent;c[0]=Number(c[0]),c[1]=Number(c[1]),c[2]=Number(c[2]),c.length>3&&(c[3]=Number(c[3]))}else c=la.black;return b&&!m&&(d=c[0]/255,e=c[1]/255,f=c[2]/255,j=Math.max(d,e,f),k=Math.min(d,e,f),i=(j+k)/2,j===k?g=h=0:(l=j-k,h=i>.5?l/(2-j-k):l/(j+k),g=j===d?(e-f)/l+(f>e?6:0):j===e?(f-d)/l+2:(d-e)/l+4,g*=60),c[0]=g+.5|0,c[1]=100*h+.5|0,c[2]=100*i+.5|0),c},oa=function(a,b){var c,d,e,f=a.match(pa)||[],g=0,h="";if(!f.length)return a;for(c=0;c<f.length;c++)d=f[c],e=a.substr(g,a.indexOf(d,g)-g),g+=e.length+d.length,d=na(d,b),3===d.length&&d.push(1),h+=e+(b?"hsla("+d[0]+","+d[1]+"%,"+d[2]+"%,"+d[3]:"rgba("+d.join(","))+")";return h+a.substr(g)},pa="(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3}){1,2}\\b";for(j in la)pa+="|"+j+"\\b";pa=new RegExp(pa+")","gi"),g.colorStringFilter=function(a){var b,c=a[0]+" "+a[1];pa.test(c)&&(b=-1!==c.indexOf("hsl(")||-1!==c.indexOf("hsla("),a[0]=oa(a[0],b),a[1]=oa(a[1],b)),pa.lastIndex=0},b.defaultStringFilter||(b.defaultStringFilter=g.colorStringFilter);var qa=function(a,b,c,d){if(null==a)return function(a){return a};var e,f=b?(a.match(pa)||[""])[0]:"",g=a.split(f).join("").match(u)||[],h=a.substr(0,a.indexOf(g[0])),i=")"===a.charAt(a.length-1)?")":"",j=-1!==a.indexOf(" ")?" ":",",k=g.length,l=k>0?g[0].replace(s,""):"";return k?e=b?function(a){var b,m,n,o;if("number"==typeof a)a+=l;else if(d&&I.test(a)){for(o=a.replace(I,"|").split("|"),n=0;n<o.length;n++)o[n]=e(o[n]);return o.join(",")}if(b=(a.match(pa)||[f])[0],m=a.split(b).join("").match(u)||[],n=m.length,k>n--)for(;++n<k;)m[n]=c?m[(n-1)/2|0]:g[n];return h+m.join(j)+j+b+i+(-1!==a.indexOf("inset")?" inset":"")}:function(a){var b,f,m;if("number"==typeof a)a+=l;else if(d&&I.test(a)){for(f=a.replace(I,"|").split("|"),m=0;m<f.length;m++)f[m]=e(f[m]);return f.join(",")}if(b=a.match(u)||[],m=b.length,k>m--)for(;++m<k;)b[m]=c?b[(m-1)/2|0]:g[m];return h+b.join(j)+i}:function(a){return a}},ra=function(a){return a=a.split(","),function(b,c,d,e,f,g,h){var i,j=(c+"").split(" ");for(h={},i=0;4>i;i++)h[a[i]]=j[i]=j[i]||j[(i-1)/2>>0];return e.parse(b,h,f,g)}},sa=(S._setPluginRatio=function(a){this.plugin.setRatio(a);for(var b,c,d,e,f,g=this.data,h=g.proxy,i=g.firstMPT,j=1e-6;i;)b=h[i.v],i.r?b=Math.round(b):j>b&&b>-j&&(b=0),i.t[i.p]=b,i=i._next;if(g.autoRotate&&(g.autoRotate.rotation=g.mod?g.mod(h.rotation,this.t):h.rotation),1===a||0===a)for(i=g.firstMPT,f=1===a?"e":"b";i;){if(c=i.t,c.type){if(1===c.type){for(e=c.xs0+c.s+c.xs1,d=1;d<c.l;d++)e+=c["xn"+d]+c["xs"+(d+1)];c[f]=e}}else c[f]=c.s+c.xs0;i=i._next}},function(a,b,c,d,e){this.t=a,this.p=b,this.v=c,this.r=e,d&&(d._prev=this,this._next=d)}),ta=(S._parseToProxy=function(a,b,c,d,e,f){var g,h,i,j,k,l=d,m={},n={},o=c._transform,p=M;for(c._transform=null,M=b,d=k=c.parse(a,b,d,e),M=p,f&&(c._transform=o,l&&(l._prev=null,l._prev&&(l._prev._next=null)));d&&d!==l;){if(d.type<=1&&(h=d.p,n[h]=d.s+d.c,m[h]=d.s,f||(j=new sa(d,"s",h,j,d.r),d.c=0),1===d.type))for(g=d.l;--g>0;)i="xn"+g,h=d.p+"_"+i,n[h]=d.data[i],m[h]=d[i],f||(j=new sa(d,i,h,j,d.rxp[i]));d=d._next}return{proxy:m,end:n,firstMPT:j,pt:k}},S.CSSPropTween=function(a,b,d,e,g,h,i,j,k,l,m){this.t=a,this.p=b,this.s=d,this.c=e,this.n=i||b,a instanceof ta||f.push(this.n),this.r=j,this.type=h||0,k&&(this.pr=k,c=!0),this.b=void 0===l?d:l,this.e=void 0===m?d+e:m,g&&(this._next=g,g._prev=this)}),ua=function(a,b,c,d,e,f){var g=new ta(a,b,c,d-c,e,-1,f);return g.b=c,g.e=g.xs0=d,g},va=g.parseComplex=function(a,b,c,d,e,f,h,i,j,l){c=c||f||"","function"==typeof d&&(d=d(r,q)),h=new ta(a,b,0,0,h,l?2:1,null,!1,i,c,d),d+="",e&&pa.test(d+c)&&(d=[c,d],g.colorStringFilter(d),c=d[0],d=d[1]);var m,n,o,p,u,v,w,x,y,z,A,B,C,D=c.split(", ").join(",").split(" "),E=d.split(", ").join(",").split(" "),F=D.length,G=k!==!1;for((-1!==d.indexOf(",")||-1!==c.indexOf(","))&&(-1!==(d+c).indexOf("rgb")||-1!==(d+c).indexOf("hsl")?(D=D.join(" ").replace(I,", ").split(" "),E=E.join(" ").replace(I,", ").split(" ")):(D=D.join(" ").split(",").join(", ").split(" "),E=E.join(" ").split(",").join(", ").split(" ")),F=D.length),F!==E.length&&(D=(f||"").split(" "),F=D.length),h.plugin=j,h.setRatio=l,pa.lastIndex=0,m=0;F>m;m++)if(p=D[m],u=E[m],x=parseFloat(p),x||0===x)h.appendXtra("",x,ia(u,x),u.replace(t,""),G&&-1!==u.indexOf("px"),!0);else if(e&&pa.test(p))B=u.indexOf(")")+1,B=")"+(B?u.substr(B):""),C=-1!==u.indexOf("hsl")&&U,z=u,p=na(p,C),u=na(u,C),y=p.length+u.length>6,y&&!U&&0===u[3]?(h["xs"+h.l]+=h.l?" transparent":"transparent",h.e=h.e.split(E[m]).join("transparent")):(U||(y=!1),C?h.appendXtra(z.substr(0,z.indexOf("hsl"))+(y?"hsla(":"hsl("),p[0],ia(u[0],p[0]),",",!1,!0).appendXtra("",p[1],ia(u[1],p[1]),"%,",!1).appendXtra("",p[2],ia(u[2],p[2]),y?"%,":"%"+B,!1):h.appendXtra(z.substr(0,z.indexOf("rgb"))+(y?"rgba(":"rgb("),p[0],u[0]-p[0],",",!0,!0).appendXtra("",p[1],u[1]-p[1],",",!0).appendXtra("",p[2],u[2]-p[2],y?",":B,!0),y&&(p=p.length<4?1:p[3],h.appendXtra("",p,(u.length<4?1:u[3])-p,B,!1))),pa.lastIndex=0;else if(v=p.match(s)){if(w=u.match(t),!w||w.length!==v.length)return h;for(o=0,n=0;n<v.length;n++)A=v[n],z=p.indexOf(A,o),h.appendXtra(p.substr(o,z-o),Number(A),ia(w[n],A),"",G&&"px"===p.substr(z+A.length,2),0===n),o=z+A.length;h["xs"+h.l]+=p.substr(o)}else h["xs"+h.l]+=h.l||h["xs"+h.l]?" "+u:u;if(-1!==d.indexOf("=")&&h.data){for(B=h.xs0+h.data.s,m=1;m<h.l;m++)B+=h["xs"+m]+h.data["xn"+m];h.e=B+h["xs"+m]}return h.l||(h.type=-1,h.xs0=h.e),h.xfirst||h},wa=9;for(j=ta.prototype,j.l=j.pr=0;--wa>0;)j["xn"+wa]=0,j["xs"+wa]="";j.xs0="",j._next=j._prev=j.xfirst=j.data=j.plugin=j.setRatio=j.rxp=null,j.appendXtra=function(a,b,c,d,e,f){var g=this,h=g.l;return g["xs"+h]+=f&&(h||g["xs"+h])?" "+a:a||"",c||0===h||g.plugin?(g.l++,g.type=g.setRatio?2:1,g["xs"+g.l]=d||"",h>0?(g.data["xn"+h]=b+c,g.rxp["xn"+h]=e,g["xn"+h]=b,g.plugin||(g.xfirst=new ta(g,"xn"+h,b,c,g.xfirst||g,0,g.n,e,g.pr),g.xfirst.xs0=0),g):(g.data={s:b+c},g.rxp={},g.s=b,g.c=c,g.r=e,g)):(g["xs"+h]+=b+(d||""),g)};var xa=function(a,b){b=b||{},this.p=b.prefix?Z(a)||a:a,i[a]=i[this.p]=this,this.format=b.formatter||qa(b.defaultValue,b.color,b.collapsible,b.multi),b.parser&&(this.parse=b.parser),this.clrs=b.color,this.multi=b.multi,this.keyword=b.keyword,this.dflt=b.defaultValue,this.pr=b.priority||0},ya=S._registerComplexSpecialProp=function(a,b,c){"object"!=typeof b&&(b={parser:c});var d,e,f=a.split(","),g=b.defaultValue;for(c=c||[g],d=0;d<f.length;d++)b.prefix=0===d&&b.prefix,b.defaultValue=c[d]||g,e=new xa(f[d],b)},za=S._registerPluginProp=function(a){if(!i[a]){var b=a.charAt(0).toUpperCase()+a.substr(1)+"Plugin";ya(a,{parser:function(a,c,d,e,f,g,j){var k=h.com.greensock.plugins[b];return k?(k._cssRegister(),i[d].parse(a,c,d,e,f,g,j)):(W("Error: "+b+" js file not loaded."),f)}})}};j=xa.prototype,j.parseComplex=function(a,b,c,d,e,f){var g,h,i,j,k,l,m=this.keyword;if(this.multi&&(I.test(c)||I.test(b)?(h=b.replace(I,"|").split("|"),i=c.replace(I,"|").split("|")):m&&(h=[b],i=[c])),i){for(j=i.length>h.length?i.length:h.length,g=0;j>g;g++)b=h[g]=h[g]||this.dflt,c=i[g]=i[g]||this.dflt,m&&(k=b.indexOf(m),l=c.indexOf(m),k!==l&&(-1===l?h[g]=h[g].split(m).join(""):-1===k&&(h[g]+=" "+m)));b=h.join(", "),c=i.join(", ")}return va(a,this.p,b,c,this.clrs,this.dflt,d,this.pr,e,f)},j.parse=function(a,b,c,d,f,g,h){return this.parseComplex(a.style,this.format(_(a,this.p,e,!1,this.dflt)),this.format(b),f,g)},g.registerSpecialProp=function(a,b,c){ya(a,{parser:function(a,d,e,f,g,h,i){var j=new ta(a,e,0,0,g,2,e,!1,c);return j.plugin=h,j.setRatio=b(a,d,f._tween,e),j},priority:c})},g.useSVGTransformAttr=!0;var Aa,Ba="scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent".split(","),Ca=Z("transform"),Da=X+"transform",Ea=Z("transformOrigin"),Fa=null!==Z("perspective"),Ga=S.Transform=function(){this.perspective=parseFloat(g.defaultTransformPerspective)||0,this.force3D=g.defaultForce3D!==!1&&Fa?g.defaultForce3D||"auto":!1},Ha=_gsScope.SVGElement,Ia=function(a,b,c){var d,e=O.createElementNS("http://www.w3.org/2000/svg",a),f=/([a-z])([A-Z])/g;for(d in c)e.setAttributeNS(null,d.replace(f,"$1-$2").toLowerCase(),c[d]);return b.appendChild(e),e},Ja=O.documentElement||{},Ka=function(){var a,b,c,d=p||/Android/i.test(T)&&!_gsScope.chrome;return O.createElementNS&&!d&&(a=Ia("svg",Ja),b=Ia("rect",a,{width:100,height:50,x:100}),c=b.getBoundingClientRect().width,b.style[Ea]="50% 50%",b.style[Ca]="scaleX(0.5)",d=c===b.getBoundingClientRect().width&&!(n&&Fa),Ja.removeChild(a)),d}(),La=function(a,b,c,d,e,f){var h,i,j,k,l,m,n,o,p,q,r,s,t,u,v=a._gsTransform,w=Qa(a,!0);v&&(t=v.xOrigin,u=v.yOrigin),(!d||(h=d.split(" ")).length<2)&&(n=a.getBBox(),0===n.x&&0===n.y&&n.width+n.height===0&&(n={x:parseFloat(a.hasAttribute("x")?a.getAttribute("x"):a.hasAttribute("cx")?a.getAttribute("cx"):0)||0,y:parseFloat(a.hasAttribute("y")?a.getAttribute("y"):a.hasAttribute("cy")?a.getAttribute("cy"):0)||0,width:0,height:0}),b=ha(b).split(" "),h=[(-1!==b[0].indexOf("%")?parseFloat(b[0])/100*n.width:parseFloat(b[0]))+n.x,(-1!==b[1].indexOf("%")?parseFloat(b[1])/100*n.height:parseFloat(b[1]))+n.y]),c.xOrigin=k=parseFloat(h[0]),c.yOrigin=l=parseFloat(h[1]),d&&w!==Pa&&(m=w[0],n=w[1],o=w[2],p=w[3],q=w[4],r=w[5],s=m*p-n*o,s&&(i=k*(p/s)+l*(-o/s)+(o*r-p*q)/s,j=k*(-n/s)+l*(m/s)-(m*r-n*q)/s,k=c.xOrigin=h[0]=i,l=c.yOrigin=h[1]=j)),v&&(f&&(c.xOffset=v.xOffset,c.yOffset=v.yOffset,v=c),e||e!==!1&&g.defaultSmoothOrigin!==!1?(i=k-t,j=l-u,v.xOffset+=i*w[0]+j*w[2]-i,v.yOffset+=i*w[1]+j*w[3]-j):v.xOffset=v.yOffset=0),f||a.setAttribute("data-svg-origin",h.join(" "))},Ma=function(a){var b,c=P("svg",this.ownerSVGElement&&this.ownerSVGElement.getAttribute("xmlns")||"http://www.w3.org/2000/svg"),d=this.parentNode,e=this.nextSibling,f=this.style.cssText;if(Ja.appendChild(c),c.appendChild(this),this.style.display="block",a)try{b=this.getBBox(),this._originalGetBBox=this.getBBox,this.getBBox=Ma}catch(g){}else this._originalGetBBox&&(b=this._originalGetBBox());return e?d.insertBefore(this,e):d.appendChild(this),Ja.removeChild(c),this.style.cssText=f,b},Na=function(a){try{return a.getBBox()}catch(b){return Ma.call(a,!0)}},Oa=function(a){return!(!Ha||!a.getCTM||a.parentNode&&!a.ownerSVGElement||!Na(a))},Pa=[1,0,0,1,0,0],Qa=function(a,b){var c,d,e,f,g,h,i=a._gsTransform||new Ga,j=1e5,k=a.style;if(Ca?d=_(a,Da,null,!0):a.currentStyle&&(d=a.currentStyle.filter.match(G),d=d&&4===d.length?[d[0].substr(4),Number(d[2].substr(4)),Number(d[1].substr(4)),d[3].substr(4),i.x||0,i.y||0].join(","):""),c=!d||"none"===d||"matrix(1, 0, 0, 1, 0, 0)"===d,!Ca||!(h=!$(a)||"none"===$(a).display)&&a.parentNode||(h&&(f=k.display,k.display="block"),a.parentNode||(g=1,Ja.appendChild(a)),d=_(a,Da,null,!0),c=!d||"none"===d||"matrix(1, 0, 0, 1, 0, 0)"===d,f?k.display=f:h&&Va(k,"display"),g&&Ja.removeChild(a)),(i.svg||a.getCTM&&Oa(a))&&(c&&-1!==(k[Ca]+"").indexOf("matrix")&&(d=k[Ca],c=0),e=a.getAttribute("transform"),c&&e&&(e=a.transform.baseVal.consolidate().matrix,d="matrix("+e.a+","+e.b+","+e.c+","+e.d+","+e.e+","+e.f+")",c=0)),c)return Pa;for(e=(d||"").match(s)||[],wa=e.length;--wa>-1;)f=Number(e[wa]),e[wa]=(g=f-(f|=0))?(g*j+(0>g?-.5:.5)|0)/j+f:f;return b&&e.length>6?[e[0],e[1],e[4],e[5],e[12],e[13]]:e},Ra=S.getTransform=function(a,c,d,e){if(a._gsTransform&&d&&!e)return a._gsTransform;var f,h,i,j,k,l,m=d?a._gsTransform||new Ga:new Ga,n=m.scaleX<0,o=2e-5,p=1e5,q=Fa?parseFloat(_(a,Ea,c,!1,"0 0 0").split(" ")[2])||m.zOrigin||0:0,r=parseFloat(g.defaultTransformPerspective)||0;if(m.svg=!(!a.getCTM||!Oa(a)),m.svg&&(La(a,_(a,Ea,c,!1,"50% 50%")+"",m,a.getAttribute("data-svg-origin")),Aa=g.useSVGTransformAttr||Ka),f=Qa(a),f!==Pa){if(16===f.length){var s,t,u,v,w,x=f[0],y=f[1],z=f[2],A=f[3],B=f[4],C=f[5],D=f[6],E=f[7],F=f[8],G=f[9],H=f[10],I=f[12],J=f[13],K=f[14],M=f[11],N=Math.atan2(D,H);m.zOrigin&&(K=-m.zOrigin,I=F*K-f[12],J=G*K-f[13],K=H*K+m.zOrigin-f[14]),m.rotationX=N*L,N&&(v=Math.cos(-N),w=Math.sin(-N),s=B*v+F*w,t=C*v+G*w,u=D*v+H*w,F=B*-w+F*v,G=C*-w+G*v,H=D*-w+H*v,M=E*-w+M*v,B=s,C=t,D=u),N=Math.atan2(-z,H),m.rotationY=N*L,N&&(v=Math.cos(-N),w=Math.sin(-N),s=x*v-F*w,t=y*v-G*w,u=z*v-H*w,G=y*w+G*v,H=z*w+H*v,M=A*w+M*v,x=s,y=t,z=u),N=Math.atan2(y,x),m.rotation=N*L,N&&(v=Math.cos(N),w=Math.sin(N),s=x*v+y*w,t=B*v+C*w,u=F*v+G*w,y=y*v-x*w,C=C*v-B*w,G=G*v-F*w,x=s,B=t,F=u),m.rotationX&&Math.abs(m.rotationX)+Math.abs(m.rotation)>359.9&&(m.rotationX=m.rotation=0,m.rotationY=180-m.rotationY),N=Math.atan2(B,C),m.scaleX=(Math.sqrt(x*x+y*y+z*z)*p+.5|0)/p,m.scaleY=(Math.sqrt(C*C+D*D)*p+.5|0)/p,m.scaleZ=(Math.sqrt(F*F+G*G+H*H)*p+.5|0)/p,x/=m.scaleX,B/=m.scaleY,y/=m.scaleX,C/=m.scaleY,Math.abs(N)>o?(m.skewX=N*L,B=0,"simple"!==m.skewType&&(m.scaleY*=1/Math.cos(N))):m.skewX=0,m.perspective=M?1/(0>M?-M:M):0,m.x=I,m.y=J,m.z=K,m.svg&&(m.x-=m.xOrigin-(m.xOrigin*x-m.yOrigin*B),m.y-=m.yOrigin-(m.yOrigin*y-m.xOrigin*C))}else if(!Fa||e||!f.length||m.x!==f[4]||m.y!==f[5]||!m.rotationX&&!m.rotationY){var O=f.length>=6,P=O?f[0]:1,Q=f[1]||0,R=f[2]||0,S=O?f[3]:1;m.x=f[4]||0,m.y=f[5]||0,i=Math.sqrt(P*P+Q*Q),j=Math.sqrt(S*S+R*R),k=P||Q?Math.atan2(Q,P)*L:m.rotation||0,l=R||S?Math.atan2(R,S)*L+k:m.skewX||0,m.scaleX=i,m.scaleY=j,m.rotation=k,m.skewX=l,Fa&&(m.rotationX=m.rotationY=m.z=0,m.perspective=r,m.scaleZ=1),m.svg&&(m.x-=m.xOrigin-(m.xOrigin*P+m.yOrigin*R),m.y-=m.yOrigin-(m.xOrigin*Q+m.yOrigin*S))}Math.abs(m.skewX)>90&&Math.abs(m.skewX)<270&&(n?(m.scaleX*=-1,m.skewX+=m.rotation<=0?180:-180,m.rotation+=m.rotation<=0?180:-180):(m.scaleY*=-1,m.skewX+=m.skewX<=0?180:-180)),m.zOrigin=q;for(h in m)m[h]<o&&m[h]>-o&&(m[h]=0)}return d&&(a._gsTransform=m,m.svg&&(Aa&&a.style[Ca]?b.delayedCall(.001,function(){Va(a.style,Ca)}):!Aa&&a.getAttribute("transform")&&b.delayedCall(.001,function(){a.removeAttribute("transform")}))),m},Sa=function(a){var b,c,d=this.data,e=-d.rotation*K,f=e+d.skewX*K,g=1e5,h=(Math.cos(e)*d.scaleX*g|0)/g,i=(Math.sin(e)*d.scaleX*g|0)/g,j=(Math.sin(f)*-d.scaleY*g|0)/g,k=(Math.cos(f)*d.scaleY*g|0)/g,l=this.t.style,m=this.t.currentStyle;if(m){c=i,i=-j,j=-c,b=m.filter,l.filter="";var n,o,q=this.t.offsetWidth,r=this.t.offsetHeight,s="absolute"!==m.position,t="progid:DXImageTransform.Microsoft.Matrix(M11="+h+", M12="+i+", M21="+j+", M22="+k,u=d.x+q*d.xPercent/100,v=d.y+r*d.yPercent/100;if(null!=d.ox&&(n=(d.oxp?q*d.ox*.01:d.ox)-q/2,o=(d.oyp?r*d.oy*.01:d.oy)-r/2,u+=n-(n*h+o*i),v+=o-(n*j+o*k)),s?(n=q/2,o=r/2,t+=", Dx="+(n-(n*h+o*i)+u)+", Dy="+(o-(n*j+o*k)+v)+")"):t+=", sizingMethod='auto expand')",-1!==b.indexOf("DXImageTransform.Microsoft.Matrix(")?l.filter=b.replace(H,t):l.filter=t+" "+b,(0===a||1===a)&&1===h&&0===i&&0===j&&1===k&&(s&&-1===t.indexOf("Dx=0, Dy=0")||x.test(b)&&100!==parseFloat(RegExp.$1)||-1===b.indexOf(b.indexOf("Alpha"))&&l.removeAttribute("filter")),!s){var y,z,A,B=8>p?1:-1;for(n=d.ieOffsetX||0,o=d.ieOffsetY||0,d.ieOffsetX=Math.round((q-((0>h?-h:h)*q+(0>i?-i:i)*r))/2+u),d.ieOffsetY=Math.round((r-((0>k?-k:k)*r+(0>j?-j:j)*q))/2+v),wa=0;4>wa;wa++)z=fa[wa],y=m[z],c=-1!==y.indexOf("px")?parseFloat(y):aa(this.t,z,parseFloat(y),y.replace(w,""))||0,A=c!==d[z]?2>wa?-d.ieOffsetX:-d.ieOffsetY:2>wa?n-d.ieOffsetX:o-d.ieOffsetY,l[z]=(d[z]=Math.round(c-A*(0===wa||2===wa?1:B)))+"px"}}},Ta=S.set3DTransformRatio=S.setTransformRatio=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,o,p,q,r,s,t,u,v,w,x,y,z=this.data,A=this.t.style,B=z.rotation,C=z.rotationX,D=z.rotationY,E=z.scaleX,F=z.scaleY,G=z.scaleZ,H=z.x,I=z.y,J=z.z,L=z.svg,M=z.perspective,N=z.force3D,O=z.skewY,P=z.skewX;if(O&&(P+=O,B+=O),((1===a||0===a)&&"auto"===N&&(this.tween._totalTime===this.tween._totalDuration||!this.tween._totalTime)||!N)&&!J&&!M&&!D&&!C&&1===G||Aa&&L||!Fa)return void(B||P||L?(B*=K,x=P*K,y=1e5,c=Math.cos(B)*E,f=Math.sin(B)*E,d=Math.sin(B-x)*-F,g=Math.cos(B-x)*F,x&&"simple"===z.skewType&&(b=Math.tan(x-O*K),b=Math.sqrt(1+b*b),d*=b,g*=b,O&&(b=Math.tan(O*K),b=Math.sqrt(1+b*b),c*=b,f*=b)),L&&(H+=z.xOrigin-(z.xOrigin*c+z.yOrigin*d)+z.xOffset,I+=z.yOrigin-(z.xOrigin*f+z.yOrigin*g)+z.yOffset,Aa&&(z.xPercent||z.yPercent)&&(q=this.t.getBBox(),H+=.01*z.xPercent*q.width,I+=.01*z.yPercent*q.height),q=1e-6,q>H&&H>-q&&(H=0),q>I&&I>-q&&(I=0)),u=(c*y|0)/y+","+(f*y|0)/y+","+(d*y|0)/y+","+(g*y|0)/y+","+H+","+I+")",L&&Aa?this.t.setAttribute("transform","matrix("+u):A[Ca]=(z.xPercent||z.yPercent?"translate("+z.xPercent+"%,"+z.yPercent+"%) matrix(":"matrix(")+u):A[Ca]=(z.xPercent||z.yPercent?"translate("+z.xPercent+"%,"+z.yPercent+"%) matrix(":"matrix(")+E+",0,0,"+F+","+H+","+I+")");if(n&&(q=1e-4,q>E&&E>-q&&(E=G=2e-5),q>F&&F>-q&&(F=G=2e-5),!M||z.z||z.rotationX||z.rotationY||(M=0)),B||P)B*=K,r=c=Math.cos(B),s=f=Math.sin(B),P&&(B-=P*K,r=Math.cos(B),s=Math.sin(B),"simple"===z.skewType&&(b=Math.tan((P-O)*K),b=Math.sqrt(1+b*b),r*=b,s*=b,z.skewY&&(b=Math.tan(O*K),b=Math.sqrt(1+b*b),c*=b,f*=b))),d=-s,g=r;else{if(!(D||C||1!==G||M||L))return void(A[Ca]=(z.xPercent||z.yPercent?"translate("+z.xPercent+"%,"+z.yPercent+"%) translate3d(":"translate3d(")+H+"px,"+I+"px,"+J+"px)"+(1!==E||1!==F?" scale("+E+","+F+")":""));c=g=1,d=f=0}k=1,e=h=i=j=l=m=0,o=M?-1/M:0,p=z.zOrigin,q=1e-6,v=",",w="0",B=D*K,B&&(r=Math.cos(B),s=Math.sin(B),i=-s,l=o*-s,e=c*s,h=f*s,k=r,o*=r,c*=r,f*=r),B=C*K,B&&(r=Math.cos(B),s=Math.sin(B),b=d*r+e*s,t=g*r+h*s,j=k*s,m=o*s,e=d*-s+e*r,h=g*-s+h*r,k*=r,o*=r,d=b,g=t),1!==G&&(e*=G,h*=G,k*=G,o*=G),1!==F&&(d*=F,g*=F,j*=F,m*=F),1!==E&&(c*=E,f*=E,i*=E,l*=E),(p||L)&&(p&&(H+=e*-p,I+=h*-p,J+=k*-p+p),L&&(H+=z.xOrigin-(z.xOrigin*c+z.yOrigin*d)+z.xOffset,I+=z.yOrigin-(z.xOrigin*f+z.yOrigin*g)+z.yOffset),q>H&&H>-q&&(H=w),q>I&&I>-q&&(I=w),q>J&&J>-q&&(J=0)),u=z.xPercent||z.yPercent?"translate("+z.xPercent+"%,"+z.yPercent+"%) matrix3d(":"matrix3d(",u+=(q>c&&c>-q?w:c)+v+(q>f&&f>-q?w:f)+v+(q>i&&i>-q?w:i),u+=v+(q>l&&l>-q?w:l)+v+(q>d&&d>-q?w:d)+v+(q>g&&g>-q?w:g),C||D||1!==G?(u+=v+(q>j&&j>-q?w:j)+v+(q>m&&m>-q?w:m)+v+(q>e&&e>-q?w:e),u+=v+(q>h&&h>-q?w:h)+v+(q>k&&k>-q?w:k)+v+(q>o&&o>-q?w:o)+v):u+=",0,0,0,0,1,0,",u+=H+v+I+v+J+v+(M?1+-J/M:1)+")",A[Ca]=u};j=Ga.prototype,j.x=j.y=j.z=j.skewX=j.skewY=j.rotation=j.rotationX=j.rotationY=j.zOrigin=j.xPercent=j.yPercent=j.xOffset=j.yOffset=0,j.scaleX=j.scaleY=j.scaleZ=1,ya("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,svgOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent,smoothOrigin",{
5175parser:function(a,b,c,d,f,h,i){if(d._lastParsedTransform===i)return f;d._lastParsedTransform=i;var j,k=i.scale&&"function"==typeof i.scale?i.scale:0;"function"==typeof i[c]&&(j=i[c],i[c]=b),k&&(i.scale=k(r,a));var l,m,n,o,p,s,t,u,v,w=a._gsTransform,x=a.style,y=1e-6,z=Ba.length,A=i,B={},C="transformOrigin",D=Ra(a,e,!0,A.parseTransform),E=A.transform&&("function"==typeof A.transform?A.transform(r,q):A.transform);if(D.skewType=A.skewType||D.skewType||g.defaultSkewType,d._transform=D,E&&"string"==typeof E&&Ca)m=Q.style,
vendor: 17,416 bytes, line 5175
5175m[Ca]=E,m.display="block",m.position="absolute",O.body.appendChild(Q),l=Ra(Q,null,!1),"simple"===D.skewType&&(l.scaleY*=Math.cos(l.skewX*K)),D.svg&&(s=D.xOrigin,t=D.yOrigin,l.x-=D.xOffset,l.y-=D.yOffset,(A.transformOrigin||A.svgOrigin)&&(E={},La(a,ha(A.transformOrigin),E,A.svgOrigin,A.smoothOrigin,!0),s=E.xOrigin,t=E.yOrigin,l.x-=E.xOffset-D.xOffset,l.y-=E.yOffset-D.yOffset),(s||t)&&(u=Qa(Q,!0),l.x-=s-(s*u[0]+t*u[2]),l.y-=t-(s*u[1]+t*u[3]))),O.body.removeChild(Q),l.perspective||(l.perspective=D.perspective),null!=A.xPercent&&(l.xPercent=ja(A.xPercent,D.xPercent)),null!=A.yPercent&&(l.yPercent=ja(A.yPercent,D.yPercent));else if("object"==typeof A){if(l={scaleX:ja(null!=A.scaleX?A.scaleX:A.scale,D.scaleX),scaleY:ja(null!=A.scaleY?A.scaleY:A.scale,D.scaleY),scaleZ:ja(A.scaleZ,D.scaleZ),x:ja(A.x,D.x),y:ja(A.y,D.y),z:ja(A.z,D.z),xPercent:ja(A.xPercent,D.xPercent),yPercent:ja(A.yPercent,D.yPercent),perspective:ja(A.transformPerspective,D.perspective)},p=A.directionalRotation,null!=p)if("object"==typeof p)for(m in p)A[m]=p[m];else A.rotation=p;"string"==typeof A.x&&-1!==A.x.indexOf("%")&&(l.x=0,l.xPercent=ja(A.x,D.xPercent)),"string"==typeof A.y&&-1!==A.y.indexOf("%")&&(l.y=0,l.yPercent=ja(A.y,D.yPercent)),l.rotation=ka("rotation"in A?A.rotation:"shortRotation"in A?A.shortRotation+"_short":"rotationZ"in A?A.rotationZ:D.rotation,D.rotation,"rotation",B),Fa&&(l.rotationX=ka("rotationX"in A?A.rotationX:"shortRotationX"in A?A.shortRotationX+"_short":D.rotationX||0,D.rotationX,"rotationX",B),l.rotationY=ka("rotationY"in A?A.rotationY:"shortRotationY"in A?A.shortRotationY+"_short":D.rotationY||0,D.rotationY,"rotationY",B)),l.skewX=ka(A.skewX,D.skewX),l.skewY=ka(A.skewY,D.skewY)}for(Fa&&null!=A.force3D&&(D.force3D=A.force3D,o=!0),n=D.force3D||D.z||D.rotationX||D.rotationY||l.z||l.rotationX||l.rotationY||l.perspective,n||null==A.scale||(l.scaleZ=1);--z>-1;)v=Ba[z],E=l[v]-D[v],(E>y||-y>E||null!=A[v]||null!=M[v])&&(o=!0,f=new ta(D,v,D[v],E,f),v in B&&(f.e=B[v]),f.xs0=0,f.plugin=h,d._overwriteProps.push(f.n));return E=A.transformOrigin,D.svg&&(E||A.svgOrigin)&&(s=D.xOffset,t=D.yOffset,La(a,ha(E),l,A.svgOrigin,A.smoothOrigin),f=ua(D,"xOrigin",(w?D:l).xOrigin,l.xOrigin,f,C),f=ua(D,"yOrigin",(w?D:l).yOrigin,l.yOrigin,f,C),(s!==D.xOffset||t!==D.yOffset)&&(f=ua(D,"xOffset",w?s:D.xOffset,D.xOffset,f,C),f=ua(D,"yOffset",w?t:D.yOffset,D.yOffset,f,C)),E="0px 0px"),(E||Fa&&n&&D.zOrigin)&&(Ca?(o=!0,v=Ea,E=(E||_(a,v,e,!1,"50% 50%"))+"",f=new ta(x,v,0,0,f,-1,C),f.b=x[v],f.plugin=h,Fa?(m=D.zOrigin,E=E.split(" "),D.zOrigin=(E.length>2&&(0===m||"0px"!==E[2])?parseFloat(E[2]):m)||0,f.xs0=f.e=E[0]+" "+(E[1]||"50%")+" 0px",f=new ta(D,"zOrigin",0,0,f,-1,f.n),f.b=m,f.xs0=f.e=D.zOrigin):f.xs0=f.e=E):ha(E+"",D)),o&&(d._transformType=D.svg&&Aa||!n&&3!==this._transformType?2:3),j&&(i[c]=j),k&&(i.scale=k),f},prefix:!0}),ya("boxShadow",{defaultValue:"0px 0px 0px 0px #999",prefix:!0,color:!0,multi:!0,keyword:"inset"}),ya("borderRadius",{defaultValue:"0px",parser:function(a,b,c,f,g,h){b=this.format(b);var i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],z=a.style;for(q=parseFloat(a.offsetWidth),r=parseFloat(a.offsetHeight),i=b.split(" "),j=0;j<y.length;j++)this.p.indexOf("border")&&(y[j]=Z(y[j])),m=l=_(a,y[j],e,!1,"0px"),-1!==m.indexOf(" ")&&(l=m.split(" "),m=l[0],l=l[1]),n=k=i[j],o=parseFloat(m),t=m.substr((o+"").length),u="="===n.charAt(1),u?(p=parseInt(n.charAt(0)+"1",10),n=n.substr(2),p*=parseFloat(n),s=n.substr((p+"").length-(0>p?1:0))||""):(p=parseFloat(n),s=n.substr((p+"").length)),""===s&&(s=d[c]||t),s!==t&&(v=aa(a,"borderLeft",o,t),w=aa(a,"borderTop",o,t),"%"===s?(m=v/q*100+"%",l=w/r*100+"%"):"em"===s?(x=aa(a,"borderLeft",1,"em"),m=v/x+"em",l=w/x+"em"):(m=v+"px",l=w+"px"),u&&(n=parseFloat(m)+p+s,k=parseFloat(l)+p+s)),g=va(z,y[j],m+" "+l,n+" "+k,!1,"0px",g);return g},prefix:!0,formatter:qa("0px 0px 0px 0px",!1,!0)}),ya("borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius",{defaultValue:"0px",parser:function(a,b,c,d,f,g){return va(a.style,c,this.format(_(a,c,e,!1,"0px 0px")),this.format(b),!1,"0px",f)},prefix:!0,formatter:qa("0px 0px",!1,!0)}),ya("backgroundPosition",{defaultValue:"0 0",parser:function(a,b,c,d,f,g){var h,i,j,k,l,m,n="background-position",o=e||$(a,null),q=this.format((o?p?o.getPropertyValue(n+"-x")+" "+o.getPropertyValue(n+"-y"):o.getPropertyValue(n):a.currentStyle.backgroundPositionX+" "+a.currentStyle.backgroundPositionY)||"0 0"),r=this.format(b);if(-1!==q.indexOf("%")!=(-1!==r.indexOf("%"))&&r.split(",").length<2&&(m=_(a,"backgroundImage").replace(D,""),m&&"none"!==m)){for(h=q.split(" "),i=r.split(" "),R.setAttribute("src",m),j=2;--j>-1;)q=h[j],k=-1!==q.indexOf("%"),k!==(-1!==i[j].indexOf("%"))&&(l=0===j?a.offsetWidth-R.width:a.offsetHeight-R.height,h[j]=k?parseFloat(q)/100*l+"px":parseFloat(q)/l*100+"%");q=h.join(" ")}return this.parseComplex(a.style,q,r,f,g)},formatter:ha}),ya("backgroundSize",{defaultValue:"0 0",formatter:function(a){return a+="",ha(-1===a.indexOf(" ")?a+" "+a:a)}}),ya("perspective",{defaultValue:"0px",prefix:!0}),ya("perspectiveOrigin",{defaultValue:"50% 50%",prefix:!0}),ya("transformStyle",{prefix:!0}),ya("backfaceVisibility",{prefix:!0}),ya("userSelect",{prefix:!0}),ya("margin",{parser:ra("marginTop,marginRight,marginBottom,marginLeft")}),ya("padding",{parser:ra("paddingTop,paddingRight,paddingBottom,paddingLeft")}),ya("clip",{defaultValue:"rect(0px,0px,0px,0px)",parser:function(a,b,c,d,f,g){var h,i,j;return 9>p?(i=a.currentStyle,j=8>p?" ":",",h="rect("+i.clipTop+j+i.clipRight+j+i.clipBottom+j+i.clipLeft+")",b=this.format(b).split(",").join(j)):(h=this.format(_(a,this.p,e,!1,this.dflt)),b=this.format(b)),this.parseComplex(a.style,h,b,f,g)}}),ya("textShadow",{defaultValue:"0px 0px 0px #999",color:!0,multi:!0}),ya("autoRound,strictUnits",{parser:function(a,b,c,d,e){return e}}),ya("border",{defaultValue:"0px solid #000",parser:function(a,b,c,d,f,g){var h=_(a,"borderTopWidth",e,!1,"0px"),i=this.format(b).split(" "),j=i[0].replace(w,"");return"px"!==j&&(h=parseFloat(h)/aa(a,"borderTopWidth",1,j)+j),this.parseComplex(a.style,this.format(h+" "+_(a,"borderTopStyle",e,!1,"solid")+" "+_(a,"borderTopColor",e,!1,"#000")),i.join(" "),f,g)},color:!0,formatter:function(a){var b=a.split(" ");return b[0]+" "+(b[1]||"solid")+" "+(a.match(pa)||["#000"])[0]}}),ya("borderWidth",{parser:ra("borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth")}),ya("float,cssFloat,styleFloat",{parser:function(a,b,c,d,e,f){var g=a.style,h="cssFloat"in g?"cssFloat":"styleFloat";return new ta(g,h,0,0,e,-1,c,!1,0,g[h],b)}});var Ua=function(a){var b,c=this.t,d=c.filter||_(this.data,"filter")||"",e=this.s+this.c*a|0;100===e&&(-1===d.indexOf("atrix(")&&-1===d.indexOf("radient(")&&-1===d.indexOf("oader(")?(c.removeAttribute("filter"),b=!_(this.data,"filter")):(c.filter=d.replace(z,""),b=!0)),b||(this.xn1&&(c.filter=d=d||"alpha(opacity="+e+")"),-1===d.indexOf("pacity")?0===e&&this.xn1||(c.filter=d+" alpha(opacity="+e+")"):c.filter=d.replace(x,"opacity="+e))};ya("opacity,alpha,autoAlpha",{defaultValue:"1",parser:function(a,b,c,d,f,g){var h=parseFloat(_(a,"opacity",e,!1,"1")),i=a.style,j="autoAlpha"===c;return"string"==typeof b&&"="===b.charAt(1)&&(b=("-"===b.charAt(0)?-1:1)*parseFloat(b.substr(2))+h),j&&1===h&&"hidden"===_(a,"visibility",e)&&0!==b&&(h=0),U?f=new ta(i,"opacity",h,b-h,f):(f=new ta(i,"opacity",100*h,100*(b-h),f),f.xn1=j?1:0,i.zoom=1,f.type=2,f.b="alpha(opacity="+f.s+")",f.e="alpha(opacity="+(f.s+f.c)+")",f.data=a,f.plugin=g,f.setRatio=Ua),j&&(f=new ta(i,"visibility",0,0,f,-1,null,!1,0,0!==h?"inherit":"hidden",0===b?"hidden":"inherit"),f.xs0="inherit",d._overwriteProps.push(f.n),d._overwriteProps.push(c)),f}});var Va=function(a,b){b&&(a.removeProperty?(("ms"===b.substr(0,2)||"webkit"===b.substr(0,6))&&(b="-"+b),a.removeProperty(b.replace(B,"-$1").toLowerCase())):a.removeAttribute(b))},Wa=function(a){if(this.t._gsClassPT=this,1===a||0===a){this.t.setAttribute("class",0===a?this.b:this.e);for(var b=this.data,c=this.t.style;b;)b.v?c[b.p]=b.v:Va(c,b.p),b=b._next;1===a&&this.t._gsClassPT===this&&(this.t._gsClassPT=null)}else this.t.getAttribute("class")!==this.e&&this.t.setAttribute("class",this.e)};ya("className",{parser:function(a,b,d,f,g,h,i){var j,k,l,m,n,o=a.getAttribute("class")||"",p=a.style.cssText;if(g=f._classNamePT=new ta(a,d,0,0,g,2),g.setRatio=Wa,g.pr=-11,c=!0,g.b=o,k=ca(a,e),l=a._gsClassPT){for(m={},n=l.data;n;)m[n.p]=1,n=n._next;l.setRatio(1)}return a._gsClassPT=g,g.e="="!==b.charAt(1)?b:o.replace(new RegExp("(?:\\s|^)"+b.substr(2)+"(?![\\w-])"),"")+("+"===b.charAt(0)?" "+b.substr(2):""),a.setAttribute("class",g.e),j=da(a,k,ca(a),i,m),a.setAttribute("class",o),g.data=j.firstMPT,a.style.cssText=p,g=g.xfirst=f.parse(a,j.difs,g,h)}});var Xa=function(a){if((1===a||0===a)&&this.data._totalTime===this.data._totalDuration&&"isFromStart"!==this.data.data){var b,c,d,e,f,g=this.t.style,h=i.transform.parse;if("all"===this.e)g.cssText="",e=!0;else for(b=this.e.split(" ").join("").split(","),d=b.length;--d>-1;)c=b[d],i[c]&&(i[c].parse===h?e=!0:c="transformOrigin"===c?Ea:i[c].p),Va(g,c);e&&(Va(g,Ca),f=this.t._gsTransform,f&&(f.svg&&(this.t.removeAttribute("data-svg-origin"),this.t.removeAttribute("transform")),delete this.t._gsTransform))}};for(ya("clearProps",{parser:function(a,b,d,e,f){return f=new ta(a,d,0,0,f,2),f.setRatio=Xa,f.e=b,f.pr=-10,f.data=e._tween,c=!0,f}}),j="bezier,throwProps,physicsProps,physics2D".split(","),wa=j.length;wa--;)za(j[wa]);j=g.prototype,j._firstPT=j._lastParsedTransform=j._transform=null,j._onInitTween=function(a,b,h,j){if(!a.nodeType)return!1;this._target=q=a,this._tween=h,this._vars=b,r=j,k=b.autoRound,c=!1,d=b.suffixMap||g.suffixMap,e=$(a,""),f=this._overwriteProps;var n,p,s,t,u,v,w,x,z,A=a.style;if(l&&""===A.zIndex&&(n=_(a,"zIndex",e),("auto"===n||""===n)&&this._addLazySet(A,"zIndex",0)),"string"==typeof b&&(t=A.cssText,n=ca(a,e),A.cssText=t+";"+b,n=da(a,n,ca(a)).difs,!U&&y.test(b)&&(n.opacity=parseFloat(RegExp.$1)),b=n,A.cssText=t),b.className?this._firstPT=p=i.className.parse(a,b.className,"className",this,null,null,b):this._firstPT=p=this.parse(a,b,null),this._transformType){for(z=3===this._transformType,Ca?m&&(l=!0,""===A.zIndex&&(w=_(a,"zIndex",e),("auto"===w||""===w)&&this._addLazySet(A,"zIndex",0)),o&&this._addLazySet(A,"WebkitBackfaceVisibility",this._vars.WebkitBackfaceVisibility||(z?"visible":"hidden"))):A.zoom=1,s=p;s&&s._next;)s=s._next;x=new ta(a,"transform",0,0,null,2),this._linkCSSP(x,null,s),x.setRatio=Ca?Ta:Sa,x.data=this._transform||Ra(a,e,!0),x.tween=h,x.pr=-1,f.pop()}if(c){for(;p;){for(v=p._next,s=t;s&&s.pr>p.pr;)s=s._next;(p._prev=s?s._prev:u)?p._prev._next=p:t=p,(p._next=s)?s._prev=p:u=p,p=v}this._firstPT=t}return!0},j.parse=function(a,b,c,f){var g,h,j,l,m,n,o,p,s,t,u=a.style;for(g in b){if(n=b[g],"function"==typeof n&&(n=n(r,q)),h=i[g])c=h.parse(a,n,g,this,c,f,b);else{if("--"===g.substr(0,2)){this._tween._propLookup[g]=this._addTween.call(this._tween,a.style,"setProperty",$(a).getPropertyValue(g)+"",n+"",g,!1,g);continue}m=_(a,g,e)+"",s="string"==typeof n,"color"===g||"fill"===g||"stroke"===g||-1!==g.indexOf("Color")||s&&A.test(n)?(s||(n=na(n),n=(n.length>3?"rgba(":"rgb(")+n.join(",")+")"),c=va(u,g,m,n,!0,"transparent",c,0,f)):s&&J.test(n)?c=va(u,g,m,n,!0,null,c,0,f):(j=parseFloat(m),o=j||0===j?m.substr((j+"").length):"",(""===m||"auto"===m)&&("width"===g||"height"===g?(j=ga(a,g,e),o="px"):"left"===g||"top"===g?(j=ba(a,g,e),o="px"):(j="opacity"!==g?0:1,o="")),t=s&&"="===n.charAt(1),t?(l=parseInt(n.charAt(0)+"1",10),n=n.substr(2),l*=parseFloat(n),p=n.replace(w,"")):(l=parseFloat(n),p=s?n.replace(w,""):""),""===p&&(p=g in d?d[g]:o),n=l||0===l?(t?l+j:l)+p:b[g],o!==p&&(""!==p||"lineHeight"===g)&&(l||0===l)&&j&&(j=aa(a,g,j,o),"%"===p?(j/=aa(a,g,100,"%")/100,b.strictUnits!==!0&&(m=j+"%")):"em"===p||"rem"===p||"vw"===p||"vh"===p?j/=aa(a,g,1,p):"px"!==p&&(l=aa(a,g,l,p),p="px"),t&&(l||0===l)&&(n=l+j+p)),t&&(l+=j),!j&&0!==j||!l&&0!==l?void 0!==u[g]&&(n||n+""!="NaN"&&null!=n)?(c=new ta(u,g,l||j||0,0,c,-1,g,!1,0,m,n),c.xs0="none"!==n||"display"!==g&&-1===g.indexOf("Style")?n:m):W("invalid "+g+" tween value: "+b[g]):(c=new ta(u,g,j,l-j,c,0,g,k!==!1&&("px"===p||"zIndex"===g),0,m,n),c.xs0=p))}f&&c&&!c.plugin&&(c.plugin=f)}return c},j.setRatio=function(a){var b,c,d,e=this._firstPT,f=1e-6;if(1!==a||this._tween._time!==this._tween._duration&&0!==this._tween._time)if(a||this._tween._time!==this._tween._duration&&0!==this._tween._time||this._tween._rawPrevTime===-1e-6)for(;e;){if(b=e.c*a+e.s,e.r?b=Math.round(b):f>b&&b>-f&&(b=0),e.type)if(1===e.type)if(d=e.l,2===d)e.t[e.p]=e.xs0+b+e.xs1+e.xn1+e.xs2;else if(3===d)e.t[e.p]=e.xs0+b+e.xs1+e.xn1+e.xs2+e.xn2+e.xs3;else if(4===d)e.t[e.p]=e.xs0+b+e.xs1+e.xn1+e.xs2+e.xn2+e.xs3+e.xn3+e.xs4;else if(5===d)e.t[e.p]=e.xs0+b+e.xs1+e.xn1+e.xs2+e.xn2+e.xs3+e.xn3+e.xs4+e.xn4+e.xs5;else{for(c=e.xs0+b+e.xs1,d=1;d<e.l;d++)c+=e["xn"+d]+e["xs"+(d+1)];e.t[e.p]=c}else-1===e.type?e.t[e.p]=e.xs0:e.setRatio&&e.setRatio(a);else e.t[e.p]=b+e.xs0;e=e._next}else for(;e;)2!==e.type?e.t[e.p]=e.b:e.setRatio(a),e=e._next;else for(;e;){if(2!==e.type)if(e.r&&-1!==e.type)if(b=Math.round(e.s+e.c),e.type){if(1===e.type){for(d=e.l,c=e.xs0+b+e.xs1,d=1;d<e.l;d++)c+=e["xn"+d]+e["xs"+(d+1)];e.t[e.p]=c}}else e.t[e.p]=b+e.xs0;else e.t[e.p]=e.e;else e.setRatio(a);e=e._next}},j._enableTransforms=function(a){this._transform=this._transform||Ra(this._target,e,!0),this._transformType=this._transform.svg&&Aa||!a&&3!==this._transformType?2:3};var Ya=function(a){this.t[this.p]=this.e,this.data._linkCSSP(this,this._next,null,!0)};j._addLazySet=function(a,b,c){var d=this._firstPT=new ta(a,b,0,0,this._firstPT,2);d.e=c,d.setRatio=Ya,d.data=this},j._linkCSSP=function(a,b,c,d){return a&&(b&&(b._prev=a),a._next&&(a._next._prev=a._prev),a._prev?a._prev._next=a._next:this._firstPT===a&&(this._firstPT=a._next,d=!0),c?c._next=a:d||null!==this._firstPT||(this._firstPT=a),a._next=b,a._prev=c),a},j._mod=function(a){for(var b=this._firstPT;b;)"function"==typeof a[b.p]&&a[b.p]===Math.round&&(b.r=1),b=b._next},j._kill=function(b){var c,d,e,f=b;if(b.autoAlpha||b.alpha){f={};for(d in b)f[d]=b[d];f.opacity=1,f.autoAlpha&&(f.visibility=1)}for(b.className&&(c=this._classNamePT)&&(e=c.xfirst,e&&e._prev?this._linkCSSP(e._prev,c._next,e._prev._prev):e===this._firstPT&&(this._firstPT=c._next),c._next&&this._linkCSSP(c._next,c._next._next,e._prev),this._classNamePT=null),c=this._firstPT;c;)c.plugin&&c.plugin!==d&&c.plugin._kill&&(c.plugin._kill(b),d=c.plugin),c=c._next;return a.prototype._kill.call(this,f)};var Za=function(a,b,c){var d,e,f,g;if(a.slice)for(e=a.length;--e>-1;)Za(a[e],b,c);else for(d=a.childNodes,e=d.length;--e>-1;)f=d[e],g=f.type,f.style&&(b.push(ca(f)),c&&c.push(f)),1!==g&&9!==g&&11!==g||!f.childNodes.length||Za(f,b,c)};return g.cascadeTo=function(a,c,d){var e,f,g,h,i=b.to(a,c,d),j=[i],k=[],l=[],m=[],n=b._internals.reservedProps;for(a=i._targets||i.target,Za(a,k,m),i.render(c,!0,!0),Za(a,l),i.render(0,!0,!0),i._enabled(!0),e=m.length;--e>-1;)if(f=da(m[e],k[e],l[e]),f.firstMPT){f=f.difs;for(g in d)n[g]&&(f[g]=d[g]);h={};for(g in f)h[g]=k[e][g];j.push(b.fromTo(m[e],c,h,f))}return j},a.activate([g]),g},!0),function(){var a=_gsScope._gsDefine.plugin({propName:"roundProps",version:"1.6.0",priority:-1,API:2,init:function(a,b,c){return this._tween=c,!0}}),b=function(a){for(;a;)a.f||a.blob||(a.m=Math.round),a=a._next},c=a.prototype;c._onInitAllProps=function(){for(var a,c,d,e=this._tween,f=e.vars.roundProps.join?e.vars.roundProps:e.vars.roundProps.split(","),g=f.length,h={},i=e._propLookup.roundProps;--g>-1;)h[f[g]]=Math.round;for(g=f.length;--g>-1;)for(a=f[g],c=e._firstPT;c;)d=c._next,c.pg?c.t._mod(h):c.n===a&&(2===c.f&&c.t?b(c.t._firstPT):(this._add(c.t,a,c.s,c.c),d&&(d._prev=c._prev),c._prev?c._prev._next=d:e._firstPT===c&&(e._firstPT=d),c._next=c._prev=null,e._propLookup[a]=i)),c=d;return!1},c._add=function(a,b,c,d){this._addTween(a,b,c,c+d,b,Math.round),this._overwriteProps.push(b)}}(),function(){_gsScope._gsDefine.plugin({propName:"attr",API:2,version:"0.6.1",init:function(a,b,c,d){var e,f;if("function"!=typeof a.setAttribute)return!1;for(e in b)f=b[e],"function"==typeof f&&(f=f(d,a)),this._addTween(a,"setAttribute",a.getAttribute(e)+"",f+"",e,!1,e),this._overwriteProps.push(e);return!0}})}(),_gsScope._gsDefine.plugin({propName:"directionalRotation",version:"0.3.1",API:2,init:function(a,b,c,d){"object"!=typeof b&&(b={rotation:b}),this.finals={};var e,f,g,h,i,j,k=b.useRadians===!0?2*Math.PI:360,l=1e-6;for(e in b)"useRadians"!==e&&(h=b[e],"function"==typeof h&&(h=h(d,a)),j=(h+"").split("_"),f=j[0],g=parseFloat("function"!=typeof a[e]?a[e]:a[e.indexOf("set")||"function"!=typeof a["get"+e.substr(3)]?e:"get"+e.substr(3)]()),h=this.finals[e]="string"==typeof f&&"="===f.charAt(1)?g+parseInt(f.charAt(0)+"1",10)*Number(f.substr(2)):Number(f)||0,i=h-g,j.length&&(f=j.join("_"),-1!==f.indexOf("short")&&(i%=k,i!==i%(k/2)&&(i=0>i?i+k:i-k)),-1!==f.indexOf("_cw")&&0>i?i=(i+9999999999*k)%k-(i/k|0)*k:-1!==f.indexOf("ccw")&&i>0&&(i=(i-9999999999*k)%k-(i/k|0)*k)),(i>l||-l>i)&&(this._addTween(a,e,g,g+i,e),this._overwriteProps.push(e)));return!0},set:function(a){var b;if(1!==a)this._super.setRatio.call(this,a);else for(b=this._firstPT;b;)b.f?b.t[b.p](this.finals[b.p]):b.t[b.p]=this.finals[b.p],b=b._next}})._autoCSS=!0,_gsScope._gsDefine("easing.Back",["easing.Ease"],function(a){var b,c,d,e
vendor: 2,556 bytes, line 5175
5175,f=_gsScope.GreenSockGlobals||_gsScope,g=f.com.greensock,h=2*Math.PI,i=Math.PI/2,j=g._class,k=function(b,c){var d=j("easing."+b,function(){},!0),e=d.prototype=new a;return e.constructor=d,e.getRatio=c,d},l=a.register||function(){},m=function(a,b,c,d,e){var f=j("easing."+a,{easeOut:new b,easeIn:new c,easeInOut:new d},!0);return l(f,a),f},n=function(a,b,c){this.t=a,this.v=b,c&&(this.next=c,c.prev=this,this.c=c.v-b,this.gap=c.t-a)},o=function(b,c){var d=j("easing."+b,function(a){this._p1=a||0===a?a:1.70158,this._p2=1.525*this._p1},!0),e=d.prototype=new a;return e.constructor=d,e.getRatio=c,e.config=function(a){return new d(a)},d},p=m("Back",o("BackOut",function(a){return(a-=1)*a*((this._p1+1)*a+this._p1)+1}),o("BackIn",function(a){return a*a*((this._p1+1)*a-this._p1)}),o("BackInOut",function(a){return(a*=2)<1?.5*a*a*((this._p2+1)*a-this._p2):.5*((a-=2)*a*((this._p2+1)*a+this._p2)+2)})),q=j("easing.SlowMo",function(a,b,c){b=b||0===b?b:.7,null==a?a=.7:a>1&&(a=1),this._p=1!==a?b:0,this._p1=(1-a)/2,this._p2=a,this._p3=this._p1+this._p2,this._calcEnd=c===!0},!0),r=q.prototype=new a;return r.constructor=q,r.getRatio=function(a){var b=a+(.5-a)*this._p;return a<this._p1?this._calcEnd?1-(a=1-a/this._p1)*a:b-(a=1-a/this._p1)*a*a*a*b:a>this._p3?this._calcEnd?1===a?0:1-(a=(a-this._p3)/this._p1)*a:b+(a-b)*(a=(a-this._p3)/this._p1)*a*a*a:this._calcEnd?1:b},q.ease=new q(.7,.7),r.config=q.config=function(a,b,c){return new q(a,b,c)},b=j("easing.SteppedEase",function(a,b){a=a||1,this._p1=1/a,this._p2=a+(b?0:1),this._p3=b?1:0},!0),r=b.prototype=new a,r.constructor=b,r.getRatio=function(a){return 0>a?a=0:a>=1&&(a=.999999999),((this._p2*a|0)+this._p3)*this._p1},r.config=b.config=function(a,c){return new b(a,c)},c=j("easing.ExpoScaleEase",function(a,b,c){this._p1=Math.log(b/a),this._p2=b-a,this._p3=a,this._ease=c},!0),r=c.prototype=new a,r.constructor=c,r.getRatio=function(a){return this._ease&&(a=this._ease.getRatio(a)),(this._p3*Math.exp(this._p1*a)-this._p3)/this._p2},r.config=c.config=function(a,b,d){return new c(a,b,d)},d=j("easing.RoughEase",function(b){b=b||{};for(var c,d,e,f,g,h,i=b.taper||"none",j=[],k=0,l=0|(b.points||20),m=l,o=b.randomize!==!1,p=b.clamp===!0,q=b.template instanceof a?b.template:null,r="number"==typeof b.strength?.4*b.strength:.4;--m>-1;)c=o?Math.random():1/l*m,d=q?q.getRatio(c):c,"none"===i?e=r:"out"===i?(f=1-c,e=f*f*r):"in"===i?e=c*c*r:.5>c?(f=2*c,e=f*f*.5*r):(f=2*(1-c),e=f*f*.5*r),o?d+=Math.random()*e-.5*e:m%2?d+=.5*e:d-=.5*e,p&&(d>1?d=1:0>d&&(d=0)),j[k++]={x:c,y:d};for(j.sort(function(a,b){return a.x-b.x}
vendor: 4,137 bytes, line 5175
5175),h=new n(1,1,null),m=l;--m>-1;)g=j[m],h=new n(g.x,g.y,h);this._prev=new n(0,0,0!==h.t?h:h.next)},!0),r=d.prototype=new a,r.constructor=d,r.getRatio=function(a){var b=this._prev;if(a>b.t){for(;b.next&&a>=b.t;)b=b.next;b=b.prev}else for(;b.prev&&a<=b.t;)b=b.prev;return this._prev=b,b.v+(a-b.t)/b.gap*b.c},r.config=function(a){return new d(a)},d.ease=new d,m("Bounce",k("BounceOut",function(a){return 1/2.75>a?7.5625*a*a:2/2.75>a?7.5625*(a-=1.5/2.75)*a+.75:2.5/2.75>a?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375}),k("BounceIn",function(a){return(a=1-a)<1/2.75?1-7.5625*a*a:2/2.75>a?1-(7.5625*(a-=1.5/2.75)*a+.75):2.5/2.75>a?1-(7.5625*(a-=2.25/2.75)*a+.9375):1-(7.5625*(a-=2.625/2.75)*a+.984375)}),k("BounceInOut",function(a){var b=.5>a;return a=b?1-2*a:2*a-1,a=1/2.75>a?7.5625*a*a:2/2.75>a?7.5625*(a-=1.5/2.75)*a+.75:2.5/2.75>a?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375,b?.5*(1-a):.5*a+.5})),m("Circ",k("CircOut",function(a){return Math.sqrt(1-(a-=1)*a)}),k("CircIn",function(a){return-(Math.sqrt(1-a*a)-1)}),k("CircInOut",function(a){return(a*=2)<1?-.5*(Math.sqrt(1-a*a)-1):.5*(Math.sqrt(1-(a-=2)*a)+1)})),e=function(b,c,d){var e=j("easing."+b,function(a,b){this._p1=a>=1?a:1,this._p2=(b||d)/(1>a?a:1),this._p3=this._p2/h*(Math.asin(1/this._p1)||0),this._p2=h/this._p2},!0),f=e.prototype=new a;return f.constructor=e,f.getRatio=c,f.config=function(a,b){return new e(a,b)},e},m("Elastic",e("ElasticOut",function(a){return this._p1*Math.pow(2,-10*a)*Math.sin((a-this._p3)*this._p2)+1},.3),e("ElasticIn",function(a){return-(this._p1*Math.pow(2,10*(a-=1))*Math.sin((a-this._p3)*this._p2))},.3),e("ElasticInOut",function(a){return(a*=2)<1?-.5*(this._p1*Math.pow(2,10*(a-=1))*Math.sin((a-this._p3)*this._p2)):this._p1*Math.pow(2,-10*(a-=1))*Math.sin((a-this._p3)*this._p2)*.5+1},.45)),m("Expo",k("ExpoOut",function(a){return 1-Math.pow(2,-10*a)}),k("ExpoIn",function(a){return Math.pow(2,10*(a-1))-.001}),k("ExpoInOut",function(a){return(a*=2)<1?.5*Math.pow(2,10*(a-1)):.5*(2-Math.pow(2,-10*(a-1)))})),m("Sine",k("SineOut",function(a){return Math.sin(a*i)}),k("SineIn",function(a){return-Math.cos(a*i)+1}),k("SineInOut",function(a){return-.5*(Math.cos(Math.PI*a)-1)})),j("easing.EaseLookup",{find:function(b){return a.map[b]}},!0),l(f.SlowMo,"SlowMo","ease,"),l(d,"RoughEase","ease,"),l(b,"SteppedEase","ease,"),p},!0)}),_gsScope._gsDefine&&_gsScope._gsQueue.pop()(),function(a,b){"use strict";var c={},d=a.document,e=a.GreenSockGlobals=a.GreenSockGlobals||a;if(!e.TweenLite){var f,g,h,i,j,k=function(a){var b,c=a.split("."),d=e;for(b=0;b<c.length;b++)d[c[b]]=d=d[c[b]]||{};return d},l=k("com.greensock"),m=1e-10,n=function(a){var b,c=[],d=a.length;for(b=0;b!==d;c.push(a[b++]));return c},o=function(){},p=function(){var a=Object.prototype.toString,b=a.call([]);return function(c){return null!=c&&(c instanceof Array||"object"==typeof c&&!!c.push&&a.call(c)===b)}}(),q={},r=function(d,f,g,h){this.sc=q[d]?q[d].sc:[],q[d]=this,this.gsClass=null,this.func=g;var i=[];this.check=function(j){for(var l,m,n,o,p=f.length,s=p;--p>-1;)(l=q[f[p]]||new r(f[p],[])).gsClass?(i[p]=l.gsClass,s--):j&&l.sc.push(this);if(0===s&&g){if(m=("com.greensock."+d).split("."),n=m.pop(),o=k(m.join("."))[n]=this.gsClass=g.apply(g,i),h)if(e[n]=c[n]=o,"undefined"!=typeof module&&module.exports)if(d===b){module.exports=c[b]=o;for(p in c)o[p]=c[p]}else c[b]&&(c[b][n]=o);else"function"==typeof define&&define.amd&&define((a.GreenSockAMDPath?a.GreenSockAMDPath+"/":"")+d.split(".").pop(),[],function(){return o});for(p=0;p<this.sc.length;p++)this.sc[p].check()}},this.check(!0)},s=a._gsDefine=function(a,b,c,d){return new r(a,b,c,d)},t=l._class=function(a,b,c){return b=b||function(){},s(a,[],function(){return b},c),b};s.globals=e;var u=[0,0,1,1],v=t("easing.Ease",function(a,b,c,d){this._func=a,this._type=c||0,this._power=d||0,this._params=b?u.concat(b):u},!0),w=v.map={},x=v.register=function(a,b,c,d){for(var e,f,g,h,i=b.split(","),j=i.length,k=(c||"easeIn,easeOut,easeInOut").split(",");--j>-1;)for(f=i[j],e=d?t("easing."+f,null,!0):l.easing[f]||{},g=k.length;--g>-1;)h=k[g],w[f+"."+h]=w[h+f]=e[h]=a.getRatio?a:a[h]||new a};
vendor: 17,622 bytes, lines 5175-5176
5175for(h=v.prototype,h._calcEnd=!1,h.getRatio=function(a){if(this._func)return this._params[0]=a,this._func.apply(null,this._params);var b=this._type,c=this._power,d=1===b?1-a:2===b?a:.5>a?2*a:2*(1-a);return 1===c?d*=d:2===c?d*=d*d:3===c?d*=d*d*d:4===c&&(d*=d*d*d*d),1===b?1-d:2===b?d:.5>a?d/2:1-d/2},f=["Linear","Quad","Cubic","Quart","Quint,Strong"],g=f.length;--g>-1;)h=f[g]+",Power"+g,x(new v(null,null,1,g),h,"easeOut",!0),x(new v(null,null,2,g),h,"easeIn"+(0===g?",easeNone":"")),x(new v(null,null,3,g),h,"easeInOut");w.linear=l.easing.Linear.easeIn,w.swing=l.easing.Quad.easeInOut;var y=t("events.EventDispatcher",function(a){this._listeners={},this._eventTarget=a||this});h=y.prototype,h.addEventListener=function(a,b,c,d,e){e=e||0;var f,g,h=this._listeners[a],k=0;for(this!==i||j||i.wake(),null==h&&(this._listeners[a]=h=[]),g=h.length;--g>-1;)f=h[g],f.c===b&&f.s===c?h.splice(g,1):0===k&&f.pr<e&&(k=g+1);h.splice(k,0,{c:b,s:c,up:d,pr:e})},h.removeEventListener=function(a,b){var c,d=this._listeners[a];if(d)for(c=d.length;--c>-1;)if(d[c].c===b)return void d.splice(c,1)},h.dispatchEvent=function(a){var b,c,d,e=this._listeners[a];if(e)for(b=e.length,b>1&&(e=e.slice(0)),c=this._eventTarget;--b>-1;)d=e[b],d&&(d.up?d.c.call(d.s||c,{type:a,target:c}):d.c.call(d.s||c))};var z=a.requestAnimationFrame,A=a.cancelAnimationFrame,B=Date.now||function(){return(new Date).getTime()},C=B();for(f=["ms","moz","webkit","o"],g=f.length;--g>-1&&!z;)z=a[f[g]+"RequestAnimationFrame"],A=a[f[g]+"CancelAnimationFrame"]||a[f[g]+"CancelRequestAnimationFrame"];t("Ticker",function(a,b){var c,e,f,g,h,k=this,l=B(),n=b!==!1&&z?"auto":!1,p=500,q=33,r="tick",s=function(a){var b,d,i=B()-C;i>p&&(l+=i-q),C+=i,k.time=(C-l)/1e3,b=k.time-h,(!c||b>0||a===!0)&&(k.frame++,h+=b+(b>=g?.004:g-b),d=!0),a!==!0&&(f=e(s)),d&&k.dispatchEvent(r)};y.call(k),k.time=k.frame=0,k.tick=function(){s(!0)},k.lagSmoothing=function(a,b){return arguments.length?(p=a||1/m,void(q=Math.min(b,p,0))):1/m>p},k.sleep=function(){null!=f&&(n&&A?A(f):clearTimeout(f),e=o,f=null,k===i&&(j=!1))},k.wake=function(a){null!==f?k.sleep():a?l+=-C+(C=B()):k.frame>10&&(C=B()-p+5),e=0===c?o:n&&z?z:function(a){return setTimeout(a,1e3*(h-k.time)+1|0)},k===i&&(j=!0),s(2)},k.fps=function(a){return arguments.length?(c=a,g=1/(c||60),h=this.time+g,void k.wake()):c},k.useRAF=function(a){return arguments.length?(k.sleep(),n=a,void k.fps(c)):n},k.fps(a),setTimeout(function(){"auto"===n&&k.frame<5&&"hidden"!==(d||{}).visibilityState&&k.useRAF(!1)},1500)}),h=l.Ticker.prototype=new l.events.EventDispatcher,h.constructor=l.Ticker;var D=t("core.Animation",function(a,b){if(this.vars=b=b||{},this._duration=this._totalDuration=a||0,this._delay=Number(b.delay)||0,this._timeScale=1,this._active=b.immediateRender===!0,this.data=b.data,this._reversed=b.reversed===!0,X){j||i.wake();var c=this.vars.useFrames?W:X;c.add(this,c._time),this.vars.paused&&this.paused(!0)}});i=D.ticker=new l.Ticker,h=D.prototype,h._dirty=h._gc=h._initted=h._paused=!1,h._totalTime=h._time=0,h._rawPrevTime=-1,h._next=h._last=h._onUpdate=h._timeline=h.timeline=null,h._paused=!1;var E=function(){j&&B()-C>2e3&&("hidden"!==(d||{}).visibilityState||!i.lagSmoothing())&&i.wake();var a=setTimeout(E,2e3);a.unref&&a.unref()};E(),h.play=function(a,b){return null!=a&&this.seek(a,b),this.reversed(!1).paused(!1)},h.pause=function(a,b){return null!=a&&this.seek(a,b),this.paused(!0)},h.resume=function(a,b){return null!=a&&this.seek(a,b),this.paused(!1)},h.seek=function(a,b){return this.totalTime(Number(a),b!==!1)},h.restart=function(a,b){return this.reversed(!1).paused(!1).totalTime(a?-this._delay:0,b!==!1,!0)},h.reverse=function(a,b){return null!=a&&this.seek(a||this.totalDuration(),b),this.reversed(!0).paused(!1)},h.render=function(a,b,c){},h.invalidate=function(){return this._time=this._totalTime=0,this._initted=this._gc=!1,this._rawPrevTime=-1,(this._gc||!this.timeline)&&this._enabled(!0),this},h.isActive=function(){var a,b=this._timeline,c=this._startTime;return!b||!this._gc&&!this._paused&&b.isActive()&&(a=b.rawTime(!0))>=c&&a<c+this.totalDuration()/this._timeScale-1e-7},h._enabled=function(a,b){return j||i.wake(),this._gc=!a,this._active=this.isActive(),b!==!0&&(a&&!this.timeline?this._timeline.add(this,this._startTime-this._delay):!a&&this.timeline&&this._timeline._remove(this,!0)),!1},h._kill=function(a,b){return this._enabled(!1,!1)},h.kill=function(a,b){return this._kill(a,b),this},h._uncache=function(a){for(var b=a?this:this.timeline;b;)b._dirty=!0,b=b.timeline;return this},h._swapSelfInParams=function(a){for(var b=a.length,c=a.concat();--b>-1;)"{self}"===a[b]&&(c[b]=this);return c},h._callback=function(a){var b=this.vars,c=b[a],d=b[a+"Params"],e=b[a+"Scope"]||b.callbackScope||this,f=d?d.length:0;switch(f){case 0:c.call(e);break;case 1:c.call(e,d[0]);break;case 2:c.call(e,d[0],d[1]);break;default:c.apply(e,d)}},h.eventCallback=function(a,b,c,d){if("on"===(a||"").substr(0,2)){var e=this.vars;if(1===arguments.length)return e[a];null==b?delete e[a]:(e[a]=b,e[a+"Params"]=p(c)&&-1!==c.join("").indexOf("{self}")?this._swapSelfInParams(c):c,e[a+"Scope"]=d),"onUpdate"===a&&(this._onUpdate=b)}return this},h.delay=function(a){return arguments.length?(this._timeline.smoothChildTiming&&this.startTime(this._startTime+a-this._delay),this._delay=a,this):this._delay},h.duration=function(a){return arguments.length?(this._duration=this._totalDuration=a,this._uncache(!0),this._timeline.smoothChildTiming&&this._time>0&&this._time<this._duration&&0!==a&&this.totalTime(this._totalTime*(a/this._duration),!0),this):(this._dirty=!1,this._duration)},h.totalDuration=function(a){return this._dirty=!1,arguments.length?this.duration(a):this._totalDuration},h.time=function(a,b){return arguments.length?(this._dirty&&this.totalDuration(),this.totalTime(a>this._duration?this._duration:a,b)):this._time},h.totalTime=function(a,b,c){if(j||i.wake(),!arguments.length)return this._totalTime;if(this._timeline){if(0>a&&!c&&(a+=this.totalDuration()),this._timeline.smoothChildTiming){this._dirty&&this.totalDuration();var d=this._totalDuration,e=this._timeline;if(a>d&&!c&&(a=d),this._startTime=(this._paused?this._pauseTime:e._time)-(this._reversed?d-a:a)/this._timeScale,e._dirty||this._uncache(!1),e._timeline)for(;e._timeline;)e._timeline._time!==(e._startTime+e._totalTime)/e._timeScale&&e.totalTime(e._totalTime,!0),e=e._timeline}this._gc&&this._enabled(!0,!1),(this._totalTime!==a||0===this._duration)&&(J.length&&Z(),this.render(a,b,!1),J.length&&Z())}return this},h.progress=h.totalProgress=function(a,b){var c=this.duration();return arguments.length?this.totalTime(c*a,b):c?this._time/c:this.ratio},h.startTime=function(a){return arguments.length?(a!==this._startTime&&(this._startTime=a,this.timeline&&this.timeline._sortChildren&&this.timeline.add(this,a-this._delay)),this):this._startTime},h.endTime=function(a){return this._startTime+(0!=a?this.totalDuration():this.duration())/this._timeScale},h.timeScale=function(a){if(!arguments.length)return this._timeScale;var b,c;for(a=a||m,this._timeline&&this._timeline.smoothChildTiming&&(b=this._pauseTime,c=b||0===b?b:this._timeline.totalTime(),this._startTime=c-(c-this._startTime)*this._timeScale/a),this._timeScale=a,c=this.timeline;c&&c.timeline;)c._dirty=!0,c.totalDuration(),c=c.timeline;return this},h.reversed=function(a){return arguments.length?(a!=this._reversed&&(this._reversed=a,
5176this.totalTime(this._timeline&&!this._timeline.smoothChildTiming?this.totalDuration()-this._totalTime:this._totalTime,!0)),this):this._reversed},h.paused=function(a){if(!arguments.length)return this._paused;var b,c,d=this._timeline;return a!=this._paused&&d&&(j||a||i.wake(),b=d.rawTime(),c=b-this._pauseTime,!a&&d.smoothChildTiming&&(this._startTime+=c,this._uncache(!1)),this._pauseTime=a?b:null,this._paused=a,this._active=this.isActive(),!a&&0!==c&&this._initted&&this.duration()&&(b=d.smoothChildTiming?this._totalTime:(b-this._startTime)/this._timeScale,this.render(b,b===this._totalTime,!0))),this._gc&&!a&&this._enabled(!0,!1),this};var F=t("core.SimpleTimeline",function(a){D.call(this,0,a),this.autoRemoveChildren=this.smoothChildTiming=!0});h=F.prototype=new D,h.constructor=F,h.kill()._gc=!1,h._first=h._last=h._recent=null,h._sortChildren=!1,h.add=h.insert=function(a,b,c,d){var e,f;if(a._startTime=Number(b||0)+a._delay,a._paused&&this!==a._timeline&&(a._pauseTime=a._startTime+(this.rawTime()-a._startTime)/a._timeScale),a.timeline&&a.timeline._remove(a,!0),a.timeline=a._timeline=this,a._gc&&a._enabled(!0,!0),e=this._last,this._sortChildren)for(f=a._startTime;e&&e._startTime>f;)e=e._prev;return e?(a._next=e._next,e._next=a):(a._next=this._first,this._first=a),a._next?a._next._prev=a:this._last=a,a._prev=e,this._recent=a,this._timeline&&this._uncache(!0),this},h._remove=function(a,b){return a.timeline===this&&(b||a._enabled(!1,!0),a._prev?a._prev._next=a._next:this._first===a&&(this._first=a._next),a._next?a._next._prev=a._prev:this._last===a&&(this._last=a._prev),a._next=a._prev=a.timeline=null,a===this._recent&&(this._recent=this._last),this._timeline&&this._uncache(!0)),this},h.render=function(a,b,c){var d,e=this._first;for(this._totalTime=this._time=this._rawPrevTime=a;e;)d=e._next,(e._active||a>=e._startTime&&!e._paused&&!e._gc)&&(e._reversed?e.render((e._dirty?e.totalDuration():e._totalDuration)-(a-e._startTime)*e._timeScale,b,c):e.render((a-e._startTime)*e._timeScale,b,c)),e=d},h.rawTime=function(){return j||i.wake(),this._totalTime};var G=t("TweenLite",function(b,c,d){if(D.call(this,c,d),this.render=G.prototype.render,null==b)throw"Cannot tween a null target.";this.target=b="string"!=typeof b?b:G.selector(b)||b;var e,f,g,h=b.jquery||b.length&&b!==a&&b[0]&&(b[0]===a||b[0].nodeType&&b[0].style&&!b.nodeType),i=this.vars.overwrite;if(this._overwrite=i=null==i?V[G.defaultOverwrite]:"number"==typeof i?i>>0:V[i],(h||b instanceof Array||b.push&&p(b))&&"number"!=typeof b[0])for(this._targets=g=n(b),this._propLookup=[],this._siblings=[],e=0;e<g.length;e++)f=g[e],f?"string"!=typeof f?f.length&&f!==a&&f[0]&&(f[0]===a||f[0].nodeType&&f[0].style&&!f.nodeType)?(g.splice(e--,1),this._targets=g=g.concat(n(f))):(this._siblings[e]=$(f,this,!1),1===i&&this._siblings[e].length>1&&aa(f,this,null,1,this._siblings[e])):(f=g[e--]=G.selector(f),"string"==typeof f&&g.splice(e+1,1)):g.splice(e--,1);else this._propLookup={},this._siblings=$(b,this,!1),1===i&&this._siblings.length>1&&aa(b,this,null,1,this._siblings);(this.vars.immediateRender||0===c&&0===this._delay&&this.vars.immediateRender!==!1)&&(this._time=-m,this.render(Math.min(0,-this._delay)))},!0),H=function(b){return b&&b.length&&b!==a&&b[0]&&(b[0]===a||b[0].nodeType&&b[0].style&&!b.nodeType)},I=function(a,b){var c,d={};for(c in a)U[c]||c in b&&"transform"!==c&&"x"!==c&&"y"!==c&&"width"!==c&&"height"!==c&&"className"!==c&&"border"!==c||!(!R[c]||R[c]&&R[c]._autoCSS)||(d[c]=a[c],delete a[c]);a.css=d};h=G.prototype=new D,h.constructor=G,h.kill()._gc=!1,h.ratio=0,h._firstPT=h._targets=h._overwrittenProps=h._startAt=null,h._notifyPluginsOfEnabled=h._lazy=!1,G.version="1.20.4",G.defaultEase=h._ease=new v(null,null,1,1),G.defaultOverwrite="auto",G.ticker=i,G.autoSleep=120,G.lagSmoothing=function(a,b){i.lagSmoothing(a,b)},G.selector=a.$||a.jQuery||function(b){var c=a.$||a.jQuery;return c?(G.selector=c,c(b)):"undefined"==typeof d?b:d.querySelectorAll?d.querySelectorAll(b):d.getElementById("#"===b.charAt(0)?b.substr(1):b)};var J=[],K={},L=/(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,M=/[\+-]=-?[\.\d]/,N=function(a){for(var b,c=this._firstPT,d=1e-6;c;)b=c.blob?1===a&&null!=this.end?this.end:a?this.join(""):this.start:c.c*a+c.s,c.m?b=c.m(b,this._target||c.t):d>b&&b>-d&&!c.blob&&(b=0),c.f?c.fp?c.t[c.p](c.fp,b):c.t[c.p](b):c.t[c.p]=b,c=c._next},O=function(a,b,c,d){var e,f,g,h,i,j,k,l=[],m=0,n="",o=0;for(l.start=a,l.end=b,a=l[0]=a+"",b=l[1]=b+"",c&&(c(l),a=l[0],b=l[1]),l.length=0,e=a.match(L)||[],f=b.match(L)||[],d&&(d._next=null,d.blob=1,l._firstPT=l._applyPT=d),i=f.length,h=0;i>h;h++)k=f[h],j=b.substr(m,b.indexOf(k,m)-m),n+=j||!h?j:",",m+=j.length,o?o=(o+1)%5:"rgba("===j.substr(-5)&&(o=1),k===e[h]||e.length<=h?n+=k:(n&&(l.push(n),n=""),g=parseFloat(e[h]),l.push(g),l._firstPT={_next:l._firstPT,t:l,p:l.length-1,s:g,c:("="===k.charAt(1)?parseInt(k.charAt(0)+"1",10)*parseFloat(k.substr(2)):parseFloat(k)-g)||0,f:0,m:o&&4>o?Math.round:0}),m+=k.length;return n+=b.substr(m),n&&l.push(n),l.setRatio=N,M.test(b)&&(l.end=null),l},P=function(a,b,c,d,e,f,g,h,i){"function"==typeof d&&(d=d(i||0,a));var j,k=typeof a[b],l="function"!==k?"":b.indexOf("set")||"function"!=typeof a["get"+b.substr(3)]?b:"get"+b.substr(3),m="get"!==c?c:l?g?a[l](g):a[l]():a[b],n="string"==typeof d&&"="===d.charAt(1),o={t:a,p:b,s:m,f:"function"===k,pg:0,n:e||b,m:f?"function"==typeof f?f:Math.round:0,pr:0,c:n?parseInt(d.charAt(0)+"1",10)*parseFloat(d.substr(2)):parseFloat(d)-m||0};return("number"!=typeof m||"number"!=typeof d&&!n)&&(g||isNaN(m)||!n&&isNaN(d)||"boolean"==typeof m||"boolean"==typeof d?(o.fp=g,j=O(m,n?parseFloat(o.s)+o.c+(o.s+"").replace(/[0-9\-\.]/g,""):d,h||G.defaultStringFilter,o),o={t:j,p:"setRatio",s:0,c:1,f:2,pg:0,n:e||b,pr:0,m:0}):(o.s=parseFloat(m),n||(o.c=parseFloat(d)-o.s||0))),o.c?((o._next=this._firstPT)&&(o._next._prev=o),this._firstPT=o,o):void 0},Q=G._internals={isArray:p,isSelector:H,lazyTweens:J,blobDif:O},R=G._plugins={},S=Q.tweenLookup={},T=0,U=Q.reservedProps={ease:1,delay:1,overwrite:1,onComplete:1,onCompleteParams:1,onCompleteScope:1,useFrames:1,runBackwards:1,startAt:1,onUpdate:1,onUpdateParams:1,onUpdateScope:1,onStart:1,onStartParams:1,onStartScope:1,onReverseComplete:1,onReverseCompleteParams:1,onReverseCompleteScope:1,onRepeat:1,onRepeatParams:1,onRepeatScope:1,easeParams:1,yoyo:1,immediateRender:1,repeat:1,repeatDelay:1,data:1,paused:1,reversed:1,autoCSS:1,lazy:1,onOverwrite:1,callbackScope:1,stringFilter:1,id:1,yoyoEase:1},V={none:0,all:1,auto:2,concurrent:3,allOnStart:4,preexisting:5,"true":1,"false":0},W=D._rootFramesTimeline=new F,X=D._rootTimeline=new F,Y=30,Z=Q.lazyRender=function(){var a,b=J.length;for(K={};--b>-1;)a=J[b],a&&a._lazy!==!1&&(a.render(a._lazy[0],a._lazy[1],!0),a._lazy=!1);J.length=0};X._startTime=i.time,W._startTime=i.frame,X._active=W._active=!0,setTimeout(Z,1),D._updateRoot=G.render=function(){var a,b,c;if(J.length&&Z(),X.render((i.time-X._startTime)*X._timeScale,!1,!1),W.render((i.frame-W._startTime)*W._timeScale,!1,!1),J.length&&Z(),i.frame>=Y){Y=i.frame+(parseInt(G.autoSleep,10)||120);for(c in S){for(b=S[c].tweens,a=b.length;--a>-1;)b[a]._gc&&b.splice(a,1);0===b.length&&delete S[c]}if(c=X._first,(!c||c._paused)&&G.autoSleep&&!W._first&&1===i._listeners.tick.length){for(;c&&c._paused;)c=c._next;c||i.sleep()}}},i.addEventListener("tick",D._updateRoot);var $=function(a,b,c){var d,e,f=a._gsTweenID;if(S[f||(a._gsTweenID=f="t"+T++)]||(S[f]={target:a,tweens:[]}),b&&(d=S[f].tweens,d[e=d.length]=b,c))for(;--e>-1;)d[e]===b&&d.splice(e,1);return S[f].tweens},_=function(a,b,c,d){var e,f,g=a.vars.onOverwrite;return g&&(e=g(a,b,c,d)),g=G.onOverwrite,g&&(f=g(a,b,c,d)),e!==!1&&f!==!1},aa=function(a,b,c,d,e){var f,g,h,i;if(1===d||d>=4){for(i=e.length,f=0;i>f;f++)if((h=e[f])!==b)h._gc||h._kill(null,a,b)&&(g=!0);else if(5===d)break;return g}var j,k=b._startTime+m,l=[],n=0,o=0===b._duration;for(f=e.length;--f>-1;)(h=e[f])===b||h._gc||h._paused||(h._timeline!==b._timeline?(j=j||ba(b,0,o),0===ba(h,j,o)&&(l[n++]=h)):h._startTime<=k&&h._startTime+h.totalDuration()/h._timeScale>k&&((o||!h._initted)&&k-h._startTime<=2e-10||(l[n++]=h)));for(f=n;--f>-1;)if(h=l[f],2===d&&h._kill(c,a,b)&&(g=!0),2!==d||!h._firstPT&&h._initted){if(2!==d&&!_(h,b))continue;h._enabled(!1,!1)&&(g=!0)}return g},ba=function(a,b,c){for(var d=a._timeline,e=d._timeScale,f=a._startTime;d._timeline;){if(f+=d._startTime,e*=d._timeScale,d._paused)return-100;d=d._timeline}return f/=e,f>b?f-b:c&&f===b||!a._initted&&2*m>f-b?m:(f+=a.totalDuration()/a._timeScale/e)>b+m?0:f-b-m};h._init=function(){var a,b,c,d,e,f,g=this.vars,h=this._overwrittenProps,i=this._duration,j=!!g.immediateRender,k=g.ease;if(g.startAt){this._startAt&&(this._startAt.render(-1,!0),this._startAt.kill()),e={};for(d in g.startAt)e[d]=g.startAt[d];if(e.data="isStart",e.overwrite=!1,e.immediateRender=!0,e.lazy=j&&g.lazy!==!1,e.startAt=e.delay=null,e.onUpdate=g.onUpdate,e.onUpdateParams=g.onUpdateParams,e.onUpdateScope=g.onUpdateScope||g.callbackScope||this,this._startAt=G.to(this.target,0,e),j)if(this._time>0)this._startAt=null;else if(0!==i)return}else if(g.runBackwards&&0!==i)if(this._startAt)this._startAt.render(-1,!0),this._startAt.kill(),this._startAt=null;else{0!==this._time&&(j=!1),c={};for(d in g)U[d]&&"autoCSS"!==d||(c[d]=g[d]);if(c.overwrite=0,c.data="isFromStart",c.lazy=j&&g.lazy!==!1,c.immediateRender=j,this._startAt=G.to(this.target,0,c),j){if(0===this._time)return}else this._startAt._init(),this._startAt._enabled(!1),this.vars.immediateRender&&(this._startAt=null)}if(this._ease=k=k?k instanceof v?k:"function"==typeof k?new v(k,g.easeParams):w[k]||G.defaultEase:G.defaultEase,g.easeParams instanceof Array&&k.config&&(this._ease=k.config.apply(k,g.easeParams)),this._easeType=this._ease._type,this._easePower=this._ease._power,this._firstPT=null,this._targets)for(f=this._targets.length,a=0;f>a;a++)this._initProps(this._targets[a],this._propLookup[a]={},this._siblings[a],h?h[a]:null,a)&&(b=!0);else b=this._initProps(this.target,this._propLookup,this._siblings,h,0);if(b&&G._onPluginEvent("_onInitAllProps",this),h&&(this._firstPT||"function"!=typeof this.target&&this._enabled(!1,!1)),g.runBackwards)for(c=this._firstPT;c;)c.s+=c.c,c.c=-c.c,c=c._next;this._onUpdate=g.onUpdate,this._initted=!0}
vendor: 4,158 bytes, line 5176
5176,h._initProps=function(b,c,d,e,f){var g,h,i,j,k,l;if(null==b)return!1;K[b._gsTweenID]&&Z(),this.vars.css||b.style&&b!==a&&b.nodeType&&R.css&&this.vars.autoCSS!==!1&&I(this.vars,b);for(g in this.vars)if(l=this.vars[g],U[g])l&&(l instanceof Array||l.push&&p(l))&&-1!==l.join("").indexOf("{self}")&&(this.vars[g]=l=this._swapSelfInParams(l,this));else if(R[g]&&(j=new R[g])._onInitTween(b,this.vars[g],this,f)){for(this._firstPT=k={_next:this._firstPT,t:j,p:"setRatio",s:0,c:1,f:1,n:g,pg:1,pr:j._priority,m:0},h=j._overwriteProps.length;--h>-1;)c[j._overwriteProps[h]]=this._firstPT;(j._priority||j._onInitAllProps)&&(i=!0),(j._onDisable||j._onEnable)&&(this._notifyPluginsOfEnabled=!0),k._next&&(k._next._prev=k)}else c[g]=P.call(this,b,g,"get",l,g,0,null,this.vars.stringFilter,f);return e&&this._kill(e,b)?this._initProps(b,c,d,e,f):this._overwrite>1&&this._firstPT&&d.length>1&&aa(b,this,c,this._overwrite,d)?(this._kill(c,b),this._initProps(b,c,d,e,f)):(this._firstPT&&(this.vars.lazy!==!1&&this._duration||this.vars.lazy&&!this._duration)&&(K[b._gsTweenID]=!0),i)},h.render=function(a,b,c){var d,e,f,g,h=this._time,i=this._duration,j=this._rawPrevTime;if(a>=i-1e-7&&a>=0)this._totalTime=this._time=i,this.ratio=this._ease._calcEnd?this._ease.getRatio(1):1,this._reversed||(d=!0,e="onComplete",c=c||this._timeline.autoRemoveChildren),0===i&&(this._initted||!this.vars.lazy||c)&&(this._startTime===this._timeline._duration&&(a=0),(0>j||0>=a&&a>=-1e-7||j===m&&"isPause"!==this.data)&&j!==a&&(c=!0,j>m&&(e="onReverseComplete")),this._rawPrevTime=g=!b||a||j===a?a:m);else if(1e-7>a)this._totalTime=this._time=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0,(0!==h||0===i&&j>0)&&(e="onReverseComplete",d=this._reversed),0>a&&(this._active=!1,0===i&&(this._initted||!this.vars.lazy||c)&&(j>=0&&(j!==m||"isPause"!==this.data)&&(c=!0),this._rawPrevTime=g=!b||a||j===a?a:m)),(!this._initted||this._startAt&&this._startAt.progress())&&(c=!0);else if(this._totalTime=this._time=a,this._easeType){var k=a/i,l=this._easeType,n=this._easePower;(1===l||3===l&&k>=.5)&&(k=1-k),3===l&&(k*=2),1===n?k*=k:2===n?k*=k*k:3===n?k*=k*k*k:4===n&&(k*=k*k*k*k),1===l?this.ratio=1-k:2===l?this.ratio=k:.5>a/i?this.ratio=k/2:this.ratio=1-k/2}else this.ratio=this._ease.getRatio(a/i);if(this._time!==h||c){if(!this._initted){if(this._init(),!this._initted||this._gc)return;if(!c&&this._firstPT&&(this.vars.lazy!==!1&&this._duration||this.vars.lazy&&!this._duration))return this._time=this._totalTime=h,this._rawPrevTime=j,J.push(this),void(this._lazy=[a,b]);this._time&&!d?this.ratio=this._ease.getRatio(this._time/i):d&&this._ease._calcEnd&&(this.ratio=this._ease.getRatio(0===this._time?0:1))}for(this._lazy!==!1&&(this._lazy=!1),this._active||!this._paused&&this._time!==h&&a>=0&&(this._active=!0),0===h&&(this._startAt&&(a>=0?this._startAt.render(a,!0,c):e||(e="_dummyGS")),this.vars.onStart&&(0!==this._time||0===i)&&(b||this._callback("onStart"))),f=this._firstPT;f;)f.f?f.t[f.p](f.c*this.ratio+f.s):f.t[f.p]=f.c*this.ratio+f.s,f=f._next;this._onUpdate&&(0>a&&this._startAt&&a!==-1e-4&&this._startAt.render(a,!0,c),b||(this._time!==h||d||c)&&this._callback("onUpdate")),e&&(!this._gc||c)&&(0>a&&this._startAt&&!this._onUpdate&&a!==-1e-4&&this._startAt.render(a,!0,c),d&&(this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!b&&this.vars[e]&&this._callback(e),0===i&&this._rawPrevTime===m&&g!==m&&(this._rawPrevTime=0))}},h._kill=function(a,b,c){if("all"===a&&(a=null),null==a&&(null==b||b===this.target))return this._lazy=!1,this._enabled(!1,!1);b="string"!=typeof b?b||this._targets||this.target:G.selector(b)||b;var d,e,f,g,h,i,j,k,l,m=c&&this._time&&c._startTime===this._startTime&&this._timeline===c._timeline;if((p(b)||H(b))&&"number"!=typeof b[0])for(d=b.length;--d>-1;)this._kill(a,b[d],c)&&(i=!0);else{if(this._targets){for(d=this._targets.length;--d>-1;)if(b===this._targets[d]){h=this._propLookup[d]||{},this._overwrittenProps=this._overwrittenProps||[],e=this._overwrittenProps[d]=a?this._overwrittenProps[d]||{}:"all";break}}else{if(b!==this.target)return!1;h=this._propLookup,e=this._overwrittenProps=a?this._overwrittenProps||{}:"all"}
vendor: 4,625 bytes, lines 5176-5187
5176if(h){if(j=a||h,k=a!==e&&"all"!==e&&a!==h&&("object"!=typeof a||!a._tempKill),c&&(G.onOverwrite||this.vars.onOverwrite)){for(f in j)h[f]&&(l||(l=[]),l.push(f));if((l||!a)&&!_(this,c,b,l))return!1}for(f in j)(g=h[f])&&(m&&(g.f?g.t[g.p](g.s):g.t[g.p]=g.s,i=!0),g.pg&&g.t._kill(j)&&(i=!0),g.pg&&0!==g.t._overwriteProps.length||(g._prev?g._prev._next=g._next:g===this._firstPT&&(this._firstPT=g._next),g._next&&(g._next._prev=g._prev),g._next=g._prev=null),delete h[f]),k&&(e[f]=1);!this._firstPT&&this._initted&&this._enabled(!1,!1)}}return i},h.invalidate=function(){return this._notifyPluginsOfEnabled&&G._onPluginEvent("_onDisable",this),this._firstPT=this._overwrittenProps=this._startAt=this._onUpdate=null,this._notifyPluginsOfEnabled=this._active=this._lazy=!1,this._propLookup=this._targets?{}:[],D.prototype.invalidate.call(this),this.vars.immediateRender&&(this._time=-m,this.render(Math.min(0,-this._delay))),this},h._enabled=function(a,b){if(j||i.wake(),a&&this._gc){var c,d=this._targets;if(d)for(c=d.length;--c>-1;)this._siblings[c]=$(d[c],this,!0);else this._siblings=$(this.target,this,!0)}return D.prototype._enabled.call(this,a,b),this._notifyPluginsOfEnabled&&this._firstPT?G._onPluginEvent(a?"_onEnable":"_onDisable",this):!1},G.to=function(a,b,c){return new G(a,b,c)},G.from=function(a,b,c){return c.runBackwards=!0,c.immediateRender=0!=c.immediateRender,new G(a,b,c)},G.fromTo=function(a,b,c,d){return d.startAt=c,d.immediateRender=0!=d.immediateRender&&0!=c.immediateRender,new G(a,b,d)},G.delayedCall=function(a,b,c,d,e){return new G(b,0,{delay:a,onComplete:b,onCompleteParams:c,callbackScope:d,onReverseComplete:b,onReverseCompleteParams:c,immediateRender:!1,lazy:!1,useFrames:e,overwrite:0})},G.set=function(a,b){return new G(a,0,b)},G.getTweensOf=function(a,b){if(null==a)return[];a="string"!=typeof a?a:G.selector(a)||a;var c,d,e,f;if((p(a)||H(a))&&"number"!=typeof a[0]){for(c=a.length,d=[];--c>-1;)d=d.concat(G.getTweensOf(a[c],b));for(c=d.length;--c>-1;)for(f=d[c],e=c;--e>-1;)f===d[e]&&d.splice(c,1)}else if(a._gsTweenID)for(d=$(a).concat(),c=d.length;--c>-1;)(d[c]._gc||b&&!d[c].isActive())&&d.splice(c,1);return d||[]},G.killTweensOf=G.killDelayedCallsTo=function(a,b,c){"object"==typeof b&&(c=b,b=!1);for(var d=G.getTweensOf(a,b),e=d.length;--e>-1;)d[e]._kill(c,a)};var ca=t("plugins.TweenPlugin",function(a,b){this._overwriteProps=(a||"").split(","),this._propName=this._overwriteProps[0],this._priority=b||0,this._super=ca.prototype},!0);if(h=ca.prototype,ca.version="1.19.0",ca.API=2,h._firstPT=null,h._addTween=P,h.setRatio=N,h._kill=function(a){var b,c=this._overwriteProps,d=this._firstPT;if(null!=a[this._propName])this._overwriteProps=[];else for(b=c.length;--b>-1;)null!=a[c[b]]&&c.splice(b,1);for(;d;)null!=a[d.n]&&(d._next&&(d._next._prev=d._prev),d._prev?(d._prev._next=d._next,d._prev=null):this._firstPT===d&&(this._firstPT=d._next)),d=d._next;return!1},h._mod=h._roundProps=function(a){for(var b,c=this._firstPT;c;)b=a[this._propName]||null!=c.n&&a[c.n.split(this._propName+"_").join("")],b&&"function"==typeof b&&(2===c.f?c.t._applyPT.m=b:c.m=b),c=c._next},G._onPluginEvent=function(a,b){var c,d,e,f,g,h=b._firstPT;if("_onInitAllProps"===a){for(;h;){for(g=h._next,d=e;d&&d.pr>h.pr;)d=d._next;(h._prev=d?d._prev:f)?h._prev._next=h:e=h,(h._next=d)?d._prev=h:f=h,h=g}h=b._firstPT=e}for(;h;)h.pg&&"function"==typeof h.t[a]&&h.t[a]()&&(c=!0),h=h._next;return c},ca.activate=function(a){for(var b=a.length;--b>-1;)a[b].API===ca.API&&(R[(new a[b])._propName]=a[b]);return!0},s.plugin=function(a){if(!(a&&a.propName&&a.init&&a.API))throw"illegal plugin definition.";var b,c=a.propName,d=a.priority||0,e=a.overwriteProps,f={init:"_onInitTween",set:"setRatio",kill:"_kill",round:"_mod",mod:"_mod",initAll:"_onInitAllProps"},g=t("plugins."+c.charAt(0).toUpperCase()+c.substr(1)+"Plugin",function(){ca.call(this,c,d),this._overwriteProps=e||[]},a.global===!0),h=g.prototype=new ca(c);h.constructor=g,g.API=a.API;for(b in f)"function"==typeof a[b]&&(h[f[b]]=a[b]);return g.version=a.version,ca.activate([g]),g},f=a._gsQueue){for(g=0;g<f.length;g++)f[g]();for(h in q)q[h].func||a.console.log("GSAP encountered missing dependency: "+h)}j=!1}}("undefined"!=typeof module&&module.exports&&"undefined"!=typeof global?global:this||window,"TweenMax");
5177
5178
5179/*lightbox - pagespeed*/
5180document.addEventListener("DOMContentLoaded", function() {
5181    const closeButtons = document.querySelectorAll('.lb-close');
5182    closeButtons.forEach(button => {
5183        button.setAttribute('href', '#');
5184		button.setAttribute('role', 'button');
5185        button.setAttribute('aria-label', 'Κλείσιμο');
5186    });
5187});

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.