PageSourceSearch

https://extremadura21.com/_static/??-eJytkttOwzAMQH+I1C2rNHhAfApKU…pdnQuPtCor1oKziVb1y3sNbt39t23276/vpB41NHRY=

js extremadura21.com collected 2026-10-10 02:19:22 UTC 73,618 bytes, 1,140 lines download raw bytes

1(()=>{(function(){var Scroller,stats,type,text,totop,loading_text,isIE=-1!==navigator.userAgent.search("MSIE");if(isIE){var IEVersion=navigator.userAgent.match(/MSIE\s?(\d+)\.?\d*;/);IEVersion=parseInt(IEVersion[1])}function fullscreenState(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?1:0}"https:"===document.location.protocol&&(infiniteScroll.settings.ajaxurl=infiniteScroll.settings.ajaxurl.replace("http://","https://")),Scroller=function(e){var t=this;this.id=e.id,this.body=document.body,this.window=window,this.element=document.getElementById(e.id),this.wrapperClass=e.wrapper_class,this.ready=!0,this.disabled=!1,this.page=1,this.offset=e.offset,this.currentday=e.currentday,this.order=e.order,this.throttle=!1,this.click_handle=e.click_handle,this.google_analytics=e.google_analytics,this.history=e.history,this.origURL=window.location.href,this.handle=document.createElement("div"),this.handle.setAttribute("id","infinite-handle");var n=document.createElement("span"),i=document.createElement("button");i.textContent=text,n.appendChild(i),this.handle.appendChild(n),this.footer={el:document.getElementById("infinite-footer"),wrap:e.footer},this.checkViewportOnLoadBound=t.checkViewportOnLoad.bind(this),this.wpMediaelement=null,"scroll"===type?(this.window.addEventListener("scroll",function(){t.throttle=!0}),t.gotop(),setInterval(function(){t.throttle&&(t.throttle=!1,t.thefooter(),t.refresh(),t.determineURL())},250),t.ensureFilledViewport(),this.body.addEventListener("is.post-load",t.checkViewportOnLoadBound)):"click"===type&&(this.click_handle&&this.element.appendChild(this.handle),this.handle.addEventListener("click",function(){t.click_handle&&t.handle.parentNode.removeChild(t.handle),t.refresh()})),this.body.addEventListener("is.post-load",t.initializeMejs)},Scroller.prototype.getScrollTop=function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},Scroller.prototype.extend=function(e){e=e||{};for(var t=1;t<arguments.length;t++)if(arguments[t])for(var n in arguments[t])Object.hasOwn(arguments[t],n)&&(e[n]=arguments[t][n]);return e},Scroller.prototype.check=function(){return this.measure(this.element,[this.wrapperClass]).bottom<2*this.window.innerHeight},Scroller.prototype.render=function(e){var t=Array.prototype.slice.call(e.fragment.childNodes);for(this.body.classList.add("infinity-success");t.length>0;){var n=t.shift();this.element.appendChild(n)}this.trigger(this.body,"is.post-load",{jqueryEventName:"post-load",data:e}),this.ready=!0},Scroller.prototype.query=function(){return{page:this.page+this.offset,currentday:this.currentday,order:this.order,scripts:window.infiniteScroll.settings.scripts,styles:window.infiniteScroll.settings.styles,query_args:window.infiniteScroll.settings.query_args,query_before:window.infiniteScroll.settings.query_before,last_post_date:window.infiniteScroll.settings.last_post_date}},Scroller.prototype.animate=function(e,t){var n=performance.now();requestAnimationFrame(function i(o){var r=Math.min(1,(o-n)/t);e(r),r<1&&requestAnimationFrame(i)})},Scroller.prototype.gotop=function(){var e=document.getElementById("infinity-blog-title"),t=this;e&&(e.setAttribute("title",totop),e.addEventListener("click",function(e){var n=t.window.pageYOffset;e.preventDefault(),t.animate(function(e){var t=n-n*e;document.documentElement.scrollTop=document.body.scrollTop=t},200)}))},Scroller.prototype.thefooter=function(){var e,t,n,i,o=this;if(this.footer&&this.footer.el){if("string"==typeof this.footer.wrap){try{t=(t=document.getElementById(this.footer.wrap).getBoundingClientRect()).width}catch{t=0}t>479&&(e=this.footer.el.querySelector(".container"))&&(e.style.width=t+"px")}n=parseInt(o.footer.el.style.bottom||-50,10),i=this.window.pageYOffset>=350?0:-50,n!==i&&o.animate(function(e){var t=n+(i-n)*e;o.footer.el.style.bottom=t+"px",1===e&&(n=i)},200)}},Scroller.prototype.urlEncodeJSON=function(e,t){var n,i,o=[];for(var r in e)n=encodeURIComponent(r),i=t?t+"["+n+"]":n,"object"==typeof e[r]?!Array.isArray(e[r])||e[r].length>0?o.push(this.urlEncodeJSON(e[r],i)):o.push(i+"[]="):o.push(i+"="+encodeURIComponent(e[r]));return o.join("&")},Scroller.prototype.refresh=function(){var self=this,query,xhr,loader,customized;if(!this.disabled&&this.ready&&this.check())return this.ready=!1,this.click_handle&&(loader||(document.getElementById("infinite-aria").textContent=loading_text,loader=document.createElement("div"),loader.classList.add("infinite-loader"),loader.setAttribute("role","progress"),loader.innerHTML='<svg class="jetpack-spinner infinite-loader-spinner spinner" width="28" height="28" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><circle cx="50" cy="50" r="46" fill="none" stroke="#ddd" stroke-width="8"/><path d="M 50 4 A 46 46 0 0 1 96 50" fill="none" stroke="currentColor" stroke-width="8" stroke-linecap="round"><animateTransform attributeName="transform" type="rotate" dur="1.4s" from="0 50 50" to="360 50 50" repeatCount="indef
1inite"/></path></svg>'),this.element.appendChild(loader)),query=self.extend({action:"infinite_scroll"},this.query()),"undefined"!=typeof wp&&wp.customize&&wp.customize.settings.theme&&(customized={},query.wp_customize="on",query.theme=wp.customize.settings.theme.stylesheet,wp.customize.each(function(e){e._dirty&&(customized[e.id]=e())}),query.customized=JSON.stringify(customized),query.nonce=wp.customize.settings.nonce.preview),xhr=new XMLHttpRequest,xhr.open("POST",infiniteScroll.settings.ajaxurl,!0),xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"),xhr.send(self.urlEncodeJSON(query)),xhr.onerror=function(){self.click_handle&&loader.parentNode&&loader.parentNode.removeChild(loader),self.ready=!0},xhr.onload=function(){var response=JSON.parse(xhr.responseText),httpCheck=xhr.status>=200&&xhr.status<300,responseCheck=void 0!==response.html;if(response&&httpCheck&&responseCheck){if(self.click_handle&&loader.parentNode&&loader.parentNode.removeChild(loader),response.scripts&&Array.isArray(response.scripts)&&response.scripts.forEach(function(e){var t=e.footer?"body":"head";window.infiniteScroll.settings.scripts.push(e.handle),e.extra_data&&self.appendInlineScript(e.extra_data,t),e.before_handle&&self.appendInlineScript(e.before_handle,t);var n=document.createElement("script");n.type="text/javascript",n.src=e.src,n.id=e.handle,n.async=!1,e.after_handle&&(n.onload=function(){self.appendInlineScript(e.after_handle,t)}),"wp-mediaelement"===e.handle&&self.body.removeEventListener("is.post-load",self.initializeMejs),"wp-mediaelement"===e.handle&&"undefined"==typeof mejs?(self.wpMediaelement={},self.wpMediaelement.tag=n,self.wpMediaelement.element=t,setTimeout(self.maybeLoadMejs.bind(self),250)):document.getElementsByTagName(t)[0].appendChild(n)}),response.styles&&Array.isArray(response.styles)&&response.styles.forEach(function(item){window.infiniteScroll.settings.styles.push(item.handle);var style=document.createElement("link");style.rel="stylesheet",style.href=item.src,style.id=item.handle+"-css",!item.conditional||isIE&&eval(item.conditional.replace(/%ver/g,IEVersion))||(style=!1),style&&document.getElementsByTagName("head")[0].appendChild(style)}),response.fragment=document.createElement("div"),response.fragment.innerHTML=response.html,self.page++,stats&&((new Image).src=document.location.protocol+"//pixel.wp.com/g.gif?"+stats+"&post=0&baba="+Math.random()),"object"==typeof response.postflair&&"object"==typeof WPCOM_sharing_counts&&(WPCOM_sharing_counts=self.extend(WPCOM_sharing_counts,response.postflair)),self.render.call(self,response),"click"===type?(infiniteScroll.settings.wrapper&&document.querySelector("#infinite-view-"+(self.page+self.offset-1)+" a:first-of-type").focus({preventScroll:!0}),response.lastbatch?self.click_handle?(self.body.classList.add("infinity-end"),self.body.classList.remove("infinity-success")):self.trigger(this.body,"infinite-scroll-posts-end"):self.click_handle?self.element.appendChild(self.handle):self.trigger(this.body,"infinite-scroll-posts-more")):response.lastbatch&&(self.disabled=!0,self.body.classList.add("infinity-end"),self.body.classList.remove("infinity-success")),response.currentday&&(self.currentday=response.currentday),self.google_analytics){var ga_url=self.history.path.replace(/%d/,self.page);"object"==typeof _gaq&&_gaq.push(["_trackPageview",ga_url]),"function"==typeof ga&&ga("send","pageview",ga_url)}}else self.click_handle&&loader.parentNode&&loader.parentNode.removeChild(loader)},xhr},Scroller.prototype.appendInlineScript=function(e,t){var n=document.createElement("script"),i=document.createTextNode("//<![CDATA[ \n"+e+"\n//]]>");n.type="text/javascript",n.appendChild(i),document.getElementsByTagName(t)[0].appendChild(n)},Scroller.prototype.maybeLoadMejs=function(){null!==this.wpMediaelement&&("undefined"==typeof mejs?setTimeout(this.maybeLoadMejs.bind(this),250):(document.getElementsByTagName(this.wpMediaelement.element)[0].appendChild(this.wpMediaelement.tag),this.wpMediaelement=null,this.body.addEventListener("is.post-load",this.initializeMejs)))},Scroller.prototype.initializeMejs=function(e){if(e.detail&&e.detail.html&&(-1!==e.detail.html.indexOf("wp-audio-shortcode")||-1!==e.detail.html.indexOf("wp-video-shortcode"))&&"undefined"!=typeof mejs){var t,n={};"undefined"!=typeof _wpmejsSettings&&(n.pluginPath=_wpmejsSettings.pluginPath),n.success=function(e){var t=e.attributes.autoplay&&"false"!==e.attributes.autoplay;"flash"===e.pluginType&&t&&e.addEventListener("canplay",function(){e.play()},!1)},t=document.querySelectorAll(".wp-audio-shortcode, .wp-video-shortcode"),t=(t=Array.prototype.slice.call(t)).filter(function(e){for(;e.parentNode;){if(e.classList.contains("mejs-container"))return!1;e=e.parentNode}return!0});for(var i=0;i<t.length;i++)new MediaElementPlayer(t[i],n)}},Scroller.prototype.measure=function(e,t){t=t||[];for(var n,i,o,r=Array.prototype.slice.call(e.children),s=Number.MAX_VALUE,l=0;r.length>0;){for(n=r.shift(),o=0;o<t.length;o++)if(n.classList.contains(t[o])){r=r.concat(Array.prototype.slice.call(n.children));break}i=n.getBoundingClientRect(),s=Math.min(s,i.top),l=Math.max(l,i.bottom)}var a=Math.round(window.innerHeight/2),d=s<=a&&l>=a;return{top:s,bottom:l,height:l-s,factor:(Math.min(l,a)-Math.max(s,0))/a,isActive:d}},Scroller.prototype.ensureFilledViewport=function(){var e=this,t=e.window.innerHeight,n=e.measure(e.element,[e.wrapperClass]);e.body.removeEventListener("is.post-load",e.checkViewportOnLoadBound),0!==n.bottom&&n.bottom<t&&(e.ready=!0,e.refresh())},Scroller.prototype.checkViewportOnLoad=function(){this.ensureFilledViewport()};var previousFullScrenState=fullscreenState();Scroller.prototype.determineURL=function(){var e,t=this,n=-1,i=fullscreenState(),o=0;if(previousFullScrenState^i)previousFullScrenState=i;else{previousFullScrenState=i,e=document.querySelectorAll("."+t.wrapperClass);for(var r=0;r<e.length;r++){var s=t.measure(e[r]);if(s.isActive){n=parseInt(e[r].dataset.pageNum,10);break}s.factor>o&&(n=parseInt(e[r].dataset.pageNum,10),o=s.factor)}t.updateURL(n)}},Scroller.prototype.updateURL=function(e){if(window.history.pushState){var t=this,n=t.origURL;-1!==e&&(n=window.location.protocol+"//"+t.history.host+t.history.path.replace(/%d/,e)+t.history.parameters),window.location.href!==n&&history.pushState(null,null,n)}},Scroller.prototype.pause=function(){this.disabled=!0},Scroller.prototype.resume=function(){this.disabled=!1},Scroller.prototype.trigger=function(e,t,n){var i;(n=n||{}).jqueryEventName&&"undefined"!=typeof jQuery&&jQuery(e).trigger(n.jqueryEventName,n.data||null);try{i=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n.data||null})}catch{(i=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,n.data||null)}e.dispatchEvent(i)};var jetpackInfinityModule=function(){if("object"==typeof infiniteScroll&&(infiniteScroll.
1settings.body_class.split(" ").forEach(function(e){e&&document.body.classList.add(e)}),stats=infiniteScroll.settings.stats,type=infiniteScroll.settings.type,text=infiniteScroll.settings.text,totop=infiniteScroll.settings.totop,loading_text=infiniteScroll.settings.loading_text,infiniteScroll.scroller=new Scroller(infiniteScroll.settings),"click"===type)){var e=null;window.addEventListener("scroll",function(){e||(e=setTimeout(function(){infiniteScroll.scroller.determineURL(),e=null},250))})}};"interactive"===document.readyState||"complete"===document.readyState?jetpackInfinityModule():document.addEventListener("DOMContentLoaded",jetpackInfinityModule)})()})();;
2!function(e){var o={};function n(t){if(o[t])return o[t].exports;var r=o[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=o,n.d=function(e,o,t){n.o(e,o)||Object.defineProperty(e,o,{enumerable:!0,get:t})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,o){if(1&o&&(e=n(e)),8&o)return e;if(4&o&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(n.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&o&&"string"!=typeof e)for(var r in e)n.d(t,r,function(o){return e[o]}.bind(null,r));return t},n.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(o,"a",o),o},n.o=function(e,o){return Object.prototype.hasOwnProperty.call(e,o)},n.p="",n(n.s=273)}({273:function(e,o){!function(){"use strict";let e,o;function n(e){return new Promise((o,n)=>{const t=document.createElement("script");t.onload=()=>o(),t.onerror=e=>n(e),t.src=e,document.body.appendChild(t)})}function t(){if(e)return e;const o=window.wpcom_coblocks_js;return e=n(o.coblocks_lightbox_js),e}function r(){if(o)return o;window.wpcomJQueryUsageLoggerDisabled=!0;const e=window.wpcom_coblocks_js,t=window.jQuery?Promise.resolve():n(e.jquery_core_js).then(()=>n(e.jquery_migrate_js)),r=t.then(()=>window.imagesLoaded?Promise.resolve():n(e.imagesloaded_js)),c=t.then(()=>window.Masonry?Promise.resolve():n(e.masonry_js)),u=Promise.all([t,r,c]).then(()=>n(e.coblocks_masonry_js));return o=u,o}function c(){document.querySelector(".wp-block-coblocks-gallery-masonry")&&r(),document.querySelector(".has-lightbox")&&t(),document.body.classList.contains("block-editor-page")&&(r(),t())}"loading"!==document.readyState?c():document.addEventListener("DOMContentLoaded",c)}()}});;
3jQuery(document).ready(function($){
4
5	// Disable click on empty hrefs
6	$( 'a[href="#"]' ).not( '#wpadminbar a' ).not( '#superadminbar a' ).click(function(){
7		return false;
8	});
9
10	// Hide carousel controls when there's only one slide
11	$('.eb-carousel').each(function() {
12	  var items = $('.eb-carousel-inner .item').length;
13		if(items <= 1) {
14			$('.eb-ecarousel-control').hide();
15			$('.carousel-indicators').hide();
16		}
17	});
18
19	// Toggle the menu on mobile devices
20	$('.menu-toggle').click(function(){
21		$('.menu').toggleClass('expanded');
22	});
23
24    //Clear the text in the search box on focus
25		var div = $('div.month-list'),
26    ul = $('ul.months'),
27    // unordered list's left margin
28    ulPadding = 15;
29
30		    //Get menu width
31    var divWidth = div.width();
32
33    //Remove scrollbars
34    div.css({overflow: 'hidden'});
35
36    //Find last image container
37    var lastLi = ul.find('li:last-child');
38
39    //When user move mouse over menu
40    div.mousemove(function(e){
41
42      //As images are loaded ul width increases,
43      //so we recalculate it each time
44      var ulWidth = lastLi[0].offsetLeft + lastLi.outerWidth() + ulPadding;
45
46      var left = (e.pageX - div.offset().left) * (ulWidth-divWidth) / divWidth;
47      div.scrollLeft(left);
48    });
49		$('.dropdown-toggle').click(function(){
50			var showClass = $(this).attr("data-toggle");
51			$('.' + showClass).toggle();
52			return false;
53		});
54		$('tr td:last-child a[data-toggle="popover"]').popover({
55			trigger: 'click',
56			html: true,
57			placement: 'left'
58		});
59		$('tr td:nth-child(6n) a[data-toggle="popover"]').popover({
60			trigger: 'click',
61			html: true,
62			placement: 'left'
63		});
64		$('[data-toggle="popover"]').popover({
65		    trigger: 'click',
66				html: true,
67				placement: 'right'
68		});
69
70		var $visiblePopover;
71
72		$('body').on('click', '[data-toggle="popover"]', function(e) {
73		    var $this = $(this);
74		    // check if the one clicked is now shown
75		    if ($this.data('popover').tip().hasClass('in')) {
76
77		        // if another was showing, hide it
78		        $visiblePopover && $visiblePopover.popover('hide');
79
80		        // then store the current popover
81		        $visiblePopover = $this;
82		    } else { // if it was hidden, then nothing must be showing
83		        $visiblePopover = '';
84		    }
85				return false;
86		});
87
88	// Bootstrap Collapse
89	$(".collapse").collapse();
90
91	var container = $( '.menu' );
92
93	/**
94	 * Sets or removes .focus class on an element.
95	 */
96	function toggleFocus() {
97		var self = this;
98
99		// Move up through the ancestors of the current link until we hit .menu.
100		while ( -1 === self.className.indexOf( '.menu' ) ) {
101
102			// On li elements toggle the class .focus.
103			if ( 'li' === self.tagName.toLowerCase() ) {
104				if ( -1 !== self.className.indexOf( 'focus' ) ) {
105					self.className = self.className.replace( ' focus', '' );
106				} else {
107					self.className += ' focus';
108				}
109			}
110
111			self = self.parentElement;
112		}
113	}
114
115	/**
116	 * Toggles `focus` class to allow submenu access on tablets.
117	 */
118	( function ( container ) {
119		var touchStartFn,
120			parentLink = container.find( '.menu-item-has-children > a, .page_item_has_children > a' );
121
122		if ( 'ontouchstart' in window ) {
123			touchStartFn = function( e ) {
124				var menuItem = this.parentNode;
125
126				console.log( this.parentNode );
127
128				if ( ! menuItem.classList.contains( 'focus' ) ) {
129
130					e.preventDefault();
131					for( var i = 0; i < menuItem.parentNode.children.length; ++i ) {
132						if ( menuItem === menuItem.parentNode.children[i] ) {
133							continue;
134						}
135						menuItem.parentNode.children[i].classList.remove( 'focus' );
136					}
137					menuItem.classList.add( 'focus' );
138				} else {
139					menuItem.classList.remove( 'focus' );
140				}
141			};
142
143			for ( var i = 0; i < parentLink.length; ++i ) {
144				parentLink[i].addEventListener( 'touchstart', touchStartFn, false );
145			}
146		}
147	} ( container ) );
148});
149;
150/* ==========================================================
151 * bootstrap-carousel.js v2.3.1
152 * http://twitter.github.com/bootstrap/javascript.html#carousel
153 * ==========================================================
154 * Copyright 2012 Twitter, Inc.
155 *
156 * Licensed under the Apache License, Version 2.0 (the "License");
157 * you may not use this file except in compliance with the License.
158 * You may obtain a copy of the License at
159 *
160 * http://www.apache.org/licenses/LICENSE-2.0
161 *
162 * Unless required by applicable law or agreed to in writing, software
163 * distributed under the License is distributed on an "AS IS" BASIS,
164 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
165 * See the License for the specific language governing permissions and
166 * limitations under the License.
167 * ========================================================== */
168
169
170!function ($) {
171
172  "use strict"; // jshint ;_;
173
174
175 /* CAROUSEL CLASS DEFINITION
176  * ========================= */
177
178  var Carousel = function (element, options) {
179    this.$element = $(element)
180    this.$indicators = this.$element.find('.carousel-indicators')
181    this.options = options
182    this.options.pause == 'hover' && this.$element
183      .on('mouseenter', $.proxy(this.pause, this))
184      .on('mouseleave', $.proxy(this.cycle, this))
185  }
186
187  Carousel.prototype = {
188
189    cycle: function (e) {
190      if (!e) this.paused = false
191      if (this.interval) clearInterval(this.interval);
192      this.options.interval
193        && !this.paused
194        && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
195      return this
196    }
197
198  , getActiveIndex: function () {
199      this.$active = this.$element.find('.item.active')
200      this.$items = this.$active.parent().children()
201      return this.$items.index(this.$active)
202    }
203
204  , to: function (pos) {
205      var activeIndex = this.getActiveIndex()
206        , that = this
207
208      if (pos > (this.$items.length - 1) || pos < 0) return
209
210      if (this.sliding) {
211        return this.$element.one('slid', function () {
212          that.to(pos)
213        })
214      }
215
216      if (activeIndex == pos) {
217        return this.pause().cycle()
218      }
219
220      return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
221    }
222
223  , pause: function (e) {
224      if (!e) this.paused = true
225      if (this.$element.find('.next, .prev').length && $.support.transition.end) {
226        this.$element.trigger($.support.transition.end)
227        this.cycle(true)
228      }
229      clearInterval(this.interval)
230      this.interval = null
231      return this
232    }
233
234  , next: function () {
235      if (this.sliding) return
236      return this.slide('next')
237    }
238
239  , prev: function () {
240      if (this.sliding) return
241      return this.slide('prev')
242    }
243
244  , slide: function (type, next) {
245      var $active = this.$element.find('.item.active')
246        , $next = next || $active[type]()
247        , isCycling = this.interval
248        , direction = type == 'next' ? 'left' : 'right'
249        , fallback  = type == 'next' ? 'first' : 'last'
250        , that = this
251        , e
252
253      this.sliding = true
254
255      isCycling && this.pause()
256
257      $next = $next.length ? $next : this.$element.find('.item')[fallback]()
258
259      e = $.Event('slide', {
260        relatedTarget: $next[0]
261      , direction: direction
262      })
263
264      if ($next.hasClass('active')) return
265
266      if (this.$indicators.length) {
267        this.$indicators.find('.active').removeClass('active')
268        this.$element.one('slid', function () {
269          var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
270          $nextIndicator && $nextIndicator.addClass('active')
271        })
272      }
273
274      if ($.support.transition && this.$element.hasClass('slide')) {
275        this.$element.trigger(e)
276        if (e.isDefaultPrevented()) return
277        $next.addClass(type)
278        $next[0].offsetWidth // force reflow
279        $active.addClass(direction)
280        $next.addClass(direction)
281        this.$element.one($.support.transition.end, function () {
282          $next.removeClass([type, direction].join(' ')).addClass('active')
283          $active.removeClass(['active', direction].join(' '))
284          that.sliding = false
285          setTimeout(function () { that.$element.trigger('slid') }, 0)
286        })
287      } else {
288        this.$element.trigger(e)
289        if (e.isDefaultPrevented()) return
290        $active.removeClass('active')
291        $next.addClass('active')
292        this.sliding = false
293        this.$element.trigger('slid')
294      }
295
296      isCycling && this.cycle()
297
298      return this
299    }
300
301  }
302
303
304 /* CAROUSEL PLUGIN DEFINITION
305  * ========================== */
306
307  var old = $.fn.carousel
308
309  $.fn.carousel = function (option) {
310    return this.each(function () {
311      var $this = $(this)
312        , data = $this.data('carousel')
313        , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
314        , action = typeof option == 'string' ? option : options.slide
315      if (!data) $this.data('carousel', (data = new Carousel(this, options)))
316      if (typeof option == 'number') data.to(option)
317      else if (action) data[action]()
318      else if (options.interval) data.pause().cycle()
319    })
320  }
321
322  $.fn.carousel.defaults = {
323    interval: 5000
324  , pause: 'hover'
325  }
326
327  $.fn.carousel.Constructor = Carousel
328
329
330 /* CAROUSEL NO CONFLICT
331  * ==================== */
332
333  $.fn.carousel.noConflict = function () {
334    $.fn.carousel = old
335    return this
336  }
337
338 /* CAROUSEL DATA-API
339  * ================= */
340
341  $(document).on('click.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {
342    var $this = $(this), href
343      , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
344      , options = $.extend({}, $target.data(), $this.data())
345      , slideIndex
346
347    $target.carousel(options)
348
349    if (slideIndex = $this.attr('data-slide-to')) {
350      $target.data('carousel').pause().to(slideIndex).cycle()
351    }
352
353    e.preventDefault()
354  })
355
356}(window.jQuery);;
357/* =============================================================
358 * bootstrap-collapse.js v2.3.1
359 * http://twitter.github.com/bootstrap/javascript.html#collapse
360 * =============================================================
361 * Copyright 2012 Twitter, Inc.
362 *
363 * Licensed under the Apache License, Version 2.0 (the "License");
364 * you may not use this file except in compliance with the License.
365 * You may obtain a copy of the License at
366 *
367 * http://www.apache.org/licenses/LICENSE-2.0
368 *
369 * Unless required by applicable law or agreed to in writing, software
370 * distributed under the License is distributed on an "AS IS" BASIS,
371 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
372 * See the License for the specific language governing permissions and
373 * limitations under the License.
374 * ============================================================ */
375
376
377!function ($) {
378
379  "use strict"; // jshint ;_;
380
381
382 /* COLLAPSE PUBLIC CLASS DEFINITION
383  * ================================ */
384
385  var Collapse = function (element, options) {
386    this.$element = $(element)
387    this.options = $.extend({}, $.fn.collapse.defaults, options)
388
389    if (this.options.parent) {
390      this.$parent = $(this.options.parent)
391    }
392
393    this.options.toggle && this.toggle()
394  }
395
396  Collapse.prototype = {
397
398    constructor: Collapse
399
400  , dimension: function () {
401      var hasWidth = this.$element.hasClass('width')
402      return hasWidth ? 'width' : 'height'
403    }
404
405  , show: function () {
406      var dimension
407        , scroll
408        , actives
409        , hasData
410
411      if (this.transitioning || this.$element.hasClass('in')) return
412
413      dimension = this.dimension()
414      scroll = $.camelCase(['scroll', dimension].join('-'))
415      actives = this.$parent && this.$parent.find('> .accordion-group > .in')
416
417      if (actives && actives.length) {
418        hasData = actives.data('collapse')
419        if (hasData && hasData.transitioning) return
420        actives.collapse('hide')
421        hasData || actives.data('collapse', null)
422      }
423
424      this.$element[dimension](0)
425      this.transition('addClass', $.Event('show'), 'shown')
426      $.support.transition && this.$element[dimension](this.$element[0][scroll])
427    }
428
429  , hide: function () {
430      var dimension
431      if (this.transitioning || !this.$element.hasClass('in')) return
432      dimension = this.dimension()
433      this.reset(this.$element[dimension]())
434      this.transition('removeClass', $.Event('hide'), 'hidden')
435      this.$element[dimension](0)
436    }
437
438  , reset: function (size) {
439      var dimension = this.dimension()
440
441      this.$element
442        .removeClass('collapse')
443        [dimension](size || 'auto')
444        [0].offsetWidth
445
446      this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
447
448      return this
449    }
450
451  , transition: function (method, startEvent, completeEvent) {
452      var that = this
453        , complete = function () {
454            if (startEvent.type == 'show') that.reset()
455            that.transitioning = 0
456            that.$element.trigger(completeEvent)
457          }
458
459      this.$element.trigger(startEvent)
460
461      if (startEvent.isDefaultPrevented()) return
462
463      this.transitioning = 1
464
465      this.$element[method]('in')
466
467      $.support.transition && this.$element.hasClass('collapse') ?
468        this.$element.one($.support.transition.end, complete) :
469        complete()
470    }
471
472  , toggle: function () {
473      this[this.$element.hasClass('in') ? 'hide' : 'show']()
474    }
475
476  }
477
478
479 /* COLLAPSE PLUGIN DEFINITION
480  * ========================== */
481
482  var old = $.fn.collapse
483
484  $.fn.collapse = function (option) {
485    return this.each(function () {
486      var $this = $(this)
487        , data = $this.data('collapse')
488        , options = $.extend({}, $.fn.collapse.defaults, $this.data(), typeof option == 'object' && option)
489      if (!data) $this.data('collapse', (data = new Collapse(this, options)))
490      if (typeof option == 'string') data[option]()
491    })
492  }
493
494  $.fn.collapse.defaults = {
495    toggle: true
496  }
497
498  $.fn.collapse.Constructor = Collapse
499
500
501 /* COLLAPSE NO CONFLICT
502  * ==================== */
503
504  $.fn.collapse.noConflict = function () {
505    $.fn.collapse = old
506    return this
507  }
508
509
510 /* COLLAPSE DATA-API
511  * ================= */
512
513  $(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
514    var $this = $(this), href
515      , target = $this.attr('data-target')
516        || e.preventDefault()
517        || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
518      , option = $(target).data('collapse') ? 'toggle' : $this.data()
519    $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
520    $(target).collapse(option)
521  })
522
523}(window.jQuery);;
524/* ===========================================================
525 * bootstrap-tooltip.js v2.3.1
526 * http://twitter.github.com/bootstrap/javascript.html#tooltips
527 * Inspired by the original jQuery.tipsy by Jason Frame
528 * ===========================================================
529 * Copyright 2012 Twitter, Inc.
530 *
531 * Licensed under the Apache License, Version 2.0 (the "License");
532 * you may not use this file except in compliance with the License.
533 * You may obtain a copy of the License at
534 *
535 * http://www.apache.org/licenses/LICENSE-2.0
536 *
537 * Unless required by applicable law or agreed to in writing, software
538 * distributed under the License is distributed on an "AS IS" BASIS,
539 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
540 * See the License for the specific language governing permissions and
541 * limitations under the License.
542 * ========================================================== */
543
544
545!function ($) {
546
547  "use strict"; // jshint ;_;
548
549
550 /* TOOLTIP PUBLIC CLASS DEFINITION
551  * =============================== */
552
553  var Tooltip = function (element, options) {
554    this.init('tooltip', element, options)
555  }
556
557  Tooltip.prototype = {
558
559    constructor: Tooltip
560
561  , init: function (type, element, options) {
562      var eventIn
563        , eventOut
564        , triggers
565        , trigger
566        , i
567
568      this.type = type
569      this.$element = $(element)
570      this.options = this.getOptions(options)
571      this.enabled = true
572
573      triggers = this.options.trigger.split(' ')
574
575      for (i = triggers.length; i--;) {
576        trigger = triggers[i]
577        if (trigger == 'click') {
578          this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
579        } else if (trigger != 'manual') {
580          eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'
581          eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
582          this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
583          this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
584        }
585      }
586
587      this.options.selector ?
588        (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
589        this.fixTitle()
590    }
591
592  , getOptions: function (options) {
593      options = $.extend({}, $.fn[this.type].defaults, this.$element.data(), options)
594
595      if (options.delay && typeof options.delay == 'number') {
596        options.delay = {
597          show: options.delay
598        , hide: options.delay
599        }
600      }
601
602      return options
603    }
604
605  , enter: function (e) {
606      var defaults = $.fn[this.type].defaults
607        , options = {}
608        , self
609
610      this._options && $.each(this._options, function (key, value) {
611        if (defaults[key] != value) options[key] = value
612      }, this)
613
614      self = $(e.currentTarget)[this.type](options).data(this.type)
615
616      if (!self.options.delay || !self.options.delay.show) return self.show()
617
618      clearTimeout(this.timeout)
619      self.hoverState = 'in'
620      this.timeout = setTimeout(function() {
621        if (self.hoverState == 'in') self.show()
622      }, self.options.delay.show)
623    }
624
625  , leave: function (e) {
626      var self = $(e.currentTarget)[this.type](this._options).data(this.type)
627
628      if (this.timeout) clearTimeout(this.timeout)
629      if (!self.options.delay || !self.options.delay.hide) return self.hide()
630
631      self.hoverState = 'out'
632      this.timeout = setTimeout(function() {
633        if (self.hoverState == 'out') self.hide()
634      }, self.options.delay.hide)
635    }
636
637  , show: function () {
638      var $tip
639        , pos
640        , actualWidth
641        , actualHeight
642        , placement
643        , tp
644        , e = $.Event('show')
645
646      if (this.hasContent() && this.enabled) {
647        this.$element.trigger(e)
648        if (e.isDefaultPrevented()) return
649        $tip = this.tip()
650        this.setContent()
651
652        if (this.options.animation) {
653          $tip.addClass('fade')
654        }
655
656        placement = typeof this.options.placement == 'function' ?
657          this.options.placement.call(this, $tip[0], this.$element[0]) :
658          this.options.placement
659
660        $tip
661          .detach()
662          .css({ top: 0, left: 0, display: 'block' })
663
664        this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
665
666        pos = this.getPosition()
667
668        actualWidth = $tip[0].offsetWidth
669        actualHeight = $tip[0].offsetHeight
670
671        switch (placement) {
672          case 'bottom':
673            tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
674            break
675          case 'top':
676            tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
677            break
678          case 'left':
679            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
680            break
681          case 'right':
682            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
683            break
684        }
685
686        this.applyPlacement(tp, placement)
687        this.$element.trigger('shown')
688      }
689    }
690
691  , applyPlacement: function(offset, placement){
692      var $tip = this.tip()
693        , width = $tip[0].offsetWidth
694        , height = $tip[0].offsetHeight
695        , actualWidth
696        , actualHeight
697        , delta
698        , replace
699
700      $tip
701        .offset(offset)
702        .addClass(placement)
703        .addClass('in')
704
705      actualWidth = $tip[0].offsetWidth
706      actualHeight = $tip[0].offsetHeight
707
708      if (placement == 'top' && actualHeight != height) {
709        offset.top = offset.top + height - actualHeight
710        replace = true
711      }
712
713      if (placement == 'bottom' || placement == 'top') {
714        delta = 0
715
716        if (offset.left < 0){
717          delta = offset.left * -2
718          offset.left = 0
719          $tip.offset(offset)
720          actualWidth = $tip[0].offsetWidth
721          actualHeight = $tip[0].offsetHeight
722        }
723
724        this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')
725      } else {
726        this.replaceArrow(actualHeight - height, actualHeight, 'top')
727      }
728
729      if (replace) $tip.offset(offset)
730    }
731
732  , replaceArrow: function(delta, dimension, position){
733      this
734        .arrow()
735        .css(position, delta ? (50 * (1 - delta / dimension) + "%") : '')
736    }
737
738  , setContent: function () {
739      var $tip = this.tip()
740        , title = this.getTitle()
741
742      $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
743      $tip.removeClass('fade in top bottom left right')
744    }
745
746  , hide: function () {
747      var that = this
748        , $tip = this.tip()
749        , e = $.Event('hide')
750
751      this.$element.trigger(e)
752      if (e.isDefaultPrevented()) return
753
754      $tip.removeClass('in')
755
756      function removeWithAnimation() {
757        var timeout = setTimeout(function () {
758          $tip.off($.support.transition.end).detach()
759        }, 500)
760
761        $tip.one($.support.transition.end, function () {
762          clearTimeout(timeout)
763          $tip.detach()
764        })
765      }
766
767      $.support.transition && this.$tip.hasClass('fade') ?
768        removeWithAnimation() :
769        $tip.detach()
770
771      this.$element.trigger('hidden')
772
773      return this
774    }
775
776  , fixTitle: function () {
777      var $e = this.$element
778      if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
779        $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
780      }
781    }
782
783  , hasContent: function () {
784      return this.getTitle()
785    }
786
787  , getPosition: function () {
788      var el = this.$element[0]
789      return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {
790        width: el.offsetWidth
791      , height: el.offsetHeight
792      }, this.$element.offset())
793    }
794
795  , getTitle: function () {
796      var title
797        , $e = this.$element
798        , o = this.options
799
800      title = $e.attr('data-original-title')
801        || (typeof o.title == 'function' ? o.title.call($e[0]) :  o.title)
802
803      return title
804    }
805
806  , tip: function () {
807      return this.$tip = this.$tip || $(this.options.template)
808    }
809
810  , arrow: function(){
811      return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow")
812    }
813
814  , validate: function () {
815      if (!this.$element[0].parentNode) {
816        this.hide()
817        this.$element = null
818        this.options = null
819      }
820    }
821
822  , enable: function () {
823      this.enabled = true
824    }
825
826  , disable: function () {
827      this.enabled = false
828    }
829
830  , toggleEnabled: function () {
831      this.enabled = !this.enabled
832    }
833
834  , toggle: function (e) {
835      var self = e ? $(e.currentTarget)[this.type](this._options).data(this.type) : this
836      self.tip().hasClass('in') ? self.hide() : self.show()
837    }
838
839  , destroy: function () {
840      this.hide().$element.off('.' + this.type).removeData(this.type)
841    }
842
843  }
844
845
846 /* TOOLTIP PLUGIN DEFINITION
847  * ========================= */
848
849  var old = $.fn.tooltip
850
851  $.fn.tooltip = function ( option ) {
852    return this.each(function () {
853      var $this = $(this)
854        , data = $this.data('tooltip')
855        , options = typeof option == 'object' && option
856      if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
857      if (typeof option == 'string') data[option]()
858    })
859  }
860
861  $.fn.tooltip.Constructor = Tooltip
862
863  $.fn.tooltip.defaults = {
864    animation: true
865  , placement: 'top'
866  , selector: false
867  , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
868  , trigger: 'hover focus'
869  , title: ''
870  , delay: 0
871  , html: false
872  , container: false
873  }
874
875
876 /* TOOLTIP NO CONFLICT
877  * =================== */
878
879  $.fn.tooltip.noConflict = function () {
880    $.fn.tooltip = old
881    return this
882  }
883
884}(window.jQuery);
885;
886/* ===========================================================
887 * bootstrap-popover.js v2.3.1
888 * http://twitter.github.com/bootstrap/javascript.html#popovers
889 * ===========================================================
890 * Copyright 2012 Twitter, Inc.
891 *
892 * Licensed under the Apache License, Version 2.0 (the "License");
893 * you may not use this file except in compliance with the License.
894 * You may obtain a copy of the License at
895 *
896 * http://www.apache.org/licenses/LICENSE-2.0
897 *
898 * Unless required by applicable law or agreed to in writing, software
899 * distributed under the License is distributed on an "AS IS" BASIS,
900 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
901 * See the License for the specific language governing permissions and
902 * limitations under the License.
903 * =========================================================== */
904
905
906!function ($) {
907
908  "use strict"; // jshint ;_;
909
910
911 /* POPOVER PUBLIC CLASS DEFINITION
912  * =============================== */
913
914  var Popover = function (element, options) {
915    this.init('popover', element, options)
916  }
917
918
919  /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
920     ========================================== */
921
922  Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
923
924    constructor: Popover
925
926  , setContent: function () {
927      var $tip = this.tip()
928        , title = this.getTitle()
929        , content = this.getContent()
930
931      $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
932      $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
933
934      $tip.removeClass('fade top bottom left right in')
935    }
936
937  , hasContent: function () {
938      return this.getTitle() || this.getContent()
939    }
940
941  , getContent: function () {
942      var content
943        , $e = this.$element
944        , o = this.options
945
946      content = (typeof o.content == 'function' ? o.content.call($e[0]) :  o.content)
947        || $e.attr('data-content')
948
949      return content
950    }
951
952  , tip: function () {
953      if (!this.$tip) {
954        this.$tip = $(this.options.template)
955      }
956      return this.$tip
957    }
958
959  , destroy: function () {
960      this.hide().$element.off('.' + this.type).removeData(this.type)
961    }
962
963  })
964
965
966 /* POPOVER PLUGIN DEFINITION
967  * ======================= */
968
969  var old = $.fn.popover
970
971  $.fn.popover = function (option) {
972    return this.each(function () {
973      var $this = $(this)
974        , data = $this.data('popover')
975        , options = typeof option == 'object' && option
976      if (!data) $this.data('popover', (data = new Popover(this, options)))
977      if (typeof option == 'string') data[option]()
978    })
979  }
980
981  $.fn.popover.Constructor = Popover
982
983  $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
984    placement: 'right'
985  , trigger: 'click'
986  , content: ''
987  , template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
988  })
989
990
991 /* POPOVER NO CONFLICT
992  * =================== */
993
994  $.fn.popover.noConflict = function () {
995    $.fn.popover = old
996    return this
997  }
998
999}(window.jQuery);
1000;
1001!function(){"use strict";var e,t={noop:function(){}
1001,texturize:function(e){return(e=(e=(e=(e+="").replace(/'/g,"&#8217;").replace(/&#039;/g,"&#8217;")).replace(/"/g,"&#8221;").replace(/&#034;/g,"&#8221;").replace(/&quot;/g,"&#8221;").replace(/[\u201D]/g,"&#8221;")).replace(/([\w]+)=&#[\d]+;(.+?)&#[\d]+;/g,'$1="$2"')).trim()},applyReplacements:function(e,t){if(e)return t?e.replace(/{(\d+)}/g,function(e,r){return void 0!==t[r]?t[r]:e}):e},getBackgroundImage:function(e){var t=document.createElement("canvas"),r=t.getContext&&t.getContext("2d");if(e){r.filter="blur(20px) ",r.drawImage(e,0,0);var o=t.toDataURL("image/png");return t=null,o}}},r=function(){function e(e,t){return Element.prototype.matches?e.matches(t):Element.prototype.msMatchesSelector?e.msMatchesSelector(t):void 0}function r(e,t,r,o){if(!e)return o();e.jpCarouselCancelFade&&e.jpCarouselCancelFade(),e.classList.remove("jp-carousel-fade"),e.style.removeProperty("display"),e.style.opacity=t,e.style.pointerEvents="none",e.offsetWidth,e.classList.add("jp-carousel-fade"),e.style.opacity=r;var a=1e3*parseFloat(getComputedStyle(e).transitionDuration)||0,n=setTimeout(function(){e.jpCarouselCancelFade=null,e.style.removeProperty("pointer-events"),o()},a+50);e.jpCarouselCancelFade=function(){clearTimeout(n),e.jpCarouselCancelFade=null}}return{closest:function(t,r){if(t.closest)return t.closest(r);var o=t;do{if(e(o,r))return o;o=o.parentElement||o.parentNode}while(null!==o&&1===o.nodeType);return null},matches:e,hide:function(e){e&&(e.style.display="none")},show:function(e){e&&(e.style.display="block")},fadeIn:function(e,o){r(e,0,1,o=o||t.noop)},fadeOut:function(e,o){o=o||t.noop,r(e,1,0,function(){e&&(e.style.display="none"),o()})},scrollToElement:function(e,t,r){if(!e||!t)return r?r():void 0;var o=t.querySelector(".jp-carousel-info-extra");o&&(o.style.minHeight=window.innerHeight-64+"px");var a=!0,n=Date.now(),i=t.scrollTop,l=Math.max(0,e.offsetTop-Math.max(0,window.innerHeight-function(e){var t=e.querySelector(".jp-carousel-info-footer"),r=e.querySelector(".jp-carousel-info-extra"),o=e.querySelector(".jp-carousel-info-content-wrapper");if(t&&r&&o){var a=window.getComputedStyle(r),n=parseInt(a.paddingTop,10)+parseInt(a.paddingBottom,10);return n=isNaN(n)?0:n,o.offsetHeight+t.offsetHeight+n}return 0}(t)))-t.scrollTop;function s(){a=!1}l=Math.min(l,t.scrollHeight-window.innerHeight),t.addEventListener("wheel",s),function e(){var c,u=Date.now(),d=(c=(u-n)/300)<.5?2*c*c:1-Math.pow(-2*c+2,2)/2,m=(d=d>1?1:d)*l;if(t.scrollTop=i+m,u<=n+300&&a)return requestAnimationFrame(e);r&&r(),o&&(o.style.minHeight=""),a=!1,t.removeEventListener("wheel",s)}()},getJSONAttribute:function(e,t){if(e&&e.hasAttribute(t))try{return JSON.parse(e.getAttribute(t))}catch{return}},convertToPlainText:function(e){var t=document.createElement("div");return t.textContent=e,t.innerHTML},stripHTML:function(e){var t=document.createElement("div");return t.innerHTML=e.replace(/<[^>]*>?/gm,""),t.textContent},emitEvent:function(e,t,r){var o;try{o=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:r||null})}catch{(o=document.createEvent("CustomEvent")).initCustomEvent(t,!0,!0,r||null)}e.dispatchEvent(o)},isTouch:function(){return"ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch},prefersReducedMotion:function(){return!!window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}}}();function o(){var o,a,n,i,l={},s={},c="",u=!1,d="div.gallery, div.tiled-gallery, ul.wp-block-gallery, ul.blocks-gallery-grid, figure.wp-block-gallery.has-nested-images, div.wp-block-jetpack-tiled-gallery, a.single-image-gallery",m=".gallery-item, .tiled-gallery-item, .blocks-gallery-item,  .tiled-gallery__item",p=m+", .wp-block-image",g={},h="undefined"!=typeof wpcom&&wpcom.carousel&&wpcom.carousel.stat?wpcom.carousel.stat:t.noop,f="undefined"!=typeof wpcom&&wpcom.carousel&&wpcom.carousel.pageview?wpcom.carousel.pageview:t.noop;function v(t){if(!u)switch(t.which){case 38:t.preventDefault(),g.overlay.scrollTop-=100;break;case 40:t.preventDefault(),g.overlay.scrollTop+=100;break;case 39:t.preventDefault(),e.slideNext();break;case 37:case 8:t.preventDefault(),e.slidePrev();break;case 27:t.preventDefault(),k()}}function y(){u=!0}function w(){u=!1}function S(e){e.role="button",e.tabIndex=0,e.ariaLabel=jetpackCarouselStrings.image_label}function j(){g.overlay||(g.overlay=document.querySelector(".jp-carousel-overlay"),g.container=g.overlay.querySelector(".jp-carousel-wrap"),g.gallery=g.container.querySelector(".jp-carousel"),g.info=g.overlay.querySelector(".jp-carousel-info"),g.caption=g.
1001info.querySelector(".jp-carousel-caption"),g.commentField=g.overlay.querySelector("#jp-carousel-comment-form-comment-field"),g.emailField=g.overlay.querySelector("#jp-carousel-comment-form-email-field"),g.authorField=g.overlay.querySelector("#jp-carousel-comment-form-author-field"),g.urlField=g.overlay.querySelector("#jp-carousel-comment-form-url-field"),window.innerWidth<=760&&Math.round(window.innerWidth/760*110)<40&&r.isTouch(),[g.commentField,g.emailField,g.authorField,g.urlField].forEach(function(e){e&&(e.addEventListener("focus",y),e.addEventListener("blur",w))}),g.overlay.addEventListener("click",function(e){var t,o,a=e.target,n=!!r.closest(a,".jp-carousel-close-hint"),i=!!window.matchMedia("(max-device-width: 760px)").matches;a===g.overlay?i||k():n?k():a.classList.contains("jp-carousel-image-download")?h("download_original_click"):a.classList.contains("jp-carousel-comment-login")?(t=g.currentSlide,o=t?t.attrs.attachmentId:"0",window.location.href=jetpackCarouselStrings.login_url+"%23jp-carousel-"+o):r.closest(a,"#jp-carousel-comment-form-container")?function(e){var t=e.target,o=r.getJSONAttribute(g.container,"data-carousel-extra")||{},a=g.currentSlide.attrs.attachmentId,n=document.querySelector("#jp-carousel-comment-form-submit-and-info-wrapper"),i=document.querySelector("#jp-carousel-comment-form-spinner"),s=document.querySelector("#jp-carousel-comment-form-button-submit"),c=document.querySelector("#jp-carousel-comment-form");if(g.commentField&&g.commentField.getAttribute("id")===t.getAttribute("id"))y(),r.show(n);else if(r.matches(t,'input[type="submit"]')){e.preventDefault(),e.stopPropagation(),r.show(i),c.classList.add("jp-carousel-is-disabled");var u={action:"post_attachment_comment",nonce:jetpackCarouselStrings.nonce,blog_id:o.blog_id,id:a,comment:g.commentField.value};if(!u.comment.length)return void b(jetpackCarouselStrings.no_comment_text,!1);if(1!==Number(jetpackCarouselStrings.is_logged_in)&&(u.email=g.emailField.value,u.author=g.authorField.value,u.url=g.urlField.value,1===Number(jetpackCarouselStrings.require_name_email))){if(!u.email.length||!u.email.match("@"))return void b(jetpackCarouselStrings.no_comment_email,!1);if(!u.author.length)return void b(jetpackCarouselStrings.no_comment_author,!1)}var d=new XMLHttpRequest;d.open("POST",jetpackCarouselStrings.ajaxurl,!0),d.setRequestHeader("X-Requested-With","XMLHttpRequest"),d.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"),d.onreadystatechange=function(){if(this.readyState===XMLHttpRequest.DONE&&this.status>=200&&this.status<300){var e;try{e=JSON.parse(this.response)}catch{return void b(jetpackCarouselStrings.comment_post_error,!1)}if("approved"===e.comment_status){b(jetpackCarouselStrings.comment_approved,!0);var t=function(e){for(var t=0;t<g.slides.length;t++)if(g.slides[t].attrs.attachmentId===e)return g.slides[t];return null}(a);t&&(t.attrs.commentsCount=(parseInt(t.attrs.commentsCount,10)||0)+1)}else"unapproved"===e.comment_status?b(jetpackCarouselStrings.comment_unapproved,!0):b(jetpackCarouselStrings.comment_post_error,!1);W(),delete l[a],_(a,void 0,!0),s.value=jetpackCarouselStrings.post_comment,r.hide(i),c.classList.remove("jp-carousel-is-disabled")}else b(jetpackCarouselStrings.comment_post_error,!1)};var m=[];for(var p in u)if(p){var h=encodeURIComponent(p)+"="+encodeURIComponent(u[p]);m.push(h.replace(/%20/g,"+"))}var f=m.join("&");d.send(f)}}(e):(r.closest(a,".jp-carousel-photo-icons-container")||a.classList.contains("jp-carousel-photo-title"))&&function(e){e.preventDefault();var t=e.target,o=g.info.querySelector(".jp-carousel-info-extra"),a=g.info.querySelector(".jp-carousel-image-meta"),n=g.info.querySelector(".jp-carousel-comments-wrapper"),i=g.info.querySelector(".jp-carousel-icon-info"),s=g.info.querySelector(".jp-carousel-icon-comments");function c(){s&&s.classList.remove("jp-carousel-selected"),i.classList.toggle("jp-carousel-selected"),n&&n.classList.remove("jp-carousel-show"),a&&(a.classList.toggle("jp-carousel-show"),a.classList.contains("jp-carousel-show")?o.classList.add("jp-carousel-show"):o.classList.remove("jp-carousel-show"))}function u(){if(i&&i.classList.remove("jp-carousel-selected"),s.classList.toggle("jp-carousel-selected"),a&&a.classList.remove("jp-carousel-show"),n)if(n.classList.toggle("jp-carousel-show"),n.classList.contains("jp-carousel-show")){o.classList.add("jp-carousel-show");var e=g.currentSlide;if(e){var t=l[e.attrs.attachmentId];t?t.hasMore&&T(e.attrs.attachmentId,t.nextOffset):_(e.attrs.attachmentId)}}else o.classList.remove("jp-carousel-show")}(r.closest(t,".jp-carousel-icon-info")||t.classList.contains("jp-carousel-photo-title"))&&(a&&a.classList.contains("jp-carousel-show")?r.scrollToElement(g.overlay,g.overlay,c):(c(),r.scrollToElement(g.info,g.overlay))),r.closest(t,".jp-carousel-icon-comments")&&(n&&n.classList.contains("jp-carousel-show")?r.scrollToElement(g.overlay,g.overlay,u):(u(),r.scrollToElement(g.info,g.overlay)))}(e)}),window.addEventListener("keydown",v),g.overlay.addEventListener("jp_carousel.afterOpen",function(){w(),g.slides.length<=1||(g.slides.length<=5?r.show(g.info.querySelector(".jp-swiper-pagination")):r.show(g.info.querySelector(".jp-carousel-pagination")))}),g.overlay.addEventListener("jp_carousel.beforeClose",function(){y(),document.documentElement.style.removeProperty("height"),e&&e.enable(),r.hide(g.info.querySelector(".jp-swiper-pagination")),r.hide(g.info.querySelector(".jp-carousel-pagination"))}),g.overlay.addEventListener("jp_carousel.afterClose",function(){window.history.pushState?history.pushState("",document.title,window.location.pathname+window.location.search):window.location.href="",c="",g.isOpen=!1}),g.overlay.addEventListener("touchstart",function(e){e.touches.length>1&&e.preventDefault()}))}function b(e,t){var o=g.overlay.querySelector("#jp-carousel-comment-post-results"),a="jp-carousel-comment-post-"+(t?"success":"error");o.innerHTML='<span class="'+a+'">'+e+"</span>",r.hide(g.overlay.querySelector("#jp-carousel-comment-form-spinner")),g.overlay.querySelector("#jp-carousel-comment-form").classList.remove("jp-carousel-is-disabled"),r.show(o)}function L(){var e=document.querySelectorAll("a img[data-attachment-id]");Array.prototype.forEach.call(e,function(e){var t=e.parentElement,o=t.parentElement;if(!o.classList.contains("gallery-icon")&&!r.closest(o,m)&&t.hasAttribute("href")){var a=!1;t.getAttribute("href").split("?")[0]===e.getAttribute("data-orig-file").split("?")[0]&&1===Number(jetpackCarouselStrings.single_image_gallery_media_file)&&(a=!0),t.getAttribute("href")===e.getAttribute("data-permalink")&&(a=!0),a&&(S(e),t.classList.add("single-image-gallery"),t.setAttribute("data-carousel-extra",JSON.stringify({blog_id:Number(jetpackCarouselStrings.blog_id)})))}})}function x(t,r){g.isOpen?(C(r),e.slideTo(r+1)):z(t,{startIndex:r})}function C(e){(!e||e<0||e>g.slides.length)&&(e=0),g.currentSlide=g.slides[e];var a,n,i=g.currentSlide,s=i.attrs.attachmentId;M(g.slides[e]),function(e){var t=[],r=g.slides.length;if(r>1){var o=e>0?e-1:r-1;t.push(o);var a=e<r-1?e+1:0;t.push(a)}t.forEach(function(e){var t=g.slides[e];t&&(M(t),1!==Number(jetpackCarouselStrings.display_background_image)||t.backgroundImage||F(t))})}(e),1!==Number(jetpackCarouselStrings.display_background_image)||g.slides[e].backgroundImage||F(g.slides[e]),r.hide(g.caption),function(e){var t,o,a,n,i,l,s;if(n=g.overlay.querySelector(".jp-carousel-photo-caption"),i=g.overlay.querySelector(".jp-carousel-caption"),l=g.overlay.querySelector(".jp-carousel-photo-title"),s=g.overlay.querySelector(".jp-carousel-photo-description"),r.hide(n),r.hide(i),r.hide(l),r.hide(s),t=A(e.caption)||"",o=A(e.title)||"",a=A(e.desc)||"",(t||o||a)&&(t&&(n.innerHTML=t,i.innerHTML=t,r.show(n),r.show(i)),r.stripHTML(t)===r.stripHTML(o)&&(o=""),r.stripHTML(t)===r.stripHTML(a)&&(a=""),r.stripHTML(o)===r.stripHTML(a)&&(a=""),a&&(s.innerHTML=a,r.show(s),o||t||(n.textContent=r.stripHTML(a),r.show(n))),o)){var c=r.stripHTML(o);l.textContent=c,t||(n.textContent=c,i.textContent=c,r.show(n)),r.show(l)}}
1001({caption:i.attrs.caption,title:i.attrs.title,desc:i.attrs.desc}),function(e){if(!e||1!==Number(jetpackCarouselStrings.display_exif))return!1;var t=g.info.querySelector(".jp-carousel-image-meta");if(!t)return!1;var r="";for(var o in e){var a=e[o],n=jetpackCarouselStrings.meta_data||[];if(0!==parseFloat(a)&&a.length&&-1!==n.indexOf(o)){switch(o){case"focal_length":a+="mm";break;case"shutter_speed":a=E(a);break;case"aperture":a="f/"+a}r+="<li><h5>"+jetpackCarouselStrings[o]+"</h5>"+a+"</li>"}}var i=t.querySelector("ul.jp-carousel-image-exif");if(""!==r){if(!i){(i=document.createElement("ul")).className="jp-carousel-image-exif";var l=t.querySelector(".jp-carousel-title-and-caption");l&&l.nextSibling?t.insertBefore(i,l.nextSibling):t.insertBefore(i,t.firstChild)}i.innerHTML=r,i.style.removeProperty("display")}else i&&i.parentNode.removeChild(i)}(g.slides[e].attrs.imageMeta),function(e){if(!e)return!1;var r,o=[e.attrs.origWidth,e.attrs.origHeight],a=document.createElement("a");a.href=e.attrs.src.replace(/\?.+$/,""),r=null!==a.hostname.match(/^i[\d]{1}\.wp\.com$/i)?a.href:e.attrs.origFile.replace(/\?.+$/,"");var n=g.info.querySelector(".jp-carousel-download-text"),i=g.info.querySelector(".jp-carousel-image-download");n.innerHTML=t.applyReplacements(jetpackCarouselStrings.download_original,o),i.setAttribute("href",r),i.style.removeProperty("display")}(i),1===Number(jetpackCarouselStrings.display_comments)&&(a=g.slides[e].attrs.commentsOpened,n=g.info.querySelector("#jp-carousel-comment-form-container"),1===parseInt(a,10)?r.fadeIn(n):r.fadeOut(n),function(e){var t=e.attrs.attachmentId,a=g.info.querySelector(".jp-carousel-comments"),n=l[t];if(clearInterval(o),r.hide(g.info.querySelector("#jp-carousel-comments-loading")),n)return a.innerHTML=n.html,H(n.count),r.show(a),void(n.hasMore&&I()&&T(t,n.nextOffset));a.innerHTML="",r.hide(a),H(parseInt(e.attrs.commentsCount,10)||0),I()&&_(t)}(i),r.hide(g.info.querySelector("#jp-carousel-comment-post-results")));var u=g.info.querySelector(".jp-carousel-pagination");if(u&&g.slides.length>5){var d=e+1;u.innerHTML="<span>"+d+" / "+g.slides.length+"</span>"}jetpackCarouselStrings.stats&&g.isOpen&&((new Image).src=document.location.protocol+"//pixel.wp.com/g.gif?"+jetpackCarouselStrings.stats+"&post="+encodeURIComponent(s)+"&rand="+Math.random()),g.isOpen&&f(s),c="#jp-carousel-"+s,window.location.hash=c}function k(){document.body.style.overflow=a,document.documentElement.style.overflow=n,W(),y(),r.emitEvent(g.overlay,"jp_carousel.beforeClose"),window.scrollTo(window.scrollX||window.pageXOffset||0,i||0),g.isOpen=!1,e.destroy(),g.slides=[],l={},s={},g.currentSlide=void 0,g.gallery.innerHTML="",r.fadeOut(g.overlay,function(){r.emitEvent(g.overlay,"jp_carousel.afterClose")})}function q(e){if("object"!=typeof e&&(e={}),void 0===e.origFile)return"";if(void 0===e.origWidth||void 0===e.maxWidth)return e.origFile;if(!e.largeFile)return e.origFile;var t=document.createElement("a");t.href=e.largeFile;var r=/^i[0-2]\.wp\.com$/i.test(t.hostname),o=function(e,t,r){var o,a=r?e.replace(/.*=([\d]+%2C[\d]+).*$/,"$1"):e.replace(/.*-([\d]+x[\d]+)\..+$/,"$1");return"9999"===(o=a!==e?r?a.split("%2C"):a.split("x"):[t,0])[0]&&(o[0]="0"),"9999"===o[1]&&(o[1]="0"),o}(e.largeFile,e.origWidth,r),a=parseInt(o[0],10),n=parseInt(o[1],10);e.origMaxWidth=e.maxWidth,e.origMaxHeight=e.maxHeight,void 0!==window.devicePixelRatio&&window.devicePixelRatio>1&&(e.maxWidth=e.maxWidth*window.devicePixelRatio,e.maxHeight=e.maxHeight*window.devicePixelRatio);var i=e.zoomHeadroom||1;if(i>1&&(e.maxWidth=e.maxWidth*i,e.maxHeight=e.maxHeight*i),a>=e.maxWidth||n>=e.maxHeight)return e.largeFile;if(r){if(-1===e.largeFile.lastIndexOf("?"))return e.largeFile;var l=function(e){var t;try{t=new URL(e)}catch(t){return e}var r=["quality","ssl","filter","brightness","contrast","colorize","smooth"],o=Array.from(t.searchParams.entries());return t.search="",o.forEach(([e,o])=>{r.includes(e)&&t.searchParams.append(e,o)}),t}(e.largeFile);return(e.origWidth>e.maxWidth||e.origHeight>e.maxHeight)&&(e.origMaxWidth=e.maxWidth,e.origMaxHeight=e.maxHeight,l.searchParams.set("fit",e.origMaxWidth+","+e.origMaxHeight)),l.toString()}return e.origFile}function E(e){return e>=1?Math.round(10*e)/10+"s":"1/"+Math.round(1/e)+"s"}
1001function A(e){return!e.match(" ")&&e.match("_")?"":e}function I(){var e=g.info.querySelector(".jp-carousel-comments-wrapper");return!!e&&e.classList.contains("jp-carousel-show")}function H(e){var t=g.info.querySelector(".jp-carousel-icon-comments .jp-carousel-has-comments-indicator");t&&(e>0?(t.innerText=e,t.classList.add("jp-carousel-show")):t.classList.remove("jp-carousel-show"))}function T(e,t){clearInterval(o),o=setInterval(function(){g.container.scrollTop+150>window.innerHeight&&(clearInterval(o),_(e,t))},300)}function _(e,t,a){var n=void 0===t;if(clearInterval(o),e&&g.currentSlide&&g.currentSlide.attrs.attachmentId===e&&(!s[e]||a)){(!t||t<1)&&(t=0);var i=g.info.querySelector(".jp-carousel-comments"),c=g.info.querySelector("#jp-carousel-comments-loading");r.show(c),n&&(r.hide(i),i.innerHTML="");var u=new XMLHttpRequest;s[e]=u;var d=function(){return s[e]===u},m=jetpackCarouselStrings.ajaxurl+"?action=get_attachment_comments&nonce="+jetpackCarouselStrings.nonce+"&id="+e+"&offset="+t;u.open("GET",m),u.setRequestHeader("X-Requested-With","XMLHttpRequest");var p=function(){r.fadeIn(i),r.fadeOut(c)};u.onload=function(){if(d()&&(delete s[e],g.currentSlide&&g.currentSlide.attrs.attachmentId===e)){var o,a=u.status>=200&&u.status<300;try{o=JSON.parse(u.responseText)}catch{}if(a&&o&&Array.isArray(o)){n&&(i.innerHTML="");for(var m=0;m<o.length;m++){var h=o[m];if(!i.querySelector("#jp-carousel-comment-"+h.id)){var f=document.createElement("div");f.classList.add("jp-carousel-comment"),f.setAttribute("id","jp-carousel-comment-"+h.id),f.innerHTML='<div class="comment-gravatar">'+h.gravatar_markup+'</div><div class="comment-content"><div class="comment-author">'+h.author_markup+'</div><div class="comment-date">'+h.date_gmt+"</div>"+h.content+"</div>",i.appendChild(f)}}var v=o.length>=10,y=t+10;v&&T(e,y);var w=i.querySelectorAll(".jp-carousel-comment").length,S=Math.max(parseInt(g.currentSlide.attrs.commentsCount,10)||0,w);o.length>0&&(r.show(i),H(S)),l[e]={html:i.innerHTML,count:S,hasMore:v,nextOffset:y},r.hide(c)}else p()}},u.onerror=function(){d()&&(delete s[e],g.currentSlide&&g.currentSlide.attrs.attachmentId===e&&p())},u.send()}}function M(e){var t=e.attrs,r=e.el.querySelector("img");if(!r.hasAttribute("data-loaded"))if(r.setAttribute("itemprop","image"),r.setAttribute("data-loaded",1),t.previewImage&&t.previewImage!==t.src){r.src=t.previewImage,r.style.filter="blur(8px)";var o=new window.Image;o.addEventListener("load",function(){r.hasAttribute("data-zoom-loaded")||(r.src=t.src),r.style.filter=""},{once:!0}),o.addEventListener("error",function(){r.style.filter=""},{once:!0}),o.src=t.src}else r.src=t.src}function F(e){var t=e.attrs.originalElement;if(t)if(t.complete&&0!==t.naturalHeight)O(e,t);else{var r=function(){t.removeEventListener("error",o),O(e,t)},o=function(){t.removeEventListener("load",r)};t.addEventListener("load",r,{once:!0}),t.addEventListener("error",o,{once:!0})}}function O(e,r){var o=t.getBackgroundImage(r);o&&(e.backgroundImage=o,e.el.style.backgroundImage="url("+o+")",e.el.style.backgroundSize="cover",e.el.style.backgroundPosition="center")}function W(){g.commentField&&(g.commentField.value="")}function N(e,o){g.slides=[];var a={width:window.innerWidth,height:window.innerHeight-64};0!==o&&null!==e[o].getAttribute("data-gallery-src")&&((new Image).src=e[o].getAttribute("data-gallery-src")),Array.prototype.forEach.call(e,function(e,o){var n=r.closest(e,"a"),i=e.getAttribute("data-orig-file")||e.getAttribute("src-orig"),l=e.getAttribute("data-attachment-id")||e.getAttribute("data-id")||"0",s=document.querySelector('img[data-attachment-id="'+l+'"] + figcaption');s=s?s.innerHTML:e.getAttribute("data-image-caption");var c={originalElement:e,attachmentId:l,commentsOpened:e.getAttribute("data-comments-opened")||"0",commentsCount:e.getAttribute("data-comments-count")||"0",imageMeta:r.getJSONAttribute(e,"data-image-meta")||{},title:e.getAttribute("data-image-title")||"",desc:e.getAttribute("data-image-description")||"",largeFile:e.getAttribute("data-large-file")||"",origFile:i||"",thumbSize:{width:e.naturalWidth,height:e.naturalHeight},caption:s||"",permalink:n&&n.getAttribute("href"),src:i||e.getAttribute("src")||""},u=r.closest(e,".tiled-gallery-item"),d=u&&u.querySelector(".tiled-gallery-caption"),m=d&&d.innerHTML;m&&(c.caption=m);var p=function(e){var t=e.getAttribute("data-orig-size")||"";if(t){var r=t.split(",");return{width:parseInt(r[0],10),height:parseInt(r[1],10)}}return{width:e.getAttribute("data-original-width")||e.getAttribute("width")||void 0,height:e.getAttribute("data-original-height")||e.getAttribute("height")||void 0}}(e);if(c.origWidth=p.width||c.thumbSize.width,c.origHeight=p.height||c.thumbSize.height,"undefined"!=typeof wpcom&&wpcom.carousel&&wpcom.carousel.generateImgSrc)c.src=wpcom.carousel.generateImgSrc(e,a);else{var h=function(e){return{origFile:c.src,origWidth:c.origWidth,origHeight:c.origHeight,maxWidth:a.width,maxHeight:a.height,largeFile:c.largeFile,zoomHeadroom:e}};c.zoomSrc=q(h(2)),c.src=q(h(1))}if(e.setAttribute("data-gallery-src",c.src),"0"!==c.attachmentId){c.title=t.texturize(c.title),c.desc=t.texturize(c.desc),c.caption=t.texturize(c.caption);var f=new Image,v=document.createElement("div");v.classList.add("swiper-slide"),v.setAttribute("itemprop","associatedMedia"),v.setAttribute("itemscope",""),v.setAttribute("itemtype","https://schema.org/ImageObject");var y=document.createElement("div");y.classList.add("swiper-zoom-container"),g.gallery.appendChild(v),v.appendChild(y),y.appendChild(f),v.setAttribute("data-attachment-id",c.attachmentId),v.setAttribute("data-permalink",c.permalink),v.setAttribute("data-orig-file",c.origFile),c.previewImage=e.currentSrc||e.getAttribute("src")||"";var w={el:v,attrs:c,index:o};g.slides.push(w)}})}function z(e,t){if(!window.JetpackSwiper){var o=document.querySelector("#jp-carousel-loading-overlay");r.show(o);var a=document.createElement("script");return a.id="jetpack-carousel-swiper-js",a.src=window.jetpackSwiperLibraryPath.url,a.async=!0,a.onload=function(){r.hide(o),R(e,t)},a.onerror=function(){r.hide(o)},void document.head.appendChild(a)}R(e,t)}function R(t,o){var c,u={imgSelector:".gallery-item [data-attachment-id], .tiled-gallery-item [data-attachment-id], img[data-attachment-id], img[data-id]",startIndex:0},d=r.getJSONAttribute(t,"data-carousel-extra");if(!d)return;const m=t.querySelectorAll(u.imgSelector);if(m.length&&(j(),!g.isOpen)){for(var p in g.isOpen=!0,a=getComputedStyle(document.body).overflow,document.body.style.overflow="hidden",n=getComputedStyle(document.documentElement).overflow,document.documentElement.style.overflow="hidden",i=window.scrollY||window.pageYOffset||0,g.container.setAttribute("data-carousel-extra",JSON.stringify(d)),h(["open","view_image"]),o||{})u[p]=o[p];-1===u.startIndex&&(u.startIndex=0),r.emitEvent(g.overlay,"jp_carousel.beforeOpen"),g.gallery.innerHTML="",l={},s={},g.overlay.style.opacity=1,g.overlay.style.display="block",N(m,u.startIndex),(e=new window.JetpackSwiper(".jp-carousel-swiper-container",{centeredSlides:!0,speed:r.prefersReducedMotion()?0:250,zoom:!0,loop:g.slides.length>1,enabled:g.slides.length>1,pagination:{el:".jp-swiper-pagination",clickable:!0},navigation:{nextEl:".jp-swiper-button-next",prevEl:".jp-swiper-button-prev"},initialSlide:u.startIndex,on:{init:function(){C(u.startIndex)}},preventClicks:!1,preventClicksPropagation:!1,preventInteractionOnTransition:!r.isTouch(),threshold:5})).on("slideChange",function(e){g.isOpen&&(C(e.realIndex),g.overlay.classList.remove("jp-carousel-hide-control
1001s"))}),e.on("zoomChange",function(e,t){t>1&&(function(e){if(e&&e.attrs.zoomSrc&&e.attrs.zoomSrc!==e.attrs.src){var t=e.el.querySelector("img");t&&!t.hasAttribute("data-zoom-loaded")&&(t.setAttribute("data-zoom-loaded",1),t.src=e.attrs.zoomSrc)}}(g.currentSlide),g.overlay.classList.add("jp-carousel-hide-controls")),1===t&&g.overlay.classList.remove("jp-carousel-hide-controls")}),e.on("doubleTap",function(e){if(clearTimeout(c),1===e.zoom.scale)var t=setTimeout(function(){g.overlay.classList.remove("jp-carousel-hide-controls"),clearTimeout(t)},150)}),e.on("tap",function(){e.zoom.scale>1&&(c=setTimeout(function(){g.overlay.classList.toggle("jp-carousel-hide-controls")},150))}),r.fadeIn(g.overlay,function(){r.emitEvent(g.overlay,"jp_carousel.afterOpen")})}}function P(e){if("click"!==e.type){if("keydown"===e.type){const t=document.activeElement.parentElement,r=t&&t.classList.contains("tiled-gallery__item");" "!==e.key&&"Enter"!==e.key||!r||$(e)}}else $(e)}function D(e){return(e||"").split("?")[0].replace(/\/$/,"")}function J(e){"A"===e.tagName&&(e=e.querySelector("img")||e);var t=e.parentElement,o=t?t.parentElement:null,a=null;if(o&&o.classList.contains("wp-block-image")?a=t.getAttribute("href"):t&&t.classList.contains("wp-block-image")&&t.querySelector(":scope > a")&&(a=t.querySelector(":scope > a").getAttribute("href")),a){var n=D(a),i=D(e.getAttribute("data-orig-file")),l=D(e.getAttribute("data-permalink"));if(n!==i&&n!==l)return!1}return!(t&&t.classList.contains("gallery-caption")||r.matches(t,"figcaption"))}function $(e){if(window.CSS&&window.CSS.supports&&window.CSS.supports("display","grid")){var t,o=e.target,a=r.closest(o,d);if(a){if(!(t=a)||!t.getAttribute("data-carousel-extra"))return;if(!J(o))return;document.documentElement.style.height="auto",e.preventDefault(),e.stopPropagation();var n=r.closest(o,p),i=Array.prototype.indexOf.call(a.querySelectorAll(p),n);z(a,{startIndex:i})}}}document.body.addEventListener("click",P),document.body.addEventListener("keydown",P),document.querySelectorAll(m+"img").forEach(function(e){J(e)&&S(e)}),1===Number(jetpackCarouselStrings.single_image_gallery)&&(L(),document.body.addEventListener("is.post-load",function(){L()})),window.addEventListener("hashchange",function(){var e=/jp-carousel-(\d+)/;if(window.location.hash&&e.test(window.location.hash)){if(window.location.hash!==c||!g.isOpen)if(window.location.hash&&g.gallery&&!g.isOpen&&history.back)history.back();else{c=window.location.hash;for(var t=window.location.hash.match(e),r=parseInt(t[1],10),o=document.querySelectorAll(d),a=0;a<o.length;a++){for(var n,i=o[a],l=i.querySelectorAll("img"),s=0;s<l.length;s++)if(parseInt(l[s].getAttribute("data-attachment-id"),10)===r||parseInt(l[s].getAttribute("data-id"),10)===r){n=s;break}if(void 0!==n){x(i,n);break}}}}else g.isOpen&&k()}),window.location.hash&&r.emitEvent(window,"hashchange")}"loading"!==document.readyState?o():document.addEventListener("DOMContentLoaded",o)}();;
1002void ( function ( d, s, id ) {
1003	var js,
1004		fjs = d.getElementsByTagName( s )[ 0 ],
1005		p = /^http:/.test( d.location ) ? 'http' : 'https';
1006	if ( ! d.getElementById( id ) ) {
1007		js = d.createElement( s );
1008		js.id = id;
1009		js.src = p + '://platform.twitter.com/widgets.js';
1010		fjs.parentNode.insertBefore( js, fjs );
1011	}
1012} )( document, 'script', 'twitter-wjs' );
1013;
1014( function() {
1015	var cookieValue = document.cookie.replace( /(?:(?:^|.*;\s*)eucookielaw\s*\=\s*([^;]*).*$)|^.*$/, '$1' );
1016	var overlay = document.querySelector( '#eu-cookie-law' );
1017	var container = document.querySelector( '.widget_eu_cookie_law_widget' );
1018	var initialScrollPosition, scrollFunction;
1019
1020	function remove( el ) {
1021		return el && el.parentElement && el.parentElement.removeChild( el );
1022	}
1023
1024	function triggerDismissEvent() {
1025		try {
1026			const dismissEvent = new Event( 'eucookielaw-dismissed' );
1027			document.dispatchEvent( dismissEvent );
1028		} catch ( err ) { }
1029	}
1030
1031	function removeOverlay() {
1032		remove( overlay );
1033		triggerDismissEvent();
1034	}
1035
1036	function fade( el, type, fn ) {
1037		var duration = 400;
1038
1039		el.style.display = 'block';
1040		el.style.transitionProperty = 'opacity';
1041		el.style.transitionDuration = duration + 'ms';
1042		el.style.opacity = type === 'in' ? 0 : 1;
1043
1044		// Double rAF to ensure styles are applied cross-browser.
1045		requestAnimationFrame( function () {
1046			requestAnimationFrame( function() {
1047				el.style.opacity = type === 'in' ? 1 : 0;
1048				// Wait for animation.
1049				setTimeout( function () {
1050					// Clean up.
1051					el.style.removeProperty( 'opacity' );
1052					el.style.removeProperty( 'transition-property' );
1053					el.style.removeProperty( 'transition-duration' );
1054
1055					if ( type === 'out' ) {
1056						el.style.display = 'none';
1057					}
1058
1059					if ( typeof fn === 'function' ) {
1060						fn();
1061					}
1062				}, duration + 50 );
1063			} );
1064		} );
1065	}
1066
1067	function appendWidget() {
1068		document.body.appendChild( container );
1069		overlay.style.display = 'block';
1070		fade( container, 'in' );
1071	}
1072
1073	if ( typeof wp !== 'undefined' && !! wp.customize ) {
1074		appendWidget();
1075		return;
1076	}
1077
1078	if ( ! overlay || ! container ) {
1079		return;
1080	}
1081
1082	if ( overlay.classList.contains( 'ads-active' ) ) {
1083		var adsCookieValue = document.cookie.replace( /(?:(?:^|.*;\s*)personalized-ads-consent\s*\=\s*([^;]*).*$)|^.*$/, '$1' );
1084		if ( cookieValue !== '' && adsCookieValue !== '' ) {
1085			removeOverlay();
1086		}
1087	} else if ( cookieValue !== '' ) {
1088		removeOverlay();
1089	}
1090
1091	appendWidget();
1092
1093	overlay.querySelector( 'form' ).addEventListener( 'submit', accept );
1094
1095	if ( overlay.classList.contains( 'hide-on-scroll' ) ) {
1096		initialScrollPosition = window.pageYOffset;
1097
1098		scrollFunction = function() {
1099			if ( Math.abs( window.pageYOffset - initialScrollPosition ) > 50 ) {
1100				accept();
1101			}
1102		};
1103
1104		window.addEventListener( 'scroll', scrollFunction );
1105	} else if ( overlay.classList.contains( 'hide-on-time' ) ) {
1106		var timeout = parseInt( overlay.getAttribute( 'data-hide-timeout' ), 10 ) || 0;
1107		setTimeout( accept, timeout * 1000 );
1108	}
1109
1110	var accepted = false;
1111	function accept( event ) {
1112		if ( accepted ) {
1113			return;
1114		}
1115		accepted = true;
1116
1117		if ( event && event.preventDefault ) {
1118			event.preventDefault();
1119		}
1120
1121		if ( overlay.classList.contains( 'hide-on-scroll' ) ) {
1122			window.removeEventListener( 'scroll', scrollFunction );
1123		}
1124
1125		var expireTime = new Date();
1126		var consentExpiration = parseInt( overlay.getAttribute( 'data-consent-expiration' ), 10 ) || 0;
1127		expireTime.setTime( expireTime.getTime() + ( consentExpiration * 24 * 60 * 60 * 1000 ) );
1128
1129		document.cookie = 'eucookielaw=' + expireTime.getTime() + ';path=/;expires=' + expireTime.toGMTString();
1130		if ( overlay.classList.contains( 'ads-active' ) && overlay.classList.contains( 'hide-on-button' ) ) {
1131			document.cookie = 'personalized-ads-consent=' + expireTime.getTime() + ';path=/;expires=' + expireTime.toGMTString();
1132		}
1133
1134		fade( overlay, 'out', function() {
1135			removeOverlay();
1136			remove( container );
1137		} );
1138	}
1139} )();
1140;

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.