function cookieHelper(){var n=this}function imageLoader(){var i=this,t="src",n="data-gd-src",r="data-gd-lazyload";i.removeSrcBeforeLoad=function(){for(var f=document.querySelectorAll("*["+t+"]"),e=f.length,i=null,u=0;u<e;u++)i=f[u],i.getAttribute(r)=="true"?(i.setAttribute(n,i.getAttribute(t)),i.removeAttribute(t)):i.getAttribute(r)=="false"};i.refreshHandler=function(){for(var f,u=document.querySelectorAll("*["+n+"]"),e=u.length,i=null,r=0;r<e;r++)i=u[r],f=i.getBoundingClientRect(),i.hasAttribute(n)&&f.top<window.innerHeight&&(i.setAttribute(t,i.getAttribute(n)),i.removeAttribute(n))}}function ajaxCall_GetAllActiveWithSynonymsToViewModel(){return $.ajax({url:path+"?ajax=true&ajaxAction=Term.GetAllActiveWithSynonymsToViewModel&GdCheck=",method:"GET",cache:!1,dataType:"json"})}function getAllActiveWithSynonymsToViewModel_Response(n){var i,t,r,u;if(synonymTermVMCollection=n,synonymTermVMCollection!==undefined&&synonymTermVMCollection!==null&&synonymTermVMCollection!==[]){for(i=[],t="",r=0,u=synonymTermVMCollection.length;r<u;r++)(t=synonymTermVMCollection[r].SearchWord,t!==undefined&&t!==null&&t!=="")&&i.indexOf(t)<=-1&&i.push(t);autocomplete(document.getElementById("pojam"),i)}}function autocomplete(n,t){function u(n){if(!n)return!1;f(n);i>=n.length&&(i=0);i<0&&(i=n.length-1);n[i].classList.add("autocomplete-active")}function f(n){for(var t=0;t<n.length;t++)n[t].classList.remove("autocomplete-active")}function r(t){for(var r=document.getElementsByClassName("autocomplete-items"),i=0;i<r.length;i++)t!=r[i]&&t!=n&&r[i].parentNode.removeChild(r[i])}var i;n.addEventListener("input",function(){var e,u,f,o=this.value;if(r(),!o)return!1;for(i=-1,e=document.createElement("DIV"),e.setAttribute("id",this.id+"autocomplete-list"),e.setAttribute("class","autocomplete-items"),this.parentNode.appendChild(e),f=0;f<t.length;f++)t[f].substr(0,o.length).toUpperCase()==o.toUpperCase()&&(u=document.createElement("DIV"),u.className="autoCompleteRow",u.innerHTML="<strong>"+t[f].substr(0,o.length)+"<\/strong>",u.innerHTML+=t[f].substr(o.length),u.innerHTML+="<input type='hidden' value='"+t[f]+"' class='autoCompleteRowValue'>",u.addEventListener("click",function(){n.value=this.getElementsByTagName("input")[0].value;r();n.form.submit()}),e.appendChild(u))});n.addEventListener("keydown",function(n){var t=document.getElementById(this.id+"autocomplete-list");t&&(t=t.getElementsByTagName("div"));n.keyCode==40?(i++,u(t)):n.keyCode==38?(i--,u(t)):n.keyCode==13&&(n.preventDefault(),i>-1&&t&&t[i].click(),$("#pojam").blur().parents("form").submit())});document.addEventListener("click",function(n){r(n.target)})}function ajaxCall_RootObjectDohvatiPodatke(){return $.ajax({url:path+"?ajax=true&ajaxAction=RootObject.DohvatiPodatke&GdCheck=&lng="+$("html").attr("lang"),dataType:"json",method:"GET",cache:!1})}function ajaxCall_RootObjectDohvatiPodatke_Response(n){var t="",f=[],i,r,u;ck.addSource("locations",{type:"geojson",data:n});i=[];n.features.map(function(n){i.push(n.geometry.coordinates)});f=n.features;r=i.reduce(function(n,t){return n.extend(t)},new mapboxgl.LngLatBounds(i[0],i[0]));ck.fitBounds(r,{padding:20,maxZoom:13,duration:0});n.features.forEach(function(n){var i,r,e;t+="<li class='liMapaHolder' data-id='"+n.properties.id+"' data-nadkategorijaid='"+n.properties.nadkategorijaid+"' data-naziv='"+n.properties.name+"'>";t+="\t<div class='mml-table mireoLocationHolder' data-id='"+n.properties.id+"' data-val-x='"+n.geometry.coordinates[0].toString()+"' data-val-y='"+n.geometry.coordinates[1].toString()+"'>";t+="\t\t<div class='mml-col'><img src='https://www.mirovinsko.hr/img/hzmo-flag.png' alt='mireo flag'><\/div>";t+="\t\t<div class='mml-col'>"+n.properties.name+"<\/div>";t+="\t<\/div>";t+="<\/li>";i=document.createElement("div");i.className="mireo-marker";i.setAttribute("data-marker-id",n.properties.id);i.setAttribute("data-nadkategorijaid",n.properties.nadkategorijaid);i.setAttribute("data-naziv",n.properties.name);i.setAttribute("data-x",n.properties.x);i.setAttribute("data-y",n.properties.y);var u=new mapboxgl.Marker(i).setLngLat(n.geometry.coordinates).addTo(ck),f=n.geometry.coordinates[0].toString()+","+n.geometry.coordinates[1].toString();testMarkers[f]=u;r="";r=n.properties.url!=null&&n.properties.url!=undefined&&n.properties.url!=""?"<div><a class='mmo-more' href='"+n.properties.url+"'>Više<\/a><\/div>":"";e=["<span class='navsml'>","<strong style='font-size:13px;'>",n.properties.name,"<\/strong><br /><br />","<p>",n.properties.opis,"<\/p><br />",r,"<div style='height:7px;'><\/div>","<\/span>"];new mapboxgl.Marker(i).setLngLat(n.geometry.coordinates).setPopup(new mapboxgl.Popup({offset:25})).addTo(ck);$(i).click(function(){$(".mmo-title > span").empty().append($(i).attr("data-naziv"));$(".mmo-content").empty().append(n.properties.opis+"<br/><br/>"+r);$(".mm-overlay").show()})});t!=""&&(u=t,t="<ul class='mm-locations'>",t+=u,t+="<\/ul>",$(".mireoAdreseHolder").empty(),$(".mireoAdreseHolder").append(t))}function IsNumeric(n){var t=!0,r;for(i=0;i<n.length&&t==!0;i++)r=n.charAt(i),"0123456789".indexOf(r)==-1&&(t=!1);return t}function resetDisplays(){sirinaProzora=$(window).width();sirinaProzora>1199&&($(".search").css("display",""),$(".main-nav-wrapper").css("display",""),$(".main-nav > ul > li > ul").css("display",""))}function setHeights(){$(".stats-item-inner").matchHeight();$(".subcat-item-title").matchHeight();$(".subcat-item").matchHeight();$(".services-grid a .service-title").matchHeight()}function scrollTo(n){$("#"+n).length!==0&&$("html, body").animate({scrollTop:$("#"+n).offset().top},750,"easeOutQuint")}function matchHeightMultiple(n){var f=null,e=[],t=-1,i=0,r=null,u,o;if(n===undefined||n===null||n===[])return!1;for(u=0,o=n.length;u<o;u++)(r=n[u],r.length<=0)||(f=null,e=[],t=-1,i=0,r.each(function(){f=$(this);i=f.height();e.push(i);t===-1?t=i:t<i&&(t=i)}),e.length>0&&t>-1&&r.height(t));return!1}function mainNavHover(){$(".main-nav > ul > li").on("click.mainNavHover",function(){var t=$(this),n=$(this).children("ul");n.get(0)&&(n.is(":visible")?n.slideUp(200):($(".main-nav > ul > li > ul").slideUp(200),n.slideDown(200)))})}function mainNavClick(){$(".main-nav > ul > li > a").on("click.mainNavClick",function(){var n=$(this).siblings("ul");n.get(0)&&(n.is(":visible")?n.slideUp(200):($(this).parent().siblings().find("ul").stop().slideUp(),n.slideDown(200)))})}function initCountUps(){var n=[],t=[];$(".numbs").each(function(t){var i=parseInt($(this).html(),10);n[t]=new CountUp(this,0,i,0,3)});$(".stats").on("inview",function(i,r){r?$.each(n,function(n,i){t[n]=setTimeout(function(){i.start()},250)}):$.each(n,function(n,i){clearTimeout(t[n]);i.reset()})})}function removeDijakritickiZnakovi(n){return n===undefined||n===null||n===""?n:(n=n.replace(regexCached.regexC,"c"),n=n.replace(regexCached.regexZ,"z"),n=n.replace(regexCached.regexS,"s"),n.replace(regexCached.regexD,"d"))}function anketa(){var n=this;n.lastTimeVersion="";n.guid="";n.pages=[]}if(!function(n,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=n.document?t(n,!0):function(n){if(!n.document)throw new Error("jQuery requires a window with a document");return t(n)}:t(n)}("undefined"!=typeof window?window:this,function(n,t){"use strict";function br(n,t,i){var r,e,u=(i=i||f).createElement("script");if(u.text=n,t)for(r in oe)(e=t[r]||t.getAttribute&&t.getAttribute(r))&&u.setAttribute(r,e);i.head.appendChild(u).parentNode.removeChild(u)}function ut(n){return null==n?n+"":"object"==typeof n||"function"==typeof n?ri[pr.call(n)]||"object":typeof n}function pi(n){var t=!!n&&"length"in n&&n.length,i=ut(n);return!u(n)&&!rt(n)&&("array"===i||0===t||"number"==typeof t&&0<t&&t-1 in n)}function c(n,t){return n.nodeName&&n.nodeName.toLowerCase()===t.toLowerCase()}function bi(n,t,r){return u(t)?i.grep(n,function(n,i){return!!t.call(n,i,n)!==r}):t.nodeType?i.grep(n,function(n){return n===t!==r}):"string"!=typeof t?i.grep(n,function(n){return-1<ii.call(t,n)!==r}):i.filter(t,n,r)}function uu(n,t){while((n=n[t])&&1!==n.nodeType);return n}function et(n){return n}function fi(n){throw n;}function fu(n,t,i,r){var f;try{n&&u(f=n.promise)?f.call(n).done(t).fail(i):n&&u(f=n.then)?f.call(n,t,i):t.apply(void 0,[n].slice(r))}catch(n){i.apply(void 0,[n])}}function oi(){f.removeEventListener("DOMContentLoaded",oi);n.removeEventListener("load",oi);i.ready()}function ce(n,t){return t.toUpperCase()}function y(n){return n.replace(se,"ms-").replace(he,ce)}function bt(){this.expando=i.expando+bt.uid++}function ou(n,t,i){var u,r;if(void 0===i&&1===n.nodeType)if(u="data-"+t.replace(ae,"-$&").toLowerCase(),"string"==typeof(i=n.getAttribute(u))){try{i="true"===(r=i)||"false"!==r&&("null"===r?null:r===+r+""?+r:le.test(r)?JSON.parse(r):r)}catch(n){}o.set(n,t,i)}else i=void 0;return i}function hu(n,t,r,u){var s,h,c=20,l=u?function(){return u.cur()}:function(){return i.css(n,t,"")},o=l(),e=r&&r[3]||(i.cssNumber[t]?"":"px"),f=n.nodeType&&(i.cssNumber[t]||"px"!==e&&+o)&&kt.exec(i.css(n,t));if(f&&f[3]!==e){for(o/=2,e=e||f[3],f=+o||1;c--;)i.style(n,t,f+e),(1-h)*(1-(h=l()/o||.5))<=0&&(c=0),f/=h;f*=2;i.style(n,t,f+e);r=r||[]}return r&&(f=+f||+o||0,s=r[1]?f+(r[1]+1)*r[2]:+r[2],u&&(u.unit=e,u.start=f,u.end=s)),s}function ht(n,t){for(var h,f,a,s,c,l,e,o=[],u=0,v=n.length;u<v;u++)(f=n[u]).style&&(h=f.style.display,t?("none"===h&&(o[u]=r.get(f,"display")||null,o[u]||(f.style.display="")),""===f.style.display&&dt(f)&&(o[u]=(e=c=s=void 0,c=(a=f).ownerDocument,l=a.nodeName,(e=ki[l])||(s=c.body.appendChild(c.createElement(l)),e=i.css(s,"display"),s.parentNode.removeChild(s),"none"===e&&(e="block"),ki[l]=e)))):"none"!==h&&(o[u]="none",r.set(f,"display",h)));for(u=0;u<v;u++)null!=o[u]&&(n[u].style.display=o[u]);return n}function s(n,t){var r;return r="undefined"!=typeof n.getElementsByTagName?n.getElementsByTagName(t||"*"):"undefined"!=typeof n.querySelectorAll?n.querySelectorAll(t||"*"):[],void 0===t||t&&c(n,t)?i.merge([n],r):r}function di(n,t){for(var i=0,u=n.length;i<u;i++)r.set(n[i],"globalEval",!t||r.get(t[i],"globalEval"))}function vu(n,t,r,u,f){for(var e,o,p,a,w,v,c=t.createDocumentFragment(),y=[],l=0,b=n.length;l<b;l++)if((e=n[l])||0===e)if("object"===ut(e))i.merge(y,e.nodeType?[e]:e);else if(au.test(e)){for(o=o||c.appendChild(t.createElement("div")),p=(cu.exec(e)||["",""])[1].toLowerCase(),a=h[p]||h._default,o.innerHTML=a[1]+i.htmlPrefilter(e)+a[2],v=a[0];v--;)o=o.lastChild;i.merge(y,o.childNodes);(o=c.firstChild).textContent=""}else y.push(t.createTextNode(e));for(c.textContent="",l=0;e=y[l++];)if(u&&-1<i.inArray(e,u))f&&f.push(e);else if(w=st(e),o=s(c.appendChild(e),"script"),w&&di(o),r)for(v=0;e=o[v++];)lu.test(e.type||"")&&r.push(e);return c}function ct(){return!0}function lt(){return!1}function we(n,t){return n===function(){try{return f.activeElement}catch(n){}}()==("focus"===t)}function gi(n,t,r,u,f,e){var o,s;if("object"==typeof t){for(s in"string"!=typeof r&&(u=u||r,r=void 0),t)gi(n,s,r,u,t[s],e);return n}if(null==u&&null==f?(f=r,u=r=void 0):null==f&&("string"==typeof r?(f=u,u=void 0):(f=u,u=r,r=void 0)),!1===f)f=lt;else if(!f)return n;return 1===e&&(o=f,(f=function(n){return i().off(n),o.apply(this,arguments)}).guid=o.guid||(o.guid=i.guid++)),n.each(function(){i.event.add(this,t,f,u,r)})}function hi(n,t,u){u?(r.set(n,t,!1),i.event.add(n,t,{namespace:!1,handler:function(n){var o,e,f=r.get(this,t);if(1&n.isTrigger&&this[t]){if(f.length)(i.event.special[t]||{}).delegateType&&n.stopPropagation();else if(f=k.call(arguments),r.set(this,t,f),o=u(this,t),this[t](),f!==(e=r.get(this,t))||o?r.set(this,t,!1):e={},f!==e)return n.stopImmediatePropagation(),n.preventDefault(),e.value}else f.length&&(r.set(this,t,{value:i.event.trigger(i.extend(f[0],i.Event.prototype),f.slice(1),this)}),n.stopImmediatePropagation())}})):void 0===r.get(n,t)&&i.event.add(n,t,ct)}function pu(n,t){return c(n,"table")&&c(11!==t.nodeType?t:t.firstChild,"tr")&&i(n).children("tbody")[0]||n}function ge(n){return n.type=(null!==n.getAttribute("type"))+"/"+n.type,n}function no(n){return"true/"===(n.type||"").slice(0,5)?n.type=n.type.slice(5):n.removeAttribute("type"),n}function wu(n,t){var u,s,f,h,c,e;if(1===t.nodeType){if(r.hasData(n)&&(e=r.get(n).events))for(f in r.remove(t,"handle events"),e)for(u=0,s=e[f].length;u<s;u++)i.event.add(t,f,e[f][u]);o.hasData(n)&&(h=o.access(n),c=i.extend({},h),o.set(t,c))}}function at(n,t,f,o){t=yr(t);var a,b,l,v,h,y,c=0,p=n.length,d=p-1,w=t[0],k=u(w);if(k||1<p&&"string"==typeof w&&!e.checkClone&&ke.test(w))return n.each(function(i){var r=n.eq(i);k&&(t[0]=w.call(this,i,r.html()));at(r,t,f,o)});if(p&&(b=(a=vu(t,n[0].ownerDocument,!1,n,o)).firstChild,1===a.childNodes.length&&(a=b),b||o)){for(v=(l=i.map(s(a,"script"),ge)).length;c<p;c++)h=a,c!==d&&(h=i.clone(h,!0,!0),v&&i.merge(l,s(h,"script"))),f.call(n[c],h,c);if(v)for(y=l[l.length-1].ownerDocument,i.map(l,no),c=0;c<v;c++)h=l[c],lu.test(h.type||"")&&!r.access(h,"globalEval")&&i.contains(y,h)&&(h.src&&"module"!==(h.type||"").toLowerCase()?i._evalUrl&&!h.noModule&&i._evalUrl(h.src,{nonce:h.nonce||h.getAttribute("nonce")},y):br(h.textContent.replace(de,""),h,y))}return n}function bu(n,t,r){for(var u,e=t?i.filter(t,n):n,f=0;null!=(u=e[f]);f++)r||1!==u.nodeType||i.cleanData(s(u)),u.parentNode&&(r&&st(u)&&di(s(u,"script")),u.parentNode.removeChild(u));return n}function ni(n,t,r){var o,s,h,f,u=n.style;return(r=r||ci(n))&&(""!==(f=r.getPropertyValue(t)||r[t])||st(n)||(f=i.style(n,t)),!e.pixelBoxStyles()&&nr.test(f)&&to.test(t)&&(o=u.width,s=u.minWidth,h=u.maxWidth,u.minWidth=u.maxWidth=u.width=f,f=r.width,u.width=o,u.minWidth=s,u.maxWidth=h)),void 0!==f?f+"":f}function du(n,t){return{get:function(){if(!n())return(this.get=t).apply(this,arguments);delete this.get}}}function tr(n){var t=i.cssProps[n]||tf[n];return t||(n in nf?n:tf[n]=function(n){for(var i=n[0].toUpperCase()+n.slice(1),t=gu.length;t--;)if((n=gu[t]+i)in nf)return n}(n)||n)}function ff(n,t,i){var r=kt.exec(t);return r?Math.max(0,r[2]-(i||0))+(r[3]||"px"):t}function ir(n,t,r,u,f,e){var o="width"===t?1:0,h=0,s=0;if(r===(u?"border":"content"))return 0;for(;o<4;o+=2)"margin"===r&&(s+=i.css(n,r+b[o],!0,f)),u?("content"===r&&(s-=i.css(n,"padding"+b[o],!0,f)),"margin"!==r&&(s-=i.css(n,"border"+b[o]+"Width",!0,f))):(s+=i.css(n,"padding"+b[o],!0,f),"padding"!==r?s+=i.css(n,"border"+b[o]+"Width",!0,f):h+=i.css(n,"border"+b[o]+"Width",!0,f));return!u&&0<=e&&(s+=Math.max(0,Math.ceil(n["offset"+t[0].toUpperCase()+t.slice(1)]-e-s-h-.5))||0),s}function ef(n,t,r){var f=ci(n),o=(!e.boxSizingReliable()||r)&&"border-box"===i.css(n,"boxSizing",!1,f),s=o,u=ni(n,t,f),h="offset"+t[0].toUpperCase()+t.slice(1);if(nr.test(u)){if(!r)return u;u="auto"}return(!e.boxSizingReliable()&&o||!e.reliableTrDimensions()&&c(n,"tr")||"auto"===u||!parseFloat(u)&&"inline"===i.css(n,"display",!1,f))&&n.getClientRects().length&&(o="border-box"===i.css(n,"boxSizing",!1,f),(s=h in n)&&(u=n[h])),(u=parseFloat(u)||0)+ir(n,t,r||(o?"border":"content"),s,f,u)+"px"}function a(n,t,i,r,u){return new a.prototype.init(n,t,i,r,u)}function rr(){li&&(!1===f.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(rr):n.setTimeout(rr,i.fx.interval),i.fx.tick())}function cf(){return n.setTimeout(function(){vt=void 0}),vt=Date.now()}function ai(n,t){var u,r=0,i={height:n};for(t=t?1:0;r<4;r+=2-t)i["margin"+(u=b[r])]=i["padding"+u]=n;return t&&(i.opacity=i.width=n),i}function lf(n,t,i){for(var u,f=(v.tweeners[t]||[]).concat(v.tweeners["*"]),r=0,e=f.length;r<e;r++)if(u=f[r].call(i,t,n))return u}function v(n,t,r){var o,s,h=0,a=v.prefilters.length,e=i.Deferred().always(function(){delete l.elem}),l=function(){if(s)return!1;for(var o=vt||cf(),t=Math.max(0,f.startTime+f.duration-o),i=1-(t/f.duration||0),r=0,u=f.tweens.length;r<u;r++)f.tweens[r].run(i);return e.notifyWith(n,[f,i,t]),i<1&&u?t:(u||e.notifyWith(n,[f,1,0]),e.resolveWith(n,[f]),!1)},f=e.promise({elem:n,props:i.extend({},t),opts:i.extend(!0,{specialEasing:{},easing:i.easing._default},r),originalProperties:t,originalOptions:r,startTime:vt||cf(),duration:r.duration,tweens:[],createTween:function(t,r){var u=i.Tween(n,f.opts,t,r,f.opts.specialEasing[t]||f.opts.easing);return f.tweens.push(u),u},stop:function(t){var i=0,r=t?f.tweens.length:0;if(s)return this;for(s=!0;i<r;i++)f.tweens[i].run(1);return t?(e.notifyWith(n,[f,1,0]),e.resolveWith(n,[f,t])):e.rejectWith(n,[f,t]),this}}),c=f.props;for(!function(n,t){var r,f,e,u,o;for(r in n)if(e=t[f=y(r)],u=n[r],Array.isArray(u)&&(e=u[1],u=n[r]=u[0]),r!==f&&(n[f]=u,delete n[r]),(o=i.cssHooks[f])&&"expand"in o)for(r in u=o.expand(u),delete n[f],u)r in n||(n[r]=u[r],t[r]=e);else t[f]=e}(c,f.opts.specialEasing);h<a;h++)if(o=v.prefilters[h].call(f,n,c,f.opts))return u(o.stop)&&(i._queueHooks(f.elem,f.opts.queue).stop=o.stop.bind(o)),o;return i.map(c,lf,f),u(f.opts.start)&&f.opts.start.call(n,f),f.progress(f.opts.progress).done(f.opts.done,f.opts.complete).fail(f.opts.fail).always(f.opts.always),i.fx.timer(i.extend(l,{elem:n,anim:f,queue:f.opts.queue})),f}function tt(n){return(n.match(l)||[]).join(" ")}function it(n){return n.getAttribute&&n.getAttribute("class")||""}function ur(n){return Array.isArray(n)?n:"string"==typeof n&&n.match(l)||[]}function sr(n,t,r,u){var f;if(Array.isArray(t))i.each(t,function(t,i){r||uo.test(n)?u(n,i):sr(n+"["+("object"==typeof i&&null!=i?t:"")+"]",i,r,u)});else if(r||"object"!==ut(t))u(n,t);else for(f in t)sr(n+"["+f+"]",t[f],r,u)}function gf(n){return function(t,i){"string"!=typeof t&&(i=t,t="*");var r,f=0,e=t.toLowerCase().match(l)||[];if(u(i))while(r=e[f++])"+"===r[0]?(r=r.slice(1)||"*",(n[r]=n[r]||[]).unshift(i)):(n[r]=n[r]||[]).push(i)}}function ne(n,t,r,u){function e(s){var h;return f[s]=!0,i.each(n[s]||[],function(n,i){var s=i(t,r,u);return"string"!=typeof s||o||f[s]?o?!(h=s):void 0:(t.dataTypes.unshift(s),e(s),!1)}),h}var f={},o=n===hr;return e(t.dataTypes[0])||!f["*"]&&e("*")}function lr(n,t){var r,u,f=i.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((f[r]?n:u||(u={}))[r]=t[r]);return u&&i.extend(!0,n,u),n}var p=[],vr=Object.getPrototypeOf,k=p.slice,yr=p.flat?function(n){return p.flat.call(n)}:function(n){return p.concat.apply([],n)},yi=p.push,ii=p.indexOf,ri={},pr=ri.toString,ui=ri.hasOwnProperty,wr=ui.toString,ee=wr.call(Object),e={},u=function(n){return"function"==typeof n&&"number"!=typeof n.nodeType},rt=function(n){return null!=n&&n===n.window},f=n.document,oe={type:!0,src:!0,nonce:!0,noModule:!0},kr="3.5.1",i=function(n,t){return new i.fn.init(n,t)},d,wi,nu,tu,iu,ru,l,eu,ei,ot,dt,ki,h,au,vt,li,yt,of,sf,hf,af,pt,vf,yf,pf,fr,er,te,wt,ie,ar,vi,re,ue,fe;i.fn=i.prototype={jquery:kr,constructor:i,length:0,toArray:function(){return k.call(this)},get:function(n){return null==n?k.call(this):n<0?this[n+this.length]:this[n]},pushStack:function(n){var t=i.merge(this.constructor(),n);return t.prevObject=this,t},each:function(n){return i.each(this,n)},map:function(n){return this.pushStack(i.map(this,function(t,i){return n.call(t,i,t)}))},slice:function(){return this.pushStack(k.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(i.grep(this,function(n,t){return(t+1)%2}))},odd:function(){return this.pushStack(i.grep(this,function(n,t){return t%2}))},eq:function(n){var i=this.length,t=+n+(n<0?i:0);return this.pushStack(0<=t&&t<i?[this[t]]:[])},end:function(){return this.prevObject||this.constructor()},push:yi,sort:p.sort,splice:p.splice};i.extend=i.fn.extend=function(){var s,f,e,t,o,c,n=arguments[0]||{},r=1,l=arguments.length,h=!1;for("boolean"==typeof n&&(h=n,n=arguments[r]||{},r++),"object"==typeof n||u(n)||(n={}),r===l&&(n=this,r--);r<l;r++)if(null!=(s=arguments[r]))for(f in s)t=s[f],"__proto__"!==f&&n!==t&&(h&&t&&(i.isPlainObject(t)||(o=Array.isArray(t)))?(e=n[f],c=o&&!Array.isArray(e)?[]:o||i.isPlainObject(e)?e:{},o=!1,n[f]=i.extend(h,c,t)):void 0!==t&&(n[f]=t));return n};i.extend({expando:"jQuery"+(kr+Math.random()).replace(/\D/g,""),isReady:!0,error:function(n){throw new Error(n);},noop:function(){},isPlainObject:function(n){var t,i;return!(!n||"[object Object]"!==pr.call(n))&&(!(t=vr(n))||"function"==typeof(i=ui.call(t,"constructor")&&t.constructor)&&wr.call(i)===ee)},isEmptyObject:function(n){for(var t in n)return!1;return!0},globalEval:function(n,t,i){br(n,{nonce:t&&t.nonce},i)},each:function(n,t){var r,i=0;if(pi(n)){for(r=n.length;i<r;i++)if(!1===t.call(n[i],i,n[i]))break}else for(i in n)if(!1===t.call(n[i],i,n[i]))break;return n},makeArray:function(n,t){var r=t||[];return null!=n&&(pi(Object(n))?i.merge(r,"string"==typeof n?[n]:n):yi.call(r,n)),r},inArray:function(n,t,i){return null==t?-1:ii.call(t,n,i)},merge:function(n,t){for(var u=+t.length,i=0,r=n.length;i<u;i++)n[r++]=t[i];return n.length=r,n},grep:function(n,t,i){for(var u=[],r=0,f=n.length,e=!i;r<f;r++)!t(n[r],r)!==e&&u.push(n[r]);return u},map:function(n,t,i){var e,u,r=0,f=[];if(pi(n))for(e=n.length;r<e;r++)null!=(u=t(n[r],r,i))&&f.push(u);else for(r in n)null!=(u=t(n[r],r,i))&&f.push(u);return yr(f)},guid:1,support:e});"function"==typeof Symbol&&(i.fn[Symbol.iterator]=p[Symbol.iterator]);i.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(n,t){ri["[object "+t+"]"]=t.toLowerCase()});d=function(n){function u(n,t,r,u){var s,y,c,l,p,w,d,v=t&&t.ownerDocument,a=t?t.nodeType:9;if(r=r||[],"string"!=typeof n||!n||1!==a&&9!==a&&11!==a)return r;if(!u&&(b(t),t=t||i,h)){if(11!==a&&(p=ar.exec(n)))if(s=p[1]){if(9===a){if(!(c=t.getElementById(s)))return r;if(c.id===s)return r.push(c),r}else if(v&&(c=v.getElementById(s))&&et(t,c)&&c.id===s)return r.push(c),r}else{if(p[2])return k.apply(r,t.getElementsByTagName(n)),r;if((s=p[3])&&f.getElementsByClassName&&t.getElementsByClassName)return k.apply(r,t.getElementsByClassName(s)),r}if(f.qsa&&!lt[n+" "]&&(!o||!o.test(n))&&(1!==a||"object"!==t.nodeName.toLowerCase())){if(d=n,v=t,1===a&&(er.test(n)||yi.test(n))){for((v=ti.test(n)&&ri(t.parentNode)||t)===t&&f.scope||((l=t.getAttribute("id"))?l=l.replace(pi,wi):t.setAttribute("id",l=e)),y=(w=ft(n)).length;y--;)w[y]=(l?"#"+l:":scope")+" "+pt(w[y]);d=w.join(",")}try{return k.apply(r,v.querySelectorAll(d)),r}catch(t){lt(n,!0)}finally{l===e&&t.removeAttribute("id")}}}return si(n.replace(at,"$1"),t,r,u)}function yt(){var n=[];return function i(r,u){return n.push(r+" ")>t.cacheLength&&delete i[n.shift()],i[r+" "]=u}}function l(n){return n[e]=!0,n}function a(n){var t=i.createElement("fieldset");try{return!!n(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t);t=null}}function ii(n,i){for(var r=n.split("|"),u=r.length;u--;)t.attrHandle[r[u]]=i}function ki(n,t){var i=t&&n,r=i&&1===n.nodeType&&1===t.nodeType&&n.sourceIndex-t.sourceIndex;if(r)return r;if(i)while(i=i.nextSibling)if(i===t)return-1;return n?1:-1}function yr(n){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===n}}function pr(n){return function(t){var i=t.nodeName.toLowerCase();return("input"===i||"button"===i)&&t.type===n}}function di(n){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===n:t.disabled===n:t.isDisabled===n||t.isDisabled!==!n&&vr(t)===n:t.disabled===n:"label"in t&&t.disabled===n}}function it(n){return l(function(t){return t=+t,l(function(i,r){for(var u,f=n([],i.length,t),e=f.length;e--;)i[u=f[e]]&&(i[u]=!(r[u]=i[u]))})})}function ri(n){return n&&"undefined"!=typeof n.getElementsByTagName&&n}function gi(){}function pt(n){for(var t=0,r=n.length,i="";t<r;t++)i+=n[t].value;return i}function wt(n,t,i){var r=t.dir,u=t.next,f=u||r,o=i&&"parentNode"===f,s=nr++;return t.first?function(t,i,u){while(t=t[r])if(1===t.nodeType||o)return n(t,i,u);return!1}:function(t,i,h){var c,l,a,y=[v,s];if(h){while(t=t[r])if((1===t.nodeType||o)&&n(t,i,h))return!0}else while(t=t[r])if(1===t.nodeType||o)if(l=(a=t[e]||(t[e]={}))[t.uniqueID]||(a[t.uniqueID]={}),u&&u===t.nodeName.toLowerCase())t=t[r]||t;else{if((c=l[f])&&c[0]===v&&c[1]===s)return y[2]=c[2];if((l[f]=y)[2]=n(t,i,h))return!0}return!1}}function ui(n){return 1<n.length?function(t,i,r){for(var u=n.length;u--;)if(!n[u](t,i,r))return!1;return!0}:n[0]}function bt(n,t,i,r,u){for(var e,o=[],f=0,s=n.length,h=null!=t;f<s;f++)(e=n[f])&&(i&&!i(e,r,u)||(o.push(e),h&&t.push(f)));return o}function fi(n,t,i,r,f,o){return r&&!r[e]&&(r=fi(r)),f&&!f[e]&&(f=fi(f,o)),l(function(e,o,s,h){var a,l,v,w=[],p=[],b=o.length,d=e||function(n,t,i){for(var r=0,f=t.length;r<f;r++)u(n,t[r],i);return i}(t||"*",s.nodeType?[s]:s,[]),y=!n||!e&&t?d:bt(d,w,n,s,h),c=i?f||(e?n:b||r)?[]:o:y;if(i&&i(y,c,s,h),r)for(a=bt(c,p),r(a,[],s,h),l=a.length;l--;)(v=a[l])&&(c[p[l]]=!(y[p[l]]=v));if(e){if(f||n){if(f){for(a=[],l=c.length;l--;)(v=c[l])&&a.push(y[l]=v);f(null,c=[],a,h)}for(l=c.length;l--;)(v=c[l])&&-1<(a=f?nt(e,v):w[l])&&(e[a]=!(o[a]=v))}}else c=bt(c===o?c.splice(b,c.length):c),f?f(null,o,c,h):k.apply(o,c)})}function ei(n){for(var o,u,r,s=n.length,h=t.relative[n[0].type],c=h||t.relative[" "],i=h?1:0,l=wt(function(n){return n===o},c,!0),a=wt(function(n){return-1<nt(o,n)},c,!0),f=[function(n,t,i){var r=!h&&(i||t!==ht)||((o=t).nodeType?l(n,t,i):a(n,t,i));return o=null,r}];i<s;i++)if(u=t.relative[n[i].type])f=[wt(ui(f),u)];else{if((u=t.filter[n[i].type].apply(null,n[i].matches))[e]){for(r=++i;r<s;r++)if(t.relative[n[r].type])break;return fi(1<i&&ui(f),1<i&&pt(n.slice(0,i-1).concat({value:" "===n[i-2].type?"*":""})).replace(at,"$1"),u,i<r&&ei(n.slice(i,r)),r<s&&ei(n=n.slice(r)),r<s&&pt(n))}f.push(u)}return ui(f)}var rt,f,t,st,oi,ft,kt,si,ht,w,ut,b,i,s,h,o,d,ct,et,e="sizzle"+1*new Date,c=n.document,v=0,nr=0,hi=yt(),ci=yt(),li=yt(),lt=yt(),dt=function(n,t){return n===t&&(ut=!0),0},tr={}.hasOwnProperty,g=[],ir=g.pop,rr=g.push,k=g.push,ai=g.slice,nt=function(n,t){for(var i=0,r=n.length;i<r;i++)if(n[i]===t)return i;return-1},gt="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",r="[\\x20\\t\\r\\n\\f]",tt="(?:\\\\[\\da-fA-F]{1,6}"+r+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",vi="\\["+r+"*("+tt+")(?:"+r+"*([*^$|!~]?=)"+r+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+tt+"))|)"+r+"*\\]",ni=":("+tt+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+vi+")*)|.*)\\)|)",ur=new RegExp(r+"+","g"),at=new RegExp("^"+r+"+|((?:^|[^\\\\])(?:\\\\.)*)"+r+"+$","g"),fr=new RegExp("^"+r+"*,"+r+"*"),yi=new RegExp("^"+r+"*([>+~]|"+r+")"+r+"*"),er=new RegExp(r+"|>"),or=new RegExp(ni),sr=new RegExp("^"+tt+"$"),vt={ID:new RegExp("^#("+tt+")"),CLASS:new RegExp("^\\.("+tt+")"),TAG:new RegExp("^("+tt+"|[*])"),ATTR:new RegExp("^"+vi),PSEUDO:new RegExp("^"+ni),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+r+"*(even|odd|(([+-]|)(\\d*)n|)"+r+"*(?:([+-]|)"+r+"*(\\d+)|))"+r+"*\\)|)","i"),bool:new RegExp("^(?:"+gt+")$","i"),needsContext:new RegExp("^"+r+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+r+"*((?:-\\d)?\\d*)"+r+"*\\)|)(?=[^-]|$)","i")},hr=/HTML$/i,cr=/^(?:input|select|textarea|button)$/i,lr=/^h\d$/i,ot=/^[^{]+\{\s*\[native \w/,ar=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ti=/[+~]/,y=new RegExp("\\\\[\\da-fA-F]{1,6}"+r+"?|\\\\([^\\r\\n\\f])","g"),p=function(n,t){var i="0x"+n.slice(1)-65536;return t||(i<0?String.fromCharCode(i+65536):String.fromCharCode(i>>10|55296,1023&i|56320))},pi=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,wi=function(n,t){return t?"\0"===n?"�":n.slice(0,-1)+"\\"+n.charCodeAt(n.length-1).toString(16)+" ":"\\"+n},bi=function(){b()},vr=wt(function(n){return!0===n.disabled&&"fieldset"===n.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{k.apply(g=ai.call(c.childNodes),c.childNodes);g[c.childNodes.length].nodeType}catch(rt){k={apply:g.length?function(n,t){rr.apply(n,ai.call(t))}:function(n,t){for(var i=n.length,r=0;n[i++]=t[r++];);n.length=i-1}}}for(rt in f=u.support={},oi=u.isXML=function(n){var i=n.namespaceURI,t=(n.ownerDocument||n).documentElement;return!hr.test(i||t&&t.nodeName||"HTML")},b=u.setDocument=function(n){var v,u,l=n?n.ownerDocument||n:c;return l!=i&&9===l.nodeType&&l.documentElement&&(s=(i=l).documentElement,h=!oi(i),c!=i&&(u=i.defaultView)&&u.top!==u&&(u.addEventListener?u.addEventListener("unload",bi,!1):u.attachEvent&&u.attachEvent("onunload",bi)),f.scope=a(function(n){return s.appendChild(n).appendChild(i.createElement("div")),"undefined"!=typeof n.querySelectorAll&&!n.querySelectorAll(":scope fieldset div").length}),f.attributes=a(function(n){return n.className="i",!n.getAttribute("className")}),f.getElementsByTagName=a(function(n){return n.appendChild(i.createComment("")),!n.getElementsByTagName("*").length}),f.getElementsByClassName=ot.test(i.getElementsByClassName),f.getById=a(function(n){return s.appendChild(n).id=e,!i.getElementsByName||!i.getElementsByName(e).length}),f.getById?(t.filter.ID=function(n){var t=n.replace(y,p);return function(n){return n.getAttribute("id")===t}},t.find.ID=function(n,t){if("undefined"!=typeof t.getElementById&&h){var i=t.getElementById(n);return i?[i]:[]}}):(t.filter.ID=function(n){var t=n.replace(y,p);return function(n){var i="undefined"!=typeof n.getAttributeNode&&n.getAttributeNode("id");return i&&i.value===t}},t.find.ID=function(n,t){if("undefined"!=typeof t.getElementById&&h){var r,u,f,i=t.getElementById(n);if(i){if((r=i.getAttributeNode("id"))&&r.value===n)return[i];for(f=t.getElementsByName(n),u=0;i=f[u++];)if((r=i.getAttributeNode("id"))&&r.value===n)return[i]}return[]}}),t.find.TAG=f.getElementsByTagName?function(n,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(n):f.qsa?t.querySelectorAll(n):void 0}:function(n,t){var i,r=[],f=0,u=t.getElementsByTagName(n);if("*"===n){while(i=u[f++])1===i.nodeType&&r.push(i);return r}return u},t.find.CLASS=f.getElementsByClassName&&function(n,t){if("undefined"!=typeof t.getElementsByClassName&&h)return t.getElementsByClassName(n)},d=[],o=[],(f.qsa=ot.test(i.querySelectorAll))&&(a(function(n){var t;s.appendChild(n).innerHTML="<a id='"+e+"'><\/a><select id='"+e+"-\r\\' msallowcapture=''><option selected=''><\/option><\/select>";n.querySelectorAll("[msallowcapture^='']").length&&o.push("[*^$]="+r+"*(?:''|\"\")");n.querySelectorAll("[selected]").length||o.push("\\["+r+"*(?:value|"+gt+")");n.querySelectorAll("[id~="+e+"-]").length||o.push("~=");(t=i.createElement("input")).setAttribute("name","");n.appendChild(t);n.querySelectorAll("[name='']").length||o.push("\\["+r+"*name"+r+"*="+r+"*(?:''|\"\")");n.querySelectorAll(":checked").length||o.push(":checked");n.querySelectorAll("a#"+e+"+*").length||o.push(".#.+[+~]");n.querySelectorAll("\\\f");o.push("[\\r\\n\\f]")}),a(function(n){n.innerHTML="<a href='' disabled='disabled'><\/a><select disabled='disabled'><option/><\/select>";var t=i.createElement("input");t.setAttribute("type","hidden");n.appendChild(t).setAttribute("name","D");n.querySelectorAll("[name=d]").length&&o.push("name"+r+"*[*^$|!~]?=");2!==n.querySelectorAll(":enabled").length&&o.push(":enabled",":disabled");s.appendChild(n).disabled=!0;2!==n.querySelectorAll(":disabled").length&&o.push(":enabled",":disabled");n.querySelectorAll("*,:x");o.push(",.*:")})),(f.matchesSelector=ot.test(ct=s.matches||s.webkitMatchesSelector||s.mozMatchesSelector||s.oMatchesSelector||s.msMatchesSelector))&&a(function(n){f.disconnectedMatch=ct.call(n,"*");ct.call(n,"[s!='']:x");d.push("!=",ni)}),o=o.length&&new RegExp(o.join("|")),d=d.length&&new RegExp(d.join("|")),v=ot.test(s.compareDocumentPosition),et=v||ot.test(s.contains)?function(n,t){var r=9===n.nodeType?n.documentElement:n,i=t&&t.parentNode;return n===i||!(!i||1!==i.nodeType||!(r.contains?r.contains(i):n.compareDocumentPosition&&16&n.compareDocumentPosition(i)))}:function(n,t){if(t)while(t=t.parentNode)if(t===n)return!0;return!1},dt=v?function(n,t){if(n===t)return ut=!0,0;var r=!n.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(n.ownerDocument||n)==(t.ownerDocument||t)?n.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(n)===r?n==i||n.ownerDocument==c&&et(c,n)?-1:t==i||t.ownerDocument==c&&et(c,t)?1:w?nt(w,n)-nt(w,t):0:4&r?-1:1)}:function(n,t){if(n===t)return ut=!0,0;var r,u=0,o=n.parentNode,s=t.parentNode,f=[n],e=[t];if(!o||!s)return n==i?-1:t==i?1:o?-1:s?1:w?nt(w,n)-nt(w,t):0;if(o===s)return ki(n,t);for(r=n;r=r.parentNode;)f.unshift(r);for(r=t;r=r.parentNode;)e.unshift(r);while(f[u]===e[u])u++;return u?ki(f[u],e[u]):f[u]==c?-1:e[u]==c?1:0}),i},u.matches=function(n,t){return u(n,null,null,t)},u.matchesSelector=function(n,t){if(b(n),f.matchesSelector&&h&&!lt[t+" "]&&(!d||!d.test(t))&&(!o||!o.test(t)))try{var r=ct.call(n,t);if(r||f.disconnectedMatch||n.document&&11!==n.document.nodeType)return r}catch(n){lt(t,!0)}return 0<u(t,i,null,[n]).length},u.contains=function(n,t){return(n.ownerDocument||n)!=i&&b(n),et(n,t)},u.attr=function(n,r){(n.ownerDocument||n)!=i&&b(n);var e=t.attrHandle[r.toLowerCase()],u=e&&tr.call(t.attrHandle,r.toLowerCase())?e(n,r,!h):void 0;return void 0!==u?u:f.attributes||!h?n.getAttribute(r):(u=n.getAttributeNode(r))&&u.specified?u.value:null},u.escape=function(n){return(n+"").replace(pi,wi)},u.error=function(n){throw new Error("Syntax error, unrecognized expression: "+n);},u.uniqueSort=function(n){var r,u=[],t=0,i=0;if(ut=!f.detectDuplicates,w=!f.sortStable&&n.slice(0),n.sort(dt),ut){while(r=n[i++])r===n[i]&&(t=u.push(i));while(t--)n.splice(u[t],1)}return w=null,n},st=u.getText=function(n){var r,i="",u=0,t=n.nodeType;if(t){if(1===t||9===t||11===t){if("string"==typeof n.textContent)return n.textContent;for(n=n.firstChild;n;n=n.nextSibling)i+=st(n)}else if(3===t||4===t)return n.nodeValue}else while(r=n[u++])i+=st(r);return i},(t=u.selectors={cacheLength:50,createPseudo:l,match:vt,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(n){return n[1]=n[1].replace(y,p),n[3]=(n[3]||n[4]||n[5]||"").replace(y,p),"~="===n[2]&&(n[3]=" "+n[3]+" "),n.slice(0,4)},CHILD:function(n){return n[1]=n[1].toLowerCase(),"nth"===n[1].slice(0,3)?(n[3]||u.error(n[0]),n[4]=+(n[4]?n[5]+(n[6]||1):2*("even"===n[3]||"odd"===n[3])),n[5]=+(n[7]+n[8]||"odd"===n[3])):n[3]&&u.error(n[0]),n},PSEUDO:function(n){var i,t=!n[6]&&n[2];return vt.CHILD.test(n[0])?null:(n[3]?n[2]=n[4]||n[5]||"":t&&or.test(t)&&(i=ft(t,!0))&&(i=t.indexOf(")",t.length-i)-t.length)&&(n[0]=n[0].slice(0,i),n[2]=t.slice(0,i)),n.slice(0,3))}},filter:{TAG:function(n){var t=n.replace(y,p).toLowerCase();return"*"===n?function(){return!0}:function(n){return n.nodeName&&n.nodeName.toLowerCase()===t}},CLASS:function(n){var t=hi[n+" "];return t||(t=new RegExp("(^|"+r+")"+n+"("+r+"|$)"))&&hi(n,function(n){return t.test("string"==typeof n.className&&n.className||"undefined"!=typeof n.getAttribute&&n.getAttribute("class")||"")})},ATTR:function(n,t,i){return function(r){var f=u.attr(r,n);return null==f?"!="===t:!t||(f+="","="===t?f===i:"!="===t?f!==i:"^="===t?i&&0===f.indexOf(i):"*="===t?i&&-1<f.indexOf(i):"$="===t?i&&f.slice(-i.length)===i:"~="===t?-1<(" "+f.replace(ur," ")+" ").indexOf(i):"|="===t&&(f===i||f.slice(0,i.length+1)===i+"-"))}},CHILD:function(n,t,i,r,u){var s="nth"!==n.slice(0,3),o="last"!==n.slice(-4),f="of-type"===t;return 1===r&&0===u?function(n){return!!n.parentNode}:function(t,i,h){var p,d,y,c,a,w,b=s!==o?"nextSibling":"previousSibling",k=t.parentNode,nt=f&&t.nodeName.toLowerCase(),g=!h&&!f,l=!1;if(k){if(s){while(b){for(c=t;c=c[b];)if(f?c.nodeName.toLowerCase()===nt:1===c.nodeType)return!1;w=b="only"===n&&!w&&"nextSibling"}return!0}if(w=[o?k.firstChild:k.lastChild],o&&g){for(l=(a=(p=(d=(y=(c=k)[e]||(c[e]={}))[c.uniqueID]||(y[c.uniqueID]={}))[n]||[])[0]===v&&p[1])&&p[2],c=a&&k.childNodes[a];c=++a&&c&&c[b]||(l=a=0)||w.pop();)if(1===c.nodeType&&++l&&c===t){d[n]=[v,a,l];break}}else if(g&&(l=a=(p=(d=(y=(c=t)[e]||(c[e]={}))[c.uniqueID]||(y[c.uniqueID]={}))[n]||[])[0]===v&&p[1]),!1===l)while(c=++a&&c&&c[b]||(l=a=0)||w.pop())if((f?c.nodeName.toLowerCase()===nt:1===c.nodeType)&&++l&&(g&&((d=(y=c[e]||(c[e]={}))[c.uniqueID]||(y[c.uniqueID]={}))[n]=[v,l]),c===t))break;return(l-=u)===r||l%r==0&&0<=l/r}}},PSEUDO:function(n,i){var f,r=t.pseudos[n]||t.setFilters[n.toLowerCase()]||u.error("unsupported pseudo: "+n);return r[e]?r(i):1<r.length?(f=[n,n,"",i],t.setFilters.hasOwnProperty(n.toLowerCase())?l(function(n,t){for(var e,u=r(n,i),f=u.length;f--;)n[e=nt(n,u[f])]=!(t[e]=u[f])}):function(n){return r(n,0,f)}):r}},pseudos:{not:l(function(n){var t=[],r=[],i=kt(n.replace(at,"$1"));return i[e]?l(function(n,t,r,u){for(var e,o=i(n,null,u,[]),f=n.length;f--;)(e=o[f])&&(n[f]=!(t[f]=e))}):function(n,u,f){return t[0]=n,i(t,null,f,r),t[0]=null,!r.pop()}}),has:l(function(n){return function(t){return 0<u(n,t).length}}),contains:l(function(n){return n=n.replace(y,p),function(t){return-1<(t.textContent||st(t)).indexOf(n)}}),lang:l(function(n){return sr.test(n||"")||u.error("unsupported lang: "+n),n=n.replace(y,p).toLowerCase(),function(t){var i;do if(i=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(i=i.toLowerCase())===n||0===i.indexOf(n+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var i=n.location&&n.location.hash;return i&&i.slice(1)===t.id},root:function(n){return n===s},focus:function(n){return n===i.activeElement&&(!i.hasFocus||i.hasFocus())&&!!(n.type||n.href||~n.tabIndex)},enabled:di(!1),disabled:di(!0),checked:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&!!n.checked||"option"===t&&!!n.selected},selected:function(n){return n.parentNode&&n.parentNode.selectedIndex,!0===n.selected},empty:function(n){for(n=n.firstChild;n;n=n.nextSibling)if(n.nodeType<6)return!1;return!0},parent:function(n){return!t.pseudos.empty(n)},header:function(n){return lr.test(n.nodeName)},input:function(n){return cr.test(n.nodeName)},button:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&"button"===n.type||"button"===t},text:function(n){var t;return"input"===n.nodeName.toLowerCase()&&"text"===n.type&&(null==(t=n.getAttribute("type"))||"text"===t.toLowerCase())},first:it(function(){return[0]}),last:it(function(n,t){return[t-1]}),eq:it(function(n,t,i){return[i<0?i+t:i]}),even:it(function(n,t){for(var i=0;i<t;i+=2)n.push(i);return n}),odd:it(function(n,t){for(var i=1;i<t;i+=2)n.push(i);return n}),lt:it(function(n,t,i){for(var r=i<0?i+t:t<i?t:i;0<=--r;)n.push(r);return n}),gt:it(function(n,t,i){for(var r=i<0?i+t:i;++r<t;)n.push(r);return n})}}).pseudos.nth=t.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})t.pseudos[rt]=yr(rt);for(rt in{submit:!0,reset:!0})t.pseudos[rt]=pr(rt);return gi.prototype=t.filters=t.pseudos,t.setFilters=new gi,ft=u.tokenize=function(n,i){var e,f,s,o,r,h,c,l=ci[n+" "];if(l)return i?0:l.slice(0);for(r=n,h=[],c=t.preFilter;r;){for(o in e&&!(f=fr.exec(r))||(f&&(r=r.slice(f[0].length)||r),h.push(s=[])),e=!1,(f=yi.exec(r))&&(e=f.shift(),s.push({value:e,type:f[0].replace(at," ")}),r=r.slice(e.length)),t.filter)(f=vt[o].exec(r))&&(!c[o]||(f=c[o](f)))&&(e=f.shift(),s.push({value:e,type:o,matches:f}),r=r.slice(e.length));if(!e)break}return i?r.length:r?u.error(n):ci(n,h).slice(0)},kt=u.compile=function(n,r){var s,c,a,o,y,p,w=[],d=[],f=li[n+" "];if(!f){for(r||(r=ft(n)),s=r.length;s--;)(f=ei(r[s]))[e]?w.push(f):d.push(f);(f=li(n,(c=d,o=0<(a=w).length,y=0<c.length,p=function(n,r,f,e,s){var l,nt,d,g=0,p="0",tt=n&&[],w=[],it=ht,rt=n||y&&t.find.TAG("*",s),ut=v+=null==it?1:Math.random()||.1,ft=rt.length;for(s&&(ht=r==i||r||s);p!==ft&&null!=(l=rt[p]);p++){if(y&&l){for(nt=0,r||l.ownerDocument==i||(b(l),f=!h);d=c[nt++];)if(d(l,r||i,f)){e.push(l);break}s&&(v=ut)}o&&((l=!d&&l)&&g--,n&&tt.push(l))}if(g+=p,o&&p!==g){for(nt=0;d=a[nt++];)d(tt,w,r,f);if(n){if(0<g)while(p--)tt[p]||w[p]||(w[p]=ir.call(e));w=bt(w)}k.apply(e,w);s&&!n&&0<w.length&&1<g+a.length&&u.uniqueSort(e)}return s&&(v=ut,ht=it),tt},o?l(p):p))).selector=n}return f},si=u.select=function(n,i,r,u){var o,f,e,l,a,c="function"==typeof n&&n,s=!u&&ft(n=c.selector||n);if(r=r||[],1===s.length){if(2<(f=s[0]=s[0].slice(0)).length&&"ID"===(e=f[0]).type&&9===i.nodeType&&h&&t.relative[f[1].type]){if(!(i=(t.find.ID(e.matches[0].replace(y,p),i)||[])[0]))return r;c&&(i=i.parentNode);n=n.slice(f.shift().value.length)}for(o=vt.needsContext.test(n)?0:f.length;o--;){if(e=f[o],t.relative[l=e.type])break;if((a=t.find[l])&&(u=a(e.matches[0].replace(y,p),ti.test(f[0].type)&&ri(i.parentNode)||i))){if(f.splice(o,1),!(n=u.length&&pt(f)))return k.apply(r,u),r;break}}}return(c||kt(n,s))(u,i,!h,r,!i||ti.test(n)&&ri(i.parentNode)||i),r},f.sortStable=e.split("").sort(dt).join("")===e,f.detectDuplicates=!!ut,b(),f.sortDetached=a(function(n){return 1&n.compareDocumentPosition(i.createElement("fieldset"))}),a(function(n){return n.innerHTML="<a href='#'><\/a>","#"===n.firstChild.getAttribute("href")})||ii("type|href|height|width",function(n,t,i){if(!i)return n.getAttribute(t,"type"===t.toLowerCase()?1:2)}),f.attributes&&a(function(n){return n.innerHTML="<input/>",n.firstChild.setAttribute("value",""),""===n.firstChild.getAttribute("value")})||ii("value",function(n,t,i){if(!i&&"input"===n.nodeName.toLowerCase())return n.defaultValue}),a(function(n){return null==n.getAttribute("disabled")})||ii(gt,function(n,t,i){var r;if(!i)return!0===n[t]?t.toLowerCase():(r=n.getAttributeNode(t))&&r.specified?r.value:null}),u}(n);i.find=d;i.expr=d.selectors;i.expr[":"]=i.expr.pseudos;i.uniqueSort=i.unique=d.uniqueSort;i.text=d.getText;i.isXMLDoc=d.isXML;i.contains=d.contains;i.escapeSelector=d.escape;var ft=function(n,t,r){for(var u=[],f=void 0!==r;(n=n[t])&&9!==n.nodeType;)if(1===n.nodeType){if(f&&i(n).is(r))break;u.push(n)}return u},dr=function(n,t){for(var i=[];n;n=n.nextSibling)1===n.nodeType&&n!==t&&i.push(n);return i},gr=i.expr.match.needsContext;wi=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;i.filter=function(n,t,r){var u=t[0];return r&&(n=":not("+n+")"),1===t.length&&1===u.nodeType?i.find.matchesSelector(u,n)?[u]:[]:i.find.matches(n,i.grep(t,function(n){return 1===n.nodeType}))};i.fn.extend({find:function(n){var t,r,u=this.length,f=this;if("string"!=typeof n)return this.pushStack(i(n).filter(function(){for(t=0;t<u;t++)if(i.contains(f[t],this))return!0}));for(r=this.pushStack([]),t=0;t<u;t++)i.find(n,f[t],r);return 1<u?i.uniqueSort(r):r},filter:function(n){return this.pushStack(bi(this,n||[],!1))},not:function(n){return this.pushStack(bi(this,n||[],!0))},is:function(n){return!!bi(this,"string"==typeof n&&gr.test(n)?i(n):n||[],!1).length}});tu=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(i.fn.init=function(n,t,r){var e,o;if(!n)return this;if(r=r||nu,"string"==typeof n){if(!(e="<"===n[0]&&">"===n[n.length-1]&&3<=n.length?[null,n,null]:tu.exec(n))||!e[1]&&t)return!t||t.jquery?(t||r).find(n):this.constructor(t).find(n);if(e[1]){if(t=t instanceof i?t[0]:t,i.merge(this,i.parseHTML(e[1],t&&t.nodeType?t.ownerDocument||t:f,!0)),wi.test(e[1])&&i.isPlainObject(t))for(e in t)u(this[e])?this[e](t[e]):this.attr(e,t[e]);return this}return(o=f.getElementById(e[2]))&&(this[0]=o,this.length=1),this}return n.nodeType?(this[0]=n,this.length=1,this):u(n)?void 0!==r.ready?r.ready(n):n(i):i.makeArray(n,this)}).prototype=i.fn;nu=i(f);iu=/^(?:parents|prev(?:Until|All))/;ru={children:!0,contents:!0,next:!0,prev:!0};i.fn.extend({has:function(n){var t=i(n,this),r=t.length;return this.filter(function(){for(var n=0;n<r;n++)if(i.contains(this,t[n]))return!0})},closest:function(n,t){var r,f=0,o=this.length,u=[],e="string"!=typeof n&&i(n);if(!gr.test(n))for(;f<o;f++)for(r=this[f];r&&r!==t;r=r.parentNode)if(r.nodeType<11&&(e?-1<e.index(r):1===r.nodeType&&i.find.matchesSelector(r,n))){u.push(r);break}return this.pushStack(1<u.length?i.uniqueSort(u):u)},index:function(n){return n?"string"==typeof n?ii.call(i(n),this[0]):ii.call(this,n.jquery?n[0]:n):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(n,t){return this.pushStack(i.uniqueSort(i.merge(this.get(),i(n,t))))},addBack:function(n){return this.add(null==n?this.prevObject:this.prevObject.filter(n))}});i.each({parent:function(n){var t=n.parentNode;return t&&11!==t.nodeType?t:null},parents:function(n){return ft(n,"parentNode")},parentsUntil:function(n,t,i){return ft(n,"parentNode",i)},next:function(n){return uu(n,"nextSibling")},prev:function(n){return uu(n,"previousSibling")},nextAll:function(n){return ft(n,"nextSibling")},prevAll:function(n){return ft(n,"previousSibling")},nextUntil:function(n,t,i){return ft(n,"nextSibling",i)},prevUntil:function(n,t,i){return ft(n,"previousSibling",i)},siblings:function(n){return dr((n.parentNode||{}).firstChild,n)},children:function(n){return dr(n.firstChild)},contents:function(n){return null!=n.contentDocument&&vr(n.contentDocument)?n.contentDocument:(c(n,"template")&&(n=n.content||n),i.merge([],n.childNodes))}},function(n,t){i.fn[n]=function(r,u){var f=i.map(this,t,r);return"Until"!==n.slice(-5)&&(u=r),u&&"string"==typeof u&&(f=i.filter(u,f)),1<this.length&&(ru[n]||i.uniqueSort(f),iu.test(n)&&f.reverse()),this.pushStack(f)}});l=/[^\x20\t\r\n\f]+/g;i.Callbacks=function(n){var a,h;n="string"==typeof n?(a=n,h={},i.each(a.match(l)||[],function(n,t){h[t]=!0}),h):i.extend({},n);var o,r,v,f,t=[],s=[],e=-1,y=function(){for(f=f||n.once,v=o=!0;s.length;e=-1)for(r=s.shift();++e<t.length;)!1===t[e].apply(r[0],r[1])&&n.stopOnFalse&&(e=t.length,r=!1);n.memory||(r=!1);o=!1;f&&(t=r?[]:"")},c={add:function(){return t&&(r&&!o&&(e=t.length-1,s.push(r)),function f(r){i.each(r,function(i,r){u(r)?n.unique&&c.has(r)||t.push(r):r&&r.length&&"string"!==ut(r)&&f(r)})}(arguments),r&&!o&&y()),this},remove:function(){return i.each(arguments,function(n,r){for(var u;-1<(u=i.inArray(r,t,u));)t.splice(u,1),u<=e&&e--}),this},has:function(n){return n?-1<i.inArray(n,t):0<t.length},empty:function(){return t&&(t=[]),this},disable:function(){return f=s=[],t=r="",this},disabled:function(){return!t},lock:function(){return f=s=[],r||o||(t=r=""),this},locked:function(){return!!f},fireWith:function(n,t){return f||(t=[n,(t=t||[]).slice?t.slice():t],s.push(t),o||y()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!v}};return c};i.extend({Deferred:function(t){var f=[["notify","progress",i.Callbacks("memory"),i.Callbacks("memory"),2],["resolve","done",i.Callbacks("once memory"),i.Callbacks("once memory"),0,"resolved"],["reject","fail",i.Callbacks("once memory"),i.Callbacks("once memory"),1,"rejected"]],o="pending",e={state:function(){return o},always:function(){return r.done(arguments).fail(arguments),this},"catch":function(n){return e.then(null,n)},pipe:function(){var n=arguments;return i.Deferred(function(t){i.each(f,function(i,f){var e=u(n[f[4]])&&n[f[4]];r[f[1]](function(){var n=e&&e.apply(this,arguments);n&&u(n.promise)?n.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[f[0]+"With"](this,e?[n]:arguments)})});n=null}).promise()},then:function(t,r,e){function s(t,r,f,e){return function(){var h=this,c=arguments,l=function(){var n,i;if(!(t<o)){if((n=f.apply(h,c))===r.promise())throw new TypeError("Thenable self-resolution");i=n&&("object"==typeof n||"function"==typeof n)&&n.then;u(i)?e?i.call(n,s(o,r,et,e),s(o,r,fi,e)):(o++,i.call(n,s(o,r,et,e),s(o,r,fi,e),s(o,r,et,r.notifyWith))):(f!==et&&(h=void 0,c=[n]),(e||r.resolveWith)(h,c))}},a=e?l:function(){try{l()}catch(l){i.Deferred.exceptionHook&&i.Deferred.exceptionHook(l,a.stackTrace);o<=t+1&&(f!==fi&&(h=void 0,c=[l]),r.rejectWith(h,c))}};t?a():(i.Deferred.getStackHook&&(a.stackTrace=i.Deferred.getStackHook()),n.setTimeout(a))}}var o=0;return i.Deferred(function(n){f[0][3].add(s(0,n,u(e)?e:et,n.notifyWith));f[1][3].add(s(0,n,u(t)?t:et));f[2][3].add(s(0,n,u(r)?r:fi))}).promise()},promise:function(n){return null!=n?i.extend(n,e):e}},r={};return i.each(f,function(n,t){var i=t[2],u=t[5];e[t[1]]=i.add;u&&i.add(function(){o=u},f[3-n][2].disable,f[3-n][3].disable,f[0][2].lock,f[0][3].lock);i.add(t[3].fire);r[t[0]]=function(){return r[t[0]+"With"](this===r?void 0:this,arguments),this};r[t[0]+"With"]=i.fireWith}),e.promise(r),t&&t.call(r,r),r},when:function(n){var e=arguments.length,t=e,o=Array(t),f=k.call(arguments),r=i.Deferred(),s=function(n){return function(t){o[n]=this;f[n]=1<arguments.length?k.call(arguments):t;--e||r.resolveWith(o,f)}};if(e<=1&&(fu(n,r.done(s(t)).resolve,r.reject,!e),"pending"===r.state()||u(f[t]&&f[t].then)))return r.then();while(t--)fu(f[t],s(t),r.reject);return r.promise()}});eu=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;i.Deferred.exceptionHook=function(t,i){n.console&&n.console.warn&&t&&eu.test(t.name)&&n.console.warn("jQuery.Deferred exception: "+t.message,t.stack,i)};i.readyException=function(t){n.setTimeout(function(){throw t;})};ei=i.Deferred();i.fn.ready=function(n){return ei.then(n)["catch"](function(n){i.readyException(n)}),this};i.extend({isReady:!1,readyWait:1,ready:function(n){(!0===n?--i.readyWait:i.isReady)||(i.isReady=!0)!==n&&0<--i.readyWait||ei.resolveWith(f,[i])}});i.ready.then=ei.then;"complete"===f.readyState||"loading"!==f.readyState&&!f.documentElement.doScroll?n.setTimeout(i.ready):(f.addEventListener("DOMContentLoaded",oi),n.addEventListener("load",oi));var w=function(n,t,r,f,e,o,s){var h=0,l=n.length,c=null==r;if("object"===ut(r))for(h in e=!0,r)w(n,t,h,r[h],!0,o,s);else if(void 0!==f&&(e=!0,u(f)||(s=!0),c&&(s?(t.call(n,f),t=null):(c=t,t=function(n,t,r){return c.call(i(n),r)})),t))for(;h<l;h++)t(n[h],r,s?f:f.call(n[h],h,t(n[h],r)));return e?n:c?t.call(n):l?t(n[0],r):o},se=/^-ms-/,he=/-([a-z])/g;ot=function(n){return 1===n.nodeType||9===n.nodeType||!+n.nodeType};bt.uid=1;bt.prototype={cache:function(n){var t=n[this.expando];return t||(t={},ot(n)&&(n.nodeType?n[this.expando]=t:Object.defineProperty(n,this.expando,{value:t,configurable:!0}))),t},set:function(n,t,i){var r,u=this.cache(n);if("string"==typeof t)u[y(t)]=i;else for(r in t)u[y(r)]=t[r];return u},get:function(n,t){return void 0===t?this.cache(n):n[this.expando]&&n[this.expando][y(t)]},access:function(n,t,i){return void 0===t||t&&"string"==typeof t&&void 0===i?this.get(n,t):(this.set(n,t,i),void 0!==i?i:t)},remove:function(n,t){var u,r=n[this.expando];if(void 0!==r){if(void 0!==t)for(u=(t=Array.isArray(t)?t.map(y):(t=y(t))in r?[t]:t.match(l)||[]).length;u--;)delete r[t[u]];(void 0===t||i.isEmptyObject(r))&&(n.nodeType?n[this.expando]=void 0:delete n[this.expando])}},hasData:function(n){var t=n[this.expando];return void 0!==t&&!i.isEmptyObject(t)}};var r=new bt,o=new bt,le=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,ae=/[A-Z]/g;i.extend({hasData:function(n){return o.hasData(n)||r.hasData(n)},data:function(n,t,i){return o.access(n,t,i)},removeData:function(n,t){o.remove(n,t)},_data:function(n,t,i){return r.access(n,t,i)},_removeData:function(n,t){r.remove(n,t)}});i.fn.extend({data:function(n,t){var f,u,e,i=this[0],s=i&&i.attributes;if(void 0===n){if(this.length&&(e=o.get(i),1===i.nodeType&&!r.get(i,"hasDataAttrs"))){for(f=s.length;f--;)s[f]&&0===(u=s[f].name).indexOf("data-")&&(u=y(u.slice(5)),ou(i,u,e[u]));r.set(i,"hasDataAttrs",!0)}return e}return"object"==typeof n?this.each(function(){o.set(this,n)}):w(this,function(t){var r;if(i&&void 0===t)return void 0!==(r=o.get(i,n))?r:void 0!==(r=ou(i,n))?r:void 0;this.each(function(){o.set(this,n,t)})},null,t,1<arguments.length,null,!0)},removeData:function(n){return this.each(function(){o.remove(this,n)})}});i.extend({queue:function(n,t,u){var f;if(n)return t=(t||"fx")+"queue",f=r.get(n,t),u&&(!f||Array.isArray(u)?f=r.access(n,t,i.makeArray(u)):f.push(u)),f||[]},dequeue:function(n,t){t=t||"fx";var r=i.queue(n,t),e=r.length,u=r.shift(),f=i._queueHooks(n,t);"inprogress"===u&&(u=r.shift(),e--);u&&("fx"===t&&r.unshift("inprogress"),delete f.stop,u.call(n,function(){i.dequeue(n,t)},f));!e&&f&&f.empty.fire()},_queueHooks:function(n,t){var u=t+"queueHooks";return r.get(n,u)||r.access(n,u,{empty:i.Callbacks("once memory").add(function(){r.remove(n,[t+"queue",u])})})}});i.fn.extend({queue:function(n,t){var r=2;return"string"!=typeof n&&(t=n,n="fx",r--),arguments.length<r?i.queue(this[0],n):void 0===t?this:this.each(function(){var r=i.queue(this,n,t);i._queueHooks(this,n);"fx"===n&&"inprogress"!==r[0]&&i.dequeue(this,n)})},dequeue:function(n){return this.each(function(){i.dequeue(this,n)})},clearQueue:function(n){return this.queue(n||"fx",[])},promise:function(n,t){var u,e=1,o=i.Deferred(),f=this,s=this.length,h=function(){--e||o.resolveWith(f,[f])};for("string"!=typeof n&&(t=n,n=void 0),n=n||"fx";s--;)(u=r.get(f[s],n+"queueHooks"))&&u.empty&&(e++,u.empty.add(h));return h(),o.promise(t)}});var su=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,kt=new RegExp("^(?:([+-])=|)("+su+")([a-z%]*)$","i"),b=["Top","Right","Bottom","Left"],g=f.documentElement,st=function(n){return i.contains(n.ownerDocument,n)},ve={composed:!0};g.getRootNode&&(st=function(n){return i.contains(n.ownerDocument,n)||n.getRootNode(ve)===n.ownerDocument});dt=function(n,t){return"none"===(n=t||n).style.display||""===n.style.display&&st(n)&&"none"===i.css(n,"display")};ki={};i.fn.extend({show:function(){return ht(this,!0)},hide:function(){return ht(this)},toggle:function(n){return"boolean"==typeof n?n?this.show():this.hide():this.each(function(){dt(this)?i(this).show():i(this).hide()})}});var nt,si,gt=/^(?:checkbox|radio)$/i,cu=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,lu=/^$|^module$|\/(?:java|ecma)script/i;nt=f.createDocumentFragment().appendChild(f.createElement("div"));(si=f.createElement("input")).setAttribute("type","radio");si.setAttribute("checked","checked");si.setAttribute("name","t");nt.appendChild(si);e.checkClone=nt.cloneNode(!0).cloneNode(!0).lastChild.checked;nt.innerHTML="<textarea>x<\/textarea>";e.noCloneChecked=!!nt.cloneNode(!0).lastChild.defaultValue;nt.innerHTML="<option><\/option>";e.option=!!nt.lastChild;h={thead:[1,"<table>","<\/table>"],col:[2,"<table><colgroup>","<\/colgroup><\/table>"],tr:[2,"<table><tbody>","<\/tbody><\/table>"],td:[3,"<table><tbody><tr>","<\/tr><\/tbody><\/table>"],_default:[0,"",""]};h.tbody=h.tfoot=h.colgroup=h.caption=h.thead;h.th=h.td;e.option||(h.optgroup=h.option=[1,"<select multiple='multiple'>","<\/select>"]);au=/<|&#?\w+;/;var ye=/^key/,pe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,yu=/^([^.]*)(?:\.(.+)|)/;i.event={global:{},add:function(n,t,u,f,e){var p,a,k,v,w,h,s,c,o,b,d,y=r.get(n);if(ot(n))for(u.handler&&(u=(p=u).handler,e=p.selector),e&&i.find.matchesSelector(g,e),u.guid||(u.guid=i.guid++),(v=y.events)||(v=y.events=Object.create(null)),(a=y.handle)||(a=y.handle=function(t){if("undefined"!=typeof i&&i.event.triggered!==t.type)return i.event.dispatch.apply(n,arguments)}),w=(t=(t||"").match(l)||[""]).length;w--;)o=d=(k=yu.exec(t[w])||[])[1],b=(k[2]||"").split(".").sort(),o&&(s=i.event.special[o]||{},o=(e?s.delegateType:s.bindType)||o,s=i.event.special[o]||{},h=i.extend({type:o,origType:d,data:f,handler:u,guid:u.guid,selector:e,needsContext:e&&i.expr.match.needsContext.test(e),namespace:b.join(".")},p),(c=v[o])||((c=v[o]=[]).delegateCount=0,s.setup&&!1!==s.setup.call(n,f,b,a)||n.addEventListener&&n.addEventListener(o,a)),s.add&&(s.add.call(n,h),h.handler.guid||(h.handler.guid=u.guid)),e?c.splice(c.delegateCount++,0,h):c.push(h),i.event.global[o]=!0)},remove:function(n,t,u,f,e){var y,k,c,v,p,s,h,a,o,b,d,w=r.hasData(n)&&r.get(n);if(w&&(v=w.events)){for(p=(t=(t||"").match(l)||[""]).length;p--;)if(o=d=(c=yu.exec(t[p])||[])[1],b=(c[2]||"").split(".").sort(),o){for(h=i.event.special[o]||{},a=v[o=(f?h.delegateType:h.bindType)||o]||[],c=c[2]&&new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"),k=y=a.length;y--;)s=a[y],!e&&d!==s.origType||u&&u.guid!==s.guid||c&&!c.test(s.namespace)||f&&f!==s.selector&&("**"!==f||!s.selector)||(a.splice(y,1),s.selector&&a.delegateCount--,h.remove&&h.remove.call(n,s));k&&!a.length&&(h.teardown&&!1!==h.teardown.call(n,b,w.handle)||i.removeEvent(n,o,w.handle),delete v[o])}else for(o in v)i.event.remove(n,o+t[p],u,f,!0);i.isEmptyObject(v)&&r.remove(n,"handle events")}},dispatch:function(n){var u,h,c,e,f,l,s=new Array(arguments.length),t=i.event.fix(n),a=(r.get(this,"events")||Object.create(null))[t.type]||[],o=i.event.special[t.type]||{};for(s[0]=t,u=1;u<arguments.length;u++)s[u]=arguments[u];if(t.delegateTarget=this,!o.preDispatch||!1!==o.preDispatch.call(this,t)){for(l=i.event.handlers.call(this,t,a),u=0;(e=l[u++])&&!t.isPropagationStopped();)for(t.currentTarget=e.elem,h=0;(f=e.handlers[h++])&&!t.isImmediatePropagationStopped();)t.rnamespace&&!1!==f.namespace&&!t.rnamespace.test(f.namespace)||(t.handleObj=f,t.data=f.data,void 0!==(c=((i.event.special[f.origType]||{}).handle||f.handler).apply(e.elem,s))&&!1===(t.result=c)&&(t.preventDefault(),t.stopPropagation()));return o.postDispatch&&o.postDispatch.call(this,t),t.result}},handlers:function(n,t){var f,h,u,e,o,c=[],s=t.delegateCount,r=n.target;if(s&&r.nodeType&&!("click"===n.type&&1<=n.button))for(;r!==this;r=r.parentNode||this)if(1===r.nodeType&&("click"!==n.type||!0!==r.disabled)){for(e=[],o={},f=0;f<s;f++)void 0===o[u=(h=t[f]).selector+" "]&&(o[u]=h.needsContext?-1<i(u,this).index(r):i.find(u,this,null,[r]).length),o[u]&&e.push(h);e.length&&c.push({elem:r,handlers:e})}return r=this,s<t.length&&c.push({elem:r,handlers:t.slice(s)}),c},addProp:function(n,t){Object.defineProperty(i.Event.prototype,n,{enumerable:!0,configurable:!0,get:u(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[n]},set:function(t){Object.defineProperty(this,n,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(n){return n[i.expando]?n:new i.Event(n)},special:{load:{noBubble:!0},click:{setup:function(n){var t=this||n;return gt.test(t.type)&&t.click&&c(t,"input")&&hi(t,"click",ct),!1},trigger:function(n){var t=this||n;return gt.test(t.type)&&t.click&&c(t,"input")&&hi(t,"click"),!0},_default:function(n){var t=n.target;return gt.test(t.type)&&t.click&&c(t,"input")&&r.get(t,"click")||c(t,"a")}},beforeunload:{postDispatch:function(n){void 0!==n.result&&n.originalEvent&&(n.originalEvent.returnValue=n.result)}}}};i.removeEvent=function(n,t,i){n.removeEventListener&&n.removeEventListener(t,i)};i.Event=function(n,t){if(!(this instanceof i.Event))return new i.Event(n,t);n&&n.type?(this.originalEvent=n,this.type=n.type,this.isDefaultPrevented=n.defaultPrevented||void 0===n.defaultPrevented&&!1===n.returnValue?ct:lt,this.target=n.target&&3===n.target.nodeType?n.target.parentNode:n.target,this.currentTarget=n.currentTarget,this.relatedTarget=n.relatedTarget):this.type=n;t&&i.extend(this,t);this.timeStamp=n&&n.timeStamp||Date.now();this[i.expando]=!0};i.Event.prototype={constructor:i.Event,isDefaultPrevented:lt,isPropagationStopped:lt,isImmediatePropagationStopped:lt,isSimulated:!1,preventDefault:function(){var n=this.originalEvent;this.isDefaultPrevented=ct;n&&!this.isSimulated&&n.preventDefault()},stopPropagation:function(){var n=this.originalEvent;this.isPropagationStopped=ct;n&&!this.isSimulated&&n.stopPropagation()},stopImmediatePropagation:function(){var n=this.originalEvent;this.isImmediatePropagationStopped=ct;n&&!this.isSimulated&&n.stopImmediatePropagation();this.stopPropagation()}};i.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(n){var t=n.button;return null==n.which&&ye.test(n.type)?null!=n.charCode?n.charCode:n.keyCode:!n.which&&void 0!==t&&pe.test(n.type)?1&t?1:2&t?3:4&t?2:0:n.which}},i.event.addProp);i.each({focus:"focusin",blur:"focusout"},function(n,t){i.event.special[n]={setup:function(){return hi(this,n,we),!1},trigger:function(){return hi(this,n),!0},delegateType:t}});i.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(n,t){i.event.special[n]={delegateType:t,bindType:t,handle:function(n){var u,r=n.relatedTarget,f=n.handleObj;return r&&(r===this||i.contains(this,r))||(n.type=f.origType,u=f.handler.apply(this,arguments),n.type=t),u}}});i.fn.extend({on:function(n,t,i,r){return gi(this,n,t,i,r)},one:function(n,t,i,r){return gi(this,n,t,i,r,1)},off:function(n,t,r){var u,f;if(n&&n.preventDefault&&n.handleObj)return u=n.handleObj,i(n.delegateTarget).off(u.namespace?u.origType+"."+u.namespace:u.origType,u.selector,u.handler),this;if("object"==typeof n){for(f in n)this.off(f,t,n[f]);return this}return!1!==t&&"function"!=typeof t||(r=t,t=void 0),!1===r&&(r=lt),this.each(function(){i.event.remove(this,n,r,t)})}});var be=/<script|<style|<link/i,ke=/checked\s*(?:[^=]|=\s*.checked.)/i,de=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;i.extend({htmlPrefilter:function(n){return n},clone:function(n,t,r){var u,c,o,f,l,a,v,h=n.cloneNode(!0),y=st(n);if(!(e.noCloneChecked||1!==n.nodeType&&11!==n.nodeType||i.isXMLDoc(n)))for(f=s(h),u=0,c=(o=s(n)).length;u<c;u++)l=o[u],a=f[u],void 0,"input"===(v=a.nodeName.toLowerCase())&&gt.test(l.type)?a.checked=l.checked:"input"!==v&&"textarea"!==v||(a.defaultValue=l.defaultValue);if(t)if(r)for(o=o||s(n),f=f||s(h),u=0,c=o.length;u<c;u++)wu(o[u],f[u]);else wu(n,h);return 0<(f=s(h,"script")).length&&di(f,!y&&s(n,"script")),h},cleanData:function(n){for(var u,t,f,s=i.event.special,e=0;void 0!==(t=n[e]);e++)if(ot(t)){if(u=t[r.expando]){if(u.events)for(f in u.events)s[f]?i.event.remove(t,f):i.removeEvent(t,f,u.handle);t[r.expando]=void 0}t[o.expando]&&(t[o.expando]=void 0)}}});i.fn.extend({detach:function(n){return bu(this,n,!0)},remove:function(n){return bu(this,n)},text:function(n){return w(this,function(n){return void 0===n?i.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=n)})},null,n,arguments.length)},append:function(){return at(this,arguments,function(n){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||pu(this,n).appendChild(n)})},prepend:function(){return at(this,arguments,function(n){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=pu(this,n);t.insertBefore(n,t.firstChild)}})},before:function(){return at(this,arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this)})},after:function(){return at(this,arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling)})},empty:function(){for(var n,t=0;null!=(n=this[t]);t++)1===n.nodeType&&(i.cleanData(s(n,!1)),n.textContent="");return this},clone:function(n,t){return n=null!=n&&n,t=null==t?n:t,this.map(function(){return i.clone(this,n,t)})},html:function(n){return w(this,function(n){var t=this[0]||{},r=0,u=this.length;if(void 0===n&&1===t.nodeType)return t.innerHTML;if("string"==typeof n&&!be.test(n)&&!h[(cu.exec(n)||["",""])[1].toLowerCase()]){n=i.htmlPrefilter(n);try{for(;r<u;r++)1===(t=this[r]||{}).nodeType&&(i.cleanData(s(t,!1)),t.innerHTML=n);t=0}catch(n){}}t&&this.empty().append(n)},null,n,arguments.length)},replaceWith:function(){var n=[];return at(this,arguments,function(t){var r=this.parentNode;i.inArray(this,n)<0&&(i.cleanData(s(this)),r&&r.replaceChild(t,this))},n)}});i.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(n,t){i.fn[n]=function(n){for(var u,f=[],e=i(n),o=e.length-1,r=0;r<=o;r++)u=r===o?this:this.clone(!0),i(e[r])[t](u),yi.apply(f,u.get());return this.pushStack(f)}});var nr=new RegExp("^("+su+")(?!px)[a-z%]+$","i"),ci=function(t){var i=t.ownerDocument.defaultView;return i&&i.opener||(i=n),i.getComputedStyle(t)},ku=function(n,t,i){var u,r,f={};for(r in t)f[r]=n.style[r],n.style[r]=t[r];for(r in u=i.call(n),t)n.style[r]=f[r];return u},to=new RegExp(b.join("|"),"i");!function(){function r(){if(t){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0";t.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%";g.appendChild(s).appendChild(t);var i=n.getComputedStyle(t);h="1%"!==i.top;v=12===u(i.marginLeft);t.style.right="60%";a=36===u(i.right);c=36===u(i.width);t.style.position="absolute";l=12===u(t.offsetWidth/3);g.removeChild(s);t=null}}function u(n){return Math.round(parseFloat(n))}var h,c,l,a,o,v,s=f.createElement("div"),t=f.createElement("div");t.style&&(t.style.backgroundClip="content-box",t.cloneNode(!0).style.backgroundClip="",e.clearCloneStyle="content-box"===t.style.backgroundClip,i.extend(e,{boxSizingReliable:function(){return r(),c},pixelBoxStyles:function(){return r(),a},pixelPosition:function(){return r(),h},reliableMarginLeft:function(){return r(),v},scrollboxSize:function(){return r(),l},reliableTrDimensions:function(){var t,i,r,u;return null==o&&(t=f.createElement("table"),i=f.createElement("tr"),r=f.createElement("div"),t.style.cssText="position:absolute;left:-11111px",i.style.height="1px",r.style.height="9px",g.appendChild(t).appendChild(i).appendChild(r),u=n.getComputedStyle(i),o=3<parseInt(u.height),g.removeChild(t)),o}}))}();var gu=["Webkit","Moz","ms"],nf=f.createElement("div").style,tf={};var io=/^(none|table(?!-c[ea]).+)/,rf=/^--/,ro={position:"absolute",visibility:"hidden",display:"block"},uf={letterSpacing:"0",fontWeight:"400"};i.extend({cssHooks:{opacity:{get:function(n,t){if(t){var i=ni(n,"opacity");return""===i?"1":i}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(n,t,r,u){if(n&&3!==n.nodeType&&8!==n.nodeType&&n.style){var f,h,o,c=y(t),l=rf.test(t),s=n.style;if(l||(t=tr(c)),o=i.cssHooks[t]||i.cssHooks[c],void 0===r)return o&&"get"in o&&void 0!==(f=o.get(n,!1,u))?f:s[t];"string"==(h=typeof r)&&(f=kt.exec(r))&&f[1]&&(r=hu(n,t,f),h="number");null!=r&&r==r&&("number"!==h||l||(r+=f&&f[3]||(i.cssNumber[c]?"":"px")),e.clearCloneStyle||""!==r||0!==t.indexOf("background")||(s[t]="inherit"),o&&"set"in o&&void 0===(r=o.set(n,r,u))||(l?s.setProperty(t,r):s[t]=r))}},css:function(n,t,r,u){var f,e,o,s=y(t);return rf.test(t)||(t=tr(s)),(o=i.cssHooks[t]||i.cssHooks[s])&&"get"in o&&(f=o.get(n,!0,r)),void 0===f&&(f=ni(n,t,u)),"normal"===f&&t in uf&&(f=uf[t]),""===r||r?(e=parseFloat(f),!0===r||isFinite(e)?e||0:f):f}});i.each(["height","width"],function(n,t){i.cssHooks[t]={get:function(n,r,u){if(r)return!io.test(i.css(n,"display"))||n.getClientRects().length&&n.getBoundingClientRect().width?ef(n,t,u):ku(n,ro,function(){return ef(n,t,u)})},set:function(n,r,u){var s,f=ci(n),h=!e.scrollboxSize()&&"absolute"===f.position,c=(h||u)&&"border-box"===i.css(n,"boxSizing",!1,f),o=u?ir(n,t,u,c,f):0;return c&&h&&(o-=Math.ceil(n["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(f[t])-ir(n,t,"border",!1,f)-.5)),o&&(s=kt.exec(r))&&"px"!==(s[3]||"px")&&(n.style[t]=r,r=i.css(n,t)),ff(0,r,o)}}});i.cssHooks.marginLeft=du(e.reliableMarginLeft,function(n,t){if(t)return(parseFloat(ni(n,"marginLeft"))||n.getBoundingClientRect().left-ku(n,{marginLeft:0},function(){return n.getBoundingClientRect().left}))+"px"});i.each({margin:"",padding:"",border:"Width"},function(n,t){i.cssHooks[n+t]={expand:function(i){for(var r=0,f={},u="string"==typeof i?i.split(" "):[i];r<4;r++)f[n+b[r]+t]=u[r]||u[r-2]||u[0];return f}};"margin"!==n&&(i.cssHooks[n+t].set=ff)});i.fn.extend({css:function(n,t){return w(this,function(n,t,r){var f,e,o={},u=0;if(Array.isArray(t)){for(f=ci(n),e=t.length;u<e;u++)o[t[u]]=i.css(n,t[u],!1,f);return o}return void 0!==r?i.style(n,t,r):i.css(n,t)},n,t,1<arguments.length)}});((i.Tween=a).prototype={constructor:a,init:function(n,t,r,u,f,e){this.elem=n;this.prop=r;this.easing=f||i.easing._default;this.options=t;this.start=this.now=this.cur();this.end=u;this.unit=e||(i.cssNumber[r]?"":"px")},cur:function(){var n=a.propHooks[this.prop];return n&&n.get?n.get(this):a.propHooks._default.get(this)},run:function(n){var t,r=a.propHooks[this.prop];return this.pos=this.options.duration?t=i.easing[this.easing](n,this.options.duration*n,0,1,this.options.duration):t=n,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),r&&r.set?r.set(this):a.propHooks._default.set(this),this}}).init.prototype=a.prototype;(a.propHooks={_default:{get:function(n){var t;return 1!==n.elem.nodeType||null!=n.elem[n.prop]&&null==n.elem.style[n.prop]?n.elem[n.prop]:(t=i.css(n.elem,n.prop,""))&&"auto"!==t?t:0},set:function(n){i.fx.step[n.prop]?i.fx.step[n.prop](n):1!==n.elem.nodeType||!i.cssHooks[n.prop]&&null==n.elem.style[tr(n.prop)]?n.elem[n.prop]=n.now:i.style(n.elem,n.prop,n.now+n.unit)}}}).scrollTop=a.propHooks.scrollLeft={set:function(n){n.elem.nodeType&&n.elem.parentNode&&(n.elem[n.prop]=n.now)}};i.easing={linear:function(n){return n},swing:function(n){return.5-Math.cos(n*Math.PI)/2},_default:"swing"};i.fx=a.prototype.init;i.fx.step={};sf=/^(?:toggle|show|hide)$/;hf=/queueHooks$/;i.Animation=i.extend(v,{tweeners:{"*":[function(n,t){var i=this.createTween(n,t);return hu(i.elem,n,kt.exec(t),i),i}]},tweener:function(n,t){u(n)?(t=n,n=["*"]):n=n.match(l);for(var i,r=0,f=n.length;r<f;r++)i=n[r],v.tweeners[i]=v.tweeners[i]||[],v.tweeners[i].unshift(t)},prefilters:[function(n,t,u){var f,y,w,c,b,h,o,l,k="width"in t||"height"in t,v=this,p={},s=n.style,a=n.nodeType&&dt(n),e=r.get(n,"fxshow");for(f in u.queue||(null==(c=i._queueHooks(n,"fx")).unqueued&&(c.unqueued=0,b=c.empty.fire,c.empty.fire=function(){c.unqueued||b()}),c.unqueued++,v.always(function(){v.always(function(){c.unqueued--;i.queue(n,"fx").length||c.empty.fire()})})),t)if(y=t[f],sf.test(y)){if(delete t[f],w=w||"toggle"===y,y===(a?"hide":"show")){if("show"!==y||!e||void 0===e[f])continue;a=!0}p[f]=e&&e[f]||i.style(n,f)}if((h=!i.isEmptyObject(t))||!i.isEmptyObject(p))for(f in k&&1===n.nodeType&&(u.overflow=[s.overflow,s.overflowX,s.overflowY],null==(o=e&&e.display)&&(o=r.get(n,"display")),"none"===(l=i.css(n,"display"))&&(o?l=o:(ht([n],!0),o=n.style.display||o,l=i.css(n,"display"),ht([n]))),("inline"===l||"inline-block"===l&&null!=o)&&"none"===i.css(n,"float")&&(h||(v.done(function(){s.display=o}),null==o&&(l=s.display,o="none"===l?"":l)),s.display="inline-block")),u.overflow&&(s.overflow="hidden",v.always(function(){s.overflow=u.overflow[0];s.overflowX=u.overflow[1];s.overflowY=u.overflow[2]})),h=!1,p)h||(e?"hidden"in e&&(a=e.hidden):e=r.access(n,"fxshow",{display:o}),w&&(e.hidden=!a),a&&ht([n],!0),v.done(function(){for(f in a||ht([n]),r.remove(n,"fxshow"),p)i.style(n,f,p[f])})),h=lf(a?e[f]:0,f,v),f in e||(e[f]=h.start,a&&(h.end=h.start,h.start=0))}],prefilter:function(n,t){t?v.prefilters.unshift(n):v.prefilters.push(n)}});i.speed=function(n,t,r){var f=n&&"object"==typeof n?i.extend({},n):{complete:r||!r&&t||u(n)&&n,duration:n,easing:r&&t||t&&!u(t)&&t};return i.fx.off?f.duration=0:"number"!=typeof f.duration&&(f.duration=f.duration in i.fx.speeds?i.fx.speeds[f.duration]:i.fx.speeds._default),null!=f.queue&&!0!==f.queue||(f.queue="fx"),f.old=f.complete,f.complete=function(){u(f.old)&&f.old.call(this);f.queue&&i.dequeue(this,f.queue)},f};i.fn.extend({fadeTo:function(n,t,i,r){return this.filter(dt).css("opacity",0).show().end().animate({opacity:t},n,i,r)},animate:function(n,t,u,f){var s=i.isEmptyObject(n),o=i.speed(t,u,f),e=function(){var t=v(this,i.extend({},n),o);(s||r.get(this,"finish"))&&t.stop(!0)};return e.finish=e,s||!1===o.queue?this.each(e):this.queue(o.queue,e)},stop:function(n,t,u){var f=function(n){var t=n.stop;delete n.stop;t(u)};return"string"!=typeof n&&(u=t,t=n,n=void 0),t&&this.queue(n||"fx",[]),this.each(function(){var s=!0,t=null!=n&&n+"queueHooks",o=i.timers,e=r.get(this);if(t)e[t]&&e[t].stop&&f(e[t]);else for(t in e)e[t]&&e[t].stop&&hf.test(t)&&f(e[t]);for(t=o.length;t--;)o[t].elem!==this||null!=n&&o[t].queue!==n||(o[t].anim.stop(u),s=!1,o.splice(t,1));!s&&u||i.dequeue(this,n)})},finish:function(n){return!1!==n&&(n=n||"fx"),this.each(function(){var t,e=r.get(this),u=e[n+"queue"],o=e[n+"queueHooks"],f=i.timers,s=u?u.length:0;for(e.finish=!0,i.queue(this,n,[]),o&&o.stop&&o.stop.call(this,!0),t=f.length;t--;)f[t].elem===this&&f[t].queue===n&&(f[t].anim.stop(!0),f.splice(t,1));for(t=0;t<s;t++)u[t]&&u[t].finish&&u[t].finish.call(this);delete e.finish})}});i.each(["toggle","show","hide"],function(n,t){var r=i.fn[t];i.fn[t]=function(n,i,u){return null==n||"boolean"==typeof n?r.apply(this,arguments):this.animate(ai(t,!0),n,i,u)}});i.each({slideDown:ai("show"),slideUp:ai("hide"),slideToggle:ai("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(n,t){i.fn[n]=function(n,i,r){return this.animate(t,n,i,r)}});i.timers=[];i.fx.tick=function(){var r,n=0,t=i.timers;for(vt=Date.now();n<t.length;n++)(r=t[n])()||t[n]!==r||t.splice(n--,1);t.length||i.fx.stop();vt=void 0};i.fx.timer=function(n){i.timers.push(n);i.fx.start()};i.fx.interval=13;i.fx.start=function(){li||(li=!0,rr())};i.fx.stop=function(){li=null};i.fx.speeds={slow:600,fast:200,_default:400};i.fn.delay=function(t,r){return t=i.fx&&i.fx.speeds[t]||t,r=r||"fx",this.queue(r,function(i,r){var u=n.setTimeout(i,t);r.stop=function(){n.clearTimeout(u)}})};yt=f.createElement("input");of=f.createElement("select").appendChild(f.createElement("option"));yt.type="checkbox";e.checkOn=""!==yt.value;e.optSelected=of.selected;(yt=f.createElement("input")).value="t";yt.type="radio";e.radioValue="t"===yt.value;pt=i.expr.attrHandle;i.fn.extend({attr:function(n,t){return w(this,i.attr,n,t,1<arguments.length)},removeAttr:function(n){return this.each(function(){i.removeAttr(this,n)})}});i.extend({attr:function(n,t,r){var f,u,e=n.nodeType;if(3!==e&&8!==e&&2!==e)return"undefined"==typeof n.getAttribute?i.prop(n,t,r):(1===e&&i.isXMLDoc(n)||(u=i.attrHooks[t.toLowerCase()]||(i.expr.match.bool.test(t)?af:void 0)),void 0!==r?null===r?void i.removeAttr(n,t):u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:(n.setAttribute(t,r+""),r):u&&"get"in u&&null!==(f=u.get(n,t))?f:null==(f=i.find.attr(n,t))?void 0:f)},attrHooks:{type:{set:function(n,t){if(!e.radioValue&&"radio"===t&&c(n,"input")){var i=n.value;return n.setAttribute("type",t),i&&(n.value=i),t}}}},removeAttr:function(n,t){var i,u=0,r=t&&t.match(l);if(r&&1===n.nodeType)while(i=r[u++])n.removeAttribute(i)}});af={set:function(n,t,r){return!1===t?i.removeAttr(n,r):n.setAttribute(r,r),r}};i.each(i.expr.match.bool.source.match(/\w+/g),function(n,t){var r=pt[t]||i.find.attr;pt[t]=function(n,t,i){var f,e,u=t.toLowerCase();return i||(e=pt[u],pt[u]=f,f=null!=r(n,t,i)?u:null,pt[u]=e),f}});vf=/^(?:input|select|textarea|button)$/i;yf=/^(?:a|area)$/i;i.fn.extend({prop:function(n,t){return w(this,i.prop,n,t,1<arguments.length)},removeProp:function(n){return this.each(function(){delete this[i.propFix[n]||n]})}});i.extend({prop:function(n,t,r){var f,u,e=n.nodeType;if(3!==e&&8!==e&&2!==e)return 1===e&&i.isXMLDoc(n)||(t=i.propFix[t]||t,u=i.propHooks[t]),void 0!==r?u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:n[t]=r:u&&"get"in u&&null!==(f=u.get(n,t))?f:n[t]},propHooks:{tabIndex:{get:function(n){var t=i.find.attr(n,"tabindex");return t?parseInt(t,10):vf.test(n.nodeName)||yf.test(n.nodeName)&&n.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}});e.optSelected||(i.propHooks.selected={get:function(n){var t=n.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(n){var t=n.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}});i.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){i.propFix[this.toLowerCase()]=this});i.fn.extend({addClass:function(n){var o,t,r,f,e,s,h,c=0;if(u(n))return this.each(function(t){i(this).addClass(n.call(this,t,it(this)))});if((o=ur(n)).length)while(t=this[c++])if(f=it(t),r=1===t.nodeType&&" "+tt(f)+" "){for(s=0;e=o[s++];)r.indexOf(" "+e+" ")<0&&(r+=e+" ");f!==(h=tt(r))&&t.setAttribute("class",h)}return this},removeClass:function(n){var o,r,t,f,e,s,h,c=0;if(u(n))return this.each(function(t){i(this).removeClass(n.call(this,t,it(this)))});if(!arguments.length)return this.attr("class","");if((o=ur(n)).length)while(r=this[c++])if(f=it(r),t=1===r.nodeType&&" "+tt(f)+" "){for(s=0;e=o[s++];)while(-1<t.indexOf(" "+e+" "))t=t.replace(" "+e+" "," ");f!==(h=tt(t))&&r.setAttribute("class",h)}return this},toggleClass:function(n,t){var f=typeof n,e="string"===f||Array.isArray(n);return"boolean"==typeof t&&e?t?this.addClass(n):this.removeClass(n):u(n)?this.each(function(r){i(this).toggleClass(n.call(this,r,it(this),t),t)}):this.each(function(){var t,o,u,s;if(e)for(o=0,u=i(this),s=ur(n);t=s[o++];)u.hasClass(t)?u.removeClass(t):u.addClass(t);else void 0!==n&&"boolean"!==f||((t=it(this))&&r.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===n?"":r.get(this,"__className__")||""))})},hasClass:function(n){for(var t,r=0,i=" "+n+" ";t=this[r++];)if(1===t.nodeType&&-1<(" "+tt(it(t))+" ").indexOf(i))return!0;return!1}});pf=/\r/g;i.fn.extend({val:function(n){var t,r,e,f=this[0];return arguments.length?(e=u(n),this.each(function(r){var u;1===this.nodeType&&(null==(u=e?n.call(this,r,i(this).val()):n)?u="":"number"==typeof u?u+="":Array.isArray(u)&&(u=i.map(u,function(n){return null==n?"":n+""})),(t=i.valHooks[this.type]||i.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,u,"value")||(this.value=u))})):f?(t=i.valHooks[f.type]||i.valHooks[f.nodeName.toLowerCase()])&&"get"in t&&void 0!==(r=t.get(f,"value"))?r:"string"==typeof(r=f.value)?r.replace(pf,""):null==r?"":r:void 0}});i.extend({valHooks:{option:{get:function(n){var t=i.find.attr(n,"value");return null!=t?t:tt(i.text(n))}},select:{get:function(n){for(var e,t,o=n.options,u=n.selectedIndex,f="select-one"===n.type,s=f?null:[],h=f?u+1:o.length,r=u<0?h:f?u:0;r<h;r++)if(((t=o[r]).selected||r===u)&&!t.disabled&&(!t.parentNode.disabled||!c(t.parentNode,"optgroup"))){if(e=i(t).val(),f)return e;s.push(e)}return s},set:function(n,t){for(var r,u,f=n.options,e=i.makeArray(t),o=f.length;o--;)((u=f[o]).selected=-1<i.inArray(i.valHooks.option.get(u),e))&&(r=!0);return r||(n.selectedIndex=-1),e}}}});i.each(["radio","checkbox"],function(){i.valHooks[this]={set:function(n,t){if(Array.isArray(t))return n.checked=-1<i.inArray(i(n).val(),t)}};e.checkOn||(i.valHooks[this].get=function(n){return null===n.getAttribute("value")?"on":n.value})});e.focusin="onfocusin"in n;fr=/^(?:focusinfocus|focusoutblur)$/;er=function(n){n.stopPropagation()};i.extend(i.event,{trigger:function(t,e,o,s){var k,c,l,d,v,y,a,p,w=[o||f],h=ui.call(t,"type")?t.type:t,b=ui.call(t,"namespace")?t.namespace.split("."):[];if(c=p=l=o=o||f,3!==o.nodeType&&8!==o.nodeType&&!fr.test(h+i.event.triggered)&&(-1<h.indexOf(".")&&(h=(b=h.split(".")).shift(),b.sort()),v=h.indexOf(":")<0&&"on"+h,(t=t[i.expando]?t:new i.Event(h,"object"==typeof t&&t)).isTrigger=s?2:3,t.namespace=b.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=o),e=null==e?[t]:i.makeArray(e,[t]),a=i.event.special[h]||{},s||!a.trigger||!1!==a.trigger.apply(o,e))){if(!s&&!a.noBubble&&!rt(o)){for(d=a.delegateType||h,fr.test(d+h)||(c=c.parentNode);c;c=c.parentNode)w.push(c),l=c;l===(o.ownerDocument||f)&&w.push(l.defaultView||l.parentWindow||n)}for(k=0;(c=w[k++])&&!t.isPropagationStopped();)p=c,t.type=1<k?d:a.bindType||h,(y=(r.get(c,"events")||Object.create(null))[t.type]&&r.get(c,"handle"))&&y.apply(c,e),(y=v&&c[v])&&y.apply&&ot(c)&&(t.result=y.apply(c,e),!1===t.result&&t.preventDefault());return t.type=h,s||t.isDefaultPrevented()||a._default&&!1!==a._default.apply(w.pop(),e)||!ot(o)||v&&u(o[h])&&!rt(o)&&((l=o[v])&&(o[v]=null),i.event.triggered=h,t.isPropagationStopped()&&p.addEventListener(h,er),o[h](),t.isPropagationStopped()&&p.removeEventListener(h,er),i.event.triggered=void 0,l&&(o[v]=l)),t.result}},simulate:function(n,t,r){var u=i.extend(new i.Event,r,{type:n,isSimulated:!0});i.event.trigger(u,null,t)}});i.fn.extend({trigger:function(n,t){return this.each(function(){i.event.trigger(n,t,this)})},triggerHandler:function(n,t){var r=this[0];if(r)return i.event.trigger(n,t,r,!0)}});e.focusin||i.each({focus:"focusin",blur:"focusout"},function(n,t){var u=function(n){i.event.simulate(t,n.target,i.event.fix(n))};i.event.special[t]={setup:function(){var i=this.ownerDocument||this.document||this,f=r.access(i,t);f||i.addEventListener(n,u,!0);r.access(i,t,(f||0)+1)},teardown:function(){var i=this.ownerDocument||this.document||this,f=r.access(i,t)-1;f?r.access(i,t,f):(i.removeEventListener(n,u,!0),r.remove(i,t))}}});var ti=n.location,wf={guid:Date.now()},or=/\?/;i.parseXML=function(t){var r;if(!t||"string"!=typeof t)return null;try{r=(new n.DOMParser).parseFromString(t,"text/xml")}catch(t){r=void 0}return r&&!r.getElementsByTagName("parsererror").length||i.error("Invalid XML: "+t),r};var uo=/\[\]$/,bf=/\r?\n/g,fo=/^(?:submit|button|image|reset|file)$/i,eo=/^(?:input|select|textarea|keygen)/i;i.param=function(n,t){var r,f=[],e=function(n,t){var i=u(t)?t():t;f[f.length]=encodeURIComponent(n)+"="+encodeURIComponent(null==i?"":i)};if(null==n)return"";if(Array.isArray(n)||n.jquery&&!i.isPlainObject(n))i.each(n,function(){e(this.name,this.value)});else for(r in n)sr(r,n[r],t,e);return f.join("&")};i.fn.extend({serialize:function(){return i.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var n=i.prop(this,"elements");return n?i.makeArray(n):this}).filter(function(){var n=this.type;return this.name&&!i(this).is(":disabled")&&eo.test(this.nodeName)&&!fo.test(n)&&(this.checked||!gt.test(n))}).map(function(n,t){var r=i(this).val();return null==r?null:Array.isArray(r)?i.map(r,function(n){return{name:t.name,value:n.replace(bf,"\r\n")}}):{name:t.name,value:r.replace(bf,"\r\n")}}).get()}});var oo=/%20/g,so=/#.*$/,ho=/([?&])_=[^&]*/,co=/^(.*?):[ \t]*([^\r\n]*)$/gm,lo=/^(?:GET|HEAD)$/,ao=/^\/\//,kf={},hr={},df="*/".concat("*"),cr=f.createElement("a");return cr.href=ti.href,i.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ti.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(ti.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":df,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":i.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(n,t){return t?lr(lr(n,i.ajaxSettings),t):lr(i.ajaxSettings,n)},ajaxPrefilter:gf(kf),ajaxTransport:gf(hr),ajax:function(t,r){function b(t,r,f,c){var v,rt,b,p,g,l=r;s||(s=!0,d&&n.clearTimeout(d),a=void 0,k=c||"",e.readyState=0<t?4:0,v=200<=t&&t<300||304===t,f&&(p=function(n,t,i){for(var e,u,f,o,s=n.contents,r=n.dataTypes;"*"===r[0];)r.shift(),void 0===e&&(e=n.mimeType||t.getResponseHeader("Content-Type"));if(e)for(u in s)if(s[u]&&s[u].test(e)){r.unshift(u);break}if(r[0]in i)f=r[0];else{for(u in i){if(!r[0]||n.converters[u+" "+r[0]]){f=u;break}o||(o=u)}f=f||o}if(f)return f!==r[0]&&r.unshift(f),i[f]}(u,e,f)),!v&&-1<i.inArray("script",u.dataTypes)&&(u.converters["text script"]=function(){}),p=function(n,t,i,r){var h,u,f,s,e,o={},c=n.dataTypes.slice();if(c[1])for(f in n.converters)o[f.toLowerCase()]=n.converters[f];for(u=c.shift();u;)if(n.responseFields[u]&&(i[n.responseFields[u]]=t),!e&&r&&n.dataFilter&&(t=n.dataFilter(t,n.dataType)),e=u,u=c.shift())if("*"===u)u=e;else if("*"!==e&&e!==u){if(!(f=o[e+" "+u]||o["* "+u]))for(h in o)if((s=h.split(" "))[1]===u&&(f=o[e+" "+s[0]]||o["* "+s[0]])){!0===f?f=o[h]:!0!==o[h]&&(u=s[0],c.unshift(s[1]));break}if(!0!==f)if(f&&n.throws)t=f(t);else try{t=f(t)}catch(n){return{state:"parsererror",error:f?n:"No conversion from "+e+" to "+u}}}return{state:"success",data:t}}(u,p,e,v),v?(u.ifModified&&((g=e.getResponseHeader("Last-Modified"))&&(i.lastModified[o]=g),(g=e.getResponseHeader("etag"))&&(i.etag[o]=g)),204===t||"HEAD"===u.type?l="nocontent":304===t?l="notmodified":(l=p.state,rt=p.data,v=!(b=p.error))):(b=l,!t&&l||(l="error",t<0&&(t=0))),e.status=t,e.statusText=(r||l)+"",v?tt.resolveWith(h,[rt,l,e]):tt.rejectWith(h,[e,l,b]),e.statusCode(w),w=void 0,y&&nt.trigger(v?"ajaxSuccess":"ajaxError",[e,u,v?rt:b]),it.fireWith(h,[e,l]),y&&(nt.trigger("ajaxComplete",[e,u]),--i.active||i.event.trigger("ajaxStop")))}"object"==typeof t&&(r=t,t=void 0);r=r||{};var a,o,k,v,d,c,s,y,g,p,u=i.ajaxSetup({},r),h=u.context||u,nt=u.context&&(h.nodeType||h.jquery)?i(h):i.event,tt=i.Deferred(),it=i.Callbacks("once memory"),w=u.statusCode||{},rt={},ut={},ft="canceled",e={readyState:0,getResponseHeader:function(n){var t;if(s){if(!v)for(v={};t=co.exec(k);)v[t[1].toLowerCase()+" "]=(v[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=v[n.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return s?k:null},setRequestHeader:function(n,t){return null==s&&(n=ut[n.toLowerCase()]=ut[n.toLowerCase()]||n,rt[n]=t),this},overrideMimeType:function(n){return null==s&&(u.mimeType=n),this},statusCode:function(n){var t;if(n)if(s)e.always(n[e.status]);else for(t in n)w[t]=[w[t],n[t]];return this},abort:function(n){var t=n||ft;return a&&a.abort(t),b(0,t),this}};if(tt.promise(e),u.url=((t||u.url||ti.href)+"").replace(ao,ti.protocol+"//"),u.type=r.method||r.type||u.method||u.type,u.dataTypes=(u.dataType||"*").toLowerCase().match(l)||[""],null==u.crossDomain){c=f.createElement("a");try{c.href=u.url;c.href=c.href;u.crossDomain=cr.protocol+"//"+cr.host!=c.protocol+"//"+c.host}catch(t){u.crossDomain=!0}}if(u.data&&u.processData&&"string"!=typeof u.data&&(u.data=i.param(u.data,u.traditional)),ne(kf,u,r,e),s)return e;for(g in(y=i.event&&u.global)&&0==i.active++&&i.event.trigger("ajaxStart"),u.type=u.type.toUpperCase(),u.hasContent=!lo.test(u.type),o=u.url.replace(so,""),u.hasContent?u.data&&u.processData&&0===(u.contentType||"").indexOf("application/x-www-form-urlencoded")&&(u.data=u.data.replace(oo,"+")):(p=u.url.slice(o.length),u.data&&(u.processData||"string"==typeof u.data)&&(o+=(or.test(o)?"&":"?")+u.data,delete u.data),!1===u.cache&&(o=o.replace(ho,"$1"),p=(or.test(o)?"&":"?")+"_="+wf.guid+++p),u.url=o+p),u.ifModified&&(i.lastModified[o]&&e.setRequestHeader("If-Modified-Since",i.lastModified[o]),i.etag[o]&&e.setRequestHeader("If-None-Match",i.etag[o])),(u.data&&u.hasContent&&!1!==u.contentType||r.contentType)&&e.setRequestHeader("Content-Type",u.contentType),e.setRequestHeader("Accept",u.dataTypes[0]&&u.accepts[u.dataTypes[0]]?u.accepts[u.dataTypes[0]]+("*"!==u.dataTypes[0]?", "+df+"; q=0.01":""):u.accepts["*"]),u.headers)e.setRequestHeader(g,u.headers[g]);if(u.beforeSend&&(!1===u.beforeSend.call(h,e,u)||s))return e.abort();if(ft="abort",it.add(u.complete),e.done(u.success),e.fail(u.error),a=ne(hr,u,r,e)){if(e.readyState=1,y&&nt.trigger("ajaxSend",[e,u]),s)return e;u.async&&0<u.timeout&&(d=n.setTimeout(function(){e.abort("timeout")},u.timeout));try{s=!1;a.send(rt,b)}catch(t){if(s)throw t;b(-1,t)}}else b(-1,"No Transport");return e},getJSON:function(n,t,r){return i.get(n,t,r,"json")},getScript:function(n,t){return i.get(n,void 0,t,"script")}}),i.each(["get","post"],function(n,t){i[t]=function(n,r,f,e){return u(r)&&(e=e||f,f=r,r=void 0),i.ajax(i.extend({url:n,type:t,dataType:e,data:r,success:f},i.isPlainObject(n)&&n))}}),i.ajaxPrefilter(function(n){for(var t in n.headers)"content-type"===t.toLowerCase()&&(n.contentType=n.headers[t]||"")}),i._evalUrl=function(n,t,r){return i.ajax({url:n,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(n){i.globalEval(n,t,r)}})},i.fn.extend({wrapAll:function(n){var t;return this[0]&&(u(n)&&(n=n.call(this[0])),t=i(n,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var n=this;n.firstElementChild;)n=n.firstElementChild;return n}).append(this)),this},wrapInner:function(n){return u(n)?this.each(function(t){i(this).wrapInner(n.call(this,t))}):this.each(function(){var t=i(this),r=t.contents();r.length?r.wrapAll(n):t.append(n)})},wrap:function(n){var t=u(n);return this.each(function(r){i(this).wrapAll(t?n.call(this,r):n)})},unwrap:function(n){return this.parent(n).not("body").each(function(){i(this).replaceWith(this.childNodes)}),this}}),i.expr.pseudos.hidden=function(n){return!i.expr.pseudos.visible(n)},i.expr.pseudos.visible=function(n){return!!(n.offsetWidth||n.offsetHeight||n.getClientRects().length)},i.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(t){}},te={0:200,1223:204},wt=i.ajaxSettings.xhr(),e.cors=!!wt&&"withCredentials"in wt,e.ajax=wt=!!wt,i.ajaxTransport(function(t){var i,r;if(e.cors||wt&&!t.crossDomain)return{send:function(u,f){var o,e=t.xhr();if(e.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)e[o]=t.xhrFields[o];for(o in t.mimeType&&e.overrideMimeType&&e.overrideMimeType(t.mimeType),t.crossDomain||u["X-Requested-With"]||(u["X-Requested-With"]="XMLHttpRequest"),u)e.setRequestHeader(o,u[o]);i=function(n){return function(){i&&(i=r=e.onload=e.onerror=e.onabort=e.ontimeout=e.onreadystatechange=null,"abort"===n?e.abort():"error"===n?"number"!=typeof e.status?f(0,"error"):f(e.status,e.statusText):f(te[e.status]||e.status,e.statusText,"text"!==(e.responseType||"text")||"string"!=typeof e.responseText?{binary:e.response}:{text:e.responseText},e.getAllResponseHeaders()))}};e.onload=i();r=e.onerror=e.ontimeout=i("error");void 0!==e.onabort?e.onabort=r:e.onreadystatechange=function(){4===e.readyState&&n.setTimeout(function(){i&&r()})};i=i("abort");try{e.send(t.hasContent&&t.data||null)}catch(u){if(i)throw u;}},abort:function(){i&&i()}}}),i.ajaxPrefilter(function(n){n.crossDomain&&(n.contents.script=!1)}),i.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(n){return i.globalEval(n),n}}}),i.ajaxPrefilter("script",function(n){void 0===n.cache&&(n.cache=!1);n.crossDomain&&(n.type="GET")}),i.ajaxTransport("script",function(n){var r,t;if(n.crossDomain||n.scriptAttrs)return{send:function(u,e){r=i("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",t=function(n){r.remove();t=null;n&&e("error"===n.type?404:200,n.type)});f.head.appendChild(r[0])},abort:function(){t&&t()}}}),ar=[],vi=/(=)\?(?=&|$)|\?\?/,i.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var n=ar.pop()||i.expando+"_"+wf.guid++;return this[n]=!0,n}}),i.ajaxPrefilter("json jsonp",function(t,r,f){var e,o,s,h=!1!==t.jsonp&&(vi.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&vi.test(t.data)&&"data");if(h||"jsonp"===t.dataTypes[0])return e=t.jsonpCallback=u(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,h?t[h]=t[h].replace(vi,"$1"+e):!1!==t.jsonp&&(t.url+=(or.test(t.url)?"&":"?")+t.jsonp+"="+e),t.converters["script json"]=function(){return s||i.error(e+" was not called"),s[0]},t.dataTypes[0]="json",o=n[e],n[e]=function(){s=arguments},f.always(function(){void 0===o?i(n).removeProp(e):n[e]=o;t[e]&&(t.jsonpCallback=r.jsonpCallback,ar.push(e));s&&u(o)&&o(s[0]);s=o=void 0}),"script"}),e.createHTMLDocument=((ie=f.implementation.createHTMLDocument("").body).innerHTML="<form><\/form><form><\/form>",2===ie.childNodes.length),i.parseHTML=function(n,t,r){return"string"!=typeof n?[]:("boolean"==typeof t&&(r=t,t=!1),t||(e.createHTMLDocument?((s=(t=f.implementation.createHTMLDocument("")).createElement("base")).href=f.location.href,t.head.appendChild(s)):t=f),u=!r&&[],(o=wi.exec(n))?[t.createElement(o[1])]:(o=vu([n],t,u),u&&u.length&&i(u).remove(),i.merge([],o.childNodes)));var s,o,u},i.fn.load=function(n,t,r){var f,s,h,e=this,o=n.indexOf(" ");return-1<o&&(f=tt(n.slice(o)),n=n.slice(0,o)),u(t)?(r=t,t=void 0):t&&"object"==typeof t&&(s="POST"),0<e.length&&i.ajax({url:n,type:s||"GET",dataType:"html",data:t}).done(function(n){h=arguments;e.html(f?i("<div>").append(i.parseHTML(n)).find(f):n)}).always(r&&function(n,t){e.each(function(){r.apply(this,h||[n.responseText,t,n])})}),this},i.expr.pseudos.animated=function(n){return i.grep(i.timers,function(t){return n===t.elem}).length},i.offset={setOffset:function(n,t,r){var v,o,s,h,e,c,l=i.css(n,"position"),a=i(n),f={};"static"===l&&(n.style.position="relative");e=a.offset();s=i.css(n,"top");c=i.css(n,"left");("absolute"===l||"fixed"===l)&&-1<(s+c).indexOf("auto")?(h=(v=a.position()).top,o=v.left):(h=parseFloat(s)||0,o=parseFloat(c)||0);u(t)&&(t=t.call(n,r,i.extend({},e)));null!=t.top&&(f.top=t.top-e.top+h);null!=t.left&&(f.left=t.left-e.left+o);"using"in t?t.using.call(n,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),a.css(f))}},i.fn.extend({offset:function(n){if(arguments.length)return void 0===n?this:this.each(function(t){i.offset.setOffset(this,n,t)});var r,u,t=this[0];if(t)return t.getClientRects().length?(r=t.getBoundingClientRect(),u=t.ownerDocument.defaultView,{top:r.top+u.pageYOffset,left:r.left+u.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var n,r,u,t=this[0],f={top:0,left:0};if("fixed"===i.css(t,"position"))r=t.getBoundingClientRect();else{for(r=this.offset(),u=t.ownerDocument,n=t.offsetParent||u.documentElement;n&&(n===u.body||n===u.documentElement)&&"static"===i.css(n,"position");)n=n.parentNode;n&&n!==t&&1===n.nodeType&&((f=i(n).offset()).top+=i.css(n,"borderTopWidth",!0),f.left+=i.css(n,"borderLeftWidth",!0))}return{top:r.top-f.top-i.css(t,"marginTop",!0),left:r.left-f.left-i.css(t,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var n=this.offsetParent;n&&"static"===i.css(n,"position");)n=n.offsetParent;return n||g})}}),i.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(n,t){var r="pageYOffset"===t;i.fn[n]=function(i){return w(this,function(n,i,u){var f;if(rt(n)?f=n:9===n.nodeType&&(f=n.defaultView),void 0===u)return f?f[t]:n[i];f?f.scrollTo(r?f.pageXOffset:u,r?u:f.pageYOffset):n[i]=u},n,i,arguments.length)}}),i.each(["top","left"],function(n,t){i.cssHooks[t]=du(e.pixelPosition,function(n,r){if(r)return r=ni(n,t),nr.test(r)?i(n).position()[t]+"px":r})}),i.each({Height:"height",Width:"width"},function(n,t){i.each({padding:"inner"+n,content:t,"":"outer"+n},function(r,u){i.fn[u]=function(f,e){var o=arguments.length&&(r||"boolean"!=typeof f),s=r||(!0===f||!0===e?"margin":"border");return w(this,function(t,r,f){var e;return rt(t)?0===u.indexOf("outer")?t["inner"+n]:t.document.documentElement["client"+n]:9===t.nodeType?(e=t.documentElement,Math.max(t.body["scroll"+n],e["scroll"+n],t.body["offset"+n],e["offset"+n],e["client"+n])):void 0===f?i.css(t,r,s):i.style(t,r,f,s)},t,o?f:void 0,o)}})}),i.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(n,t){i.fn[t]=function(n){return this.on(t,n)}}),i.fn.extend({bind:function(n,t,i){return this.on(n,null,t,i)},unbind:function(n,t){return this.off(n,null,t)},delegate:function(n,t,i,r){return this.on(t,n,i,r)},undelegate:function(n,t,i){return 1===arguments.length?this.off(n,"**"):this.off(t,n||"**",i)},hover:function(n,t){return this.mouseenter(n).mouseleave(t||n)}}),i.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(n,t){i.fn[t]=function(n,i){return 0<arguments.length?this.on(t,null,n,i):this.trigger(t)}}),re=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,i.proxy=function(n,t){var r,f,e;if("string"==typeof t&&(r=n[t],t=n,n=r),u(n))return f=k.call(arguments,2),(e=function(){return n.apply(t||this,f.concat(k.call(arguments)))}).guid=n.guid=n.guid||i.guid++,e},i.holdReady=function(n){n?i.readyWait++:i.ready(!0)},i.isArray=Array.isArray,i.parseJSON=JSON.parse,i.nodeName=c,i.isFunction=u,i.isWindow=rt,i.camelCase=y,i.type=ut,i.now=Date.now,i.isNumeric=function(n){var t=i.type(n);return("number"===t||"string"===t)&&!isNaN(n-parseFloat(n))},i.trim=function(n){return null==n?"":(n+"").replace(re,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return i}),ue=n.jQuery,fe=n.$,i.noConflict=function(t){return n.$===i&&(n.$=fe),t&&n.jQuery===i&&(n.jQuery=ue),i},"undefined"==typeof t&&(n.jQuery=n.$=i),i}),!function(n){"function"==typeof define&&define.amd?define(["jquery"],n):"object"==typeof module&&module.exports?module.exports=n(require("jquery")):n(jQuery)}(function(n){n.extend(n.fn,{validate:function(t){if(!this.length)return void(t&&t.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing."));var i=n.data(this[0],"validator");return i?i:(this.attr("novalidate","novalidate"),i=new n.validator(t,this[0]),n.data(this[0],"validator",i),i.settings.onsubmit&&(this.on("click.validate",":submit",function(t){i.settings.submitHandler&&(i.submitButton=t.target);n(this).hasClass("cancel")&&(i.cancelSubmit=!0);void 0!==n(this).attr("formnovalidate")&&(i.cancelSubmit=!0)}),this.on("submit.validate",function(t){function r(){var u,r;return i.settings.submitHandler?(i.submitButton&&(u=n("<input type='hidden'/>").attr("name",i.submitButton.name).val(n(i.submitButton).val()).appendTo(i.currentForm)),r=i.settings.submitHandler.call(i,i.currentForm,t),i.submitButton&&u.remove(),void 0!==r?r:!1):!0}return i.settings.debug&&t.preventDefault(),i.cancelSubmit?(i.cancelSubmit=!1,r()):i.form()?i.pendingRequest?(i.formSubmitted=!0,!1):r():(i.focusInvalid(),!1)})),i)},valid:function(){var t,i,r;return n(this[0]).is("form")?t=this.validate().form():(r=[],t=!0,i=n(this[0].form).validate(),this.each(function(){t=i.element(this)&&t;t||(r=r.concat(i.errorList))}),i.errorList=r),t},rules:function(t,i){if(this.length){var e,s,f,u,o,h,r=this[0];if(t)switch(e=n.data(r.form,"validator").settings,s=e.rules,f=n.validator.staticRules(r),t){case"add":n.extend(f,n.validator.normalizeRule(i));delete f.messages;s[r.name]=f;i.messages&&(e.messages[r.name]=n.extend(e.messages[r.name],i.messages));break;case"remove":return i?(h={},n.each(i.split(/\s/),function(t,i){h[i]=f[i];delete f[i];"required"===i&&n(r).removeAttr("aria-required")}),h):(delete s[r.name],f)}return u=n.validator.normalizeRules(n.extend({},n.validator.classRules(r),n.validator.attributeRules(r),n.validator.dataRules(r),n.validator.staticRules(r)),r),u.required&&(o=u.required,delete u.required,u=n.extend({required:o},u),n(r).attr("aria-required","true")),u.remote&&(o=u.remote,delete u.remote,u=n.extend(u,{remote:o})),u}}});n.extend(n.expr[":"],{blank:function(t){return!n.trim(""+n(t).val())},filled:function(t){var i=n(t).val();return null!==i&&!!n.trim(""+i)},unchecked:function(t){return!n(t).prop("checked")}});n.validator=function(t,i){this.settings=n.extend(!0,{},n.validator.defaults,t);this.currentForm=i;this.init()};n.validator.format=function(t,i){return 1===arguments.length?function(){var i=n.makeArray(arguments);return i.unshift(t),n.validator.format.apply(this,i)}:void 0===i?t:(arguments.length>2&&i.constructor!==Array&&(i=n.makeArray(arguments).slice(1)),i.constructor!==Array&&(i=[i]),n.each(i,function(n,i){t=t.replace(new RegExp("\\{"+n+"\\}","g"),function(){return i})}),t)};n.extend(n.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error alert alert-danger",pendingClass:"pending",validClass:"valid",errorElement:"label",focusCleanup:!1,focusInvalid:!0,errorContainer:n([]),errorLabelContainer:n([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(n){this.lastActive=n;this.settings.focusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,n,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(n)))},onfocusout:function(n){!this.checkable(n)&&(n.name in this.submitted||!this.optional(n))&&this.element(n)},onkeyup:function(t,i){9===i.which&&""===this.elementValue(t)||-1!==n.inArray(i.keyCode,[16,17,18,20,35,36,37,38,39,40,45,144,225])||(t.name in this.submitted||t.name in this.invalid)&&this.element(t)},onclick:function(n){n.name in this.submitted?this.element(n):n.parentNode.name in this.submitted&&this.element(n.parentNode)},highlight:function(t,i,r){"radio"===t.type?this.findByName(t.name).addClass(i).removeClass(r):n(t).addClass(i).removeClass(r)},unhighlight:function(t,i,r){"radio"===t.type?this.findByName(t.name).removeClass(i).addClass(r):n(t).removeClass(i).addClass(r)}},setDefaults:function(t){n.extend(n.validator.defaults,t)},messages:{required:"Ovo polje je obavezno.",remote:"Please fix this field.",email:"Unesite ispravnu email adresu.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date ( ISO ).",number:"Please enter a valid number.",digits:"Unesite samo brojeve.",equalTo:"Please enter the same value again.",maxlength:n.validator.format("Please enter no more than {0} characters."),minlength:n.validator.format("Please enter at least {0} characters."),rangelength:n.validator.format("Please enter a value between {0} and {1} characters long."),range:n.validator.format("Please enter a value between {0} and {1}."),max:n.validator.format("Please enter a value less than or equal to {0}."),min:n.validator.format("Please enter a value greater than or equal to {0}."),step:n.validator.format("Please enter a multiple of {0}.")},autoCreateRanges:!1,prototype:{init:function(){function i(t){var r=n.data(this.form,"validator"),u="on"+t.type.replace(/^validate/,""),i=r.settings;i[u]&&!n(this).is(i.ignore)&&i[u].call(r,this,t)}this.labelContainer=n(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||n(this.currentForm);this.containers=n(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var t,r=this.groups={};n.each(this.settings.groups,function(t,i){"string"==typeof i&&(i=i.split(/\s/));n.each(i,function(n,i){r[i]=t})});t=this.settings.rules;n.each(t,function(i,r){t[i]=n.validator.normalizeRule(r)});n(this.currentForm).on("focusin.validate focusout.validate keyup.validate",":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], [type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox'], [contenteditable]",i).on("click.validate","select, option, [type='radio'], [type='checkbox']",i);this.settings.invalidHandler&&n(this.currentForm).on("invalid-form.validate",this.settings.invalidHandler);n(this.currentForm).find("[required], [data-rule-required], .required").attr("aria-required","true")},form:function(){return this.checkForm(),n.extend(this.submitted,this.errorMap),this.invalid=n.extend({},this.errorMap),this.valid()||n(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var n=0,t=this.currentElements=this.elements();t[n];n++)this.check(t[n]);return this.valid()},element:function(t){var e,o,i=this.clean(t),r=this.validationTargetFor(i),u=this,f=!0;return void 0===r?delete this.invalid[i.name]:(this.prepareElement(r),this.currentElements=n(r),o=this.groups[r.name],o&&n.each(this.groups,function(n,t){t===o&&n!==r.name&&(i=u.validationTargetFor(u.clean(u.findByName(n))),i&&i.name in u.invalid&&(u.currentElements.push(i),f=f&&u.check(i)))}),e=this.check(r)!==!1,f=f&&e,this.invalid[r.name]=e?!1:!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),n(t).attr("aria-invalid",!e)),f},showErrors:function(t){if(t){var i=this;n.extend(this.errorMap,t);this.errorList=n.map(this.errorMap,function(n,t){return{message:n,element:i.findByName(t)[0]}});this.successList=n.grep(this.successList,function(n){return!(n.name in t)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){n.fn.resetForm&&n(this.currentForm).resetForm();this.invalid={};this.submitted={};this.prepareForm();this.hideErrors();var t=this.elements().removeData("previousValue").removeAttr("aria-invalid");this.resetElements(t)},resetElements:function(n){var t;if(this.settings.unhighlight)for(t=0;n[t];t++)this.settings.unhighlight.call(this,n[t],this.settings.errorClass,""),this.findByName(n[t].name).removeClass(this.settings.validClass);else n.removeClass(this.settings.errorClass).removeClass(this.settings.validClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(n){var t,i=0;for(t in n)n[t]&&i++;return i},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(n){n.not(this.containers).text("");this.addWrapper(n).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{n(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(t){}},findLastActive:function(){var t=this.lastActive;return t&&1===n.grep(this.errorList,function(n){return n.element.name===t.name}).length&&t},elements:function(){var t=this,i={};return n(this.currentForm).find("input, select, textarea, [contenteditable]").not(":submit, :reset, :image, :disabled").not(this.settings.ignore).filter(function(){var r=this.name||n(this).attr("name");return!r&&t.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.hasAttribute("contenteditable")&&(this.form=n(this).closest("form")[0]),r in i||!t.objectLength(n(this).rules())?!1:(i[r]=!0,!0)})},clean:function(t){return n(t)[0]},errors:function(){var t=this.settings.errorClass.split(" ").join(".");return n(this.settings.errorElement+"."+t,this.errorContext)},resetInternals:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=n([]);this.toHide=n([])},reset:function(){this.resetInternals();this.currentElements=n([])},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers)},prepareElement:function(n){this.reset();this.toHide=this.errorsFor(n)},elementValue:function(t){var i,r,f=n(t),u=t.type;return"radio"===u||"checkbox"===u?this.findByName(t.name).filter(":checked").val():"number"===u&&"undefined"!=typeof t.validity?t.validity.badInput?"NaN":f.val():(i=t.hasAttribute("contenteditable")?f.text():f.val(),"file"===u?"C:\\fakepath\\"===i.substr(0,12)?i.substr(12):(r=i.lastIndexOf("/"),r>=0?i.substr(r+1):(r=i.lastIndexOf("\\"),r>=0?i.substr(r+1):i)):"string"==typeof i?i.replace(/\r/g,""):i)},check:function(t){t=this.validationTargetFor(this.clean(t));var u,f,r,i=n(t).rules(),h=n.map(i,function(n,t){return t}).length,s=!1,e=this.elementValue(t);if("function"==typeof i.normalizer){if(e=i.normalizer.call(t,e),"string"!=typeof e)throw new TypeError("The normalizer should return a string value.");delete i.normalizer}for(f in i){r={method:f,parameters:i[f]};try{if(u=n.validator.methods[f].call(this,e,t,r.parameters),"dependency-mismatch"===u&&1===h){s=!0;continue}if(s=!1,"pending"===u)return void(this.toHide=this.toHide.not(this.errorsFor(t)));if(!u)return this.formatAndAdd(t,r),!1}catch(o){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+t.id+", check the '"+r.method+"' method.",o),o instanceof TypeError&&(o.message+=".  Exception occurred when checking element "+t.id+", check the '"+r.method+"' method."),o;}}if(!s)return this.objectLength(i)&&this.successList.push(t),!0},customDataMessage:function(t,i){return n(t).data("msg"+i.charAt(0).toUpperCase()+i.substring(1).toLowerCase())||n(t).data("msg")},customMessage:function(n,t){var i=this.settings.messages[n];return i&&(i.constructor===String?i:i[t])},findDefined:function(){for(var n=0;n<arguments.length;n++)if(void 0!==arguments[n])return arguments[n]},defaultMessage:function(t,i){var r=this.findDefined(this.customMessage(t.name,i.method),this.customDataMessage(t,i.method),!this.settings.ignoreTitle&&t.title||void 0,n.validator.messages[i.method],"<strong>Warning: No message defined for "+t.name+"<\/strong>"),u=/\$?\{(\d+)\}/g;return"function"==typeof r?r=r.call(this,i.parameters,t):u.test(r)&&(r=n.validator.format(r.replace(u,"{$1}"),i.parameters)),r},formatAndAdd:function(n,t){var i=this.defaultMessage(n,t);this.errorList.push({message:i,element:n,method:t.method});this.errorMap[n.name]=i;this.submitted[n.name]=i},addWrapper:function(n){return this.settings.wrapper&&(n=n.add(n.parent(this.settings.wrapper))),n},defaultShowErrors:function(){for(var i,t,n=0;this.errorList[n];n++)t=this.errorList[n],this.settings.highlight&&this.settings.highlight.call(this,t.element,this.settings.errorClass,this.settings.validClass),this.showLabel(t.element,t.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(n=0;this.successList[n];n++)this.showLabel(this.successList[n]);if(this.settings.unhighlight)for(n=0,i=this.validElements();i[n];n++)this.settings.unhighlight.call(this,i[n],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return n(this.errorList).map(function(){return this.element})},showLabel:function(t,i){var u,s,e,o,r=this.errorsFor(t),h=this.idOrName(t),f=n(t).attr("aria-describedby");r.length?(r.removeClass(this.settings.validClass).addClass(this.settings.errorClass),r.html(i)):(r=n("<"+this.settings.errorElement+">").attr("id",h+"-error").addClass(this.settings.errorClass).html(i||""),u=r,this.settings.wrapper&&(u=r.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(u):this.settings.errorPlacement?this.settings.errorPlacement(u,n(t)):u.insertAfter(t),r.is("label")?r.attr("for",h):0===r.parents("label[for='"+this.escapeCssMeta(h)+"']").length&&(e=r.attr("id"),f?f.match(new RegExp("\\b"+this.escapeCssMeta(e)+"\\b"))||(f+=" "+e):f=e,n(t).attr("aria-describedby",f),s=this.groups[t.name],s&&(o=this,n.each(o.groups,function(t,i){i===s&&n("[name='"+o.escapeCssMeta(t)+"']",o.currentForm).attr("aria-describedby",r.attr("id"))}))));!i&&this.settings.success&&(r.text(""),"string"==typeof this.settings.success?r.addClass(this.settings.success):this.settings.success(r,t));this.toShow=this.toShow.add(r)},errorsFor:function(t){var r=this.escapeCssMeta(this.idOrName(t)),u=n(t).attr("aria-describedby"),i="label[for='"+r+"'], label[for='"+r+"'] *";return u&&(i=i+", #"+this.escapeCssMeta(u).replace(/\s+/g,", #")),this.errors().filter(i)},escapeCssMeta:function(n){return n.replace(/([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g,"\\$1")},idOrName:function(n){return this.groups[n.name]||(this.checkable(n)?n.name:n.id||n.name)},validationTargetFor:function(t){return this.checkable(t)&&(t=this.findByName(t.name)),n(t).not(this.settings.ignore)[0]},checkable:function(n){return/radio|checkbox/i.test(n.type)},findByName:function(t){return n(this.currentForm).find("[name='"+this.escapeCssMeta(t)+"']")},getLength:function(t,i){switch(i.nodeName.toLowerCase()){case"select":return n("option:selected",i).length;case"input":if(this.checkable(i))return this.findByName(i.name).filter(":checked").length}return t.length},depend:function(n,t){return this.dependTypes[typeof n]?this.dependTypes[typeof n](n,t):!0},dependTypes:{boolean:function(n){return n},string:function(t,i){return!!n(t,i.form).length},"function":function(n,t){return n(t)}},optional:function(t){var i=this.elementValue(t);return!n.validator.methods.required.call(this,i,t)&&"dependency-mismatch"},startRequest:function(t){this.pending[t.name]||(this.pendingRequest++,n(t).addClass(this.settings.pendingClass),this.pending[t.name]=!0)},stopRequest:function(t,i){this.pendingRequest--;this.pendingRequest<0&&(this.pendingRequest=0);delete this.pending[t.name];n(t).removeClass(this.settings.pendingClass);i&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(n(this.currentForm).submit(),this.formSubmitted=!1):!i&&0===this.pendingRequest&&this.formSubmitted&&(n(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(t,i){return n.data(t,"previousValue")||n.data(t,"previousValue",{old:null,valid:!0,message:this.defaultMessage(t,{method:i})})},destroy:function(){this.resetForm();n(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("validate-equalTo-blur")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(t,i){t.constructor===String?this.classRuleSettings[t]=i:n.extend(this.classRuleSettings,t)},classRules:function(t){var i={},r=n(t).attr("class");return r&&n.each(r.split(" "),function(){this in n.validator.classRuleSettings&&n.extend(i,n.validator.classRuleSettings[this])}),i},normalizeAttributeRule:function(n,t,i,r){/min|max|step/.test(i)&&(null===t||/number|range|text/.test(t))&&(r=Number(r),isNaN(r)&&(r=void 0));r||0===r?n[i]=r:t===i&&"range"!==t&&(n[i]=!0)},attributeRules:function(t){var r,i,u={},f=n(t),e=t.getAttribute("type");for(r in n.validator.methods)"required"===r?(i=t.getAttribute(r),""===i&&(i=!0),i=!!i):i=f.attr(r),this.normalizeAttributeRule(u,e,r,i);return u.maxlength&&/-1|2147483647|524288/.test(u.maxlength)&&delete u.maxlength,u},dataRules:function(t){var i,r,u={},f=n(t),e=t.getAttribute("type");for(i in n.validator.methods)r=f.data("rule"+i.charAt(0).toUpperCase()+i.substring(1).toLowerCase()),this.normalizeAttributeRule(u,e,i,r);return u},staticRules:function(t){var i={},r=n.data(t.form,"validator");return r.settings.rules&&(i=n.validator.normalizeRule(r.settings.rules[t.name])||{}),i},normalizeRules:function(t,i){return n.each(t,function(r,u){if(u===!1)return void delete t[r];if(u.param||u.depends){var f=!0;switch(typeof u.depends){case"string":f=!!n(u.depends,i.form).length;break;case"function":f=u.depends.call(i,i)}f?t[r]=void 0!==u.param?u.param:!0:(n.data(i.form,"validator").resetElements(n(i)),delete t[r])}}),n.each(t,function(r,u){t[r]=n.isFunction(u)&&"normalizer"!==r?u(i):u}),n.each(["minlength","maxlength"],function(){t[this]&&(t[this]=Number(t[this]))}),n.each(["rangelength","range"],function(){var i;t[this]&&(n.isArray(t[this])?t[this]=[Number(t[this][0]),Number(t[this][1])]:"string"==typeof t[this]&&(i=t[this].replace(/[\[\]]/g,"").split(/[\s,]+/),t[this]=[Number(i[0]),Number(i[1])]))}),n.validator.autoCreateRanges&&(null!=t.min&&null!=t.max&&(t.range=[t.min,t.max],delete t.min,delete t.max),null!=t.minlength&&null!=t.maxlength&&(t.rangelength=[t.minlength,t.maxlength],delete t.minlength,delete t.maxlength)),t},normalizeRule:function(t){if("string"==typeof t){var i={};n.each(t.split(/\s/),function(){i[this]=!0});t=i}return t},addMethod:function(t,i,r){n.validator.methods[t]=i;n.validator.messages[t]=void 0!==r?r:n.validator.messages[t];i.length<3&&n.validator.addClassRules(t,n.validator.normalizeRule(t))},methods:{required:function(t,i,r){if(!this.depend(r,i))return"dependency-mismatch";if("select"===i.nodeName.toLowerCase()){var u=n(i).val();return u&&u.length>0}return this.checkable(i)?this.getLength(t,i)>0:t.length>0},email:function(n,t){return this.optional(t)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(n)},url:function(n,t){return this.optional(t)||/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})).?)(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(n)},date:function(n,t){return this.optional(t)||!/Invalid|NaN/.test(new Date(n).toString())},dateISO:function(n,t){return this.optional(t)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(n)},number:function(n,t){return this.optional(t)||/^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(n)},digits:function(n,t){return this.optional(t)||/^\d+$/.test(n)},minlength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(t,i);return this.optional(i)||u>=r},maxlength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(t,i);return this.optional(i)||r>=u},rangelength:function(t,i,r){var u=n.isArray(t)?t.length:this.getLength(t,i);return this.optional(i)||u>=r[0]&&u<=r[1]},min:function(n,t,i){return this.optional(t)||n>=i},max:function(n,t,i){return this.optional(t)||i>=n},range:function(n,t,i){return this.optional(t)||n>=i[0]&&n<=i[1]},step:function(t,i,r){var u=n(i).attr("type"),f="Step attribute on input type "+u+" is not supported.",e=new RegExp("\\b"+u+"\\b"),o=u&&!e.test("text,number,range");if(o)throw new Error(f);return this.optional(i)||t%r==0},equalTo:function(t,i,r){var u=n(r);return this.settings.onfocusout&&u.not(".validate-equalTo-blur").length&&u.addClass("validate-equalTo-blur").on("blur.validate-equalTo",function(){n(i).valid()}),t===u.val()},remote:function(t,i,r,u){if(this.optional(i))return"dependency-mismatch";u="string"==typeof u&&u||"remote";var f,o,s,e=this.previousValue(i,u);return this.settings.messages[i.name]||(this.settings.messages[i.name]={}),e.originalMessage=e.originalMessage||this.settings.messages[i.name][u],this.settings.messages[i.name][u]=e.message,r="string"==typeof r&&{url:r}||r,s=n.param(n.extend({data:t},r.data)),e.old===s?e.valid:(e.old=s,f=this,this.startRequest(i),o={},o[i.name]=t,n.ajax(n.extend(!0,{mode:"abort",port:"validate"+i.name,dataType:"json",data:o,context:f.currentForm,success:function(n){var r,s,h,o=n===!0||"true"===n;f.settings.messages[i.name][u]=e.originalMessage;o?(h=f.formSubmitted,f.resetInternals(),f.toHide=f.errorsFor(i),f.formSubmitted=h,f.successList.push(i),f.invalid[i.name]=!1,f.showErrors()):(r={},s=n||f.defaultMessage(i,{method:u,parameters:t}),r[i.name]=e.message=s,f.invalid[i.name]=!0,f.showErrors(r));e.valid=o;f.stopRequest(i,o)}},r)),"pending")}}});var i,t={};n.ajaxPrefilter?n.ajaxPrefilter(function(n,i,r){var u=n.port;"abort"===n.mode&&(t[u]&&t[u].abort(),t[u]=r)}):(i=n.ajax,n.ajax=function(r){var f=("mode"in r?r:n.ajaxSettings).mode,u=("port"in r?r:n.ajaxSettings).port;return"abort"===f?(t[u]&&t[u].abort(),t[u]=i.apply(this,arguments),t[u]):i.apply(this,arguments)})}),window.matchMedia||(window.matchMedia=function(){"use strict";var t=window.styleMedia||window.media;if(!t){var n=document.createElement("style"),i=document.getElementsByTagName("script")[0],r=null;n.type="text/css";n.id="matchmediajs-test";i.parentNode.insertBefore(n,i);r="getComputedStyle"in window&&window.getComputedStyle(n,null)||n.currentStyle;t={matchMedium:function(t){var i="@media "+t+"{ #matchmediajs-test { width: 1px; } }";return n.styleSheet?n.styleSheet.cssText=i:n.textContent=i,"1px"===r.width}}}return function(n){return{matches:t.matchMedium(n||"all"),media:n||"all"}}}()),!function(){if(window.matchMedia&&window.matchMedia("all").addListener)return!1;var t=window.matchMedia,u=t("only all").matches,i=!1,r=0,n=[],f=function(){clearTimeout(r);r=setTimeout(function(){for(var u,s,i=0,f=n.length;f>i;i++){var r=n[i].mql,e=n[i].listeners||[],o=t(r.media).matches;if(o!==r.matches)for(r.matches=o,u=0,s=e.length;s>u;u++)e[u].call(window,r)}},30)};window.matchMedia=function(r){var o=t(r),e=[],s=0;return o.addListener=function(t){u&&(i||(i=!0,window.addEventListener("resize",f,!0)),0===s&&(s=n.push({mql:o,listeners:e})),e.push(t))},o.removeListener=function(n){for(var t=0,i=e.length;i>t;t++)e[t]===n&&e.splice(t,1)},o}}(),!function(n){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=n();else if("function"==typeof define&&define.amd)define([],n);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this;t.enquire=n()}}(function(){return function n(t,i,r){function u(f,o){var h,c,s;if(!i[f]){if(!t[f]){if(h="function"==typeof require&&require,!o&&h)return h(f,!0);if(e)return e(f,!0);c=new Error("Cannot find module '"+f+"'");throw c.code="MODULE_NOT_FOUND",c;}s=i[f]={exports:{}};t[f][0].call(s.exports,function(n){var i=t[f][1][n];return u(i?i:n)},s,s.exports,n,t,i,r)}return i[f].exports}for(var e="function"==typeof require&&require,f=0;f<r.length;f++)u(r[f]);return u}({1:[function(n,t){function i(n,t){this.query=n;this.isUnconditional=t;this.handlers=[];this.mql=window.matchMedia(n);var i=this;this.listener=function(n){i.mql=n.currentTarget||n;i.assess()};this.mql.addListener(this.listener)}var u=n(3),r=n(4).each;i.prototype={constuctor:i,addHandler:function(n){var t=new u(n);this.handlers.push(t);this.matches()&&t.on()},removeHandler:function(n){var t=this.handlers;r(t,function(i,r){if(i.equals(n))return i.destroy(),!t.splice(r,1)})},matches:function(){return this.mql.matches||this.isUnconditional},clear:function(){r(this.handlers,function(n){n.destroy()});this.mql.removeListener(this.listener);this.handlers.length=0},assess:function(){var n=this.matches()?"on":"off";r(this.handlers,function(t){t[n]()})}};t.exports=i},{3:3,4:4}],2:[function(n,t){function i(){if(!window.matchMedia)throw new Error("matchMedia not present, legacy browsers require a polyfill");this.queries={};this.browserIsIncapable=!window.matchMedia("only all").matches}var f=n(1),r=n(4),e=r.each,u=r.isFunction,o=r.isArray;i.prototype={constructor:i,register:function(n,t,i){var r=this.queries,s=i&&this.browserIsIncapable;return r[n]||(r[n]=new f(n,s)),u(t)&&(t={match:t}),o(t)||(t=[t]),e(t,function(t){u(t)&&(t={match:t});r[n].addHandler(t)}),this},unregister:function(n,t){var i=this.queries[n];return i&&(t?i.removeHandler(t):(i.clear(),delete this.queries[n])),this}};t.exports=i},{1:1,4:4}],3:[function(n,t){function i(n){this.options=n;n.deferSetup||this.setup()}i.prototype={constructor:i,setup:function(){this.options.setup&&this.options.setup();this.initialised=!0},on:function(){this.initialised||this.setup();this.options.match&&this.options.match()},off:function(){this.options.unmatch&&this.options.unmatch()},destroy:function(){this.options.destroy?this.options.destroy():this.off()},equals:function(n){return this.options===n||this.options.match===n}};t.exports=i},{}],4:[function(n,t){function i(n,t){var i=0,r=n.length;for(i;i<r&&t(n[i],i)!==!1;i++);}function r(n){return"[object Array]"===Object.prototype.toString.apply(n)}function u(n){return"function"==typeof n}t.exports={isFunction:u,isArray:r,each:i}},{}],5:[function(n,t){var i=n(2);t.exports=new i},{2:2}]},{},[5])(5)}),cookieHelper.setCookie=function(n,t,i){var r=new Date,u;r.setTime(r.getTime()+i*864e5);u="expires="+r.toUTCString();document.cookie=n+"="+t+";"+u+";path=/"},cookieHelper.getCookie=function(n){for(var t,r=n+"=",f=decodeURIComponent(document.cookie),u=f.split(";"),i=0;i<u.length;i++){for(t=u[i];t.charAt(0)===" ";)t=t.substring(1);if(t.indexOf(r)===0)return t.substring(r.length,t.length)}return""},imageLoader.init=function(){var n=new imageLoader;n.removeSrcBeforeLoad();window.addEventListener("scroll",function(){n.refreshHandler()});window.addEventListener("load",function(){n.refreshHandler()});window.addEventListener("resize",function(){n.refreshHandler()})},imageLoader.init(),function(n){typeof define=="function"&&define.amd?define(["jquery"],function(t){return n(t)}):typeof module=="object"&&typeof module.exports=="object"?exports=n(require("jquery")):n(jQuery)}(function(n){function o(n){var i=7.5625,t=2.75;return n<1/t?i*n*n:n<2/t?i*(n-=1.5/t)*n+.75:n<2.5/t?i*(n-=2.25/t)*n+.9375:i*(n-=2.625/t)*n+.984375}n.easing.jswing=n.easing.swing;var t=Math.pow,u=Math.sqrt,i=Math.sin,s=Math.cos,r=Math.PI,f=1.70158,e=f*1.525,h=f+1,c=2*r/3,l=2*r/4.5;n.extend(n.easing,{def:"easeOutQuad",swing:function(t){return n.easing[n.easing.def](t)},easeInQuad:function(n){return n*n},easeOutQuad:function(n){return 1-(1-n)*(1-n)},easeInOutQuad:function(n){return n<.5?2*n*n:1-t(-2*n+2,2)/2},easeInCubic:function(n){return n*n*n},easeOutCubic:function(n){return 1-t(1-n,3)},easeInOutCubic:function(n){return n<.5?4*n*n*n:1-t(-2*n+2,3)/2},easeInQuart:function(n){return n*n*n*n},easeOutQuart:function(n){return 1-t(1-n,4)},easeInOutQuart:function(n){return n<.5?8*n*n*n*n:1-t(-2*n+2,4)/2},easeInQuint:function(n){return n*n*n*n*n},easeOutQuint:function(n){return 1-t(1-n,5)},easeInOutQuint:function(n){return n<.5?16*n*n*n*n*n:1-t(-2*n+2,5)/2},easeInSine:function(n){return 1-s(n*r/2)},easeOutSine:function(n){return i(n*r/2)},easeInOutSine:function(n){return-(s(r*n)-1)/2},easeInExpo:function(n){return n===0?0:t(2,10*n-10)},easeOutExpo:function(n){return n===1?1:1-t(2,-10*n)},easeInOutExpo:function(n){return n===0?0:n===1?1:n<.5?t(2,20*n-10)/2:(2-t(2,-20*n+10))/2},easeInCirc:function(n){return 1-u(1-t(n,2))},easeOutCirc:function(n){return u(1-t(n-1,2))},easeInOutCirc:function(n){return n<.5?(1-u(1-t(2*n,2)))/2:(u(1-t(-2*n+2,2))+1)/2},easeInElastic:function(n){return n===0?0:n===1?1:-t(2,10*n-10)*i((n*10-10.75)*c)},easeOutElastic:function(n){return n===0?0:n===1?1:t(2,-10*n)*i((n*10-.75)*c)+1},easeInOutElastic:function(n){return n===0?0:n===1?1:n<.5?-(t(2,20*n-10)*i((20*n-11.125)*l))/2:t(2,-20*n+10)*i((20*n-11.125)*l)/2+1},easeInBack:function(n){return h*n*n*n-f*n*n},easeOutBack:function(n){return 1+h*t(n-1,3)+f*t(n-1,2)},easeInOutBack:function(n){return n<.5?t(2*n,2)*((e+1)*2*n-e)/2:(t(2*n-2,2)*((e+1)*(n*2-2)+e)+2)/2},easeInBounce:function(n){return 1-o(1-n)},easeOutBounce:o,easeInOutBounce:function(n){return n<.5?(1-o(1-2*n))/2:(1+o(2*n-1))/2}})}),"undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");!function(){"use strict";var n=jQuery.fn.jquery.split(" ")[0].split(".");if(n[0]<2&&n[1]<9||1==n[0]&&9==n[1]&&n[2]<1||3<n[0])throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4");}(),function(n){"use strict";n.fn.emulateTransitionEnd=function(t){var i=!1,r=this;n(this).one("bsTransitionEnd",function(){i=!0});return setTimeout(function(){i||n(r).trigger(n.support.transition.end)},t),this};n(function(){n.support.transition=function(){var i=document.createElement("bootstrap"),n={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var t in n)if(i.style[t]!==undefined)return{end:n[t]};return!1}();n.support.transition&&(n.event.special.bsTransitionEnd={bindType:n.support.transition.end,delegateType:n.support.transition.end,handle:function(t){if(n(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}})})}(jQuery),function(n){"use strict";var i='[data-dismiss="alert"]',t=function(t){n(t).on("click",i,this.close)},r;t.VERSION="3.4.1";t.TRANSITION_DURATION=150;t.prototype.close=function(i){function e(){u.detach().trigger("closed.bs.alert").remove()}var f=n(this),r=f.attr("data-target"),u;r||(r=(r=f.attr("href"))&&r.replace(/.*(?=#[^\s]*$)/,""));r="#"===r?[]:r;u=n(document).find(r);i&&i.preventDefault();u.length||(u=f.closest(".alert"));u.trigger(i=n.Event("close.bs.alert"));i.isDefaultPrevented()||(u.removeClass("in"),n.support.transition&&u.hasClass("fade")?u.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e())};r=n.fn.alert;n.fn.alert=function(i){return this.each(function(){var r=n(this),u=r.data("bs.alert");u||r.data("bs.alert",u=new t(this));"string"==typeof i&&u[i].call(r)})};n.fn.alert.Constructor=t;n.fn.alert.noConflict=function(){return n.fn.alert=r,this};n(document).on("click.bs.alert.data-api",i,t.prototype.close)}(jQuery),function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.button"),f="object"==typeof i&&i;r||u.data("bs.button",r=new t(this,f));"toggle"==i?r.toggle():i&&r.setState(i)})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.isLoading=!1},r;t.VERSION="3.4.1";t.DEFAULTS={loadingText:"loading..."};t.prototype.setState=function(t){var i="disabled",r=this.$element,f=r.is("input")?"val":"html",u=r.data();t+="Text";null==u.resetText&&r.data("resetText",r[f]());setTimeout(n.proxy(function(){r[f](null==u[t]?this.options[t]:u[t]);"loadingText"==t?(this.isLoading=!0,r.addClass(i).attr(i,i).prop(i,!0)):this.isLoading&&(this.isLoading=!1,r.removeClass(i).removeAttr(i).prop(i,!1))},this),0)};t.prototype.toggle=function(){var t=!0,i=this.$element.closest('[data-toggle="buttons"]'),n;i.length?(n=this.$element.find("input"),"radio"==n.prop("type")?(n.prop("checked")&&(t=!1),i.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==n.prop("type")&&(n.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),n.prop("checked",this.$element.hasClass("active")),t&&n.trigger("change")):(this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active"))};r=n.fn.button;n.fn.button=i;n.fn.button.Constructor=t;n.fn.button.noConflict=function(){return n.fn.button=r,this};n(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(t){var r=n(t.target).closest(".btn");i.call(r,"toggle");n(t.target).is('input[type="radio"], input[type="checkbox"]')||(t.preventDefault(),r.is("input,button")?r.trigger("focus"):r.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(t){n(t.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(t.type))})}(jQuery),function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.carousel"),f=n.extend({},t.DEFAULTS,u.data(),"object"==typeof i&&i),e="string"==typeof i?i:f.slide;r||u.data("bs.carousel",r=new t(this,f));"number"==typeof i?r.to(i):e?r[e]():f.interval&&r.pause().cycle()})}var t=function(t,i){this.$element=n(t);this.$indicators=this.$element.find(".carousel-indicators");this.options=i;this.paused=null;this.sliding=null;this.interval=null;this.$active=null;this.$items=null;this.options.keyboard&&this.$element.on("keydown.bs.carousel",n.proxy(this.keydown,this));"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",n.proxy(this.pause,this)).on("mouseleave.bs.carousel",n.proxy(this.cycle,this))},u,r;t.VERSION="3.4.1";t.TRANSITION_DURATION=600;t.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0};t.prototype.keydown=function(n){if(!/input|textarea/i.test(n.target.tagName)){switch(n.which){case 37:this.prev();break;case 39:this.next();break;default:return}n.preventDefault()}};t.prototype.cycle=function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(n.proxy(this.next,this),this.options.interval)),this};t.prototype.getItemIndex=function(n){return this.$items=n.parent().children(".item"),this.$items.index(n||this.$active)};t.prototype.getItemForDirection=function(n,t){var i=this.getItemIndex(t),r;return("prev"==n&&0===i||"next"==n&&i==this.$items.length-1)&&!this.options.wrap?t:(r=(i+("prev"==n?-1:1))%this.$items.length,this.$items.eq(r))};t.prototype.to=function(n){var i=this,t=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(n>this.$items.length-1||n<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){i.to(n)}):t==n?this.pause().cycle():this.slide(t<n?"next":"prev",this.$items.eq(n))};t.prototype.pause=function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&n.support.transition&&(this.$element.trigger(n.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this};t.prototype.next=function(){if(!this.sliding)return this.slide("next")};t.prototype.prev=function(){if(!this.sliding)return this.slide("prev")};t.prototype.slide=function(i,r){var e=this.$element.find(".item.active"),u=r||this.getItemForDirection(i,e),l=this.interval,f="next"==i?"left":"right",a=this,o,s,h,c;return u.hasClass("active")?this.sliding=!1:(o=u[0],s=n.Event("slide.bs.carousel",{relatedTarget:o,direction:f}),(this.$element.trigger(s),!s.isDefaultPrevented())?((this.sliding=!0,l&&this.pause(),this.$indicators.length)&&(this.$indicators.find(".active").removeClass("active"),h=n(this.$indicators.children()[this.getItemIndex(u)]),h&&h.addClass("active")),c=n.Event("slid.bs.carousel",{relatedTarget:o,direction:f}),n.support.transition&&this.$element.hasClass("slide")?(u.addClass(i),"object"==typeof u&&u.length&&u[0].offsetWidth,e.addClass(f),u.addClass(f),e.one("bsTransitionEnd",function(){u.removeClass([i,f].join(" ")).addClass("active");e.removeClass(["active",f].join(" "));a.sliding=!1;setTimeout(function(){a.$element.trigger(c)},0)}).emulateTransitionEnd(t.TRANSITION_DURATION)):(e.removeClass("active"),u.addClass("active"),this.sliding=!1,this.$element.trigger(c)),l&&this.cycle(),this):void 0)};u=n.fn.carousel;n.fn.carousel=i;n.fn.carousel.Constructor=t;n.fn.carousel.noConflict=function(){return n.fn.carousel=u,this};r=function(t){var u=n(this),f=u.attr("href"),s,r,o,e;f&&(f=f.replace(/.*(?=#[^\s]+$)/,""));s=u.attr("data-target")||f;r=n(document).find(s);r.hasClass("carousel")&&(o=n.extend({},r.data(),u.data()),e=u.attr("data-slide-to"),e&&(o.interval=!1),i.call(r,o),e&&r.data("bs.carousel").to(e),t.preventDefault())};n(document).on("click.bs.carousel.data-api","[data-slide]",r).on("click.bs.carousel.data-api","[data-slide-to]",r);n(window).on("load",function(){n('[data-ride="carousel"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery),function(n){"use strict";function r(t){var i,r=t.attr("data-target")||(i=t.attr("href"))&&i.replace(/.*(?=#[^\s]+$)/,"");return n(document).find(r)}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.collapse"),f=n.extend({},t.DEFAULTS,u.data(),"object"==typeof i&&i);!r&&f.toggle&&/show|hide/.test(i)&&(f.toggle=!1);r||u.data("bs.collapse",r=new t(this,f));"string"==typeof i&&r[i]()})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.$trigger=n('[data-toggle="collapse"][href="#'+i.id+'"],[data-toggle="collapse"][data-target="#'+i.id+'"]');this.transitioning=null;this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger);this.options.toggle&&this.toggle()},u;t.VERSION="3.4.1";t.TRANSITION_DURATION=350;t.DEFAULTS={toggle:!0};t.prototype.dimension=function(){return this.$element.hasClass("width")?"width":"height"};t.prototype.show=function(){var f,r,e,u,o,s;if(!this.transitioning&&!this.$element.hasClass("in")&&(r=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing"),!(r&&r.length&&(f=r.data("bs.collapse"))&&f.transitioning)&&(e=n.Event("show.bs.collapse"),this.$element.trigger(e),!e.isDefaultPrevented()))){if(r&&r.length&&(i.call(r,"hide"),f||r.data("bs.collapse",null)),u=this.dimension(),this.$element.removeClass("collapse").addClass("collapsing")[u](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1,o=function(){this.$element.removeClass("collapsing").addClass("collapse in")[u]("");this.transitioning=0;this.$element.trigger("shown.bs.collapse")},!n.support.transition)return o.call(this);s=n.camelCase(["scroll",u].join("-"));this.$element.one("bsTransitionEnd",n.proxy(o,this)).emulateTransitionEnd(t.TRANSITION_DURATION)[u](this.$element[0][s])}};t.prototype.hide=function(){var r,i,u;if(!this.transitioning&&this.$element.hasClass("in")&&(r=n.Event("hide.bs.collapse"),this.$element.trigger(r),!r.isDefaultPrevented())){if(i=this.dimension(),this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1,u=function(){this.transitioning=0;this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")},!n.support.transition)return u.call(this);this.$element[i](0).one("bsTransitionEnd",n.proxy(u,this)).emulateTransitionEnd(t.TRANSITION_DURATION)}};t.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};t.prototype.getParent=function(){return n(document).find(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(n.proxy(function(t,i){var u=n(i);this.addAriaAndCollapsedClass(r(u),u)},this)).end()};t.prototype.addAriaAndCollapsedClass=function(n,t){var i=n.hasClass("in");n.attr("aria-expanded",i);t.toggleClass("collapsed",!i).attr("aria-expanded",i)};u=n.fn.collapse;n.fn.collapse=i;n.fn.collapse.Constructor=t;n.fn.collapse.noConflict=function(){return n.fn.collapse=u,this};n(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(t){var u=n(this),f,e;u.attr("data-target")||t.preventDefault();f=r(u);e=f.data("bs.collapse")?"toggle":u.data();i.call(f,e)})}(jQuery),function(n){"use strict";function r(t){var i=t.attr("data-target"),r;return i||(i=(i=t.attr("href"))&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,"")),r="#"!==i?n(document).find(i):null,r&&r.length?r:t.parent()}function u(t){t&&3===t.which||(n(".dropdown-backdrop").remove(),n(i).each(function(){var u=n(this),i=r(u),f={relatedTarget:this};i.hasClass("open")&&(t&&"click"==t.type&&/input|textarea/i.test(t.target.tagName)&&n.contains(i[0],t.target)||(i.trigger(t=n.Event("hide.bs.dropdown",f)),t.isDefaultPrevented()||(u.attr("aria-expanded","false"),i.removeClass("open").trigger(n.Event("hidden.bs.dropdown",f)))))}))}var i='[data-toggle="dropdown"]',t=function(t){n(t).on("click.bs.dropdown",this.toggle)},f;t.VERSION="3.4.1";t.prototype.toggle=function(t){var f=n(this),i,o,e;if(!f.is(".disabled, :disabled")){if(i=r(f),o=i.hasClass("open"),u(),!o){if("ontouchstart"in document.documentElement&&!i.closest(".navbar-nav").length&&n(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(n(this)).on("click",u),e={relatedTarget:this},i.trigger(t=n.Event("show.bs.dropdown",e)),t.isDefaultPrevented())return;f.trigger("focus").attr("aria-expanded","true");i.toggleClass("open").trigger(n.Event("shown.bs.dropdown",e))}return!1}};t.prototype.keydown=function(t){var e,o,s,f,u;if(/(38|40|27|32)/.test(t.which)&&!/input|textarea/i.test(t.target.tagName)&&(e=n(this),t.preventDefault(),t.stopPropagation(),!e.is(".disabled, :disabled"))){if(o=r(e),s=o.hasClass("open"),!s&&27!=t.which||s&&27==t.which)return 27==t.which&&o.find(i).trigger("focus"),e.trigger("click");f=o.find(".dropdown-menu li:not(.disabled):visible a");f.length&&(u=f.index(t.target),38==t.which&&0<u&&u--,40==t.which&&u<f.length-1&&u++,~u||(u=0),f.eq(u).trigger("focus"))}};f=n.fn.dropdown;n.fn.dropdown=function(i){return this.each(function(){var r=n(this),u=r.data("bs.dropdown");u||r.data("bs.dropdown",u=new t(this));"string"==typeof i&&u[i].call(r)})};n.fn.dropdown.Constructor=t;n.fn.dropdown.noConflict=function(){return n.fn.dropdown=f,this};n(document).on("click.bs.dropdown.data-api",u).on("click.bs.dropdown.data-api",".dropdown form",function(n){n.stopPropagation()}).on("click.bs.dropdown.data-api",i,t.prototype.toggle).on("keydown.bs.dropdown.data-api",i,t.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",t.prototype.keydown)}(jQuery),function(n){"use strict";function i(i,r){return this.each(function(){var f=n(this),u=f.data("bs.modal"),e=n.extend({},t.DEFAULTS,f.data(),"object"==typeof i&&i);u||f.data("bs.modal",u=new t(this,e));"string"==typeof i?u[i](r):e.show&&u.show(r)})}var t=function(t,i){this.options=i;this.$body=n(document.body);this.$element=n(t);this.$dialog=this.$element.find(".modal-dialog");this.$backdrop=null;this.isShown=null;this.originalBodyPad=null;this.scrollbarWidth=0;this.ignoreBackdropClick=!1;this.fixedContent=".navbar-fixed-top, .navbar-fixed-bottom";this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,n.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))},r;t.VERSION="3.4.1";t.TRANSITION_DURATION=300;t.BACKDROP_TRANSITION_DURATION=150;t.DEFAULTS={backdrop:!0,keyboard:!0,show:!0};t.prototype.toggle=function(n){return this.isShown?this.hide():this.show(n)};t.prototype.show=function(i){var r=this,u=n.Event("show.bs.modal",{relatedTarget:i});this.$element.trigger(u);this.isShown||u.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',n.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){r.$element.one("mouseup.dismiss.bs.modal",function(t){n(t.target).is(r.$element)&&(r.ignoreBackdropClick=!0)})}),this.backdrop(function(){var f=n.support.transition&&r.$element.hasClass("fade"),u;r.$element.parent().length||r.$element.appendTo(r.$body);r.$element.show().scrollTop(0);r.adjustDialog();f&&r.$element[0].offsetWidth;r.$element.addClass("in");r.enforceFocus();u=n.Event("shown.bs.modal",{relatedTarget:i});f?r.$dialog.one("bsTransitionEnd",function(){r.$element.trigger("focus").trigger(u)}).emulateTransitionEnd(t.TRANSITION_DURATION):r.$element.trigger("focus").trigger(u)}))};t.prototype.hide=function(i){i&&i.preventDefault();i=n.Event("hide.bs.modal");this.$element.trigger(i);this.isShown&&!i.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),n(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),n.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",n.proxy(this.hideModal,this)).emulateTransitionEnd(t.TRANSITION_DURATION):this.hideModal())};t.prototype.enforceFocus=function(){n(document).off("focusin.bs.modal").on("focusin.bs.modal",n.proxy(function(n){document===n.target||this.$element[0]===n.target||this.$element.has(n.target).length||this.$element.trigger("focus")},this))};t.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",n.proxy(function(n){27==n.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")};t.prototype.resize=function(){this.isShown?n(window).on("resize.bs.modal",n.proxy(this.handleUpdate,this)):n(window).off("resize.bs.modal")};t.prototype.hideModal=function(){var n=this;this.$element.hide();this.backdrop(function(){n.$body.removeClass("modal-open");n.resetAdjustments();n.resetScrollbar();n.$element.trigger("hidden.bs.modal")})};t.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove();this.$backdrop=null};t.prototype.backdrop=function(i){var e=this,f=this.$element.hasClass("fade")?"fade":"",r,u;if(this.isShown&&this.options.backdrop){if(r=n.support.transition&&f,this.$backdrop=n(document.createElement("div")).addClass("modal-backdrop "+f).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",n.proxy(function(n){this.ignoreBackdropClick?this.ignoreBackdropClick=!1:n.target===n.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide())},this)),r&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!i)return;r?this.$backdrop.one("bsTransitionEnd",i).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):i()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),u=function(){e.removeBackdrop();i&&i()},n.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",u).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):u()):i&&i()};t.prototype.handleUpdate=function(){this.adjustDialog()};t.prototype.adjustDialog=function(){var n=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&n?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!n?this.scrollbarWidth:""})};t.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})};t.prototype.checkScrollbar=function(){var n=window.innerWidth,t;n||(t=document.documentElement.getBoundingClientRect(),n=t.right-Math.abs(t.left));this.bodyIsOverflowing=document.body.clientWidth<n;this.scrollbarWidth=this.measureScrollbar()};t.prototype.setScrollbar=function(){var i=parseInt(this.$body.css("padding-right")||0,10),t;this.originalBodyPad=document.body.style.paddingRight||"";t=this.scrollbarWidth;this.bodyIsOverflowing&&(this.$body.css("padding-right",i+t),n(this.fixedContent).each(function(i,r){var u=r.style.paddingRight,f=n(r).css("padding-right");n(r).data("padding-right",u).css("padding-right",parseFloat(f)+t+"px")}))};t.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad);n(this.fixedContent).each(function(t,i){var r=n(i).data("padding-right");n(i).removeData("padding-right");i.style.paddingRight=r||""})};t.prototype.measureScrollbar=function(){var n=document.createElement("div"),t;return n.className="modal-scrollbar-measure",this.$body.append(n),t=n.offsetWidth-n.clientWidth,this.$body[0].removeChild(n),t};r=n.fn.modal;n.fn.modal=i;n.fn.modal.Constructor=t;n.fn.modal.noConflict=function(){return n.fn.modal=r,this};n(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(t){var r=n(this),f=r.attr("href"),e=r.attr("data-target")||f&&f.replace(/.*(?=#[^\s]+$)/,""),u=n(document).find(e),o=u.data("bs.modal")?"toggle":n.extend({remote:!/#/.test(f)&&f},u.data(),r.data());r.is("a")&&t.preventDefault();u.one("show.bs.modal",function(n){n.isDefaultPrevented()||u.one("hidden.bs.modal",function(){r.is(":visible")&&r.trigger("focus")})});i.call(u,o,this)})}(jQuery),function(n){"use strict";function s(t,i){var r=t.nodeName.toLowerCase();if(-1!==n.inArray(r,i))return-1===n.inArray(r,f)||Boolean(t.nodeValue.match(e)||t.nodeValue.match(o));for(var s=n(i).filter(function(n,t){return t instanceof RegExp}),u=0,h=s.length;u<h;u++)if(r.match(s[u]))return!0;return!1}function i(t,i,r){var f,u,h;if(0===t.length)return t;if(r&&"function"==typeof r)return r(t);if(!document.implementation||!document.implementation.createHTMLDocument)return t;f=document.implementation.createHTMLDocument("sanitization");f.body.innerHTML=t;for(var a=n.map(i,function(n,t){return t}),l=n(f.body).find("*"),o=0,v=l.length;o<v;o++)if(u=l[o],h=u.nodeName.toLowerCase(),-1!==n.inArray(h,a))for(var c=n.map(u.attributes,function(n){return n}),y=[].concat(i["*"]||[],i[h]||[]),e=0,p=c.length;e<p;e++)s(c[e],y)||u.removeAttribute(c[e].nodeName);else u.parentNode.removeChild(u);return f.body.innerHTML}var u=["sanitize","whiteList","sanitizeFn"],f=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,o=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i,t=function(n,t){this.type=null;this.options=null;this.enabled=null;this.timeout=null;this.hoverState=null;this.$element=null;this.inState=null;this.init("tooltip",n,t)},r;t.VERSION="3.4.1";t.TRANSITION_DURATION=150;t.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"><\/div><div class="tooltip-inner"><\/div><\/div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0},sanitize:!0,sanitizeFn:null,whiteList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]}};t.prototype.init=function(t,i,r){var f,e,u,o,s;if(this.enabled=!0,this.type=t,this.$element=n(i),this.options=this.getOptions(r),this.$viewport=this.options.viewport&&n(document).find(n.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(f=this.options.trigger.split(" "),e=f.length;e--;)if(u=f[e],"click"==u)this.$element.on("click."+this.type,this.options.selector,n.proxy(this.toggle,this));else"manual"!=u&&(o="hover"==u?"mouseenter":"focusin",s="hover"==u?"mouseleave":"focusout",this.$element.on(o+"."+this.type,this.options.selector,n.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,n.proxy(this.leave,this)));this.options.selector?this._options=n.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()};t.prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.getOptions=function(t){var r=this.$element.data();for(var f in r)r.hasOwnProperty(f)&&-1!==n.inArray(f,u)&&delete r[f];return(t=n.extend({},this.getDefaults(),r,t)).delay&&"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),t.sanitize&&(t.template=i(t.template,t.whiteList,t.sanitizeFn)),t};t.prototype.getDelegateOptions=function(){var t={},i=this.getDefaults();return this._options&&n.each(this._options,function(n,r){i[n]!=r&&(t[n]=r)}),t};t.prototype.enter=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState["focusin"==t.type?"focus":"hover"]=!0),i.tip().hasClass("in")||"in"==i.hoverState)i.hoverState="in";else{if(clearTimeout(i.timeout),i.hoverState="in",!i.options.delay||!i.options.delay.show)return i.show();i.timeout=setTimeout(function(){"in"==i.hoverState&&i.show()},i.options.delay.show)}};t.prototype.isInStateTrue=function(){for(var n in this.inState)if(this.inState[n])return!0;return!1};t.prototype.leave=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState["focusout"==t.type?"focus":"hover"]=!1),!i.isInStateTrue()){if(clearTimeout(i.timeout),i.hoverState="out",!i.options.delay||!i.options.delay.hide)return i.hide();i.timeout=setTimeout(function(){"out"==i.hoverState&&i.hide()},i.options.delay.hide)}};t.prototype.show=function(){var c=n.Event("show.bs."+this.type),l,p,e,w,h;if(this.hasContent()&&this.enabled){if(this.$element.trigger(c),l=n.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]),c.isDefaultPrevented()||!l)return;var u=this,r=this.tip(),a=this.getUID(this.type);this.setContent();r.attr("id",a);this.$element.attr("aria-describedby",a);this.options.animation&&r.addClass("fade");var i="function"==typeof this.options.placement?this.options.placement.call(this,r[0],this.$element[0]):this.options.placement,v=/\s?auto?\s?/i,y=v.test(i);y&&(i=i.replace(v,"")||"top");r.detach().css({top:0,left:0,display:"block"}).addClass(i).data("bs."+this.type,this);this.options.container?r.appendTo(n(document).find(this.options.container)):r.insertAfter(this.$element);this.$element.trigger("inserted.bs."+this.type);var f=this.getPosition(),o=r[0].offsetWidth,s=r[0].offsetHeight;y&&(p=i,e=this.getPosition(this.$viewport),i="bottom"==i&&f.bottom+s>e.bottom?"top":"top"==i&&f.top-s<e.top?"bottom":"right"==i&&f.right+o>e.width?"left":"left"==i&&f.left-o<e.left?"right":i,r.removeClass(p).addClass(i));w=this.getCalculatedOffset(i,f,o,s);this.applyPlacement(w,i);h=function(){var n=u.hoverState;u.$element.trigger("shown.bs."+u.type);u.hoverState=null;"out"==n&&u.leave(u)};n.support.transition&&this.$tip.hasClass("fade")?r.one("bsTransitionEnd",h).emulateTransitionEnd(t.TRANSITION_DURATION):h()}};t.prototype.applyPlacement=function(t,i){var r=this.tip(),l=r[0].offsetWidth,e=r[0].offsetHeight,o=parseInt(r.css("margin-top"),10),s=parseInt(r.css("margin-left"),10),h,f,u;isNaN(o)&&(o=0);isNaN(s)&&(s=0);t.top+=o;t.left+=s;n.offset.setOffset(r[0],n.extend({using:function(n){r.css({top:Math.round(n.top),left:Math.round(n.left)})}},t),0);r.addClass("in");h=r[0].offsetWidth;f=r[0].offsetHeight;"top"==i&&f!=e&&(t.top=t.top+e-f);u=this.getViewportAdjustedDelta(i,t,h,f);u.left?t.left+=u.left:t.top+=u.top;var c=/top|bottom/.test(i),a=c?2*u.left-l+h:2*u.top-e+f,v=c?"offsetWidth":"offsetHeight";r.offset(t);this.replaceArrow(a,r[0][v],c)};t.prototype.replaceArrow=function(n,t,i){this.arrow().css(i?"left":"top",50*(1-n/t)+"%").css(i?"top":"left","")};t.prototype.setContent=function(){var t=this.tip(),n=this.getTitle();this.options.html?(this.options.sanitize&&(n=i(n,this.options.whiteList,this.options.sanitizeFn)),t.find(".tooltip-inner").html(n)):t.find(".tooltip-inner").text(n);t.removeClass("fade in top bottom left right")};t.prototype.hide=function(i){function e(){"in"!=r.hoverState&&u.detach();r.$element&&r.$element.removeAttr("aria-describedby").trigger("hidden.bs."+r.type);i&&i()}var r=this,u=n(this.$tip),f=n.Event("hide.bs."+this.type);if(this.$element.trigger(f),!f.isDefaultPrevented())return u.removeClass("in"),n.support.transition&&u.hasClass("fade")?u.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e(),this.hoverState=null,this};t.prototype.fixTitle=function(){var n=this.$element;(n.attr("title")||"string"!=typeof n.attr("data-original-title"))&&n.attr("data-original-title",n.attr("title")||"").attr("title","")};t.prototype.hasContent=function(){return this.getTitle()};t.prototype.getPosition=function(t){var r=(t=t||this.$element)[0],u="BODY"==r.tagName,i=r.getBoundingClientRect();null==i.width&&(i=n.extend({},i,{width:i.right-i.left,height:i.bottom-i.top}));var f=window.SVGElement&&r instanceof window.SVGElement,e=u?{top:0,left:0}:f?null:t.offset(),o={scroll:u?document.documentElement.scrollTop||document.body.scrollTop:t.scrollTop()},s=u?{width:n(window).width(),height:n(window).height()}:null;return n.extend({},i,o,s,e)};t.prototype.getCalculatedOffset=function(n,t,i,r){return"bottom"==n?{top:t.top+t.height,left:t.left+t.width/2-i/2}:"top"==n?{top:t.top-r,left:t.left+t.width/2-i/2}:"left"==n?{top:t.top+t.height/2-r/2,left:t.left-i}:{top:t.top+t.height/2-r/2,left:t.left+t.width}};t.prototype.getViewportAdjustedDelta=function(n,t,i,r){var f={top:0,left:0},e,u,o,s,h,c;return this.$viewport?(e=this.options.viewport&&this.options.viewport.padding||0,u=this.getPosition(this.$viewport),/right|left/.test(n)?(o=t.top-e-u.scroll,s=t.top+e-u.scroll+r,o<u.top?f.top=u.top-o:s>u.top+u.height&&(f.top=u.top+u.height-s)):(h=t.left-e,c=t.left+e+i,h<u.left?f.left=u.left-h:c>u.right&&(f.left=u.left+u.width-c)),f):f};t.prototype.getTitle=function(){var t=this.$element,n=this.options;return t.attr("data-original-title")||("function"==typeof n.title?n.title.call(t[0]):n.title)};t.prototype.getUID=function(n){for(;n+=~~(1e6*Math.random()),document.getElementById(n););return n};t.prototype.tip=function(){if(!this.$tip&&(this.$tip=n(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")};t.prototype.enable=function(){this.enabled=!0};t.prototype.disable=function(){this.enabled=!1};t.prototype.toggleEnabled=function(){this.enabled=!this.enabled};t.prototype.toggle=function(t){var i=this;t&&((i=n(t.currentTarget).data("bs."+this.type))||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)));t?(i.inState.click=!i.inState.click,i.isInStateTrue()?i.enter(i):i.leave(i)):i.tip().hasClass("in")?i.leave(i):i.enter(i)};t.prototype.destroy=function(){var n=this;clearTimeout(this.timeout);this.hide(function(){n.$element.off("."+n.type).removeData("bs."+n.type);n.$tip&&n.$tip.detach();n.$tip=null;n.$arrow=null;n.$viewport=null;n.$element=null})};t.prototype.sanitizeHtml=function(n){return i(n,this.options.whiteList,this.options.sanitizeFn)};r=n.fn.tooltip;n.fn.tooltip=function(i){return this.each(function(){var u=n(this),r=u.data("bs.tooltip"),f="object"==typeof i&&i;!r&&/destroy|hide/.test(i)||(r||u.data("bs.tooltip",r=new t(this,f)),"string"==typeof i&&r[i]())})};n.fn.tooltip.Constructor=t;n.fn.tooltip.noConflict=function(){return n.fn.tooltip=r,this}}(jQuery),function(n){"use strict";var t=function(n,t){this.init("popover",n,t)},i;if(!n.fn.tooltip)throw new Error("Popover requires tooltip.js");t.VERSION="3.4.1";t.DEFAULTS=n.extend({},n.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"><\/div><h3 class="popover-title"><\/h3><div class="popover-content"><\/div><\/div>'});((t.prototype=n.extend({},n.fn.tooltip.Constructor.prototype)).constructor=t).prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.setContent=function(){var n=this.tip(),i=this.getTitle(),t=this.getContent(),r;this.options.html?(r=typeof t,this.options.sanitize&&(i=this.sanitizeHtml(i),"string"===r&&(t=this.sanitizeHtml(t))),n.find(".popover-title").html(i),n.find(".popover-content").children().detach().end()["string"===r?"html":"append"](t)):(n.find(".popover-title").text(i),n.find(".popover-content").children().detach().end().text(t));n.removeClass("fade top bottom left right in");n.find(".popover-title").html()||n.find(".popover-title").hide()};t.prototype.hasContent=function(){return this.getTitle()||this.getContent()};t.prototype.getContent=function(){var t=this.$element,n=this.options;return t.attr("data-content")||("function"==typeof n.content?n.content.call(t[0]):n.content)};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};i=n.fn.popover;n.fn.popover=function(i){return this.each(function(){var u=n(this),r=u.data("bs.popover"),f="object"==typeof i&&i;!r&&/destroy|hide/.test(i)||(r||u.data("bs.popover",r=new t(this,f)),"string"==typeof i&&r[i]())})};n.fn.popover.Constructor=t;n.fn.popover.noConflict=function(){return n.fn.popover=i,this}}(jQuery),function(n){"use strict";function t(i,r){this.$body=n(document.body);this.$scrollElement=n(i).is(document.body)?n(window):n(i);this.options=n.extend({},t.DEFAULTS,r);this.selector=(this.options.target||"")+" .nav li > a";this.offsets=[];this.targets=[];this.activeTarget=null;this.scrollHeight=0;this.$scrollElement.on("scroll.bs.scrollspy",n.proxy(this.process,this));this.refresh();this.process()}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.scrollspy"),f="object"==typeof i&&i;r||u.data("bs.scrollspy",r=new t(this,f));"string"==typeof i&&r[i]()})}t.VERSION="3.4.1";t.DEFAULTS={offset:10};t.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)};t.prototype.refresh=function(){var t=this,i="offset",r=0;this.offsets=[];this.targets=[];this.scrollHeight=this.getScrollHeight();n.isWindow(this.$scrollElement[0])||(i="position",r=this.$scrollElement.scrollTop());this.$body.find(this.selector).map(function(){var f=n(this),u=f.data("target")||f.attr("href"),t=/^#./.test(u)&&n(u);return t&&t.length&&t.is(":visible")&&[[t[i]().top+r,u]]||null}).sort(function(n,t){return n[0]-t[0]}).each(function(){t.offsets.push(this[0]);t.targets.push(this[1])})};t.prototype.process=function(){var n,i=this.$scrollElement.scrollTop()+this.options.offset,f=this.getScrollHeight(),e=this.options.offset+f-this.$scrollElement.height(),t=this.offsets,r=this.targets,u=this.activeTarget;if(this.scrollHeight!=f&&this.refresh(),e<=i)return u!=(n=r[r.length-1])&&this.activate(n);if(u&&i<t[0])return this.activeTarget=null,this.clear();for(n=t.length;n--;)u!=r[n]&&i>=t[n]&&(t[n+1]===undefined||i<t[n+1])&&this.activate(r[n])};t.prototype.activate=function(t){this.activeTarget=t;this.clear();var r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',i=n(r).parents("li").addClass("active");i.parent(".dropdown-menu").length&&(i=i.closest("li.dropdown").addClass("active"));i.trigger("activate.bs.scrollspy")};t.prototype.clear=function(){n(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var r=n.fn.scrollspy;n.fn.scrollspy=i;n.fn.scrollspy.Constructor=t;n.fn.scrollspy.noConflict=function(){return n.fn.scrollspy=r,this};n(window).on("load.bs.scrollspy.data-api",function(){n('[data-spy="scroll"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery),function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.tab");r||u.data("bs.tab",r=new t(this));"string"==typeof i&&r[i]()})}var t=function(t){this.element=n(t)},u,i;t.VERSION="3.4.1";t.TRANSITION_DURATION=150;t.prototype.show=function(){var t=this.element,f=t.closest("ul:not(.dropdown-menu)"),i=t.data("target"),u;if(i||(i=(i=t.attr("href"))&&i.replace(/.*(?=#[^\s]*$)/,"")),!t.parent("li").hasClass("active")){var r=f.find(".active:last a"),e=n.Event("hide.bs.tab",{relatedTarget:t[0]}),o=n.Event("show.bs.tab",{relatedTarget:r[0]});(r.trigger(e),t.trigger(o),o.isDefaultPrevented()||e.isDefaultPrevented())||(u=n(document).find(i),this.activate(t.closest("li"),f),this.activate(u,u.parent(),function(){r.trigger({type:"hidden.bs.tab",relatedTarget:t[0]});t.trigger({type:"shown.bs.tab",relatedTarget:r[0]})}))}};t.prototype.activate=function(i,r,u){function o(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1);i.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0);e?(i[0].offsetWidth,i.addClass("in")):i.removeClass("fade");i.parent(".dropdown-menu").length&&i.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0);u&&u()}var f=r.find("> .active"),e=u&&n.support.transition&&(f.length&&f.hasClass("fade")||!!r.find("> .fade").length);f.length&&e?f.one("bsTransitionEnd",o).emulateTransitionEnd(t.TRANSITION_DURATION):o();f.removeClass("in")};u=n.fn.tab;n.fn.tab=r;n.fn.tab.Constructor=t;n.fn.tab.noConflict=function(){return n.fn.tab=u,this};i=function(t){t.preventDefault();r.call(n(this),"show")};n(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',i).on("click.bs.tab.data-api",'[data-toggle="pill"]',i)}(jQuery),function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.affix"),f="object"==typeof i&&i;r||u.data("bs.affix",r=new t(this,f));"string"==typeof i&&r[i]()})}var t=function(i,r){this.options=n.extend({},t.DEFAULTS,r);var u=this.options.target===t.DEFAULTS.target?n(this.options.target):n(document).find(this.options.target);this.$target=u.on("scroll.bs.affix.data-api",n.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",n.proxy(this.checkPositionWithEventLoop,this));this.$element=n(i);this.affixed=null;this.unpin=null;this.pinnedOffset=null;this.checkPosition()},r;t.VERSION="3.4.1";t.RESET="affix affix-top affix-bottom";t.DEFAULTS={offset:0,target:window};t.prototype.getState=function(n,t,i,r){var u=this.$target.scrollTop(),e=this.$element.offset(),o=this.$target.height(),f,s;return null!=i&&"top"==this.affixed?u<i&&"top":"bottom"==this.affixed?null!=i?!(u+this.unpin<=e.top)&&"bottom":!(u+o<=n-r)&&"bottom":(f=null==this.affixed,s=f?u:e.top,null!=i&&u<=i?"top":null!=r&&n-r<=s+(f?o:t)&&"bottom")};t.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(t.RESET).addClass("affix");var n=this.$target.scrollTop(),i=this.$element.offset();return this.pinnedOffset=i.top-n};t.prototype.checkPositionWithEventLoop=function(){setTimeout(n.proxy(this.checkPosition,this),1)};t.prototype.checkPosition=function(){var i,e,o;if(this.$element.is(":visible")){var s=this.$element.height(),r=this.options.offset,f=r.top,u=r.bottom,h=Math.max(n(document).height(),n(document.body).height());if("object"!=typeof r&&(u=f=r),"function"==typeof f&&(f=r.top(this.$element)),"function"==typeof u&&(u=r.bottom(this.$element)),i=this.getState(h,s,f,u),this.affixed!=i){if(null!=this.unpin&&this.$element.css("top",""),e="affix"+(i?"-"+i:""),o=n.Event(e+".bs.affix"),this.$element.trigger(o),o.isDefaultPrevented())return;this.affixed=i;this.unpin="bottom"==i?this.getPinnedOffset():null;this.$element.removeClass(t.RESET).addClass(e).trigger(e.replace("affix","affixed")+".bs.affix")}"bottom"==i&&this.$element.offset({top:h-s-u})}};r=n.fn.affix;n.fn.affix=i;n.fn.affix.Constructor=t;n.fn.affix.noConflict=function(){return n.fn.affix=r,this};n(window).on("load",function(){n('[data-spy="affix"]').each(function(){var r=n(this),t=r.data();t.offset=t.offset||{};null!=t.offsetBottom&&(t.offset.bottom=t.offsetBottom);null!=t.offsetTop&&(t.offset.top=t.offsetTop);i.call(r,t)})})}(jQuery);!function(n,t){"function"==typeof define&&define.amd?define(["jquery"],function(n){return t(n)}):"object"==typeof exports?module.exports=t(require("jquery")):t(jQuery)}(this,function(){!function(n){"use strict";function i(t){return n.each([{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}],function(){t=t.replace(this.re,this.ch)}),t}function r(n){var i={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},r="(?:"+Object.keys(i).join("|")+")",u=new RegExp(r),f=new RegExp(r,"g"),t=null==n?"":""+n;return u.test(t)?t.replace(f,function(n){return i[n]}):t}function u(i,r){var e=arguments,u=i,s=r,f,o;return[].shift.apply(e),o=this.each(function(){var o=n(this),i,r,h,c;if(o.is("select")){if(i=o.data("selectpicker"),r="object"==typeof u&&u,i){if(r)for(h in r)r.hasOwnProperty(h)&&(i.options[h]=r[h])}else c=n.extend({},t.DEFAULTS,n.fn.selectpicker.defaults||{},o.data(),r),o.data("selectpicker",i=new t(this,c,s));"string"==typeof u&&(f=i[u]instanceof Function?i[u].apply(i,e):i.options[u])}}),"undefined"!=typeof f?f:o}var t,f;String.prototype.includes||!function(){var i={}.toString,n=function(){try{var n={},t=Object.defineProperty,i=t(n,n,n)&&t}catch(r){}return i}(),r="".indexOf,t=function(n){var u,s;if(null==this)throw TypeError();if(u=String(this),n&&"[object RegExp]"==i.call(n))throw TypeError();var f=u.length,e=String(n),h=e.length,o=arguments.length>1?arguments[1]:void 0,t=o?Number(o):0;return t!=t&&(t=0),s=Math.min(Math.max(t,0),f),h+s>f?!1:-1!=r.call(u,e,t)};n?n(String.prototype,"includes",{value:t,configurable:!0,writable:!0}):String.prototype.includes=t}();String.prototype.startsWith||!function(){var n=function(){try{var n={},t=Object.defineProperty,i=t(n,n,n)&&t}catch(r){}return i}(),i={}.toString,t=function(n){var u,f,r;if(null==this)throw TypeError();if(u=String(this),n&&"[object RegExp]"==i.call(n))throw TypeError();var e=u.length,o=String(n),s=o.length,h=arguments.length>1?arguments[1]:void 0,t=h?Number(h):0;if(t!=t&&(t=0),f=Math.min(Math.max(t,0),e),s+f>e)return!1;for(r=-1;++r<s;)if(u.charCodeAt(f+r)!=o.charCodeAt(r))return!1;return!0};n?n(String.prototype,"startsWith",{value:t,configurable:!0,writable:!0}):String.prototype.startsWith=t}();Object.keys||(Object.keys=function(n,t,i){i=[];for(t in n)i.hasOwnProperty.call(n,t)&&i.push(t);return i});n.expr[":"].icontains=function(t,i,r){var u=n(t),f=(u.data("tokens")||u.text()).toUpperCase();return f.includes(r[3].toUpperCase())};n.expr[":"].ibegins=function(t,i,r){var u=n(t),f=(u.data("tokens")||u.text()).toUpperCase();return f.startsWith(r[3].toUpperCase())};n.expr[":"].aicontains=function(t,i,r){var u=n(t),f=(u.data("tokens")||u.data("normalizedText")||u.text()).toUpperCase();return f.includes(r[3].toUpperCase())};n.expr[":"].aibegins=function(t,i,r){var u=n(t),f=(u.data("tokens")||u.data("normalizedText")||u.text()).toUpperCase();return f.startsWith(r[3].toUpperCase())};t=function(i,r,u){u&&(u.stopPropagation(),u.preventDefault());this.$element=n(i);this.$newElement=null;this.$button=null;this.$menu=null;this.$lis=null;this.options=r;null===this.options.title&&(this.options.title=this.$element.attr("title"));this.val=t.prototype.val;this.render=t.prototype.render;this.refresh=t.prototype.refresh;this.setStyle=t.prototype.setStyle;this.selectAll=t.prototype.selectAll;this.deselectAll=t.prototype.deselectAll;this.destroy=t.prototype.remove;this.remove=t.prototype.remove;this.show=t.prototype.show;this.hide=t.prototype.hide;this.init()};t.VERSION="1.7.2";t.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results matched {0}",countSelectedText:function(n){return 1==n?"{0} item selected":"{0} items selected"},maxOptionsText:function(n,t){return[1==n?"Limit reached ({n} item max)":"Limit reached ({n} items max)",1==t?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)"]},selectAllText:"Select All",deselectAllText:"Deselect All",doneButton:!1,doneButtonText:"Close",multipleSeparator:", ",styleBase:"btn",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,liveSearchPlaceholder:null,liveSearchNormalize:!1,liveSearchStyle:"contains",actionsBox:!1,iconBase:"glyphicon",tickIcon:"glyphicon-ok",maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1};t.prototype={constructor:t,init:function(){var t=this,i=this.$element.attr("id");this.$element.addClass("bs-select-hidden");this.liObj={};this.multiple=this.$element.prop("multiple");this.autofocus=this.$element.prop("autofocus");this.$newElement=this.createView();this.$element.after(this.$newElement);this.$button=this.$newElement.children("button");this.$menu=this.$newElement.children(".dropdown-menu");this.$menuInner=this.$menu.children(".inner");this.$searchbox=this.$menu.find("input");this.options.dropdownAlignRight&&this.$menu.addClass("dropdown-menu-right");"undefined"!=typeof i&&(this.$button.attr("data-id",i),n('label[for="'+i+'"]').click(function(n){n.preventDefault();t.$button.focus()}));this.checkDisabled();this.clickListener();this.options.liveSearch&&this.liveSearchListener();this.render();this.setStyle();this.setWidth();this.options.container&&this.selectPosition();this.$menu.data("this",this);this.$newElement.data("this",this);this.options.mobile&&this.mobile();this.$newElement.on("hide.bs.dropdown",function(n){t.$element.trigger("hide.bs.select",n)});this.$newElement.on("hidden.bs.dropdown",function(n){t.$element.trigger("hidden.bs.select",n)});this.$newElement.on("show.bs.dropdown",function(n){t.$element.trigger("show.bs.select",n)});this.$newElement.on("shown.bs.dropdown",function(n){t.$element.trigger("shown.bs.select",n)});setTimeout(function(){t.$element.trigger("loaded.bs.select")})},createDropdown:function(){var t=this.multiple?" show-tick":"",i=this.$element.parent().hasClass("input-group")?" input-group-btn":"",u=this.autofocus?" autofocus":"",f=this.options.header?'<div class="popover-title"><button type="button" class="close" aria-hidden="true">&times;<\/button>'+this.options.header+"<\/div>":"",e=this.options.liveSearch?'<div class="bs-searchbox"><input type="text" class="form-control" autocomplete="off"'+(null===this.options.liveSearchPlaceholder?"":' placeholder="'+r(this.options.liveSearchPlaceholder)+'"')+"><\/div>":"",o=this.multiple&&this.options.actionsBox?'<div class="bs-actionsbox"><div class="btn-group btn-group-sm btn-block"><button type="button" class="actions-btn bs-select-all btn btn-default">'+this.options.selectAllText+'<\/button><button type="button" class="actions-btn bs-deselect-all btn btn-default">'+this.options.deselectAllText+"<\/button><\/div><\/div>":"",s=this.multiple&&this.options.doneButton?'<div class="bs-donebutton"><div class="btn-group btn-block"><button type="button" class="btn btn-sm btn-default">'+this.options.doneButtonText+"<\/button><\/div><\/div>":"",h='<div class="btn-group bootstrap-select'+t+i+'"><button type="button" class="'+this.options.styleBase+' dropdown-toggle" data-toggle="dropdown"'+u+'><span class="filter-option pull-left"><\/span>&nbsp;<span class="caret"><\/span><\/button><div class="dropdown-menu open">'+f+e+o+'<ul class="dropdown-menu inner" role="menu"><\/ul>'+s+"<\/div><\/div>";return n(h)},createView:function(){var n=this.createDropdown(),t=this.createLi();return n.find("ul")[0].innerHTML=t,n},reloadLi:function(){this.destroyLi();var n=this.createLi();this.$menuInner[0].innerHTML=n},destroyLi:function(){this.$menu.find("li").remove()},createLi:function(){var u=this,t=[],o=0,s=document.createElement("option"),f=-1,e=function(n,t,i,r){return"<li"+("undefined"!=typeof i&""!==i?' class="'+i+'"':"")+("undefined"!=typeof t&null!==t?' data-original-index="'+t+'"':"")+("undefined"!=typeof r&null!==r?'data-optgroup="'+r+'"':"")+">"+n+"<\/li>"},c=function(n,t,f,e){return'<a tabindex="0"'+("undefined"!=typeof t?' class="'+t+'"':"")+("undefined"!=typeof f?' style="'+f+'"':"")+(u.options.liveSearchNormalize?' data-normalized-text="'+i(r(n))+'"':"")+("undefined"!=typeof e||null!==e?' data-tokens="'+e+'"':"")+">"+n+'<span class="'+u.options.iconBase+" "+u.options.tickIcon+' check-mark"><\/span><\/a>'},h;return!this.options.title||this.multiple||(f--,this.$element.find(".bs-title-option").length)||(h=this.$element[0],s.className="bs-title-option",s.appendChild(document.createTextNode(this.options.title)),s.value="",h.insertBefore(s,h.firstChild),null===h.options[h.selectedIndex].getAttribute("selected")&&(s.selected=!0)),this.$element.find("option").each(function(i){var r=n(this);if(f++,!r.hasClass("bs-title-option")){var l=this.className||"",a=this.style.cssText,s=r.data("content")?r.data("content"):r.html(),v=r.data("tokens")?r.data("tokens"):null,b="undefined"!=typeof r.data("subtext")?'<small class="text-muted">'+r.data("subtext")+"<\/small>":"",h="undefined"!=typeof r.data("icon")?'<span class="'+u.options.iconBase+" "+r.data("icon")+'"><\/span> ':"",p=this.disabled||"OPTGROUP"===this.parentElement.tagName&&this.parentElement.disabled;if(""!==h&&p&&(h="<span>"+h+"<\/span>"),u.options.hideDisabled&&p)return void f--;if(r.data("content")||(s=h+'<span class="text">'+s+b+"<\/span>"),"OPTGROUP"===this.parentElement.tagName&&r.data("divider")!==!0){if(0===r.index()){o+=1;var y=this.parentElement.label,k="undefined"!=typeof r.parent().data("subtext")?'<small class="text-muted">'+r.parent().data("subtext")+"<\/small>":"",d=r.parent().data("icon")?'<span class="'+u.options.iconBase+" "+r.parent().data("icon")+'"><\/span> ':"",w=" "+this.parentElement.className||"";y=d+'<span class="text">'+y+k+"<\/span>";0!==i&&t.length>0&&(f++,t.push(e("",null,"divider",o+"div")));f++;t.push(e(y,null,"dropdown-header"+w,o))}t.push(e(c(s,"opt "+l+w,a,v),i,"",o))}else r.data("divider")===!0?t.push(e("",i,"divider")):r.data("hidden")===!0?t.push(e(c(s,l,a,v),i,"hidden is-hidden")):(this.previousElementSibling&&"OPTGROUP"===this.previousElementSibling.tagName&&(f++,t.push(e("",null,"divider",o+"div"))),t.push(e(c(s,l,a,v),i)));u.liObj[i]=f}}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),t.join("")},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(t){var o,i=this,r,u,f,e,s;t!==!1&&this.$element.find("option").each(function(n){var t=i.findLis().eq(i.liObj[n]);i.setDisabled(n,this.disabled||"OPTGROUP"===this.parentElement.tagName&&this.parentElement.disabled,t);i.setSelected(n,this.selected,t)});this.tabIndex();r=this.$element.find("option").map(function(){if(this.selected){if(i.options.hideDisabled&&(this.disabled||"OPTGROUP"===this.parentElement.tagName&&this.parentElement.disabled))return!1;var r,t=n(this),u=t.data("icon")&&i.options.showIcon?'<i class="'+i.options.iconBase+" "+t.data("icon")+'"><\/i> ':"";return r=i.options.showSubtext&&t.data("subtext")&&!i.multiple?' <small class="text-muted">'+t.data("subtext")+"<\/small>":"","undefined"!=typeof t.attr("title")?t.attr("title"):t.data("content")&&i.options.showContent?t.data("content"):u+t.html()+r}}).toArray();u=this.multiple?r.join(this.options.multipleSeparator):r[0];this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1&&(f=this.options.selectedTextFormat.split(">"),(f.length>1&&r.length>f[1]||1==f.length&&r.length>=2)&&(o=this.options.hideDisabled?", [disabled]":"",e=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+o).length,s="function"==typeof this.options.countSelectedText?this.options.countSelectedText(r.length,e):this.options.countSelectedText,u=s.replace("{0}",r.length.toString()).replace("{1}",e.toString())));void 0==this.options.title&&(this.options.title=this.$element.attr("title"));"static"==this.options.selectedTextFormat&&(u=this.options.title);u||(u="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText);this.$button.attr("title",n.trim(u.replace(/<[^>]*>?/g,"")));this.$button.children(".filter-option").html(u);this.$element.trigger("rendered.bs.select")},setStyle:function(n,t){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,""));var i=n?n:this.options.style;"add"==t?this.$button.addClass(i):"remove"==t?this.$button.removeClass(i):(this.$button.removeClass(this.options.style),this.$button.addClass(i))},liHeight:function(t){var y;if(t||this.options.size!==!1&&!this.sizeInfo){var e=document.createElement("div"),r=document.createElement("div"),o=document.createElement("ul"),l=document.createElement("li"),p=document.createElement("li"),a=document.createElement("a"),v=document.createElement("span"),s=this.options.header?this.$menu.find(".popover-title")[0].cloneNode(!0):null,u=this.options.liveSearch?document.createElement("div"):null,h=this.options.actionsBox&&this.multiple?this.$menu.find(".bs-actionsbox")[0].cloneNode(!0):null,c=this.options.doneButton&&this.multiple?this.$menu.find(".bs-donebutton")[0].cloneNode(!0):null;(v.className="text",e.className=this.$menu[0].parentNode.className+" open",r.className="dropdown-menu open",o.className="dropdown-menu inner",l.className="divider",v.appendChild(document.createTextNode("Inner text")),a.appendChild(v),p.appendChild(a),o.appendChild(p),o.appendChild(l),s&&r.appendChild(s),u)&&(y=document.createElement("span"),u.className="bs-searchbox",y.className="form-control",u.appendChild(y),r.appendChild(u));h&&r.appendChild(h);r.appendChild(o);c&&r.appendChild(c);e.appendChild(r);document.body.appendChild(e);var b=a.offsetHeight,k=s?s.offsetHeight:0,d=u?u.offsetHeight:0,g=h?h.offsetHeight:0,nt=c?c.offsetHeight:0,tt=n(l).outerHeight(!0),i=getComputedStyle?getComputedStyle(r):!1,f=i?n(r):null,w=parseInt(i?i.paddingTop:f.css("paddingTop"))+parseInt(i?i.paddingBottom:f.css("paddingBottom"))+parseInt(i?i.borderTopWidth:f.css("borderTopWidth"))+parseInt(i?i.borderBottomWidth:f.css("borderBottomWidth")),it=w+parseInt(i?i.marginTop:f.css("marginTop"))+parseInt(i?i.marginBottom:f.css("marginBottom"))+2;document.body.removeChild(e);this.sizeInfo={liHeight:b,headerHeight:k,searchHeight:d,actionsHeight:g,doneButtonHeight:nt,dividerHeight:tt,menuPadding:w,menuExtras:it}}},setSize:function(){var h,d,g;this.findLis();this.liHeight();var i,u,f,o,r=this,t=this.$menu,p=this.$menuInner,c=n(window),nt=this.$newElement[0].offsetHeight,w=this.sizeInfo.liHeight,l=this.sizeInfo.headerHeight,a=this.sizeInfo.searchHeight,v=this.sizeInfo.actionsHeight,y=this.sizeInfo.doneButtonHeight,tt=this.sizeInfo.dividerHeight,s=this.sizeInfo.menuPadding,e=this.sizeInfo.menuExtras,b=this.options.hideDisabled?".disabled":"",k=function(){f=r.$newElement.offset().top-c.scrollTop();o=c.height()-f-nt};(k(),this.options.header&&t.css("padding-top",0),"auto"===this.options.size)?(h=function(){var h,b=function(t,i){return function(r){return i?r.classList?r.classList.contains(t):n(r).hasClass(t):!(r.classList?r.classList.contains(t):n(r).hasClass(t))}},d=r.$menuInner[0].getElementsByTagName("li"),c=Array.prototype.filter?Array.prototype.filter.call(d,b("hidden",!1)):r.$lis.not(".hidden"),g=Array.prototype.filter?Array.prototype.filter.call(c,b("dropdown-header",!0)):c.filter(".dropdown-header");k();i=o-e;r.options.container?(t.data("height")||t.data("height",t.height()),u=t.data("height")):u=t.height();r.options.dropupAuto&&r.$newElement.toggleClass("dropup",f>o&&u>i-e);r.$newElement.hasClass("dropup")&&(i=f-e);h=c.length+g.length>3?3*w+e-2:0;t.css({"max-height":i+"px",overflow:"hidden","min-height":h+l+a+v+y+"px"});p.css({"max-height":i-l-a-v-y-s+"px","overflow-y":"auto","min-height":Math.max(h-s,0)+"px"})},h(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",h),c.off("resize.getSize scroll.getSize").on("resize.getSize scroll.getSize",h)):this.options.size&&"auto"!=this.options.size&&this.$lis.not(b).length>this.options.size&&(d=this.$lis.not(".divider").not(b).children().slice(0,this.options.size).last().parent().index(),g=this.$lis.slice(0,d+1).filter(".divider").length,i=w*this.options.size+g*tt+s,r.options.container?(t.data("height")||t.data("height",t.height()),u=t.data("height")):u=t.height(),r.options.dropupAuto&&this.$newElement.toggleClass("dropup",f>o&&u>i-e),t.css({"max-height":i+l+a+v+y+"px",overflow:"hidden","min-height":""}),p.css({"max-height":i-s+"px","overflow-y":"auto","min-height":""}))},setWidth:function(){if("auto"===this.options.width){this.$menu.css("min-width","0");var n=this.$menu.parent().clone().appendTo("body"),t=this.options.container?this.$newElement.clone().appendTo("body"):n,i=n.children(".dropdown-menu").outerWidth(),r=t.css("width","auto").children("button").outerWidth();n.remove();t.remove();this.$newElement.css("width",Math.max(i,r)+"px")}else"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width",""));this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement.removeClass("fit-width")},selectPosition:function(){var r,u,t=this,i=n("<div />"),f=function(n){i.addClass(n.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass("dropup",n.hasClass("dropup"));r=n.offset();u=n.hasClass("dropup")?0:n[0].offsetHeight;i.css({top:r.top+u,left:r.left,width:n[0].offsetWidth,position:"absolute"})};this.$newElement.on("click",function(){t.isDisabled()||(f(n(this)),i.appendTo(t.options.container),i.toggleClass("open",!n(this).hasClass("open")),i.append(t.$menu))});n(window).on("resize scroll",function(){f(t.$newElement)});this.$element.on("hide.bs.select",function(){t.$menu.data("height",t.$menu.height());i.detach()})},setSelected:function(n,t,i){if(!i)var i=this.findLis().eq(this.liObj[n]);i.toggleClass("selected",t)},setDisabled:function(n,t,i){if(!i)var i=this.findLis().eq(this.liObj[n]);t?i.addClass("disabled").children("a").attr("href","#").attr("tabindex",-1):i.removeClass("disabled").children("a").removeAttr("href").attr("tabindex",0)},isDisabled:function(){return this.$element[0].disabled},checkDisabled:function(){var n=this;this.isDisabled()?(this.$newElement.addClass("disabled"),this.$button.addClass("disabled").attr("tabindex",-1)):(this.$button.hasClass("disabled")&&(this.$newElement.removeClass("disabled"),this.$button.removeClass("disabled")),-1!=this.$button.attr("tabindex")||this.$element.data("tabindex")||this.$button.removeAttr("tabindex"));this.$button.click(function(){return!n.isDisabled()})},tabIndex:function(){this.$element.is("[tabindex]")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex")))},clickListener:function(){var t=this,i=n(document);this.$newElement.on("touchstart.dropdown",".dropdown-menu",function(n){n.stopPropagation()});i.data("spaceSelect",!1);this.$button.on("keyup",function(n){/(32)/.test(n.keyCode.toString(10))&&i.data("spaceSelect")&&(n.preventDefault(),i.data("spaceSelect",!1))});this.$newElement.on("click",function(){t.setSize();t.$element.on("shown.bs.select",function(){var i,n;if(t.options.liveSearch||t.multiple){if(!t.multiple){if(i=t.liObj[t.$element[0].selectedIndex],"number"!=typeof i)return;n=t.$lis.eq(i)[0].offsetTop-t.$menuInner[0].offsetTop;n=n-t.$menuInner[0].offsetHeight/2+t.sizeInfo.liHeight/2;t.$menuInner[0].scrollTop=n}}else t.$menu.find(".selected a").focus()})});this.$menu.on("click","li a",function(i){var s=n(this),e=s.parent().data("originalIndex"),k=t.$element.val(),d=t.$element.prop("selectedIndex"),v,y,b;if(t.multiple&&i.stopPropagation(),i.preventDefault(),!t.isDisabled()&&!s.parent().hasClass("disabled")){var h=t.$element.find("option"),f=h.eq(e),l=f.prop("selected"),a=f.parent("optgroup"),r=t.options.maxOptions,u=a.data("maxOptions")||!1;if(t.multiple){if((f.prop("selected",!l),t.setSelected(e,!l),s.blur(),r!==!1||u!==!1)&&(v=r<h.filter(":selected").length,y=u<a.find("option:selected").length,r&&v||u&&y))if(r&&1==r)h.prop("selected",!1),f.prop("selected",!0),t.$menu.find(".selected").removeClass("selected"),t.setSelected(e,!0);else if(u&&1==u)a.find("option:selected").prop("selected",!1),f.prop("selected",!0),b=s.parent().data("optgroup"),t.$menu.find('[data-optgroup="'+b+'"]').removeClass("selected"),t.setSelected(e,!0);else{var o="function"==typeof t.options.maxOptionsText?t.options.maxOptionsText(r,u):t.options.maxOptionsText,p=o[0].replace("{n}",r),w=o[1].replace("{n}",u),c=n('<div class="notify"><\/div>');o[2]&&(p=p.replace("{var}",o[2][r>1?0:1]),w=w.replace("{var}",o[2][u>1?0:1]));f.prop("selected",!1);t.$menu.append(c);r&&v&&(c.append(n("<div>"+p+"<\/div>")),t.$element.trigger("maxReached.bs.select"));u&&y&&(c.append(n("<div>"+w+"<\/div>")),t.$element.trigger("maxReachedGrp.bs.select"));setTimeout(function(){t.setSelected(e,!1)},10);c.delay(750).fadeOut(300,function(){n(this).remove()})}}else h.prop("selected",!1),f.prop("selected",!0),t.$menu.find(".selected").removeClass("selected"),t.setSelected(e,!0);t.multiple?t.options.liveSearch&&t.$searchbox.focus():t.$button.focus();(k!=t.$element.val()&&t.multiple||d!=t.$element.prop("selectedIndex")&&!t.multiple)&&(t.$element.change(),t.$element.trigger("changed.bs.select",[e,f.prop("selected"),l]))}});this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(i){i.currentTarget==this&&(i.preventDefault(),i.stopPropagation(),t.options.liveSearch&&!n(i.target).hasClass("close")?t.$searchbox.focus():t.$button.focus())});this.$menu.on("click","li.divider, li.dropdown-header",function(n){n.preventDefault();n.stopPropagation();t.options.liveSearch?t.$searchbox.focus():t.$button.focus()});this.$menu.on("click",".popover-title .close",function(){t.$button.click()});this.$searchbox.on("click",function(n){n.stopPropagation()});this.$menu.on("click",".actions-btn",function(i){t.options.liveSearch?t.$searchbox.focus():t.$button.focus();i.preventDefault();i.stopPropagation();n(this).hasClass("bs-select-all")?t.selectAll():t.deselectAll();t.$element.change()});this.$element.change(function(){t.render(!1)})},liveSearchListener:function(){var t=this,u=n('<li class="no-results"><\/li>');this.$newElement.on("click.dropdown.data-api touchstart.dropdown.data-api",function(){t.$menuInner.find(".active").removeClass("active");t.$searchbox.val()&&(t.$searchbox.val(""),t.$lis.not(".is-hidden").removeClass("hidden"),u.parent().length&&u.remove());t.multiple||t.$menuInner.find(".selected").addClass("active");setTimeout(function(){t.$searchbox.focus()},10)});this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(n){n.stopPropagation()});this.$searchbox.on("input propertychange",function(){var f,e;t.$searchbox.val()?(f=t.$lis.not(".is-hidden").removeClass("hidden").children("a"),f=t.options.liveSearchNormalize?f.not(":a"+t._searchStyle()+"("+i(t.$searchbox.val())+")"):f.not(":"+t._searchStyle()+"("+t.$searchbox.val()+")"),f.parent().addClass("hidden"),t.$lis.filter(".dropdown-header").each(function(){var i=n(this),r=i.data("optgroup");0===t.$lis.filter("[data-optgroup="+r+"]").not(i).not(".hidden").length&&(i.addClass("hidden"),t.$lis.filter("[data-optgroup="+r+"div]").addClass("hidden"))}),e=t.$lis.not(".hidden"),e.each(function(t){var i=n(this);i.hasClass("divider")&&(i.index()===e.eq(0).index()||i.index()===e.last().index()||e.eq(t+1).hasClass("divider"))&&i.addClass("hidden")}),t.$lis.not(".hidden, .no-results").length?u.parent().length&&u.remove():(u.parent().length&&u.remove(),u.html(t.options.noneResultsText.replace("{0}",'"'+r(t.$searchbox.val())+'"')).show(),t.$menuInner.append(u))):(t.$lis.not(".is-hidden").removeClass("hidden"),u.parent().length&&u.remove());t.$lis.filter(".active").removeClass("active");t.$lis.not(".hidden, .divider, .dropdown-header").eq(0).addClass("active").children("a").focus();n(this).focus()})},_searchStyle:function(){var n="icontains";switch(this.options.liveSearchStyle){case"begins":case"startsWith":n="ibegins"}return n},val:function(n){return"undefined"!=typeof n?(this.$element.val(n),this.render(),this.$element):this.$element.val()},selectAll:function(){this.findLis();this.$element.find("option:enabled").not("[data-divider], [data-hidden]").prop("selected",!0);this.$lis.not(".divider, .dropdown-header, .disabled, .hidden").addClass("selected");this.render(!1)},deselectAll:function(){this.findLis();this.$element.find("option:enabled").not("[data-divider], [data-hidden]").prop("selected",!1);this.$lis.not(".divider, .dropdown-header, .disabled, .hidden").removeClass("selected");this.render(!1)},keydown:function(t){var u,f,h,c,l,p,w,k,s,e=n(this),a=e.is("input")?e.parent().parent():e.parent(),r=a.data("this"),v=":not(.disabled, .hidden, .dropdown-header, .divider)",b={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},o,g,y,d;(r.options.liveSearch&&(a=e.parent().parent()),r.options.container&&(a=r.$menu),u=n("[role=menu] li a",a),s=r.$menu.parent().hasClass("open"),!s&&(t.keyCode>=48&&t.keyCode<=57||event.keyCode>=65&&event.keyCode<=90)&&(r.options.container?r.$newElement.trigger("click"):(r.setSize(),r.$menu.parent().addClass("open"),s=!0),r.$searchbox.focus()),r.options.liveSearch&&(/(^9$|27)/.test(t.keyCode.toString(10))&&s&&0===r.$menu.find(".active").length&&(t.preventDefault(),r.$menu.parent().removeClass("open"),r.options.container&&r.$newElement.removeClass("open"),r.$button.focus()),u=n("[role=menu] li:not(.disabled, .hidden, .dropdown-header, .divider)",a),e.val()||/(38|40)/.test(t.keyCode.toString(10))||0===u.filter(".active").length&&(u=r.$newElement.find("li"),u=r.options.liveSearchNormalize?u.filter(":a"+r._searchStyle()+"("+i(b[t.keyCode])+")"):u.filter(":"+r._searchStyle()+"("+b[t.keyCode]+")"))),u.length)&&(/(38|40)/.test(t.keyCode.toString(10))?(f=u.index(u.filter(":focus")),c=u.parent(v).first().data("originalIndex"),l=u.parent(v).last().data("originalIndex"),h=u.eq(f).parent().nextAll(v).eq(0).data("originalIndex"),p=u.eq(f).parent().prevAll(v).eq(0).data("originalIndex"),w=u.eq(h).parent().prevAll(v).eq(0).data("originalIndex"),r.options.liveSearch&&(u.each(function(t){n(this).hasClass("disabled")||n(this).data("index",t)}),f=u.index(u.filter(".active")),c=u.first().data("index"),l=u.last().data("index"),h=u.eq(f).nextAll().eq(0).data("index"),p=u.eq(f).prevAll().eq(0).data("index"),w=u.eq(h).prevAll().eq(0).data("index")),k=e.data("prevIndex"),38==t.keyCode?(r.options.liveSearch&&(f-=1),f!=w&&f>p&&(f=p),c>f&&(f=c),f==k&&(f=l)):40==t.keyCode&&(r.options.liveSearch&&(f+=1),-1==f&&(f=0),f!=w&&h>f&&(f=h),f>l&&(f=l),f==k&&(f=c)),e.data("prevIndex",f),r.options.liveSearch?(t.preventDefault(),e.hasClass("dropdown-toggle")||(u.removeClass("active").eq(f).addClass("active").children("a").focus(),e.focus())):u.eq(f).focus()):e.is("input")||(y=[],u.each(function(){n(this).parent().hasClass("disabled")||n.trim(n(this).text().toLowerCase()).substring(0,1)==b[t.keyCode]&&y.push(n(this).parent().index())}),o=n(document).data("keycount"),o++,n(document).data("keycount",o),g=n.trim(n(":focus").text().toLowerCase()).substring(0,1),g!=b[t.keyCode]?(o=1,n(document).data("keycount",o)):o>=y.length&&(n(document).data("keycount",0),o>y.length&&(o=1)),u.eq(y[o-1]).focus()),(/(13|32)/.test(t.keyCode.toString(10))||/(^9$)/.test(t.keyCode.toString(10))&&r.options.selectOnTab)&&s&&((/(32)/.test(t.keyCode.toString(10))||t.preventDefault(),r.options.liveSearch)?/(32)/.test(t.keyCode.toString(10))||(r.$menu.find(".active a").click(),e.focus()):(d=n(":focus"),d.click(),d.focus(),t.preventDefault(),n(document).data("spaceSelect",!0)),n(document).data("keycount",0)),(/(^9$|27)/.test(t.keyCode.toString(10))&&s&&(r.multiple||r.options.liveSearch)||/(27)/.test(t.keyCode.toString(10))&&!s)&&(r.$menu.parent().removeClass("open"),r.options.container&&r.$newElement.removeClass("open"),r.$button.focus()))},mobile:function(){this.$element.addClass("mobile-device").appendTo(this.$newElement);this.options.container&&this.$menu.hide()},refresh:function(){this.$lis=null;this.reloadLi();this.render();this.checkDisabled();this.liHeight(!0);this.setStyle();this.setWidth();this.$lis&&this.$searchbox.trigger("propertychange");this.$element.trigger("refreshed.bs.select")},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove();this.$element.remove()}};f=n.fn.selectpicker;n.fn.selectpicker=u;n.fn.selectpicker.Constructor=t;n.fn.selectpicker.noConflict=function(){return n.fn.selectpicker=f,this};n(document).data("keycount",0).on("keydown",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input',t.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input',function(n){n.stopPropagation()});n(window).on("load.bs.select.data-api",function(){n(".selectpicker").each(function(){var t=n(this);u.call(t,t.data())})})}(jQuery)}),function(n,t){typeof exports=="object"&&typeof module!="undefined"?module.exports=t():typeof define=="function"&&define.amd?define(t):(n=n||self,n.Swiper=t())}(this,function(){"use strict";function t(n,t){var s=[],u=0,h,c,e,o;if(n&&!t&&n instanceof f)return n;if(n)if(typeof n=="string")if(e=n.trim(),e.indexOf("<")>=0&&e.indexOf(">")>=0)for(o="div",e.indexOf("<li")===0&&(o="ul"),e.indexOf("<tr")===0&&(o="tbody"),(e.indexOf("<td")===0||e.indexOf("<th")===0)&&(o="tr"),e.indexOf("<tbody")===0&&(o="table"),e.indexOf("<option")===0&&(o="select"),c=r.createElement(o),c.innerHTML=e,u=0;u<c.childNodes.length;u+=1)s.push(c.childNodes[u]);else for(h=t||n[0]!=="#"||n.match(/[ .<>:~]/)?(t||r).querySelectorAll(n.trim()):[r.getElementById(n.trim().split("#")[1])],u=0;u<h.length;u+=1)h[u]&&s.push(h[u]);else if(n.nodeType||n===i||n===r)s.push(n);else if(n.length>0&&n[0].nodeType)for(u=0;u<n.length;u+=1)s.push(n[u]);return new f(s)}function g(n){for(var i=[],t=0;t<n.length;t+=1)i.indexOf(n[t])===-1&&i.push(n[t]);return i}function oi(n){var r,i,t;if(typeof n=="undefined")return this;for(r=n.split(" "),i=0;i<r.length;i+=1)for(t=0;t<this.length;t+=1)typeof this[t]!="undefined"&&typeof this[t].classList!="undefined"&&this[t].classList.add(r[i]);return this}function si(n){for(var t,r=n.split(" "),i=0;i<r.length;i+=1)for(t=0;t<this.length;t+=1)typeof this[t]!="undefined"&&typeof this[t].classList!="undefined"&&this[t].classList.remove(r[i]);return this}function hi(n){return this[0]?this[0].classList.contains(n):!1}function ci(n){for(var t,r=n.split(" "),i=0;i<r.length;i+=1)for(t=0;t<this.length;t+=1)typeof this[t]!="undefined"&&typeof this[t].classList!="undefined"&&this[t].classList.toggle(r[i]);return this}function li(n,t){var u=arguments,i,r;if(arguments.length===1&&typeof n=="string")return this[0]?this[0].getAttribute(n):undefined;for(i=0;i<this.length;i+=1)if(u.length===2)this[i].setAttribute(n,t);else for(r in n)this[i][r]=n[r],this[i].setAttribute(r,n[r]);return this}function ai(n){for(var t=0;t<this.length;t+=1)this[t].removeAttribute(n);return this}function vi(n,t){var i,u,r;if(typeof t=="undefined")return(i=this[0],i)?i.dom7ElementDataStorage&&n in i.dom7ElementDataStorage?i.dom7ElementDataStorage[n]:(u=i.getAttribute("data-"+n),u)?u:undefined:undefined;for(r=0;r<this.length;r+=1)i=this[r],i.dom7ElementDataStorage||(i.dom7ElementDataStorage={}),i.dom7ElementDataStorage[n]=t;return this}function yi(n){for(var i,t=0;t<this.length;t+=1)i=this[t].style,i.webkitTransform=n,i.transform=n;return this}function pi(n){var t,i;for(typeof n!="string"&&(n=n+"ms"),t=0;t<this.length;t+=1)i=this[t].style,i.webkitTransitionDuration=n,i.transitionDuration=n;return this}function wi(){function y(n){var f=n.target,i,e,r;if(f)if(i=n.target.dom7EventData||[],i.indexOf(n)<0&&i.unshift(n),t(f).is(c))u.apply(f,i);else for(e=t(f).parents(),r=0;r<e.length;r+=1)t(e[r]).is(c)&&u.apply(e[r],i)}function p(n){var t=n&&n.target?n.target.dom7EventData||[]:[];t.indexOf(n)<0&&t.unshift(n);u.apply(this,t)}for(var h,r=[],a=arguments.length,e,i,l,n,o,s;a--;)r[a]=arguments[a];var v=r[0],c=r[1],u=r[2],f=r[3];for(typeof r[1]=="function"&&(h=r,v=h[0],u=h[1],f=h[2],c=undefined),f||(f=!1),e=v.split(" "),l=0;l<this.length;l+=1)if(n=this[l],c)for(i=0;i<e.length;i+=1)s=e[i],n.dom7LiveListeners||(n.dom7LiveListeners={}),n.dom7LiveListeners[s]||(n.dom7LiveListeners[s]=[]),n.dom7LiveListeners[s].push({listener:u,proxyListener:y}),n.addEventListener(s,y,f);else for(i=0;i<e.length;i+=1)o=e[i],n.dom7Listeners||(n.dom7Listeners={}),n.dom7Listeners[o]||(n.dom7Listeners[o]=[]),n.dom7Listeners[o].push({listener:u,proxyListener:p}),n.addEventListener(o,p,f);return this}function bi(){for(var s,r=[],l=arguments.length,v,h,o,c,t,n,u,i;l--;)r[l]=arguments[l];var y=r[0],a=r[1],f=r[2],e=r[3];for(typeof r[1]=="function"&&(s=r,y=s[0],f=s[1],e=s[2],a=undefined),e||(e=!1),v=y.split(" "),h=0;h<v.length;h+=1)for(o=v[h],c=0;c<this.length;c+=1)if(t=this[c],n=void 0,!a&&t.dom7Listeners?n=t.dom7Listeners[o]:a&&t.dom7LiveListeners&&(n=t.dom7LiveListeners[o]),n&&n.length)for(u=n.length-1;u>=0;u-=1)i=n[u],f&&i.listener===f?(t.removeEventListener(o,i.proxyListener,e),n.splice(u,1)):f&&i.listener&&i.listener.dom7proxy&&i.listener.dom7proxy===f?(t.removeEventListener(o,i.proxyListener,e),n.splice(u,1)):f||(t.removeEventListener(o,i.proxyListener,e),n.splice(u,1));return this}function ki(){for(var u=[],o=arguments.length,s,h,f,c,e,t,n;o--;)u[o]=arguments[o];for(s=u[0].split(" "),h=u[1],f=0;f<s.length;f+=1)for(c=s[f],e=0;e<this.length;e+=1){t=this[e];n=void 0;try{n=new i.CustomEvent(c,{detail:h,bubbles:!0,cancelable:!0})}catch(l){n=r.createEvent("Event");n.initEvent(c,!0,!0);n.detail=h}t.dom7EventData=u.filter(function(n,t){return t>0});t.dispatchEvent(n);t.dom7EventData=[];delete t.dom7EventData}return this}function di(n){function u(f){if(f.target===this)for(n.call(this,f),t=0;t<i.length;t+=1)r.off(i[t],u)}var i=["webkitTransitionEnd","transitionend"],r=this,t;if(n)for(t=0;t<i.length;t+=1)r.on(i[t],u);return this}function gi(n){if(this.length>0){if(n){var t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null}function nr(n){if(this.length>0){if(n){var t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null}function tr(){if(this.length>0){var n=this[0],t=n.getBoundingClientRect(),u=r.body,f=n.clientTop||u.clientTop||0,e=n.clientLeft||u.clientLeft||0,o=n===i?i.scrollY:n.scrollTop,s=n===i?i.scrollX:n.scrollLeft;return{top:t.top+o-f,left:t.left+s-e}}return null}function ir(){return this[0]?i.getComputedStyle(this[0],null):{}}function rr(n,t){var r,u;if(arguments.length===1)if(typeof n=="string"){if(this[0])return i.getComputedStyle(this[0],null).getPropertyValue(n)}else{for(r=0;r<this.length;r+=1)for(u in n)this[r].style[u]=n[u];return this}if(arguments.length===2&&typeof n=="string"){for(r=0;r<this.length;r+=1)this[r].style[n]=t;return this}return this}function ur(n){if(!n)return this;for(var t=0;t<this.length;t+=1)if(n.call(this[t],t,this[t])===!1)return this;return this}function fr(n){for(var r=[],i=this,t=0;t<i.length;t+=1)n.call(i[t],t,i[t])&&r.push(i[t]);return new f(r)}function er(n){if(typeof n=="undefined")return this[0]?this[0].innerHTML:undefined;for(var t=0;t<this.length;t+=1)this[t].innerHTML=n;return this}function or(n){if(typeof n=="undefined")return this[0]?this[0].textContent.trim():null;for(var t=0;t<this.length;t+=1)this[t].textContent=n;return this}function sr(n){var u=this[0],o,e;if(!u||typeof n=="undefined")return!1;if(typeof n=="string"){if(u.matches)return u.matches(n);if(u.webkitMatchesSelector)return u.webkitMatchesSelector(n);if(u.msMatchesSelector)return u.msMatchesSelector(n);for(o=t(n),e=0;e<o.length;e+=1)if(o[e]===u)return!0;return!1}if(n===r)return u===r;if(n===i)return u===i;if(n.nodeType||n instanceof f){for(o=n.nodeType?[n]:n,e=0;e<o.length;e+=1)if(o[e]===u)return!0;return!1}return!1}function hr(){var n=this[0],t;if(n){for(t=0;(n=n.previousSibling)!==null;)n.nodeType===1&&(t+=1);return t}return undefined}function cr(n){if(typeof n=="undefined")return this;var i=this.length,t;return n>i-1?new f([]):n<0?(t=i+n,t<0)?new f([]):new f([this[t]]):new f([this[n]])}function lr(){for(var o=[],s=arguments.length,n,i,t,u,e;s--;)o[s]=arguments[s];for(i=0;i<o.length;i+=1)for(n=o[i],t=0;t<this.length;t+=1)if(typeof n=="string")for(u=r.createElement("div"),u.innerHTML=n;u.firstChild;)this[t].appendChild(u.firstChild);else if(n instanceof f)for(e=0;e<n.length;e+=1)this[t].appendChild(n[e]);else this[t].appendChild(n);return this}function ar(n){for(var i,u,t=0;t<this.length;t+=1)if(typeof n=="string")for(u=r.createElement("div"),u.innerHTML=n,i=u.childNodes.length-1;i>=0;i-=1)this[t].insertBefore(u.childNodes[i],this[t].childNodes[0]);else if(n instanceof f)for(i=0;i<n.length;i+=1)this[t].insertBefore(n[i],this[t].childNodes[0]);else this[t].insertBefore(n,this[t].childNodes[0]);return this}function vr(n){return this.length>0?n?this[0].nextElementSibling&&t(this[0].nextElementSibling).is(n)?new f([this[0].nextElementSibling]):new f([]):this[0].nextElementSibling?new f([this[0].nextElementSibling]):new f([]):new f([])}function yr(n){var u=[],r=this[0],i;if(!r)return new f([]);while(r.nextElementSibling)i=r.nextElementSibling,n?t(i).is(n)&&u.push(i):u.push(i),r=i;return new f(u)}function pr(n){if(this.length>0){var i=this[0];return n?i.previousElementSibling&&t(i.previousElementSibling).is(n)?new f([i.previousElementSibling]):new f([]):i.previousElementSibling?new f([i.previousElementSibling]):new f([])}return new f([])}function wr(n){var u=[],r=this[0],i;if(!r)return new f([]);while(r.previousElementSibling)i=r.previousElementSibling,n?t(i).is(n)&&u.push(i):u.push(i),r=i;return new f(u)}function br(n){for(var r=[],i=0;i<this.length;i+=1)this[i].parentNode!==null&&(n?t(this[i].parentNode).is(n)&&r.push(this[i].parentNode):r.push(this[i].parentNode));return t(g(r))}function kr(n){for(var i,r=[],u=0;u<this.length;u+=1)for(i=this[u].parentNode;i;)n?t(i).is(n)&&r.push(i):r.push(i),i=i.parentNode;return t(g(r))}function dr(n){var t=this;return typeof n=="undefined"?new f([]):(t.is(n)||(t=t.parents(n).eq(0)),t)}function gr(n){for(var r,t,u=[],i=0;i<this.length;i+=1)for(r=this[i].querySelectorAll(n),t=0;t<r.length;t+=1)u.push(r[t]);return new f(u)}function nu(n){for(var r,i,u=[],e=0;e<this.length;e+=1)for(r=this[e].childNodes,i=0;i<r.length;i+=1)n?r[i].nodeType===1&&t(r[i]).is(n)&&u.push(r[i]):r[i].nodeType===1&&u.push(r[i]);return new f(g(u))}function tu(){for(var n=0;n<this.length;n+=1)this[n].parentNode&&this[n].parentNode.removeChild(this[n]);return this}function iu(){for(var u=[],f=arguments.length,n,i,r,e;f--;)u[f]=arguments[f];for(n=this,i=0;i<u.length;i+=1)for(e=t(u[i]),r=0;r<e.length;r+=1)n[n.length]=e[r],n.length+=1;return n}function ru(){var t=this,i,r,u=t.$el;(i=typeof t.params.width!="undefined"?t.params.width:u[0].clientWidth,r=typeof t.params.height!="undefined"?t.params.height:u[0].clientHeight,i===0&&t.isHorizontal()||r===0&&t.isVertical())||(i=i-parseInt(u.css("padding-left"),10)-parseInt(u.css("padding-right"),10),r=r-parseInt(u.css("padding-top"),10)-parseInt(u.css("padding-bottom"),10),n.extend(t,{width:i,height:r,size:t.isHorizontal()?i:r}))}function uu(){function vt(n){return t.cssMode?n===s.length-1?!1:!0:!0}var r=this,t=r.params,b=r.$wrapperEl,l=r.size,at=r.rtlTranslate,li=r.wrongRTL,dt=r.virtual&&t.virtual.enabled,ai=dt?r.virtual.slides.length:r.slides.length,s=b.children("."+r.params.slideClass),y=dt?r.virtual.slides.length:s.length,u=[],k=[],ft=[],et=t.slidesOffsetBefore,tt,d,o,c,nt,it,ht,rt,ct,lt,bt,ut,kt;typeof et=="function"&&(et=t.slidesOffsetBefore.call(r));tt=t.slidesOffsetAfter;typeof tt=="function"&&(tt=t.slidesOffsetAfter.call(r));var vi=r.snapGrid.length,yi=r.snapGrid.length,h=t.spaceBetween,f=-et,yt=0,ot=0;if(typeof l!="undefined"){typeof h=="string"&&h.indexOf("%")>=0&&(h=parseFloat(h.replace("%",""))/100*l);r.virtualSize=-h;at?s.css({marginLeft:"",marginTop:""}):s.css({marginRight:"",marginBottom:""});t.slidesPerColumn>1&&(d=Math.floor(y/t.slidesPerColumn)===y/r.params.slidesPerColumn?y:Math.ceil(y/t.slidesPerColumn)*t.slidesPerColumn,t.slidesPerView!=="auto"&&t.slidesPerColumnFill==="row"&&(d=Math.max(d,t.slidesPerView*t.slidesPerColumn)));var e,p=t.slidesPerColumn,gt=d/p,ni=Math.floor(y/t.slidesPerColumn);for(o=0;o<y;o+=1){if(e=0,c=s.eq(o),t.slidesPerColumn>1){var g=void 0,w=void 0,v=void 0;if(t.slidesPerColumnFill==="row"&&t.slidesPerGroup>1){var st=Math.floor(o/(t.slidesPerGroup*t.slidesPerColumn)),ti=o-t.slidesPerColumn*t.slidesPerGroup*st,ii=st===0?t.slidesPerGroup:Math.min(Math.ceil((y-st*p*t.slidesPerGroup)/p),t.slidesPerGroup);v=Math.floor(ti/ii);w=ti-v*ii+st*t.slidesPerGroup;g=w+v*d/p;c.css({"-webkit-box-ordinal-group":g,"-moz-box-ordinal-group":g,"-ms-flex-order":g,"-webkit-order":g,order:g})}else t.slidesPerColumnFill==="column"?(w=Math.floor(o/p),v=o-w*p,(w>ni||w===ni&&v===p-1)&&(v+=1,v>=p&&(v=0,w+=1))):(v=Math.floor(o/gt),w=o-v*gt);c.css("margin-"+(r.isHorizontal()?"top":"left"),v!==0&&t.spaceBetween&&t.spaceBetween+"px")}if(c.css("display")!=="none"){if(t.slidesPerView==="auto"){var a=i.getComputedStyle(c[0],null),pt=c[0].style.transform,wt=c[0].style.webkitTransform;if(pt&&(c[0].style.transform="none"),wt&&(c[0].style.webkitTransform="none"),t.roundLengths)e=r.isHorizontal()?c.outerWidth(!0):c.outerHeight(!0);else if(r.isHorizontal()){var ri=parseFloat(a.getPropertyValue("width")),pi=parseFloat(a.getPropertyValue("padding-left")),wi=parseFloat(a.getPropertyValue("padding-right")),ui=parseFloat(a.getPropertyValue("margin-left")),fi=parseFloat(a.getPropertyValue("margin-right")),ei=a.getPropertyValue("box-sizing");e=ei&&ei==="border-box"?ri+ui+fi:ri+pi+wi+ui+fi}else{var oi=parseFloat(a.getPropertyValue("height")),bi=parseFloat(a.getPropertyValue("padding-top")),ki=parseFloat(a.getPropertyValue("padding-bottom")),si=parseFloat(a.getPropertyValue("margin-top")),hi=parseFloat(a.getPropertyValue("margin-bottom")),ci=a.getPropertyValue("box-sizing");e=ci&&ci==="border-box"?oi+si+hi:oi+bi+ki+si+hi}pt&&(c[0].style.transform=pt);wt&&(c[0].style.webkitTransform=wt);t.roundLengths&&(e=Math.floor(e))}else e=(l-(t.slidesPerView-1)*h)/t.slidesPerView,t.roundLengths&&(e=Math.floor(e)),s[o]&&(r.isHorizontal()?s[o].style.width=e+"px":s[o].style.height=e+"px");s[o]&&(s[o].swiperSlideSize=e);ft.push(e);t.centeredSlides?(f=f+e/2+yt/2+h,yt===0&&o!==0&&(f=f-l/2-h),o===0&&(f=f-l/2-h),Math.abs(f)<1/1e3&&(f=0),t.roundLengths&&(f=Math.floor(f)),ot%t.slidesPerGroup==0&&u.push(f),k.push(f)):(t.roundLengths&&(f=Math.floor(f)),(ot-Math.min(r.params.slidesPerGroupSkip,ot))%r.params.slidesPerGroup==0&&u.push(f),k.push(f),f=f+e+h);r.virtualSize+=e+h;yt=e;ot+=1}}if(r.virtualSize=Math.max(r.virtualSize,l)+tt,at&&li&&(t.effect==="slide"||t.effect==="coverflow")&&b.css({width:r.virtualSize+t.spaceBetween+"px"}),t.setWrapperSize&&(r.isHorizontal()?b.css({width:r.virtualSize+t.spaceBetween+"px"}):b.css({height:r.virtualSize+t.spaceBetween+"px"})),t.slidesPerColumn>1&&(r.virtualSize=(e+t.spaceBetween)*d,r.virtualSize=Math.ceil(r.virtualSize/t.slidesPerColumn)-t.spaceBetween,r.isHorizontal()?b.css({width:r.virtualSize+t.spaceBetween+"px"}):b.css({height:r.virtualSize+t.spaceBetween+"px"}),t.centeredSlides)){for(nt=[],it=0;it<u.length;it+=1)ht=u[it],t.roundLengths&&(ht=Math.floor(ht)),u[it]<r.virtualSize+u[0]&&nt.push(ht);u=nt}if(!t.centeredSlides){for(nt=[],rt=0;rt<u.length;rt+=1)ct=u[rt],t.roundLengths&&(ct=Math.floor(ct)),u[rt]<=r.virtualSize-l&&nt.push(ct);u=nt;Math.floor(r.virtualSize-l)-Math.floor(u[u.length-1])>1&&u.push(r.virtualSize-l)}u.length===0&&(u=[0]);t.spaceBetween!==0&&(r.isHorizontal()?at?s.filter(vt).css({marginLeft:h+"px"}):s.filter(vt).css({marginRight:h+"px"}):s.filter(vt).css({marginBottom:h+"px"}));t.centeredSlides&&t.centeredSlidesBounds&&(lt=0,ft.forEach(function(n){lt+=n+(t.spaceBetween?t.spaceBetween:0)}),lt-=t.spaceBetween,bt=lt-l,u=u.map(function(n){return n<0?-et:n>bt?bt+tt:n}));t.centerInsufficientSlides&&(ut=0,ft.forEach(function(n){ut+=n+(t.spaceBetween?t.spaceBetween:0)}),ut-=t.spaceBetween,ut<l&&(kt=(l-ut)/2,u.forEach(function(n,t){u[t]=n-kt}),k.forEach(function(n,t){k[t]=n+kt})));n.extend(r,{slides:s,snapGrid:u,slidesGrid:k,slidesSizesGrid:ft});y!==ai&&r.emit("slidesLengthChange");u.length!==vi&&(r.params.watchOverflow&&r.checkOverflow(),r.emit("snapGridLengthChange"));k.length!==yi&&r.emit("slidesGridLengthChange");(t.watchSlidesProgress||t.watchSlidesVisibility)&&r.updateSlidesOffset()}}function fu(n){var t=this,r=[],u=0,i,f,e;if(typeof n=="number"?t.setTransition(n):n===!0&&t.setTransition(t.params.speed),t.params.slidesPerView!=="auto"&&t.params.slidesPerView>1)if(t.params.centeredSlides)r.push.apply(r,t.visibleSlides);else for(i=0;i<Math.ceil(t.params.slidesPerView);i+=1){if(f=t.activeIndex+i,f>t.slides.length)break;r.push(t.slides.eq(f)[0])}else r.push(t.slides.eq(t.activeIndex)[0]);for(i=0;i<r.length;i+=1)typeof r[i]!="undefined"&&(e=r[i].offsetHeight,u=e>u?e:u);u&&t.$wrapperEl.css("height",u+"px")}function eu(){for(var i=this,t=i.slides,n=0;n<t.length;n+=1)t[n].swiperSlideOffset=i.isHorizontal()?t[n].offsetLeft:t[n].offsetTop}function ou(n){var o,u,e,h;n===void 0&&(n=this&&this.translate||0);var i=this,r=i.params,f=i.slides,l=i.rtlTranslate;if(f.length!==0){for(typeof f[0].swiperSlideOffset=="undefined"&&i.updateSlidesOffset(),o=-n,l&&(o=n),f.removeClass(r.slideVisibleClass),i.visibleSlidesIndexes=[],i.visibleSlides=[],u=0;u<f.length;u+=1){if(e=f[u],h=(o+(r.centeredSlides?i.minTranslate():0)-e.swiperSlideOffset)/(e.swiperSlideSize+r.spaceBetween),r.watchSlidesVisibility||r.centeredSlides&&r.autoHeight){var s=-(o-e.swiperSlideOffset),c=s+i.slidesSizesGrid[u],a=s>=0&&s<i.size-1||c>1&&c<=i.size||s<=0&&c>=i.size;a&&(i.visibleSlides.push(e),i.visibleSlidesIndexes.push(u),f.eq(u).addClass(r.slideVisibleClass))}e.progress=l?-h:h}i.visibleSlides=t(i.visibleSlides)}}function su(t){var i=this,o;typeof t=="undefined"&&(o=i.rtlTranslate?-1:1,t=i&&i.translate&&i.translate*o||0);var e=i.params,s=i.maxTranslate()-i.minTranslate(),r=i.progress,u=i.isBeginning,f=i.isEnd,h=u,c=f;s===0?(r=0,u=!0,f=!0):(r=(t-i.minTranslate())/s,u=r<=0,f=r>=1);n.extend(i,{progress:r,isBeginning:u,isEnd:f});(e.watchSlidesProgress||e.watchSlidesVisibility||e.centeredSlides&&e.autoHeight)&&i.updateSlidesProgress(t);u&&!h&&i.emit("reachBeginning toEdge");f&&!c&&i.emit("reachEnd toEdge");(h&&!u||c&&!f)&&i.emit("fromEdge");i.emit("progress",r)}function hu(){var t=this,e=t.slides,n=t.params,u=t.$wrapperEl,o=t.activeIndex,s=t.realIndex,h=t.virtual&&n.virtual.enabled,f,i,r;e.removeClass(n.slideActiveClass+" "+n.slideNextClass+" "+n.slidePrevClass+" "+n.slideDuplicateActiveClass+" "+n.slideDuplicateNextClass+" "+n.slideDuplicatePrevClass);f=h?t.$wrapperEl.find("."+n.slideClass+'[data-swiper-slide-index="'+o+'"]'):e.eq(o);f.addClass(n.slideActiveClass);n.loop&&(f.hasClass(n.slideDuplicateClass)?u.children("."+n.slideClass+":not(."+n.slideDuplicateClass+')[data-swiper-slide-index="'+s+'"]').addClass(n.slideDuplicateActiveClass):u.children("."+n.slideClass+"."+n.slideDuplicateClass+'[data-swiper-slide-index="'+s+'"]').addClass(n.slideDuplicateActiveClass));i=f.nextAll("."+n.slideClass).eq(0).addClass(n.slideNextClass);n.loop&&i.length===0&&(i=e.eq(0),i.addClass(n.slideNextClass));r=f.prevAll("."+n.slideClass).eq(0).addClass(n.slidePrevClass);n.loop&&r.length===0&&(r=e.eq(-1),r.addClass(n.slidePrevClass));n.loop&&(i.hasClass(n.slideDuplicateClass)?u.children("."+n.slideClass+":not(."+n.slideDuplicateClass+')[data-swiper-slide-index="'+i.attr("data-swiper-slide-index")+'"]').addClass(n.slideDuplicateNextClass):u.children("."+n.slideClass+"."+n.slideDuplicateClass+'[data-swiper-slide-index="'+i.attr("data-swiper-slide-index")+'"]').addClass(n.slideDuplicateNextClass),r.hasClass(n.slideDuplicateClass)?u.children("."+n.slideClass+":not(."+n.slideDuplicateClass+')[data-swiper-slide-index="'+r.attr("data-swiper-slide-index")+'"]').addClass(n.slideDuplicatePrevClass):u.children("."+n.slideClass+"."+n.slideDuplicateClass+'[data-swiper-slide-index="'+r.attr("data-swiper-slide-index")+'"]').addClass(n.slideDuplicatePrevClass))}function cu(t){var i=this,e=i.rtlTranslate?i.translate:-i.translate,f=i.slidesGrid,s=i.snapGrid,h=i.params,a=i.activeIndex,v=i.realIndex,y=i.snapIndex,u=t,o,r,c,l;if(typeof u=="undefined"){for(r=0;r<f.length;r+=1)typeof f[r+1]!="undefined"?e>=f[r]&&e<f[r+1]-(f[r+1]-f[r])/2?u=r:e>=f[r]&&e<f[r+1]&&(u=r+1):e>=f[r]&&(u=r);h.normalizeSlideIndex&&(u<0||typeof u=="undefined")&&(u=0)}if(s.indexOf(e)>=0?o=s.indexOf(e):(c=Math.min(h.slidesPerGroupSkip,u),o=c+Math.floor((u-c)/h.slidesPerGroup)),o>=s.length&&(o=s.length-1),u===a){o!==y&&(i.snapIndex=o,i.emit("snapIndexChange"));return}l=parseInt(i.slides.eq(u).attr("data-swiper-slide-index")||u,10);n.extend(i,{snapIndex:o,realIndex:l,previousIndex:a,activeIndex:u});i.emit("activeIndexChange");i.emit("snapIndexChange");v!==l&&i.emit("realIndexChange");(i.initialized||i.runCallbacksOnInit)&&i.emit("slideChange")}function lu(n){var i=this,f=i.params,r=t(n.target).closest("."+f.slideClass)[0],e=!1,u;if(r)for(u=0;u<i.slides.length;u+=1)i.slides[u]===r&&(e=!0);if(r&&e)i.clickedSlide=r,i.clickedIndex=i.virtual&&i.params.virtual.enabled?parseInt(t(r).attr("data-swiper-slide-index"),10):t(r).index();else{i.clickedSlide=undefined;i.clickedIndex=undefined;return}f.slideToClickedSlide&&i.clickedIndex!==undefined&&i.clickedIndex!==i.activeIndex&&i.slideToClickedSlide()}function au(t){var r;t===void 0&&(t=this.isHorizontal()?"x":"y");var i=this,f=i.params,e=i.rtlTranslate,u=i.translate,o=i.$wrapperEl;return f.virtualTranslate?e?-u:u:f.cssMode?u:(r=n.getTranslate(o[0],t),e&&(r=-r),r||0)}function vu(n,t){var i=this,s=i.rtlTranslate,f=i.params,h=i.$wrapperEl,c=i.wrapperEl,l=i.progress,r=0,u=0,o,e;i.isHorizontal()?r=s?-n:n:u=n;f.roundLengths&&(r=Math.floor(r),u=Math.floor(u));f.cssMode?c[i.isHorizontal()?"scrollLeft":"scrollTop"]=i.isHorizontal()?-r:-u:f.virtualTranslate||h.transform("translate3d("+r+"px, "+u+"px, 0px)");i.previousTranslate=i.translate;i.translate=i.isHorizontal()?r:u;e=i.maxTranslate()-i.minTranslate();o=e===0?0:(n-i.minTranslate())/e;o!==l&&i.updateProgress(n);i.emit("setTranslate",i.translate,t)}function yu(){return-this.snapGrid[0]}function pu(){return-this.snapGrid[this.snapGrid.length-1]}function wu(n,t,i,r,u){var o,c,l,e,h;n===void 0&&(n=0);t===void 0&&(t=this.params.speed);i===void 0&&(i=!0);r===void 0&&(r=!0);var f=this,a=f.params,s=f.wrapperEl;return f.animating&&a.preventInteractionOnTransition?!1:(c=f.minTranslate(),l=f.maxTranslate(),e=r&&n>c?c:r&&n<l?l:n,f.updateProgress(e),a.cssMode)?(h=f.isHorizontal(),t===0?s[h?"scrollLeft":"scrollTop"]=-e:s.scrollTo?s.scrollTo((o={},o[h?"left":"top"]=-e,o.behavior="smooth",o)):s[h?"scrollLeft":"scrollTop"]=-e,!0):(t===0?(f.setTransition(0),f.setTranslate(e),i&&(f.emit("beforeTransitionStart",t,u),f.emit("transitionEnd"))):(f.setTransition(t),f.setTranslate(e),i&&(f.emit("beforeTransitionStart",t,u),f.emit("transitionStart")),f.animating||(f.animating=!0,f.onTranslateToWrapperTransitionEnd||(f.onTranslateToWrapperTransitionEnd=function(n){f&&!f.destroyed&&n.target===this&&(f.$wrapperEl[0].removeEventListener("transitionend",f.onTranslateToWrapperTransitionEnd),f.$wrapperEl[0].removeEventListener("webkitTransitionEnd",f.onTranslateToWrapperTransitionEnd),f.onTranslateToWrapperTransitionEnd=null,delete f.onTranslateToWrapperTransitionEnd,i&&f.emit("transitionEnd"))}),f.$wrapperEl[0].addEventListener("transitionend",f.onTranslateToWrapperTransitionEnd),f.$wrapperEl[0].addEventListener("webkitTransitionEnd",f.onTranslateToWrapperTransitionEnd))),!0)}function bu(n,t){var i=this;i.params.cssMode||i.$wrapperEl.transition(n);i.emit("setTransition",n,t)}function ku(n,t){var r;n===void 0&&(n=!0);var i=this,u=i.activeIndex,e=i.params,f=i.previousIndex;if(!e.cssMode&&(e.autoHeight&&i.updateAutoHeight(),r=t,r||(r=u>f?"next":u<f?"prev":"reset"),i.emit("transitionStart"),n&&u!==f)){if(r==="reset"){i.emit("slideResetTransitionStart");return}i.emit("slideChangeTransitionStart");r==="next"?i.emit("slideNextTransitionStart"):i.emit("slidePrevTransitionStart")}}function du(n,t){var r;n===void 0&&(n=!0);var i=this,u=i.activeIndex,f=i.previousIndex,e=i.params;if((i.animating=!1,!e.cssMode)&&(i.setTransition(0),r=t,r||(r=u>f?"next":u<f?"prev":"reset"),i.emit("transitionEnd"),n&&u!==f)){if(r==="reset"){i.emit("slideResetTransitionEnd");return}i.emit("slideChangeTransitionEnd");r==="next"?i.emit("slideNextTransitionEnd"):i.emit("slidePrevTransitionEnd")}}function gu(n,t,i,r){var l,u,e,w,v,f,c,o,y;n===void 0&&(n=0);t===void 0&&(t=this.params.speed);i===void 0&&(i=!0);u=this;e=n;e<0&&(e=0);var s=u.params,p=u.snapGrid,b=u.slidesGrid,d=u.previousIndex,h=u.activeIndex,k=u.rtlTranslate,a=u.wrapperEl;if(u.animating&&s.preventInteractionOnTransition)return!1;if(w=Math.min(u.params.slidesPerGroupSkip,e),v=w+Math.floor((e-w)/u.params.slidesPerGroup),v>=p.length&&(v=p.length-1),(h||s.initialSlide||0)===(d||0)&&i&&u.emit("beforeSlideChangeStart"),f=-p[v],u.updateProgress(f),s.normalizeSlideIndex)for(c=0;c<b.length;c+=1)-Math.floor(f*100)>=Math.floor(b[c]*100)&&(e=c);return u.initialized&&e!==h&&(!u.allowSlideNext&&f<u.translate&&f<u.minTranslate()||!u.allowSlidePrev&&f>u.translate&&f>u.maxTranslate()&&(h||0)!==e)?!1:(o=e>h?"next":e<h?"prev":"reset",k&&-f===u.translate||!k&&f===u.translate)?(u.updateActiveIndex(e),s.autoHeight&&u.updateAutoHeight(),u.updateSlidesClasses(),s.effect!=="slide"&&u.setTranslate(f),o!=="reset"&&(u.transitionStart(i,o),u.transitionEnd(i,o)),!1):s.cssMode?(y=u.isHorizontal(),t===0?a[y?"scrollLeft":"scrollTop"]=-f:a.scrollTo?a.scrollTo((l={},l[y?"left":"top"]=-f,l.behavior="smooth",l)):a[y?"scrollLeft":"scrollTop"]=-f,!0):(t===0?(u.setTransition(0),u.setTranslate(f),u.updateActiveIndex(e),u.updateSlidesClasses(),u.emit("beforeTransitionStart",t,r),u.transitionStart(i,o),u.transitionEnd(i,o)):(u.setTransition(t),u.setTranslate(f),u.updateActiveIndex(e),u.updateSlidesClasses(),u.emit("beforeTransitionStart",t,r),u.transitionStart(i,o),u.animating||(u.animating=!0,u.onSlideToWrapperTransitionEnd||(u.onSlideToWrapperTransitionEnd=function(n){u&&!u.destroyed&&n.target===this&&(u.$wrapperEl[0].removeEventListener("transitionend",u.onSlideToWrapperTransitionEnd),u.$wrapperEl[0].removeEventListener("webkitTransitionEnd",u.onSlideToWrapperTransitionEnd),u.onSlideToWrapperTransitionEnd=null,delete u.onSlideToWrapperTransitionEnd,u.transitionEnd(i,o))}),u.$wrapperEl[0].addEventListener("transitionend",u.onSlideToWrapperTransitionEnd),u.$wrapperEl[0].addEventListener("webkitTransitionEnd",u.onSlideToWrapperTransitionEnd))),!0)}function nf(n,t,i,r){n===void 0&&(n=0);t===void 0&&(t=this.params.speed);i===void 0&&(i=!0);var u=this,f=n;return u.params.loop&&(f+=u.loopedSlides),u.slideTo(f,t,i,r)}function tf(n,t,i){n===void 0&&(n=this.params.speed);t===void 0&&(t=!0);var r=this,u=r.params,f=r.animating,e=r.activeIndex<u.slidesPerGroupSkip?1:u.slidesPerGroup;if(u.loop){if(f)return!1;r.loopFix();r._clientLeft=r.$wrapperEl[0].clientLeft}return r.slideTo(r.activeIndex+e,n,t,i)}function rf(n,t,i){function o(n){return n<0?-Math.floor(Math.abs(n)):Math.floor(n)}var l,e;n===void 0&&(n=this.params.speed);t===void 0&&(t=!0);var r=this,h=r.params,v=r.animating,f=r.snapGrid,c=r.slidesGrid,y=r.rtlTranslate;if(h.loop){if(v)return!1;r.loopFix();r._clientLeft=r.$wrapperEl[0].clientLeft}l=y?r.translate:-r.translate;var s=o(l),a=f.map(function(n){return o(n)}),p=c.map(function(n){return o(n)}),w=f[a.indexOf(s)],u=f[a.indexOf(s)-1];return typeof u=="undefined"&&h.cssMode&&f.forEach(function(n){!u&&s>=n&&(u=n)}),typeof u!="undefined"&&(e=c.indexOf(u),e<0&&(e=r.activeIndex-1)),r.slideTo(e,n,t,i)}function uf(n,t,i){n===void 0&&(n=this.params.speed);t===void 0&&(t=!0);var r=this;return r.slideTo(r.activeIndex,n,t,i)}function ff(n,t,i,r){var s,l,h,a;n===void 0&&(n=this.params.speed);t===void 0&&(t=!0);r===void 0&&(r=.5);var u=this,f=u.activeIndex,c=Math.min(u.params.slidesPerGroupSkip,f),e=c+Math.floor((f-c)/u.params.slidesPerGroup),o=u.rtlTranslate?u.translate:-u.translate;return o>=u.snapGrid[e]?(s=u.snapGrid[e],l=u.snapGrid[e+1],o-s>(l-s)*r&&(f+=u.params.slidesPerGroup)):(h=u.snapGrid[e-1],a=u.snapGrid[e],o-h<=(a-h)*r&&(f-=u.params.slidesPerGroup)),f=Math.max(f,0),f=Math.min(f,u.slidesGrid.length-1),u.slideTo(f,n,t,i)}function ef(){var i=this,u=i.params,o=i.$wrapperEl,f=u.slidesPerView==="auto"?i.slidesPerViewDynamic():u.slidesPerView,r=i.clickedIndex,e;if(u.loop){if(i.animating)return;e=parseInt(t(i.clickedSlide).attr("data-swiper-slide-index"),10);u.centeredSlides?r<i.loopedSlides-f/2||r>i.slides.length-i.loopedSlides+f/2?(i.loopFix(),r=o.children("."+u.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+u.slideDuplicateClass+")").eq(0).index(),n.nextTick(function(){i.slideTo(r)})):i.slideTo(r):r>i.slides.length-f?(i.loopFix(),r=o.children("."+u.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+u.slideDuplicateClass+")").eq(0).index(),n.nextTick(function(){i.slideTo(r)})):i.slideTo(r)}else i.slideTo(r)}function of(){var u=this,n=u.params,f=u.$wrapperEl,i,c,l,a,e,o,s,h;if(f.children("."+n.slideClass+"."+n.slideDuplicateClass).remove(),i=f.children("."+n.slideClass),n.loopFillGroupWithBlank&&(c=n.slidesPerGroup-i.length%n.slidesPerGroup,c!==n.slidesPerGroup)){for(l=0;l<c;l+=1)a=t(r.createElement("div")).addClass(n.slideClass+" "+n.slideBlankClass),f.append(a);i=f.children("."+n.slideClass)}for(n.slidesPerView!=="auto"||n.loopedSlides||(n.loopedSlides=i.length),u.loopedSlides=Math.ceil(parseFloat(n.loopedSlides||n.slidesPerView,10)),u.loopedSlides+=n.loopAdditionalSlides,u.loopedSlides>i.length&&(u.loopedSlides=i.length),e=[],o=[],i.each(function(n,r){var f=t(r);n<u.loopedSlides&&o.push(r);n<i.length&&n>=i.length-u.loopedSlides&&e.push(r);f.attr("data-swiper-slide-index",n)}),s=0;s<o.length;s+=1)f.append(t(o[s].cloneNode(!0)).addClass(n.slideDuplicateClass));for(h=e.length-1;h>=0;h-=1)f.prepend(t(e[h].cloneNode(!0)).addClass(n.slideDuplicateClass))}function sf(){var n=this,o,u,s,h;n.emit("beforeLoopFix");var r=n.activeIndex,f=n.slides,t=n.loopedSlides,c=n.allowSlidePrev,l=n.allowSlideNext,a=n.snapGrid,e=n.rtlTranslate,i;n.allowSlidePrev=!0;n.allowSlideNext=!0;o=-a[r];u=o-n.getTranslate();r<t?(i=f.length-t*3+r,i+=t,s=n.slideTo(i,0,!1,!0),s&&u!==0&&n.setTranslate((e?-n.translate:n.translate)-u)):r>=f.length-t&&(i=-f.length+r+t,i+=t,h=n.slideTo(i,0,!1,!0),h&&u!==0&&n.setTranslate((e?-n.translate:n.translate)-u));n.allowSlidePrev=c;n.allowSlideNext=l;n.emit("loopFix")}function hf(){var t=this,i=t.$wrapperEl,n=t.params,r=t.slides;i.children("."+n.slideClass+"."+n.slideDuplicateClass+",."+n.slideClass+"."+n.slideBlankClass).remove();r.removeAttr("data-swiper-slide-index")}function cf(n){var t=this,i;u.touch||!t.params.simulateTouch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(i=t.el,i.style.cursor="move",i.style.cursor=n?"-webkit-grabbing":"-webkit-grab",i.style.cursor=n?"-moz-grabbin":"-moz-grab",i.style.cursor=n?"grabbing":"grab")}function lf(){var n=this;u.touch||n.params.watchOverflow&&n.isLocked||n.params.cssMode||(n.el.style.cursor="")}function af(n){var t=this,f=t.$wrapperEl,r=t.params,i;if(r.loop&&t.loopDestroy(),typeof n=="object"&&"length"in n)for(i=0;i<n.length;i+=1)n[i]&&f.append(n[i]);else f.append(n);r.loop&&t.loopCreate();r.observer&&u.observer||t.update()}function vf(n){var t=this,r=t.params,e=t.$wrapperEl,o=t.activeIndex,f,i;if(r.loop&&t.loopDestroy(),f=o+1,typeof n=="object"&&"length"in n){for(i=0;i<n.length;i+=1)n[i]&&e.prepend(n[i]);f=o+n.length}else e.prepend(n);r.loop&&t.loopCreate();r.observer&&u.observer||t.update();t.slideTo(f,0,!1)}function yf(n,t){var i=this,o=i.$wrapperEl,f=i.params,y=i.activeIndex,r=y,a,s,h,c,v,e,l;if(f.loop&&(r-=i.loopedSlides,i.loopDestroy(),i.slides=o.children("."+f.slideClass)),a=i.slides.length,n<=0){i.prependSlide(t);return}if(n>=a){i.appendSlide(t);return}for(s=r>n?r+1:r,h=[],c=a-1;c>=n;c-=1)v=i.slides.eq(c),v.remove(),h.unshift(v);if(typeof t=="object"&&"length"in t){for(e=0;e<t.length;e+=1)t[e]&&o.append(t[e]);s=r>n?r+t.length:r}else o.append(t);for(l=0;l<h.length;l+=1)o.append(h[l]);f.loop&&i.loopCreate();f.observer&&u.observer||i.update();f.loop?i.slideTo(s+i.loopedSlides,0,!1):i.slideTo(s,0,!1)}function pf(n){var t=this,f=t.params,s=t.$wrapperEl,h=t.activeIndex,o=h,i,r,e;if(f.loop&&(o-=t.loopedSlides,t.loopDestroy(),t.slides=s.children("."+f.slideClass)),i=o,typeof n=="object"&&"length"in n){for(e=0;e<n.length;e+=1)r=n[e],t.slides[r]&&t.slides.eq(r).remove(),r<i&&(i-=1);i=Math.max(i,0)}else r=n,t.slides[r]&&t.slides.eq(r).remove(),r<i&&(i-=1),i=Math.max(i,0);f.loop&&t.loopCreate();f.observer&&u.observer||t.update();f.loop?t.slideTo(i+t.loopedSlides,0,!1):t.slideTo(i,0,!1)}function wf(){for(var t=this,i=[],n=0;n<t.slides.length;n+=1)i.push(n);t.removeSlide(i)}function bf(u){var o=this,s=o.touchEventsData,e=o.params,h=o.touches,f,c,a,y;if((!o.animating||!e.preventInteractionOnTransition)&&(f=u,f.originalEvent&&(f=f.originalEvent),c=t(f.target),e.touchEventsTarget!=="wrapper"||c.closest(o.wrapperEl).length)&&(s.isTouchEvent=f.type==="touchstart",s.isTouchEvent||!("which"in f)||f.which!==3)&&(s.isTouchEvent||!("button"in f)||!(f.button>0))&&(!s.isTouched||!s.isMoved)){if(e.noSwiping&&c.closest(e.noSwipingSelector?e.noSwipingSelector:"."+e.noSwipingClass)[0]){o.allowClick=!0;return}if(!e.swipeHandler||c.closest(e.swipeHandler)[0]){h.currentX=f.type==="touchstart"?f.targetTouches[0].pageX:f.pageX;h.currentY=f.type==="touchstart"?f.targetTouches[0].pageY:f.pageY;var l=h.currentX,p=h.currentY,w=e.edgeSwipeDetection||e.iOSEdgeSwipeDetection,v=e.edgeSwipeThreshold||e.iOSEdgeSwipeThreshold;w&&(l<=v||l>=i.screen.width-v)||(n.extend(s,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:undefined,startMoving:undefined}),h.startX=l,h.startY=p,s.touchStartTime=n.now(),o.allowClick=!0,o.updateSize(),o.swipeDirection=undefined,e.threshold>0&&(s.allowThresholdMove=!1),f.type!=="touchstart"&&(a=!0,c.is(s.formElements)&&(a=!1),r.activeElement&&t(r.activeElement).is(s.formElements)&&r.activeElement!==c[0]&&r.activeElement.blur(),y=a&&o.allowTouchMove&&e.touchStartPreventDefault,(e.touchStartForcePreventDefault||y)&&f.preventDefault()),o.emit("touchStart",f))}}}function kf(i){var f=this,u=f.touchEventsData,s=f.params,e=f.touches,k=f.rtlTranslate,o=i,a,v,w,h,y,p;if(o.originalEvent&&(o=o.originalEvent),!u.isTouched){u.startMoving&&u.isScrolling&&f.emit("touchMoveOpposite",o);return}if(!u.isTouchEvent||o.type!=="mousemove"){var b=o.type==="touchmove"&&o.targetTouches&&(o.targetTouches[0]||o.changedTouches[0]),c=o.type==="touchmove"?b.pageX:o.pageX,l=o.type==="touchmove"?b.pageY:o.pageY;if(o.preventedByNestedSwiper){e.startX=c;e.startY=l;return}if(!f.allowTouchMove){f.allowClick=!1;u.isTouched&&(n.extend(e,{startX:c,startY:l,currentX:c,currentY:l}),u.touchStartTime=n.now());return}if(u.isTouchEvent&&s.touchReleaseOnEdges&&!s.loop)if(f.isVertical()){if(l<e.startY&&f.translate<=f.maxTranslate()||l>e.startY&&f.translate>=f.minTranslate()){u.isTouched=!1;u.isMoved=!1;return}}else if(c<e.startX&&f.translate<=f.maxTranslate()||c>e.startX&&f.translate>=f.minTranslate())return;if(u.isTouchEvent&&r.activeElement&&o.target===r.activeElement&&t(o.target).is(u.formElements)){u.isMoved=!0;f.allowClick=!1;return}if((u.allowTouchCallbacks&&f.emit("touchMove",o),!o.targetTouches||!(o.targetTouches.length>1))&&(e.currentX=c,e.currentY=l,a=e.currentX-e.startX,v=e.currentY-e.startY,!f.params.threshold||!(Math.sqrt(Math.pow(a,2)+Math.pow(v,2))<f.params.threshold))){if(typeof u.isScrolling=="undefined"&&(f.isHorizontal()&&e.currentY===e.startY||f.isVertical()&&e.currentX===e.startX?u.isScrolling=!1:a*a+v*v>=25&&(w=Math.atan2(Math.abs(v),Math.abs(a))*180/Math.PI,u.isScrolling=f.isHorizontal()?w>s.touchAngle:90-w>s.touchAngle)),u.isScrolling&&f.emit("touchMoveOpposite",o),typeof u.startMoving=="undefined"&&(e.currentX!==e.startX||e.currentY!==e.startY)&&(u.startMoving=!0),u.isScrolling){u.isTouched=!1;return}if(u.startMoving){if(f.allowClick=!1,s.cssMode||o.preventDefault(),s.touchMoveStopPropagation&&!s.nested&&o.stopPropagation(),u.isMoved||(s.loop&&f.loopFix(),u.startTranslate=f.getTranslate(),f.setTransition(0),f.animating&&f.$wrapperEl.trigger("webkitTransitionEnd transitionend"),u.allowMomentumBounce=!1,s.grabCursor&&(f.allowSlideNext===!0||f.allowSlidePrev===!0)&&f.setGrabCursor(!0),f.emit("sliderFirstMove",o)),f.emit("sliderMove",o),u.isMoved=!0,h=f.isHorizontal()?a:v,e.diff=h,h*=s.touchRatio,k&&(h=-h),f.swipeDirection=h>0?"prev":"next",u.currentTranslate=h+u.startTranslate,y=!0,p=s.resistanceRatio,s.touchReleaseOnEdges&&(p=0),h>0&&u.currentTranslate>f.minTranslate()?(y=!1,s.resistance&&(u.currentTranslate=f.minTranslate()-1+Math.pow(-f.minTranslate()+u.startTranslate+h,p))):h<0&&u.currentTranslate<f.maxTranslate()&&(y=!1,s.resistance&&(u.currentTranslate=f.maxTranslate()+1-Math.pow(f.maxTranslate()-u.startTranslate-h,p))),y&&(o.preventedByNestedSwiper=!0),!f.allowSlideNext&&f.swipeDirection==="next"&&u.currentTranslate<u.startTranslate&&(u.currentTranslate=u.startTranslate),!f.allowSlidePrev&&f.swipeDirection==="prev"&&u.currentTranslate>u.startTranslate&&(u.currentTranslate=u.startTranslate),s.threshold>0)if(Math.abs(h)>s.threshold||u.allowThresholdMove){if(!u.allowThresholdMove){u.allowThresholdMove=!0;e.startX=e.currentX;e.startY=e.currentY;u.currentTranslate=u.startTranslate;e.diff=f.isHorizontal()?e.currentX-e.startX:e.currentY-e.startY;return}}else{u.currentTranslate=u.startTranslate;return}s.followFinger&&!s.cssMode&&((s.freeMode||s.watchSlidesProgress||s.watchSlidesVisibility)&&(f.updateActiveIndex(),f.updateSlidesClasses()),s.freeMode&&(u.velocities.length===0&&u.velocities.push({position:e[f.isHorizontal()?"startX":"startY"],time:u.touchStartTime}),u.velocities.push({position:e[f.isHorizontal()?"currentX":"currentY"],time:n.now()})),f.updateProgress(u.currentTranslate),f.setTranslate(u.currentTranslate))}}}}function df(t){var i=this,u=i.touchEventsData,r=i.params,at=i.touches,b=i.rtlTranslate,it=i.$wrapperEl,s=i.slidesGrid,c=i.snapGrid,h=t,rt,k,l,d,g,v,ft,y,p,et,ot,e,nt,o,tt,st,w,lt;if(h.originalEvent&&(h=h.originalEvent),u.allowTouchCallbacks&&i.emit("touchEnd",h),u.allowTouchCallbacks=!1,!u.isTouched){u.isMoved&&r.grabCursor&&i.setGrabCursor(!1);u.isMoved=!1;u.startMoving=!1;return}if(r.grabCursor&&u.isMoved&&u.isTouched&&(i.allowSlideNext===!0||i.allowSlidePrev===!0)&&i.setGrabCursor(!1),rt=n.now(),k=rt-u.touchStartTime,i.allowClick&&(i.updateClickedSlide(h),i.emit("tap click",h),k<300&&rt-u.lastClickTime<300&&i.emit("doubleTap doubleClick",h)),u.lastClickTime=n.now(),n.nextTick(function(){i.destroyed||(i.allowClick=!0)}),!u.isTouched||!u.isMoved||!i.swipeDirection||at.diff===0||u.currentTranslate===u.startTranslate){u.isTouched=!1;u.isMoved=!1;u.startMoving=!1;return}if(u.isTouched=!1,u.isMoved=!1,u.startMoving=!1,l=r.followFinger?b?i.translate:-i.translate:-u.currentTranslate,!r.cssMode){if(r.freeMode){if(l<-i.minTranslate()){i.slideTo(i.activeIndex);return}if(l>-i.maxTranslate()){i.slides.length<c.length?i.slideTo(c.length-1):i.slideTo(i.slides.length-1);return}if(r.freeModeMomentum){if(u.velocities.length>1){var ut=u.velocities.pop(),ht=u.velocities.pop(),vt=ut.position-ht.position,ct=ut.time-ht.time;i.velocity=vt/ct;i.velocity/=2;Math.abs(i.velocity)<r.freeModeMinimumVelocity&&(i.velocity=0);(ct>150||n.now()-ut.time>300)&&(i.velocity=0)}else i.velocity=0;i.velocity*=r.freeModeMomentumVelocityRatio;u.velocities.length=0;var a=1e3*r.freeModeMomentumRatio,yt=i.velocity*a,f=i.translate+yt;if(b&&(f=-f),d=!1,v=Math.abs(i.velocity)*20*r.freeModeMomentumBounceRatio,f<i.maxTranslate())r.freeModeMomentumBounce?(f+i.maxTranslate()<-v&&(f=i.maxTranslate()-v),g=i.maxTranslate(),d=!0,u.allowMomentumBounce=!0):f=i.maxTranslate(),r.loop&&r.centeredSlides&&(ft=!0);else if(f>i.minTranslate())r.freeModeMomentumBounce?(f-i.minTranslate()>v&&(f=i.minTranslate()+v),g=i.minTranslate(),d=!0,u.allowMomentumBounce=!0):f=i.minTranslate(),r.loop&&r.centeredSlides&&(ft=!0);else if(r.freeModeSticky){for(p=0;p<c.length;p+=1)if(c[p]>-f){y=p;break}f=Math.abs(c[y]-f)<Math.abs(c[y-1]-f)||i.swipeDirection==="next"?c[y]:c[y-1];f=-f}if(ft)i.once("transitionEnd",function(){i.loopFix()});if(i.velocity!==0)a=b?Math.abs((-f-i.translate)/i.velocity):Math.abs((f-i.translate)/i.velocity),r.freeModeSticky&&(et=Math.abs((b?-f:f)-i.translate),ot=i.slidesSizesGrid[i.activeIndex],a=et<ot?r.speed:et<2*ot?r.speed*1.5:r.speed*2.5);else if(r.freeModeSticky){i.slideToClosest();return}r.freeModeMomentumBounce&&d?(i.updateProgress(g),i.setTransition(a),i.setTranslate(f),i.transitionStart(!0,i.swipeDirection),i.animating=!0,it.transitionEnd(function(){i&&!i.destroyed&&u.allowMomentumBounce&&(i.emit("momentumBounce"),i.setTransition(r.speed),i.setTranslate(g),it.transitionEnd(function(){i&&!i.destroyed&&i.transitionEnd()}))})):i.velocity?(i.updateProgress(f),i.setTransition(a),i.setTranslate(f),i.transitionStart(!0,i.swipeDirection),i.animating||(i.animating=!0,it.transitionEnd(function(){i&&!i.destroyed&&i.transitionEnd()}))):i.updateProgress(f);i.updateActiveIndex();i.updateSlidesClasses()}else if(r.freeModeSticky){i.slideToClosest();return}(!r.freeModeMomentum||k>=r.longSwipesMs)&&(i.updateProgress(),i.updateActiveIndex(),i.updateSlidesClasses());return}for(e=0,nt=i.slidesSizesGrid[0],o=0;o<s.length;o+=o<r.slidesPerGroupSkip?1:r.slidesPerGroup)tt=o<r.slidesPerGroupSkip-1?1:r.slidesPerGroup,typeof s[o+tt]!="undefined"?l>=s[o]&&l<s[o+tt]&&(e=o,nt=s[o+tt]-s[o]):l>=s[o]&&(e=o,nt=s[s.length-1]-s[s.length-2]);if(st=(l-s[e])/nt,w=e<r.slidesPerGroupSkip-1?1:r.slidesPerGroup,k>r.longSwipesMs){if(!r.longSwipes){i.slideTo(i.activeIndex);return}i.swipeDirection==="next"&&(st>=r.longSwipesRatio?i.slideTo(e+w):i.slideTo(e));i.swipeDirection==="prev"&&(st>1-r.longSwipesRatio?i.slideTo(e+w):i.slideTo(e))}else{if(!r.shortSwipes){i.slideTo(i.activeIndex);return}lt=i.navigation&&(h.target===i.navigation.nextEl||h.target===i.navigation.prevEl);lt?h.target===i.navigation.nextEl?i.slideTo(e+w):i.slideTo(e):(i.swipeDirection==="next"&&i.slideTo(e+w),i.swipeDirection==="prev"&&i.slideTo(e))}}}function tt(){var n=this,t=n.params,i=n.el;if(!i||i.offsetWidth!==0){t.breakpoints&&n.setBreakpoint();var r=n.allowSlideNext,u=n.allowSlidePrev,f=n.snapGrid;n.allowSlideNext=!0;n.allowSlidePrev=!0;n.updateSize();n.updateSlides();n.updateSlidesClasses();(t.slidesPerView==="auto"||t.slidesPerView>1)&&n.isEnd&&!n.params.centeredSlides?n.slideTo(n.slides.length-1,0,!1,!0):n.slideTo(n.activeIndex,0,!1,!0);n.autoplay&&n.autoplay.running&&n.autoplay.paused&&n.autoplay.run();n.allowSlidePrev=u;n.allowSlideNext=r;n.params.watchOverflow&&f!==n.snapGrid&&n.checkOverflow()}}function gf(n){var t=this;t.allowClick||(t.params.preventClicks&&n.preventDefault(),t.params.preventClicksPropagation&&t.animating&&(n.stopPropagation(),n.stopImmediatePropagation()))}function ne(){var n=this,i=n.wrapperEl,r,t;n.previousTranslate=n.translate;n.translate=n.isHorizontal()?-i.scrollLeft:-i.scrollTop;n.translate===-0&&(n.translate=0);n.updateActiveIndex();n.updateSlidesClasses();t=n.maxTranslate()-n.minTranslate();r=t===0?0:(n.translate-n.minTranslate())/t;r!==n.progress&&n.updateProgress(n.translate);n.emit("setTranslate",n.translate,!1)}function te(){}function ie(){var n=this,t=n.params,i=n.touchEvents,f=n.el,h=n.wrapperEl,o,s;if(n.onTouchStart=bf.bind(n),n.onTouchMove=kf.bind(n),n.onTouchEnd=df.bind(n),t.cssMode&&(n.onScroll=ne.bind(n)),n.onClick=gf.bind(n),o=!!t.nested,!u.touch&&u.pointerEvents?(f.addEventListener(i.start,n.onTouchStart,!1),r.addEventListener(i.move,n.onTouchMove,o),r.addEventListener(i.end,n.onTouchEnd,!1)):(u.touch&&(s=i.start==="touchstart"&&u.passiveListener&&t.passiveListeners?{passive:!0,capture:!1}:!1,f.addEventListener(i.start,n.onTouchStart,s),f.addEventListener(i.move,n.onTouchMove,u.passiveListener?{passive:!1,capture:o}:o),f.addEventListener(i.end,n.onTouchEnd,s),i.cancel&&f.addEventListener(i.cancel,n.onTouchEnd,s),it||(r.addEventListener("touchstart",te),it=!0)),(t.simulateTouch&&!e.ios&&!e.android||t.simulateTouch&&!u.touch&&e.ios)&&(f.addEventListener("mousedown",n.onTouchStart,!1),r.addEventListener("mousemove",n.onTouchMove,o),r.addEventListener("mouseup",n.onTouchEnd,!1))),(t.preventClicks||t.preventClicksPropagation)&&f.addEventListener("click",n.onClick,!0),t.cssMode&&h.addEventListener("scroll",n.onScroll),t.updateOnWindowResize)n.on(e.ios||e.android?"resize orientationchange observerUpdate":"resize observerUpdate",tt,!0);else n.on("observerUpdate",tt,!0)}function re(){var n=this,i=n.params,t=n.touchEvents,f=n.el,h=n.wrapperEl,s=!!i.nested,o;!u.touch&&u.pointerEvents?(f.removeEventListener(t.start,n.onTouchStart,!1),r.removeEventListener(t.move,n.onTouchMove,s),r.removeEventListener(t.end,n.onTouchEnd,!1)):(u.touch&&(o=t.start==="onTouchStart"&&u.passiveListener&&i.passiveListeners?{passive:!0,capture:!1}:!1,f.removeEventListener(t.start,n.onTouchStart,o),f.removeEventListener(t.move,n.onTouchMove,s),f.removeEventListener(t.end,n.onTouchEnd,o),t.cancel&&f.removeEventListener(t.cancel,n.onTouchEnd,o)),(i.simulateTouch&&!e.ios&&!e.android||i.simulateTouch&&!u.touch&&e.ios)&&(f.removeEventListener("mousedown",n.onTouchStart,!1),r.removeEventListener("mousemove",n.onTouchMove,s),r.removeEventListener("mouseup",n.onTouchEnd,!1)));(i.preventClicks||i.preventClicksPropagation)&&f.removeEventListener("click",n.onClick,!0);i.cssMode&&h.removeEventListener("scroll",n.onScroll);n.off(e.ios||e.android?"resize orientationchange observerUpdate":"resize observerUpdate",tt)}function ue(){var t=this,y=t.activeIndex,c=t.initialized,o=t.loopedSlides,e,r,h,v;o===void 0&&(o=0);var i=t.params,s=t.$el,f=i.breakpoints;if(f&&(!f||Object.keys(f).length!==0)&&(e=t.getBreakpoint(f),e&&t.currentBreakpoint!==e)){r=e in f?f[e]:undefined;r&&["slidesPerView","spaceBetween","slidesPerGroup","slidesPerGroupSkip","slidesPerColumn"].forEach(function(n){var t=r[n];typeof t!="undefined"&&(r[n]=n==="slidesPerView"&&(t==="AUTO"||t==="auto")?"auto":n==="slidesPerView"?parseFloat(t):parseInt(t,10))});var u=r||t.originalParams,l=i.slidesPerColumn>1,a=u.slidesPerColumn>1;l&&!a?s.removeClass(i.containerModifierClass+"multirow "+i.containerModifierClass+"multirow-column"):!l&&a&&(s.addClass(i.containerModifierClass+"multirow"),u.slidesPerColumnFill==="column"&&s.addClass(i.containerModifierClass+"multirow-column"));h=u.direction&&u.direction!==i.direction;v=i.loop&&(u.slidesPerView!==i.slidesPerView||h);h&&c&&t.changeDirection();n.extend(t.params,u);n.extend(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev});t.currentBreakpoint=e;v&&c&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(y-o+t.loopedSlides,0,!1));t.emit("breakpoint",u)}}function fe(n){var u,t,r;if(!n)return undefined;for(u=!1,t=Object.keys(n).map(function(n){if(typeof n=="string"&&n.indexOf("@")===0){var t=parseFloat(n.substr(1)),r=i.innerHeight*t;return{value:r,point:n}}return{value:n,point:n}}),t.sort(function(n,t){return parseInt(n.value,10)-parseInt(t.value,10)}),r=0;r<t.length;r+=1){var f=t[r],e=f.point,o=f.value;o<=i.innerWidth&&(u=e)}return u||"max"}function ee(){var i=this,r=i.classNames,t=i.params,u=i.rtl,f=i.$el,n=[];n.push("initialized");n.push(t.direction);t.freeMode&&n.push("free-mode");t.autoHeight&&n.push("autoheight");u&&n.push("rtl");t.slidesPerColumn>1&&(n.push("multirow"),t.slidesPerColumnFill==="column"&&n.push("multirow-column"));e.android&&n.push("android");e.ios&&n.push("ios");t.cssMode&&n.push("css-mode");n.forEach(function(n){r.push(t.containerModifierClass+n)});f.addClass(r.join(" "))}function oe(){var n=this,t=n.$el,i=n.classNames;t.removeClass(i.join(" "))}function se(n,t,r,u,f,e){function s(){e&&e()}var o;n.complete&&f?s():t?(o=new i.Image,o.onload=s,o.onerror=s,u&&(o.sizes=u),r&&(o.srcset=r),t&&(o.src=t)):s()}function he(){function r(){typeof n!="undefined"&&n!==null&&n&&!n.destroyed&&(n.imagesLoaded!==undefined&&(n.imagesLoaded+=1),n.imagesLoaded===n.imagesToLoad.length&&(n.params.updateOnImagesReady&&n.update(),n.emit("imagesReady")))}var n=this,i,t;for(n.imagesToLoad=n.$el.find("img"),i=0;i<n.imagesToLoad.length;i+=1)t=n.imagesToLoad[i],n.loadImage(t,t.currentSrc||t.getAttribute("src"),t.srcset||t.getAttribute("srcset"),t.sizes||t.getAttribute("sizes"),!0,r)}function ce(){var n=this,t=n.params,i=n.isLocked,r=n.slides.length>0&&t.slidesOffsetBefore+t.spaceBetween*(n.slides.length-1)+n.slides[0].offsetWidth*n.slides.length;n.isLocked=t.slidesOffsetBefore&&t.slidesOffsetAfter&&r?r<=n.size:n.snapGrid.length===1;n.allowSlideNext=!n.isLocked;n.allowSlidePrev=!n.isLocked;i!==n.isLocked&&n.emit(n.isLocked?"lock":"unlock");i&&i!==n.isLocked&&(n.isEnd=!1,n.navigation.update())}function de(){var t="onwheel",n=t in r,i;return n||(i=r.createElement("div"),i.setAttribute(t,"return;"),n=typeof i[t]=="function"),!n&&r.implementation&&r.implementation.hasFeature&&r.implementation.hasFeature("","")!==!0&&(n=r.implementation.hasFeature("Events.wheel","3.0")),n}var r=typeof document=="undefined"?{body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},location:{hash:""}}:document,i=typeof window=="undefined"?{document:r,navigator:{userAgent:""},location:{},history:{},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){}}:window,f=function(n){for(var i=this,t=0;t<n.length;t+=1)i[t]=n[t];return i.length=n.length,this},nt,ct,lt,at,vt,yt,pt,wt,e,it,bt,kt,dt,gt;t.fn=f.prototype;t.Class=f;t.Dom7=f;nt={addClass:oi,removeClass:si,hasClass:hi,toggleClass:ci,attr:li,removeAttr:ai,data:vi,transform:yi,transition:pi,on:wi,off:bi,trigger:ki,transitionEnd:di,outerWidth:gi,outerHeight:nr,offset:tr,css:rr,each:ur,html:er,text:or,is:sr,index:hr,eq:cr,append:lr,prepend:ar,next:vr,nextAll:yr,prev:pr,prevAll:wr,parent:br,parents:kr,closest:dr,find:gr,children:nu,filter:fr,remove:tu,add:iu,styles:ir};Object.keys(nt).forEach(function(n){t.fn[n]=t.fn[n]||nt[n]});var n={deleteProps:function(n){var t=n;Object.keys(t).forEach(function(n){try{t[n]=null}catch(i){}try{delete t[n]}catch(i){}})},nextTick:function(n,t){return t===void 0&&(t=0),setTimeout(n,t)},now:function(){return Date.now()},getTranslate:function(n,t){t===void 0&&(t="x");var f,r,e,u=i.getComputedStyle(n,null);return i.WebKitCSSMatrix?(r=u.transform||u.webkitTransform,r.split(",").length>6&&(r=r.split(", ").map(function(n){return n.replace(",",".")}).join(", ")),e=new i.WebKitCSSMatrix(r==="none"?"":r)):(e=u.MozTransform||u.OTransform||u.MsTransform||u.msTransform||u.transform||u.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),f=e.toString().split(",")),t==="x"&&(r=i.WebKitCSSMatrix?e.m41:f.length===16?parseFloat(f[12]):parseFloat(f[4])),t==="y"&&(r=i.WebKitCSSMatrix?e.m42:f.length===16?parseFloat(f[13]):parseFloat(f[5])),r||0},parseUrlQuery:function(n){var e={},t=n||i.location.href,r,f,u,o;if(typeof t=="string"&&t.length)for(t=t.indexOf("?")>-1?t.replace(/\S*\?/,""):"",f=t.split("&").filter(function(n){return n!==""}),o=f.length,r=0;r<o;r+=1)u=f[r].replace(/#\S+/g,"").split("="),e[decodeURIComponent(u[0])]=typeof u[1]=="undefined"?undefined:decodeURIComponent(u[1])||"";return e},isObject:function(n){return typeof n=="object"&&n!==null&&n.constructor&&n.constructor===Object},extend:function(){for(var u=[],o=arguments.length,r,f,i,s,e,c,t,h;o--;)u[o]=arguments[o];for(r=Object(u[0]),f=1;f<u.length;f+=1)if(i=u[f],i!==undefined&&i!==null)for(s=Object.keys(Object(i)),e=0,c=s.length;e<c;e+=1)t=s[e],h=Object.getOwnPropertyDescriptor(i,t),h!==undefined&&h.enumerable&&(n.isObject(r[t])&&n.isObject(i[t])?n.extend(r[t],i[t]):!n.isObject(r[t])&&n.isObject(i[t])?(r[t]={},n.extend(r[t],i[t])):r[t]=i[t]);return r}},u=function(){return{touch:i.Modernizr&&i.Modernizr.touch===!0||function(){return!!(i.navigator.maxTouchPoints>0||"ontouchstart"in i||i.DocumentTouch&&r instanceof i.DocumentTouch)}(),pointerEvents:!!i.PointerEvent&&"maxTouchPoints"in i.navigator&&i.navigator.maxTouchPoints>0,observer:function(){return"MutationObserver"in i||"WebkitMutationObserver"in i}(),passiveListener:function(){var n=!1,t;try{t=Object.defineProperty({},"passive",{get:function(){n=!0}});i.addEventListener("testPassiveListener",null,t)}catch(u){}return n}(),gestures:function(){return"ongesturestart"in i}()}}(),h=function(n){n===void 0&&(n={});var t=this;t.params=n;t.eventsListeners={};t.params&&t.params.on&&Object.keys(t.params.on).forEach(function(n){t.on(n,t.params.on[n])})},ht={components:{configurable:!0}};h.prototype.on=function(n,t,i){var r=this,u;return typeof t!="function"?r:(u=i?"unshift":"push",n.split(" ").forEach(function(n){r.eventsListeners[n]||(r.eventsListeners[n]=[]);r.eventsListeners[n][u](t)}),r)};h.prototype.once=function(n,t,i){function r(){for(var f=[],i=arguments.length;i--;)f[i]=arguments[i];u.off(n,r);r.f7proxy&&delete r.f7proxy;t.apply(u,f)}var u=this;if(typeof t!="function")return u;r.f7proxy=t;return u.on(n,r,i)};h.prototype.off=function(n,t){var i=this;return i.eventsListeners?(n.split(" ").forEach(function(n){typeof t=="undefined"?i.eventsListeners[n]=[]:i.eventsListeners[n]&&i.eventsListeners[n].length&&i.eventsListeners[n].forEach(function(r,u){(r===t||r.f7proxy&&r.f7proxy===t)&&i.eventsListeners[n].splice(u,1)})}),i):i};h.prototype.emit=function(){for(var n=[],r=arguments.length,t,i,u,f,e;r--;)n[r]=arguments[r];return(t=this,!t.eventsListeners)?t:(typeof n[0]=="string"||Array.isArray(n[0])?(i=n[0],u=n.slice(1,n.length),f=t):(i=n[0].events,u=n[0].data,f=n[0].context||t),e=Array.isArray(i)?i:i.split(" "),e.forEach(function(n){if(t.eventsListeners&&t.eventsListeners[n]){var i=[];t.eventsListeners[n].forEach(function(n){i.push(n)});i.forEach(function(n){n.apply(f,u)})}}),t)};h.prototype.useModulesParams=function(t){var i=this;i.modules&&Object.keys(i.modules).forEach(function(r){var u=i.modules[r];u.params&&n.extend(t,u.params)})};h.prototype.useModules=function(n){n===void 0&&(n={});var t=this;t.modules&&Object.keys(t.modules).forEach(function(i){var r=t.modules[i],u=n[i]||{};r.instance&&Object.keys(r.instance).forEach(function(n){var i=r.instance[n];t[n]=typeof i=="function"?i.bind(t):i});r.on&&t.on&&Object.keys(r.on).forEach(function(n){t.on(n,r.on[n])});r.create&&r.create.bind(t)(u)})};ht.components.set=function(n){var t=this;t.use&&t.use(n)};h.installModule=function(t){for(var u=[],r=arguments.length-1,i,f;r-->0;)u[r]=arguments[r+1];return i=this,i.prototype.modules||(i.prototype.modules={}),f=t.name||Object.keys(i.prototype.modules).length+"_"+n.now(),i.prototype.modules[f]=t,t.proto&&Object.keys(t.proto).forEach(function(n){i.prototype[n]=t.proto[n]}),t.static&&Object.keys(t.static).forEach(function(n){i[n]=t.static[n]}),t.install&&t.install.apply(i,u),i};h.use=function(n){for(var r=[],i=arguments.length-1,t;i-->0;)r[i]=arguments[i+1];return(t=this,Array.isArray(n))?(n.forEach(function(n){return t.installModule(n)}),t):t.installModule.apply(t,[n].concat(r))};Object.defineProperties(h,ht);ct={updateSize:ru,updateSlides:uu,updateAutoHeight:fu,updateSlidesOffset:eu,updateSlidesProgress:ou,updateProgress:su,updateSlidesClasses:hu,updateActiveIndex:cu,updateClickedSlide:lu};lt={getTranslate:au,setTranslate:vu,minTranslate:yu,maxTranslate:pu,translateTo:wu};at={setTransition:bu,transitionStart:ku,transitionEnd:du};vt={slideTo:gu,slideToLoop:nf,slideNext:tf,slidePrev:rf,slideReset:uf,slideToClosest:ff,slideToClickedSlide:ef};yt={loopCreate:of,loopFix:sf,loopDestroy:hf};pt={setGrabCursor:cf,unsetGrabCursor:lf};wt={appendSlide:af,prependSlide:vf,addSlide:yf,removeSlide:pf,removeAllSlides:wf};e=function(){var c=i.navigator.platform,t=i.navigator.userAgent,n={ios:!1,android:!1,androidChrome:!1,desktop:!1,iphone:!1,ipod:!1,ipad:!1,edge:!1,ie:!1,firefox:!1,macos:!1,windows:!1,cordova:!!(i.cordova||i.phonegap),phonegap:!!(i.cordova||i.phonegap),electron:!1},e=i.screen.width,o=i.screen.height,l=t.match(/(Android);?[\s\/]+([\d.]+)?/),r=t.match(/(iPad).*OS\s([\d_]+)/),f=t.match(/(iPod)(.*OS\s([\d_]+))?/),s=!r&&t.match(/(iPhone\sOS|iOS)\s([\d_]+)/),y=t.indexOf("MSIE ")>=0||t.indexOf("Trident/")>=0,p=t.indexOf("Edge/")>=0,w=t.indexOf("Gecko/")>=0&&t.indexOf("Firefox/")>=0,a=c==="Win32",v=t.toLowerCase().indexOf("electron")>=0,h=c==="MacIntel";return!r&&h&&u.touch&&(e===1024&&o===1366||e===834&&o===1194||e===834&&o===1112||e===768&&o===1024)&&(r=t.match(/(Version)\/([\d.]+)/),h=!1),n.ie=y,n.edge=p,n.firefox=w,l&&!a&&(n.os="android",n.osVersion=l[2],n.android=!0,n.androidChrome=t.toLowerCase().indexOf("chrome")>=0),(r||s||f)&&(n.os="ios",n.ios=!0),s&&!f&&(n.osVersion=s[2].replace(/_/g,"."),n.iphone=!0),r&&(n.osVersion=r[2].replace(/_/g,"."),n.ipad=!0),f&&(n.osVersion=f[3]?f[3].replace(/_/g,"."):null,n.ipod=!0),n.ios&&n.osVersion&&t.indexOf("Version/")>=0&&n.osVersion.split(".")[0]==="10"&&(n.osVersion=t.toLowerCase().split("version/")[1].split(" ")[0]),n.webView=!!((s||r||f)&&(t.match(/.*AppleWebKit(?!.*Safari)/i)||i.navigator.standalone))||i.matchMedia&&i.matchMedia("(display-mode: standalone)").matches,n.webview=n.webView,n.standalone=n.webView,n.desktop=!(n.ios||n.android)||v,n.desktop&&(n.electron=v,n.macos=h,n.windows=a,n.macos&&(n.os="macos"),n.windows&&(n.os="windows")),n.pixelRatio=i.devicePixelRatio||1,n}();it=!1;bt={attachEvents:ie,detachEvents:re};kt={setBreakpoint:ue,getBreakpoint:fe};dt={addClasses:ee,removeClasses:oe};gt={loadImage:se,preloadImages:he};var le={checkOverflow:ce},ni={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,preventInteractionOnTransition:!1,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:undefined,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0},rt={update:ct,translate:lt,transition:at,slide:vt,loop:yt,grabCursor:pt,manipulation:wt,events:bt,breakpoints:kt,checkOverflow:le,classes:dt,images:gt},ut={},s=function(i){function r(){for(var l,h=[],a=arguments.length,o,e,f,v,s,y,c;a--;)h[a]=arguments[a];return(h.length===1&&h[0].constructor&&h[0].constructor===Object?e=h[0]:(l=h,o=l[0],e=l[1]),e||(e={}),e=n.extend({},e),o&&!e.el&&(e.el=o),i.call(this,e),Object.keys(rt).forEach(function(n){Object.keys(rt[n]).forEach(function(t){r.prototype[t]||(r.prototype[t]=rt[n][t])})}),f=this,typeof f.modules=="undefined"&&(f.modules={}),Object.keys(f.modules).forEach(function(n){var r=f.modules[n],t,i;if(r.params){if(t=Object.keys(r.params)[0],i=r.params[t],typeof i!="object"||i===null)return;if(!(t in e&&"enabled"in i))return;e[t]===!0&&(e[t]={enabled:!0});typeof e[t]!="object"||"enabled"in e[t]||(e[t].enabled=!0);e[t]||(e[t]={enabled:!1})}}),v=n.extend({},ni),f.useModulesParams(v),f.params=n.extend({},v,ut,e),f.originalParams=n.extend({},f.params),f.passedParams=n.extend({},e),f.$=t,s=t(f.params.el),o=s[0],!o)?undefined:s.length>1?(y=[],s.each(function(t,i){var u=n.extend({},e,{el:i});y.push(new r(u))}),y):(o.swiper=f,s.data("swiper",f),o&&o.shadowRoot&&o.shadowRoot.querySelector?(c=t(o.shadowRoot.querySelector("."+f.params.wrapperClass)),c.children=function(n){return s.children(n)}):c=s.children("."+f.params.wrapperClass),n.extend(f,{$el:s,el:o,$wrapperEl:c,wrapperEl:c[0],classNames:[],slides:t(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return f.params.direction==="horizontal"},isVertical:function(){return f.params.direction==="vertical"},rtl:o.dir.toLowerCase()==="rtl"||s.css("direction")==="rtl",rtlTranslate:f.params.direction==="horizontal"&&(o.dir.toLowerCase()==="rtl"||s.css("direction")==="rtl"),wrongRTL:c.css("display")==="-webkit-box",activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:f.params.allowSlideNext,allowSlidePrev:f.params.allowSlidePrev,touchEvents:function(){var n=["touchstart","touchmove","touchend","touchcancel"],t=["mousedown","mousemove","mouseup"];return u.pointerEvents&&(t=["pointerdown","pointermove","pointerup"]),f.touchEventsTouch={start:n[0],move:n[1],end:n[2],cancel:n[3]},f.touchEventsDesktop={start:t[0],move:t[1],end:t[2]},u.touch||!f.params.simulateTouch?f.touchEventsTouch:f.touchEventsDesktop}(),touchEventsData:{isTouched:undefined,isMoved:undefined,allowTouchCallbacks:undefined,touchStartTime:undefined,isScrolling:undefined,currentTranslate:undefined,startTranslate:undefined,allowThresholdMove:undefined,formElements:"input, select, option, textarea, button, video, label",lastClickTime:n.now(),clickTimeout:undefined,velocities:[],allowMomentumBounce:undefined,isTouchEvent:undefined,startMoving:undefined},allowClick:!0,allowTouchMove:f.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),f.useModules(),f.params.init&&f.init(),f)}i&&(r.__proto__=i);r.prototype=Object.create(i&&i.prototype);r.prototype.constructor=r;var f={extendedDefaults:{configurable:!0},defaults:{configurable:!0},Class:{configurable:!0},$:{configurable:!0}};return r.prototype.slidesPerViewDynamic=function(){var t=this,l=t.params,n=t.slides,c=t.slidesGrid,h=t.size,i=t.activeIndex,e=1,r,o,u,f,s;if(l.centeredSlides){for(r=n[i].swiperSlideSize,u=i+1;u<n.length;u+=1)n[u]&&!o&&(r+=n[u].swiperSlideSize,e+=1,r>h&&(o=!0));for(f=i-1;f>=0;f-=1)n[f]&&!o&&(r+=n[f].swiperSlideSize,e+=1,r>h&&(o=!0))}else for(s=i+1;s<n.length;s+=1)c[s]-c[i]<h&&(e+=1);return e},r.prototype.update=function(){function r(){var t=n.rtlTranslate?n.translate*-1:n.translate,i=Math.min(Math.max(t,n.maxTranslate()),n.minTranslate());n.setTranslate(i);n.updateActiveIndex();n.updateSlidesClasses()}var n=this,i,t,u;n&&!n.destroyed&&(i=n.snapGrid,t=n.params,t.breakpoints&&n.setBreakpoint(),n.updateSize(),n.updateSlides(),n.updateProgress(),n.updateSlidesClasses(),n.params.freeMode?(r(),n.params.autoHeight&&n.updateAutoHeight()):(u=(n.params.slidesPerView==="auto"||n.params.slidesPerView>1)&&n.isEnd&&!n.params.centeredSlides?n.slideTo(n.slides.length-1,0,!1,!0):n.slideTo(n.activeIndex,0,!1,!0),u||r()),t.watchOverflow&&i!==n.snapGrid&&n.checkOverflow(),n.emit("update"))},r.prototype.changeDirection=function(n,t){t===void 0&&(t=!0);var i=this,r=i.params.direction;return(n||(n=r==="horizontal"?"vertical":"horizontal"),n===r||n!=="horizontal"&&n!=="vertical")?i:(i.$el.removeClass(""+i.params.containerModifierClass+r).addClass(""+i.params.containerModifierClass+n),i.params.direction=n,i.slides.each(function(t,i){n==="vertical"?i.style.width="":i.style.height=""}),i.emit("changeDirection"),t&&i.update(),i)},r.prototype.init=function(){var n=this;n.initialized||(n.emit("beforeInit"),n.params.breakpoints&&n.setBreakpoint(),n.addClasses(),n.params.loop&&n.loopCreate(),n.updateSize(),n.updateSlides(),n.params.watchOverflow&&n.checkOverflow(),n.params.grabCursor&&n.setGrabCursor(),n.params.preloadImages&&n.preloadImages(),n.params.loop?n.slideTo(n.params.initialSlide+n.loopedSlides,0,n.params.runCallbacksOnInit):n.slideTo(n.params.initialSlide,0,n.params.runCallbacksOnInit),n.attachEvents(),n.initialized=!0,n.emit("init"))},r.prototype.destroy=function(t,i){t===void 0&&(t=!0);i===void 0&&(i=!0);var r=this,u=r.params,e=r.$el,o=r.$wrapperEl,f=r.slides;return typeof r.params=="undefined"||r.destroyed?null:(r.emit("beforeDestroy"),r.initialized=!1,r.detachEvents(),u.loop&&r.loopDestroy(),i&&(r.removeClasses(),e.removeAttr("style"),o.removeAttr("style"),f&&f.length&&f.removeClass([u.slideVisibleClass,u.slideActiveClass,u.slideNextClass,u.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),r.emit("destroy"),Object.keys(r.eventsListeners).forEach(function(n){r.off(n)}),t!==!1&&(r.$el[0].swiper=null,r.$el.data("swiper",null),n.deleteProps(r)),r.destroyed=!0,null)},r.extendDefaults=function(t){n.extend(ut,t)},f.extendedDefaults.get=function(){return ut},f.defaults.get=function(){return ni},f.Class.get=function(){return i},f.$.get=function(){return t},Object.defineProperties(r,f),r}(h),ae={name:"device",proto:{device:e},"static":{device:e}},ve={name:"support",proto:{support:u},"static":{support:u}},p=function(){function n(){var n=i.navigator.userAgent.toLowerCase();return n.indexOf("safari")>=0&&n.indexOf("chrome")<0&&n.indexOf("android")<0}return{isEdge:!!i.navigator.userAgent.match(/Edge/g),isSafari:n(),isUiWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(i.navigator.userAgent)}}(),ye={name:"browser",proto:{browser:p},"static":{browser:p}},pe={name:"resize",create:function(){var t=this;n.extend(t,{resize:{resizeHandler:function(){t&&!t.destroyed&&t.initialized&&(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler:function(){t&&!t.destroyed&&t.initialized&&t.emit("orientationchange")}}})},on:{init:function(){var n=this;i.addEventListener("resize",n.resize.resizeHandler);i.addEventListener("orientationchange",n.resize.orientationChangeHandler)},destroy:function(){var n=this;i.removeEventListener("resize",n.resize.resizeHandler);i.removeEventListener("orientationchange",n.resize.orientationChangeHandler)}}},w={func:i.MutationObserver||i.WebkitMutationObserver,attach:function(n,t){t===void 0&&(t={});var r=this,f=w.func,u=new f(function(n){if(n.length===1){r.emit("observerUpdate",n[0]);return}var t=function(){r.emit("observerUpdate",n[0])};i.requestAnimationFrame?i.requestAnimationFrame(t):i.setTimeout(t,0)});u.observe(n,{attributes:typeof t.attributes=="undefined"?!0:t.attributes,childList:typeof t.childList=="undefined"?!0:t.childList,characterData:typeof t.characterData=="undefined"?!0:t.characterData});r.observer.observers.push(u)},init:function(){var n=this,i,t;if(u.observer&&n.params.observer){if(n.params.observeParents)for(i=n.$el.parents(),t=0;t<i.length;t+=1)n.observer.attach(i[t]);n.observer.attach(n.$el[0],{childList:n.params.observeSlideChildren});n.observer.attach(n.$wrapperEl[0],{attributes:!1})}},destroy:function(){var n=this;n.observer.observers.forEach(function(n){n.disconnect()});n.observer.observers=[]}},we={name:"observer",params:{observer:!1,observeParents:!1,observeSlideChildren:!1},create:function(){var t=this;n.extend(t,{observer:{init:w.init.bind(t),attach:w.attach.bind(t),destroy:w.destroy.bind(t),observers:[]}})},on:{init:function(){var n=this;n.observer.init()},destroy:function(){var n=this;n.observer.destroy()}}},a={update:function(t){function ut(){i.updateSlides();i.updateProgress();i.updateSlidesClasses();i.lazy&&i.params.lazy.enabled&&i.lazy.load()}var i=this,v=i.params,y=v.slidesPerView,c=v.slidesPerGroup,ft=v.centeredSlides,nt=i.params.virtual,tt=nt.addSlidesBefore,it=nt.addSlidesAfter,f=i.virtual,p=f.from,l=f.to,s=f.slides,et=f.slidesGrid,rt=f.renderSlide,ot=f.offset,w,b,k,d,g,a,o,r;i.updateActiveIndex();w=i.activeIndex||0;b=i.rtlTranslate?"right":i.isHorizontal()?"left":"top";ft?(k=Math.floor(y/2)+c+tt,d=Math.floor(y/2)+c+it):(k=y+(c-1)+tt,d=c+it);var u=Math.max((w||0)-d,0),e=Math.min((w||0)+k,s.length-1),h=(i.slidesGrid[u]||0)-(i.slidesGrid[0]||0);if(n.extend(i.virtual,{from:u,to:e,offset:h,slidesGrid:i.slidesGrid}),p===u&&l===e&&!t){i.slidesGrid!==et&&h!==ot&&i.slides.css(b,h+"px");i.updateProgress();return}if(i.params.virtual.renderExternal){i.params.virtual.renderExternal.call(i,{offset:h,from:u,to:e,slides:function(){for(var t=[],n=u;n<=e;n+=1)t.push(s[n]);return t}()});ut();return}if(g=[],a=[],t)i.$wrapperEl.find("."+i.params.slideClass).remove();else for(o=p;o<=l;o+=1)(o<u||o>e)&&i.$wrapperEl.find("."+i.params.slideClass+'[data-swiper-slide-index="'+o+'"]').remove();for(r=0;r<s.length;r+=1)r>=u&&r<=e&&(typeof l=="undefined"||t?a.push(r):(r>l&&a.push(r),r<p&&g.push(r)));a.forEach(function(n){i.$wrapperEl.append(rt(s[n],n))});g.sort(function(n,t){return t-n}).forEach(function(n){i.$wrapperEl.prepend(rt(s[n],n))});i.$wrapperEl.children(".swiper-slide").css(b,h+"px");ut()},renderSlide:function(n,i){var r=this,f=r.params.virtual,u;return f.cache&&r.virtual.cache[i]?r.virtual.cache[i]:(u=f.renderSlide?t(f.renderSlide.call(r,n,i)):t('<div class="'+r.params.slideClass+'" data-swiper-slide-index="'+i+'">'+n+"<\/div>"),u.attr("data-swiper-slide-index")||u.attr("data-swiper-slide-index",i),f.cache&&(r.virtual.cache[i]=u),u)},appendSlide:function(n){var i=this,t;if(typeof n=="object"&&"length"in n)for(t=0;t<n.length;t+=1)n[t]&&i.virtual.slides.push(n[t]);else i.virtual.slides.push(n);i.virtual.update(!0)},prependSlide:function(n){var t=this,f=t.activeIndex,e=f+1,o=1,i,r,u;if(Array.isArray(n)){for(i=0;i<n.length;i+=1)n[i]&&t.virtual.slides.unshift(n[i]);e=f+n.length;o=n.length}else t.virtual.slides.unshift(n);t.params.virtual.cache&&(r=t.virtual.cache,u={},Object.keys(r).forEach(function(n){var t=r[n],i=t.attr("data-swiper-slide-index");i&&t.attr("data-swiper-slide-index",parseInt(i,10)+1);u[parseInt(n,10)+o]=t}),t.virtual.cache=u);t.virtual.update(!0);t.slideTo(e,0)},removeSlide:function(n){var i=this,t,r;if(typeof n!="undefined"&&n!==null){if(t=i.activeIndex,Array.isArray(n))for(r=n.length-1;r>=0;r-=1)i.virtual.slides.splice(n[r],1),i.params.virtual.cache&&delete i.virtual.cache[n[r]],n[r]<t&&(t-=1),t=Math.max(t,0);else i.virtual.slides.splice(n,1),i.params.virtual.cache&&delete i.virtual.cache[n],n<t&&(t-=1),t=Math.max(t,0);i.virtual.update(!0);i.slideTo(t,0)}},removeAllSlides:function(){var n=this;n.virtual.slides=[];n.params.virtual.cache&&(n.virtual.cache={});n.virtual.update(!0);n.slideTo(0,0)}},be={name:"virtual",params:{virtual:{enabled:!1,slides:[],cache:!0,renderSlide:null,renderExternal:null,addSlidesBefore:0,addSlidesAfter:0}},create:function(){var t=this;n.extend(t,{virtual:{update:a.update.bind(t),appendSlide:a.appendSlide.bind(t),prependSlide:a.prependSlide.bind(t),removeSlide:a.removeSlide.bind(t),removeAllSlides:a.removeAllSlides.bind(t),renderSlide:a.renderSlide.bind(t),slides:t.params.virtual.slides,cache:{}}})},on:{beforeInit:function(){var t=this,i;t.params.virtual.enabled&&(t.classNames.push(t.params.containerModifierClass+"virtual"),i={watchSlidesProgress:!0},n.extend(t.params,i),n.extend(t.originalParams,i),t.params.initialSlide||t.virtual.update())},setTranslate:function(){var n=this;n.params.virtual.enabled&&n.virtual.update()}}},ft={handle:function(n){var u=this,o=u.rtlTranslate,f=n,t,c,l,h,s;if((f.originalEvent&&(f=f.originalEvent),t=f.keyCode||f.charCode,!u.allowSlideNext&&(u.isHorizontal()&&t===39||u.isVertical()&&t===40||t===34))||!u.allowSlidePrev&&(u.isHorizontal()&&t===37||u.isVertical()&&t===38||t===33))return!1;if(f.shiftKey||f.altKey||f.ctrlKey||f.metaKey||r.activeElement&&r.activeElement.nodeName&&(r.activeElement.nodeName.toLowerCase()==="input"||r.activeElement.nodeName.toLowerCase()==="textarea"))return undefined;if(u.params.keyboard.onlyInViewport&&(t===33||t===34||t===37||t===39||t===38||t===40)){if(c=!1,u.$el.parents("."+u.params.slideClass).length>0&&u.$el.parents("."+u.params.slideActiveClass).length===0)return undefined;var a=i.innerWidth,v=i.innerHeight,e=u.$el.offset();for(o&&(e.left-=u.$el[0].scrollLeft),l=[[e.left,e.top],[e.left+u.width,e.top],[e.left,e.top+u.height],[e.left+u.width,e.top+u.height]],h=0;h<l.length;h+=1)s=l[h],s[0]>=0&&s[0]<=a&&s[1]>=0&&s[1]<=v&&(c=!0);if(!c)return undefined}return u.isHorizontal()?((t===33||t===34||t===37||t===39)&&(f.preventDefault?f.preventDefault():f.returnValue=!1),((t===34||t===39)&&!o||(t===33||t===37)&&o)&&u.slideNext(),((t===33||t===37)&&!o||(t===34||t===39)&&o)&&u.slidePrev()):((t===33||t===34||t===38||t===40)&&(f.preventDefault?f.preventDefault():f.returnValue=!1),(t===34||t===40)&&u.slideNext(),(t===33||t===38)&&u.slidePrev()),u.emit("keyPress",t),undefined},enable:function(){var n=this;if(!n.keyboard.enabled){t(r).on("keydown",n.keyboard.handle);n.keyboard.enabled=!0}},disable:function(){var n=this;n.keyboard.enabled&&(t(r).off("keydown",n.keyboard.handle),n.keyboard.enabled=!1)}},ke={name:"keyboard",params:{keyboard:{enabled:!1,onlyInViewport:!0}},create:function(){var t=this;n.extend(t,{keyboard:{enabled:!1,enable:ft.enable.bind(t),disable:ft.disable.bind(t),handle:ft.handle.bind(t)}})},on:{init:function(){var n=this;n.params.keyboard.enabled&&n.keyboard.enable()},destroy:function(){var n=this;n.keyboard.enabled&&n.keyboard.disable()}}};var c={lastScrollTime:n.now(),lastEventBeforeSnap:undefined,recentWheelEvents:[],event:function(){return i.navigator.userAgent.indexOf("firefox")>-1?"DOMMouseScroll":de()?"wheel":"mousewheel"},normalize:function(n){var f=10,e=40,o=800,u=0,r=0,t=0,i=0;return"detail"in n&&(r=n.detail),"wheelDelta"in n&&(r=-n.wheelDelta/120),"wheelDeltaY"in n&&(r=-n.wheelDeltaY/120),"wheelDeltaX"in n&&(u=-n.wheelDeltaX/120),"axis"in n&&n.axis===n.HORIZONTAL_AXIS&&(u=r,r=0),t=u*f,i=r*f,"deltaY"in n&&(i=n.deltaY),"deltaX"in n&&(t=n.deltaX),n.shiftKey&&!t&&(t=i,i=0),(t||i)&&n.deltaMode&&(n.deltaMode===1?(t*=e,i*=e):(t*=o,i*=o)),t&&!u&&(u=t<1?-1:1),i&&!r&&(r=i<1?-1:1),{spinX:u,spinY:r,pixelX:t,pixelY:i}},handleMouseEnter:function(){var n=this;n.mouseEntered=!0},handleMouseLeave:function(){var n=this;n.mouseEntered=!1},handle:function(i){var o=i,r=this,v=r.params.mousewheel,b,h,l,y,f,w,k,nt;if(r.params.cssMode&&o.preventDefault(),b=r.$el,r.params.mousewheel.eventsTarged!=="container"&&(b=t(r.params.mousewheel.eventsTarged)),!r.mouseEntered&&!b[0].contains(o.target)&&!v.releaseOnEdges)return!0;o.originalEvent&&(o=o.originalEvent);var u=0,d=r.rtlTranslate?-1:1,s=c.normalize(o);if(v.forceToAxis)if(r.isHorizontal())if(Math.abs(s.pixelX)>Math.abs(s.pixelY))u=s.pixelX*d;else return!0;else if(Math.abs(s.pixelY)>Math.abs(s.pixelX))u=s.pixelY;else return!0;else u=Math.abs(s.pixelX)>Math.abs(s.pixelY)?-s.pixelX*d:-s.pixelY;if(u===0)return!0;if(v.invert&&(u=-u),r.params.freeMode){var e={time:n.now(),delta:Math.abs(u),direction:Math.sign(u)},tt=r.mousewheel,p=tt.lastEventBeforeSnap,g=p&&e.time<p.time+500&&e.delta<=p.delta&&e.direction===p.direction;if(!g){r.mousewheel.lastEventBeforeSnap=undefined;r.params.loop&&r.loopFix();var a=r.getTranslate()+u*v.sensitivity,it=r.isBeginning,rt=r.isEnd;if(a>=r.minTranslate()&&(a=r.minTranslate()),a<=r.maxTranslate()&&(a=r.maxTranslate()),r.setTransition(0),r.setTranslate(a),r.updateProgress(),r.updateActiveIndex(),r.updateSlidesClasses(),(!it&&r.isBeginning||!rt&&r.isEnd)&&r.updateSlidesClasses(),r.params.freeModeSticky&&(clearTimeout(r.mousewheel.timeout),r.mousewheel.timeout=undefined,f=r.mousewheel.recentWheelEvents,f.length>=15&&f.shift(),w=f.length?f[f.length-1]:undefined,k=f[0],f.push(e),w&&(e.delta>w.delta||e.direction!==w.direction)?f.splice(0):f.length>=15&&e.time-k.time<500&&k.delta-e.delta>=1&&e.delta<=6&&(nt=u>0?.8:.2,r.mousewheel.lastEventBeforeSnap=e,f.splice(0),r.mousewheel.timeout=n.nextTick(function(){r.slideToClosest(r.params.speed,!0,undefined,nt)},0)),r.mousewheel.timeout||(r.mousewheel.timeout=n.nextTick(function(){r.mousewheel.lastEventBeforeSnap=e;f.splice(0);r.slideToClosest(r.params.speed,!0,undefined,.5)},500))),g||r.emit("scroll",o),r.params.autoplay&&r.params.autoplayDisableOnInteraction&&r.autoplay.stop(),a===r.minTranslate()||a===r.maxTranslate())return!0}}else if(h={time:n.now(),delta:Math.abs(u),direction:Math.sign(u),raw:i},l=r.mousewheel.recentWheelEvents,l.length>=2&&l.shift(),y=l.length?l[l.length-1]:undefined,l.push(h),y?(h.direction!==y.direction||h.delta>y.delta)&&r.mousewheel.animateSlider(h):r.mousewheel.animateSlider(h),r.mousewheel.releaseScroll(h))return!0;return o.preventDefault?o.preventDefault():o.returnValue=!1,!1},animateSlider:function(t){var r=this;return t.delta>=6&&n.now()-r.mousewheel.lastScrollTime<60?!0:(t.direction<0?r.isEnd&&!r.params.loop||r.animating||(r.slideNext(),r.emit("scroll",t.raw)):r.isBeginning&&!r.params.loop||r.animating||(r.slidePrev(),r.emit("scroll",t.raw)),r.mousewheel.lastScrollTime=(new i.Date).getTime(),!1)},releaseScroll:function(n){var t=this,i=t.params.mousewheel;if(n.direction<0){if(t.isEnd&&!t.params.loop&&i.releaseOnEdges)return!0}else if(t.isBeginning&&!t.params.loop&&i.releaseOnEdges)return!0;return!1},enable:function(){var n=this,r=c.event(),i;if(n.params.cssMode)return n.wrapperEl.removeEventListener(r,n.mousewheel.handle),!0;if(!r||n.mousewheel.enabled)return!1;i=n.$el;n.params.mousewheel.eventsTarged!=="container"&&(i=t(n.params.mousewheel.eventsTarged));i.on("mouseenter",n.mousewheel.handleMouseEnter);i.on("mouseleave",n.mousewheel.handleMouseLeave);i.on(r,n.mousewheel.handle);return n.mousewheel.enabled=!0,!0},disable:function(){var n=this,i=c.event(),r;return n.params.cssMode?(n.wrapperEl.addEventListener(i,n.mousewheel.handle),!0):i?n.mousewheel.enabled?(r=n.$el,n.params.mousewheel.eventsTarged!=="container"&&(r=t(n.params.mousewheel.eventsTarged)),r.off(i,n.mousewheel.handle),n.mousewheel.enabled=!1,!0):!1:!1}},ge={name:"mousewheel",params:{mousewheel:{enabled:!1,releaseOnEdges:!1,invert:!1,forceToAxis:!1,sensitivity:1,eventsTarged:"container"}},create:function(){var t=this;n.extend(t,{mousewheel:{enabled:!1,enable:c.enable.bind(t),disable:c.disable.bind(t),handle:c.handle.bind(t),handleMouseEnter:c.handleMouseEnter.bind(t),handleMouseLeave:c.handleMouseLeave.bind(t),animateSlider:c.animateSlider.bind(t),releaseScroll:c.releaseScroll.bind(t),lastScrollTime:n.now(),lastEventBeforeSnap:undefined,recentWheelEvents:[]}})},on:{init:function(){var n=this;!n.params.mousewheel.enabled&&n.params.cssMode&&n.mousewheel.disable();n.params.mousewheel.enabled&&n.mousewheel.enable()},destroy:function(){var n=this;n.params.cssMode&&n.mousewheel.enable();n.mousewheel.enabled&&n.mousewheel.disable()}}},v={update:function(){var n=this,t=n.params.navigation;if(!n.params.loop){var u=n.navigation,i=u.$nextEl,r=u.$prevEl;r&&r.length>0&&(n.isBeginning?r.addClass(t.disabledClass):r.removeClass(t.disabledClass),r[n.params.watchOverflow&&n.isLocked?"addClass":"removeClass"](t.lockClass));i&&i.length>0&&(n.isEnd?i.addClass(t.disabledClass):i.removeClass(t.disabledClass),i[n.params.watchOverflow&&n.isLocked?"addClass":"removeClass"](t.lockClass))}},onPrevClick:function(n){var t=this;(n.preventDefault(),!t.isBeginning||t.params.loop)&&t.slidePrev()},onNextClick:function(n){var t=this;(n.preventDefault(),!t.isEnd||t.params.loop)&&t.slideNext()},init:function(){var r=this,i=r.params.navigation,u,f;if(i.nextEl||i.prevEl){if(i.nextEl&&(u=t(i.nextEl),r.params.uniqueNavElements&&typeof i.nextEl=="string"&&u.length>1&&r.$el.find(i.nextEl).length===1&&(u=r.$el.find(i.nextEl))),i.prevEl&&(f=t(i.prevEl),r.params.uniqueNavElements&&typeof i.prevEl=="string"&&f.length>1&&r.$el.find(i.prevEl).length===1&&(f=r.$el.find(i.prevEl))),u&&u.length>0)u.on("click",r.navigation.onNextClick);if(f&&f.length>0)f.on("click",r.navigation.onPrevClick);n.extend(r.navigation,{$nextEl:u,nextEl:u&&u[0],$prevEl:f,prevEl:f&&f[0]})}},destroy:function(){var n=this,r=n.navigation,t=r.$nextEl,i=r.$prevEl;t&&t.length&&(t.off("click",n.navigation.onNextClick),t.removeClass(n.params.navigation.disabledClass));i&&i.length&&(i.off("click",n.navigation.onPrevClick),i.removeClass(n.params.navigation.disabledClass))}},no={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){var t=this;n.extend(t,{navigation:{init:v.init.bind(t),update:v.update.bind(t),destroy:v.destroy.bind(t),onNextClick:v.onNextClick.bind(t),onPrevClick:v.onPrevClick.bind(t)}})},on:{init:function(){var n=this;n.navigation.init();n.navigation.update()},toEdge:function(){var n=this;n.navigation.update()},fromEdge:function(){var n=this;n.navigation.update()},destroy:function(){var n=this;n.navigation.destroy()},click:function(n){var i=this,e=i.navigation,r=e.$nextEl,u=e.$prevEl,f;!i.params.navigation.hideOnClick||t(n.target).is(u)||t(n.target).is(r)||(r?f=r.hasClass(i.params.navigation.hiddenClass):u&&(f=u.hasClass(i.params.navigation.hiddenClass)),f===!0?i.emit("navigationShow",i):i.emit("navigationHide",i),r&&r.toggleClass(i.params.navigation.hiddenClass),u&&u.toggleClass(i.params.navigation.hiddenClass))}}},b={update:function(){var n=this,nt=n.rtl,i=n.params.pagination,u,e,s,p,a,w,v,y,h,c,b;if(i.el&&n.pagination.el&&n.pagination.$el&&n.pagination.$el.length!==0){var l=n.virtual&&n.params.virtual.enabled?n.virtual.slides.length:n.slides.length,f=n.pagination.$el,r,o=n.params.loop?Math.ceil((l-n.loopedSlides*2)/n.params.slidesPerGroup):n.snapGrid.length;if(n.params.loop?(r=Math.ceil((n.activeIndex-n.loopedSlides)/n.params.slidesPerGroup),r>l-1-n.loopedSlides*2&&(r-=l-n.loopedSlides*2),r>o-1&&(r-=o),r<0&&n.params.paginationType!=="bullets"&&(r=o+r)):r=typeof n.snapIndex!="undefined"?n.snapIndex:n.activeIndex||0,i.type==="bullets"&&n.pagination.bullets&&n.pagination.bullets.length>0){if(u=n.pagination.bullets,i.dynamicBullets&&(n.pagination.bulletSize=u.eq(0)[n.isHorizontal()?"outerWidth":"outerHeight"](!0),f.css(n.isHorizontal()?"width":"height",n.pagination.bulletSize*(i.dynamicMainBullets+4)+"px"),i.dynamicMainBullets>1&&n.previousIndex!==undefined&&(n.pagination.dynamicBulletIndex+=r-n.previousIndex,n.pagination.dynamicBulletIndex>i.dynamicMainBullets-1?n.pagination.dynamicBulletIndex=i.dynamicMainBullets-1:n.pagination.dynamicBulletIndex<0&&(n.pagination.dynamicBulletIndex=0)),e=r-n.pagination.dynamicBulletIndex,s=e+(Math.min(u.length,i.dynamicMainBullets)-1),p=(s+e)/2),u.removeClass(i.bulletActiveClass+" "+i.bulletActiveClass+"-next "+i.bulletActiveClass+"-next-next "+i.bulletActiveClass+"-prev "+i.bulletActiveClass+"-prev-prev "+i.bulletActiveClass+"-main"),f.length>1)u.each(function(n,u){var f=t(u),o=f.index();o===r&&f.addClass(i.bulletActiveClass);i.dynamicBullets&&(o>=e&&o<=s&&f.addClass(i.bulletActiveClass+"-main"),o===e&&f.prev().addClass(i.bulletActiveClass+"-prev").prev().addClass(i.bulletActiveClass+"-prev-prev"),o===s&&f.next().addClass(i.bulletActiveClass+"-next").next().addClass(i.bulletActiveClass+"-next-next"))});else if(a=u.eq(r),w=a.index(),a.addClass(i.bulletActiveClass),i.dynamicBullets){for(v=u.eq(e),y=u.eq(s),h=e;h<=s;h+=1)u.eq(h).addClass(i.bulletActiveClass+"-main");if(n.params.loop)if(w>=u.length-i.dynamicMainBullets){for(c=i.dynamicMainBullets;c>=0;c-=1)u.eq(u.length-c).addClass(i.bulletActiveClass+"-main");u.eq(u.length-i.dynamicMainBullets-1).addClass(i.bulletActiveClass+"-prev")}else v.prev().addClass(i.bulletActiveClass+"-prev").prev().addClass(i.bulletActiveClass+"-prev-prev"),y.next().addClass(i.bulletActiveClass+"-next").next().addClass(i.bulletActiveClass+"-next-next");else v.prev().addClass(i.bulletActiveClass+"-prev").prev().addClass(i.bulletActiveClass+"-prev-prev"),y.next().addClass(i.bulletActiveClass+"-next").next().addClass(i.bulletActiveClass+"-next-next")}if(i.dynamicBullets){var tt=Math.min(u.length,i.dynamicMainBullets+4),it=(n.pagination.bulletSize*tt-n.pagination.bulletSize)/2-p*n.pagination.bulletSize,rt=nt?"right":"left";u.css(n.isHorizontal()?rt:"top",it+"px")}}if(i.type==="fraction"&&(f.find("."+i.currentClass).text(i.formatFractionCurrent(r+1)),f.find("."+i.totalClass).text(i.formatFractionTotal(o))),i.type==="progressbar"){b=i.progressbarOpposite?n.isHorizontal()?"vertical":"horizontal":n.isHorizontal()?"horizontal":"vertical";var k=(r+1)/o,d=1,g=1;b==="horizontal"?d=k:g=k;f.find("."+i.progressbarFillClass).transform("translate3d(0,0,0) scaleX("+d+") scaleY("+g+")").transition(n.params.speed)}i.type==="custom"&&i.renderCustom?(f.html(i.renderCustom(n,r+1,o)),n.emit("paginationRender",n,f[0])):n.emit("paginationUpdate",n,f[0]);f[n.params.watchOverflow&&n.isLocked?"addClass":"removeClass"](i.lockClass)}},render:function(){var t=this,n=t.params.pagination,f,u;if(n.el&&t.pagination.el&&t.pagination.$el&&t.pagination.$el.length!==0){var e=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,r=t.pagination.$el,i="";if(n.type==="bullets"){for(f=t.params.loop?Math.ceil((e-t.loopedSlides*2)/t.params.slidesPerGroup):t.snapGrid.length,u=0;u<f;u+=1)i+=n.renderBullet?n.renderBullet.call(t,u,n.bulletClass):"<"+n.bulletElement+' class="'+n.bulletClass+'"><\/'+n.bulletElement+">";r.html(i);t.pagination.bullets=r.find("."+n.bulletClass)}n.type==="fraction"&&(i=n.renderFraction?n.renderFraction.call(t,n.currentClass,n.totalClass):'<span class="'+n.currentClass+'"><\/span> / <span class="'+n.totalClass+'"><\/span>',r.html(i));n.type==="progressbar"&&(i=n.renderProgressbar?n.renderProgressbar.call(t,n.progressbarFillClass):'<span class="'+n.progressbarFillClass+'"><\/span>',r.html(i));n.type!=="custom"&&t.emit("paginationRender",t.pagination.$el[0])}},init:function(){var u=this,i=u.params.pagination,r;if(i.el&&(r=t(i.el),r.length!==0)){if(u.params.uniqueNavElements&&typeof i.el=="string"&&r.length>1&&u.$el.find(i.el).length===1&&(r=u.$el.find(i.el)),i.type==="bullets"&&i.clickable&&r.addClass(i.clickableClass),r.addClass(i.modifierClass+i.type),i.type==="bullets"&&i.dynamicBullets&&(r.addClass(""+i.modifierClass+i.type+"-dynamic"),u.pagination.dynamicBulletIndex=0,i.dynamicMainBullets<1&&(i.dynamicMainBullets=1)),i.type==="progressbar"&&i.progressbarOpposite&&r.addClass(i.progressbarOppositeClass),i.clickable)r.on("click","."+i.bulletClass,function(n){n.preventDefault();var i=t(this).index()*u.params.slidesPerGroup;u.params.loop&&(i+=u.loopedSlides);u.slideTo(i)});n.extend(u.pagination,{$el:r,el:r[0]})}},destroy:function(){var n=this,t=n.params.pagination,i;t.el&&n.pagination.el&&n.pagination.$el&&n.pagination.$el.length!==0&&(i=n.pagination.$el,i.removeClass(t.hiddenClass),i.removeClass(t.modifierClass+t.type),n.pagination.bullets&&n.pagination.bullets.removeClass(t.bulletActiveClass),t.clickable&&i.off("click","."+t.bulletClass))}},to={name:"pagination",params:{pagination:{el:null,bulletElement:"span",clickable:!1,hideOnClick:!1,renderBullet:null,renderProgressbar:null,renderFraction:null,renderCustom:null,progressbarOpposite:!1,type:"bullets",dynamicBullets:!1,dynamicMainBullets:1,formatFractionCurrent:function(n){return n},formatFractionTotal:function(n){return n},bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",modifierClass:"swiper-pagination-",currentClass:"swiper-pagination-current",totalClass:"swiper-pagination-total",hiddenClass:"swiper-pagination-hidden",progressbarFillClass:"swiper-pagination-progressbar-fill",progressbarOppositeClass:"swiper-pagination-progressbar-opposite",clickableClass:"swiper-pagination-clickable",lockClass:"swiper-pagination-lock"}},create:function(){var t=this;n.extend(t,{pagination:{init:b.init.bind(t),render:b.render.bind(t),update:b.update.bind(t),destroy:b.destroy.bind(t),dynamicBulletIndex:0}})},on:{init:function(){var n=this;n.pagination.init();n.pagination.render();n.pagination.update()},activeIndexChange:function(){var n=this;n.params.loop?n.pagination.update():typeof n.snapIndex=="undefined"&&n.pagination.update()},snapIndexChange:function(){var n=this;n.params.loop||n.pagination.update()},slidesLengthChange:function(){var n=this;n.params.loop&&(n.pagination.render(),n.pagination.update())},snapGridLengthChange:function(){var n=this;n.params.loop||(n.pagination.render(),n.pagination.update())},destroy:function(){var n=this;n.pagination.destroy()},click:function(n){var i=this,r;i.params.pagination.el&&i.params.pagination.hideOnClick&&i.pagination.$el.length>0&&!t(n.target).hasClass(i.params.pagination.bulletClass)&&(r=i.pagination.$el.hasClass(i.params.pagination.hiddenClass),r===!0?i.emit("paginationShow",i):i.emit("paginationHide",i),i.pagination.$el.toggleClass(i.params.pagination.hiddenClass))}}},o={setTranslate:function(){var t=this;if(t.params.scrollbar.el&&t.scrollbar.el){var f=t.scrollbar,s=t.rtlTranslate,h=t.progress,i=f.dragSize,u=f.trackSize,e=f.$dragEl,o=f.$el,c=t.params.scrollbar,r=i,n=(u-i)*h;s?(n=-n,n>0?(r=i-n,n=0):-n+i>u&&(r=u+n)):n<0?(r=i+n,n=0):n+i>u&&(r=u-n);t.isHorizontal()?(e.transform("translate3d("+n+"px, 0, 0)"),e[0].style.width=r+"px"):(e.transform("translate3d(0px, "+n+"px, 0)"),e[0].style.height=r+"px");c.hide&&(clearTimeout(t.scrollbar.timeout),o[0].style.opacity=1,t.scrollbar.timeout=setTimeout(function(){o[0].style.opacity=0;o.transition(400)},1e3))}},setTransition:function(n){var t=this;t.params.scrollbar.el&&t.scrollbar.el&&t.scrollbar.$dragEl.transition(n)},updateSize:function(){var t=this;if(t.params.scrollbar.el&&t.scrollbar.el){var i=t.scrollbar,r=i.$dragEl,u=i.$el;r[0].style.width="";r[0].style.height="";var o=t.isHorizontal()?u[0].offsetWidth:u[0].offsetHeight,f=t.size/t.virtualSize,s=f*(o/t.size),e;e=t.params.scrollbar.dragSize==="auto"?o*f:parseInt(t.params.scrollbar.dragSize,10);t.isHorizontal()?r[0].style.width=e+"px":r[0].style.height=e+"px";u[0].style.display=f>=1?"none":"";t.params.scrollbar.hide&&(u[0].style.opacity=0);n.extend(i,{trackSize:o,divider:f,moveDivider:s,dragSize:e});i.$el[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](t.params.scrollbar.lockClass)}},getPointerPosition:function(n){var t=this;return t.isHorizontal()?n.type==="touchstart"||n.type==="touchmove"?n.targetTouches[0].clientX:n.clientX:n.type==="touchstart"||n.type==="touchmove"?n.targetTouches[0].clientY:n.clientY},setDragPosition:function(n){var t=this,r=t.scrollbar,o=t.rtlTranslate,s=r.$el,f=r.dragSize,h=r.trackSize,e=r.dragStartPos,i,u;i=(r.getPointerPosition(n)-s.offset()[t.isHorizontal()?"left":"top"]-(e!==null?e:f/2))/(h-f);i=Math.max(Math.min(i,1),0);o&&(i=1-i);u=t.minTranslate()+(t.maxTranslate()-t.minTranslate())*i;t.updateProgress(u);t.setTranslate(u);t.updateActiveIndex();t.updateSlidesClasses()},onDragStart:function(n){var t=this,f=t.params.scrollbar,i=t.scrollbar,e=t.$wrapperEl,u=i.$el,r=i.$dragEl;t.scrollbar.isTouched=!0;t.scrollbar.dragStartPos=n.target===r[0]||n.target===r?i.getPointerPosition(n)-n.target.getBoundingClientRect()[t.isHorizontal()?"left":"top"]:null;n.preventDefault();n.stopPropagation();e.transition(100);r.transition(100);i.setDragPosition(n);clearTimeout(t.scrollbar.dragTimeout);u.transition(0);f.hide&&u.css("opacity",1);t.params.cssMode&&t.$wrapperEl.css("scroll-snap-type","none");t.emit("scrollbarDragStart",n)},onDragMove:function(n){var t=this,i=t.scrollbar,r=t.$wrapperEl,u=i.$el,f=i.$dragEl;t.scrollbar.isTouched&&(n.preventDefault?n.preventDefault():n.returnValue=!1,i.setDragPosition(n),r.transition(0),u.transition(0),f.transition(0),t.emit("scrollbarDragMove",n))},onDragEnd:function(t){var i=this,r=i.params.scrollbar,f=i.scrollbar,e=i.$wrapperEl,u=f.$el;i.scrollbar.isTouched&&(i.scrollbar.isTouched=!1,i.params.cssMode&&(i.$wrapperEl.css("scroll-snap-type",""),e.transition("")),r.hide&&(clearTimeout(i.scrollbar.dragTimeout),i.scrollbar.dragTimeout=n.nextTick(function(){u.css("opacity",0);u.transition(400)},1e3)),i.emit("scrollbarDragEnd",t),r.snapOnRelease&&i.slideToClosest())},enableDraggable:function(){var n=this;if(n.params.scrollbar.el){var h=n.scrollbar,f=n.touchEventsTouch,e=n.touchEventsDesktop,o=n.params,c=h.$el,t=c[0],i=u.passiveListener&&o.passiveListeners?{passive:!1,capture:!1}:!1,s=u.passiveListener&&o.passiveListeners?{passive:!0,capture:!1}:!1;u.touch?(t.addEventListener(f.start,n.scrollbar.onDragStart,i),t.addEventListener(f.move,n.scrollbar.onDragMove,i),t.addEventListener(f.end,n.scrollbar.onDragEnd,s)):(t.addEventListener(e.start,n.scrollbar.onDragStart,i),r.addEventListener(e.move,n.scrollbar.onDragMove,i),r.addEventListener(e.end,n.scrollbar.onDragEnd,s))}},disableDraggable:function(){var n=this;if(n.params.scrollbar.el){var h=n.scrollbar,f=n.touchEventsTouch,e=n.touchEventsDesktop,o=n.params,c=h.$el,t=c[0],i=u.passiveListener&&o.passiveListeners?{passive:!1,capture:!1}:!1,s=u.passiveListener&&o.passiveListeners?{passive:!0,capture:!1}:!1;u.touch?(t.removeEventListener(f.start,n.scrollbar.onDragStart,i),t.removeEventListener(f.move,n.scrollbar.onDragMove,i),t.removeEventListener(f.end,n.scrollbar.onDragEnd,s)):(t.removeEventListener(e.start,n.scrollbar.onDragStart,i),r.removeEventListener(e.move,n.scrollbar.onDragMove,i),r.removeEventListener(e.end,n.scrollbar.onDragEnd,s))}},init:function(){var i=this,u;if(i.params.scrollbar.el){var e=i.scrollbar,o=i.$el,f=i.params.scrollbar,r=t(f.el);i.params.uniqueNavElements&&typeof f.el=="string"&&r.length>1&&o.find(f.el).length===1&&(r=o.find(f.el));u=r.find("."+i.params.scrollbar.dragClass);u.length===0&&(u=t('<div class="'+i.params.scrollbar.dragClass+'"><\/div>'),r.append(u));n.extend(e,{$el:r,el:r[0],$dragEl:u,dragEl:u[0]});f.draggable&&e.enableDraggable()}},destroy:function(){var n=this;n.scrollbar.disableDraggable()}},io={name:"scrollbar",params:{scrollbar:{el:null,dragSize:"auto",hide:!1,draggable:!1,snapOnRelease:!0,lockClass:"swiper-scrollbar-lock",dragClass:"swiper-scrollbar-drag"}},create:function(){var t=this;n.extend(t,{scrollbar:{init:o.init.bind(t),destroy:o.destroy.bind(t),updateSize:o.updateSize.bind(t),setTranslate:o.setTranslate.bind(t),setTransition:o.setTransition.bind(t),enableDraggable:o.enableDraggable.bind(t),disableDraggable:o.disableDraggable.bind(t),setDragPosition:o.setDragPosition.bind(t),getPointerPosition:o.getPointerPosition.bind(t),onDragStart:o.onDragStart.bind(t),onDragMove:o.onDragMove.bind(t),onDragEnd:o.onDragEnd.bind(t),isTouched:!1,timeout:null,dragTimeout:null}})},on:{init:function(){var n=this;n.scrollbar.init();n.scrollbar.updateSize();n.scrollbar.setTranslate()},update:function(){var n=this;n.scrollbar.updateSize()},resize:function(){var n=this;n.scrollbar.updateSize()},observerUpdate:function(){var n=this;n.scrollbar.updateSize()},setTranslate:function(){var n=this;n.scrollbar.setTranslate()},setTransition:function(n){var t=this;t.scrollbar.setTransition(n)},destroy:function(){var n=this;n.scrollbar.destroy()}}},et={setTransform:function(n,i){var s=this,v=s.rtl,f=t(n),h=v?-1:1,c=f.attr("data-swiper-parallax")||"0",r=f.attr("data-swiper-parallax-x"),u=f.attr("data-swiper-parallax-y"),e=f.attr("data-swiper-parallax-scale"),o=f.attr("data-swiper-parallax-opacity"),l,a;r||u?(r=r||"0",u=u||"0"):s.isHorizontal()?(r=c,u="0"):(u=c,r="0");r=r.indexOf("%")>=0?parseInt(r,10)*i*h+"%":r*i*h+"px";u=u.indexOf("%")>=0?parseInt(u,10)*i+"%":u*i+"px";typeof o!="undefined"&&o!==null&&(l=o-(o-1)*(1-Math.abs(i)),f[0].style.opacity=l);typeof e=="undefined"||e===null?f.transform("translate3d("+r+", "+u+", 0px)"):(a=e-(e-1)*(1-Math.abs(i)),f.transform("translate3d("+r+", "+u+", 0px) scale("+a+")"))},setTranslate:function(){var n=this,r=n.$el,u=n.slides,i=n.progress,f=n.snapGrid;r.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(function(t,r){n.parallax.setTransform(r,i)});u.each(function(r,u){var e=u.progress;n.params.slidesPerGroup>1&&n.params.slidesPerView!=="auto"&&(e+=Math.ceil(r/2)-i*(f.length-1));e=Math.min(Math.max(e,-1),1);t(u).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(function(t,i){n.parallax.setTransform(i,e)})})},setTransition:function(n){n===void 0&&(n=this.params.speed);var i=this,r=i.$el;r.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(function(i,r){var u=t(r),f=parseInt(u.attr("data-swiper-parallax-duration"),10)||n;n===0&&(f=0);u.transition(f)})}},ro={name:"parallax",params:{parallax:{enabled:!1}},create:function(){var t=this;n.extend(t,{parallax:{setTransform:et.setTransform.bind(t),setTranslate:et.setTranslate.bind(t),setTransition:et.setTransition.bind(t)}})},on:{beforeInit:function(){var n=this;n.params.parallax.enabled&&(n.params.watchSlidesProgress=!0,n.originalParams.watchSlidesProgress=!0)},init:function(){var n=this;n.params.parallax.enabled&&n.parallax.setTranslate()},setTranslate:function(){var n=this;n.params.parallax.enabled&&n.parallax.setTranslate()},setTransition:function(n){var t=this;t.params.parallax.enabled&&t.parallax.setTransition(n)}}},ot={getDistanceBetweenTouches:function(n){if(n.targetTouches.length<2)return 1;var t=n.targetTouches[0].pageX,i=n.targetTouches[0].pageY,r=n.targetTouches[1].pageX,u=n.targetTouches[1].pageY;return Math.sqrt(Math.pow(r-t,2)+Math.pow(u-i,2))},onGestureStart:function(n){var r=this,e=r.params.zoom,f=r.zoom,i=f.gesture;if(f.fakeGestureTouched=!1,f.fakeGestureMoved=!1,!u.gestures){if(n.type!=="touchstart"||n.type==="touchstart"&&n.targetTouches.length<2)return;f.fakeGestureTouched=!0;i.scaleStart=ot.getDistanceBetweenTouches(n)}if((!i.$slideEl||!i.$slideEl.length)&&(i.$slideEl=t(n.target).closest("."+r.params.slideClass),i.$slideEl.length===0&&(i.$slideEl=r.slides.eq(r.activeIndex)),i.$imageEl=i.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),i.$imageWrapEl=i.$imageEl.parent("."+e.containerClass),i.maxRatio=i.$imageWrapEl.attr("data-swiper-zoom")||e.maxRatio,i.$imageWrapEl.length===0)){i.$imageEl=undefined;return}i.$imageEl.transition(0);r.zoom.isScaling=!0},onGestureChange:function(n){var f=this,r=f.params.zoom,t=f.zoom,i=t.gesture;if(!u.gestures){if(n.type!=="touchmove"||n.type==="touchmove"&&n.targetTouches.length<2)return;t.fakeGestureMoved=!0;i.scaleMove=ot.getDistanceBetweenTouches(n)}i.$imageEl&&i.$imageEl.length!==0&&(t.scale=u.gestures?n.scale*t.currentScale:i.scaleMove/i.scaleStart*t.currentScale,t.scale>i.maxRatio&&(t.scale=i.maxRatio-1+Math.pow(t.scale-i.maxRatio+1,.5)),t.scale<r.minRatio&&(t.scale=r.minRatio+1-Math.pow(r.minRatio-t.scale+1,.5)),i.$imageEl.transform("translate3d(0,0,0) scale("+t.scale+")"))},onGestureEnd:function(n){var r=this,f=r.params.zoom,t=r.zoom,i=t.gesture;if(!u.gestures){if(!t.fakeGestureTouched||!t.fakeGestureMoved)return;if(n.type!=="touchend"||n.type==="touchend"&&n.changedTouches.length<2&&!e.android)return;t.fakeGestureTouched=!1;t.fakeGestureMoved=!1}i.$imageEl&&i.$imageEl.length!==0&&(t.scale=Math.max(Math.min(t.scale,i.maxRatio),f.minRatio),i.$imageEl.transition(r.params.speed).transform("translate3d(0,0,0) scale("+t.scale+")"),t.currentScale=t.scale,t.isScaling=!1,t.scale===1&&(i.$slideEl=undefined))},onTouchStart:function(n){var u=this,i=u.zoom,r=i.gesture,t=i.image;r.$imageEl&&r.$imageEl.length!==0&&(t.isTouched||(e.android&&n.preventDefault(),t.isTouched=!0,t.touchesStart.x=n.type==="touchstart"?n.targetTouches[0].pageX:n.pageX,t.touchesStart.y=n.type==="touchstart"?n.targetTouches[0].pageY:n.pageY))},onTouchMove:function(t){var e=this,f=e.zoom,u=f.gesture,i=f.image,r=f.velocity,o,s;if(u.$imageEl&&u.$imageEl.length!==0&&(e.allowClick=!1,i.isTouched&&u.$slideEl)&&(i.isMoved||(i.width=u.$imageEl[0].offsetWidth,i.height=u.$imageEl[0].offsetHeight,i.startX=n.getTranslate(u.$imageWrapEl[0],"x")||0,i.startY=n.getTranslate(u.$imageWrapEl[0],"y")||0,u.slideWidth=u.$slideEl[0].offsetWidth,u.slideHeight=u.$slideEl[0].offsetHeight,u.$imageWrapEl.transition(0),e.rtl&&(i.startX=-i.startX,i.startY=-i.startY)),o=i.width*f.scale,s=i.height*f.scale,!(o<u.slideWidth)||!(s<u.slideHeight))){if(i.minX=Math.min(u.slideWidth/2-o/2,0),i.maxX=-i.minX,i.minY=Math.min(u.slideHeight/2-s/2,0),i.maxY=-i.minY,i.touchesCurrent.x=t.type==="touchmove"?t.targetTouches[0].pageX:t.pageX,i.touchesCurrent.y=t.type==="touchmove"?t.targetTouches[0].pageY:t.pageY,!i.isMoved&&!f.isScaling){if(e.isHorizontal()&&(Math.floor(i.minX)===Math.floor(i.startX)&&i.touchesCurrent.x<i.touchesStart.x||Math.floor(i.maxX)===Math.floor(i.startX)&&i.touchesCurrent.x>i.touchesStart.x)){i.isTouched=!1;return}if(!e.isHorizontal()&&(Math.floor(i.minY)===Math.floor(i.startY)&&i.touchesCurrent.y<i.touchesStart.y||Math.floor(i.maxY)===Math.floor(i.startY)&&i.touchesCurrent.y>i.touchesStart.y)){i.isTouched=!1;return}}t.preventDefault();t.stopPropagation();i.isMoved=!0;i.currentX=i.touchesCurrent.x-i.touchesStart.x+i.startX;i.currentY=i.touchesCurrent.y-i.touchesStart.y+i.startY;i.currentX<i.minX&&(i.currentX=i.minX+1-Math.pow(i.minX-i.currentX+1,.8));i.currentX>i.maxX&&(i.currentX=i.maxX-1+Math.pow(i.currentX-i.maxX+1,.8));i.currentY<i.minY&&(i.currentY=i.minY+1-Math.pow(i.minY-i.currentY+1,.8));i.currentY>i.maxY&&(i.currentY=i.maxY-1+Math.pow(i.currentY-i.maxY+1,.8));r.prevPositionX||(r.prevPositionX=i.touchesCurrent.x);r.prevPositionY||(r.prevPositionY=i.touchesCurrent.y);r.prevTime||(r.prevTime=Date.now());r.x=(i.touchesCurrent.x-r.prevPositionX)/(Date.now()-r.prevTime)/2;r.y=(i.touchesCurrent.y-r.prevPositionY)/(Date.now()-r.prevTime)/2;Math.abs(i.touchesCurrent.x-r.prevPositionX)<2&&(r.x=0);Math.abs(i.touchesCurrent.y-r.prevPositionY)<2&&(r.y=0);r.prevPositionX=i.touchesCurrent.x;r.prevPositionY=i.touchesCurrent.y;r.prevTime=Date.now();u.$imageWrapEl.transform("translate3d("+i.currentX+"px, "+i.currentY+"px,0)")}},onTouchEnd:function(){var l=this,i=l.zoom,r=i.gesture,n=i.image,t=i.velocity,s,h,c;if(r.$imageEl&&r.$imageEl.length!==0){if(!n.isTouched||!n.isMoved){n.isTouched=!1;n.isMoved=!1;return}n.isTouched=!1;n.isMoved=!1;var u=300,f=300,a=t.x*u,e=n.currentX+a,v=t.y*f,o=n.currentY+v;t.x!==0&&(u=Math.abs((e-n.currentX)/t.x));t.y!==0&&(f=Math.abs((o-n.currentY)/t.y));s=Math.max(u,f);n.currentX=e;n.currentY=o;h=n.width*i.scale;c=n.height*i.scale;n.minX=Math.min(r.slideWidth/2-h/2,0);n.maxX=-n.minX;n.minY=Math.min(r.slideHeight/2-c/2,0);n.maxY=-n.minY;n.currentX=Math.max(Math.min(n.currentX,n.maxX),n.minX);n.currentY=Math.max(Math.min(n.currentY,n.maxY),n.minY);r.$imageWrapEl.transition(s).transform("translate3d("+n.currentX+"px, "+n.currentY+"px,0)")}},onTransitionEnd:function(){var t=this,i=t.zoom,n=i.gesture;n.$slideEl&&t.previousIndex!==t.activeIndex&&(n.$imageEl.transform("translate3d(0,0,0) scale(1)"),n.$imageWrapEl.transform("translate3d(0,0,0)"),i.scale=1,i.currentScale=1,n.$slideEl=undefined,n.$imageEl=undefined,n.$imageWrapEl=undefined)},toggle:function(n){var i=this,t=i.zoom;t.scale&&t.scale!==1?t.out():t.in(n)},"in":function(n){var f=this,i=f.zoom,e=f.params.zoom,t=i.gesture,h=i.image,c,l,w,b,k,d,r,u,g,nt,tt,it,o,s,a,v,y,p;(t.$slideEl||(t.$slideEl=f.slides.eq(f.activeIndex),t.$imageEl=t.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),t.$imageWrapEl=t.$imageEl.parent("."+e.containerClass)),t.$imageEl&&t.$imageEl.length!==0)&&(t.$slideEl.addClass(""+e.zoomedSlideClass),typeof h.touchesStart.x=="undefined"&&n?(c=n.type==="touchend"?n.changedTouches[0].pageX:n.pageX,l=n.type==="touchend"?n.changedTouches[0].pageY:n.pageY):(c=h.touchesStart.x,l=h.touchesStart.y),i.scale=t.$imageWrapEl.attr("data-swiper-zoom")||e.maxRatio,i.currentScale=t.$imageWrapEl.attr("data-swiper-zoom")||e.maxRatio,n?(y=t.$slideEl[0].offsetWidth,p=t.$slideEl[0].offsetHeight,w=t.$slideEl.offset().left,b=t.$slideEl.offset().top,k=w+y/2-c,d=b+p/2-l,g=t.$imageEl[0].offsetWidth,nt=t.$imageEl[0].offsetHeight,tt=g*i.scale,it=nt*i.scale,o=Math.min(y/2-tt/2,0),s=Math.min(p/2-it/2,0),a=-o,v=-s,r=k*i.scale,u=d*i.scale,r<o&&(r=o),r>a&&(r=a),u<s&&(u=s),u>v&&(u=v)):(r=0,u=0),t.$imageWrapEl.transition(300).transform("translate3d("+r+"px, "+u+"px,0)"),t.$imageEl.transition(300).transform("translate3d(0,0,0) scale("+i.scale+")"))},out:function(){var t=this,i=t.zoom,r=t.params.zoom,n=i.gesture;(n.$slideEl||(n.$slideEl=t.slides.eq(t.activeIndex),n.$imageEl=n.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),n.$imageWrapEl=n.$imageEl.parent("."+r.containerClass)),n.$imageEl&&n.$imageEl.length!==0)&&(i.scale=1,i.currentScale=1,n.$imageWrapEl.transition(300).transform("translate3d(0,0,0)"),n.$imageEl.transition(300).transform("translate3d(0,0,0) scale(1)"),n.$slideEl.removeClass(""+r.zoomedSlideClass),n.$slideEl=undefined)},enable:function(){var n=this,t=n.zoom;if(!t.enabled){t.enabled=!0;var r=n.touchEvents.start==="touchstart"&&u.passiveListener&&n.params.passiveListeners?{passive:!0,capture:!1}:!1,f=u.passiveListener?{passive:!1,capture:!0}:!0,i="."+n.params.slideClass;if(u.gestures){n.$wrapperEl.on("gesturestart",i,t.onGestureStart,r);n.$wrapperEl.on("gesturechange",i,t.onGestureChange,r);n.$wrapperEl.on("gestureend",i,t.onGestureEnd,r)}else if(n.touchEvents.start==="touchstart"){n.$wrapperEl.on(n.touchEvents.start,i,t.onGestureStart,r);n.$wrapperEl.on(n.touchEvents.move,i,t.onGestureChange,f);n.$wrapperEl.on(n.touchEvents.end,i,t.onGestureEnd,r);if(n.touchEvents.cancel)n.$wrapperEl.on(n.touchEvents.cancel,i,t.onGestureEnd,r)}n.$wrapperEl.on(n.touchEvents.move,"."+n.params.zoom.containerClass,t.onTouchMove,f)}},disable:function(){var n=this,t=n.zoom;if(t.enabled){n.zoom.enabled=!1;var r=n.touchEvents.start==="touchstart"&&u.passiveListener&&n.params.passiveListeners?{passive:!0,capture:!1}:!1,f=u.passiveListener?{passive:!1,capture:!0}:!0,i="."+n.params.slideClass;u.gestures?(n.$wrapperEl.off("gesturestart",i,t.onGestureStart,r),n.$wrapperEl.off("gesturechange",i,t.onGestureChange,r),n.$wrapperEl.off("gestureend",i,t.onGestureEnd,r)):n.touchEvents.start==="touchstart"&&(n.$wrapperEl.off(n.touchEvents.start,i,t.onGestureStart,r),n.$wrapperEl.off(n.touchEvents.move,i,t.onGestureChange,f),n.$wrapperEl.off(n.touchEvents.end,i,t.onGestureEnd,r),n.touchEvents.cancel&&n.$wrapperEl.off(n.touchEvents.cancel,i,t.onGestureEnd,r));n.$wrapperEl.off(n.touchEvents.move,"."+n.params.zoom.containerClass,t.onTouchMove,f)}}},uo={name:"zoom",params:{zoom:{enabled:!1,maxRatio:3,minRatio:1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}},create:function(){var t=this,r={enabled:!1,scale:1,currentScale:1,isScaling:!1,gesture:{$slideEl:undefined,slideWidth:undefined,slideHeight:undefined,$imageEl:undefined,$imageWrapEl:undefined,maxRatio:3},image:{isTouched:undefined,isMoved:undefined,currentX:undefined,currentY:undefined,minX:undefined,minY:undefined,maxX:undefined,maxY:undefined,width:undefined,height:undefined,startX:undefined,startY:undefined,touchesStart:{},touchesCurrent:{}},velocity:{x:undefined,y:undefined,prevPositionX:undefined,prevPositionY:undefined,prevTime:undefined}},i;"onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out".split(" ").forEach(function(n){r[n]=ot[n].bind(t)});n.extend(t,{zoom:r});i=1;Object.defineProperty(t.zoom,"scale",{get:function(){return i},set:function(n){if(i!==n){var r=t.zoom.gesture.$imageEl?t.zoom.gesture.$imageEl[0]:undefined,u=t.zoom.gesture.$slideEl?t.zoom.gesture.$slideEl[0]:undefined;t.emit("zoomChange",n,r,u)}i=n}})},on:{init:function(){var n=this;n.params.zoom.enabled&&n.zoom.enable()},destroy:function(){var n=this;n.zoom.disable()},touchStart:function(n){var t=this;if(t.zoom.enabled)t.zoom.onTouchStart(n)},touchEnd:function(n){var t=this;if(t.zoom.enabled)t.zoom.onTouchEnd(n)},doubleTap:function(n){var t=this;t.params.zoom.enabled&&t.zoom.enabled&&t.params.zoom.toggle&&t.zoom.toggle(n)},transitionEnd:function(){var n=this;n.zoom.enabled&&n.params.zoom.enabled&&n.zoom.onTransitionEnd()},slideChange:function(){var n=this;n.zoom.enabled&&n.params.zoom.enabled&&n.params.cssMode&&n.zoom.onTransitionEnd()}}},ti={loadInSlide:function(n,i){var r,u;if((i===void 0&&(i=!0),r=this,u=r.params.lazy,typeof n!="undefined")&&r.slides.length!==0){var o=r.virtual&&r.params.virtual.enabled,f=o?r.$wrapperEl.children("."+r.params.slideClass+'[data-swiper-slide-index="'+n+'"]'):r.slides.eq(n),e=f.find("."+u.elementClass+":not(."+u.loadedClass+"):not(."+u.loadingClass+")");(!f.hasClass(u.elementClass)||f.hasClass(u.loadedClass)||f.hasClass(u.loadingClass)||(e=e.add(f[0])),e.length!==0)&&e.each(function(n,e){var o=t(e);o.addClass(u.loadingClass);var s=o.attr("data-background"),h=o.attr("data-src"),c=o.attr("data-srcset"),l=o.attr("data-sizes");r.loadImage(o[0],h||s,c,l,!1,function(){var n,t,e;typeof r!="undefined"&&r!==null&&r&&(!r||r.params)&&!r.destroyed&&(s?(o.css("background-image",'url("'+s+'")'),o.removeAttr("data-background")):(c&&(o.attr("srcset",c),o.removeAttr("data-srcset")),l&&(o.attr("sizes",l),o.removeAttr("data-sizes")),h&&(o.attr("src",h),o.removeAttr("data-src"))),o.addClass(u.loadedClass).removeClass(u.loadingClass),f.find("."+u.preloaderClass).remove(),r.params.loop&&i&&(n=f.attr("data-swiper-slide-index"),f.hasClass(r.params.slideDuplicateClass)?(t=r.$wrapperEl.children('[data-swiper-slide-index="'+n+'"]:not(.'+r.params.slideDuplicateClass+")"),r.lazy.loadInSlide(t.index(),!1)):(e=r.$wrapperEl.children("."+r.params.slideDuplicateClass+'[data-swiper-slide-index="'+n+'"]'),r.lazy.loadInSlide(e.index(),!1))),r.emit("lazyImageReady",f[0],o[0]),r.params.autoHeight&&r.updateAutoHeight())});r.emit("lazyImageLoad",f[0],o[0])})}},load:function(){function l(n){if(c){if(s.children("."+i.slideClass+'[data-swiper-slide-index="'+n+'"]').length)return!0}else if(p[n])return!0;return!1}function w(n){return c?t(n).attr("data-swiper-slide-index"):t(n).index()}var n=this,s=n.$wrapperEl,i=n.params,p=n.slides,r=n.activeIndex,c=n.virtual&&i.virtual.enabled,h=i.lazy,u=i.slidesPerView,f,e,o,v,y;if(u==="auto"&&(u=0),n.lazy.initialImageLoaded||(n.lazy.initialImageLoaded=!0),n.params.watchSlidesVisibility)s.children("."+i.slideVisibleClass).each(function(i,r){var u=c?t(r).attr("data-swiper-slide-index"):t(r).index();n.lazy.loadInSlide(u)});else if(u>1)for(f=r;f<r+u;f+=1)l(f)&&n.lazy.loadInSlide(f);else n.lazy.loadInSlide(r);if(h.loadPrevNext)if(u>1||h.loadPrevNextAmount&&h.loadPrevNextAmount>1){var b=h.loadPrevNextAmount,a=u,k=Math.min(r+a+Math.max(b,a),p.length),d=Math.max(r-Math.max(a,b),0);for(e=r+u;e<k;e+=1)l(e)&&n.lazy.loadInSlide(e);for(o=d;o<r;o+=1)l(o)&&n.lazy.loadInSlide(o)}else v=s.children("."+i.slideNextClass),v.length>0&&n.lazy.loadInSlide(w(v)),y=s.children("."+i.slidePrevClass),y.length>0&&n.lazy.loadInSlide(w(y))}},fo={name:"lazy",params:{lazy:{enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}},create:function(){var t=this;n.extend(t,{lazy:{initialImageLoaded:!1,load:ti.load.bind(t),loadInSlide:ti.loadInSlide.bind(t)}})},on:{beforeInit:function(){var n=this;n.params.lazy.enabled&&n.params.preloadImages&&(n.params.preloadImages=!1)},init:function(){var n=this;n.params.lazy.enabled&&!n.params.loop&&n.params.initialSlide===0&&n.lazy.load()},scroll:function(){var n=this;n.params.freeMode&&!n.params.freeModeSticky&&n.lazy.load()},resize:function(){var n=this;n.params.lazy.enabled&&n.lazy.load()},scrollbarDragMove:function(){var n=this;n.params.lazy.enabled&&n.lazy.load()},transitionStart:function(){var n=this;n.params.lazy.enabled&&(!n.params.lazy.loadOnTransitionStart&&(n.params.lazy.loadOnTransitionStart||n.lazy.initialImageLoaded)||n.lazy.load())},transitionEnd:function(){var n=this;n.params.lazy.enabled&&!n.params.lazy.loadOnTransitionStart&&n.lazy.load()},slideChange:function(){var n=this;n.params.lazy.enabled&&n.params.cssMode&&n.lazy.load()}}},y={LinearSpline:function(n,t){var u=function(){var n,t,i;return function(r,u){for(t=-1,n=r.length;n-t>1;)i=n+t>>1,r[i]<=u?t=i:n=i;return n}}(),i,r;return this.x=n,this.y=t,this.lastIndex=n.length-1,this.interpolate=function(n){return n?(r=u(this.x,n),i=r-1,(n-this.x[i])*(this.y[r]-this.y[i])/(this.x[r]-this.x[i])+this.y[i]):0},this},getInterpolateFunction:function(n){var t=this;t.controller.spline||(t.controller.spline=t.params.loop?new y.LinearSpline(t.slidesGrid,n.slidesGrid):new y.LinearSpline(t.snapGrid,n.snapGrid))},setTranslate:function(n,t){function o(n){var t=i.rtlTranslate?-i.translate:i.translate;i.params.controller.by==="slide"&&(i.controller.getInterpolateFunction(n),u=-i.controller.spline.interpolate(-t));u&&i.params.controller.by!=="container"||(e=(n.maxTranslate()-n.minTranslate())/(i.maxTranslate()-i.minTranslate()),u=(t-i.minTranslate())*e+n.minTranslate());i.params.controller.inverse&&(u=n.maxTranslate()-u);n.updateProgress(u);n.setTranslate(u,i);n.updateActiveIndex();n.updateSlidesClasses()}var i=this,r=i.controller.control,e,u,f;if(Array.isArray(r))for(f=0;f<r.length;f+=1)r[f]!==t&&r[f]instanceof s&&o(r[f]);else r instanceof s&&t!==r&&o(r)},setTransition:function(t,i){function e(i){i.setTransition(t,f);t!==0&&(i.transitionStart(),i.params.autoHeight&&n.nextTick(function(){i.updateAutoHeight()}),i.$wrapperEl.transitionEnd(function(){r&&(i.params.loop&&f.params.controller.by==="slide"&&i.loopFix(),i.transitionEnd())}))}var f=this,r=f.controller.control,u;if(Array.isArray(r))for(u=0;u<r.length;u+=1)r[u]!==i&&r[u]instanceof s&&e(r[u]);else r instanceof s&&i!==r&&e(r)}},eo={name:"controller",params:{controller:{control:undefined,inverse:!1,by:"slide"}},create:function(){var t=this;n.extend(t,{controller:{control:t.params.controller.control,getInterpolateFunction:y.getInterpolateFunction.bind(t),setTranslate:y.setTranslate.bind(t),setTransition:y.setTransition.bind(t)}})},on:{update:function(){var n=this;n.controller.control&&n.controller.spline&&(n.controller.spline=undefined,delete n.controller.spline)},resize:function(){var n=this;n.controller.control&&n.controller.spline&&(n.controller.spline=undefined,delete n.controller.spline)},observerUpdate:function(){var n=this;n.controller.control&&n.controller.spline&&(n.controller.spline=undefined,delete n.controller.spline)},setTranslate:function(n,t){var i=this;i.controller.control&&i.controller.setTranslate(n,t)},setTransition:function(n,t){var i=this;i.controller.control&&i.controller.setTransition(n,t)}}},ii={makeElFocusable:function(n){return n.attr("tabIndex","0"),n},addElRole:function(n,t){return n.attr("role",t),n},addElLabel:function(n,t){return n.attr("aria-label",t),n},disableEl:function(n){return n.attr("aria-disabled",!0),n},enableEl:function(n){return n.attr("aria-disabled",!1),n},onEnterKey:function(n){var i=this,u=i.params.a11y,r;n.keyCode===13&&(r=t(n.target),i.navigation&&i.navigation.$nextEl&&r.is(i.navigation.$nextEl)&&(i.isEnd&&!i.params.loop||i.slideNext(),i.isEnd?i.a11y.notify(u.lastSlideMessage):i.a11y.notify(u.nextSlideMessage)),i.navigation&&i.navigation.$prevEl&&r.is(i.navigation.$prevEl)&&(i.isBeginning&&!i.params.loop||i.slidePrev(),i.isBeginning?i.a11y.notify(u.firstSlideMessage):i.a11y.notify(u.prevSlideMessage)),i.pagination&&r.is("."+i.params.pagination.bulletClass)&&r[0].click())},notify:function(n){var i=this,t=i.a11y.liveRegion;t.length!==0&&(t.html(""),t.html(n))},updateNavigation:function(){var n=this;if(!n.params.loop&&n.navigation){var r=n.navigation,t=r.$nextEl,i=r.$prevEl;i&&i.length>0&&(n.isBeginning?n.a11y.disableEl(i):n.a11y.enableEl(i));t&&t.length>0&&(n.isEnd?n.a11y.disableEl(t):n.a11y.enableEl(t))}},updatePagination:function(){var n=this,i=n.params.a11y;n.pagination&&n.params.pagination.clickable&&n.pagination.bullets&&n.pagination.bullets.length&&n.pagination.bullets.each(function(r,u){var f=t(u);n.a11y.makeElFocusable(f);n.a11y.addElRole(f,"button");n.a11y.addElLabel(f,i.paginationBulletMessage.replace(/{{index}}/,f.index()+1))})},init:function(){var n=this,r,t,i;if(n.$el.append(n.a11y.liveRegion),r=n.params.a11y,n.navigation&&n.navigation.$nextEl&&(t=n.navigation.$nextEl),n.navigation&&n.navigation.$prevEl&&(i=n.navigation.$prevEl),t){n.a11y.makeElFocusable(t);n.a11y.addElRole(t,"button");n.a11y.addElLabel(t,r.nextSlideMessage);t.on("keydown",n.a11y.onEnterKey)}if(i){n.a11y.makeElFocusable(i);n.a11y.addElRole(i,"button");n.a11y.addElLabel(i,r.prevSlideMessage);i.on("keydown",n.a11y.onEnterKey)}if(n.pagination&&n.params.pagination.clickable&&n.pagination.bullets&&n.pagination.bullets.length)n.pagination.$el.on("keydown","."+n.params.pagination.bulletClass,n.a11y.onEnterKey)},destroy:function(){var n=this,t,i;n.a11y.liveRegion&&n.a11y.liveRegion.length>0&&n.a11y.liveRegion.remove();n.navigation&&n.navigation.$nextEl&&(t=n.navigation.$nextEl);n.navigation&&n.navigation.$prevEl&&(i=n.navigation.$prevEl);t&&t.off("keydown",n.a11y.onEnterKey);i&&i.off("keydown",n.a11y.onEnterKey);n.pagination&&n.params.pagination.clickable&&n.pagination.bullets&&n.pagination.bullets.length&&n.pagination.$el.off("keydown","."+n.params.pagination.bulletClass,n.a11y.onEnterKey)}},oo={name:"a11y",params:{a11y:{enabled:!0,notificationClass:"swiper-notification",prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",paginationBulletMessage:"Go to slide {{index}}"}},create:function(){var i=this;n.extend(i,{a11y:{liveRegion:t('<span class="'+i.params.a11y.notificationClass+'" aria-live="assertive" aria-atomic="true"><\/span>')}});Object.keys(ii).forEach(function(n){i.a11y[n]=ii[n].bind(i)})},on:{init:function(){var n=this;n.params.a11y.enabled&&(n.a11y.init(),n.a11y.updateNavigation())},toEdge:function(){var n=this;n.params.a11y.enabled&&n.a11y.updateNavigation()},fromEdge:function(){var n=this;n.params.a11y.enabled&&n.a11y.updateNavigation()},paginationUpdate:function(){var n=this;n.params.a11y.enabled&&n.a11y.updatePagination()},destroy:function(){var n=this;n.params.a11y.enabled&&n.a11y.destroy()}}},l={init:function(){var n=this,t;if(n.params.history){if(!i.history||!i.history.pushState){n.params.history.enabled=!1;n.params.hashNavigation.enabled=!0;return}(t=n.history,t.initialized=!0,t.paths=l.getPathValues(),t.paths.key||t.paths.value)&&(t.scrollToSlide(0,t.paths.value,n.params.runCallbacksOnInit),n.params.history.replaceState||i.addEventListener("popstate",n.history.setHistoryPopState))}},destroy:function(){var n=this;n.params.history.replaceState||i.removeEventListener("popstate",n.history.setHistoryPopState)},setHistoryPopState:function(){var n=this;n.history.paths=l.getPathValues();n.history.scrollToSlide(n.params.speed,n.history.paths.value,!1)},getPathValues:function(){var n=i.location.pathname.slice(1).split("/").filter(function(n){return n!==""}),t=n.length,r=n[t-2],u=n[t-1];return{key:r,value:u}},setHistory:function(n,t){var u=this,e,r,f;u.history.initialized&&u.params.history.enabled&&((e=u.slides.eq(t),r=l.slugify(e.attr("data-history")),i.location.pathname.includes(n)||(r=n+"/"+r),f=i.history.state,f&&f.value===r)||(u.params.history.replaceState?i.history.replaceState({value:r},null,r):i.history.pushState({value:r},null,r)))},slugify:function(n){return n.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")},scrollToSlide:function(n,t,i){var r=this,u,e,f,o,s;if(t)for(u=0,e=r.slides.length;u<e;u+=1)f=r.slides.eq(u),o=l.slugify(f.attr("data-history")),o!==t||f.hasClass(r.params.slideDuplicateClass)||(s=f.index(),r.slideTo(s,n,i));else r.slideTo(0,n,i)}},so={name:"history",params:{history:{enabled:!1,replaceState:!1,key:"slides"}},create:function(){var t=this;n.extend(t,{history:{init:l.init.bind(t),setHistory:l.setHistory.bind(t),setHistoryPopState:l.setHistoryPopState.bind(t),scrollToSlide:l.scrollToSlide.bind(t),destroy:l.destroy.bind(t)}})},on:{init:function(){var n=this;n.params.history.enabled&&n.history.init()},destroy:function(){var n=this;n.params.history.enabled&&n.history.destroy()},transitionEnd:function(){var n=this;n.history.initialized&&n.history.setHistory(n.params.history.key,n.activeIndex)},slideChange:function(){var n=this;n.history.initialized&&n.params.cssMode&&n.history.setHistory(n.params.history.key,n.activeIndex)}}},k={onHashCange:function(){var n=this,i=r.location.hash.replace("#",""),u=n.slides.eq(n.activeIndex).attr("data-hash"),t;if(i!==u){if(t=n.$wrapperEl.children("."+n.params.slideClass+'[data-hash="'+i+'"]').index(),typeof t=="undefined")return;n.slideTo(t)}},setHash:function(){var n=this,t,u;n.hashNavigation.initialized&&n.params.hashNavigation.enabled&&(n.params.hashNavigation.replaceState&&i.history&&i.history.replaceState?i.history.replaceState(null,null,"#"+n.slides.eq(n.activeIndex).attr("data-hash")||""):(t=n.slides.eq(n.activeIndex),u=t.attr("data-hash")||t.attr("data-history"),r.location.hash=u||""))},init:function(){var n=this,e,o,f,s,u,h,c;if(n.params.hashNavigation.enabled&&(!n.params.history||!n.params.history.enabled)){if(n.hashNavigation.initialized=!0,e=r.location.hash.replace("#",""),e)for(o=0,f=0,s=n.slides.length;f<s;f+=1)u=n.slides.eq(f),h=u.attr("data-hash")||u.attr("data-history"),h!==e||u.hasClass(n.params.slideDuplicateClass)||(c=u.index(),n.slideTo(c,o,n.params.runCallbacksOnInit,!0));if(n.params.hashNavigation.watchState)t(i).on("hashchange",n.hashNavigation.onHashCange)}},destroy:function(){var n=this;n.params.hashNavigation.watchState&&t(i).off("hashchange",n.hashNavigation.onHashCange)}},ho={name:"hash-navigation",params:{hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}},create:function(){var t=this;n.extend(t,{hashNavigation:{initialized:!1,init:k.init.bind(t),destroy:k.destroy.bind(t),setHash:k.setHash.bind(t),onHashCange:k.onHashCange.bind(t)}})},on:{init:function(){var n=this;n.params.hashNavigation.enabled&&n.hashNavigation.init()},destroy:function(){var n=this;n.params.hashNavigation.enabled&&n.hashNavigation.destroy()},transitionEnd:function(){var n=this;n.hashNavigation.initialized&&n.hashNavigation.setHash()},slideChange:function(){var n=this;n.hashNavigation.initialized&&n.params.cssMode&&n.hashNavigation.setHash()}}},d={run:function(){var t=this,i=t.slides.eq(t.activeIndex),r=t.params.autoplay.delay;i.attr("data-swiper-autoplay")&&(r=i.attr("data-swiper-autoplay")||t.params.autoplay.delay);clearTimeout(t.autoplay.timeout);t.autoplay.timeout=n.nextTick(function(){t.params.autoplay.reverseDirection?t.params.loop?(t.loopFix(),t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.isBeginning?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(t.slides.length-1,t.params.speed,!0,!0),t.emit("autoplay")):(t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.params.loop?(t.loopFix(),t.slideNext(t.params.speed,!0,!0),t.emit("autoplay")):t.isEnd?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(0,t.params.speed,!0,!0),t.emit("autoplay")):(t.slideNext(t.params.speed,!0,!0),t.emit("autoplay"));t.params.cssMode&&t.autoplay.running&&t.autoplay.run()},r)},start:function(){var n=this;return typeof n.autoplay.timeout!="undefined"?!1:n.autoplay.running?!1:(n.autoplay.running=!0,n.emit("autoplayStart"),n.autoplay.run(),!0)},stop:function(){var n=this;return n.autoplay.running?typeof n.autoplay.timeout=="undefined"?!1:(n.autoplay.timeout&&(clearTimeout(n.autoplay.timeout),n.autoplay.timeout=undefined),n.autoplay.running=!1,n.emit("autoplayStop"),!0):!1},pause:function(n){var t=this;t.autoplay.running&&(t.autoplay.paused||(t.autoplay.timeout&&clearTimeout(t.autoplay.timeout),t.autoplay.paused=!0,n!==0&&t.params.autoplay.waitForTransition?(t.$wrapperEl[0].addEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].addEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd)):(t.autoplay.paused=!1,t.autoplay.run())))}},co={name:"autoplay",params:{autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1}},create:function(){var t=this;n.extend(t,{autoplay:{running:!1,paused:!1,run:d.run.bind(t),start:d.start.bind(t),stop:d.stop.bind(t),pause:d.pause.bind(t),onVisibilityChange:function(){document.visibilityState==="hidden"&&t.autoplay.running&&t.autoplay.pause();document.visibilityState==="visible"&&t.autoplay.paused&&(t.autoplay.run(),t.autoplay.paused=!1)},onTransitionEnd:function(n){t&&!t.destroyed&&t.$wrapperEl&&n.target===this&&(t.$wrapperEl[0].removeEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].removeEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd),t.autoplay.paused=!1,t.autoplay.running?t.autoplay.run():t.autoplay.stop())}}})},on:{init:function(){var n=this;n.params.autoplay.enabled&&(n.autoplay.start(),document.addEventListener("visibilitychange",n.autoplay.onVisibilityChange))},beforeTransitionStart:function(n,t){var i=this;i.autoplay.running&&(t||!i.params.autoplay.disableOnInteraction?i.autoplay.pause(n):i.autoplay.stop())},sliderFirstMove:function(){var n=this;n.autoplay.running&&(n.params.autoplay.disableOnInteraction?n.autoplay.stop():n.autoplay.pause())},touchEnd:function(){var n=this;n.params.cssMode&&n.autoplay.paused&&!n.params.autoplay.disableOnInteraction&&n.autoplay.run()},destroy:function(){var n=this;n.autoplay.running&&n.autoplay.stop();document.removeEventListener("visibilitychange",n.autoplay.onVisibilityChange)}}},ri={setTranslate:function(){for(var u,f,n=this,e=n.slides,r=0;r<e.length;r+=1){var t=n.slides.eq(r),o=t[0].swiperSlideOffset,i=-o;n.params.virtualTranslate||(i-=n.translate);u=0;n.isHorizontal()||(u=i,i=0);f=n.params.fadeEffect.crossFade?Math.max(1-Math.abs(t[0].progress),0):1+Math.min(Math.max(t[0].progress,-1),0);t.css({opacity:f}).transform("translate3d("+i+"px, "+u+"px, 0px)")}},setTransition:function(n){var t=this,r=t.slides,u=t.$wrapperEl,i;r.transition(n);t.params.virtualTranslate&&n!==0&&(i=!1,r.transitionEnd(function(){var r,n;if(!i&&t&&!t.destroyed)for(i=!0,t.animating=!1,r=["webkitTransitionEnd","transitionend"],n=0;n<r.length;n+=1)u.trigger(r[n])}))}},lo={name:"effect-fade",params:{fadeEffect:{crossFade:!1}},create:function(){var t=this;n.extend(t,{fadeEffect:{setTranslate:ri.setTranslate.bind(t),setTransition:ri.setTransition.bind(t)}})},on:{beforeInit:function(){var t=this,i;t.params.effect==="fade"&&(t.classNames.push(t.params.containerModifierClass+"fade"),i={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0},n.extend(t.params,i),n.extend(t.originalParams,i))},setTranslate:function(){var n=this;n.params.effect==="fade"&&n.fadeEffect.setTranslate()},setTransition:function(n){var t=this;t.params.effect==="fade"&&t.fadeEffect.setTransition(n)}}},ui={setTranslate:function(){var n=this,nt=n.$el,k=n.$wrapperEl,tt=n.slides,d=n.width,it=n.height,g=n.rtlTranslate,i=n.size,s=n.params.cubeEffect,f=n.isHorizontal(),st=n.virtual&&n.params.virtual.enabled,c=0,r,w,u,e,h,l,ut,v,y,ot;for(s.shadow&&(f?(r=k.find(".swiper-cube-shadow"),r.length===0&&(r=t('<div class="swiper-cube-shadow"><\/div>'),k.append(r)),r.css({height:d+"px"})):(r=nt.find(".swiper-cube-shadow"),r.length===0&&(r=t('<div class="swiper-cube-shadow"><\/div>'),nt.append(r)))),w=0;w<tt.length;w+=1){u=tt.eq(w);e=w;st&&(e=parseInt(u.attr("data-swiper-slide-index"),10));h=e*90;l=Math.floor(h/360);g&&(h=-h,l=Math.floor(-h/360));var a=Math.max(Math.min(u[0].progress,1),-1),o=0,rt=0,b=0;e%4==0?(o=-l*4*i,b=0):(e-1)%4==0?(o=0,b=-l*4*i):(e-2)%4==0?(o=i+l*4*i,b=i):(e-3)%4==0&&(o=-i,b=3*i+i*4*l);g&&(o=-o);f||(rt=o,o=0);ut="rotateX("+(f?0:-h)+"deg) rotateY("+(f?h:0)+"deg) translate3d("+o+"px, "+rt+"px, "+b+"px)";a<=1&&a>-1&&(c=e*90+a*90,g&&(c=-e*90-a*90));u.transform(ut);s.slideShadows&&(v=f?u.find(".swiper-slide-shadow-left"):u.find(".swiper-slide-shadow-top"),y=f?u.find(".swiper-slide-shadow-right"):u.find(".swiper-slide-shadow-bottom"),v.length===0&&(v=t('<div class="swiper-slide-shadow-'+(f?"left":"top")+'"><\/div>'),u.append(v)),y.length===0&&(y=t('<div class="swiper-slide-shadow-'+(f?"right":"bottom")+'"><\/div>'),u.append(y)),v.length&&(v[0].style.opacity=Math.max(-a,0)),y.length&&(y[0].style.opacity=Math.max(a,0)))}if(k.css({"-webkit-transform-origin":"50% 50% -"+i/2+"px","-moz-transform-origin":"50% 50% -"+i/2+"px","-ms-transform-origin":"50% 50% -"+i/2+"px","transform-origin":"50% 50% -"+i/2+"px"}),s.shadow)if(f)r.transform("translate3d(0px, "+(d/2+s.shadowOffset)+"px, "+-d/2+"px) rotateX(90deg) rotateZ(0deg) scale("+s.shadowScale+")");else{var ft=Math.abs(c)-Math.floor(Math.abs(c)/90)*90,ht=1.5-(Math.sin(ft*2*Math.PI/360)/2+Math.cos(ft*2*Math.PI/360)/2),ct=s.shadowScale,et=s.shadowScale/ht,lt=s.shadowOffset;r.transform("scale3d("+ct+", 1, "+et+") translate3d(0px, "+(it/2+lt)+"px, "+-it/2/et+"px) rotateX(-90deg)")}ot=p.isSafari||p.isUiWebView?-i/2:0;k.transform("translate3d(0px,0,"+ot+"px) rotateX("+(n.isHorizontal()?0:c)+"deg) rotateY("+(n.isHorizontal()?-c:0)+"deg)")},setTransition:function(n){var t=this,i=t.$el,r=t.slides;r.transition(n).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(n);t.params.cubeEffect.shadow&&!t.isHorizontal()&&i.find(".swiper-cube-shadow").transition(n)}},ao={name:"effect-cube",params:{cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}},create:function(){var t=this;n.extend(t,{cubeEffect:{setTranslate:ui.setTranslate.bind(t),setTransition:ui.setTransition.bind(t)}})},on:{beforeInit:function(){var t=this,i;t.params.effect==="cube"&&(t.classNames.push(t.params.containerModifierClass+"cube"),t.classNames.push(t.params.containerModifierClass+"3d"),i={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0},n.extend(t.params,i),n.extend(t.originalParams,i))},setTranslate:function(){var n=this;n.params.effect==="cube"&&n.cubeEffect.setTranslate()},setTransition:function(n){var t=this;t.params.effect==="cube"&&t.cubeEffect.setTransition(n)}}},fi={setTranslate:function(){for(var n,r,u,f,i=this,o=i.slides,a=i.rtlTranslate,s=0;s<o.length;s+=1){n=o.eq(s);r=n[0].progress;i.params.flipEffect.limitRotation&&(r=Math.max(Math.min(n[0].progress,1),-1));var v=n[0].swiperSlideOffset,y=-180*r,e=y,c=0,h=-v,l=0;i.isHorizontal()?a&&(e=-e):(l=h,h=0,c=-e,e=0);n[0].style.zIndex=-Math.abs(Math.round(r))+o.length;i.params.flipEffect.slideShadows&&(u=i.isHorizontal()?n.find(".swiper-slide-shadow-left"):n.find(".swiper-slide-shadow-top"),f=i.isHorizontal()?n.find(".swiper-slide-shadow-right"):n.find(".swiper-slide-shadow-bottom"),u.length===0&&(u=t('<div class="swiper-slide-shadow-'+(i.isHorizontal()?"left":"top")+'"><\/div>'),n.append(u)),f.length===0&&(f=t('<div class="swiper-slide-shadow-'+(i.isHorizontal()?"right":"bottom")+'"><\/div>'),n.append(f)),u.length&&(u[0].style.opacity=Math.max(-r,0)),f.length&&(f[0].style.opacity=Math.max(r,0)));n.transform("translate3d("+h+"px, "+l+"px, 0px) rotateX("+c+"deg) rotateY("+e+"deg)")}},setTransition:function(n){var t=this,r=t.slides,u=t.activeIndex,f=t.$wrapperEl,i;r.transition(n).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(n);t.params.virtualTranslate&&n!==0&&(i=!1,r.eq(u).transitionEnd(function(){var r,n;if(!i&&t&&!t.destroyed)for(i=!0,t.animating=!1,r=["webkitTransitionEnd","transitionend"],n=0;n<r.length;n+=1)f.trigger(r[n])}))}},vo={name:"effect-flip",params:{flipEffect:{slideShadows:!0,limitRotation:!0}},create:function(){var t=this;n.extend(t,{flipEffect:{setTranslate:fi.setTranslate.bind(t),setTransition:fi.setTransition.bind(t)}})},on:{beforeInit:function(){var t=this,i;t.params.effect==="flip"&&(t.classNames.push(t.params.containerModifierClass+"flip"),t.classNames.push(t.params.containerModifierClass+"3d"),i={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0},n.extend(t.params,i),n.extend(t.originalParams,i))},setTranslate:function(){var n=this;n.params.effect==="flip"&&n.flipEffect.setTranslate()},setTransition:function(n){var t=this;t.params.effect==="flip"&&t.flipEffect.setTransition(n)}}},ei={setTranslate:function(){for(var l,a,nt,o,s,tt,f=this,it=f.width,rt=f.height,b=f.slides,ut=f.$wrapperEl,ft=f.slidesSizesGrid,e=f.params.coverflowEffect,n=f.isHorizontal(),k=f.translate,d=n?-k+it/2:-k+rt/2,g=n?e.rotate:-e.rotate,et=e.depth,c=0,ot=b.length;c<ot;c+=1){var r=b.eq(c),v=ft[c],st=r[0].swiperSlideOffset,i=(d-st-v/2)/v*e.modifier,y=n?g*i:0,p=n?0:g*i,w=-et*Math.abs(i),h=e.stretch;typeof h=="string"&&h.indexOf("%")!==-1&&(h=parseFloat(e.stretch)/100*v);l=n?0:h*i;a=n?h*i:0;Math.abs(a)<.001&&(a=0);Math.abs(l)<.001&&(l=0);Math.abs(w)<.001&&(w=0);Math.abs(y)<.001&&(y=0);Math.abs(p)<.001&&(p=0);nt="translate3d("+a+"px,"+l+"px,"+w+"px)  rotateX("+p+"deg) rotateY("+y+"deg)";r.transform(nt);r[0].style.zIndex=-Math.abs(Math.round(i))+1;e.slideShadows&&(o=n?r.find(".swiper-slide-shadow-left"):r.find(".swiper-slide-shadow-top"),s=n?r.find(".swiper-slide-shadow-right"):r.find(".swiper-slide-shadow-bottom"),o.length===0&&(o=t('<div class="swiper-slide-shadow-'+(n?"left":"top")+'"><\/div>'),r.append(o)),s.length===0&&(s=t('<div class="swiper-slide-shadow-'+(n?"right":"bottom")+'"><\/div>'),r.append(s)),o.length&&(o[0].style.opacity=i>0?i:0),s.length&&(s[0].style.opacity=-i>0?-i:0))}(u.pointerEvents||u.prefixedPointerEvents)&&(tt=ut[0].style,tt.perspectiveOrigin=d+"px 50%")},setTransition:function(n){var t=this;t.slides.transition(n).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(n)}},yo={name:"effect-coverflow",params:{coverflowEffect:{rotate:50,stretch:0,depth:100,modifier:1,slideShadows:!0}},create:function(){var t=this;n.extend(t,{coverflowEffect:{setTranslate:ei.setTranslate.bind(t),setTransition:ei.setTransition.bind(t)}})},on:{beforeInit:function(){var n=this;n.params.effect==="coverflow"&&(n.classNames.push(n.params.containerModifierClass+"coverflow"),n.classNames.push(n.params.containerModifierClass+"3d"),n.params.watchSlidesProgress=!0,n.originalParams.watchSlidesProgress=!0)},setTranslate:function(){var n=this;n.params.effect==="coverflow"&&n.coverflowEffect.setTranslate()},setTransition:function(n){var t=this;t.params.effect==="coverflow"&&t.coverflowEffect.setTransition(n)}}},st={init:function(){var t=this,u=t.params,i=u.thumbs,r=t.constructor;i.swiper instanceof r?(t.thumbs.swiper=i.swiper,n.extend(t.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),n.extend(t.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1})):n.isObject(i.swiper)&&(t.thumbs.swiper=new r(n.extend({},i.swiper,{watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!1})),t.thumbs.swiperCreated=!0);t.thumbs.swiper.$el.addClass(t.params.thumbs.thumbsContainerClass);t.thumbs.swiper.on("tap",t.thumbs.onThumbClick)},onThumbClick:function(){var n=this,r=n.thumbs.swiper,o,s,u,i,f,e;r&&((o=r.clickedIndex,s=r.clickedSlide,s&&t(s).hasClass(n.params.thumbs.slideThumbActiveClass))||typeof o!="undefined"&&o!==null&&(u=r.params.loop?parseInt(t(r.clickedSlide).attr("data-swiper-slide-index"),10):o,n.params.loop&&(i=n.activeIndex,n.slides.eq(i).hasClass(n.params.slideDuplicateClass)&&(n.loopFix(),n._clientLeft=n.$wrapperEl[0].clientLeft,i=n.activeIndex),f=n.slides.eq(i).prevAll('[data-swiper-slide-index="'+u+'"]').eq(0).index(),e=n.slides.eq(i).nextAll('[data-swiper-slide-index="'+u+'"]').eq(0).index(),u=typeof f=="undefined"?e:typeof e=="undefined"?f:e-i<i-f?e:f),n.slideTo(u)))},update:function(n){var i=this,t=i.thumbs.swiper,s,r,u,e,o,f,h,c,l;if(t)if(s=t.params.slidesPerView==="auto"?t.slidesPerViewDynamic():t.params.slidesPerView,i.realIndex!==t.realIndex&&(r=t.activeIndex,t.params.loop?(t.slides.eq(r).hasClass(t.params.slideDuplicateClass)&&(t.loopFix(),t._clientLeft=t.$wrapperEl[0].clientLeft,r=t.activeIndex),e=t.slides.eq(r).prevAll('[data-swiper-slide-index="'+i.realIndex+'"]').eq(0).index(),o=t.slides.eq(r).nextAll('[data-swiper-slide-index="'+i.realIndex+'"]').eq(0).index(),u=typeof e=="undefined"?o:typeof o=="undefined"?e:o-r==r-e?r:o-r<r-e?o:e):u=i.realIndex,t.visibleSlidesIndexes&&t.visibleSlidesIndexes.indexOf(u)<0&&(t.params.centeredSlides?u=u>r?u-Math.floor(s/2)+1:u+Math.floor(s/2)-1:u>r&&(u=u-s+1),t.slideTo(u,n?0:undefined))),f=1,h=i.params.thumbs.slideThumbActiveClass,i.params.slidesPerView>1&&!i.params.centeredSlides&&(f=i.params.slidesPerView),i.params.thumbs.multipleActiveThumbs||(f=1),f=Math.floor(f),t.slides.removeClass(h),t.params.loop||t.params.virtual&&t.params.virtual.enabled)for(c=0;c<f;c+=1)t.$wrapperEl.children('[data-swiper-slide-index="'+(i.realIndex+c)+'"]').addClass(h);else for(l=0;l<f;l+=1)t.slides.eq(i.realIndex+l).addClass(h)}},po={name:"thumbs",params:{thumbs:{multipleActiveThumbs:!0,swiper:null,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-container-thumbs"}},create:function(){var t=this;n.extend(t,{thumbs:{swiper:null,init:st.init.bind(t),update:st.update.bind(t),onThumbClick:st.onThumbClick.bind(t)}})},on:{beforeInit:function(){var n=this,i=n.params,t=i.thumbs;t&&t.swiper&&(n.thumbs.init(),n.thumbs.update(!0))},slideChange:function(){var n=this;n.thumbs.swiper&&n.thumbs.update()},update:function(){var n=this;n.thumbs.swiper&&n.thumbs.update()},resize:function(){var n=this;n.thumbs.swiper&&n.thumbs.update()},observerUpdate:function(){var n=this;n.thumbs.swiper&&n.thumbs.update()},setTransition:function(n){var i=this,t=i.thumbs.swiper;t&&t.setTransition(n)},beforeDestroy:function(){var t=this,n=t.thumbs.swiper;n&&t.thumbs.swiperCreated&&n&&n.destroy()}}},wo=[ae,ve,ye,pe,we,be,ke,ge,no,to,io,ro,uo,fo,eo,oo,so,ho,co,lo,ao,vo,yo,po];return typeof s.use=="undefined"&&(s.use=s.Class.use,s.installModule=s.Class.installModule),s.use(wo),s}),function(n){"use strict";typeof define=="function"&&define.amd?define(["jquery"],n):typeof module!="undefined"&&module.exports?module.exports=n(require("jquery")):n(jQuery)}(function(n){var e=-1,r=-1,i=function(n){return parseFloat(n)||0},o=function(t){var f=1,e=n(t),u=null,r=[];return e.each(function(){var t=n(this),e=t.offset().top-i(t.css("margin-top")),o=r.length>0?r[r.length-1]:null;o===null?r.push(t):Math.floor(Math.abs(u-e))<=f?r[r.length-1]=o.add(t):r.push(t);u=e}),r},u=function(t){var i={byRow:!0,property:"height",target:null,remove:!1};return typeof t=="object"?n.extend(i,t):(typeof t=="boolean"?i.byRow=t:t==="remove"&&(i.remove=!0),i)},t=n.fn.matchHeight=function(i){var r=u(i),f;return r.remove?(f=this,this.css(r.property,""),n.each(t._groups,function(n,t){t.elements=t.elements.not(f)}),this):this.length<=1&&!r.target?this:(t._groups.push({elements:this,options:r}),t._apply(this,r),this)},f;t.version="0.7.0";t._groups=[];t._throttle=80;t._maintainScroll=!1;t._beforeUpdate=null;t._afterUpdate=null;t._rows=o;t._parse=i;t._parseOptions=u;t._apply=function(r,f){var e=u(f),s=n(r),c=[s],l=n(window).scrollTop(),a=n("html").outerHeight(!0),h=s.parents().filter(":hidden");return h.each(function(){var t=n(this);t.data("style-cache",t.attr("style"))}),h.css("display","block"),e.byRow&&!e.target&&(s.each(function(){var i=n(this),t=i.css("display");t!=="inline-block"&&t!=="flex"&&t!=="inline-flex"&&(t="block");i.data("style-cache",i.attr("style"));i.css({display:t,"padding-top":"0","padding-bottom":"0","margin-top":"0","margin-bottom":"0","border-top-width":"0","border-bottom-width":"0",height:"100px",overflow:"hidden"})}),c=o(s),s.each(function(){var t=n(this);t.attr("style",t.data("style-cache")||"")})),n.each(c,function(t,r){var u=n(r),f=0;if(e.target)f=e.target.outerHeight(!1);else{if(e.byRow&&u.length<=1){u.css(e.property,"");return}u.each(function(){var t=n(this),u=t.attr("style"),i=t.css("display"),r;i!=="inline-block"&&i!=="flex"&&i!=="inline-flex"&&(i="block");r={display:i};r[e.property]="";t.css(r);t.outerHeight(!1)>f&&(f=t.outerHeight(!1));u?t.attr("style",u):t.css("display","")})}u.each(function(){var t=n(this),r=0;e.target&&t.is(e.target)||(t.css("box-sizing")!=="border-box"&&(r+=i(t.css("border-top-width"))+i(t.css("border-bottom-width")),r+=i(t.css("padding-top"))+i(t.css("padding-bottom"))),t.css(e.property,f-r+"px"))})}),h.each(function(){var t=n(this);t.attr("style",t.data("style-cache")||null)}),t._maintainScroll&&n(window).scrollTop(l/a*n("html").outerHeight(!0)),this};t._applyDataApi=function(){var t={};n("[data-match-height], [data-mh]").each(function(){var i=n(this),r=i.attr("data-mh")||i.attr("data-match-height");t[r]=r in t?t[r].add(i):i});n.each(t,function(){this.matchHeight(!0)})};f=function(i){t._beforeUpdate&&t._beforeUpdate(i,t._groups);n.each(t._groups,function(){t._apply(this.elements,this.options)});t._afterUpdate&&t._afterUpdate(i,t._groups)};t._update=function(i,u){if(u&&u.type==="resize"){var o=n(window).width();if(o===e)return;e=o}i?r===-1&&(r=setTimeout(function(){f(u);r=-1},t._throttle)):f(u)};n(t._applyDataApi);n(window).bind("load",function(n){t._update(!1,n)});n(window).bind("resize orientationchange",function(n){t._update(!0,n)})});!function(n){var t=navigator.userAgent;n.HTMLPictureElement&&/ecko/.test(t)&&t.match(/rv\:(\d+)/)&&RegExp.$1<45&&addEventListener("resize",function(){var r,u=document.createElement("source"),e=function(n){var i,r,t=n.parentNode;"PICTURE"===t.nodeName.toUpperCase()?(i=u.cloneNode(),t.insertBefore(i,t.firstElementChild),setTimeout(function(){t.removeChild(i)})):(!n._pfLastSize||n.offsetWidth>n._pfLastSize)&&(n._pfLastSize=n.offsetWidth,r=n.sizes,n.sizes+=",100vw",setTimeout(function(){n.sizes=r}))},o=function(){for(var t=document.querySelectorAll("picture > img, img[srcset][sizes]"),n=0;n<t.length;n++)e(t[n])},t=function(){clearTimeout(r);r=setTimeout(o,99)},i=n.matchMedia&&matchMedia("(orientation: landscape)"),f=function(){t();i&&i.addListener&&i.addListener(t)};return u.srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",/^[c|i]|d$/.test(document.readyState||"")?f():document.addEventListener("DOMContentLoaded",f),t}())}(window),function(n,t,i){"use strict";function v(n){return" "===n||"\t"===n||"\n"===n||"\f"===n||"\r"===n}function wt(t,i){var r=new n.Image;return r.onerror=function(){o[t]=!1;f()},r.onload=function(){o[t]=1===r.width;f()},r.src=i,"pending"}function bt(){w=!1;a=n.devicePixelRatio;h={};b={};r.DPR=a||1;u.width=Math.max(n.innerWidth||0,e.clientWidth);u.height=Math.max(n.innerHeight||0,e.clientHeight);u.vw=u.width/100;u.vh=u.height/100;y=[u.height,u.width,a].join("-");u.em=r.getEmValue();u.rem=u.em}function kt(n,t,i,r){var f,o,e,u;return"saveData"===p.algorithm?n>2.7?u=i+1:(o=t-i,f=Math.pow(n-.6,1.5),e=o*f,r&&(e+=.1*f),u=n+e):u=i>1?Math.sqrt(n*t):n,u>i}function dt(n){var i,t=r.getSet(n),u=!1;"pending"!==t&&(u=y,t&&(i=r.setRes(t),r.applySetCandidate(i,n)));n[r.ns].evaled=u}function gt(n,t){return n.res-t.res}function ni(n,t,i){var u;return!i&&t&&(i=n[r.ns].sets,i=i&&i[i.length-1]),u=et(t,i),u&&(t=r.makeUrl(t),n[r.ns].curSrc=t,n[r.ns].curCan=u,u.res||ft(u,u.set.sizes)),u}function et(n,t){var i,f,u;if(n&&t)for(u=r.parseSet(t),n=r.makeUrl(n),i=0;i<u.length;i++)if(n===r.makeUrl(u[i].url)){f=u[i];break}return f}function ti(n,t){for(var i,f,o=n.getElementsByTagName("source"),u=0,e=o.length;e>u;u++)i=o[u],i[r.ns]=!0,f=i.getAttribute("srcset"),f&&t.push({srcset:f,media:i.getAttribute("media"),type:i.getAttribute("type"),sizes:i.getAttribute("sizes")})}function ii(n,t){function h(t){var i,r=t.exec(n.substring(e));if(r)return(i=r[0],e+=i.length,i)}function o(){for(var u,r,e,h,v,o,l,y,n=!1,i={},a=0;a<f.length;a++)h=f[a],v=h[h.length-1],o=h.substring(0,h.length-1),l=parseInt(o,10),y=parseFloat(o),vt.test(o)&&"w"===v?((u||r)&&(n=!0),0===l?n=!0:u=l):vi.test(o)&&"x"===v?((u||r||e)&&(n=!0),0>y?n=!0:r=y):vt.test(o)&&"h"===v?((e||r)&&(n=!0),0===l?n=!0:e=l):n=!0;n||(i.url=s,u&&(i.w=u),r&&(i.d=r),e&&(i.h=e),e||r||u||(i.d=1),1===i.d&&(t.has1x=!0),i.set=t,c.push(i))}function l(){for(h(hi),i="",u="in descriptor";;){if(r=n.charAt(e),"in descriptor"===u)if(v(r))i&&(f.push(i),i="",u="after descriptor");else{if(","===r)return e+=1,i&&f.push(i),void o();if("("===r)i+=r,u="in parens";else{if(""===r)return i&&f.push(i),void o();i+=r}}else if("in parens"===u)if(")"===r)i+=r,u="in descriptor";else{if(""===r)return f.push(i),void o();i+=r}else if("after descriptor"===u&&!v(r)){if(""===r)return void o();u="in descriptor";e-=1}e+=1}}for(var s,f,i,u,r,a=n.length,e=0,c=[];;){if(h(ci),e>=a)return c;s=h(li);f=[];","===s.slice(-1)?(s=s.replace(ai,""),o()):l()}}function ri(n){function s(n){function u(){r&&(f.push(r),r="")}function s(){f[0]&&(h.push(f),f=[])}for(var i,r="",f=[],h=[],e=0,t=0,o=!1;;){if(i=n.charAt(t),""===i)return u(),s(),h;if(o){if("*"===i&&"/"===n[t+1]){o=!1;t+=2;u();continue}t+=1}else{if(v(i)){if(n.charAt(t-1)&&v(n.charAt(t-1))||!r){t+=1;continue}if(0===e){u();t+=1;continue}i=" "}else if("("===i)e+=1;else if(")"===i)e-=1;else{if(","===i){u();s();t+=1;continue}if("/"===i&&"*"===n.charAt(t+1)){o=!0;t+=2;continue}}r+=i;t+=1}}}function h(n){return c.test(n)&&parseFloat(n)>=0?!0:l.test(n)?!0:"0"===n||"-0"===n||"+0"===n?!0:!1}var i,u,e,t,f,o,c=/^(?:[+-]?[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?(?:ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmin|vmax|vw)$/i,l=/^calc\((?:[0-9a-z \.\+\-\*\/\(\)]+)\)$/i;for(u=s(n),e=u.length,i=0;e>i;i++)if((t=u[i],f=t[t.length-1],h(f))&&((o=f,t.pop(),0===t.length)||(t=t.join(" "),r.matchesMedia(t))))return o;return"100vw"}t.createElement("picture");var ui,c,ot,y,r={},k=!1,l=function(){},s=t.createElement("img"),d=s.getAttribute,st=s.setAttribute,ht=s.removeAttribute,e=t.documentElement,o={},p={algorithm:""},g="data-pfsrc",ct=g+"set",nt=navigator.userAgent,fi=/rident/.test(nt)||/ecko/.test(nt)&&nt.match(/rv\:(\d+)/)&&RegExp.$1>35,tt="currentSrc",ei=/\s+\+?\d+(e\d+)?w/,oi=/(\([^)]+\))?\s*(.+)/,it=n.picturefillCFG,si="position:absolute;left:0;visibility:hidden;display:block;padding:0;border:none;font-size:1em;width:1em;overflow:hidden;clip:rect(0px, 0px, 0px, 0px)",lt="font-size:100%!important;",w=!0,h={},b={},a=n.devicePixelRatio,u={px:1,"in":96},at=t.createElement("a"),rt=!1,hi=/^[ \t\n\r\u000c]+/,ci=/^[, \t\n\r\u000c]+/,li=/^[^ \t\n\r\u000c]+/,ai=/[,]+$/,vt=/^\d+$/,vi=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,yt=function(n,t,i,r){n.addEventListener?n.addEventListener(t,i,r||!1):n.attachEvent&&n.attachEvent("on"+t,i)},ut=function(n){var t={};return function(i){return i in t||(t[i]=n(i)),t[i]}},pt=function(){var n=/^([\d\.]+)(em|vw|px)$/,t=function(){for(var n=arguments,t=0,i=n[0];++t in n;)i=i.replace(n[t],n[++t]);return i},i=ut(function(n){return"return "+t((n||"").toLowerCase(),/\band\b/g,"&&",/,/g,"||",/min-([a-z-\s]+):/g,"e.$1>=",/max-([a-z-\s]+):/g,"e.$1<=",/calc([^)]+)/g,"($1)",/(\d+[\.]*[\d]*)([a-z]+)/g,"($1 * e.$2)",/^(?!(e.[a-z]|[0-9\.&=|><\+\-\*\(\)\/])).*/gi,"")+";"});return function(t,r){var f;if(!(t in h))if(h[t]=!1,r&&(f=t.match(n)))h[t]=f[1]*u[f[2]];else try{h[t]=new Function("e",i(t))(u)}catch(e){}return h[t]}}(),ft=function(n,t){return n.w?(n.cWidth=r.calcListLength(t||"100vw"),n.res=n.w/n.cWidth):n.res=n.d,n},f=function(n){if(k){var f,u,e,i=n||{};if(i.elements&&1===i.elements.nodeType&&("IMG"===i.elements.nodeName.toUpperCase()?i.elements=[i.elements]:(i.context=i.elements,i.elements=null)),f=i.elements||r.qsa(i.context||t,i.reevaluate||i.reselect?r.sel:r.selShort),e=f.length){for(r.setupRun(i),rt=!0,u=0;e>u;u++)r.fillImg(f[u],i);r.teardownRun(i)}}};for(ui=n.console&&console.warn?function(n){console.warn(n)}:l,(tt in s)||(tt="src"),o["image/jpeg"]=!0,o["image/gif"]=!0,o["image/png"]=!0,o["image/svg+xml"]=t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Image","1.1"),r.ns=("pf"+(new Date).getTime()).substr(0,9),r.supSrcset=("srcset"in s),r.supSizes=("sizes"in s),r.supPicture=!!n.HTMLPictureElement,r.supSrcset&&r.supPicture&&!r.supSizes&&!function(n){s.srcset="data:,a";n.src="data:,a";r.supSrcset=s.complete===n.complete;r.supPicture=r.supSrcset&&r.supPicture}(t.createElement("img")),r.supSrcset&&!r.supSizes?!function(){var i="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",n=t.createElement("img"),u=function(){var t=n.width;2===t&&(r.supSizes=!0);ot=r.supSrcset&&!r.supSizes;k=!0;setTimeout(f)};n.onload=u;n.onerror=u;n.setAttribute("sizes","9px");n.srcset=i+" 1w,data:image/gif;base64,R0lGODlhAgABAPAAAP///wAAACH5BAAAAAAALAAAAAACAAEAAAICBAoAOw== 9w";n.src=i}():k=!0,r.selShort="picture>img,img[srcset]",r.sel=r.selShort,r.cfg=p,r.DPR=a||1,r.u=u,r.types=o,r.setSize=l,r.makeUrl=ut(function(n){return at.href=n,at.href}),r.qsa=function(n,t){return"querySelector"in n?n.querySelectorAll(t):[]},r.matchesMedia=function(){return r.matchesMedia=n.matchMedia&&(matchMedia("(min-width: 0.1em)")||{}).matches?function(n){return!n||matchMedia(n).matches}:r.mMQ,r.matchesMedia.apply(this,arguments)},r.mMQ=function(n){return n?pt(n):!0},r.calcLength=function(n){var t=pt(n,!0)||!1;return 0>t&&(t=!1),t},r.supportsType=function(n){return n?o[n]:!0},r.parseSize=ut(function(n){var t=(n||"").match(oi);return{media:t&&t[1],length:t&&t[2]}}),r.parseSet=function(n){return n.cands||(n.cands=ii(n.srcset,n)),n.cands},r.getEmValue=function(){var n;if(!c&&(n=t.body)){var i=t.createElement("div"),r=e.style.cssText,u=n.style.cssText;i.style.cssText=si;e.style.cssText=lt;n.style.cssText=lt;n.appendChild(i);c=i.offsetWidth;n.removeChild(i);c=parseFloat(c,10);e.style.cssText=r;n.style.cssText=u}return c||16},r.calcListLength=function(n){if(!(n in b)||p.uT){var t=r.calcLength(ri(n));b[n]=t?t:u.width}return b[n]},r.setRes=function(n){var t,i,u;if(n)for(t=r.parseSet(n),i=0,u=t.length;u>i;i++)ft(t[i],n.sizes);return t},r.setRes.res=ft,r.applySetCandidate=function(n,t){if(n.length){var f,e,o,l,i,s,u,a,v,h=t[r.ns],c=r.DPR;if(s=h.curSrc||t[tt],u=h.curCan||ni(t,s,n[0].set),u&&u.set===n[0].set&&(v=fi&&!t.complete&&u.res-.1>c,v||(u.cached=!0,u.res>=c&&(i=u))),!i)for(n.sort(gt),l=n.length,i=n[l-1],e=0;l>e;e++)if(f=n[e],f.res>=c){o=e-1;i=n[o]&&(v||s!==r.makeUrl(f.url))&&kt(n[o].res,f.res,c,n[o].cached)?n[o]:f;break}i&&(a=r.makeUrl(i.url),h.curSrc=a,h.curCan=i,a!==s&&r.setSrc(t,i),r.setSize(t))}},r.setSrc=function(n,t){var i;n.src=t.url;"image/svg+xml"===t.set.type&&(i=n.style.width,n.style.width=n.offsetWidth+1+"px",n.offsetWidth+1&&(n.style.width=i))},r.getSet=function(n){for(var t,u,f=!1,e=n[r.ns].sets,i=0;i<e.length&&!f;i++)if(t=e[i],t.srcset&&r.matchesMedia(t.media)&&(u=r.supportsType(t.type))){"pending"===u&&(t=u);f=t;break}return f},r.parseSets=function(n,t,u){var o,e,s,h,c=t&&"PICTURE"===t.nodeName.toUpperCase(),f=n[r.ns];(f.src===i||u.src)&&(f.src=d.call(n,"src"),f.src?st.call(n,g,f.src):ht.call(n,g));(f.srcset===i||u.srcset||!r.supSrcset||n.srcset)&&(o=d.call(n,"srcset"),f.srcset=o,h=!0);f.sets=[];c&&(f.pic=!0,ti(t,f.sets));f.srcset?(e={srcset:f.srcset,sizes:d.call(n,"sizes")},f.sets.push(e),s=(ot||f.src)&&ei.test(f.srcset||""),s||!f.src||et(f.src,e)||e.has1x||(e.srcset+=", "+f.src,e.cands.push({url:f.src,d:1,set:e}))):f.src&&f.sets.push({srcset:f.src,sizes:null});f.curCan=null;f.curSrc=i;f.supported=!(c||e&&!r.supSrcset||s&&!r.supSizes);h&&r.supSrcset&&!f.supported&&(o?(st.call(n,ct,o),n.srcset=""):ht.call(n,ct));f.supported&&!f.srcset&&(!f.src&&n.src||n.src!==r.makeUrl(f.src))&&(null===f.src?n.removeAttribute("src"):n.src=f.src);f.parsed=!0},r.fillImg=function(n,t){var i,u=t.reselect||t.reevaluate;n[r.ns]||(n[r.ns]={});i=n[r.ns];(u||i.evaled!==y)&&((!i.parsed||t.reevaluate)&&r.parseSets(n,n.parentNode,t),i.supported?i.evaled=y:dt(n))},r.setupRun=function(){(!rt||w||a!==n.devicePixelRatio)&&bt()},r.supPicture?(f=l,r.fillImg=l):!function(){var i,h=n.attachEvent?/d$|^c/:/d$|^c|^i/,f=function(){var n=t.readyState||"";o=setTimeout(f,"loading"===n?200:999);t.body&&(r.fillImgs(),i=i||h.test(n),i&&clearTimeout(o))},o=setTimeout(f,t.body?9:99),c=function(n,t){var i,r,u=function(){var f=new Date-r;t>f?i=setTimeout(u,t-f):(i=null,n())};return function(){r=new Date;i||(i=setTimeout(u,t))}},s=e.clientHeight,l=function(){w=Math.max(n.innerWidth||0,e.clientWidth)!==u.width||e.clientHeight!==s;s=e.clientHeight;w&&r.fillImgs()};yt(n,"resize",c(l,99));yt(t,"readystatechange",f)}(),r.picturefill=f,r.fillImgs=f,r.teardownRun=l,f._=r,n.picturefillCFG={pf:r,push:function(n){var t=n.shift();"function"==typeof r[t]?r[t].apply(r,n):(p[t]=n[0],rt&&r.fillImgs({reselect:!0}))}};it&&it.length;)n.picturefillCFG.push(it.shift());n.picturefill=f;"object"==typeof module&&"object"==typeof module.exports?module.exports=f:"function"==typeof define&&define.amd&&define("picturefill",function(){return f});r.supPicture||(o["image/webp"]=wt("image/webp","data:image/webp;base64,UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAABBxAR/Q9ERP8DAABWUDggGAAAADABAJ0BKgEAAQADADQlpAADcAD++/1QAA=="))}(window,document),function(n){typeof define=="function"&&define.amd?define(["jquery"],n):typeof exports=="object"?n(require("jquery")):n(jQuery)}(function(n,t){function f(){return new Date(Date.UTC.apply(Date,arguments))}function o(){var n=new Date;return f(n.getFullYear(),n.getMonth(),n.getDate())}function l(n,t){return n.getUTCFullYear()===t.getUTCFullYear()&&n.getUTCMonth()===t.getUTCMonth()&&n.getUTCDate()===t.getUTCDate()}function h(i,r){return function(){return r!==t&&n.fn.datepicker.deprecated(r),this[i].apply(this,arguments)}}function p(n){return n&&!isNaN(n.getTime())}function w(t,i){function s(n,t){return t.toLowerCase()}var u=n(t).data(),f={},e,o=new RegExp("^"+i.toLowerCase()+"([A-Z])"),r;i=new RegExp("^"+i.toLowerCase());for(r in u)i.test(r)&&(e=r.replace(o,s),f[e]=u[r]);return f}function b(t){var u={},i;if(r[t]||(t=t.split("-")[0],r[t]))return i=r[t],n.each(y,function(n,t){t in i&&(u[t]=i[t])}),u}var a=function(){var t={get:function(n){return this.slice(n)[0]},contains:function(n){for(var i=n&&n.valueOf(),t=0,r=this.length;t<r;t++)if(0<=this[t].valueOf()-i&&this[t].valueOf()-i<864e5)return t;return-1},remove:function(n){this.splice(n,1)},replace:function(t){t&&(n.isArray(t)||(t=[t]),this.clear(),this.push.apply(this,t))},clear:function(){this.length=0},copy:function(){var n=new a;return n.replace(this),n}};return function(){var i=[];return i.push.apply(i,arguments),n.extend(i,t),i}}(),u=function(t,r){n.data(t,"datepicker",this);this._events=[];this._secondaryEvents=[];this._process_options(r);this.dates=new a;this.viewDate=this.o.defaultViewDate;this.focusDate=null;this.element=n(t);this.isInput=this.element.is("input");this.inputField=this.isInput?this.element:this.element.find("input");this.component=this.element.hasClass("date")?this.element.find(".add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn"):!1;this.component&&this.component.length===0&&(this.component=!1);this.isInline=this.o.isInline===null?!this.component&&!this.isInput:this.o.isInline;this.picker=n(i.template);this._check_template(this.o.templates.leftArrow)&&this.picker.find(".prev").html(this.o.templates.leftArrow);this._check_template(this.o.templates.rightArrow)&&this.picker.find(".next").html(this.o.templates.rightArrow);this._buildEvents();this._attachEvents();this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu");this.o.rtl&&this.picker.addClass("datepicker-rtl");this.o.calendarWeeks&&this.picker.find(".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear").attr("colspan",function(n,t){return Number(t)+1});this._process_options({startDate:this._o.startDate,endDate:this._o.endDate,daysOfWeekDisabled:this.o.daysOfWeekDisabled,daysOfWeekHighlighted:this.o.daysOfWeekHighlighted,datesDisabled:this.o.datesDisabled});this._allow_update=!1;this.setViewMode(this.o.startView);this._allow_update=!0;this.fillDow();this.fillMonths();this.update();this.isInline&&this.show()},c,v,s,e,y,r,i;u.prototype={constructor:u,_resolveViewName:function(t){return n.each(i.viewModes,function(i,r){if(t===i||n.inArray(t,r.names)!==-1)return t=i,!1}),t},_resolveDaysOfWeek:function(t){return n.isArray(t)||(t=t.split(/[,\s]*/)),n.map(t,Number)},_check_template:function(i){try{if(i===t||i==="")return!1;if((i.match(/[<>]/g)||[]).length<=0)return!0;var r=n(i);return r.length>0}catch(u){return!1}},_process_options:function(t){var u,h,l,s,c;if(this._o=n.extend({},this._o,t),u=this.o=n.extend({},this._o),h=u.language,r[h]||(h=h.split("-")[0],r[h]||(h=e.language)),u.language=h,u.startView=this._resolveViewName(u.startView),u.minViewMode=this._resolveViewName(u.minViewMode),u.maxViewMode=this._resolveViewName(u.maxViewMode),u.startView=Math.max(this.o.minViewMode,Math.min(this.o.maxViewMode,u.startView)),u.multidate!==!0&&(u.multidate=Number(u.multidate)||!1,u.multidate!==!1&&(u.multidate=Math.max(0,u.multidate))),u.multidateSeparator=String(u.multidateSeparator),u.weekStart%=7,u.weekEnd=(u.weekStart+6)%7,l=i.parseFormat(u.format),u.startDate!==-Infinity&&(u.startDate=u.startDate?u.startDate instanceof Date?this._local_to_utc(this._zero_time(u.startDate)):i.parseDate(u.startDate,l,u.language,u.assumeNearbyYear):-Infinity),u.endDate!==Infinity&&(u.endDate=u.endDate?u.endDate instanceof Date?this._local_to_utc(this._zero_time(u.endDate)):i.parseDate(u.endDate,l,u.language,u.assumeNearbyYear):Infinity),u.daysOfWeekDisabled=this._resolveDaysOfWeek(u.daysOfWeekDisabled||[]),u.daysOfWeekHighlighted=this._resolveDaysOfWeek(u.daysOfWeekHighlighted||[]),u.datesDisabled=u.datesDisabled||[],n.isArray(u.datesDisabled)||(u.datesDisabled=u.datesDisabled.split(",")),u.datesDisabled=n.map(u.datesDisabled,function(n){return i.parseDate(n,l,u.language,u.assumeNearbyYear)}),s=String(u.orientation).toLowerCase().split(/\s+/g),c=u.orientation.toLowerCase(),s=n.grep(s,function(n){return/^auto|left|right|top|bottom$/.test(n)}),u.orientation={x:"auto",y:"auto"},c&&c!=="auto")if(s.length===1)switch(s[0]){case"top":case"bottom":u.orientation.y=s[0];break;case"left":case"right":u.orientation.x=s[0]}else c=n.grep(s,function(n){return/^left|right$/.test(n)}),u.orientation.x=c[0]||"auto",c=n.grep(s,function(n){return/^top|bottom$/.test(n)}),u.orientation.y=c[0]||"auto";if(u.defaultViewDate instanceof Date||typeof u.defaultViewDate=="string")u.defaultViewDate=i.parseDate(u.defaultViewDate,l,u.language,u.assumeNearbyYear);else if(u.defaultViewDate){var a=u.defaultViewDate.year||(new Date).getFullYear(),v=u.defaultViewDate.month||0,y=u.defaultViewDate.day||1;u.defaultViewDate=f(a,v,y)}else u.defaultViewDate=o()},_applyEvents:function(n){for(var i=0,f,r,u;i<n.length;i++){f=n[i][0];n[i].length===2?(r=t,u=n[i][1]):n[i].length===3&&(r=n[i][1],u=n[i][2]);f.on(u,r)}},_unapplyEvents:function(n){for(var i=0,f,r,u;i<n.length;i++)f=n[i][0],n[i].length===2?(u=t,r=n[i][1]):n[i].length===3&&(u=n[i][1],r=n[i][2]),f.off(r,u)},_buildEvents:function(){var t={keyup:n.proxy(function(t){n.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:n.proxy(this.keydown,this),paste:n.proxy(this.paste,this)};this.o.showOnFocus===!0&&(t.focus=n.proxy(this.show,this));this._events=this.isInput?[[this.element,t]]:this.component&&this.inputField.length?[[this.inputField,t],[this.component,{click:n.proxy(this.show,this)}]]:[[this.element,{click:n.proxy(this.show,this),keydown:n.proxy(this.keydown,this)}]];this._events.push([this.element,"*",{blur:n.proxy(function(n){this._focused_from=n.target},this)}],[this.element,{blur:n.proxy(function(n){this._focused_from=n.target},this)}]);this.o.immediateUpdates&&this._events.push([this.element,{"changeYear changeMonth":n.proxy(function(n){this.update(n.date)},this)}]);this._secondaryEvents=[[this.picker,{click:n.proxy(this.click,this)}],[this.picker,".prev, .next",{click:n.proxy(this.navArrowsClick,this)}],[this.picker,".day:not(.disabled)",{click:n.proxy(this.dayCellClick,this)}],[n(window),{resize:n.proxy(this.place,this)}],[n(document),{"mousedown touchstart":n.proxy(function(n){this.element.is(n.target)||this.element.find(n.target).length||this.picker.is(n.target)||this.picker.find(n.target).length||this.isInline||this.hide()},this)}]]},_attachEvents:function(){this._detachEvents();this._applyEvents(this._events)},_detachEvents:function(){this._unapplyEvents(this._events)},_attachSecondaryEvents:function(){this._detachSecondaryEvents();this._applyEvents(this._secondaryEvents)},_detachSecondaryEvents:function(){this._unapplyEvents(this._secondaryEvents)},_trigger:function(t,r){var u=r||this.dates.get(-1),f=this._utc_to_local(u);this.element.trigger({type:t,date:f,viewMode:this.viewMode,dates:n.map(this.dates,this._utc_to_local),format:n.proxy(function(n,t){arguments.length===0?(n=this.dates.length-1,t=this.o.format):typeof n=="string"&&(t=n,n=this.dates.length-1);t=t||this.o.format;var r=this.dates.get(n);return i.formatDate(r,t,this.o.language)},this)})},show:function(){if(!this.inputField.is(":disabled")&&(!this.inputField.prop("readonly")||this.o.enableOnReadonly!==!1))return this.isInline||this.picker.appendTo(this.o.container),this.place(),this.picker.show(),this._attachSecondaryEvents(),this._trigger("show"),(window.navigator.msMaxTouchPoints||"ontouchstart"in document)&&this.o.disableTouchKeyboard&&n(this.element).blur(),this},hide:function(){return this.isInline||!this.picker.is(":visible")?this:(this.focusDate=null,this.picker.hide().detach(),this._detachSecondaryEvents(),this.setViewMode(this.o.startView),this.o.forceParse&&this.inputField.val()&&this.setValue(),this._trigger("hide"),this)},destroy:function(){return this.hide(),this._detachEvents(),this._detachSecondaryEvents(),this.picker.remove(),delete this.element.data().datepicker,this.isInput||delete this.element.data().date,this},paste:function(t){var i;if(t.originalEvent.clipboardData&&t.originalEvent.clipboardData.types&&n.inArray("text/plain",t.originalEvent.clipboardData.types)!==-1)i=t.originalEvent.clipboardData.getData("text/plain");else if(window.clipboardData)i=window.clipboardData.getData("Text");else return;this.setDate(i);this.update();t.preventDefault()},_utc_to_local:function(n){if(!n)return n;var t=new Date(n.getTime()+n.getTimezoneOffset()*6e4);return t.getTimezoneOffset()!==n.getTimezoneOffset()&&(t=new Date(n.getTime()+t.getTimezoneOffset()*6e4)),t},_local_to_utc:function(n){return n&&new Date(n.getTime()-n.getTimezoneOffset()*6e4)},_zero_time:function(n){return n&&new Date(n.getFullYear(),n.getMonth(),n.getDate())},_zero_utc_time:function(n){return n&&f(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate())},getDates:function(){return n.map(this.dates,this._utc_to_local)},getUTCDates:function(){return n.map(this.dates,function(n){return new Date(n)})},getDate:function(){return this._utc_to_local(this.getUTCDate())},getUTCDate:function(){var n=this.dates.get(-1);return n!==t?new Date(n):null},clearDates:function(){this.inputField.val("");this._trigger("changeDate");this.update();this.o.autoclose&&this.hide()},setDates:function(){var t=n.isArray(arguments[0])?arguments[0]:arguments;return this.update.apply(this,t),this._trigger("changeDate"),this.setValue(),this},setUTCDates:function(){var t=n.isArray(arguments[0])?arguments[0]:arguments;return this.setDates.apply(this,n.map(t,this._utc_to_local)),this},setDate:h("setDates"),setUTCDate:h("setUTCDates"),remove:h("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead"),setValue:function(){var n=this.getFormattedDate();return this.inputField.val(n),this},getFormattedDate:function(r){r===t&&(r=this.o.format);var u=this.o.language;return n.map(this.dates,function(n){return i.formatDate(n,r,u)}).join(this.o.multidateSeparator)},getStartDate:function(){return this.o.startDate},setStartDate:function(n){return this._process_options({startDate:n}),this.update(),this.updateNavArrows(),this},getEndDate:function(){return this.o.endDate},setEndDate:function(n){return this._process_options({endDate:n}),this.update(),this.updateNavArrows(),this},setDaysOfWeekDisabled:function(n){return this._process_options({daysOfWeekDisabled:n}),this.update(),this},setDaysOfWeekHighlighted:function(n){return this._process_options({daysOfWeekHighlighted:n}),this.update(),this},setDatesDisabled:function(n){return this._process_options({datesDisabled:n}),this.update(),this},place:function(){var r,y,p;if(this.isInline)return this;var f=this.picker.outerWidth(),s=this.picker.outerHeight(),e=n(this.o.container),h=e.width(),c=this.o.container==="body"?n(document).scrollTop():e.scrollTop(),l=e.offset(),a=[0];this.element.parents().each(function(){var t=n(this).css("z-index");t!=="auto"&&Number(t)!==0&&a.push(Number(t))});var v=Math.max.apply(Math,a)+this.o.zIndexOffset,u=this.component?this.component.parent().offset():this.element.offset(),w=this.component?this.component.outerHeight(!0):this.element.outerHeight(!1),o=this.component?this.component.outerWidth(!0):this.element.outerWidth(!1),t=u.left-l.left,i=u.top-l.top;return this.o.container!=="body"&&(i+=c),this.picker.removeClass("datepicker-orient-top datepicker-orient-bottom datepicker-orient-right datepicker-orient-left"),this.o.orientation.x!=="auto"?(this.picker.addClass("datepicker-orient-"+this.o.orientation.x),this.o.orientation.x==="right"&&(t-=f-o)):u.left<0?(this.picker.addClass("datepicker-orient-left"),t-=u.left-10):t+f>h?(this.picker.addClass("datepicker-orient-right"),t+=o-f):this.o.rtl?this.picker.addClass("datepicker-orient-right"):this.picker.addClass("datepicker-orient-left"),r=this.o.orientation.y,r==="auto"&&(y=-c+i-s,r=y<0?"bottom":"top"),this.picker.addClass("datepicker-orient-"+r),r==="top"?i-=s+parseInt(this.picker.css("padding-top")):i+=w,this.o.rtl?(p=h-(t+o),this.picker.css({top:i,right:p,zIndex:v})):this.picker.css({top:i,left:t,zIndex:v}),this},_allow_update:!0,update:function(){if(!this._allow_update)return this;var u=this.dates.copy(),t=[],r=!1;return arguments.length?(n.each(arguments,n.proxy(function(n,i){i instanceof Date&&(i=this._local_to_utc(i));t.push(i)},this)),r=!0):(t=this.isInput?this.element.val():this.element.data("date")||this.inputField.val(),t=t&&this.o.multidate?t.split(this.o.multidateSeparator):[t],delete this.element.data().date),t=n.map(t,n.proxy(function(n){return i.parseDate(n,this.o.format,this.o.language,this.o.assumeNearbyYear)},this)),t=n.grep(t,n.proxy(function(n){return!this.dateWithinRange(n)||!n},this),!0),this.dates.replace(t),this.o.updateViewDate&&(this.viewDate=this.dates.length?new Date(this.dates.get(-1)):this.viewDate<this.o.startDate?new Date(this.o.startDate):this.viewDate>this.o.endDate?new Date(this.o.endDate):this.o.defaultViewDate),r?(this.setValue(),this.element.change()):this.dates.length&&String(u)!==String(this.dates)&&r&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&u.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var i=this.o.weekStart,t="<tr>";for(this.o.calendarWeeks&&(t+='<th class="cw">&#160;<\/th>');i<this.o.weekStart+7;)t+='<th class="dow',n.inArray(i,this.o.daysOfWeekDisabled)!==-1&&(t+=" disabled"),t+='">'+r[this.o.language].daysMin[i++%7]+"<\/th>";t+="<\/tr>";this.picker.find(".datepicker-days thead").append(t)}},fillMonths:function(){for(var t=this._utc_to_local(this.viewDate),i="",u,n=0;n<12;n++)u=t&&t.getMonth()===n?" focused":"",i+='<span class="month'+u+'">'+r[this.o.language].monthsShort[n]+"<\/span>";this.picker.find(".datepicker-months td").html(i)},setRange:function(t){t&&t.length?this.range=n.map(t,function(n){return n.valueOf()}):delete this.range;this.fill()},getClassNames:function(t){var i=[],r=this.viewDate.getUTCFullYear(),u=this.viewDate.getUTCMonth(),f=o();return t.getUTCFullYear()<r||t.getUTCFullYear()===r&&t.getUTCMonth()<u?i.push("old"):(t.getUTCFullYear()>r||t.getUTCFullYear()===r&&t.getUTCMonth()>u)&&i.push("new"),this.focusDate&&t.valueOf()===this.focusDate.valueOf()&&i.push("focused"),this.o.todayHighlight&&l(t,f)&&i.push("today"),this.dates.contains(t)!==-1&&i.push("active"),this.dateWithinRange(t)||i.push("disabled"),this.dateIsDisabled(t)&&i.push("disabled","disabled-date"),n.inArray(t.getUTCDay(),this.o.daysOfWeekHighlighted)!==-1&&i.push("highlighted"),this.range&&(t>this.range[0]&&t<this.range[this.range.length-1]&&i.push("range"),n.inArray(t.valueOf(),this.range)!==-1&&i.push("selected"),t.valueOf()===this.range[0]&&i.push("range-start"),t.valueOf()===this.range[this.range.length-1]&&i.push("range-end")),i},_fill_yearsView:function(i,r,u,f,e,o,s){for(var w="",c=u/10,b=this.picker.find(i),v=Math.floor(f/u)*u,p=v+c*9,k=Math.floor(this.viewDate.getFullYear()/c)*c,d=n.map(this.dates,function(n){return Math.floor(n.getUTCFullYear()/c)*c}),l,y,h,a=v-c;a<=p+c;a+=c)l=[r],y=null,a===v-c?l.push("old"):a===p+c&&l.push("new"),n.inArray(a,d)!==-1&&l.push("active"),(a<e||a>o)&&l.push("disabled"),a===k&&l.push("focused"),s!==n.noop&&(h=s(new Date(a,0,1)),h===t?h={}:typeof h=="boolean"?h={enabled:h}:typeof h=="string"&&(h={classes:h}),h.enabled===!1&&l.push("disabled"),h.classes&&(l=l.concat(h.classes.split(/\s+/))),h.tooltip&&(y=h.tooltip)),w+='<span class="'+l.join(" ")+'"'+(y?' title="'+y+'"':"")+">"+a+"<\/span>";b.find(".datepicker-switch").text(v+"-"+p);b.find("td").html(w)},fill:function(){var b=new Date(this.viewDate),s=b.getUTCFullYear(),nt=b.getUTCMonth(),v=this.o.startDate!==-Infinity?this.o.startDate.getUTCFullYear():-Infinity,et=this.o.startDate!==-Infinity?this.o.startDate.getUTCMonth():-Infinity,y=this.o.endDate!==Infinity?this.o.endDate.getUTCFullYear():Infinity,ot=this.o.endDate!==Infinity?this.o.endDate.getUTCMonth():Infinity,st=r[this.o.language].today||r.en.today||"",ht=r[this.o.language].clear||r.en.clear||"",ct=r[this.o.language].titleFormat||r.en.titleFormat,k=o(),lt=(this.o.todayBtn===!0||this.o.todayBtn==="linked")&&k>=this.o.startDate&&k<=this.o.endDate&&!this.weekOfDateIsDisabled(k),p,u,e,tt,c,l,w,h,g,ut,a,ft;if(!isNaN(s)&&!isNaN(nt)){for(this.picker.find(".datepicker-days .datepicker-switch").text(i.formatDate(b,ct,this.o.language)),this.picker.find("tfoot .today").text(st).css("display",lt?"table-cell":"none"),this.picker.find("tfoot .clear").text(ht).css("display",this.o.clearBtn===!0?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display",typeof this.o.title=="string"&&this.o.title!==""?"table-cell":"none"),this.updateNavArrows(),this.fillMonths(),e=f(s,nt,0),tt=e.getUTCDate(),e.setUTCDate(tt-(e.getUTCDay()-this.o.weekStart+7)%7),c=new Date(e),e.getUTCFullYear()<100&&c.setUTCFullYear(e.getUTCFullYear()),c.setUTCDate(c.getUTCDate()+42),c=c.valueOf(),l=[];e.valueOf()<c;){if(w=e.getUTCDay(),w===this.o.weekStart&&(l.push("<tr>"),this.o.calendarWeeks)){var it=new Date(+e+(this.o.weekStart-w-7)%7*864e5),rt=new Date(Number(it)+(11-it.getUTCDay())%7*864e5),d=new Date(Number(d=f(rt.getUTCFullYear(),0,1))+(11-d.getUTCDay())%7*864e5),at=(rt-d)/6048e5+1;l.push('<td class="cw">'+at+"<\/td>")}h=this.getClassNames(e);h.push("day");g=e.getUTCDate();this.o.beforeShowDay!==n.noop&&(u=this.o.beforeShowDay(this._utc_to_local(e)),u===t?u={}:typeof u=="boolean"?u={enabled:u}:typeof u=="string"&&(u={classes:u}),u.enabled===!1&&h.push("disabled"),u.classes&&(h=h.concat(u.classes.split(/\s+/))),u.tooltip&&(p=u.tooltip),u.content&&(g=u.content));h=n.isFunction(n.uniqueSort)?n.uniqueSort(h):n.unique(h);l.push('<td class="'+h.join(" ")+'"'+(p?' title="'+p+'"':"")+' data-date="'+e.getTime().toString()+'">'+g+"<\/td>");p=null;w===this.o.weekEnd&&l.push("<\/tr>");e.setUTCDate(e.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(l.join(""));ut=r[this.o.language].monthsTitle||r.en.monthsTitle||"Months";a=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?ut:s).end().find("tbody span").removeClass("active");n.each(this.dates,function(n,t){t.getUTCFullYear()===s&&a.eq(t.getUTCMonth()).addClass("active")});(s<v||s>y)&&a.addClass("disabled");s===v&&a.slice(0,et).addClass("disabled");s===y&&a.slice(ot+1).addClass("disabled");this.o.beforeShowMonth!==n.noop&&(ft=this,n.each(a,function(i,r){var f=new Date(s,i,1),u=ft.o.beforeShowMonth(f);u===t?u={}:typeof u=="boolean"?u={enabled:u}:typeof u=="string"&&(u={classes:u});u.enabled!==!1||n(r).hasClass("disabled")||n(r).addClass("disabled");u.classes&&n(r).addClass(u.classes);u.tooltip&&n(r).prop("title",u.tooltip)}));this._fill_yearsView(".datepicker-years","year",10,s,v,y,this.o.beforeShowYear);this._fill_yearsView(".datepicker-decades","decade",100,s,v,y,this.o.beforeShowDecade);this._fill_yearsView(".datepicker-centuries","century",1e3,s,v,y,this.o.beforeShowCentury)}},updateNavArrows:function(){if(this._allow_update){var u=new Date(this.viewDate),t=u.getUTCFullYear(),f=u.getUTCMonth(),e=this.o.startDate!==-Infinity?this.o.startDate.getUTCFullYear():-Infinity,s=this.o.startDate!==-Infinity?this.o.startDate.getUTCMonth():-Infinity,o=this.o.endDate!==Infinity?this.o.endDate.getUTCFullYear():Infinity,h=this.o.endDate!==Infinity?this.o.endDate.getUTCMonth():Infinity,i,r,n=1;switch(this.viewMode){case 4:n*=10;case 3:n*=10;case 2:n*=10;case 1:i=Math.floor(t/n)*n<=e;r=Math.floor(t/n)*n+n>o;break;case 0:i=t<=e&&f<=s;r=t>=o&&f>=h}this.picker.find(".prev").toggleClass("disabled",i);this.picker.find(".next").toggleClass("disabled",r)}},click:function(t){t.preventDefault();t.stopPropagation();var r,s,u,e;r=n(t.target);r.hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1);r.hasClass("today")&&!r.hasClass("day")&&(this.setViewMode(0),this._setDate(o(),this.o.todayBtn==="linked"?null:"view"));r.hasClass("clear")&&this.clearDates();r.hasClass("disabled")||(r.hasClass("month")||r.hasClass("year")||r.hasClass("decade")||r.hasClass("century"))&&(this.viewDate.setUTCDate(1),s=1,this.viewMode===1?(e=r.parent().find("span").index(r),u=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(e)):(e=0,u=Number(r.text()),this.viewDate.setUTCFullYear(u)),this._trigger(i.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(f(u,e,s)):(this.setViewMode(this.viewMode-1),this.fill()));this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus();delete this._focused_from},dayCellClick:function(t){var r=n(t.currentTarget),u=r.data("date"),i=new Date(u);this.o.updateViewDate&&(i.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),i.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate));this._setDate(i)},navArrowsClick:function(t){var u=n(t.currentTarget),r=u.hasClass("prev")?-1:1;this.viewMode!==0&&(r*=i.viewModes[this.viewMode].navStep*12);this.viewDate=this.moveMonth(this.viewDate,r);this._trigger(i.viewModes[this.viewMode].e,this.viewDate);this.fill()},_toggle_multidate:function(n){var t=this.dates.contains(n);if(n||this.dates.clear(),t!==-1?(this.o.multidate===!0||this.o.multidate>1||this.o.toggleActive)&&this.dates.remove(t):this.o.multidate===!1?(this.dates.clear(),this.dates.push(n)):this.dates.push(n),typeof this.o.multidate=="number")while(this.dates.length>this.o.multidate)this.dates.remove(0)},_setDate:function(n,t){t&&t!=="date"||this._toggle_multidate(n&&new Date(n));(!t&&this.o.updateViewDate||t==="view")&&(this.viewDate=n&&new Date(n));this.fill();this.setValue();t&&t==="view"||this._trigger("changeDate");this.inputField.trigger("change");this.o.autoclose&&(!t||t==="date")&&this.hide()},moveDay:function(n,t){var i=new Date(n);return i.setUTCDate(n.getUTCDate()+t),i},moveWeek:function(n,t){return this.moveDay(n,t*7)},moveMonth:function(n,t){var f;if(!p(n))return this.o.defaultViewDate;if(!t)return n;var i=new Date(n.valueOf()),e=i.getUTCDate(),o=i.getUTCMonth(),s=Math.abs(t),r,u;if(t=t>0?1:-1,s===1)u=t===-1?function(){return i.getUTCMonth()===o}:function(){return i.getUTCMonth()!==r},r=o+t,i.setUTCMonth(r),r=(r+12)%12;else{for(f=0;f<s;f++)i=this.moveMonth(i,t);r=i.getUTCMonth();i.setUTCDate(e);u=function(){return r!==i.getUTCMonth()}}while(u())i.setUTCDate(--e),i.setUTCMonth(r);return i},moveYear:function(n,t){return this.moveMonth(n,t*12)},moveAvailableDate:function(n,t,i){do{if(n=this[i](n,t),!this.dateWithinRange(n))return!1;i="moveDay"}while(this.dateIsDisabled(n));return n},weekOfDateIsDisabled:function(t){return n.inArray(t.getUTCDay(),this.o.daysOfWeekDisabled)!==-1},dateIsDisabled:function(t){return this.weekOfDateIsDisabled(t)||n.grep(this.o.datesDisabled,function(n){return l(t,n)}).length>0},dateWithinRange:function(n){return n>=this.o.startDate&&n<=this.o.endDate},keydown:function(n){if(!this.picker.is(":visible")){(n.keyCode===40||n.keyCode===27)&&(this.show(),n.stopPropagation());return}var u=!1,t,i,r=this.focusDate||this.viewDate;switch(n.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide();n.preventDefault();n.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||this.o.daysOfWeekDisabled.length===7)break;t=n.keyCode===37||n.keyCode===38?-1:1;this.viewMode===0?n.ctrlKey?(i=this.moveAvailableDate(r,t,"moveYear"),i&&this._trigger("changeYear",this.viewDate)):n.shiftKey?(i=this.moveAvailableDate(r,t,"moveMonth"),i&&this._trigger("changeMonth",this.viewDate)):n.keyCode===37||n.keyCode===39?i=this.moveAvailableDate(r,t,"moveDay"):this.weekOfDateIsDisabled(r)||(i=this.moveAvailableDate(r,t,"moveWeek")):this.viewMode===1?((n.keyCode===38||n.keyCode===40)&&(t=t*4),i=this.moveAvailableDate(r,t,"moveMonth")):this.viewMode===2&&((n.keyCode===38||n.keyCode===40)&&(t=t*4),i=this.moveAvailableDate(r,t,"moveYear"));i&&(this.focusDate=this.viewDate=i,this.setValue(),this.fill(),n.preventDefault());break;case 13:if(!this.o.forceParse)break;r=this.focusDate||this.dates.get(-1)||this.viewDate;this.o.keyboardNavigation&&(this._toggle_multidate(r),u=!0);this.focusDate=null;this.viewDate=this.dates.get(-1)||this.viewDate;this.setValue();this.fill();this.picker.is(":visible")&&(n.preventDefault(),n.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null;this.viewDate=this.dates.get(-1)||this.viewDate;this.fill();this.hide()}u&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))},setViewMode:function(n){this.viewMode=n;this.picker.children("div").hide().filter(".datepicker-"+i.viewModes[this.viewMode].clsName).show();this.updateNavArrows();this._trigger("changeViewMode",new Date(this.viewDate))}};c=function(t,i){n.data(t,"datepicker",this);this.element=n(t);this.inputs=n.map(i.inputs,function(n){return n.jquery?n[0]:n});delete i.inputs;this.keepEmptyValues=i.keepEmptyValues;delete i.keepEmptyValues;s.call(n(this.inputs),i).on("changeDate",n.proxy(this.dateUpdated,this));this.pickers=n.map(this.inputs,function(t){return n.data(t,"datepicker")});this.updateDates()};c.prototype={updateDates:function(){this.dates=n.map(this.pickers,function(n){return n.getUTCDate()});this.updateRanges()},updateRanges:function(){var t=n.map(this.dates,function(n){return n.valueOf()});n.each(this.pickers,function(n,i){i.setRange(t)})},clearDates:function(){n.each(this.pickers,function(n,t){t.clearDates()})},dateUpdated:function(i){var e;if(!this.updating&&(this.updating=!0,e=n.data(i.target,"datepicker"),e!==t)){var r=e.getUTCDate(),s=this.keepEmptyValues,o=n.inArray(i.target,this.inputs),u=o-1,f=o+1,h=this.inputs.length;if(o!==-1){if(n.each(this.pickers,function(n,t){t.getUTCDate()||t!==e&&s||t.setUTCDate(r)}),r<this.dates[u])while(u>=0&&r<this.dates[u]&&(this.pickers[u].element.val()||"").length>0)this.pickers[u--].setUTCDate(r);else if(r>this.dates[f])while(f<h&&r>this.dates[f]&&(this.pickers[f].element.val()||"").length>0)this.pickers[f++].setUTCDate(r);this.updateDates();delete this.updating}}},destroy:function(){n.map(this.pickers,function(n){n.destroy()});n(this.inputs).off("changeDate",this.dateUpdated);delete this.element.data().datepicker},remove:h("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};v=n.fn.datepicker;s=function(i){var f=Array.apply(null,arguments),r;if(f.shift(),this.each(function(){var s=n(this),t=s.data("datepicker"),h=typeof i=="object"&&i;if(!t){var l=w(this,"date"),a=n.extend({},e,l,h),v=b(a.language),o=n.extend({},e,v,l,h);s.hasClass("input-daterange")||o.inputs?(n.extend(o,{inputs:o.inputs||s.find("input").toArray()}),t=new c(this,o)):t=new u(this,o);s.data("datepicker",t)}typeof i=="string"&&typeof t[i]=="function"&&(r=t[i].apply(t,f))}),r===t||r instanceof u||r instanceof c)return this;if(this.length>1)throw new Error("Using only allowed for the collection of a single element ("+i+" function)");else return r};n.fn.datepicker=s;e=n.fn.datepicker.defaults={assumeNearbyYear:!1,autoclose:!1,beforeShowDay:n.noop,beforeShowMonth:n.noop,beforeShowYear:n.noop,beforeShowDecade:n.noop,beforeShowCentury:n.noop,calendarWeeks:!1,clearBtn:!1,toggleActive:!1,daysOfWeekDisabled:[],daysOfWeekHighlighted:[],datesDisabled:[],endDate:Infinity,forceParse:!0,format:"mm/dd/yyyy",isInline:null,keepEmptyValues:!1,keyboardNavigation:!0,language:"en",minViewMode:0,maxViewMode:4,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-Infinity,startView:0,todayBtn:!1,todayHighlight:!1,updateViewDate:!0,weekStart:0,disableTouchKeyboard:!1,enableOnReadonly:!0,showOnFocus:!0,zIndexOffset:10,container:"body",immediateUpdates:!1,title:"",templates:{leftArrow:"&#x00AB;",rightArrow:"&#x00BB;"},showWeekDays:!0};y=n.fn.datepicker.locale_opts=["format","rtl","weekStart"];n.fn.datepicker.Constructor=u;r=n.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear",titleFormat:"MM yyyy"}};i={viewModes:[{names:["days","month"],clsName:"days",e:"changeMonth"},{names:["months","year"],clsName:"months",e:"changeYear",navStep:1},{names:["years","decade"],clsName:"years",e:"changeDecade",navStep:10},{names:["decades","century"],clsName:"decades",e:"changeCentury",navStep:100},{names:["centuries","millennium"],clsName:"centuries",e:"changeMillennium",navStep:1e3}],validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,parseFormat:function(n){if(typeof n.toValue=="function"&&typeof n.toDisplay=="function")return n;var t=n.replace(this.validParts,'\0').split('\0'),i=n.match(this.validParts);if(!t||!t.length||!i||i.length===0)throw new Error("Invalid date format.");return{separators:t,parts:i}},parseDate:function(f,e,s,h){function et(n,t){return t===!0&&(t=10),n<100&&(n+=2e3,n>(new Date).getFullYear()+t&&(n-=100)),n}function ut(){var n=this.slice(0,l[c].length),t=l[c].slice(0,n.length);return n.toLowerCase()===t.toLowerCase()}var tt,g,l,y,it,c,rt,v,ft,d,w;if(!f)return t;if(f instanceof Date)return f;if(typeof e=="string"&&(e=i.parseFormat(e)),e.toValue)return e.toValue(f,e,s);if(tt={d:"moveDay",m:"moveMonth",w:"moveWeek",y:"moveYear"},g={yesterday:"-1d",today:"+0d",tomorrow:"+1d"},f in g&&(f=g[f]),/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(f)){for(l=f.match(/([\-+]\d+)([dmwy])/gi),f=new Date,c=0;c<l.length;c++)y=l[c].match(/([\-+]\d+)([dmwy])/i),it=Number(y[1]),rt=tt[y[2].toLowerCase()],f=u.prototype[rt](f,it);return u.prototype._zero_utc_time(f)}l=f&&f.match(this.nonpunctuation)||[];var b={},nt=["yyyy","yy","M","MM","m","mm","d","dd"],a={yyyy:function(n,t){return n.setUTCFullYear(h?et(t,h):t)},m:function(n,t){if(isNaN(n))return n;for(t-=1;t<0;)t+=12;for(t%=12,n.setUTCMonth(t);n.getUTCMonth()!==t;)n.setUTCDate(n.getUTCDate()-1);return n},d:function(n,t){return n.setUTCDate(t)}},p,k;if(a.yy=a.yyyy,a.M=a.MM=a.mm=a.m,a.dd=a.d,f=o(),v=e.parts.slice(),l.length!==v.length&&(v=n(v).filter(function(t,i){return n.inArray(i,nt)!==-1}).toArray()),l.length===v.length){for(c=0,ft=v.length;c<ft;c++){if(p=parseInt(l[c],10),y=v[c],isNaN(p))switch(y){case"MM":k=n(r[s].months).filter(ut);p=n.inArray(k[0],r[s].months)+1;break;case"M":k=n(r[s].monthsShort).filter(ut);p=n.inArray(k[0],r[s].monthsShort)+1}b[y]=p}for(c=0;c<nt.length;c++)w=nt[c],w in b&&!isNaN(b[w])&&(d=new Date(f),a[w](d,b[w]),isNaN(d)||(f=d))}return f},formatDate:function(t,u,f){var e,s,o,h;if(!t)return"";if(typeof u=="string"&&(u=i.parseFormat(u)),u.toDisplay)return u.toDisplay(t,u,f);for(e={d:t.getUTCDate(),D:r[f].daysShort[t.getUTCDay()],DD:r[f].days[t.getUTCDay()],m:t.getUTCMonth()+1,M:r[f].monthsShort[t.getUTCMonth()],MM:r[f].months[t.getUTCMonth()],yy:t.getUTCFullYear().toString().substring(2),yyyy:t.getUTCFullYear()},e.dd=(e.d<10?"0":"")+e.d,e.mm=(e.m<10?"0":"")+e.m,t=[],s=n.extend([],u.separators),o=0,h=u.parts.length;o<=h;o++)s.length&&t.push(s.shift()),t.push(e[u.parts[o]]);return t.join("")},headTemplate:'<thead><tr><th colspan="7" class="datepicker-title"><\/th><\/tr><tr><th class="prev">'+e.templates.leftArrow+'<\/th><th colspan="5" class="datepicker-switch"><\/th><th class="next">'+e.templates.rightArrow+"<\/th><\/tr><\/thead>",contTemplate:'<tbody><tr><td colspan="7"><\/td><\/tr><\/tbody>',footTemplate:'<tfoot><tr><th colspan="7" class="today"><\/th><\/tr><tr><th colspan="7" class="clear"><\/th><\/tr><\/tfoot>'};i.template='<div class="datepicker"><div class="datepicker-days"><table class="table-condensed">'+i.headTemplate+"<tbody><\/tbody>"+i.footTemplate+'<\/table><\/div><div class="datepicker-months"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-years"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-decades"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+'<\/table><\/div><div class="datepicker-centuries"><table class="table-condensed">'+i.headTemplate+i.contTemplate+i.footTemplate+"<\/table><\/div><\/div>";n.fn.datepicker.DPGlobal=i;n.fn.datepicker.noConflict=function(){return n.fn.datepicker=v,this};n.fn.datepicker.version="1.9.0";n.fn.datepicker.deprecated=function(n){var t=window.console;t&&t.warn&&t.warn("DEPRECATED: "+n)};n(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(t){var i=n(this);i.data("datepicker")||(t.preventDefault(),s.call(i,"show"))});n(function(){s.call(n('[data-provide="datepicker-inline"]'))})}),function(n){n.fn.datepicker.dates.hr={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],daysMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],months:["Siječanj","Veljača","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],monthsShort:["Sij","Velj","Ožu","Tra","Svi","Lip","Srp","Kol","Ruj","Lis","Stu","Pro"],today:"Danas"}}(jQuery),function(n){typeof define=="function"&&define.amd?define(["jquery","./jquery.validate"],n):typeof module=="object"&&module.exports?module.exports=n(require("jquery")):n(jQuery)}(function(n){return function(){function t(n){return n.replace(/<.[^<>]*?>/g," ").replace(/&nbsp;|&#160;/gi," ").replace(/[.(),;:!?%#$'\"_+=\/\-“”’]*/g,"")}n.validator.addMethod("maxWords",function(n,i,r){return this.optional(i)||t(n).match(/\b\w+\b/g).length<=r},n.validator.format("Please enter {0} words or less."));n.validator.addMethod("minWords",function(n,i,r){return this.optional(i)||t(n).match(/\b\w+\b/g).length>=r},n.validator.format("Please enter at least {0} words."));n.validator.addMethod("rangeWords",function(n,i,r){var u=t(n),f=/\b\w+\b/g;return this.optional(i)||u.match(f).length>=r[0]&&u.match(f).length<=r[1]},n.validator.format("Please enter between {0} and {1} words."))}(),n.validator.addMethod("abaRoutingNumber",function(n){var r=0,i=n.split(""),u=i.length,t;if(u!==9)return!1;for(t=0;t<u;t+=3)r+=parseInt(i[t],10)*3+parseInt(i[t+1],10)*7+parseInt(i[t+2],10);return r!==0&&r%10==0?!0:!1},"Please enter a valid routing number."),n.validator.addMethod("accept",function(t,i,r){var f=typeof r=="string"?r.replace(/\s/g,""):"image/*",e=this.optional(i),u,o,s;if(e)return e;if(n(i).attr("type")==="file"&&(f=f.replace(/[\-\[\]\/\{\}\(\)\+\?\.\\\^\$\|]/g,"\\$&").replace(/,/g,"|").replace(/\/\*/g,"/.*"),i.files&&i.files.length))for(s=new RegExp(".?("+f+")$","i"),u=0;u<i.files.length;u++)if(o=i.files[u],!o.type.match(s))return!1;return!0},n.validator.format("Please enter a value with a valid mimetype.")),n.validator.addMethod("alphanumeric",function(n,t){return this.optional(t)||/^\w+$/i.test(n)},"Letters, numbers, and underscores only please"),n.validator.addMethod("bankaccountNL",function(n,t){if(this.optional(t))return!0;if(!/^[0-9]{9}|([0-9]{2} ){3}[0-9]{3}$/.test(n))return!1;for(var u=n.replace(/ /g,""),r=0,f=u.length,e,o,i=0;i<f;i++)e=f-i,o=u.substring(i,i+1),r=r+e*o;return r%11==0},"Please specify a valid bank account number"),n.validator.addMethod("bankorgiroaccountNL",function(t,i){return this.optional(i)||n.validator.methods.bankaccountNL.call(this,t,i)||n.validator.methods.giroaccountNL.call(this,t,i)},"Please specify a valid bank or giro account number"),n.validator.addMethod("bic",function(n,t){return this.optional(t)||/^([A-Z]{6}[A-Z2-9][A-NP-Z1-9])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test(n.toUpperCase())},"Please specify a valid BIC code"),n.validator.addMethod("cifES",function(n,t){"use strict";function v(n){return n%2==0}if(this.optional(t))return!0;var a=new RegExp(/^([ABCDEFGHJKLMNPQRSUVW])(\d{7})([0-9A-J])$/gi),o=n.substring(0,1),s=n.substring(1,8),f=n.substring(8,9),h=0,c=0,l=0,u,r,i,e;if(n.length!==9||!a.test(n))return!1;for(u=0;u<s.length;u++)r=parseInt(s[u],10),v(u)?(r*=2,l+=r<10?r:r-9):c+=r;return(h=c+l,i=(10-h.toString().substr(-1)).toString(),i=parseInt(i,10)>9?"0":i,e="JABCDEFGHI".substr(i,1).toString(),o.match(/[ABEH]/))?f===i:o.match(/[KPQS]/)?f===e:f===i||f===e},"Please specify a valid CIF number."),n.validator.addMethod("cnhBR",function(n){if(n=n.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g,""),n.length!==11)return!1;var r=0,e=0,o,f,u,t,i,s;if(o=n.charAt(0),new Array(12).join(o)===n)return!1;for(t=0,i=9,s=0;t<9;++t,--i)r+=+(n.charAt(t)*i);for(f=r%11,f>=10&&(f=0,e=2),r=0,t=0,i=1,s=0;t<9;++t,++i)r+=+(n.charAt(t)*i);return u=r%11,u=u>=10?0:u-e,String(f).concat(u)===n.substr(-2)},"Please specify a valid CNH number"),n.validator.addMethod("cnpjBR",function(n,t){"use strict";var f,e,o;if(this.optional(t))return!0;if((n=n.replace(/[^\d]+/g,""),n.length!==14)||n==="00000000000000"||n==="11111111111111"||n==="22222222222222"||n==="33333333333333"||n==="44444444444444"||n==="55555555555555"||n==="66666666666666"||n==="77777777777777"||n==="88888888888888"||n==="99999999999999")return!1;var i=n.length-2,s=n.substring(0,i),h=n.substring(i),r=0,u=i-7;for(f=i;f>=1;f--)r+=s.charAt(i-f)*u--,u<2&&(u=9);if(e=r%11<2?0:11-r%11,e!==parseInt(h.charAt(0),10))return!1;for(i=i+1,s=n.substring(0,i),r=0,u=i-7,o=i;o>=1;o--)r+=s.charAt(i-o)*u--,u<2&&(u=9);return(e=r%11<2?0:11-r%11,e!==parseInt(h.charAt(1),10))?!1:!0},"Please specify a CNPJ value number"),n.validator.addMethod("cpfBR",function(n,t){"use strict";if(this.optional(t))return!0;if(n=n.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g,""),n.length!==11)return!1;var r=0,f,e,u,i;if(f=parseInt(n.substring(9,10),10),e=parseInt(n.substring(10,11),10),u=function(n,t){var i=n*10%11;return(i===10||i===11)&&(i=0),i===t},n===""||n==="00000000000"||n==="11111111111"||n==="22222222222"||n==="33333333333"||n==="44444444444"||n==="55555555555"||n==="66666666666"||n==="77777777777"||n==="88888888888"||n==="99999999999")return!1;for(i=1;i<=9;i++)r=r+parseInt(n.substring(i-1,i),10)*(11-i);if(u(r,f)){for(r=0,i=1;i<=10;i++)r=r+parseInt(n.substring(i-1,i),10)*(12-i);return u(r,e)}return!1},"Please specify a valid CPF number"),n.validator.addMethod("creditcard",function(n,t){if(this.optional(t))return"dependency-mismatch";if(/[^0-9 \-]+/.test(n))return!1;var f=0,i=0,u=!1,r,e;if(n=n.replace(/\D/g,""),n.length<13||n.length>19)return!1;for(r=n.length-1;r>=0;r--)e=n.charAt(r),i=parseInt(e,10),u&&(i*=2)>9&&(i-=9),f+=i,u=!u;return f%10==0},"Please enter a valid credit card number."),n.validator.addMethod("creditcardtypes",function(n,t,i){if(/[^0-9\-]+/.test(n))return!1;n=n.replace(/\D/g,"");var r=0;return(i.mastercard&&(r|=1),i.visa&&(r|=2),i.amex&&(r|=4),i.dinersclub&&(r|=8),i.enroute&&(r|=16),i.discover&&(r|=32),i.jcb&&(r|=64),i.unknown&&(r|=128),i.all&&(r=255),r&1&&(/^(5[12345])/.test(n)||/^(2[234567])/.test(n)))?n.length===16:r&2&&/^(4)/.test(n)?n.length===16:r&4&&/^(3[47])/.test(n)?n.length===15:r&8&&/^(3(0[012345]|[68]))/.test(n)?n.length===14:r&16&&/^(2(014|149))/.test(n)?n.length===15:r&32&&/^(6011)/.test(n)?n.length===16:r&64&&/^(3)/.test(n)?n.length===16:r&64&&/^(2131|1800)/.test(n)?n.length===15:r&128?!0:!1},"Please enter a valid credit card number."),n.validator.addMethod("currency",function(n,t,i){var f=typeof i=="string",r=f?i:i[0],e=f?!0:i[1],u;return r=r.replace(/,/g,""),r=e?r+"]":r+"]?",u="^["+r+"([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$",u=new RegExp(u),this.optional(t)||u.test(n)},"Please specify a valid currency"),n.validator.addMethod("dateFA",function(n,t){return this.optional(t)||/^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test(n)},n.validator.messages.date),n.validator.addMethod("dateITA",function(n,t){var u=!1,i,f,e,o,r;return/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(n)?(i=n.split("/"),f=parseInt(i[0],10),e=parseInt(i[1],10),o=parseInt(i[2],10),r=new Date(Date.UTC(o,e-1,f,12,0,0,0)),u=r.getUTCFullYear()===o&&r.getUTCMonth()===e-1&&r.getUTCDate()===f?!0:!1):u=!1,this.optional(t)||u},n.validator.messages.date),n.validator.addMethod("dateNL",function(n,t){return this.optional(t)||/^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test(n)},n.validator.messages.date),n.validator.addMethod("extension",function(n,t,i){return i=typeof i=="string"?i.replace(/,/g,"|"):"png|jpe?g|gif",this.optional(t)||n.match(new RegExp("\\.("+i+")$","i"))},n.validator.format("Please enter a value with a valid extension.")),n.validator.addMethod("giroaccountNL",function(n,t){return this.optional(t)||/^[0-9]{1,7}$/.test(n)},"Please specify a valid giro account number"),n.validator.addMethod("greaterThan",function(t,i,r){var u=n(r);if(this.settings.onfocusout&&u.not(".validate-greaterThan-blur").length)u.addClass("validate-greaterThan-blur").on("blur.validate-greaterThan",function(){n(i).valid()});return t>u.val()},"Please enter a greater value."),n.validator.addMethod("greaterThanEqual",function(t,i,r){var u=n(r);if(this.settings.onfocusout&&u.not(".validate-greaterThanEqual-blur").length)u.addClass("validate-greaterThanEqual-blur").on("blur.validate-greaterThanEqual",function(){n(i).valid()});return t>=u.val()},"Please enter a greater value."),n.validator.addMethod("iban",function(n,t){if(this.optional(t))return!0;var i=n.replace(/ /g,"").toUpperCase(),f="",c=!0,e="",l="",a,o,s,v,h,y,p,r,u;if(i.length<5||(a=i.substring(0,2),y={AL:"\\d{8}[\\dA-Z]{16}",AD:"\\d{8}[\\dA-Z]{12}",AT:"\\d{16}",AZ:"[\\dA-Z]{4}\\d{20}",BE:"\\d{12}",BH:"[A-Z]{4}[\\dA-Z]{14}",BA:"\\d{16}",BR:"\\d{23}[A-Z][\\dA-Z]",BG:"[A-Z]{4}\\d{6}[\\dA-Z]{8}",CR:"\\d{17}",HR:"\\d{17}",CY:"\\d{8}[\\dA-Z]{16}",CZ:"\\d{20}",DK:"\\d{14}",DO:"[A-Z]{4}\\d{20}",EE:"\\d{16}",FO:"\\d{14}",FI:"\\d{14}",FR:"\\d{10}[\\dA-Z]{11}\\d{2}",GE:"[\\dA-Z]{2}\\d{16}",DE:"\\d{18}",GI:"[A-Z]{4}[\\dA-Z]{15}",GR:"\\d{7}[\\dA-Z]{16}",GL:"\\d{14}",GT:"[\\dA-Z]{4}[\\dA-Z]{20}",HU:"\\d{24}",IS:"\\d{22}",IE:"[\\dA-Z]{4}\\d{14}",IL:"\\d{19}",IT:"[A-Z]\\d{10}[\\dA-Z]{12}",KZ:"\\d{3}[\\dA-Z]{13}",KW:"[A-Z]{4}[\\dA-Z]{22}",LV:"[A-Z]{4}[\\dA-Z]{13}",LB:"\\d{4}[\\dA-Z]{20}",LI:"\\d{5}[\\dA-Z]{12}",LT:"\\d{16}",LU:"\\d{3}[\\dA-Z]{13}",MK:"\\d{3}[\\dA-Z]{10}\\d{2}",MT:"[A-Z]{4}\\d{5}[\\dA-Z]{18}",MR:"\\d{23}",MU:"[A-Z]{4}\\d{19}[A-Z]{3}",MC:"\\d{10}[\\dA-Z]{11}\\d{2}",MD:"[\\dA-Z]{2}\\d{18}",ME:"\\d{18}",NL:"[A-Z]{4}\\d{10}",NO:"\\d{11}",PK:"[\\dA-Z]{4}\\d{16}",PS:"[\\dA-Z]{4}\\d{21}",PL:"\\d{24}",PT:"\\d{21}",RO:"[A-Z]{4}[\\dA-Z]{16}",SM:"[A-Z]\\d{10}[\\dA-Z]{12}",SA:"\\d{2}[\\dA-Z]{18}",RS:"\\d{18}",SK:"\\d{20}",SI:"\\d{15}",ES:"\\d{20}",SE:"\\d{20}",CH:"\\d{5}[\\dA-Z]{12}",TN:"\\d{20}",TR:"\\d{5}[\\dA-Z]{17}",AE:"\\d{3}\\d{16}",GB:"[A-Z]{4}\\d{14}",VG:"[\\dA-Z]{4}\\d{16}"},h=y[a],typeof h!="undefined"&&(p=new RegExp("^[A-Z]{2}\\d{2}"+h+"$",""),!p.test(i))))return!1;for(o=i.substring(4,i.length)+i.substring(0,4),r=0;r<o.length;r++)s=o.charAt(r),s!=="0"&&(c=!1),c||(f+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf(s));for(u=0;u<f.length;u++)v=f.charAt(u),l=""+e+""+v,e=l%97;return e===1},"Please specify a valid IBAN"),n.validator.addMethod("integer",function(n,t){return this.optional(t)||/^-?\d+$/.test(n)},"A positive or negative non-decimal number please"),n.validator.addMethod("ipv4",function(n,t){return this.optional(t)||/^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(n)},"Please enter a valid IP v4 address."),n.validator.addMethod("ipv6",function(n,t){return this.optional(t)||/^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(n)},"Please enter a valid IP v6 address."),n.validator.addMethod("lessThan",function(t,i,r){var u=n(r);if(this.settings.onfocusout&&u.not(".validate-lessThan-blur").length)u.addClass("validate-lessThan-blur").on("blur.validate-lessThan",function(){n(i).valid()});return t<u.val()},"Please enter a lesser value."),n.validator.addMethod("lessThanEqual",function(t,i,r){var u=n(r);if(this.settings.onfocusout&&u.not(".validate-lessThanEqual-blur").length)u.addClass("validate-lessThanEqual-blur").on("blur.validate-lessThanEqual",function(){n(i).valid()});return t<=u.val()},"Please enter a lesser value."),n.validator.addMethod("lettersonly",function(n,t){return this.optional(t)||/^[a-z]+$/i.test(n)},"Letters only please"),n.validator.addMethod("letterswithbasicpunc",function(n,t){return this.optional(t)||/^[a-z\-.,()'"\s]+$/i.test(n)},"Letters or punctuation only please"),n.validator.addMethod("maxfiles",function(t,i,r){return this.optional(i)?!0:n(i).attr("type")==="file"&&i.files&&i.files.length>r?!1:!0},n.validator.format("Please select no more than {0} files.")),n.validator.addMethod("maxsize",function(t,i,r){if(this.optional(i))return!0;if(n(i).attr("type")==="file"&&i.files&&i.files.length)for(var u=0;u<i.files.length;u++)if(i.files[u].size>r)return!1;return!0},n.validator.format("File size must not exceed {0} bytes each.")),n.validator.addMethod("maxsizetotal",function(t,i,r){var f,u;if(this.optional(i))return!0;if(n(i).attr("type")==="file"&&i.files&&i.files.length)for(f=0,u=0;u<i.files.length;u++)if(f+=i.files[u].size,f>r)return!1;return!0},n.validator.format("Total size of all files must not exceed {0} bytes.")),n.validator.addMethod("mobileNL",function(n,t){return this.optional(t)||/^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)6((\s|\s?\-\s?)?[0-9]){8}$/.test(n)},"Please specify a valid mobile number"),n.validator.addMethod("mobileRU",function(n,t){var i=n.replace(/\(|\)|\s+|-/g,"");return this.optional(t)||i.length>9&&/^((\+7|7|8)+([0-9]){10})$/.test(i)},"Please specify a valid mobile number"),n.validator.addMethod("mobileUK",function(n,t){return n=n.replace(/\(|\)|\s+|-/g,""),this.optional(t)||n.length>9&&n.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/)},"Please specify a valid mobile number"),n.validator.addMethod("netmask",function(n,t){return this.optional(t)||/^(254|252|248|240|224|192|128)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0)/i.test(n)},"Please enter a valid netmask."),n.validator.addMethod("nieES",function(n,t){"use strict";if(this.optional(t))return!0;var r=new RegExp(/^[MXYZ]{1}[0-9]{7,8}[TRWAGMYFPDXBNJZSQVHLCKET]{1}$/gi),u=n.substr(n.length-1).toUpperCase(),i;return(n=n.toString().toUpperCase(),n.length>10||n.length<9||!r.test(n))?!1:(n=n.replace(/^[X]/,"0").replace(/^[Y]/,"1").replace(/^[Z]/,"2"),i=n.length===9?n.substr(0,8):n.substr(0,9),"TRWAGMYFPDXBNJZSQVHLCKET".charAt(parseInt(i,10)%23)===u)},"Please specify a valid NIE number."),n.validator.addMethod("nifES",function(n,t){"use strict";return this.optional(t)?!0:(n=n.toUpperCase(),!n.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)"))?!1:/^[0-9]{8}[A-Z]{1}$/.test(n)?"TRWAGMYFPDXBNJZSQVHLCKE".charAt(n.substring(8,0)%23)===n.charAt(8):/^[KLM]{1}/.test(n)?n[8]==="TRWAGMYFPDXBNJZSQVHLCKE".charAt(n.substring(8,1)%23):!1},"Please specify a valid NIF number."),n.validator.addMethod("nipPL",function(n){"use strict";var u,i,t,r,f;if(n=n.replace(/[^0-9]/g,""),n.length!==10)return!1;for(u=[6,5,7,2,3,4,5,6,7],i=0,t=0;t<9;t++)i+=u[t]*n[t];return r=i%11,f=r===10?0:r,f===parseInt(n[9],10)},"Please specify a valid NIP number."),n.validator.addMethod("nisBR",function(n){var r,f,e=0,i,t,u;if(n=n.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g,""),n.length!==11)return!1;for(f=parseInt(n.substring(10,11),10),r=parseInt(n.substring(0,10),10),t=2;t<12;t++)u=t,t===10&&(u=2),t===11&&(u=3),e+=r%10*u,r=parseInt(r/10,10);return i=e%11,i=i>1?11-i:0,f===i?!0:!1},"Please specify a valid NIS/PIS number"),n.validator.addMethod("notEqualTo",function(t,i,r){return this.optional(i)||!n.validator.methods.equalTo.call(this,t,i,r)},"Please enter a different value, values must not be the same."),n.validator.addMethod("nowhitespace",function(n,t){return this.optional(t)||/^\S+$/i.test(n)},"No white space please"),n.validator.addMethod("pattern",function(n,t,i){return this.optional(t)?!0:(typeof i=="string"&&(i=new RegExp("^(?:"+i+")$")),i.test(n))},"Invalid format."),n.validator.addMethod("phoneNL",function(n,t){return this.optional(t)||/^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test(n)},"Please specify a valid phone number."),n.validator.addMethod("phonePL",function(n,t){n=n.replace(/\s+/g,"");return this.optional(t)||/^(?:(?:(?:\+|00)?48)|(?:\(\+?48\)))?(?:1[2-8]|2[2-69]|3[2-49]|4[1-68]|5[0-9]|6[0-35-9]|[7-8][1-9]|9[145])\d{7}$/.test(n)},"Please specify a valid phone number"),n.validator.addMethod("phonesUK",function(n,t){return n=n.replace(/\(|\)|\s+|-/g,""),this.optional(t)||n.length>9&&n.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/)},"Please specify a valid uk phone number"),n.validator.addMethod("phoneUK",function(n,t){return n=n.replace(/\(|\)|\s+|-/g,""),this.optional(t)||n.length>9&&n.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/)},"Please specify a valid phone number"),n.validator.addMethod("phoneUS",function(n,t){return n=n.replace(/\s+/g,""),this.optional(t)||n.length>9&&n.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]\d{2}-?\d{4}$/)},"Please specify a valid phone number"),n.validator.addMethod("postalcodeBR",function(n,t){return this.optional(t)||/^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test(n)},"Informe um CEP válido."),n.validator.addMethod("postalCodeCA",function(n,t){return this.optional(t)||/^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJKLMNPRSTVWXYZ] *\d[ABCEGHJKLMNPRSTVWXYZ]\d$/i.test(n)},"Please specify a valid postal code"),n.validator.addMethod("postalcodeIT",function(n,t){return this.optional(t)||/^\d{5}$/.test(n)},"Please specify a valid postal code"),n.validator.addMethod("postalcodeNL",function(n,t){return this.optional(t)||/^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test(n)},"Please specify a valid postal code"),n.validator.addMethod("postcodeUK",function(n,t){return this.optional(t)||/^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test(n)},"Please specify a valid UK postcode"),n.validator.addMethod("require_from_group",function(t,i,r){var u=n(r[1],i.form),f=u.eq(0),e=f.data("valid_req_grp")?f.data("valid_req_grp"):n.extend({},this),o=u.filter(function(){return e.elementValue(this)}).length>=r[0];return f.data("valid_req_grp",e),n(i).data("being_validated")||(u.data("being_validated",!0),u.each(function(){e.element(this)}),u.data("being_validated",!1)),o},n.validator.format("Please fill at least {0} of these fields.")),n.validator.addMethod("skip_or_fill_minimum",function(t,i,r){var u=n(r[1],i.form),f=u.eq(0),e=f.data("valid_skip")?f.data("valid_skip"):n.extend({},this),o=u.filter(function(){return e.elementValue(this)}).length,s=o===0||o>=r[0];return f.data("valid_skip",e),n(i).data("being_validated")||(u.data("being_validated",!0),u.each(function(){e.element(this)}),u.data("being_validated",!1)),s},n.validator.format("Please either skip these fields or fill at least {0} of them.")),n.validator.addMethod("stateUS",function(n,t,i){var u=typeof i=="undefined",o=u||typeof i.caseSensitive=="undefined"?!1:i.caseSensitive,f=u||typeof i.includeTerritories=="undefined"?!1:i.includeTerritories,e=u||typeof i.includeMilitary=="undefined"?!1:i.includeMilitary,r;return r=f||e?f&&e?"^(A[AEKLPRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":f?"^(A[KLRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":"^(A[AEKLPRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$":"^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$",r=o?new RegExp(r):new RegExp(r,"i"),this.optional(t)||r.test(n)},"Please specify a valid state"),n.validator.addMethod("strippedminlength",function(t,i,r){return n(t).text().length>=r},n.validator.format("Please enter at least {0} characters")),n.validator.addMethod("time",function(n,t){return this.optional(t)||/^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test(n)},"Please enter a valid time, between 00:00 and 23:59"),n.validator.addMethod("time12h",function(n,t){return this.optional(t)||/^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test(n)},"Please enter a valid time in 12-hour am/pm format"),n.validator.addMethod("url2",function(n,t){return this.optional(t)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(n)},n.validator.messages.url),n.validator.addMethod("vinUS",function(n){if(n.length!==17)return!1;for(var e=["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"],h=[1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9],c=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],s=0,r,t,o,u,f,i=0;i<17;i++){if(o=c[i],t=n.slice(i,i+1),i===8&&(f=t),isNaN(t)){for(r=0;r<e.length;r++)if(t.toUpperCase()===e[r]){t=h[r];t*=o;isNaN(f)&&r===8&&(f=e[r]);break}}else t*=o;s+=t}return(u=s%11,u===10&&(u="X"),u===f)?!0:!1},"The specified vehicle identification number (VIN) is invalid."),n.validator.addMethod("zipcodeUS",function(n,t){return this.optional(t)||/^\d{5}(-\d{4})?$/.test(n)},"The specified US ZIP Code is invalid"),n.validator.addMethod("ziprange",function(n,t){return this.optional(t)||/^90[2-5]\d\{2\}-\d{4}$/.test(n)},"Your ZIP-code must be in the range 902xx-xxxx to 905xx-xxxx"),n}),function(){"use strict";function n(n,i){if(this.el=n,this.$el=$(n),this.s=$.extend({},t,i),this.s.dynamic&&this.s.dynamicEl!=="undefined"&&this.s.dynamicEl.constructor===Array&&!this.s.dynamicEl.length)throw"When using dynamic mode, you must also define dynamicEl as an Array.";return this.modules={},this.lGalleryOn=!1,this.lgBusy=!1,this.hideBartimeout=!1,this.isTouch="ontouchstart"in document.documentElement,this.s.slideEndAnimatoin&&(this.s.hideControlOnEnd=!1),this.$items=this.s.dynamic?this.s.dynamicEl:this.s.selector==="this"?this.$el:this.s.selector!==""?this.s.selectWithin?$(this.s.selectWithin).find(this.s.selector):this.$el.find($(this.s.selector)):this.$el.children(),this.$slide="",this.$outer="",this.init(),this}var t={mode:"lg-slide",cssEasing:"ease",easing:"linear",speed:600,height:"100%",width:"100%",addClass:"",startClass:"lg-start-zoom",backdropDuration:150,hideBarsDelay:6e3,useLeft:!1,ariaLabelledby:"",ariaDescribedby:"",closable:!0,loop:!0,escKey:!0,keyPress:!0,controls:!0,slideEndAnimatoin:!0,hideControlOnEnd:!1,mousewheel:!0,getCaptionFromTitleOrAlt:!0,appendSubHtmlTo:".lg-sub-html",subHtmlSelectorRelative:!1,preload:1,showAfterLoad:!0,selector:"",selectWithin:"",nextHtml:"",prevHtml:"",index:!1,iframeMaxWidth:"100%",download:!0,counter:!0,appendCounterTo:".lg-toolbar",swipeThreshold:50,enableSwipe:!0,enableDrag:!0,dynamic:!1,dynamicEl:[],galleryId:1};n.prototype.init=function(){var n=this,t;if(n.s.preload>n.$items.length&&(n.s.preload=n.$items.length),t=window.location.hash,t.indexOf("lg="+this.s.galleryId)>0&&(n.index=parseInt(t.split("&slide=")[1],10),$("body").addClass("lg-from-hash"),$("body").hasClass("lg-on")||(setTimeout(function(){n.build(n.index)}),$("body").addClass("lg-on"))),n.s.dynamic)n.$el.trigger("onBeforeOpen.lg"),n.index=n.s.index||0,$("body").hasClass("lg-on")||setTimeout(function(){n.build(n.index);$("body").addClass("lg-on")});else n.$items.on("click.lgcustom",function(t){try{t.preventDefault();t.preventDefault()}catch(i){t.returnValue=!1}n.$el.trigger("onBeforeOpen.lg");n.index=n.s.index||n.$items.index(this);$("body").hasClass("lg-on")||(n.build(n.index),$("body").addClass("lg-on"))})};n.prototype.build=function(n){var t=this;if(t.structure(),$.each($.fn.lightGallery.modules,function(n){t.modules[n]=new $.fn.lightGallery.modules[n](t.el)}),t.slide(n,!1,!1,!1),t.s.keyPress&&t.keyPress(),t.$items.length>1)t.arrow(),setTimeout(function(){t.enableDrag();t.enableSwipe()},50),t.s.mousewheel&&t.mousewheel();else t.$slide.on("click.lg",function(){t.$el.trigger("onSlideClick.lg")});t.counter();t.closeGallery();t.$el.trigger("onAfterOpen.lg");t.$outer.on("mousemove.lg click.lg touchstart.lg",function(){t.$outer.removeClass("lg-hide-items");clearTimeout(t.hideBartimeout);t.hideBartimeout=setTimeout(function(){t.$outer.addClass("lg-hide-items")},t.s.hideBarsDelay)});t.$outer.trigger("mousemove.lg")};n.prototype.structure=function(){var r="",u="",n=0,f="",e,t=this,o,s,i;for($("body").append('<div class="lg-backdrop"><\/div>'),$(".lg-backdrop").css("transition-duration",this.s.backdropDuration+"ms"),n=0;n<this.$items.length;n++)r+='<div class="lg-item"><\/div>';this.s.controls&&this.$items.length>1&&(u='<div class="lg-actions"><button type="button" aria-label="Previous slide" class="lg-prev lg-icon">'+this.s.prevHtml+'<\/button><button type="button" aria-label="Next slide" class="lg-next lg-icon">'+this.s.nextHtml+"<\/button><\/div>");this.s.appendSubHtmlTo===".lg-sub-html"&&(f='<div role="status" aria-live="polite" class="lg-sub-html"><\/div>');o=this.s.ariaLabelledby?'aria-labelledby="'+this.s.ariaLabelledby+'"':"";s=this.s.ariaDescribedby?'aria-describedby="'+this.s.ariaDescribedby+'"':"";e='<div tabindex="-1" aria-modal="true" '+o+" "+s+' role="dialog" class="lg-outer '+this.s.addClass+" "+this.s.startClass+'"><div class="lg" style="width:'+this.s.width+"; height:"+this.s.height+'"><div class="lg-inner">'+r+'<\/div><div class="lg-toolbar lg-group"><button type="button" aria-label="Close gallery" class="lg-close lg-icon"><\/button><\/div>'+u+f+"<\/div><\/div>";$("body").append(e);this.$outer=$(".lg-outer");this.$outer.focus();this.$slide=this.$outer.find(".lg-item");this.s.useLeft?(this.$outer.addClass("lg-use-left"),this.s.mode="lg-slide"):this.$outer.addClass("lg-use-css3");t.setTop();$(window).on("resize.lg orientationchange.lg",function(){setTimeout(function(){t.setTop()},100)});this.$slide.eq(this.index).addClass("lg-current");this.doCss()?this.$outer.addClass("lg-css3"):(this.$outer.addClass("lg-css"),this.s.speed=0);this.$outer.addClass(this.s.mode);this.s.enableDrag&&this.$items.length>1&&this.$outer.addClass("lg-grab");this.s.showAfterLoad&&this.$outer.addClass("lg-show-after-load");this.doCss()&&(i=this.$outer.find(".lg-inner"),i.css("transition-timing-function",this.s.cssEasing),i.css("transition-duration",this.s.speed+"ms"));setTimeout(function(){$(".lg-backdrop").addClass("in")});setTimeout(function(){t.$outer.addClass("lg-visible")},this.s.backdropDuration);this.s.download&&this.$outer.find(".lg-toolbar").append('<a id="lg-download" aria-label="Download" target="_blank" download class="lg-download lg-icon"><\/a>');this.prevScrollTop=$(window).scrollTop()};n.prototype.setTop=function(){if(this.s.height!=="100%"){var n=$(window).height(),i=(n-parseInt(this.s.height,10))/2,t=this.$outer.find(".lg");n>=parseInt(this.s.height,10)?t.css("top",i+"px"):t.css("top","0px")}};n.prototype.doCss=function(){var n=function(){for(var t=["transition","MozTransition","WebkitTransition","OTransition","msTransition","KhtmlTransition"],i=document.documentElement,n=0,n=0;n<t.length;n++)if(t[n]in i.style)return!0};return n()?!0:!1};n.prototype.isVideo=function(n,t){var i;if(i=this.s.dynamic?this.s.dynamicEl[t].html:this.$items.eq(t).attr("data-html"),!n)return i?{html5:!0}:(console.error("lightGallery :- data-src is not provided on slide item "+(t+1)+". Please make sure the selector property is properly configured. More info - http://sachinchoolur.github.io/lightGallery/demos/html-markup.html"),!1);var r=n.match(/\/\/(?:www\.)?youtu(?:\.be|be\.com|be-nocookie\.com)\/(?:watch\?v=|embed\/)?([a-z0-9\-\_\%]+)/i),u=n.match(/\/\/(?:www\.)?vimeo.com\/([0-9a-z\-_]+)/i),f=n.match(/\/\/(?:www\.)?dai.ly\/([0-9a-z\-_]+)/i),e=n.match(/\/\/(?:www\.)?(?:vk\.com|vkontakte\.ru)\/(?:video_ext\.php\?)(.*)/i);return r?{youtube:r}:u?{vimeo:u}:f?{dailymotion:f}:e?{vk:e}:void 0};n.prototype.counter=function(){this.s.counter&&$(this.s.appendCounterTo).append('<div id="lg-counter" role="status" aria-live="polite"><span id="lg-counter-current">'+(parseInt(this.index,10)+1)+'<\/span> / <span id="lg-counter-all">'+this.$items.length+"<\/span><\/div>")};n.prototype.addHtml=function(n){var t=null,i,r,u;this.s.dynamic?this.s.dynamicEl[n].subHtmlUrl?i=this.s.dynamicEl[n].subHtmlUrl:t=this.s.dynamicEl[n].subHtml:(r=this.$items.eq(n),r.attr("data-sub-html-url")?i=r.attr("data-sub-html-url"):(t=r.attr("data-sub-html"),this.s.getCaptionFromTitleOrAlt&&!t&&(t=r.attr("title")||r.find("img").first().attr("alt"))));i||(typeof t!="undefined"&&t!==null?(u=t.substring(0,1),(u==="."||u==="#")&&(t=this.s.subHtmlSelectorRelative&&!this.s.dynamic?r.find(t).html():$(t).html())):t="");this.s.appendSubHtmlTo===".lg-sub-html"?i?this.$outer.find(this.s.appendSubHtmlTo).load(i):this.$outer.find(this.s.appendSubHtmlTo).html(t):i?this.$slide.eq(n).load(i):this.$slide.eq(n).append(t);typeof t!="undefined"&&t!==null&&(t===""?this.$outer.find(this.s.appendSubHtmlTo).addClass("lg-empty-html"):this.$outer.find(this.s.appendSubHtmlTo).removeClass("lg-empty-html"));this.$el.trigger("onAfterAppendSubHtml.lg",[n])};n.prototype.preload=function(n){for(var t=1,i=1,t=1;t<=this.s.preload;t++){if(t>=this.$items.length-n)break;this.loadContent(n+t,!1,0)}for(i=1;i<=this.s.preload;i++){if(n-i<0)break;this.loadContent(n-i,!1,0)}};n.prototype.loadContent=function(n,t,i){var r=this,s=!1,h,e,v,c,l,y,o,w=function(n){for(var t,o,i,r=[],f=[],u=0;u<n.length;u++)t=n[u].split(" "),t[0]===""&&t.splice(0,1),f.push(t[0]),r.push(t[1]);for(o=$(window).width(),i=0;i<r.length;i++)if(parseInt(r[i],10)>o){e=f[i];break}},b,u,k,a,f,p;if(r.s.dynamic?(r.s.dynamicEl[n].poster&&(s=!0,v=r.s.dynamicEl[n].poster),y=r.s.dynamicEl[n].html,e=r.s.dynamicEl[n].src,o=r.s.dynamicEl[n].alt,r.s.dynamicEl[n].responsive&&(b=r.s.dynamicEl[n].responsive.split(","),w(b)),c=r.s.dynamicEl[n].srcset,l=r.s.dynamicEl[n].sizes):(u=r.$items.eq(n),u.attr("data-poster")&&(s=!0,v=u.attr("data-poster")),y=u.attr("data-html"),e=u.attr("href")||u.attr("data-src"),o=u.attr("title")||u.find("img").first().attr("alt"),u.attr("data-responsive")&&(k=u.attr("data-responsive").split(","),w(k)),c=u.attr("data-srcset"),l=u.attr("data-sizes")),a=!1,r.s.dynamic?r.s.dynamicEl[n].iframe&&(a=!0):r.$items.eq(n).attr("data-iframe")==="true"&&(a=!0),f=r.isVideo(e,n),!r.$slide.eq(n).hasClass("lg-loaded")){if(a?r.$slide.eq(n).prepend('<div class="lg-video-cont lg-has-iframe" style="max-width:'+r.s.iframeMaxWidth+'"><div class="lg-video"><iframe class="lg-object" frameborder="0" src="'+e+'"  allowfullscreen="true"><\/iframe><\/div><\/div>'):s?(p="",p=f&&f.youtube?"lg-has-youtube":f&&f.vimeo?"lg-has-vimeo":"lg-has-html5",r.$slide.eq(n).prepend('<div class="lg-video-cont '+p+' "><div class="lg-video"><span class="lg-video-play"><\/span><img class="lg-object lg-has-poster" src="'+v+'" /><\/div><\/div>')):f?(r.$slide.eq(n).prepend('<div class="lg-video-cont "><div class="lg-video"><\/div><\/div>'),r.$el.trigger("hasVideo.lg",[n,e,y])):(o=o?'alt="'+o+'"':"",r.$slide.eq(n).prepend('<div class="lg-img-wrap"><img class="lg-object lg-image" '+o+' src="'+e+'" /><\/div>')),r.$el.trigger("onAferAppendSlide.lg",[n]),h=r.$slide.eq(n).find(".lg-object"),l&&h.attr("sizes",l),c){h.attr("srcset",c);try{picturefill({elements:[h[0]]})}catch(d){console.warn("lightGallery :- If you want srcset to be supported for older browser please include picturefil version 2 javascript library in your document.")}}this.s.appendSubHtmlTo!==".lg-sub-html"&&r.addHtml(n);r.$slide.eq(n).addClass("lg-loaded")}r.$slide.eq(n).find(".lg-object").on("load.lg error.lg",function(){var t=0;i&&!$("body").hasClass("lg-from-hash")&&(t=i);setTimeout(function(){r.$slide.eq(n).addClass("lg-complete");r.$el.trigger("onSlideItemLoad.lg",[n,i||0])},t)});if(f&&f.html5&&!s&&r.$slide.eq(n).addClass("lg-complete"),t===!0)if(r.$slide.eq(n).hasClass("lg-complete"))r.preload(n);else r.$slide.eq(n).find(".lg-object").on("load.lg error.lg",function(){r.preload(n)})};n.prototype.slide=function(n,t,i,r){var f=this.$outer.find(".lg-current").index(),u=this,e,c,h,o,s;u.lGalleryOn&&f===n||(e=this.$slide.length,c=u.lGalleryOn?this.s.speed:0,u.lgBusy||(this.s.download&&(h=u.s.dynamic?u.s.dynamicEl[n].downloadUrl!==!1&&(u.s.dynamicEl[n].downloadUrl||u.s.dynamicEl[n].src):u.$items.eq(n).attr("data-download-url")!=="false"&&(u.$items.eq(n).attr("data-download-url")||u.$items.eq(n).attr("href")||u.$items.eq(n).attr("data-src")),h?($("#lg-download").attr("href",h),u.$outer.removeClass("lg-hide-download")):u.$outer.addClass("lg-hide-download")),this.$el.trigger("onBeforeSlide.lg",[f,n,t,i]),u.lgBusy=!0,clearTimeout(u.hideBartimeout),this.s.appendSubHtmlTo===".lg-sub-html"&&setTimeout(function(){u.addHtml(n)},c),this.arrowDisable(n),r||(n<f?r="prev":n>f&&(r="next")),t?(this.$slide.removeClass("lg-prev-slide lg-current lg-next-slide"),e>2?(o=n-1,s=n+1,n===0&&f===e-1?(s=0,o=e-1):n===e-1&&f===0&&(s=0,o=e-1)):(o=0,s=1),r==="prev"?u.$slide.eq(s).addClass("lg-next-slide"):u.$slide.eq(o).addClass("lg-prev-slide"),u.$slide.eq(n).addClass("lg-current")):(u.$outer.addClass("lg-no-trans"),this.$slide.removeClass("lg-prev-slide lg-next-slide"),r==="prev"?(this.$slide.eq(n).addClass("lg-prev-slide"),this.$slide.eq(f).addClass("lg-next-slide")):(this.$slide.eq(n).addClass("lg-next-slide"),this.$slide.eq(f).addClass("lg-prev-slide")),setTimeout(function(){u.$slide.removeClass("lg-current");u.$slide.eq(n).addClass("lg-current");u.$outer.removeClass("lg-no-trans")},50)),u.lGalleryOn?(setTimeout(function(){u.loadContent(n,!0,0)},this.s.speed+50),setTimeout(function(){u.lgBusy=!1;u.$el.trigger("onAfterSlide.lg",[f,n,t,i])},this.s.speed)):(u.loadContent(n,!0,u.s.backdropDuration),u.lgBusy=!1,u.$el.trigger("onAfterSlide.lg",[f,n,t,i])),u.lGalleryOn=!0,this.s.counter&&$("#lg-counter-current").text(n+1)),u.index=n)};n.prototype.goToNextSlide=function(n){var t=this,i=t.s.loop;n&&t.$slide.length<3&&(i=!1);t.lgBusy||(t.index+1<t.$slide.length?(t.index++,t.$el.trigger("onBeforeNextSlide.lg",[t.index]),t.slide(t.index,n,!1,"next")):i?(t.index=0,t.$el.trigger("onBeforeNextSlide.lg",[t.index]),t.slide(t.index,n,!1,"next")):t.s.slideEndAnimatoin&&!n&&(t.$outer.addClass("lg-right-end"),setTimeout(function(){t.$outer.removeClass("lg-right-end")},400)))};n.prototype.goToPrevSlide=function(n){var t=this,i=t.s.loop;n&&t.$slide.length<3&&(i=!1);t.lgBusy||(t.index>0?(t.index--,t.$el.trigger("onBeforePrevSlide.lg",[t.index,n]),t.slide(t.index,n,!1,"prev")):i?(t.index=t.$items.length-1,t.$el.trigger("onBeforePrevSlide.lg",[t.index,n]),t.slide(t.index,n,!1,"prev")):t.s.slideEndAnimatoin&&!n&&(t.$outer.addClass("lg-left-end"),setTimeout(function(){t.$outer.removeClass("lg-left-end")},400)))};n.prototype.keyPress=function(){var n=this;if(this.$items.length>1)$(window).on("keyup.lg",function(t){n.$items.length>1&&(t.keyCode===37&&(t.preventDefault(),n.goToPrevSlide()),t.keyCode===39&&(t.preventDefault(),n.goToNextSlide()))});$(window).on("keydown.lg",function(t){n.s.escKey===!0&&t.keyCode===27&&(t.preventDefault(),n.$outer.hasClass("lg-thumb-open")?n.$outer.removeClass("lg-thumb-open"):n.destroy())})};n.prototype.arrow=function(){var n=this;this.$outer.find(".lg-prev").on("click.lg",function(){n.goToPrevSlide()});this.$outer.find(".lg-next").on("click.lg",function(){n.goToNextSlide()})};n.prototype.arrowDisable=function(n){!this.s.loop&&this.s.hideControlOnEnd&&(n+1<this.$slide.length?this.$outer.find(".lg-next").removeAttr("disabled").removeClass("disabled"):this.$outer.find(".lg-next").attr("disabled","disabled").addClass("disabled"),n>0?this.$outer.find(".lg-prev").removeAttr("disabled").removeClass("disabled"):this.$outer.find(".lg-prev").attr("disabled","disabled").addClass("disabled"))};n.prototype.setTranslate=function(n,t,i){this.s.useLeft?n.css("left",t):n.css({transform:"translate3d("+t+"px, "+i+"px, 0px)"})};n.prototype.touchMove=function(n,t){var i=t-n;Math.abs(i)>15&&(this.$outer.addClass("lg-dragging"),this.setTranslate(this.$slide.eq(this.index),i,0),this.setTranslate($(".lg-prev-slide"),-this.$slide.eq(this.index).width()+i,0),this.setTranslate($(".lg-next-slide"),this.$slide.eq(this.index).width()+i,0))};n.prototype.touchEnd=function(n){var t=this;t.s.mode!=="lg-slide"&&t.$outer.addClass("lg-slide");this.$slide.not(".lg-current, .lg-prev-slide, .lg-next-slide").css("opacity","0");setTimeout(function(){t.$outer.removeClass("lg-dragging");n<0&&Math.abs(n)>t.s.swipeThreshold?t.goToNextSlide(!0):n>0&&Math.abs(n)>t.s.swipeThreshold?t.goToPrevSlide(!0):Math.abs(n)<5&&t.$el.trigger("onSlideClick.lg");t.$slide.removeAttr("style")});setTimeout(function(){t.$outer.hasClass("lg-dragging")||t.s.mode==="lg-slide"||t.$outer.removeClass("lg-slide")},t.s.speed+100)};n.prototype.enableSwipe=function(){var n=this,t=0,i=0,r=!1;if(n.s.enableSwipe&&n.doCss()){n.$slide.on("touchstart.lg",function(i){n.$outer.hasClass("lg-zoomed")||n.lgBusy||(i.preventDefault(),n.manageSwipeClass(),t=i.originalEvent.targetTouches[0].pageX)});n.$slide.on("touchmove.lg",function(u){n.$outer.hasClass("lg-zoomed")||(u.preventDefault(),i=u.originalEvent.targetTouches[0].pageX,n.touchMove(t,i),r=!0)});n.$slide.on("touchend.lg",function(){n.$outer.hasClass("lg-zoomed")||(r?(r=!1,n.touchEnd(i-t)):n.$el.trigger("onSlideClick.lg"))})}};n.prototype.enableDrag=function(){var n=this,i=0,r=0,t=!1,u=!1;if(n.s.enableDrag&&n.doCss()){n.$slide.on("mousedown.lg",function(r){n.$outer.hasClass("lg-zoomed")||n.lgBusy||$(r.target).text().trim()||(r.preventDefault(),n.manageSwipeClass(),i=r.pageX,t=!0,n.$outer.scrollLeft+=1,n.$outer.scrollLeft-=1,n.$outer.removeClass("lg-grab").addClass("lg-grabbing"),n.$el.trigger("onDragstart.lg"))});$(window).on("mousemove.lg",function(f){t&&(u=!0,r=f.pageX,n.touchMove(i,r),n.$el.trigger("onDragmove.lg"))});$(window).on("mouseup.lg",function(f){u?(u=!1,n.touchEnd(r-i),n.$el.trigger("onDragend.lg")):($(f.target).hasClass("lg-object")||$(f.target).hasClass("lg-video-play"))&&n.$el.trigger("onSlideClick.lg");t&&(t=!1,n.$outer.removeClass("lg-grabbing").addClass("lg-grab"))})}};n.prototype.manageSwipeClass=function(){var t=this.index+1,n=this.index-1;this.s.loop&&this.$slide.length>2&&(this.index===0?n=this.$slide.length-1:this.index===this.$slide.length-1&&(t=0));this.$slide.removeClass("lg-next-slide lg-prev-slide");n>-1&&this.$slide.eq(n).addClass("lg-prev-slide");this.$slide.eq(t).addClass("lg-next-slide")};n.prototype.mousewheel=function(){var n=this;n.$outer.on("mousewheel.lg",function(t){t.deltaY&&(t.deltaY>0?n.goToPrevSlide():n.goToNextSlide(),t.preventDefault())})};n.prototype.closeGallery=function(){var n=this,t=!1;this.$outer.find(".lg-close").on("click.lg",function(){n.destroy()});if(n.s.closable){n.$outer.on("mousedown.lg",function(n){t=$(n.target).is(".lg-outer")||$(n.target).is(".lg-item ")||$(n.target).is(".lg-img-wrap")?!0:!1});n.$outer.on("mousemove.lg",function(){t=!1});n.$outer.on("mouseup.lg",function(i){($(i.target).is(".lg-outer")||$(i.target).is(".lg-item ")||$(i.target).is(".lg-img-wrap")&&t)&&(n.$outer.hasClass("lg-dragging")||n.destroy())})}};n.prototype.destroy=function(n){var t=this;n||(t.$el.trigger("onBeforeClose.lg"),$(window).scrollTop(t.prevScrollTop));n&&(t.s.dynamic||this.$items.off("click.lg click.lgcustom"),$.removeData(t.el,"lightGallery"));this.$el.off(".lg.tm");$.each($.fn.lightGallery.modules,function(n){t.modules[n]&&t.modules[n].destroy()});this.lGalleryOn=!1;clearTimeout(t.hideBartimeout);this.hideBartimeout=!1;$(window).off(".lg");$("body").removeClass("lg-on lg-from-hash");t.$outer&&t.$outer.removeClass("lg-visible");$(".lg-backdrop").removeClass("in");setTimeout(function(){t.$outer&&t.$outer.remove();$(".lg-backdrop").remove();n||t.$el.trigger("onCloseAfter.lg");t.$el.focus()},t.s.backdropDuration+50)};$.fn.lightGallery=function(t){return this.each(function(){if($.data(this,"lightGallery"))try{$(this).data("lightGallery").init()}catch(i){console.error("lightGallery has not initiated properly")}else $.data(this,"lightGallery",new n(this,t))})};$.fn.lightGallery.modules={}}(),function(){for(var n,u=function(){},t=["assert","clear","count","debug","dir","dirxml","error","exception","group","groupCollapsed","groupEnd","info","log","markTimeline","profile","profileEnd","table","time","timeEnd","timeline","timelineEnd","timeStamp","trace","warn"],i=t.length,r=window.console=window.console||{};i--;)n=t[i],r[n]||(r[n]=u)}();!function(n,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t(require,exports,module):n.CountUp=t()}(this,function(){return function(n,t,i,r,u,f){for(var e,h,c=0,s=["webkit","moz","ms","o"],o=0;o<s.length&&!window.requestAnimationFrame;++o)window.requestAnimationFrame=window[s[o]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[s[o]+"CancelAnimationFrame"]||window[s[o]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(n){var t=(new Date).getTime(),i=Math.max(0,16-(t-c)),r=window.setTimeout(function(){n(t+i)},i);return c=t+i,r});window.cancelAnimationFrame||(window.cancelAnimationFrame=function(n){clearTimeout(n)});e=this;e.options={useEasing:!0,useGrouping:!0,separator:" ",decimal:".",easingFn:null,formattingFn:null};for(h in f)f.hasOwnProperty(h)&&(e.options[h]=f[h]);""===e.options.separator&&(e.options.useGrouping=!1);e.options.prefix||(e.options.prefix="");e.options.suffix||(e.options.suffix="");e.d="string"==typeof n?document.getElementById(n):n;e.startVal=Number(t);e.endVal=Number(i);e.countDown=e.startVal>e.endVal;e.frameVal=e.startVal;e.decimals=Math.max(0,r||0);e.dec=Math.pow(10,e.decimals);e.duration=1e3*Number(u)||2e3;e.formatNumber=function(n){n=n.toFixed(e.decimals);n+="";var i,t,u,r;if(i=n.split("."),t=i[0],u=i.length>1?e.options.decimal+i[1]:"",r=/(\d+)(\d{3})/,e.options.useGrouping)for(;r.test(t);)t=t.replace(r,"$1"+e.options.separator+"$2");return e.options.prefix+t+u+e.options.suffix};e.easeOutExpo=function(n,t,i,r){return i*(-Math.pow(2,-10*n/r)+1)*1024/1023+t};e.easingFn=e.options.easingFn?e.options.easingFn:e.easeOutExpo;e.formattingFn=e.options.formattingFn?e.options.formattingFn:e.formatNumber;e.version=function(){return"1.7.1"};e.printValue=function(n){var t=e.formattingFn(n);"INPUT"===e.d.tagName?this.d.value=t:"text"===e.d.tagName||"tspan"===e.d.tagName?this.d.textContent=t:this.d.innerHTML=t};e.count=function(n){e.startTime||(e.startTime=n);e.timestamp=n;var t=n-e.startTime;e.remaining=e.duration-t;e.frameVal=e.options.useEasing?e.countDown?e.startVal-e.easingFn(t,0,e.startVal-e.endVal,e.duration):e.easingFn(t,e.startVal,e.endVal-e.startVal,e.duration):e.countDown?e.startVal-(e.startVal-e.endVal)*(t/e.duration):e.startVal+(e.endVal-e.startVal)*(t/e.duration);e.frameVal=e.countDown?e.frameVal<e.endVal?e.endVal:e.frameVal:e.frameVal>e.endVal?e.endVal:e.frameVal;e.frameVal=Math.round(e.frameVal*e.dec)/e.dec;e.printValue(e.frameVal);t<e.duration?e.rAF=requestAnimationFrame(e.count):e.callback&&e.callback()};e.start=function(n){return e.callback=n,e.rAF=requestAnimationFrame(e.count),!1};e.pauseResume=function(){e.paused?(e.paused=!1,delete e.startTime,e.duration=e.remaining,e.startVal=e.frameVal,requestAnimationFrame(e.count)):(e.paused=!0,cancelAnimationFrame(e.rAF))};e.reset=function(){e.paused=!1;delete e.startTime;e.startVal=t;cancelAnimationFrame(e.rAF);e.printValue(e.startVal)};e.update=function(n){cancelAnimationFrame(e.rAF);e.paused=!1;delete e.startTime;e.startVal=e.frameVal;e.endVal=Number(n);e.countDown=e.startVal>e.endVal;e.rAF=requestAnimationFrame(e.count)};e.printValue(e.startVal)}});!function(n){"function"==typeof define&&define.amd?define(["jquery"],n):"object"==typeof exports?module.exports=n(require("jquery")):n(jQuery)}(function(n){function s(){var t,i,u={height:e.innerHeight,width:e.innerWidth};return u.height||(t=f.compatMode,(t||!n.support.boxModel)&&(i="CSS1Compat"===t?r:f.body,u={height:i.clientHeight,width:i.clientWidth})),u}function h(){return{top:e.pageYOffset||r.scrollTop||f.body.scrollTop,left:e.pageXOffset||r.scrollLeft||f.body.scrollLeft}}function c(){var e,c;if(i.length)for(e=0,c=n.map(i,function(n){var t=n.data.selector,i=n.$element;return t?i.find(t):i}),u=u||s(),t=t||h();e<i.length;e++)if(n.contains(r,c[e][0])){var f=n(c[e]),l={height:f[0].offsetHeight,width:f[0].offsetWidth},o=f.offset(),a=f.data("inview");if(!t||!u)return;o.top+l.height>t.top&&o.top<t.top+u.height&&o.left+l.width>t.left&&o.left<t.left+u.width?a||f.data("inview",!0).trigger("inview",[!0]):a&&f.data("inview",!1).trigger("inview",[!1])}}var u,t,o,i=[],f=document,e=window,r=f.documentElement;n.event.special.inview={add:function(t){i.push({data:t,$element:n(this),element:this});!o&&i.length&&(o=setInterval(c,250))},remove:function(n){for(var r,t=0;t<i.length;t++)if(r=i[t],r.element===this&&r.data.guid===n.guid){i.splice(t,1);break}i.length||(clearInterval(o),o=null)}};n(e).on("scroll resize scrollstop",function(){u=t=null});!r.addEventListener&&r.attachEvent&&r.attachEvent("onfocusin",function(){t=null})});var mySearchLsKey="hzmo_mySearch-"+default_lastCacheTime,ajaxResponse_GetAllActiveWithSynonymsToViewModel=null,docLocation=document.location,path="",synonymTermVMCollection=[];if(docLocation!==undefined&&docLocation!==null){var protocol=docLocation.protocol,host=docLocation.host,href=docLocation.href,origin=docLocation.origin,pathName=docLocation.pathname.replace(/\//,"");href.indexOf("localhost:")>-1?path=origin+"/":docLocation.host.indexOf(".globaldizajn.hr")>-1?(pathName=pathName.substring(0,pathName.indexOf("/")+1),path=protocol+"//"+host+"/"+pathName):path=protocol+"//"+host+"/"+pathName;path!==""&&path.indexOf("//")>-1&&(path=path.substring(0,path.length-1))}cookieHelper.getCookie("gd-cookieOptions")!==undefined&&cookieHelper.getCookie("gd-cookieOptions")!==null&&cookieHelper.getCookie("gd-cookieOptions")!==""?(ajaxResponse_GetAllActiveWithSynonymsToViewModel=localStorage.getItem(mySearchLsKey),ajaxResponse_GetAllActiveWithSynonymsToViewModel===undefined||ajaxResponse_GetAllActiveWithSynonymsToViewModel===null?ajaxCall_GetAllActiveWithSynonymsToViewModel().done(function(n){for(key in localStorage)key!==undefined&&key!==null&&key!==""&&key.indexOf("hzmo_mySearch-")>-1&&localStorage.removeItem(key);localStorage.setItem(mySearchLsKey,JSON.stringify(n));getAllActiveWithSynonymsToViewModel_Response(n)}):getAllActiveWithSynonymsToViewModel_Response(JSON.parse(ajaxResponse_GetAllActiveWithSynonymsToViewModel))):ajaxCall_GetAllActiveWithSynonymsToViewModel().done(function(n){getAllActiveWithSynonymsToViewModel_Response(n)});$(document).ready(function(){$("input[name='pojam']").blur(function(){var f=$(this),h=f.val().toLowerCase(),i=null,e="",n=null,r=null,t,o,u,s;if(synonymTermVMCollection===undefined||synonymTermVMCollection===null||synonymTermVMCollection===[])return!1;for(t=0,o=synonymTermVMCollection.length;t<o;t++){if(i=synonymTermVMCollection[t],n=synonymTermVMCollection[t].SynonymWords,i===undefined||i===null||n==null||n==undefined)return!1;for(u=0,s=n.length;u<s;u++)if(e=n[u],e.toLowerCase()===h){r=i.SearchWord;break}if(r!=null)break}if(r===null)return!1;f.val(r)})}),function(n,t){typeof exports=="object"&&typeof module!="undefined"?module.exports=t():typeof define=="function"&&define.amd?define(t):n.mapboxgl=t()}(this,function(){"use strict";function r(r,u){if(n)if(t){var e="var sharedChunk = {}; ("+n+")(sharedChunk); ("+t+")(sharedChunk);",f={};n(f);i=u(f);i.workerUrl=window.URL.createObjectURL(new Blob([e],{type:"text/javascript"}))}else t=u;else n=u}var n,t,i;return r(["exports"],function(n){function iv(n,t){return n(t={exports:{}},t.exports),t.exports}function hu(n,t,i,r){this.cx=3*n;this.bx=3*(i-n)-this.cx;this.ax=1-this.cx-this.bx;this.cy=3*t;this.by=3*(r-t)-this.cy;this.ay=1-this.cy-this.by;this.p1x=n;this.p1y=r;this.p2x=i;this.p2y=r}function cu(n,t){this.x=n;this.y=t}function te(n,t){var i,r;if(Array.isArray(n)){if(!Array.isArray(t)||n.length!==t.length)return!1;for(i=0;i<n.length;i++)if(!te(n[i],t[i]))return!1;return!0}if("object"==typeof n&&null!==n&&null!==t){if("object"!=typeof t||Object.keys(n).length!==Object.keys(t).length)return!1;for(r in n)if(!te(n[r],t[r]))return!1;return!0}return n===t}function uv(n,t,i,r){var u=new rv(n,t,i,r);return function(n){return u.solve(n)}}function nr(n,t,i){return Math.min(i,Math.max(t,n))}function si(n){for(var i,u,f,e,r=[],t=arguments.length-1;t-->0;)r[t]=arguments[t+1];for(i=0,u=r;i<u.length;i+=1){f=u[i];for(e in f)n[e]=f[e]}return n}function ov(){return ev++}function sv(n,t){n.forEach(function(n){t[n]&&(t[n]=t[n].bind(t))})}function eh(n,t){return-1!==n.indexOf(t,n.length-t.length)}function hv(n,t,i){var u={};for(var r in n)u[r]=t.call(i||this,n[r],r,n);return u}function cv(n,t,i){var u={};for(var r in n)t.call(i||this,n[r],r,n)&&(u[r]=n[r]);return u}function tr(n){return Array.isArray(n)?n.map(tr):"object"==typeof n&&n?hv(n,tr):n}function co(n){oh[n]||("undefined"!=typeof console&&console.warn(n),oh[n]=!0)}function lo(n,t,i){return(i.y-n.y)*(t.x-n.x)>(t.y-n.y)*(i.x-n.x)}function uk(n){for(var r=0,t=0,u=n.length,f=u-1,i=void 0,e=void 0;t<u;f=t++)i=n[t],r+=((e=n[f]).x-i.x)*(i.y+e.y);return r}function ch(n){var t=new self.XMLHttpRequest;for(var i in t.open(n.method||"GET",n.url,!0),n.headers)t.setRequestHeader(i,n.headers[i]);return t.withCredentials="include"===n.credentials,t}function lv(n,t,i){i[n]&&-1!==i[n].indexOf(t)||(i[n]=i[n]||[],i[n].push(t))}function ah(n,t,i){if(i&&i[n]){var r=i[n].indexOf(t);-1!==r&&i[n].splice(r,1)}}function av(n){var i=n.key,t=n.value;return t?[new u(i,t,"constants have been deprecated as of v8")]:[]}function au(n){for(var i,u,f,e,r=[],t=arguments.length-1;t-->0;)r[t]=arguments[t+1];for(i=0,u=r;i<u.length;i+=1){f=u[i];for(e in f)n[e]=f[e]}return n}function b(n){return n instanceof Number||n instanceof String||n instanceof Boolean?n.valueOf():n}function re(n){return Array.isArray(n)?n.map(re):b(n)}function ni(n,t){return{kind:"array",itemType:n,N:t}}function g(n){if("array"===n.kind){var t=g(n.itemType);return"number"==typeof n.N?"array<"+t+", "+n.N+">":"value"===n.itemType.kind?"array":"array<"+t+">"}return n.kind}function pu(n,t){if("error"===t.kind)return null;if("array"===n.kind){if("array"===t.kind&&!pu(n.itemType,t.itemType)&&("number"!=typeof n.N||n.N===t.N))return null}else{if(n.kind===t.kind)return null;if("value"===n.kind)for(var i=0,r=pv;i<r.length;i+=1)if(!pu(r[i],t))return null}return"Expected "+g(n)+" but found "+g(t)+" instead."}function wv(n,t,i,r){return"number"==typeof n&&n>=0&&n<=255&&"number"==typeof t&&t>=0&&t<=255&&"number"==typeof i&&i>=0&&i<=255?void 0===r||"number"==typeof r&&r>=0&&r<=1?null:"Invalid rgba value ["+[n,t,i,r].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+("number"==typeof r?[n,t,i,r]:[n,t,i]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function st(n){var u;if(null===n)return vv;if("string"==typeof n)return h;if("boolean"==typeof n)return s;if("number"==typeof n)return r;if(n instanceof l)return nu;if(n instanceof wu)return vo;if(Array.isArray(n)){for(var t,e=n.length,i=0,f=n;i<f.length;i+=1){if(u=st(f[i]),t){if(t===u)continue;t=c;break}t=u}return ni(t||c,e)}return yu}function bh(n){if(n instanceof nt&&("get"===n.name&&1===n.args.length||"feature-state"===n.name||"has"===n.name&&1===n.args.length||"properties"===n.name||"geometry-type"===n.name||"id"===n.name||/^filter-/.test(n.name)))return!1;var t=!0;return n.eachChild(function(n){t&&!bh(n)&&(t=!1)}),t}function yo(n){if(n instanceof nt&&"feature-state"===n.name)return!1;var t=!0;return n.eachChild(function(n){t&&!yo(n)&&(t=!1)}),t}function kh(n,t){if(n instanceof nt&&t.indexOf(n.name)>=0)return!1;var i=!0;return n.eachChild(function(n){i&&!kh(n,t)&&(i=!1)}),i}function gv(n,t){for(var r,e,u=0,f=n.length-1,i=0;u<=f;){if(r=n[i=Math.floor((u+f)/2)],e=n[i+1],t===r||t>r&&t<e)return i;if(r<t)u=i+1;else{if(!(r>t))throw new rt("Input is not a number.");f=i-1}}return Math.max(i-1,0)}function ct(n,t,i){return n*(1-i)+t*i}function dh(n,t,i,r){var u=r-i,f=n-i;return 0===u?0:1===t?f/u:(Math.pow(t,f)-1)/(Math.pow(t,u)-1)}function ny(n,t){return"=="===n||"!="===n?"boolean"===t.kind||"string"===t.kind||"number"===t.kind||"null"===t.kind||"value"===t.kind:"string"===t.kind||"number"===t.kind||"value"===t.kind}function ty(n,t,i,r){return 0===r.compare(t,i)}function bu(n,t,i){var r="=="!==n&&"!="!==n;return function(){function u(n,t,i){this.type=s;this.lhs=n;this.rhs=t;this.collator=i;this.hasUntypedArgument="value"===n.type.kind||"value"===t.type.kind}return u.parse=function(n,t){var e,i,f,o;if(3!==n.length&&4!==n.length)return t.error("Expected two or three arguments.");if(e=n[0],i=t.parse(n[1],1,c),!i)return null;if(!ny(e,i.type))return t.concat(1).error('"'+e+"\" comparisons are not supported for type '"+g(i.type)+"'.");if(f=t.parse(n[2],2,c),!f)return null;if(!ny(e,f.type))return t.concat(2).error('"'+e+"\" comparisons are not supported for type '"+g(f.type)+"'.");if(i.type.kind!==f.type.kind&&"value"!==i.type.kind&&"value"!==f.type.kind)return t.error("Cannot compare types '"+g(i.type)+"' and '"+g(f.type)+"'.");if(r&&("value"===i.type.kind&&"value"!==f.type.kind?i=new ht(f.type,[i]):"value"!==i.type.kind&&"value"===f.type.kind&&(f=new ht(i.type,[f]))),o=null,4===n.length){if("string"!==i.type.kind&&"string"!==f.type.kind&&"value"!==i.type.kind&&"value"!==f.type.kind)return t.error("Cannot use collator to compare non-string types.");if(!(o=t.parse(n[3],3,vo)))return null}return new u(i,f,o)},u.prototype.evaluate=function(u){var f=this.lhs.evaluate(u),e=this.rhs.evaluate(u),o,s,h,c;if(r&&this.hasUntypedArgument&&(o=st(f),s=st(e),o.kind!==s.kind||"string"!==o.kind&&"number"!==o.kind))throw new rt('Expected arguments for "'+n+'" to be (string, string) or (number, number), but found ('+o.kind+", "+s.kind+") instead.");return this.collator&&!r&&this.hasUntypedArgument&&(h=st(f),c=st(e),"string"!==h.kind||"string"!==c.kind)?t(u,f,e):this.collator?i(u,f,e,this.collator.evaluate(u)):t(u,f,e)},u.prototype.eachChild=function(n){n(this.lhs);n(this.rhs);this.collator&&n(this.collator)},u.prototype.possibleOutputs=function(){return[!0,!1]},u.prototype.serialize=function(){var t=[n];return this.eachChild(function(n){t.push(n.serialize())}),t},u}()}function iy(n,t){var r=t[0],u=t[1],f=t[2],o=t[3],i,e;if(r=r.evaluate(n),u=u.evaluate(n),f=f.evaluate(n),i=o?o.evaluate(n):1,e=wv(r,u,f,i),e)throw new rt(e);return new l(r/255*i,u/255*i,f/255*i,i)}function ry(n,t){return n in t}function gh(n,t){var i=t[n];return void 0===i?null:i}function ru(n){return{type:n}}function uy(n){return{result:"success",value:n}}function ku(n){return{result:"error",value:n}}function du(n){return"data-driven"===n["property-type"]||"cross-faded-data-driven"===n["property-type"]}function fy(n){return!!n.expression&&n.expression.parameters.indexOf("zoom")>-1}function nc(n){return!!n.expression&&n.expression.interpolated}function tc(n){return n>yk?Math.pow(n,1/3):n/cy+hy}function ic(n){return n>gu?n*n*n:cy*(n-hy)}function rc(n){return 255*(n<=.0031308?12.92*n:1.055*Math.pow(n,1/2.4)-.055)}function uc(n){return(n/=255)<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function ly(n){var t=uc(n.r),i=uc(n.g),r=uc(n.b),f=tc((.4124564*t+.3575761*i+.1804375*r)/ey),u=tc((.2126729*t+.7151522*i+.072175*r)/oy);return{l:116*u-16,a:500*(f-u),b:200*(u-tc((.0193339*t+.119192*i+.9503041*r)/sy)),alpha:n.a}}function ay(n){var t=(n.l+16)/116,i=isNaN(n.a)?t:t+n.a/500,r=isNaN(n.b)?t:t-n.b/200;return t=oy*ic(t),i=ey*ic(i),r=sy*ic(r),new l(rc(3.2404542*i-1.5371385*t-.4985314*r),rc(-.969266*i+1.8760108*t+.041556*r),rc(.0556434*i-.2040259*t+1.0572252*r),n.alpha)}function a(n){return n instanceof Number?"number":n instanceof String?"string":n instanceof Boolean?"boolean":Array.isArray(n)?"array":null===n?"null":typeof n}function po(n){return"object"==typeof n&&null!==n&&!Array.isArray(n)}function dk(n){return n}function fe(n,t,i){return void 0!==n?n:void 0!==t?t:void 0!==i?i:void 0}function gk(n,t,i,r,u){return fe(typeof i===u?r[i]:void 0,n.default,t.default)}function nd(n,t,i){var r,u;return"number"!==a(i)?fe(n.default,t.default):(r=n.stops.length,1===r)?n.stops[0][1]:i<=n.stops[0][0]?n.stops[0][1]:i>=n.stops[r-1][0]?n.stops[r-1][1]:(u=py(n.stops,i),n.stops[u][1])}function yy(n,t,i){var c=void 0!==n.base?n.base:1,u,r;if("number"!==a(i))return fe(n.default,t.default);if((u=n.stops.length,1===u)||i<=n.stops[0][0])return n.stops[0][1];if(i>=n.stops[u-1][0])return n.stops[u-1][1];var f=py(n.stops,i),e=function(n,t,i,r){var u=r-i,f=n-i;return 0===u?0:1===t?f/u:(Math.pow(t,f)-1)/(Math.pow(t,u)-1)}(i,c,n.stops[f][0],n.stops[f+1][0]),o=n.stops[f][1],h=n.stops[f+1][1],s=ue[t.type]||dk;return n.colorSpace&&"rgb"!==n.colorSpace&&(r=vy[n.colorSpace],s=function(n,t){return r.reverse(r.interpolate(r.forward(n),r.forward(t),e))}),"function"==typeof o.evaluate?{evaluate:function(){for(var i,r,n=[],t=arguments.length;t--;)n[t]=arguments[t];return i=o.evaluate.apply(void 0,n),r=h.evaluate.apply(void 0,n),void 0!==i&&void 0!==r?s(i,r,e):void 0}}:s(o,h,e)}function td(n,t,i){return"color"===t.type?i=l.parse(i):a(i)===t.type||"enum"===t.type&&t.values[i]||(i=void 0),fe(i,n.default,t.default)}function py(n,t){for(var r,e,u=0,f=n.length-1,i=0;u<=f;){if(r=n[i=Math.floor((u+f)/2)][0],e=n[i+1][0],t===r||t>r&&t<e)return i;r<t?u=i+1:r>t&&(f=i-1)}return Math.max(i-1,0)}function fc(n){return Array.isArray(n)&&n.length>0&&"string"==typeof n[0]&&n[0]in iu}function ec(n,t){var i=new fr(iu,[],function(n){var t={color:nu,string:h,number:r,"enum":h,boolean:s};return"array"===n.type?ni(t[n.value]||c,n.length):t[n.type]||null}(t)),u=i.parse(n);return u?uy(new ee(u,t)):ku(i.errors)}function wy(n,t){var r,u,f,i;return"error"===(n=ec(n,t)).result?n:(r=n.value.expression,u=bh(r),!u&&!du(t))?ku([new gt("","data expressions not supported")]):(f=kh(r,["zoom"]),!f&&!fy(t))?ku([new gt("","zoom expressions not supported")]):(i=function n(t){var i=null,r,u,f;if(t instanceof sr)i=n(t.result);else if(t instanceof or){for(r=0,u=t.args;r<u.length;r+=1)if(f=u[r],i=n(f))break}else(t instanceof er||t instanceof ut)&&t.input instanceof nt&&"zoom"===t.input.name&&(i=t);return i instanceof gt?i:(t.eachChild(function(t){var r=n(t);r instanceof gt?i=r:!i&&r?i=new gt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):i&&r&&i!==r&&(i=new gt("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),i)}(r),i||f?i instanceof gt?ku([i]):i instanceof ut&&!nc(t)?ku([new gt("",'"interpolate" expressions cannot be used with this property')]):uy(i?new nf(u?"camera":"composite",n.value,i):new oe(u?"constant":"source",n.value)):ku([new gt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]))}function oc(n,t){var i,r;if(po(n))return new tf(n,t);if(fc(n)){if(i=wy(n,t),"error"===i.result)throw new Error(i.value.map(function(n){return n.key+": "+n.message}).join(", "));return i.value}return r=n,"string"==typeof n&&"color"===t.type&&(r=l.parse(n)),{kind:"constant",evaluate:function(){return r}}}function ii(n){var f=n.key,t=n.value,i=n.valueSpec||{},o=n.objectElementValidators||{},v=n.style,y=n.styleSpec,s=[],l=a(t),r,e;if("object"!==l)return[new u(f,t,"object expected, "+l+" found")];for(r in t){var c=r.split(".")[0],p=i[c]||i["*"],h=void 0;if(o[c])h=o[c];else if(i[c])h=ri;else if(o["*"])h=o["*"];else{if(!i["*"]){s.push(new u(f,t[r],'unknown property "'+r+'"'));continue}h=ri}s=s.concat(h({key:(f?f+".":f)+r,value:t[r],valueSpec:p,style:v,styleSpec:y,object:t,objectKey:r},t))}for(e in i)o[e]||i[e].required&&void 0===i[e].default&&void 0===t[e]&&s.push(new u(f,t,'missing required property "'+e+'"'));return s}function by(n){var t=n.value,i=n.valueSpec,h=n.style,s=n.styleSpec,f=n.key,c=n.arrayElementValidator||ri,e,o,r;if("array"!==a(t))return[new u(f,t,"array expected, "+a(t)+" found")];if(i.length&&t.length!==i.length)return[new u(f,t,"array length "+i.length+" expected, length "+t.length+" found")];if(i["min-length"]&&t.length<i["min-length"])return[new u(f,t,"array length at least "+i["min-length"]+" expected, length "+t.length+" found")];for(e={type:i.value},s.$version<7&&(e.function=i.function),"object"===a(i.value)&&(e=i.value),o=[],r=0;r<t.length;r++)o=o.concat(c({array:t,arrayIndex:r,value:t[r],valueSpec:e,style:h,styleSpec:s,key:f+"["+r+"]"}));return o}function ky(n){var r=n.key,t=n.value,i=n.valueSpec,f=a(t);return"number"!==f?[new u(r,t,"number expected, "+f+" found")]:"minimum"in i&&t<i.minimum?[new u(r,t,t+" is less than the minimum value "+i.minimum)]:"maximum"in i&&t>i.maximum?[new u(r,t,t+" is greater than the maximum value "+i.maximum)]:[]}function dy(n){function y(n){var r=[],t=n.value,i=n.key;if("array"!==a(t))return[new u(i,t,"array expected, "+a(t)+" found")];if(2!==t.length)return[new u(i,t,"array length 2 expected, length "+t.length+" found")];if(c){if("object"!==a(t[0]))return[new u(i,t,"object expected, "+a(t[0])+" found")];if(void 0===t[0].zoom)return[new u(i,t,"object stop key must have zoom")];if(void 0===t[0].value)return[new u(i,t,"object stop key must have value")];if(e&&e>b(t[0].zoom))return[new u(i,t[0].zoom,"stop zoom values must appear in ascending order")];b(t[0].zoom)!==e&&(e=b(t[0].zoom),f=void 0,s={});r=r.concat(ii({key:i+"[0]",value:t[0],valueSpec:{zoom:{}},style:n.style,styleSpec:n.styleSpec,objectElementValidators:{zoom:ky,value:l}}))}else r=r.concat(l({key:i+"[0]",value:t[0],valueSpec:{},style:n.style,styleSpec:n.styleSpec},t));return r.concat(ri({key:i+"[1]",value:t[1],valueSpec:o,style:n.style,styleSpec:n.styleSpec}))}function l(n,i){var e=a(n.value),h=b(n.value),c=null!==n.value?n.value:i,l;if(r){if(e!==r)return[new u(n.key,c,e+" stop domain type must match previous stop domain type "+r)]}else r=e;return"number"!==e&&"string"!==e&&"boolean"!==e?[new u(n.key,c,"stop domain value must be a number, string, or boolean")]:"number"!==e&&"categorical"!==t?(l="number expected, "+e+" found",du(o)&&void 0===t&&(l+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new u(n.key,c,l)]):"categorical"!==t||"number"!==e||isFinite(h)&&Math.floor(h)===h?"categorical"!==t&&"number"===e&&void 0!==f&&h<f?[new u(n.key,c,"stop domain values must appear in ascending order")]:(f=h,"categorical"===t&&h in s?[new u(n.key,c,"stop domain values must be unique")]:(s[h]=!0,[])):[new u(n.key,c,"integer expected, found "+h)]}var r,f,e,o=n.valueSpec,t=b(n.value.type),s={},h="categorical"!==t&&void 0===n.value.property,v=!h,c="array"===a(n.value.stops)&&"array"===a(n.value.stops[0])&&"object"===a(n.value.stops[0][0]),i=ii({key:n.key,value:n.value,valueSpec:n.styleSpec.function,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{stops:function(n){if("identity"===t)return[new u(n.key,n.value,'identity function may not have a "stops" property')];var i=[],r=n.value;return i=i.concat(by({key:n.key,value:r,valueSpec:n.valueSpec,style:n.style,styleSpec:n.styleSpec,arrayElementValidator:y})),"array"===a(r)&&0===r.length&&i.push(new u(n.key,r,"array must have at least one stop")),i},"default":function(n){return ri({key:n.key,value:n.value,valueSpec:o,style:n.style,styleSpec:n.styleSpec})}}});return"identity"===t&&h&&i.push(new u(n.key,n.value,'missing required property "property"')),"identity"===t||n.value.stops||i.push(new u(n.key,n.value,'missing required property "stops"')),"exponential"===t&&n.valueSpec.expression&&!nc(n.valueSpec)&&i.push(new u(n.key,n.value,"exponential functions not supported")),n.styleSpec.$version>=8&&(v&&!du(n.valueSpec)?i.push(new u(n.key,n.value,"property functions not supported")):h&&!fy(n.valueSpec)&&i.push(new u(n.key,n.value,"zoom functions not supported"))),"categorical"!==t&&!c||void 0!==n.value.property||i.push(new u(n.key,n.value,'"property" property is required')),i}function sc(n){var t=("property"===n.expressionContext?wy:ec)(re(n.value),n.valueSpec);return"error"===t.result?t.value.map(function(t){return new u(""+n.key+t.key,n.value,t.message)}):"property"===n.expressionContext&&"text-font"===n.propertyKey&&-1!==t.value._styleExpression.expression.possibleOutputs().indexOf(void 0)?[new u(n.key,n.value,'Invalid data expression for "text-font". Output values must be contained as literals within the expression.')]:"property"!==n.expressionContext||"layout"!==n.propertyType||yo(t.value._styleExpression.expression)?[]:[new u(n.key,n.value,'"feature-state" data expressions are not supported with layout properties.')]}function wo(n){var f=n.key,t=n.value,i=n.valueSpec,r=[];return Array.isArray(i.values)?-1===i.values.indexOf(b(t))&&r.push(new u(f,t,"expected one of ["+i.values.join(", ")+"], "+JSON.stringify(t)+" found")):-1===Object.keys(i.values).indexOf(b(t))&&r.push(new u(f,t,"expected one of ["+Object.keys(i.values).join(", ")+"], "+JSON.stringify(t)+" found")),r}function hc(n){var t,i,r;if(!Array.isArray(n)||0===n.length)return!1;switch(n[0]){case"has":return n.length>=2&&"$id"!==n[1]&&"$type"!==n[1];case"in":case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==n.length||Array.isArray(n[1])||Array.isArray(n[2]);case"any":case"all":for(t=0,i=n.slice(1);t<i.length;t+=1)if(r=i[t],!hc(r)&&"boolean"!=typeof r)return!1;return!0;default:return!0}}function bo(n){if(!n)return function(){return!0};hc(n)||(n=ko(n));var t=ec(n,gy);if("error"===t.result)throw new Error(t.value.map(function(n){return n.key+": "+n.message}).join(", "));return function(n,i){return t.value.evaluate(n,i)}}function id(n,t){return n<t?-1:n>t?1:0}function ko(n){if(!n)return!0;var i,t=n[0];return n.length<=1?"any"!==t:"=="===t?cc(n[1],n[2],"=="):"!="===t?go(cc(n[1],n[2],"==")):"<"===t||">"===t||"<="===t||">="===t?cc(n[1],n[2],t):"any"===t?(i=n.slice(1),["any"].concat(i.map(ko))):"all"===t?["all"].concat(n.slice(1).map(ko)):"none"===t?["all"].concat(n.slice(1).map(ko).map(go)):"in"===t?np(n[1],n.slice(2)):"!in"===t?go(np(n[1],n.slice(2))):"has"===t?tp(n[1]):"!has"!==t||go(tp(n[1]))}function cc(n,t,i){switch(n){case"$type":return["filter-type-"+i,t];case"$id":return["filter-id-"+i,t];default:return["filter-"+i,n,t]}}function np(n,t){if(0===t.length)return!1;switch(n){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some(function(n){return typeof n!=typeof t[0]})?["filter-in-large",n,["literal",t.sort(id)]]:["filter-in-small",n,["literal",t]]}}function tp(n){switch(n){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",n]}}function go(n){return["!",n]}function lc(n){return hc(re(n.value))?sc(au({},n,{expressionContext:"filter",valueSpec:{value:"boolean"}})):function n(t){var i=t.value,f=t.key,h,e,r,o,s;if("array"!==a(i))return[new u(f,i,"array expected, "+a(i)+" found")];if(h=t.styleSpec,r=[],i.length<1)return[new u(f,i,"filter array must have at least 1 element")];r=r.concat(wo({key:f+"[0]",value:i[0],valueSpec:h.filter_operator,style:t.style,styleSpec:t.styleSpec}));switch(b(i[0])){case"<":case"<=":case">":case">=":i.length>=2&&"$type"===b(i[1])&&r.push(new u(f,i,'"$type" cannot be use with operator "'+i[0]+'"'));case"==":case"!=":3!==i.length&&r.push(new u(f,i,'filter array for operator "'+i[0]+'" must have 3 elements'));case"in":case"!in":for(i.length>=2&&"string"!==(e=a(i[1]))&&r.push(new u(f+"[1]",i[1],"string expected, "+e+" found")),o=2;o<i.length;o++)e=a(i[o]),"$type"===b(i[1])?r=r.concat(wo({key:f+"["+o+"]",value:i[o],valueSpec:h.geometry_type,style:t.style,styleSpec:t.styleSpec})):"string"!==e&&"number"!==e&&"boolean"!==e&&r.push(new u(f+"["+o+"]",i[o],"string, number, or boolean expected, "+e+" found"));break;case"any":case"all":case"none":for(s=1;s<i.length;s++)r=r.concat(n({key:f+"["+s+"]",value:i[s],style:t.style,styleSpec:t.styleSpec}));break;case"has":case"!has":e=a(i[1]);2!==i.length?r.push(new u(f,i,'filter array for "'+i[0]+'" operator must have 2 elements')):"string"!==e&&r.push(new u(f+"[1]",i[1],"string expected, "+e+" found"))}return r}(n)}function ip(n,t){var f=n.key,o=n.style,s=n.styleSpec,i=n.value,r=n.objectKey,h=s[t+"_"+n.layerType],c,v,e,l;return h?(c=r.match(/^(.*)-transition$/),"paint"===t&&c&&h[c[1]]&&h[c[1]].transition)?ri({key:f,value:i,valueSpec:s.transition,style:o,styleSpec:s}):(e=n.valueSpec||h[r],!e)?[new u(f,i,'unknown property "'+r+'"')]:"string"===a(i)&&du(e)&&!e.tokens&&(v=/^{([^}]+)}$/.exec(i))?[new u(f,i,'"'+r+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(v[1])+" }`.")]:(l=[],"symbol"===n.layerType&&("text-field"===r&&o&&!o.glyphs&&l.push(new u(f,i,'use of "text-field" requires a style "glyphs" property')),"text-font"===r&&po(re(i))&&"identity"===b(i.type)&&l.push(new u(f,i,'"text-font" does not support identity functions'))),l.concat(ri({key:n.key,value:i,valueSpec:e,style:o,styleSpec:s,expressionContext:"property",propertyType:t,propertyKey:r}))):[]}function rp(n){return ip(n,"paint")}function up(n){return ip(n,"layout")}function fp(n){var i=[],t=n.value,r=n.key,s=n.style,v=n.styleSpec,h,f,l,y,c,a,o,e;if(t.type||t.ref||i.push(new u(r,t,'either "type" or "ref" is required')),f=b(t.type),l=b(t.ref),t.id)for(y=b(t.id),c=0;c<n.arrayIndex;c++)a=s.layers[c],b(a.id)===y&&i.push(new u(r,t.id,'duplicate layer id "'+t.id+'", previously used at line '+a.id.__line__));return"ref"in t?(["type","source","source-layer","filter","layout"].forEach(function(n){n in t&&i.push(new u(r,t[n],'"'+n+'" is prohibited for ref layers'))}),s.layers.forEach(function(n){b(n.id)===l&&(h=n)}),h?h.ref?i.push(new u(r,t.ref,"ref cannot reference another ref layer")):f=b(h.type):i.push(new u(r,t.ref,'ref layer "'+l+'" not found'))):"background"!==f&&(t.source?(o=s.sources&&s.sources[t.source],e=o&&b(o.type),o?"vector"===e&&"raster"===f?i.push(new u(r,t.source,'layer "'+t.id+'" requires a raster source')):"raster"===e&&"raster"!==f?i.push(new u(r,t.source,'layer "'+t.id+'" requires a vector source')):"vector"!==e||t["source-layer"]?"raster-dem"===e&&"hillshade"!==f?i.push(new u(r,t.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==f||!t.paint||!t.paint["line-gradient"]||"geojson"===e&&o.lineMetrics||i.push(new u(r,t,'layer "'+t.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):i.push(new u(r,t,'layer "'+t.id+'" must specify a "source-layer"')):i.push(new u(r,t.source,'source "'+t.source+'" not found'))):i.push(new u(r,t,'missing required property "source"'))),i=i.concat(ii({key:r,value:t,valueSpec:v.layer,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return ri({key:r+".type",value:t.type,valueSpec:v.layer.type,style:n.style,styleSpec:n.styleSpec,object:t,objectKey:"type"})},filter:lc,layout:function(n){return ii({layer:t,key:n.key,value:n.value,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{"*":function(n){return up(au({layerType:f},n))}}})},paint:function(n){return ii({layer:t,key:n.key,value:n.value,style:n.style,styleSpec:n.styleSpec,objectElementValidators:{"*":function(n){return rp(au({layerType:f},n))}}})}}}))}function ep(n){var t=n.value,r=n.key,i=n.styleSpec,o=n.style,s,f,e;if(!t.type)return[new u(r,t,'"type" is required')];s=b(t.type);f=[];switch(s){case"vector":case"raster":case"raster-dem":if(f=f.concat(ii({key:r,value:t,valueSpec:i["source_"+s.replace("-","_")],style:n.style,styleSpec:i})),"url"in t)for(e in t)["type","url","tileSize"].indexOf(e)<0&&f.push(new u(r+"."+e,t[e],'a source with a "url" property may not include a "'+e+'" property'));return f;case"geojson":return ii({key:r,value:t,valueSpec:i.source_geojson,style:o,styleSpec:i});case"video":return ii({key:r,value:t,valueSpec:i.source_video,style:o,styleSpec:i});case"image":return ii({key:r,value:t,valueSpec:i.source_image,style:o,styleSpec:i});case"canvas":return f.push(new u(r,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")),f;default:return wo({key:r+".type",value:t.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:o,styleSpec:i})}}function op(n){var i=n.value,f=n.styleSpec,e=f.light,s=n.style,r=[],h=a(i),t,o;if(void 0===i)return r;if("object"!==h)return r.concat([new u("light",i,"object expected, "+h+" found")]);for(t in i)o=t.match(/^(.*)-transition$/),r=o&&e[o[1]]&&e[o[1]].transition?r.concat(ri({key:t,value:i[t],valueSpec:f.transition,style:s,styleSpec:f})):e[t]?r.concat(ri({key:t,value:i[t],valueSpec:e[t],style:s,styleSpec:f})):r.concat([new u(t,i[t],'unknown property "'+t+'"')]);return r}function ac(n){var t=n.value,r=n.key,i=a(t);return"string"!==i?[new u(r,t,"string expected, "+i+" found")]:[]}function ri(n){var i=n.value,t=n.valueSpec,r=n.styleSpec;return t.expression&&po(b(i))?dy(n):t.expression&&fc(re(i))?sc(n):t.type&&vc[t.type]?vc[t.type](n):ii(au({},n,{valueSpec:t.type?r[t.type]:t}))}function rd(n){var i=n.value,r=n.key,t=ac(n);return t.length?t:(-1===i.indexOf("{fontstack}")&&t.push(new u(r,i,'"glyphs" url must include a "{fontstack}" token')),-1===i.indexOf("{range}")&&t.push(new u(r,i,'"glyphs" url must include a "{range}" token')),t)}function ci(n,i){i=i||t;var r=[];return r=r.concat(ri({key:"",value:n,valueSpec:i.$root,styleSpec:i,style:n,objectElementValidators:{glyphs:rd,"*":function(){return[]}}})),n.constants&&(r=r.concat(av({key:"constants",value:n.constants,style:n,styleSpec:i}))),sp(r)}function sp(n){return[].concat(n).sort(function(n,t){return n.line-t.line})}function rf(n){return function(){return sp(n.apply(this,arguments))}}function cp(n,t){var u=!1,i,r,f;if(t&&t.length)for(i=0,r=t;i<r.length;i+=1)f=r[i],n.fire(new vh(new Error(f.message))),u=!0;return u}function cr(n,t,i){var f=this.cells=[],r,u,e,o,l,s,h,c;if(n instanceof ArrayBuffer){for(this.arrayBuffer=n,r=new Int32Array(this.arrayBuffer),n=r[0],t=r[1],i=r[2],this.d=t+2*i,u=0;u<this.d*this.d;u++)e=r[hr+u],o=r[hr+u+1],f.push(e===o?null:r.subarray(e,o));l=r[hr+f.length];s=r[hr+f.length+1];this.keys=r.subarray(l,s);this.bboxes=r.subarray(s);this.insert=this._insertReadonly}else{for(this.d=t+2*i,h=0;h<this.d*this.d;h++)f.push([]);this.keys=[];this.bboxes=[]}this.n=t;this.extent=n;this.padding=i;this.scale=t/n;this.uid=0;c=i/t*n;this.min=-c;this.max=n+c}function e(n,t,i){void 0===i&&(i={});Object.defineProperty(t,"_classRegistryKey",{value:n,writeable:!1});ff[n]={klass:t,omit:i.omit||[],shallow:i.shallow||[]}}function se(n,t){var e,l,f,r,u,i,s;if(null==n||"boolean"==typeof n||"number"==typeof n||"string"==typeof n||n instanceof Boolean||n instanceof Number||n instanceof String||n instanceof Date||n instanceof RegExp)return n;if(n instanceof ArrayBuffer)return t&&t.push(n),n;if(ArrayBuffer.isView(n))return e=n,t&&t.push(e.buffer),e;if(n instanceof yc)return t&&t.push(n.data.buffer),n;if(Array.isArray(n)){for(var h=[],o=0,c=n;o<c.length;o+=1)l=c[o],h.push(se(l,t));return h}if("object"==typeof n){if(f=n.constructor,r=f._classRegistryKey,!r)throw new Error("can't serialize object of unregistered class");if(u={},f.serialize)u._serialized=f.serialize(n,t);else{for(i in n)!n.hasOwnProperty(i)||ff[r].omit.indexOf(i)>=0||(s=n[i],u[i]=ff[r].shallow.indexOf(i)>=0?s:se(s,t));n instanceof Error&&(u.message=n.message)}return{name:r,properties:u}}throw new Error("can't serialize object of type "+typeof n);}function uu(n){var t,i;if(null==n||"boolean"==typeof n||"number"==typeof n||"string"==typeof n||n instanceof Boolean||n instanceof Number||n instanceof String||n instanceof Date||n instanceof RegExp||n instanceof ArrayBuffer||ArrayBuffer.isView(n)||n instanceof yc)return n;if(Array.isArray(n))return n.map(function(n){return uu(n)});if("object"==typeof n){var e=n,r=e.name,u=e.properties;if(!r)throw new Error("can't deserialize object of anonymous class");if(t=ff[r].klass,!t)throw new Error("can't deserialize unregistered class "+r);if(t.deserialize)return t.deserialize(u._serialized);for(var o=Object.create(t.prototype),f=0,s=Object.keys(u);f<s.length;f+=1)i=s[f],o[i]=ff[r].shallow.indexOf(i)>=0?u[i]:uu(u[i]);return o}throw new Error("can't deserialize object of type "+typeof n);}function pc(n){for(var t=0,i=n;t<i.length;t+=1)if(wc(i[t].charCodeAt(0)))return!0;return!1}function od(n){return!i.Arabic(n)&&!i["Arabic Supplement"](n)&&!i["Arabic Extended-A"](n)&&!i["Arabic Presentation Forms-A"](n)&&!i["Arabic Presentation Forms-B"](n)}function wc(n){return 746===n||747===n||!(n<4352)&&(!!i["Bopomofo Extended"](n)||!!i.Bopomofo(n)||!(!i["CJK Compatibility Forms"](n)||n>=65097&&n<=65103)||!!i["CJK Compatibility Ideographs"](n)||!!i["CJK Compatibility"](n)||!!i["CJK Radicals Supplement"](n)||!!i["CJK Strokes"](n)||!(!i["CJK Symbols and Punctuation"](n)||n>=12296&&n<=12305||n>=12308&&n<=12319||12336===n)||!!i["CJK Unified Ideographs Extension A"](n)||!!i["CJK Unified Ideographs"](n)||!!i["Enclosed CJK Letters and Months"](n)||!!i["Hangul Compatibility Jamo"](n)||!!i["Hangul Jamo Extended-A"](n)||!!i["Hangul Jamo Extended-B"](n)||!!i["Hangul Jamo"](n)||!!i["Hangul Syllables"](n)||!!i.Hiragana(n)||!!i["Ideographic Description Characters"](n)||!!i.Kanbun(n)||!!i["Kangxi Radicals"](n)||!!i["Katakana Phonetic Extensions"](n)||!(!i.Katakana(n)||12540===n)||!(!i["Halfwidth and Fullwidth Forms"](n)||65288===n||65289===n||65293===n||n>=65306&&n<=65310||65339===n||65341===n||65343===n||n>=65371&&n<=65503||65507===n||n>=65512&&n<=65519)||!(!i["Small Form Variants"](n)||n>=65112&&n<=65118||n>=65123&&n<=65126)||!!i["Unified Canadian Aboriginal Syllabics"](n)||!!i["Unified Canadian Aboriginal Syllabics Extended"](n)||!!i["Vertical Forms"](n)||!!i["Yijing Hexagram Symbols"](n)||!!i["Yi Syllables"](n)||!!i["Yi Radicals"](n))}function lp(n){return!(wc(n)||function(n){return!!(i["Latin-1 Supplement"](n)&&(167===n||169===n||174===n||177===n||188===n||189===n||190===n||215===n||247===n)||i["General Punctuation"](n)&&(8214===n||8224===n||8225===n||8240===n||8241===n||8251===n||8252===n||8258===n||8263===n||8264===n||8265===n||8273===n)||i["Letterlike Symbols"](n)||i["Number Forms"](n)||i["Miscellaneous Technical"](n)&&(n>=8960&&n<=8967||n>=8972&&n<=8991||n>=8996&&n<=9e3||9003===n||n>=9085&&n<=9114||n>=9150&&n<=9165||9167===n||n>=9169&&n<=9179||n>=9186&&n<=9215)||i["Control Pictures"](n)&&9251!==n||i["Optical Character Recognition"](n)||i["Enclosed Alphanumerics"](n)||i["Geometric Shapes"](n)||i["Miscellaneous Symbols"](n)&&!(n>=9754&&n<=9759)||i["Miscellaneous Symbols and Arrows"](n)&&(n>=11026&&n<=11055||n>=11088&&n<=11097||n>=11192&&n<=11243)||i["CJK Symbols and Punctuation"](n)||i.Katakana(n)||i["Private Use Area"](n)||i["CJK Compatibility Forms"](n)||i["Small Form Variants"](n)||i["Halfwidth and Fullwidth Forms"](n)||8734===n||8756===n||8757===n||n>=9984&&n<=10087||n>=10102&&n<=10131||65532===n||65533===n)}(n))}function sd(n,t){return!(!t&&(n>=1424&&n<=2303||i["Arabic Presentation Forms-A"](n)||i["Arabic Presentation Forms-B"](n)))&&!(n>=2304&&n<=3583||n>=3840&&n<=4255||i.Khmer(n))}function ft(n,t){void 0===t&&(t=1);var i=0,r=0;return{members:n.map(function(n){var f,u=(f=n.type,hd[f].BYTES_PER_ELEMENT),o=i=vp(i,Math.max(t,u)),e=n.components||1;return r=Math.max(r,u),i+=u*e,{name:n.name,type:n.type,components:e,offset:o}}),size:vp(i,Math.max(r,t)),alignment:t}}function vp(n,t){return Math.ceil(n/t)*t}function lf(n){return[hl(255*n.r,255*n.g),hl(255*n.b,255*n.a)]}function cd(n,t){return{"text-opacity":"opacity","icon-opacity":"opacity","text-color":"fill_color","icon-color":"fill_color","text-halo-color":"halo_color","icon-halo-color":"halo_color","text-halo-blur":"halo_blur","icon-halo-blur":"halo_blur","text-halo-width":"halo_width","icon-halo-width":"halo_width","line-gap-width":"gapwidth"}[n]||n.replace(t+"-","").replace(/-/g,"_")}function af(n){for(var f,i,t,e=lt/n.extent,r=n.loadGeometry(),u=0;u<r.length;u++)for(f=r[u],i=0;i<f.length;i++)t=f[i],t.x=Math.round(t.x*e),t.y=Math.round(t.y*e),(t.x<be.min||t.x>be.max||t.y<be.min||t.y>be.max)&&co("Geometry exceeds allowed extent, reduce your vector tile buffer size");return r}function ps(n,t,i,r,u){n.emplaceBack(2*t+(r+1)/2,2*i+(u+1)/2)}function pp(n,t,i){for(var u,r=0;r<n.length;r++)if((u=n[r],ws(u,t))||vl(t,u,i))return!0;return!1}function ll(n,t){var i,s,r,u,f,e,o;if(1===n.length&&1===n[0].length)return yl(t,n[0][0]);for(i=0;i<t.length;i++)for(s=t[i],r=0;r<s.length;r++)if(yl(n,s[r]))return!0;for(u=0;u<n.length;u++){for(f=n[u],e=0;e<f.length;e++)if(yl(t,f[e]))return!0;for(o=0;o<t.length;o++)if(al(f,t[o]))return!0}return!1}function wp(n,t,i){for(var u,f,e,o,r=0;r<t.length;r++)for(u=t[r],f=0;f<n.length;f++){if(e=n[f],e.length>=3)for(o=0;o<u.length;o++)if(ws(e,u[o]))return!0;if(ld(e,u,i))return!0}return!1}function ld(n,t,i){var r,u;if(n.length>1){if(al(n,t))return!0;for(r=0;r<t.length;r++)if(vl(t[r],n,i))return!0}for(u=0;u<n.length;u++)if(vl(n[u],t,i))return!0;return!1}function al(n,t){var i;if(0===n.length||0===t.length)return!1;for(i=0;i<n.length-1;i++)for(var u=n[i],f=n[i+1],r=0;r<t.length-1;r++)if(ad(u,f,t[r],t[r+1]))return!0;return!1}function ad(n,t,i,r){return lo(n,i,r)!==lo(t,i,r)&&lo(n,t,i)!==lo(n,t,r)}function vl(n,t,i){var u=i*i,r;if(1===t.length)return n.distSqr(t[0])<u;for(r=1;r<t.length;r++)if(bp(n,t[r-1],t[r])<u)return!0;return!1}function bp(n,t,i){var u=t.distSqr(i),r;return 0===u?n.distSqr(t):(r=((n.x-t.x)*(i.x-t.x)+(n.y-t.y)*(i.y-t.y))/u,r<0?n.distSqr(t):r>1?n.distSqr(i):n.distSqr(i.sub(t)._mult(r)._add(t)))}function yl(n,t){for(var r,i,u,o,s,f=!1,e=0;e<n.length;e++)for(o=0,s=(r=n[e]).length-1;o<r.length;s=o++)i=r[o],u=r[s],i.y>t.y!=u.y>t.y&&t.x<(u.x-i.x)*(t.y-i.y)/(u.y-i.y)+i.x&&(f=!f);return f}function ws(n,t){for(var i,r,u=!1,f=0,e=n.length-1;f<n.length;e=f++)i=n[f],r=n[e],i.y>t.y!=r.y>t.y&&t.x<(r.x-i.x)*(t.y-i.y)/(r.y-i.y)+i.x&&(u=!u);return u}function ke(n,t,i){var r=t.paint.get(n).value;return"constant"===r.kind?r.value:i.programConfigurations.get(t.id).binders[n].statistics.max}function bs(n){return Math.sqrt(n[0]*n[0]+n[1]*n[1])}function ks(n,t,i,r,u){var e,o,f;if(!t[0]&&!t[1])return n;for(e=ot.convert(t),"viewport"===i&&e._rotate(-r),o=[],f=0;f<n.length;f++){for(var h=n[f],c=[],s=0;s<h.length;s++)c.push(h[s].sub(e._mult(u)));o.push(c)}return o}function dp(){var n=new lr(9);return n[0]=1,n[1]=0,n[2]=0,n[3]=0,n[4]=1,n[5]=0,n[6]=0,n[7]=0,n[8]=1,n}function pl(){var n=new lr(3);return n[0]=0,n[1]=0,n[2]=0,n}function gp(n){var t=n[0],i=n[1],r=n[2];return Math.sqrt(t*t+i*i+r*r)}function wl(n,t,i){var r=new lr(3);return r[0]=n,r[1]=t,r[2]=i,r}function vd(n,t){var r=t[0],u=t[1],f=t[2],i=r*r+u*u+f*f;return i>0&&(i=1/Math.sqrt(i),n[0]=t[0]*i,n[1]=t[1]*i,n[2]=t[2]*i),n}function yd(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]}function pd(n,t,i){var r=t[0],u=t[1],f=t[2],e=i[0],o=i[1],s=i[2];return n[0]=u*s-f*o,n[1]=f*e-r*s,n[2]=r*o-u*e,n}function iw(){var n=new lr(4);return n[0]=0,n[1]=0,n[2]=0,n[3]=0,n}function rw(n,t){var r=t[0],u=t[1],f=t[2],e=t[3],i=r*r+u*u+f*f+e*e;return i>0&&(i=1/Math.sqrt(i),n[0]=r*i,n[1]=u*i,n[2]=f*i,n[3]=e*i),n}function bl(n,t,i){var r=t[0],u=t[1],f=t[2],e=t[3];return n[0]=i[0]*r+i[4]*u+i[8]*f+i[12]*e,n[1]=i[1]*r+i[5]*u+i[9]*f+i[13]*e,n[2]=i[2]*r+i[6]*u+i[10]*f+i[14]*e,n[3]=i[3]*r+i[7]*u+i[11]*f+i[15]*e,n}function fw(){var n=new lr(4);return n[0]=0,n[1]=0,n[2]=0,n[3]=1,n}function ow(n,t,i){var r=bl([],[n.x,n.y,0,1],t);return new ot((r[0]/r[3]+1)*i.width*.5,(r[1]/r[3]+1)*i.height*.5)}function dl(n,t,i,r){var u=t.width,f=t.height;if(r){if(r.length!==u*f*i)throw new RangeError("mismatched image size");}else r=new Uint8Array(u*f*i);return n.width=u,n.height=f,n.data=r,n}function sw(n,t,i){var r=t.width,u=t.height,f;(r!==n.width||u!==n.height)&&(f=dl({},{width:r,height:u},i),gl(n,f,{x:0,y:0},{x:0,y:0},{width:Math.min(n.width,r),height:Math.min(n.height,u)},i),n.width=r,n.height=u,n.data=f.data)}function gl(n,t,i,r,u,f){if(0===u.width||0===u.height)return t;if(u.width>n.width||u.height>n.height||i.x>n.width-u.width||i.y>n.height-u.height)throw new RangeError("out of range source coordinates for image copy");if(u.width>t.width||u.height>t.height||r.x>t.width-u.width||r.y>t.height-u.height)throw new RangeError("out of range destination coordinates for image copy");for(var s=n.data,h=t.data,e=0;e<u.height;e++)for(var c=((i.y+e)*n.width+i.x)*f,l=((r.y+e)*t.width+r.x)*f,o=0;o<u.width*f;o++)h[l+o]=s[c+o];return t}function cw(n,t){for(var i,r=new Uint8Array(1024),e={},f=0,u=0;f<256;f++,u+=4)e[t]=f/255,i=n.evaluate(e),r[u+0]=Math.floor(255*i.r/i.a),r[u+1]=Math.floor(255*i.g/i.a),r[u+2]=Math.floor(255*i.b/i.a),r[u+3]=Math.floor(255*i.a);return new ei({width:256,height:1},r)}function ds(n,t,i){var f;i=i||2;var r,u,e,o,s,h,c,v=t&&t.length,y=v?t[0]*i:n.length,l=aw(n,0,y,i,!0),a=[];if(!l)return a;if(v&&(l=function(n,t,i,r){for(var s,h,f,e=[],u=0,o=t.length;u<o;u++)s=t[u]*r,h=u<o-1?t[u+1]*r:n.length,(f=aw(n,s,h,r,!1))===f.next&&(f.steiner=!0),e.push(ag(f));for(e.sort(cg),u=0;u<e.length;u++)lg(e[u],i),i=de(i,i.next);return i}(n,t,l,i)),n.length>80*i){for(r=e=n[0],u=o=n[1],f=i;f<y;f+=i)(s=n[f])<r&&(r=s),(h=n[f+1])<u&&(u=h),s>e&&(e=s),h>o&&(o=h);c=0!==(c=Math.max(e-r,o-u))?1/c:0}return ge(l,a,i,r,u,c),a}function aw(n,t,i,r,u){var f,e;if(u===ua(n,t,i,r)>0)for(f=t;f<i;f+=r)e=pw(f,n[f],n[f+1],e);else for(f=i-r;f>=t;f-=r)e=pw(f,n[f],n[f+1],e);return e&&ou(e,e.next)&&(to(e),e=e.next),e}function de(n,t){if(!n)return n;t||(t=n);var r,i=n;do if(r=!1,i.steiner||!ou(i,i.next)&&0!==it(i.prev,i,i.next))i=i.next;else{if(to(i),(i=t=i.prev)===i.next)break;r=!0}while(r||i!==t);return t}function ge(n,t,i,r,u,f,e){if(n){!e&&f&&function(n,t,i,r){var u=n;do null===u.z&&(u.z=ia(u.x,u.y,t,i,r)),u.prevZ=u.prev,u.nextZ=u.next,u=u.next;while(u!==n);u.prevZ.nextZ=null;u.prevZ=null,function(n){var o,i,t,r,u,s,f,e,h=1;do{for(i=n,n=null,u=null,s=0;i;){for(s++,t=i,f=0,o=0;o<h&&(f++,t=t.nextZ);o++);for(e=h;f>0||e>0&&t;)0!==f&&(0===e||!t||i.z<=t.z)?(r=i,i=i.nextZ,f--):(r=t,t=t.nextZ,e--),u?u.nextZ=r:n=r,r.prevZ=u,u=r;i=t}u.nextZ=null;h*=2}while(s>1)}(u)}(n,r,u,f);for(var s,o,h=n;n.prev!==n.next;)if(s=n.prev,o=n.next,f?og(n,r,u,f):eg(n))t.push(s.i/i),t.push(n.i/i),t.push(o.i/i),to(n),n=o.next,h=o.next;else if((n=o)===h){e?1===e?ge(n=sg(n,t,i),t,i,r,u,f,2):2===e&&hg(n,t,i,r,u,f):ge(de(n),t,i,r,u,f,1);break}}}function eg(n){var i=n.prev,r=n,u=n.next,t;if(it(i,r,u)>=0)return!1;for(t=n.next.next;t!==n.prev;){if(vf(i.x,i.y,r.x,r.y,u.x,u.y,t.x,t.y)&&it(t.prev,t,t.next)>=0)return!1;t=t.next}return!0}function og(n,t,i,r){var o=n.prev,s=n,u=n.next;if(it(o,s,u)>=0)return!1;for(var l=o.x<s.x?o.x<u.x?o.x:u.x:s.x<u.x?s.x:u.x,a=o.y<s.y?o.y<u.y?o.y:u.y:s.y<u.y?s.y:u.y,v=o.x>s.x?o.x>u.x?o.x:u.x:s.x>u.x?s.x:u.x,y=o.y>s.y?o.y>u.y?o.y:u.y:s.y>u.y?s.y:u.y,h=ia(l,a,t,i,r),c=ia(v,y,t,i,r),f=n.prevZ,e=n.nextZ;f&&f.z>=h&&e&&e.z<=c;){if(f!==n.prev&&f!==n.next&&vf(o.x,o.y,s.x,s.y,u.x,u.y,f.x,f.y)&&it(f.prev,f,f.next)>=0||(f=f.prevZ,e!==n.prev&&e!==n.next&&vf(o.x,o.y,s.x,s.y,u.x,u.y,e.x,e.y)&&it(e.prev,e,e.next)>=0))return!1;e=e.nextZ}for(;f&&f.z>=h;){if(f!==n.prev&&f!==n.next&&vf(o.x,o.y,s.x,s.y,u.x,u.y,f.x,f.y)&&it(f.prev,f,f.next)>=0)return!1;f=f.prevZ}for(;e&&e.z<=c;){if(e!==n.prev&&e!==n.next&&vf(o.x,o.y,s.x,s.y,u.x,u.y,e.x,e.y)&&it(e.prev,e,e.next)>=0)return!1;e=e.nextZ}return!0}function sg(n,t,i){var r=n,f,u;do f=r.prev,u=r.next.next,!ou(f,u)&&vw(f,r,r.next,u)&&no(f,u)&&no(u,f)&&(t.push(f.i/i),t.push(r.i/i),t.push(u.i/i),to(r),to(r.next),r=n=u),r=r.next;while(r!==n);return r}function hg(n,t,i,r,u,f){var e=n,o,s;do{for(o=e.next.next;o!==e.prev;){if(e.i!==o.i&&vg(e,o))return s=yw(e,o),e=de(e,e.next),s=de(s,s.next),ge(e,t,i,r,u,f),void ge(s,t,i,r,u,f);o=o.next}e=e.next}while(e!==n)}function cg(n,t){return n.x-t.x}function lg(n,t){if(t=function(n,t){var r,i=t,f=n.x,u=n.y,e=-1/0,o;do{if(u<=i.y&&u>=i.next.y&&i.next.y!==i.y&&(o=i.x+(u-i.y)*(i.next.x-i.x)/(i.next.y-i.y),o<=f&&o>e)){if(e=o,o===f){if(u===i.y)return i;if(u===i.next.y)return i.next}r=i.x<i.next.x?i:i.next}i=i.next}while(i!==t);if(!r)return null;if(f===e)return r.prev;var s,a=r,l=r.x,h=r.y,c=1/0;for(i=r.next;i!==a;)f>=i.x&&i.x>=l&&f!==i.x&&vf(u<h?f:e,u,l,h,u<h?e:f,u,i.x,i.y)&&((s=Math.abs(u-i.y)/(f-i.x))<c||s===c&&i.x>r.x)&&no(i,n)&&(r=i,c=s),i=i.next;return r}(n,t)){var i=yw(t,n);de(i,i.next)}}function ia(n,t,i,r,u){return(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n=32767*(n-i)*u)|n<<8))|n<<4))|n<<2))|n<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*u)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function ag(n){var t=n,i=n;do t.x<i.x&&(i=t),t=t.next;while(t!==n);return i}function vf(n,t,i,r,u,f,e,o){return(u-e)*(t-o)-(n-e)*(f-o)>=0&&(n-e)*(r-o)-(i-e)*(t-o)>=0&&(i-e)*(f-o)-(u-e)*(r-o)>=0}function vg(n,t){return n.next.i!==t.i&&n.prev.i!==t.i&&!function(n,t){var i=n;do{if(i.i!==n.i&&i.next.i!==n.i&&i.i!==t.i&&i.next.i!==t.i&&vw(i,i.next,n,t))return!0;i=i.next}while(i!==n);return!1}(n,t)&&no(n,t)&&no(t,n)&&function(n,t){var i=n,r=!1,f=(n.x+t.x)/2,u=(n.y+t.y)/2;do i.y>u!=i.next.y>u&&i.next.y!==i.y&&f<(i.next.x-i.x)*(u-i.y)/(i.next.y-i.y)+i.x&&(r=!r),i=i.next;while(i!==n);return r}(n,t)}function it(n,t,i){return(t.y-n.y)*(i.x-t.x)-(t.x-n.x)*(i.y-t.y)}function ou(n,t){return n.x===t.x&&n.y===t.y}function vw(n,t,i,r){return!!(ou(n,t)&&ou(i,r)||ou(n,r)&&ou(i,t))||it(n,t,i)>0!=it(n,t,r)>0&&it(i,r,n)>0!=it(i,r,t)>0}function no(n,t){return it(n.prev,n,n.next)<0?it(n,t,n.next)>=0&&it(n,n.prev,t)>=0:it(n,t,n.prev)<0||it(n,n.next,t)<0}function yw(n,t){var r=new ra(n.i,n.x,n.y),i=new ra(t.i,t.x,t.y),u=n.next,f=t.prev;return n.next=t,t.prev=n,r.next=u,u.prev=r,i.next=r,r.prev=i,f.next=i,i.prev=f,i}function pw(n,t,i,r){var u=new ra(n,t,i);return r?(u.next=r.next,u.prev=r,r.next.prev=u,r.next=u):(u.prev=u,u.next=u),u}function to(n){n.next.prev=n.prev;n.prev.next=n.next;n.prevZ&&(n.prevZ.nextZ=n.nextZ);n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function ra(n,t,i){this.i=n;this.x=t;this.y=i;this.prev=null;this.next=null;this.z=null;this.prevZ=null;this.nextZ=null;this.steiner=!1}function ua(n,t,i,r){for(var e=0,u=t,f=i-r;u<i;u+=r)e+=(n[f]-n[u])*(n[u+1]+n[f+1]),f=u;return e}function bw(n,t,i,r,u){!function n(t,i,r,u,f){for(;u>r;){if(u-r>600){var o=u-r+1,l=i-r+1,a=Math.log(o),h=.5*Math.exp(2*a/3),v=.5*Math.sqrt(a*h*(o-h)/o)*(l-o/2<0?-1:1),y=Math.max(r,Math.floor(i-l*h/o+v)),p=Math.min(u,Math.floor(i+(o-l)*h/o+v));n(t,i,y,p,f)}var c=t[i],s=r,e=u;for(io(t,r,i),f(t[u],c)>0&&io(t,r,u);s<e;){for(io(t,s,e),s++,e--;f(t[s],c)<0;)s++;for(;f(t[e],c)>0;)e--}0===f(t[r],c)?io(t,r,e):io(t,++e,u);e<=i&&(r=e+1);i<=e&&(u=e-1)}}(n,t,i||0,r||n.length-1,u||yg)}function io(n,t,i){var r=n[t];n[t]=n[i];n[i]=r}function yg(n,t){return n<t?-1:n>t?1:0}function ea(n,t){var s=n.length,f,o,i,u,e,r;if(s<=1)return[n];for(i=[],u=0;u<s;u++)e=uk(n[u]),0!==e&&(n[u].area=Math.abs(e),void 0===o&&(o=e<0),o===e<0?(f&&i.push(f),f=[n[u]]):f.push(n[u]));if(f&&i.push(f),t>1)for(r=0;r<i.length;r++)i[r].length<=t||(fa(i[r],t,1,i[r].length-1,pg),i[r]=i[r].slice(0,t));return i}function pg(n,t){return t.area-n.area}function ro(n,t,i,r,u,f,e,o){n.emplaceBack(t,i,2*Math.floor(r*sa)+e,u*sa*2,f*sa*2,Math.round(o))}function kg(n,t){return n.x===t.x&&(n.x<0||n.x>lt)||n.y===t.y&&(n.y<0||n.y>lt)}function dg(n){return n.every(function(n){return n.x<0})||n.every(function(n){return n.x>lt})||n.every(function(n){return n.y<0})||n.every(function(n){return n.y>lt})}function yf(n,t,i,r,u){this.properties={};this.extent=i;this.type=0;this._pbf=n;this._geometry=-1;this._keys=r;this._values=u;n.readFields(tn,this,t)}function tn(n,t,i){1==n?t.id=i.readVarint():2==n?function(n,t){for(var u=n.readVarint()+n.pos,i,r;n.pos<u;)i=t._keys[n.readVarint()],r=t._values[n.readVarint()],t.properties[i]=r}(i,t):3==n?t.type=i.readVarint():4==n&&(t._geometry=i.pos)}function rn(n){for(var t,r,u=0,i=0,f=n.length,e=f-1;i<f;e=i++)t=n[i],u+=((r=n[e]).x-t.x)*(t.y+r.y);return u}function nb(n,t){this.version=1;this.name=null;this.extent=4096;this.length=0;this._pbf=n;this._keys=[];this._values=[];this._features=[];n.readFields(un,this,t);this.length=this._features.length}function un(n,t,i){15===n?t.version=i.readVarint():1===n?t.name=i.readString():5===n?t.extent=i.readVarint():2===n?t._features.push(i.pos):3===n?t._keys.push(i.readString()):4===n&&t._values.push(function(n){for(var i=null,r=n.readVarint()+n.pos,t;n.pos<r;)t=n.readVarint()>>3,i=1===t?n.readString():2===t?n.readFloat():3===t?n.readDouble():4===t?n.readVarint64():5===t?n.readVarint():6===t?n.readSVarint():7===t?n.readBoolean():null;return i}(i))}function fn(n,t,i){if(3===n){var r=new ca(i,i.readVarint()+i.pos);r.length&&(t[r.name]=r)}}function aa(n,t,i,r,u,f,e){n.emplaceBack(t.x,t.y,r?1:0,u?1:-1,Math.round(tb*i.x)+128,Math.round(tb*i.y)+128,1+(0===f?0:f<0?-1:1)|(e*la&63)<<2,e*la>>6)}function rb(n,t){return(n/t.tileTotal*(t.end-t.start)+t.start)*(ib-1)}function ob(n,t){return t>0?t+2*n:n}function sb(n,t,i){var r=t.layout.get("text-transform").evaluate(i,{});return"uppercase"===r?n=n.toLocaleUpperCase():"lowercase"===r&&(n=n.toLocaleLowerCase()),fu.applyArabicShaping&&(n=fu.applyArabicShaping(n)),n}function vn(n,t,i){return n instanceof bt?(n.sections.forEach(function(n){n.text=sb(n.text,t,i)}),n):sb(n,t,i)}function pa(n,t){var i=t.expression,r,u,f,e;if("constant"===i.kind)return{functionType:"constant",layoutSize:i.evaluate(new k(n+1))};if("source"===i.kind)return{functionType:"source"};for(r=i.zoomStops,u=0;u<r.length&&r[u]<=n;)u++;for(f=u=Math.max(0,u-1);f<r.length&&r[f]<n+1;)f++;return f=Math.min(r.length-1,f),e={min:r[u],max:r[f]},"composite"===i.kind?{functionType:"composite",zoomRange:e,propertyValue:t.value}:{functionType:"camera",layoutSize:i.evaluate(new k(n+1)),zoomRange:e,sizeRange:{min:i.evaluate(new k(e.min)),max:i.evaluate(new k(e.max))},propertyValue:t.value}}function gs(n,t,i,r,u,f,e,o){n.emplaceBack(t,i,Math.round(32*r),Math.round(32*u),f,e,o?o[0]:0,o?o[1]:0)}function wa(n,t,i){n.emplaceBack(t.x,t.y,i);n.emplaceBack(t.x,t.y,i);n.emplaceBack(t.x,t.y,i);n.emplaceBack(t.x,t.y,i)}function dt(n,t,i){i=i||{};this.w=n||64;this.h=t||64;this.autoResize=!!i.autoResize;this.shelves=[];this.freebins=[];this.stats={};this.bins={};this.maxId=0}function ba(n,t,i){this.x=0;this.y=n;this.w=this.free=t;this.h=i}function w(n){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(n)?n:new Uint8Array(n||0);this.pos=0;this.type=0;this.length=this.buf.length}function vr(n){return n.type===w.Bytes?n.readVarint()+n.pos:n.pos+1}function kf(n,t,i){return i?4294967296*t+(n>>>0):4294967296*(t>>>0)+(n>>>0)}function kb(n,t,i){var u=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.ceil(Math.log(t)/(7*Math.LN2)),r;for(i.realloc(u),r=i.pos-1;r>=n;r--)i.buf[r+u]=i.buf[r]}function gn(n,t){for(var i=0;i<n.length;i++)t.writeVarint(n[i])}function ntt(n,t){for(var i=0;i<n.length;i++)t.writeSVarint(n[i])}function ttt(n,t){for(var i=0;i<n.length;i++)t.writeFloat(n[i])}function itt(n,t){for(var i=0;i<n.length;i++)t.writeDouble(n[i])}function rtt(n,t){for(var i=0;i<n.length;i++)t.writeBoolean(n[i])}function utt(n,t){for(var i=0;i<n.length;i++)t.writeFixed32(n[i])}function ftt(n,t){for(var i=0;i<n.length;i++)t.writeSFixed32(n[i])}function ett(n,t){for(var i=0;i<n.length;i++)t.writeFixed64(n[i])}function ott(n,t){for(var i=0;i<n.length;i++)t.writeSFixed64(n[i])}function th(n,t){return(n[t]|n[t+1]<<8|n[t+2]<<16)+16777216*n[t+3]}function df(n,t,i){n[i]=t;n[i+1]=t>>>8;n[i+2]=t>>>16;n[i+3]=t>>>24}function db(n,t){return(n[t]|n[t+1]<<8|n[t+2]<<16)+(n[t+3]<<24)}function stt(n,t,i){1===n&&i.readMessage(htt,t)}function htt(n,t,i){if(3===n){var r=i.readMessage(ctt,{}),e=r.id,o=r.bitmap,u=r.width,f=r.height,s=r.left,h=r.top,c=r.advance;t.push({id:e,bitmap:new gr({width:u+2*ih,height:f+2*ih},o),metrics:{width:u,height:f,left:s,top:h,advance:c}})}}function ctt(n,t,i){1===n?t.id=i.readVarint():2===n?t.bitmap=i.readBytes():3===n?t.width=i.readVarint():4===n?t.height=i.readVarint():5===n?t.left=i.readSVarint():6===n?t.top=i.readSVarint():7===n&&(t.advance=i.readVarint())}function nk(n,t,i){var r=12756274*Math.PI/256/Math.pow(2,i);return[n*r-6378137*Math.PI,t*r-6378137*Math.PI]}function ga(n,t,i,r){(n*=2)<0&&(n=-1*n-1);var u=1<<t;return 32*(u*u*n+u*r+i)+t}function ltt(n,t){return t-n}function tk(n,t,i,r){var u=Math.pow(n-t,2);return r?n<t?u/2:2*u:u+Math.abs(i)*i}function att(n,t){var i=0;return 10===n&&(i-=1e4),40!==n&&65288!==n||(i+=50),41!==t&&65289!==t||(i+=50),i}function ik(n,t,i,r,u,f){for(var e,h,c=null,o=tk(t,i,u,f),s=0,l=r;s<l.length;s+=1)e=l[s],h=tk(t-e.x,i,u,f)+e.badness,h<=o&&(c=e,o=h);return{index:n,x:t,priorBreak:c,badness:o}}function tv(n,t,r,u){if(!r)return[];if(!n)return[];for(var f,s=[],c=function(n,t,i,r){for(var f=0,u=0;u<n.length();u++){var e=n.getSection(u),o=r[e.fontStack],s=o&&o[n.getCharCode(u)];s&&(f+=s.metrics.advance*e.scale+t)}return f/Math.max(1,Math.ceil(f/i))}(n,t,r,u),h=0,e=0;e<n.length();e++){var l=n.getSection(e),o=n.getCharCode(e),a=u[l.fontStack],v=a&&a[o];v&&!fh[o]&&(h+=v.metrics.advance*l.scale+t);e<n.length()-1&&(et[o]||!((f=o)<11904)&&(i["Bopomofo Extended"](f)||i.Bopomofo(f)||i["CJK Compatibility Forms"](f)||i["CJK Compatibility Ideographs"](f)||i["CJK Compatibility"](f)||i["CJK Radicals Supplement"](f)||i["CJK Strokes"](f)||i["CJK Symbols and Punctuation"](f)||i["CJK Unified Ideographs Extension A"](f)||i["CJK Unified Ideographs"](f)||i["Enclosed CJK Letters and Months"](f)||i["Halfwidth and Fullwidth Forms"](f)||i.Hiragana(f)||i["Ideographic Description Characters"](f)||i["Kangxi Radicals"](f)||i["Katakana Phonetic Extensions"](f)||i.Katakana(f)||i["Vertical Forms"](f)||i["Yi Radicals"](f)||i["Yi Syllables"](f)))&&s.push(ik(e+1,h,c,s,att(o,n.getCharCode(e+1)),!1))}return function n(t){return t?n(t.priorBreak).concat(t.index):[]}(ik(n.length(),h,c,s,0,!0))}function rk(n){var t=.5,i=.5;switch(n){case"right":case"top-right":case"bottom-right":t=1;break;case"left":case"top-left":case"bottom-left":t=0}switch(n){case"bottom":case"bottom-right":case"bottom-left":i=1;break;case"top":case"top-right":case"top-left":i=0}return{horizontalAlign:t,verticalAlign:i}}function vtt(n,t,i,r,u){if(u){var f=n[r],o=t[f.fontStack],s=o&&o[f.glyph];if(s)for(var h=s.metrics.advance*f.scale,c=(n[r].x+h)*u,e=i;e<=r;e++)n[e].x-=c}}var rv=hu,oi,ot,fv,ev,oh,sh,hh,ie,lh,t,u,gt,vu,pv,yh,l,wu,rr,ph,bt,pr,ti,rt,bv,ht,wh,hi,kv,kt,dv,wr,nt,ur,fr,er,ue,ut,or,sr,br,kr,dr,iu,ee,oe,nf,tf,gy,vc,uf,hr,yc,ff,ns,ts,i,eu,ef,li,is,of,sf,ai,ce,f,o,vi,hf,vt,cf,ae,rs,us,fs,es,os,ss,ve,hs,cs,ye,ls,as,pi,pe,we,vs,gc,ys,nl,tl,il,rl,ul,fl,el,ol,hl,wi,bi,ui,yt,pt,lt,cl,be,fi,kp,lr,ar,nw,tw,uw,wd,bd,kd,dd,gd,ng,tg,ew,kl,gr,ei,hw,fa,ww,ki,di,ca,wt,eb,pf,ya,hb,cb,wf,bf,v,fo,eo,ka,ih,gb,oo,gf,da,p,gi,nv,so,ho,rh,ne,yr,d,uh,at,fh,et;hu.prototype.sampleCurveX=function(n){return((this.ax*n+this.bx)*n+this.cx)*n};hu.prototype.sampleCurveY=function(n){return((this.ay*n+this.by)*n+this.cy)*n};hu.prototype.sampleCurveDerivativeX=function(n){return(3*this.ax*n+2*this.bx)*n+this.cx};hu.prototype.solveCurveX=function(n,t){var r,f,i,u,e,o;for(void 0===t&&(t=1e-6),i=n,e=0;e<8;e++){if(u=this.sampleCurveX(i)-n,Math.abs(u)<t)return i;if(o=this.sampleCurveDerivativeX(i),Math.abs(o)<1e-6)break;i-=u/o}if((i=n)<(r=0))return r;if(i>(f=1))return f;for(;r<f;){if(u=this.sampleCurveX(i),Math.abs(u-n)<t)return i;n>u?r=i:f=i;i=.5*(f-r)+r}return i};hu.prototype.solve=function(n,t){return this.sampleCurveY(this.solveCurveX(n,t))};oi=function(n,t,i){this.column=n;this.row=t;this.zoom=i};oi.prototype.clone=function(){return new oi(this.column,this.row,this.zoom)};oi.prototype.zoomTo=function(n){return this.clone()._zoomTo(n)};oi.prototype.sub=function(n){return this.clone()._sub(n)};oi.prototype._zoomTo=function(n){var t=Math.pow(2,n-this.zoom);return this.column*=t,this.row*=t,this.zoom=n,this};oi.prototype._sub=function(n){return n=n.zoomTo(this.zoom),this.column-=n.column,this.row-=n.row,this};ot=cu;cu.prototype={clone:function(){return new cu(this.x,this.y)},add:function(n){return this.clone()._add(n)},sub:function(n){return this.clone()._sub(n)},multByPoint:function(n){return this.clone()._multByPoint(n)},divByPoint:function(n){return this.clone()._divByPoint(n)},mult:function(n){return this.clone()._mult(n)},div:function(n){return this.clone()._div(n)},rotate:function(n){return this.clone()._rotate(n)},rotateAround:function(n,t){return this.clone()._rotateAround(n,t)},matMult:function(n){return this.clone()._matMult(n)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(n){return this.x===n.x&&this.y===n.y},dist:function(n){return Math.sqrt(this.distSqr(n))},distSqr:function(n){var t=n.x-this.x,i=n.y-this.y;return t*t+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(n){return Math.atan2(this.y-n.y,this.x-n.x)},angleWith:function(n){return this.angleWithSep(n.x,n.y)},angleWithSep:function(n,t){return Math.atan2(this.x*t-this.y*n,this.x*n+this.y*t)},_matMult:function(n){var t=n[0]*this.x+n[1]*this.y,i=n[2]*this.x+n[3]*this.y;return this.x=t,this.y=i,this},_add:function(n){return this.x+=n.x,this.y+=n.y,this},_sub:function(n){return this.x-=n.x,this.y-=n.y,this},_mult:function(n){return this.x*=n,this.y*=n,this},_div:function(n){return this.x/=n,this.y/=n,this},_multByPoint:function(n){return this.x*=n.x,this.y*=n.y,this},_divByPoint:function(n){return this.x/=n.x,this.y/=n.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var n=this.y;return this.y=this.x,this.x=-n,this},_rotate:function(n){var t=Math.cos(n),i=Math.sin(n),r=t*this.x-i*this.y,u=i*this.x+t*this.y;return this.x=r,this.y=u,this},_rotateAround:function(n,t){var i=Math.cos(n),r=Math.sin(n),u=t.x+i*(this.x-t.x)-r*(this.y-t.y),f=t.y+r*(this.x-t.x)+i*(this.y-t.y);return this.x=u,this.y=f,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}};cu.convert=function(n){return n instanceof cu?n:Array.isArray(n)?new cu(n[0],n[1]):n};fv=uv(.25,.1,.25,1);ev=1;oh={};var fk=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),ek=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,ok=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,lu={now:fk,frame:function(n){var t=ek(n);return{cancel:function(){return ok(t)}}},getImageData:function(n){var t=self.document.createElement("canvas"),i=t.getContext("2d");if(!i)throw new Error("failed to create canvas 2d context");return t.width=n.width,t.height=n.height,i.drawImage(n,0,0,n.width,n.height),i.getImageData(0,0,n.width,n.height)},resolveURL:function(n){var t=self.document.createElement("a");return t.href=n,t.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},supportsWebp:!1};self.document&&(sh=self.document.createElement("img"),sh.onload=function(){lu.supportsWebp=!0},sh.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");hh={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(hh);ie=function(n){function t(t,i,r){n.call(this,t);this.status=i;this.url=r;this.name=this.constructor.name;this.message=t}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},t}(Error);lh=function(n,t){var i=ch(n);return i.responseType="arraybuffer",i.onerror=function(){t(new Error(i.statusText))},i.onload=function(){var r=i.response;if(0===r.byteLength&&200===i.status)return t(new Error("http status 200 returned without content."));i.status>=200&&i.status<300&&i.response?t(null,{data:r,cacheControl:i.getResponseHeader("Cache-Control"),expires:i.getResponseHeader("Expires")}):t(new ie(i.statusText,i.status,n.url))},i.send(),{cancel:function(){return i.abort()}}};var ao=function(n,t){void 0===t&&(t={});si(this,t);this.type=n},vh=function(n){function t(t,i){void 0===i&&(i={});n.call(this,"error",si({error:t},i))}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t}(ao),ir=function(){};ir.prototype.on=function(n,t){return this._listeners=this._listeners||{},lv(n,t,this._listeners),this};ir.prototype.off=function(n,t){return ah(n,t,this._listeners),ah(n,t,this._oneTimeListeners),this};ir.prototype.once=function(n,t){return this._oneTimeListeners=this._oneTimeListeners||{},lv(n,t,this._oneTimeListeners),this};ir.prototype.fire=function(n){var t,i,u,r,f,e,o;if("string"==typeof n&&(n=new ao(n,arguments[1]||{})),t=n.type,this.listens(t)){for(n.target=this,i=0,u=this._listeners&&this._listeners[t]?this._listeners[t].slice():[];i<u.length;i+=1)u[i].call(this,n);for(r=0,f=this._oneTimeListeners&&this._oneTimeListeners[t]?this._oneTimeListeners[t].slice():[];r<f.length;r+=1)e=f[r],ah(t,e,this._oneTimeListeners),e.call(this,n);o=this._eventedParent;o&&(si(n,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),o.fire(n))}else n instanceof vh&&console.error(n.error);return this};ir.prototype.listens=function(n){return this._listeners&&this._listeners[n]&&this._listeners[n].length>0||this._oneTimeListeners&&this._oneTimeListeners[n]&&this._oneTimeListeners[n].length>0||this._eventedParent&&this._eventedParent.listens(n)};ir.prototype.setEventedParent=function(n,t){return this._eventedParent=n,this._eventedParentData=t,this};t={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number","default":0,period:360,units:"degrees"},pitch:{type:"number","default":0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,"default":[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},"default":"xyz"},minzoom:{type:"number","default":0},maxzoom:{type:"number","default":22},attribution:{type:"string"},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,"default":[-180,-85.051129,180,85.051129]},minzoom:{type:"number","default":0},maxzoom:{type:"number","default":22},tileSize:{type:"number","default":512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},"default":"xyz"},attribution:{type:"string"},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,"default":[-180,-85.051129,180,85.051129]},minzoom:{type:"number","default":0},maxzoom:{type:"number","default":22},tileSize:{type:"number","default":512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},"default":"mapbox"},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number","default":18},attribution:{type:"string"},buffer:{type:"number","default":128,maximum:512,minimum:0},tolerance:{type:"number","default":.375},cluster:{type:"boolean","default":!1},clusterRadius:{type:"number","default":50,minimum:0},clusterMaxZoom:{type:"number"},lineMetrics:{type:"boolean","default":!1},generateId:{type:"boolean","default":!1}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_fill:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_circle:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},"default":"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},"default":"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number","default":2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number","default":1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},"default":"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number","default":250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean","default":!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean","default":!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean","default":!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean","default":!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},"default":"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number","default":1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},"default":"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,"default":[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"string",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number","default":0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number","default":2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean","default":!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,"default":[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},"default":"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},"default":"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},"default":"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted","default":"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string","default":["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number","default":16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number","default":10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number","default":1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number","default":0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{left:{},center:{},right:{}},"default":"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number","default":45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number","default":0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number","default":2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean","default":!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},"default":"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,"default":[0,0],requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean","default":!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean","default":!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean","default":!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},"in":{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function_stop:{type:"array",minimum:0,maximum:22,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},expression_name:{type:"enum",values:{"let":{group:"Variable binding"},"var":{group:"Variable binding"},literal:{group:"Types"},array:{group:"Types"},at:{group:"Lookup"},"case":{group:"Decision"},match:{group:"Decision"},coalesce:{group:"Decision"},step:{group:"Ramps, scales, curves"},interpolate:{group:"Ramps, scales, curves"},ln2:{group:"Math"},pi:{group:"Math"},e:{group:"Math"},"typeof":{group:"Types"},string:{group:"Types"},number:{group:"Types"},boolean:{group:"Types"},object:{group:"Types"},collator:{group:"Types"},format:{group:"Types"},"to-string":{group:"Types"},"to-number":{group:"Types"},"to-boolean":{group:"Types"},"to-rgba":{group:"Color"},"to-color":{group:"Types"},rgb:{group:"Color"},rgba:{group:"Color"},get:{group:"Lookup"},has:{group:"Lookup"},length:{group:"Lookup"},properties:{group:"Feature data"},"feature-state":{group:"Feature data"},"geometry-type":{group:"Feature data"},id:{group:"Feature data"},zoom:{group:"Zoom"},"heatmap-density":{group:"Heatmap"},"line-progress":{group:"Heatmap"},"+":{group:"Math"},"*":{group:"Math"},"-":{group:"Math"},"/":{group:"Math"},"%":{group:"Math"},"^":{group:"Math"},sqrt:{group:"Math"},log10:{group:"Math"},ln:{group:"Math"},log2:{group:"Math"},sin:{group:"Math"},cos:{group:"Math"},tan:{group:"Math"},asin:{group:"Math"},acos:{group:"Math"},atan:{group:"Math"},min:{group:"Math"},max:{group:"Math"},round:{group:"Math"},abs:{group:"Math"},ceil:{group:"Math"},floor:{group:"Math"},"==":{group:"Decision"},"!=":{group:"Decision"},">":{group:"Decision"},"<":{group:"Decision"},">=":{group:"Decision"},"<=":{group:"Decision"},all:{group:"Decision"},any:{group:"Decision"},"!":{group:"Decision"},"is-supported-script":{group:"String"},upcase:{group:"String"},downcase:{group:"String"},concat:{group:"String"},"resolved-locale":{group:"String"}}},light:{anchor:{type:"enum","default":"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array","default":[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant","default":"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant","default":.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean","default":!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color","default":"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"string",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"}},paint_line:{"line-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color","default":"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number","default":1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number","default":0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"string",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number","default":5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color","default":"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number","default":0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},"default":"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},"default":"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color","default":"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number","default":30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number","default":1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number","default":1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color","default":"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color","default":"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color","default":"#000000",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color","default":"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number","default":0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number","default":0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number","default":0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number","default":0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number","default":0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},"default":"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number","default":300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number","default":335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number","default":.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color","default":"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color","default":"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color","default":"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color","default":"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"string",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number","default":300,minimum:0,units:"milliseconds"},delay:{type:"number","default":0,minimum:0,units:"milliseconds"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},"default":"visible","property-type":"constant"}},"function":{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number","default":1,minimum:0},property:{type:"string","default":"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},"default":"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},"default":"rgb"},"default":{type:"*",required:!1}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number","default":1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color","default":"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,"default":[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},"default":"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"string",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"fill-extrusion-height":{type:"number","default":0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number","default":0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}}};u=function(n,t,i,r){this.message=(n?n+": ":"")+i;r&&(this.identifier=r);null!=t&&t.__line__&&(this.line=t.__line__)};gt=function(n){function t(t,i){n.call(this,i);this.message=i;this.key=t}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t}(Error);vu=function(n,t){var i,r;for(void 0===t&&(t=[]),this.parent=n,this.bindings={},i=0,r=t;i<r.length;i+=1){var u=r[i],f=u[0],e=u[1];this.bindings[f]=e}};vu.prototype.concat=function(n){return new vu(this,n)};vu.prototype.get=function(n){if(this.bindings[n])return this.bindings[n];if(this.parent)return this.parent.get(n);throw new Error(n+" not found in scope.");};vu.prototype.has=function(n){return!!this.bindings[n]||!!this.parent&&this.parent.has(n)};var vv={kind:"null"},r={kind:"number"},h={kind:"string"},s={kind:"boolean"},nu={kind:"color"},yu={kind:"object"},c={kind:"value"},vo={kind:"collator"},yv={kind:"formatted"};pv=[vv,r,h,s,nu,yv,yu,ni(c)];yh=iv(function(n,t){function i(n){return(n=Math.round(n))<0?0:n>255?255:n}function o(n){return n<0?0:n>1?1:n}function u(n){return"%"===n[n.length-1]?i(parseFloat(n)/100*255):i(parseInt(n))}function r(n){return"%"===n[n.length-1]?o(parseFloat(n)/100):o(parseFloat(n))}function f(n,t,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?n+(t-n)*i*6:2*i<1?t:3*i<2?n+(t-n)*(2/3-i)*6:n}var e={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};try{t.parseCSSColor=function(n){var t,o=n.replace(/ /g,"").toLowerCase(),h,v;if(o in e)return e[o].slice();if("#"===o[0])return 4===o.length?(t=parseInt(o.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===o.length&&(t=parseInt(o.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;if(h=o.indexOf("("),v=o.indexOf(")"),-1!==h&&v+1===o.length){var b=o.substr(0,h),s=o.substr(h+1,v-(h+1)).split(","),l=1;switch(b){case"rgba":if(4!==s.length)return null;l=r(s.pop());case"rgb":return 3!==s.length?null:[u(s[0]),u(s[1]),u(s[2]),l];case"hsla":if(4!==s.length)return null;l=r(s.pop());case"hsl":if(3!==s.length)return null;var y=(parseFloat(s[0])%360+360)%360/360,p=r(s[1]),c=r(s[2]),a=c<=.5?c*(p+1):c+p-c*p,w=2*c-a;return[i(255*f(w,a,y+1/3)),i(255*f(w,a,y)),i(255*f(w,a,y-1/3)),l];default:return null}}return null}}catch(n){}}).parseCSSColor;l=function(n,t,i,r){void 0===r&&(r=1);this.r=n;this.g=t;this.b=i;this.a=r};l.parse=function(n){if(n){if(n instanceof l)return n;if("string"==typeof n){var t=yh(n);if(t)return new l(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3])}}};l.prototype.toString=function(){var n=this.toArray(),t=n[0],i=n[1],r=n[2],u=n[3];return"rgba("+Math.round(t)+","+Math.round(i)+","+Math.round(r)+","+u+")"};l.prototype.toArray=function(){var t=this.r,i=this.g,r=this.b,n=this.a;return 0===n?[0,0,0,0]:[255*t/n,255*i/n,255*r/n,n]};l.black=new l(0,0,0,1);l.white=new l(1,1,1,1);l.transparent=new l(0,0,0,0);wu=function(n,t,i){this.sensitivity=n?t?"variant":"case":t?"accent":"base";this.locale=i;this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};wu.prototype.compare=function(n,t){return this.collator.compare(n,t)};wu.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};rr=function(n,t,i){this.type=vo;this.locale=i;this.caseSensitive=n;this.diacriticSensitive=t};rr.parse=function(n,t){var i,r,u,f;return 2!==n.length?t.error("Expected one argument."):(i=n[1],"object"!=typeof i||Array.isArray(i))?t.error("Collator options argument must be an object."):(r=t.parse(void 0!==i["case-sensitive"]&&i["case-sensitive"],1,s),!r)?null:(u=t.parse(void 0!==i["diacritic-sensitive"]&&i["diacritic-sensitive"],1,s),!u)?null:(f=null,i.locale&&!(f=t.parse(i.locale,1,h))?null:new rr(r,u,f))};rr.prototype.evaluate=function(n){return new wu(this.caseSensitive.evaluate(n),this.diacriticSensitive.evaluate(n),this.locale?this.locale.evaluate(n):null)};rr.prototype.eachChild=function(n){n(this.caseSensitive);n(this.diacriticSensitive);this.locale&&n(this.locale)};rr.prototype.possibleOutputs=function(){return[void 0]};rr.prototype.serialize=function(){var n={};return n["case-sensitive"]=this.caseSensitive.serialize(),n["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(n.locale=this.locale.serialize()),["collator",n]};ph=function(n,t,i){this.text=n;this.scale=t;this.fontStack=i};bt=function(n){this.sections=n};bt.prototype.toString=function(){return this.sections.map(function(n){return n.text}).join("")};bt.prototype.serialize=function(){for(var n,u,t=["format"],i=0,r=this.sections;i<r.length;i+=1)n=r[i],t.push(n.text),u=n.fontStack?["literal",n.fontStack.split(",")]:null,t.push({"text-font":u,"font-scale":n.scale});return t};pr=function(n){this.type=yv;this.sections=n};pr.parse=function(n,t){var o,u,f,e,i,s,l;if(n.length<3)return t.error("Expected at least two arguments.");if((n.length-1)%2!=0)return t.error("Expected an even number of arguments.");for(o=[],u=1;u<n.length-1;u+=2){if(f=t.parse(n[u],1,c),!f)return null;if(e=f.type.kind,"string"!==e&&"value"!==e&&"null"!==e)return t.error("Formatted text type must be 'string', 'value', or 'null'.");if(i=n[u+1],"object"!=typeof i||Array.isArray(i))return t.error("Format options argument must be an object.");if((s=null,i["font-scale"]&&!(s=t.parse(i["font-scale"],1,r)))||(l=null,i["text-font"]&&!(l=t.parse(i["text-font"],1,ni(h)))))return null;o.push({text:f,scale:s,font:l})}return new pr(o)};pr.prototype.evaluate=function(n){return new bt(this.sections.map(function(t){return new ph(t.text.evaluate(n)||"",t.scale?t.scale.evaluate(n):null,t.font?t.font.evaluate(n).join(","):null)}))};pr.prototype.eachChild=function(n){for(var t,i=0,r=this.sections;i<r.length;i+=1)t=r[i],n(t.text),t.scale&&n(t.scale),t.font&&n(t.font)};pr.prototype.possibleOutputs=function(){return[void 0]};pr.prototype.serialize=function(){for(var n,t,i=["format"],r=0,u=this.sections;r<u.length;r+=1)n=u[r],i.push(n.text.serialize()),t={},n.scale&&(t["font-scale"]=n.scale.serialize()),n.font&&(t["text-font"]=n.font.serialize()),i.push(t);return i};ti=function(n,t){this.type=n;this.value=t};ti.parse=function(n,t){if(2!==n.length)return t.error("'literal' expression requires exactly one argument, but found "+(n.length-1)+" instead.");if(!function n(t){var i,r,u;if(null===t||"string"==typeof t||"boolean"==typeof t||"number"==typeof t||t instanceof l||t instanceof wu)return!0;if(Array.isArray(t)){for(i=0,r=t;i<r.length;i+=1)if(!n(r[i]))return!1;return!0}if("object"==typeof t){for(u in t)if(!n(t[u]))return!1;return!0}return!1}(n[1]))return t.error("invalid value");var u=n[1],r=st(u),i=t.expectedType;return"array"!==r.kind||0!==r.N||!i||"array"!==i.kind||"number"==typeof i.N&&0!==i.N||(r=i),new ti(r,u)};ti.prototype.evaluate=function(){return this.value};ti.prototype.eachChild=function(){};ti.prototype.possibleOutputs=function(){return[this.value]};ti.prototype.serialize=function(){return"array"===this.type.kind||"object"===this.type.kind?["literal",this.value]:this.value instanceof l?["rgba"].concat(this.value.toArray()):this.value instanceof bt?this.value.serialize():this.value};rt=function(n){this.name="ExpressionEvaluationError";this.message=n};rt.prototype.toJSON=function(){return this.message};bv={string:h,number:r,boolean:s,object:yu};ht=function(n,t){this.type=n;this.args=t};ht.parse=function(n,t){var r;if(n.length<2)return t.error("Expected at least one argument.");for(var f=n[0],e=bv[f],u=[],i=1;i<n.length;i++){if(r=t.parse(n[i],i,c),!r)return null;u.push(r)}return new ht(e,u)};ht.prototype.evaluate=function(n){for(var i,t=0;t<this.args.length;t++){if(i=this.args[t].evaluate(n),!pu(this.type,st(i)))return i;if(t===this.args.length-1)throw new rt("Expected value to be of type "+g(this.type)+", but found "+g(st(i))+" instead.");}return null};ht.prototype.eachChild=function(n){this.args.forEach(n)};ht.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.args.map(function(n){return n.possibleOutputs()}));var n};ht.prototype.serialize=function(){return[this.type.kind].concat(this.args.map(function(n){return n.serialize()}))};wh={string:h,number:r,boolean:s};hi=function(n,t){this.type=n;this.input=t};hi.parse=function(n,t){var r,f,i,e,u;if(n.length<2||n.length>4)return t.error("Expected 1, 2, or 3 arguments, but found "+(n.length-1)+" instead.");if(n.length>2){if(i=n[1],"string"!=typeof i||!(i in wh))return t.error('The item type argument of "array" must be one of string, number, boolean',1);r=wh[i]}else r=c;if(n.length>3){if("number"!=typeof n[2]||n[2]<0||n[2]!==Math.floor(n[2]))return t.error('The length argument to "array" must be a positive integer literal',2);f=n[2]}return e=ni(r,f),u=t.parse(n[n.length-1],n.length-1,c),u?new hi(e,u):null};hi.prototype.evaluate=function(n){var t=this.input.evaluate(n);if(pu(this.type,st(t)))throw new rt("Expected value to be of type "+g(this.type)+", but found "+g(st(t))+" instead.");return t};hi.prototype.eachChild=function(n){n(this.input)};hi.prototype.possibleOutputs=function(){return this.input.possibleOutputs()};hi.prototype.serialize=function(){var n=["array"],t=this.type.itemType,i;return("string"===t.kind||"number"===t.kind||"boolean"===t.kind)&&(n.push(t.kind),i=this.type.N,"number"==typeof i&&n.push(i)),n.push(this.input.serialize()),n};kv={"to-number":r,"to-color":nu};kt=function(n,t){this.type=n;this.args=t};kt.parse=function(n,t){var r;if(n.length<2)return t.error("Expected at least one argument.");for(var f=n[0],e=kv[f],u=[],i=1;i<n.length;i++){if(r=t.parse(n[i],i,c),!r)return null;u.push(r)}return new kt(e,u)};kt.prototype.evaluate=function(n){var t,f,r,e,o,i,u,s,a;if("color"===this.type.kind){for(r=0,e=this.args;r<e.length;r+=1)if(f=null,"string"==typeof(t=e[r].evaluate(n))){if(o=n.parseColor(t),o)return o}else if(Array.isArray(t)&&!(f=t.length<3||t.length>4?"Invalid rbga value "+JSON.stringify(t)+": expected an array containing either three or four numeric values.":wv(t[0],t[1],t[2],t[3])))return new l(t[0]/255,t[1]/255,t[2]/255,t[3]);throw new rt(f||"Could not parse color from value '"+("string"==typeof t?t:JSON.stringify(t))+"'");}if("formatted"===this.type.kind){for(u=0,s=this.args;u<s.length;u+=1)if("string"==typeof(i=s[u].evaluate(n)))return new bt([new ph(i,null,null)]);throw new rt("Could not parse formatted text from value '"+("string"==typeof i?i:JSON.stringify(i))+"'");}for(var h=null,c=0,v=this.args;c<v.length;c+=1)if(null!==(h=v[c].evaluate(n))&&(a=Number(h),!isNaN(a)))return a;throw new rt("Could not convert "+JSON.stringify(h)+" to number.");};kt.prototype.eachChild=function(n){this.args.forEach(n)};kt.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.args.map(function(n){return n.possibleOutputs()}));var n};kt.prototype.serialize=function(){var n=["to-"+this.type.kind];return this.eachChild(function(t){n.push(t.serialize())}),n};dv=["Unknown","Point","LineString","Polygon"];wr=function(){this._parseColorCache={}};wr.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null};wr.prototype.geometryType=function(){return this.feature?"number"==typeof this.feature.type?dv[this.feature.type]:this.feature.type:null};wr.prototype.properties=function(){return this.feature&&this.feature.properties||{}};wr.prototype.parseColor=function(n){var t=this._parseColorCache[n];return t||(t=this._parseColorCache[n]=l.parse(n)),t};nt=function(n,t,i,r){this.name=n;this.type=t;this._evaluate=i;this.args=r};nt.prototype.evaluate=function(n){return this._evaluate(n,this.args)};nt.prototype.eachChild=function(n){this.args.forEach(n)};nt.prototype.possibleOutputs=function(){return[void 0]};nt.prototype.serialize=function(){return[this.name].concat(this.args.map(function(n){return n.serialize()}))};nt.parse=function(n,t){var h=n[0],r=nt.definitions[h],e,d,tt,v;if(!r)return t.error('Unknown expression "'+h+'". If you wanted a literal array, use ["literal", [...]].',0);for(var it=Array.isArray(r)?r[0]:r.type,y=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,o=y.filter(function(t){var i=t[0];return!Array.isArray(i)||i.length===n.length-1}),f=null,c=0,p=o;c<p.length;c+=1){var w=p[c],i=w[0],rt=w[1];f=new fr(t.registry,t.path,null,t.scope);for(var u=[],b=!1,s=1;s<n.length;s++){var ut=n[s],ft=Array.isArray(i)?i[s-1]:i.type,k=f.parse(ut,1+u.length,ft);if(!k){b=!0;break}u.push(k)}if(!b)if(Array.isArray(i)&&i.length!==u.length)f.error("Expected "+i.length+" arguments, but found "+u.length+" instead.");else{for(e=0;e<u.length;e++)d=Array.isArray(i)?i[e]:i.type,tt=u[e],f.concat(e+1).checkSubtype(d,tt.type);if(0===f.errors.length)return new nt(h,it,rt,u)}}if(1===o.length)t.errors.push.apply(t.errors,f.errors);else{for(var et=(o.length?o:y).map(function(n){var t,i=n[0];return t=i,Array.isArray(t)?"("+t.map(g).join(", ")+")":"("+g(t.type)+"...)"}).join(" | "),l=[],a=1;a<n.length;a++){if(v=t.parse(n[a],1+l.length),!v)return null;l.push(g(v.type))}t.error("Expected arguments of type "+et+", but found ("+l.join(", ")+") instead.")}return null};nt.register=function(n,t){for(var i in nt.definitions=t,t)n[i]=nt};ur=function(n,t){this.type=t.type;this.name=n;this.boundExpression=t};ur.parse=function(n,t){if(2!==n.length||"string"!=typeof n[1])return t.error("'var' expression requires exactly one string literal argument.");var i=n[1];return t.scope.has(i)?new ur(i,t.scope.get(i)):t.error('Unknown variable "'+i+'". Make sure "'+i+'" has been bound in an enclosing "let" expression before using it.',1)};ur.prototype.evaluate=function(n){return this.boundExpression.evaluate(n)};ur.prototype.eachChild=function(){};ur.prototype.possibleOutputs=function(){return[void 0]};ur.prototype.serialize=function(){return["var",this.name]};fr=function(n,t,i,r,u){void 0===t&&(t=[]);void 0===r&&(r=new vu);void 0===u&&(u=[]);this.registry=n;this.path=t;this.key=t.map(function(n){return"["+n+"]"}).join("");this.scope=r;this.errors=u;this.expectedType=i};fr.prototype.parse=function(n,t,i,r,u){return void 0===u&&(u={}),t?this.concat(t,i,r)._parse(n,u):this._parse(n,u)};fr.prototype._parse=function(n,t){var f,e,i,r,u,o;if(null!==n&&"string"!=typeof n&&"boolean"!=typeof n&&"number"!=typeof n||(n=["literal",n]),Array.isArray(n)){if(0===n.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');if(f=n[0],"string"!=typeof f)return this.error("Expression name must be a string, but found "+typeof f+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;if(e=this.registry[f],e){if(i=e.parse(n,this),!i)return null;if(this.expectedType)if(r=this.expectedType,u=i.type,"string"!==r.kind&&"number"!==r.kind&&"boolean"!==r.kind&&"object"!==r.kind||"value"!==u.kind)if("array"===r.kind&&"value"===u.kind)t.omitTypeAnnotations||(i=new hi(r,i));else if("color"!==r.kind||"value"!==u.kind&&"string"!==u.kind)if("formatted"!==r.kind||"value"!==u.kind&&"string"!==u.kind){if(this.checkSubtype(this.expectedType,i.type))return null}else t.omitTypeAnnotations||(i=new kt(r,[i]));else t.omitTypeAnnotations||(i=new kt(r,[i]));else t.omitTypeAnnotations||(i=new ht(r,[i]));if(!(i instanceof ti)&&function n(t){if(t instanceof ur)return n(t.boundExpression);if(t instanceof nt&&"error"===t.name||t instanceof rr)return!1;var r=t instanceof kt||t instanceof ht||t instanceof hi,i=!0;return(t.eachChild(function(t){i=r?i&&n(t):i&&t instanceof ti}),!i)?!1:bh(t)&&kh(t,["zoom","heatmap-density","line-progress","is-supported-script"])}(i)){o=new wr;try{i=new ti(i.type,i.evaluate(o))}catch(n){return this.error(n.message),null}}return i}return this.error('Unknown expression "'+f+'". If you wanted a literal array, use ["literal", [...]].',0)}return void 0===n?this.error("'undefined' value invalid. Use null instead."):"object"==typeof n?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof n+" instead.")};fr.prototype.concat=function(n,t,i){var r="number"==typeof n?this.path.concat(n):this.path,u=i?this.scope.concat(i):this.scope;return new fr(this.registry,r,t||null,u,this.errors)};fr.prototype.error=function(n){for(var r,i=[],t=arguments.length-1;t-->0;)i[t]=arguments[t+1];r=""+this.key+i.map(function(n){return"["+n+"]"}).join("");this.errors.push(new gt(r,n))};fr.prototype.checkSubtype=function(n,t){var i=pu(n,t);return i&&this.error(i),i};er=function(n,t,i){var r,u;for(this.type=n,this.input=t,this.labels=[],this.outputs=[],r=0,u=i;r<u.length;r+=1){var f=u[r],e=f[0],o=f[1];this.labels.push(e);this.outputs.push(o)}};er.parse=function(n,t){var s=n[1],e=n.slice(2),u,f,i,o;if(n.length-1<4)return t.error("Expected at least 4 arguments, but found only "+(n.length-1)+".");if((n.length-1)%2!=0)return t.error("Expected an even number of arguments.");if(!(s=t.parse(s,1,r)))return null;for(u=[],f=null,t.expectedType&&"value"!==t.expectedType.kind&&(f=t.expectedType),e.unshift(-1/0),i=0;i<e.length;i+=2){var h=e[i],l=e[i+1],c=i+1,a=i+2;if("number"!=typeof h)return t.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',c);if(u.length&&u[u.length-1][0]>=h)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',c);if(o=t.parse(l,a,f),!o)return null;f=f||o.type;u.push([h,o])}return new er(f,s,u)};er.prototype.evaluate=function(n){var t=this.labels,i=this.outputs,r,u;return 1===t.length?i[0].evaluate(n):(r=this.input.evaluate(n),r<=t[0])?i[0].evaluate(n):(u=t.length,r>=t[u-1]?i[u-1].evaluate(n):i[gv(t,r)].evaluate(n))};er.prototype.eachChild=function(n){n(this.input);for(var t=0,i=this.outputs;t<i.length;t+=1)n(i[t])};er.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.outputs.map(function(n){return n.possibleOutputs()}));var n};er.prototype.serialize=function(){for(var t=["step",this.input.serialize()],n=0;n<this.labels.length;n++)n>0&&t.push(this.labels[n]),t.push(this.outputs[n].serialize());return t};ue=Object.freeze({number:ct,color:function(n,t,i){return new l(ct(n.r,t.r,i),ct(n.g,t.g,i),ct(n.b,t.b,i),ct(n.a,t.a,i))},array:function(n,t,i){return n.map(function(n,r){return ct(n,t[r],i)})}});ut=function(n,t,i,r){var u,f;for(this.type=n,this.interpolation=t,this.input=i,this.labels=[],this.outputs=[],u=0,f=r;u<f.length;u+=1){var e=f[u],o=e[0],s=e[1];this.labels.push(o);this.outputs.push(s)}};ut.interpolationFactor=function(n,t,i,r){var f=0,u;return"exponential"===n.name?f=dh(t,n.base,i,r):"linear"===n.name?f=dh(t,1,i,r):"cubic-bezier"===n.name&&(u=n.controlPoints,f=new rv(u[0],u[1],u[2],u[3]).solve(dh(t,1,i,r))),f};ut.parse=function(n,t){var i=n[1],h=n[2],c=n.slice(3),l,o,e,u,f,s;if(!Array.isArray(i)||0===i.length)return t.error("Expected an interpolation type expression.",1);if("linear"===i[0])i={name:"linear"};else if("exponential"===i[0]){if(l=i[1],"number"!=typeof l)return t.error("Exponential interpolation requires a numeric base.",1,1);i={name:"exponential",base:l}}else{if("cubic-bezier"!==i[0])return t.error("Unknown interpolation type "+String(i[0]),1,0);if(o=i.slice(1),4!==o.length||o.some(function(n){return"number"!=typeof n||n<0||n>1}))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);i={name:"cubic-bezier",controlPoints:o}}if(n.length-1<4)return t.error("Expected at least 4 arguments, but found only "+(n.length-1)+".");if((n.length-1)%2!=0)return t.error("Expected an even number of arguments.");if(!(h=t.parse(h,2,r)))return null;for(e=[],u=null,t.expectedType&&"value"!==t.expectedType.kind&&(u=t.expectedType),f=0;f<c.length;f+=2){var a=c[f],y=c[f+1],v=f+3,p=f+4;if("number"!=typeof a)return t.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',v);if(e.length&&e[e.length-1][0]>=a)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',v);if(s=t.parse(y,p,u),!s)return null;u=u||s.type;e.push([a,s])}return"number"===u.kind||"color"===u.kind||"array"===u.kind&&"number"===u.itemType.kind&&"number"==typeof u.N?new ut(u,i,h,e):t.error("Type "+g(u)+" is not interpolatable.")};ut.prototype.evaluate=function(n){var t=this.labels,r=this.outputs,i,f;if(1===t.length||(i=this.input.evaluate(n),i<=t[0]))return r[0].evaluate(n);if(f=t.length,i>=t[f-1])return r[f-1].evaluate(n);var u=gv(t,i),e=t[u],o=t[u+1],s=ut.interpolationFactor(this.interpolation,i,e,o),h=r[u].evaluate(n),c=r[u+1].evaluate(n);return ue[this.type.kind.toLowerCase()](h,c,s)};ut.prototype.eachChild=function(n){n(this.input);for(var t=0,i=this.outputs;t<i.length;t+=1)n(i[t])};ut.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.outputs.map(function(n){return n.possibleOutputs()}));var n};ut.prototype.serialize=function(){for(var t=["interpolate","linear"===this.interpolation.name?["linear"]:"exponential"===this.interpolation.name?1===this.interpolation.base?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier"].concat(this.interpolation.controlPoints),this.input.serialize()],n=0;n<this.labels.length;n++)t.push(this.labels[n],this.outputs[n].serialize());return t};or=function(n,t){this.type=n;this.args=t};or.parse=function(n,t){var i,r,s,f,h;if(n.length<2)return t.error("Expectected at least one argument.");i=null;r=t.expectedType;r&&"value"!==r.kind&&(i=r);for(var u=[],e=0,o=n.slice(1);e<o.length;e+=1){if(s=o[e],f=t.parse(s,1+u.length,i,void 0,{omitTypeAnnotations:!0}),!f)return null;i=i||f.type;u.push(f)}return h=r&&u.some(function(n){return pu(r,n.type)}),new or(h?c:i,u)};or.prototype.evaluate=function(n){for(var i=null,t=0,r=this.args;t<r.length;t+=1)if(null!==(i=r[t].evaluate(n)))break;return i};or.prototype.eachChild=function(n){this.args.forEach(n)};or.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.args.map(function(n){return n.possibleOutputs()}));var n};or.prototype.serialize=function(){var n=["coalesce"];return this.eachChild(function(t){n.push(t.serialize())}),n};sr=function(n,t){this.type=t.type;this.bindings=[].concat(n);this.result=t};sr.prototype.evaluate=function(n){return this.result.evaluate(n)};sr.prototype.eachChild=function(n){for(var t=0,i=this.bindings;t<i.length;t+=1)n(i[t][1]);n(this.result)};sr.parse=function(n,t){var u,i,r,f,e;if(n.length<4)return t.error("Expected at least 3 arguments, but found "+(n.length-1)+" instead.");for(u=[],i=1;i<n.length-1;i+=2){if(r=n[i],"string"!=typeof r)return t.error("Expected string, but found "+typeof r+" instead.",i);if(/[^a-zA-Z0-9_]/.test(r))return t.error("Variable names must contain only alphanumeric characters or '_'.",i);if(f=t.parse(n[i+1],i+1),!f)return null;u.push([r,f])}return e=t.parse(n[n.length-1],n.length-1,void 0,u),e?new sr(u,e):null};sr.prototype.possibleOutputs=function(){return this.result.possibleOutputs()};sr.prototype.serialize=function(){for(var n=["let"],t=0,i=this.bindings;t<i.length;t+=1){var r=i[t],u=r[0],f=r[1];n.push(u,f.serialize())}return n.push(this.result.serialize()),n};br=function(n,t,i){this.type=n;this.index=t;this.input=i};br.parse=function(n,t){var u,i,f;return 3!==n.length?t.error("Expected 2 arguments, but found "+(n.length-1)+" instead."):(u=t.parse(n[1],1,r),i=t.parse(n[2],2,ni(t.expectedType||c)),!u||!i)?null:(f=i.type,new br(f.itemType,u,i))};br.prototype.evaluate=function(n){var t=this.index.evaluate(n),i=this.input.evaluate(n);if(t<0)throw new rt("Array index out of bounds: "+t+" < 0.");if(t>=i.length)throw new rt("Array index out of bounds: "+t+" > "+(i.length-1)+".");if(t!==Math.floor(t))throw new rt("Array index must be an integer, but found "+t+" instead.");return i[t]};br.prototype.eachChild=function(n){n(this.index);n(this.input)};br.prototype.possibleOutputs=function(){return[void 0]};br.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};kr=function(n,t,i,r,u,f){this.inputType=n;this.type=t;this.input=i;this.cases=r;this.outputs=u;this.otherwise=f};kr.parse=function(n,t){var o,u,e,w,r,h,y,i,l,s,p;if(n.length<5)return t.error("Expected at least 4 arguments, but found only "+(n.length-1)+".");if(n.length%2!=1)return t.error("Expected an even number of arguments.");t.expectedType&&"value"!==t.expectedType.kind&&(u=t.expectedType);for(var a={},v=[],f=2;f<n.length-1;f+=2){if(e=n[f],w=n[f+1],Array.isArray(e)||(e=[e]),r=t.concat(f),0===e.length)return r.error("Expected at least one branch label.");for(h=0,y=e;h<y.length;h+=1){if(i=y[h],"number"!=typeof i&&"string"!=typeof i)return r.error("Branch labels must be numbers or strings.");if("number"==typeof i&&Math.abs(i)>Number.MAX_SAFE_INTEGER)return r.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if("number"==typeof i&&Math.floor(i)!==i)return r.error("Numeric branch labels must be integer values.");if(o){if(r.checkSubtype(o,st(i)))return null}else o=st(i);if(void 0!==a[String(i)])return r.error("Branch labels must be unique.");a[String(i)]=v.length}if(l=t.parse(w,f,u),!l)return null;u=u||l.type;v.push(l)}return(s=t.parse(n[1],1,c),!s)?null:(p=t.parse(n[n.length-1],n.length-1,u),p?"value"!==s.type.kind&&t.concat(1).checkSubtype(o,s.type)?null:new kr(o,u,s,a,v,p):null)};kr.prototype.evaluate=function(n){var t=this.input.evaluate(n);return(st(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(n)};kr.prototype.eachChild=function(n){n(this.input);this.outputs.forEach(n);n(this.otherwise)};kr.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.outputs.map(function(n){return n.possibleOutputs()})).concat(this.otherwise.possibleOutputs());var n};kr.prototype.serialize=function(){for(var n,f,t=this,i=["match",this.input.serialize()],r=[],s={},u=0,h=Object.keys(this.cases).sort();u<h.length;u+=1)n=h[u],f=s[t.cases[n]],void 0===f?(s[t.cases[n]]=r.length,r.push([t.cases[n],[n]])):r[f][1].push(n);for(var c=function(n){return"number"===t.inputType.kind?Number(n):n},e=0,l=r;e<l.length;e+=1){var a=l[e],v=a[0],o=a[1];1===o.length?i.push(c(o[0])):i.push(o.map(c));i.push(t.outputs[v].serialize())}return i.push(this.otherwise.serialize()),i};dr=function(n,t,i){this.type=n;this.branches=t;this.otherwise=i};dr.parse=function(n,t){var r,f,i,e,u,o;if(n.length<4)return t.error("Expected at least 3 arguments, but found only "+(n.length-1)+".");if(n.length%2!=0)return t.error("Expected an odd number of arguments.");for(t.expectedType&&"value"!==t.expectedType.kind&&(r=t.expectedType),f=[],i=1;i<n.length-1;i+=2){if((e=t.parse(n[i],i,s),!e)||(u=t.parse(n[i+1],i+1,r),!u))return null;f.push([e,u]);r=r||u.type}return o=t.parse(n[n.length-1],n.length-1,r),o?new dr(r,f,o):null};dr.prototype.evaluate=function(n){for(var t=0,i=this.branches;t<i.length;t+=1){var r=i[t],u=r[0],f=r[1];if(u.evaluate(n))return f.evaluate(n)}return this.otherwise.evaluate(n)};dr.prototype.eachChild=function(n){for(var t=0,i=this.branches;t<i.length;t+=1){var r=i[t],u=r[0],f=r[1];n(u);n(f)}n(this.otherwise)};dr.prototype.possibleOutputs=function(){return(n=[]).concat.apply(n,this.branches.map(function(n){return n[0],n[1].possibleOutputs()})).concat(this.otherwise.possibleOutputs());var n};dr.prototype.serialize=function(){var n=["case"];return this.eachChild(function(t){n.push(t.serialize())}),n};var sk=bu("==",function(n,t,i){return t===i},ty),hk=bu("!=",function(n,t,i){return t!==i},function(n,t,i,r){return!ty(0,t,i,r)}),ck=bu("<",function(n,t,i){return t<i},function(n,t,i,r){return r.compare(t,i)<0}),lk=bu(">",function(n,t,i){return t>i},function(n,t,i,r){return r.compare(t,i)>0}),ak=bu("<=",function(n,t,i){return t<=i},function(n,t,i,r){return r.compare(t,i)<=0}),vk=bu(">=",function(n,t,i){return t>=i},function(n,t,i,r){return r.compare(t,i)>=0}),tu=function(n){this.type=r;this.input=n};tu.parse=function(n,t){if(2!==n.length)return t.error("Expected 1 argument, but found "+(n.length-1)+" instead.");var i=t.parse(n[1],1);return i?"array"!==i.type.kind&&"string"!==i.type.kind&&"value"!==i.type.kind?t.error("Expected argument of type string or array, but found "+g(i.type)+" instead."):new tu(i):null};tu.prototype.evaluate=function(n){var t=this.input.evaluate(n);if("string"==typeof t||Array.isArray(t))return t.length;throw new rt("Expected value to be of type string or array, but found "+g(st(t))+" instead.");};tu.prototype.eachChild=function(n){n(this.input)};tu.prototype.possibleOutputs=function(){return[void 0]};tu.prototype.serialize=function(){var n=["length"];return this.eachChild(function(t){n.push(t.serialize())}),n};iu={"==":sk,"!=":hk,">":lk,"<":ck,">=":vk,"<=":ak,array:hi,at:br,boolean:ht,"case":dr,coalesce:or,collator:rr,format:pr,interpolate:ut,length:tu,"let":sr,literal:ti,match:kr,number:ht,object:ht,step:er,string:ht,"to-color":kt,"to-number":kt,"var":ur};nt.register(iu,{error:[{kind:"error"},[h],function(n,t){var i=t[0];throw new rt(i.evaluate(n));}],"typeof":[h,[c],function(n,t){return g(st(t[0].evaluate(n)))}],"to-string":[h,[c],function(n,t){var i=t[0],r=typeof(i=i.evaluate(n));return null===i?"":"string"===r||"number"===r||"boolean"===r?String(i):i instanceof l||i instanceof bt?i.toString():JSON.stringify(i)}],"to-boolean":[s,[c],function(n,t){var i=t[0];return Boolean(i.evaluate(n))}],"to-rgba":[ni(r,4),[nu],function(n,t){return t[0].evaluate(n).toArray()}],rgb:[nu,[r,r,r],iy],rgba:[nu,[r,r,r,r],iy],has:{type:s,overloads:[[[h],function(n,t){return ry(t[0].evaluate(n),n.properties())}],[[h,yu],function(n,t){var i=t[0],r=t[1];return ry(i.evaluate(n),r.evaluate(n))}]]},get:{type:c,overloads:[[[h],function(n,t){return gh(t[0].evaluate(n),n.properties())}],[[h,yu],function(n,t){var i=t[0],r=t[1];return gh(i.evaluate(n),r.evaluate(n))}]]},"feature-state":[c,[h],function(n,t){return gh(t[0].evaluate(n),n.featureState||{})}],properties:[yu,[],function(n){return n.properties()}],"geometry-type":[h,[],function(n){return n.geometryType()}],id:[c,[],function(n){return n.id()}],zoom:[r,[],function(n){return n.globals.zoom}],"heatmap-density":[r,[],function(n){return n.globals.heatmapDensity||0}],"line-progress":[r,[],function(n){return n.globals.lineProgress||0}],"+":[r,ru(r),function(n,t){for(var r=0,i=0,u=t;i<u.length;i+=1)r+=u[i].evaluate(n);return r}],"*":[r,ru(r),function(n,t){for(var r=1,i=0,u=t;i<u.length;i+=1)r*=u[i].evaluate(n);return r}],"-":{type:r,overloads:[[[r,r],function(n,t){var i=t[0],r=t[1];return i.evaluate(n)-r.evaluate(n)}],[[r],function(n,t){return-t[0].evaluate(n)}]]},"/":[r,[r,r],function(n,t){var i=t[0],r=t[1];return i.evaluate(n)/r.evaluate(n)}],"%":[r,[r,r],function(n,t){var i=t[0],r=t[1];return i.evaluate(n)%r.evaluate(n)}],ln2:[r,[],function(){return Math.LN2}],pi:[r,[],function(){return Math.PI}],e:[r,[],function(){return Math.E}],"^":[r,[r,r],function(n,t){var i=t[0],r=t[1];return Math.pow(i.evaluate(n),r.evaluate(n))}],sqrt:[r,[r],function(n,t){var i=t[0];return Math.sqrt(i.evaluate(n))}],log10:[r,[r],function(n,t){var i=t[0];return Math.log10(i.evaluate(n))}],ln:[r,[r],function(n,t){var i=t[0];return Math.log(i.evaluate(n))}],log2:[r,[r],function(n,t){var i=t[0];return Math.log2(i.evaluate(n))}],sin:[r,[r],function(n,t){var i=t[0];return Math.sin(i.evaluate(n))}],cos:[r,[r],function(n,t){var i=t[0];return Math.cos(i.evaluate(n))}],tan:[r,[r],function(n,t){var i=t[0];return Math.tan(i.evaluate(n))}],asin:[r,[r],function(n,t){var i=t[0];return Math.asin(i.evaluate(n))}],acos:[r,[r],function(n,t){var i=t[0];return Math.acos(i.evaluate(n))}],atan:[r,[r],function(n,t){var i=t[0];return Math.atan(i.evaluate(n))}],min:[r,ru(r),function(n,t){return Math.min.apply(Math,t.map(function(t){return t.evaluate(n)}))}],max:[r,ru(r),function(n,t){return Math.max.apply(Math,t.map(function(t){return t.evaluate(n)}))}],abs:[r,[r],function(n,t){var i=t[0];return Math.abs(i.evaluate(n))}],round:[r,[r],function(n,t){var i=t[0].evaluate(n);return i<0?-Math.round(-i):Math.round(i)}],floor:[r,[r],function(n,t){var i=t[0];return Math.floor(i.evaluate(n))}],ceil:[r,[r],function(n,t){var i=t[0];return Math.ceil(i.evaluate(n))}],"filter-==":[s,[h,c],function(n,t){var i=t[0],r=t[1];return n.properties()[i.value]===r.value}],"filter-id-==":[s,[c],function(n,t){var i=t[0];return n.id()===i.value}],"filter-type-==":[s,[h],function(n,t){var i=t[0];return n.geometryType()===i.value}],"filter-<":[s,[h,c],function(n,t){var u=t[0],f=t[1],i=n.properties()[u.value],r=f.value;return typeof i==typeof r&&i<r}],"filter-id-<":[s,[c],function(n,t){var u=t[0],i=n.id(),r=u.value;return typeof i==typeof r&&i<r}],"filter->":[s,[h,c],function(n,t){var u=t[0],f=t[1],i=n.properties()[u.value],r=f.value;return typeof i==typeof r&&i>r}],"filter-id->":[s,[c],function(n,t){var u=t[0],i=n.id(),r=u.value;return typeof i==typeof r&&i>r}],"filter-<=":[s,[h,c],function(n,t){var u=t[0],f=t[1],i=n.properties()[u.value],r=f.value;return typeof i==typeof r&&i<=r}],"filter-id-<=":[s,[c],function(n,t){var u=t[0],i=n.id(),r=u.value;return typeof i==typeof r&&i<=r}],"filter->=":[s,[h,c],function(n,t){var u=t[0],f=t[1],i=n.properties()[u.value],r=f.value;return typeof i==typeof r&&i>=r}],"filter-id->=":[s,[c],function(n,t){var u=t[0],i=n.id(),r=u.value;return typeof i==typeof r&&i>=r}],"filter-has":[s,[c],function(n,t){return t[0].value in n.properties()}],"filter-has-id":[s,[],function(n){return null!==n.id()}],"filter-type-in":[s,[ni(h)],function(n,t){return t[0].value.indexOf(n.geometryType())>=0}],"filter-id-in":[s,[ni(c)],function(n,t){return t[0].value.indexOf(n.id())>=0}],"filter-in-small":[s,[h,ni(c)],function(n,t){var i=t[0];return t[1].value.indexOf(n.properties()[i.value])>=0}],"filter-in-large":[s,[h,ni(c)],function(n,t){var r=t[0],i=t[1];return function(n,t,i,r){for(;i<=r;){var u=i+r>>1;if(t[u]===n)return!0;t[u]>n?r=u-1:i=u+1}return!1}(n.properties()[r.value],i.value,0,i.value.length-1)}],all:{type:s,overloads:[[[s,s],function(n,t){var i=t[0],r=t[1];return i.evaluate(n)&&r.evaluate(n)}],[ru(s),function(n,t){for(var i=0,r=t;i<r.length;i+=1)if(!r[i].evaluate(n))return!1;return!0}]]},any:{type:s,overloads:[[[s,s],function(n,t){var i=t[0],r=t[1];return i.evaluate(n)||r.evaluate(n)}],[ru(s),function(n,t){for(var i=0,r=t;i<r.length;i+=1)if(r[i].evaluate(n))return!0;return!1}]]},"!":[s,[s],function(n,t){return!t[0].evaluate(n)}],"is-supported-script":[s,[h],function(n,t){var r=t[0],i=n.globals&&n.globals.isSupportedScript;return!i||i(r.evaluate(n))}],upcase:[h,[h],function(n,t){return t[0].evaluate(n).toUpperCase()}],downcase:[h,[h],function(n,t){return t[0].evaluate(n).toLowerCase()}],concat:[h,ru(h),function(n,t){return t.map(function(t){return t.evaluate(n)}).join("")}],"resolved-locale":[h,[vo],function(n,t){return t[0].evaluate(n).resolvedLocale()}]});var ey=.95047,oy=1,sy=1.08883,hy=4/29,gu=6/29,cy=3*gu*gu,yk=gu*gu*gu,pk=Math.PI/180,wk=180/Math.PI;var bk={forward:ly,reverse:ay,interpolate:function(n,t,i){return{l:ct(n.l,t.l,i),a:ct(n.a,t.a,i),b:ct(n.b,t.b,i),alpha:ct(n.alpha,t.alpha,i)}}},kk={forward:function(n){var t=ly(n),f=t.l,i=t.a,r=t.b,u=Math.atan2(r,i)*wk;return{h:u<0?u+360:u,c:Math.sqrt(i*i+r*r),l:f,alpha:n.a}},reverse:function(n){var t=n.h*pk,i=n.c;return ay({l:n.l,a:Math.cos(t)*i,b:Math.sin(t)*i,alpha:n.alpha})},interpolate:function(n,t,i){return{h:function(n,t,i){var r=t-n;return n+i*(r>180||r<-180?r-360*Math.round(r/360):r)}(n.h,t.h,i),c:ct(n.c,t.c,i),l:ct(n.l,t.l,i),alpha:ct(n.alpha,t.alpha,i)}}},vy=Object.freeze({lab:bk,hcl:kk});ee=function(n,t){var i;this.expression=n;this._warningHistory={};this._defaultValue="color"===(i=t).type&&po(i.default)?new l(0,0,0,0):"color"===i.type?l.parse(i.default)||null:void 0===i.default?null:i.default;"enum"===t.type&&(this._enumValues=t.values)};ee.prototype.evaluateWithoutErrorHandling=function(n,t,i){return this._evaluator||(this._evaluator=new wr),this._evaluator.globals=n,this._evaluator.feature=t,this._evaluator.featureState=i,this.expression.evaluate(this._evaluator)};ee.prototype.evaluate=function(n,t,i){this._evaluator||(this._evaluator=new wr);this._evaluator.globals=n;this._evaluator.feature=t;this._evaluator.featureState=i;try{var r=this.expression.evaluate(this._evaluator);if(null==r)return this._defaultValue;if(this._enumValues&&!(r in this._enumValues))throw new rt("Expected value to be one of "+Object.keys(this._enumValues).map(function(n){return JSON.stringify(n)}).join(", ")+", but found "+JSON.stringify(r)+" instead.");return r}catch(n){return this._warningHistory[n.message]||(this._warningHistory[n.message]=!0,"undefined"!=typeof console&&console.warn(n.message)),this._defaultValue}};oe=function(n,t){this.kind=n;this._styleExpression=t;this.isStateDependent="constant"!==n&&!yo(t.expression)};oe.prototype.evaluateWithoutErrorHandling=function(n,t,i){return this._styleExpression.evaluateWithoutErrorHandling(n,t,i)};oe.prototype.evaluate=function(n,t,i){return this._styleExpression.evaluate(n,t,i)};nf=function(n,t,i){this.kind=n;this.zoomStops=i.labels;this._styleExpression=t;this.isStateDependent="camera"!==n&&!yo(t.expression);i instanceof ut&&(this._interpolationType=i.interpolation)};nf.prototype.evaluateWithoutErrorHandling=function(n,t,i){return this._styleExpression.evaluateWithoutErrorHandling(n,t,i)};nf.prototype.evaluate=function(n,t,i){return this._styleExpression.evaluate(n,t,i)};nf.prototype.interpolationFactor=function(n,t,i){return this._interpolationType?ut.interpolationFactor(this._interpolationType,n,t,i):0};tf=function(n,t){this._parameters=n;this._specification=t;au(this,function n(t,i){var r,o,c,nt="color"===i.type,a=t.stops&&"object"==typeof t.stops[0][0],tt=a||void 0!==t.property,it=a||!tt,u=t.type||(nc(i)?"exponential":"interval"),s,v,y,h,f,k;if(nt&&((t=au({},t)).stops&&(t.stops=t.stops.map(function(n){return[n[0],l.parse(n[1])]})),t.default=t.default?l.parse(t.default):l.parse(i.default)),t.colorSpace&&"rgb"!==t.colorSpace&&!vy[t.colorSpace])throw new Error("Unknown color space: "+t.colorSpace);if("exponential"===u)r=yy;else if("interval"===u)r=nd;else if("categorical"===u){for(r=gk,o=Object.create(null),s=0,v=t.stops;s<v.length;s+=1)y=v[s],o[y[0]]=y[1];c=typeof t.stops[0][0]}else{if("identity"!==u)throw new Error('Unknown function type "'+u+'"');r=td}if(a){for(var e={},d=[],p=0;p<t.stops.length;p++)h=t.stops[p],f=h[0].zoom,void 0===e[f]&&(e[f]={zoom:f,type:t.type,property:t.property,"default":t.default,stops:[]},d.push(f)),e[f].stops.push([h[0].value,h[1]]);for(var w=[],b=0,g=d;b<g.length;b+=1)k=g[b],w.push([e[k].zoom,n(e[k],i)]);return{kind:"composite",interpolationFactor:ut.interpolationFactor.bind(void 0,{name:"linear"}),zoomStops:w.map(function(n){return n[0]}),evaluate:function(n,r){var u=n.zoom;return yy({stops:w,base:t.base},i,u).evaluate(u,r)}}}return it?{kind:"camera",interpolationFactor:"exponential"===u?ut.interpolationFactor.bind(void 0,{name:"exponential",base:void 0!==t.base?t.base:1}):function(){return 0},zoomStops:t.stops.map(function(n){return n[0]}),evaluate:function(n){var u=n.zoom;return r(t,i,u,o,c)}}:{kind:"source",evaluate:function(n,u){var f=u&&u.properties?u.properties[t.property]:void 0;return void 0===f?fe(t.default,i.default):r(t,i,f,o,c)}}}(this._parameters,this._specification))};tf.deserialize=function(n){return new tf(n._parameters,n._specification)};tf.serialize=function(n){return{_parameters:n._parameters,_specification:n._specification}};gy={type:"boolean","default":!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};vc={"*":function(){return[]},array:by,boolean:function(n){var t=n.value,r=n.key,i=a(t);return"boolean"!==i?[new u(r,t,"boolean expected, "+i+" found")]:[]},number:ky,color:function(n){var i=n.key,t=n.value,r=a(t);return"string"!==r?[new u(i,t,"color expected, "+r+" found")]:null===yh(t)?[new u(i,t,'color expected, "'+t+'" found')]:[]},constants:av,"enum":wo,filter:lc,"function":dy,layer:fp,object:ii,source:ep,light:op,string:ac,formatted:function(n){return 0===ac(n).length?[]:sc(n)}};ci.source=rf(ep);ci.light=rf(op);ci.layer=rf(fp);ci.filter=rf(lc);ci.paintProperty=rf(rp);ci.layoutProperty=rf(up);var hp=ci,ud=ci.light,fd=ci.paintProperty,ed=ci.layoutProperty;uf=cr;hr=3;cr.prototype.insert=function(n,t,i,r,u){this._forEachCell(t,i,r,u,this._insertCell,this.uid++);this.keys.push(n);this.bboxes.push(t);this.bboxes.push(i);this.bboxes.push(r);this.bboxes.push(u)};cr.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer.";};cr.prototype._insertCell=function(n,t,i,r,u,f){this.cells[u].push(f)};cr.prototype.query=function(n,t,i,r){var f=this.min,e=this.max,u;return n<=f&&t<=f&&e<=i&&e<=r?Array.prototype.slice.call(this.keys):(u=[],this._forEachCell(n,t,i,r,this._queryCell,u,{}),u)};cr.prototype._queryCell=function(n,t,i,r,u,f,e){var c=this.cells[u],o,s;if(null!==c)for(var a=this.keys,h=this.bboxes,l=0;l<c.length;l++)o=c[l],void 0===e[o]&&(s=4*o,n<=h[s+2]&&t<=h[s+3]&&i>=h[s+0]&&r>=h[s+1]?(e[o]=!0,f.push(a[o])):e[o]=!1)};cr.prototype._forEachCell=function(n,t,i,r,u,f,e){for(var o,h,c=this._convertToCellCoord(n),l=this._convertToCellCoord(t),a=this._convertToCellCoord(i),v=this._convertToCellCoord(r),s=c;s<=a;s++)for(o=l;o<=v;o++)if(h=this.d*o+s,u.call(this,n,t,i,r,h,f,e))return};cr.prototype._convertToCellCoord=function(n){return Math.max(0,Math.min(this.d-1,Math.floor(n*this.scale)+this.padding))};cr.prototype.toArrayBuffer=function(){var n,t,i,f;if(this.arrayBuffer)return this.arrayBuffer;for(var r=this.cells,e=hr+this.cells.length+1+1,o=0,u=0;u<this.cells.length;u++)o+=this.cells[u].length;for(n=new Int32Array(e+o+this.keys.length+this.bboxes.length),n[0]=this.extent,n[1]=this.n,n[2]=this.padding,t=e,i=0;i<r.length;i++)f=r[i],n[hr+i]=t,n.set(f,t),t+=f.length;return n[hr+r.length]=t,n.set(this.keys,t),t+=this.keys.length,n[hr+r.length+1]=t,n.set(this.bboxes,t),t+=this.bboxes.length,n.buffer};yc=self.ImageData;ff={};for(ns in e("Object",Object),uf.serialize=function(n,t){var i=n.toArrayBuffer();return t&&t.push(i),i},uf.deserialize=function(n){return new uf(n)},e("Grid",uf),e("Color",l),e("Error",Error),e("StylePropertyFunction",tf),e("StyleExpression",ee,{omit:["_evaluator"]}),e("ZoomDependentExpression",nf),e("ZoomConstantExpression",oe),e("CompoundExpression",nt,{omit:["_evaluate"]}),iu)iu[ns]._classRegistryKey||e("Expression_"+ns,iu[ns]);ts=function(){this.first=!0};ts.prototype.update=function(n,t){var i=Math.floor(n);return this.first?(this.first=!1,this.lastIntegerZoom=i,this.lastIntegerZoomTime=0,this.lastZoom=n,this.lastFloorZoom=i,!0):(this.lastFloorZoom>i?(this.lastIntegerZoom=i+1,this.lastIntegerZoomTime=t):this.lastFloorZoom<i&&(this.lastIntegerZoom=i,this.lastIntegerZoomTime=t),n!==this.lastZoom&&(this.lastZoom=n,this.lastFloorZoom=i,!0))};i={"Latin-1 Supplement":function(n){return n>=128&&n<=255},Arabic:function(n){return n>=1536&&n<=1791},"Arabic Supplement":function(n){return n>=1872&&n<=1919},"Arabic Extended-A":function(n){return n>=2208&&n<=2303},"Hangul Jamo":function(n){return n>=4352&&n<=4607},"Unified Canadian Aboriginal Syllabics":function(n){return n>=5120&&n<=5759},Khmer:function(n){return n>=6016&&n<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(n){return n>=6320&&n<=6399},"General Punctuation":function(n){return n>=8192&&n<=8303},"Letterlike Symbols":function(n){return n>=8448&&n<=8527},"Number Forms":function(n){return n>=8528&&n<=8591},"Miscellaneous Technical":function(n){return n>=8960&&n<=9215},"Control Pictures":function(n){return n>=9216&&n<=9279},"Optical Character Recognition":function(n){return n>=9280&&n<=9311},"Enclosed Alphanumerics":function(n){return n>=9312&&n<=9471},"Geometric Shapes":function(n){return n>=9632&&n<=9727},"Miscellaneous Symbols":function(n){return n>=9728&&n<=9983},"Miscellaneous Symbols and Arrows":function(n){return n>=11008&&n<=11263},"CJK Radicals Supplement":function(n){return n>=11904&&n<=12031},"Kangxi Radicals":function(n){return n>=12032&&n<=12255},"Ideographic Description Characters":function(n){return n>=12272&&n<=12287},"CJK Symbols and Punctuation":function(n){return n>=12288&&n<=12351},Hiragana:function(n){return n>=12352&&n<=12447},Katakana:function(n){return n>=12448&&n<=12543},Bopomofo:function(n){return n>=12544&&n<=12591},"Hangul Compatibility Jamo":function(n){return n>=12592&&n<=12687},Kanbun:function(n){return n>=12688&&n<=12703},"Bopomofo Extended":function(n){return n>=12704&&n<=12735},"CJK Strokes":function(n){return n>=12736&&n<=12783},"Katakana Phonetic Extensions":function(n){return n>=12784&&n<=12799},"Enclosed CJK Letters and Months":function(n){return n>=12800&&n<=13055},"CJK Compatibility":function(n){return n>=13056&&n<=13311},"CJK Unified Ideographs Extension A":function(n){return n>=13312&&n<=19903},"Yijing Hexagram Symbols":function(n){return n>=19904&&n<=19967},"CJK Unified Ideographs":function(n){return n>=19968&&n<=40959},"Yi Syllables":function(n){return n>=40960&&n<=42127},"Yi Radicals":function(n){return n>=42128&&n<=42191},"Hangul Jamo Extended-A":function(n){return n>=43360&&n<=43391},"Hangul Syllables":function(n){return n>=44032&&n<=55215},"Hangul Jamo Extended-B":function(n){return n>=55216&&n<=55295},"Private Use Area":function(n){return n>=57344&&n<=63743},"CJK Compatibility Ideographs":function(n){return n>=63744&&n<=64255},"Arabic Presentation Forms-A":function(n){return n>=64336&&n<=65023},"Vertical Forms":function(n){return n>=65040&&n<=65055},"CJK Compatibility Forms":function(n){return n>=65072&&n<=65103},"Small Form Variants":function(n){return n>=65104&&n<=65135},"Arabic Presentation Forms-B":function(n){return n>=65136&&n<=65279},"Halfwidth and Fullwidth Forms":function(n){return n>=65280&&n<=65519}};var bc,kc=!1,he=null,ap=!1,dc=new ir,fu={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return ap||null!=fu.applyArabicShaping}},k=function(n,t){this.zoom=n;t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.zoomHistory=t.zoomHistory,this.transition=t.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new ts,this.transition={})};k.prototype.isSupportedScript=function(n){return function(n,t){for(var i=0,r=n;i<r.length;i+=1)if(!sd(r[i].charCodeAt(0),t))return!1;return!0}(n,fu.isLoaded())};k.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)};eu=function(n,t){this.property=n;this.value=t;this.expression=oc(void 0===t?n.specification.default:t,n.specification)};eu.prototype.isDataDriven=function(){return"source"===this.expression.kind||"composite"===this.expression.kind};eu.prototype.possiblyEvaluate=function(n){return this.property.possiblyEvaluate(this,n)};ef=function(n){this.property=n;this.value=new eu(n,void 0)};ef.prototype.transitioned=function(n,t){return new is(this.property,this.value,t,si({},n.transition,this.transition),n.now)};ef.prototype.untransitioned=function(){return new is(this.property,this.value,null,{},0)};li=function(n){this._properties=n;this._values=Object.create(n.defaultTransitionablePropertyValues)};li.prototype.getValue=function(n){return tr(this._values[n].value.value)};li.prototype.setValue=function(n,t){this._values.hasOwnProperty(n)||(this._values[n]=new ef(this._values[n].property));this._values[n].value=new eu(this._values[n].property,null===t?void 0:tr(t))};li.prototype.getTransition=function(n){return tr(this._values[n].transition)};li.prototype.setTransition=function(n,t){this._values.hasOwnProperty(n)||(this._values[n]=new ef(this._values[n].property));this._values[n].transition=tr(t)||void 0};li.prototype.serialize=function(){for(var n,r,u,t={},i=0,f=Object.keys(this._values);i<f.length;i+=1)n=f[i],r=this.getValue(n),void 0!==r&&(t[n]=r),u=this.getTransition(n),void 0!==u&&(t[n+"-transition"]=u);return t};li.prototype.transitioned=function(n,t){for(var i,u=new of(this._properties),r=0,f=Object.keys(this._values);r<f.length;r+=1)i=f[r],u._values[i]=this._values[i].transitioned(n,t._values[i]);return u};li.prototype.untransitioned=function(){for(var t,i=new of(this._properties),n=0,r=Object.keys(this._values);n<r.length;n+=1)t=r[n],i._values[t]=this._values[t].untransitioned();return i};is=function(n,t,i,r,u){this.property=n;this.value=t;this.begin=u+r.delay||0;this.end=this.begin+r.duration||0;n.specification.transition&&(r.delay||r.duration)&&(this.prior=i)};is.prototype.possiblyEvaluate=function(n){var i=n.now||0,t=this.value.possiblyEvaluate(n),r=this.prior,u;return r?i>this.end?(this.prior=null,t):this.value.isDataDriven()?(this.prior=null,t):i<this.begin?r.possiblyEvaluate(n):(u=(i-this.begin)/(this.end-this.begin),this.property.interpolate(r.possiblyEvaluate(n),t,function(n){if(n<=0)return 0;if(n>=1)return 1;var t=n*n,i=t*n;return 4*(n<.5?i:3*(n-t)+i-.75)}(u))):t};of=function(n){this._properties=n;this._values=Object.create(n.defaultTransitioningPropertyValues)};of.prototype.possiblyEvaluate=function(n){for(var i,r=new ce(this._properties),t=0,u=Object.keys(this._values);t<u.length;t+=1)i=u[t],r._values[i]=this._values[i].possiblyEvaluate(n);return r};of.prototype.hasTransition=function(){for(var i,n=0,t=Object.keys(this._values);n<t.length;n+=1)if(i=t[n],this._values[i].prior)return!0;return!1};sf=function(n){this._properties=n;this._values=Object.create(n.defaultPropertyValues)};sf.prototype.getValue=function(n){return tr(this._values[n].value)};sf.prototype.setValue=function(n,t){this._values[n]=new eu(this._values[n].property,null===t?void 0:tr(t))};sf.prototype.serialize=function(){for(var t,i,r={},n=0,u=Object.keys(this._values);n<u.length;n+=1)t=u[n],i=this.getValue(t),void 0!==i&&(r[t]=i);return r};sf.prototype.possiblyEvaluate=function(n){for(var i,r=new ce(this._properties),t=0,u=Object.keys(this._values);t<u.length;t+=1)i=u[t],r._values[i]=this._values[i].possiblyEvaluate(n);return r};ai=function(n,t,i){this.property=n;this.value=t;this.globals=i};ai.prototype.isConstant=function(){return"constant"===this.value.kind};ai.prototype.constantOr=function(n){return"constant"===this.value.kind?this.value.value:n};ai.prototype.evaluate=function(n,t){return this.property.evaluate(this.value,this.globals,n,t)};ce=function(n){this._properties=n;this._values=Object.create(n.defaultPossiblyEvaluatedValues)};ce.prototype.get=function(n){return this._values[n]};f=function(n){this.specification=n};f.prototype.possiblyEvaluate=function(n,t){return n.expression.evaluate(t)};f.prototype.interpolate=function(n,t,i){var r=ue[this.specification.type];return r?r(n,t,i):n};o=function(n){this.specification=n};o.prototype.possiblyEvaluate=function(n,t){return"constant"===n.expression.kind||"camera"===n.expression.kind?new ai(this,{kind:"constant",value:n.expression.evaluate(t)},t):new ai(this,n.expression,t)};o.prototype.interpolate=function(n,t,i){if("constant"!==n.value.kind||"constant"!==t.value.kind)return n;if(void 0===n.value.value||void 0===t.value.value)return new ai(this,{kind:"constant",value:void 0},n.globals);var r=ue[this.specification.type];return r?new ai(this,{kind:"constant",value:r(n.value.value,t.value.value,i)},n.globals):n};o.prototype.evaluate=function(n,t,i,r){return"constant"===n.kind?n.value:n.evaluate(t,i,r)};vi=function(n){this.specification=n};vi.prototype.possiblyEvaluate=function(n,t){if(void 0!==n.value){if("constant"===n.expression.kind){var i=n.expression.evaluate(t);return this._calculate(i,i,i,t)}return this._calculate(n.expression.evaluate(new k(Math.floor(t.zoom-1),t)),n.expression.evaluate(new k(Math.floor(t.zoom),t)),n.expression.evaluate(new k(Math.floor(t.zoom+1),t)),t)}};vi.prototype._calculate=function(n,t,i,r){var u=r.zoom,f=u-Math.floor(u),e=r.crossFadingFactor();return u>r.zoomHistory.lastIntegerZoom?{from:n,to:t,fromScale:2,toScale:1,t:f+(1-f)*e}:{from:i,to:t,fromScale:.5,toScale:1,t:1-(1-e)*f}};vi.prototype.interpolate=function(n){return n};hf=function(n){this.specification=n};hf.prototype.possiblyEvaluate=function(n,t){return!!n.expression.evaluate(t)};hf.prototype.interpolate=function(){return!1};vt=function(n){for(var t in this.properties=n,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},n){var i=n[t],r=this.defaultPropertyValues[t]=new eu(i,void 0),u=this.defaultTransitionablePropertyValues[t]=new ef(i);this.defaultTransitioningPropertyValues[t]=u.untransitioned();this.defaultPossiblyEvaluatedValues[t]=r.possiblyEvaluate({})}};e("DataDrivenProperty",o);e("DataConstantProperty",f);e("CrossFadedProperty",vi);e("ColorRampProperty",hf);var yi=function(n){function i(t,i){var r,u;for(r in n.call(this),this.id=t.id,this.metadata=t.metadata,this.type=t.type,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,this.visibility="visible","background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),this._featureFilter=function(){return!0},i.layout&&(this._unevaluatedLayout=new sf(i.layout)),this._transitionablePaint=new li(i.paint),t.paint)this.setPaintProperty(r,t.paint[r],{validate:!1});for(u in t.layout)this.setLayoutProperty(u,t.layout[u],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned()}return n&&(i.__proto__=n),i.prototype=Object.create(n&&n.prototype),i.prototype.constructor=i,i.prototype.getLayoutProperty=function(n){return"visibility"===n?this.visibility:this._unevaluatedLayout.getValue(n)},i.prototype.setLayoutProperty=function(n,t,i){if(null!=t){var r="layers."+this.id+".layout."+n;if(this._validate(ed,r,n,t,i))return}"visibility"!==n?this._unevaluatedLayout.setValue(n,t):this.visibility="none"===t?t:"visible"},i.prototype.getPaintProperty=function(n){return eh(n,"-transition")?this._transitionablePaint.getTransition(n.slice(0,-11)):this._transitionablePaint.getValue(n)},i.prototype.setPaintProperty=function(n,t,i){var r,u,f;return null!=t&&(r="layers."+this.id+".paint."+n,this._validate(fd,r,n,t,i))?!1:eh(n,"-transition")?(this._transitionablePaint.setTransition(n.slice(0,-11),t||void 0),!1):(u=this._transitionablePaint._values[n].value.isDataDriven(),this._transitionablePaint.setValue(n,t),f=this._transitionablePaint._values[n].value.isDataDriven(),this._handleSpecialPaintPropertyUpdate(n),f||u)},i.prototype._handleSpecialPaintPropertyUpdate=function(){},i.prototype.isHidden=function(n){return!!(this.minzoom&&n<this.minzoom)||!!(this.maxzoom&&n>=this.maxzoom)||"none"===this.visibility},i.prototype.updateTransitions=function(n){this._transitioningPaint=this._transitionablePaint.transitioned(n,this._transitioningPaint)},i.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},i.prototype.recalculate=function(n){this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(n));this.paint=this._transitioningPaint.possiblyEvaluate(n)},i.prototype.serialize=function(){var n={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return"none"===this.visibility&&(n.layout=n.layout||{},n.layout.visibility="none"),cv(n,function(n,t){return!(void 0===n||"layout"===t&&!Object.keys(n).length||"paint"===t&&!Object.keys(n).length)})},i.prototype._validate=function(n,i,r,u,f){return(!f||!1!==f.validate)&&cp(this,n.call(hp,{key:i,layerType:this.type,objectKey:r,value:u,styleSpec:t,style:{glyphs:!0,sprite:!0}}))},i.prototype.hasOffscreenPass=function(){return!1},i.prototype.resize=function(){},i.prototype.isStateDependent=function(){var t,n;for(t in this.paint._values)if(n=this.paint.get(t),n instanceof ai&&du(n.property.specification)&&("source"===n.value.kind||"composite"===n.value.kind)&&n.value.isStateDependent)return!0;return!1},i}(ir),hd={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},le=function(n,t){this._structArray=n;this._pos1=t*this.size;this._pos2=this._pos1/2;this._pos4=this._pos1/4;this._pos8=this._pos1/8},y=function(){this.isTransferred=!1;this.capacity=-1;this.resize(0)};y.serialize=function(n,t){return n._trim(),t&&(n.isTransferred=!0,t.push(n.arrayBuffer)),{length:n.length,arrayBuffer:n.arrayBuffer}};y.deserialize=function(n){var t=Object.create(this.prototype);return t.arrayBuffer=n.arrayBuffer,t.length=n.length,t.capacity=n.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t};y.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())};y.prototype.clear=function(){this.length=0};y.prototype.resize=function(n){this.reserve(n);this.length=n};y.prototype.reserve=function(n){if(n>this.capacity){this.capacity=Math.max(n,Math.floor(5*this.capacity),128);this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var t=this.uint8;this._refreshViews();t&&this.uint8.set(t)}};y.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout");};cf=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t){var i=this.length,r;return this.resize(i+1),r=2*i,this.int16[r+0]=n,this.int16[r+1]=t,i},t.prototype.emplace=function(n,t,i){var r=2*n;return this.int16[r+0]=t,this.int16[r+1]=i,n},t}(y);cf.prototype.bytesPerElement=4;e("StructArrayLayout2i4",cf);ae=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r){var f=this.length,u;return this.resize(f+1),u=4*f,this.int16[u+0]=n,this.int16[u+1]=t,this.int16[u+2]=i,this.int16[u+3]=r,f},t.prototype.emplace=function(n,t,i,r,u){var f=4*n;return this.int16[f+0]=t,this.int16[f+1]=i,this.int16[f+2]=r,this.int16[f+3]=u,n},t}(y);ae.prototype.bytesPerElement=8;e("StructArrayLayout4i8",ae);rs=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f){var o=this.length,e;return this.resize(o+1),e=6*o,this.int16[e+0]=n,this.int16[e+1]=t,this.int16[e+2]=i,this.int16[e+3]=r,this.int16[e+4]=u,this.int16[e+5]=f,o},t.prototype.emplace=function(n,t,i,r,u,f,e){var o=6*n;return this.int16[o+0]=t,this.int16[o+1]=i,this.int16[o+2]=r,this.int16[o+3]=u,this.int16[o+4]=f,this.int16[o+5]=e,n},t}(y);rs.prototype.bytesPerElement=12;e("StructArrayLayout2i4i12",rs);us=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f,e,o){var c=this.length,s,h;return this.resize(c+1),s=6*c,h=12*c,this.int16[s+0]=n,this.int16[s+1]=t,this.int16[s+2]=i,this.int16[s+3]=r,this.uint8[h+8]=u,this.uint8[h+9]=f,this.uint8[h+10]=e,this.uint8[h+11]=o,c},t.prototype.emplace=function(n,t,i,r,u,f,e,o,s){var h=6*n,c=12*n;return this.int16[h+0]=t,this.int16[h+1]=i,this.int16[h+2]=r,this.int16[h+3]=u,this.uint8[c+8]=f,this.uint8[c+9]=e,this.uint8[c+10]=o,this.uint8[c+11]=s,n},t}(y);us.prototype.bytesPerElement=12;e("StructArrayLayout4i4ub12",us);fs=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f,e,o){var h=this.length,s;return this.resize(h+1),s=8*h,this.int16[s+0]=n,this.int16[s+1]=t,this.int16[s+2]=i,this.int16[s+3]=r,this.uint16[s+4]=u,this.uint16[s+5]=f,this.uint16[s+6]=e,this.uint16[s+7]=o,h},t.prototype.emplace=function(n,t,i,r,u,f,e,o,s){var h=8*n;return this.int16[h+0]=t,this.int16[h+1]=i,this.int16[h+2]=r,this.int16[h+3]=u,this.uint16[h+4]=f,this.uint16[h+5]=e,this.uint16[h+6]=o,this.uint16[h+7]=s,n},t}(y);fs.prototype.bytesPerElement=16;e("StructArrayLayout4i4ui16",fs);es=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i){var u=this.length,r;return this.resize(u+1),r=3*u,this.float32[r+0]=n,this.float32[r+1]=t,this.float32[r+2]=i,u},t.prototype.emplace=function(n,t,i,r){var u=3*n;return this.float32[u+0]=t,this.float32[u+1]=i,this.float32[u+2]=r,n},t}(y);es.prototype.bytesPerElement=12;e("StructArrayLayout3f12",es);os=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.uint32=new Uint32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n){var t=this.length,i;return this.resize(t+1),i=1*t,this.uint32[i+0]=n,t},t.prototype.emplace=function(n,t){var i=1*n;return this.uint32[i+0]=t,n},t}(y);os.prototype.bytesPerElement=4;e("StructArrayLayout1ul4",os);ss=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer);this.uint32=new Uint32Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f,e,o,s,h,c){var a=this.length,l,v;return this.resize(a+1),l=12*a,v=6*a,this.int16[l+0]=n,this.int16[l+1]=t,this.int16[l+2]=i,this.int16[l+3]=r,this.int16[l+4]=u,this.int16[l+5]=f,this.uint32[v+3]=e,this.uint16[l+8]=o,this.uint16[l+9]=s,this.int16[l+10]=h,this.int16[l+11]=c,a},t.prototype.emplace=function(n,t,i,r,u,f,e,o,s,h,c,l){var a=12*n,v=6*n;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.int16[a+3]=u,this.int16[a+4]=f,this.int16[a+5]=e,this.uint32[v+3]=o,this.uint16[a+8]=s,this.uint16[a+9]=h,this.int16[a+10]=c,this.int16[a+11]=l,n},t}(y);ss.prototype.bytesPerElement=24;e("StructArrayLayout6i1ul2ui2i24",ss);ve=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f){var o=this.length,e;return this.resize(o+1),e=6*o,this.int16[e+0]=n,this.int16[e+1]=t,this.int16[e+2]=i,this.int16[e+3]=r,this.int16[e+4]=u,this.int16[e+5]=f,o},t.prototype.emplace=function(n,t,i,r,u,f,e){var o=6*n;return this.int16[o+0]=t,this.int16[o+1]=i,this.int16[o+2]=r,this.int16[o+3]=u,this.int16[o+4]=f,this.int16[o+5]=e,n},t}(y);ve.prototype.bytesPerElement=12;e("StructArrayLayout2i2i2i12",ve);hs=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t){var i=this.length,r;return this.resize(i+1),r=4*i,this.uint8[r+0]=n,this.uint8[r+1]=t,i},t.prototype.emplace=function(n,t,i){var r=4*n;return this.uint8[r+0]=t,this.uint8[r+1]=i,n},t}(y);hs.prototype.bytesPerElement=4;e("StructArrayLayout2ub4",hs);cs=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer);this.uint32=new Uint32Array(this.arrayBuffer);this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r,u,f,e,o,s,h,c,l,a,v){var p=this.length;this.resize(p+1);var y=20*p,w=10*p,b=40*p;return this.int16[y+0]=n,this.int16[y+1]=t,this.uint16[y+2]=i,this.uint16[y+3]=r,this.uint32[w+2]=u,this.uint32[w+3]=f,this.uint32[w+4]=e,this.uint16[y+10]=o,this.uint16[y+11]=s,this.uint16[y+12]=h,this.float32[w+7]=c,this.float32[w+8]=l,this.uint8[b+36]=a,this.uint8[b+37]=v,p},t.prototype.emplace=function(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y){var p=20*n,w=10*n,b=40*n;return this.int16[p+0]=t,this.int16[p+1]=i,this.uint16[p+2]=r,this.uint16[p+3]=u,this.uint32[w+2]=f,this.uint32[w+3]=e,this.uint32[w+4]=o,this.uint16[p+10]=s,this.uint16[p+11]=h,this.uint16[p+12]=c,this.float32[w+7]=l,this.float32[w+8]=a,this.uint8[b+36]=v,this.uint8[b+37]=y,n},t}(y);cs.prototype.bytesPerElement=40;e("StructArrayLayout2i2ui3ul3ui2f2ub40",cs);ye=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n){var t=this.length,i;return this.resize(t+1),i=1*t,this.float32[i+0]=n,t},t.prototype.emplace=function(n,t){var i=1*n;return this.float32[i+0]=t,n},t}(y);ye.prototype.bytesPerElement=4;e("StructArrayLayout1f4",ye);ls=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.int16=new Int16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i){var u=this.length,r;return this.resize(u+1),r=3*u,this.int16[r+0]=n,this.int16[r+1]=t,this.int16[r+2]=i,u},t.prototype.emplace=function(n,t,i,r){var u=3*n;return this.int16[u+0]=t,this.int16[u+1]=i,this.int16[u+2]=r,n},t}(y);ls.prototype.bytesPerElement=6;e("StructArrayLayout3i6",ls);as=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.uint32=new Uint32Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i){var r=this.length,f,u;return this.resize(r+1),f=2*r,u=4*r,this.uint32[f+0]=n,this.uint16[u+2]=t,this.uint16[u+3]=i,r},t.prototype.emplace=function(n,t,i,r){var f=2*n,u=4*n;return this.uint32[f+0]=t,this.uint16[u+2]=i,this.uint16[u+3]=r,n},t}(y);as.prototype.bytesPerElement=8;e("StructArrayLayout1ul2ui8",as);pi=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i){var u=this.length,r;return this.resize(u+1),r=3*u,this.uint16[r+0]=n,this.uint16[r+1]=t,this.uint16[r+2]=i,u},t.prototype.emplace=function(n,t,i,r){var u=3*n;return this.uint16[u+0]=t,this.uint16[u+1]=i,this.uint16[u+2]=r,n},t}(y);pi.prototype.bytesPerElement=6;e("StructArrayLayout3ui6",pi);pe=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.uint16=new Uint16Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t){var i=this.length,r;return this.resize(i+1),r=2*i,this.uint16[r+0]=n,this.uint16[r+1]=t,i},t.prototype.emplace=function(n,t,i){var r=2*n;return this.uint16[r+0]=t,this.uint16[r+1]=i,n},t}(y);pe.prototype.bytesPerElement=4;e("StructArrayLayout2ui4",pe);we=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t){var i=this.length,r;return this.resize(i+1),r=2*i,this.float32[r+0]=n,this.float32[r+1]=t,i},t.prototype.emplace=function(n,t,i){var r=2*n;return this.float32[r+0]=t,this.float32[r+1]=i,n},t}(y);we.prototype.bytesPerElement=8;e("StructArrayLayout2f8",we);vs=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer);this.float32=new Float32Array(this.arrayBuffer)},t.prototype.emplaceBack=function(n,t,i,r){var f=this.length,u;return this.resize(f+1),u=4*f,this.float32[u+0]=n,this.float32[u+1]=t,this.float32[u+2]=i,this.float32[u+3]=r,f},t.prototype.emplace=function(n,t,i,r,u){var f=4*n;return this.float32[f+0]=t,this.float32[f+1]=i,this.float32[f+2]=r,this.float32[f+3]=u,n},t}(y);vs.prototype.bytesPerElement=16;e("StructArrayLayout4f16",vs);gc=function(n){function i(){n.apply(this,arguments)}n&&(i.__proto__=n);i.prototype=Object.create(n&&n.prototype);i.prototype.constructor=i;var t={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},radius:{configurable:!0},signedDistanceFromAnchor:{configurable:!0},anchorPoint:{configurable:!0}};return t.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},t.anchorPointX.set=function(n){this._structArray.int16[this._pos2+0]=n},t.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},t.anchorPointY.set=function(n){this._structArray.int16[this._pos2+1]=n},t.x1.get=function(){return this._structArray.int16[this._pos2+2]},t.x1.set=function(n){this._structArray.int16[this._pos2+2]=n},t.y1.get=function(){return this._structArray.int16[this._pos2+3]},t.y1.set=function(n){this._structArray.int16[this._pos2+3]=n},t.x2.get=function(){return this._structArray.int16[this._pos2+4]},t.x2.set=function(n){this._structArray.int16[this._pos2+4]=n},t.y2.get=function(){return this._structArray.int16[this._pos2+5]},t.y2.set=function(n){this._structArray.int16[this._pos2+5]=n},t.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},t.featureIndex.set=function(n){this._structArray.uint32[this._pos4+3]=n},t.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},t.sourceLayerIndex.set=function(n){this._structArray.uint16[this._pos2+8]=n},t.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},t.bucketIndex.set=function(n){this._structArray.uint16[this._pos2+9]=n},t.radius.get=function(){return this._structArray.int16[this._pos2+10]},t.radius.set=function(n){this._structArray.int16[this._pos2+10]=n},t.signedDistanceFromAnchor.get=function(){return this._structArray.int16[this._pos2+11]},t.signedDistanceFromAnchor.set=function(n){this._structArray.int16[this._pos2+11]=n},t.anchorPoint.get=function(){return new ot(this.anchorPointX,this.anchorPointY)},Object.defineProperties(i.prototype,t),i}(le);gc.prototype.size=24;ys=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.get=function(n){return new gc(this,n)},t}(ss);e("CollisionBoxArray",ys);nl=function(n){function i(){n.apply(this,arguments)}n&&(i.__proto__=n);i.prototype=Object.create(n&&n.prototype);i.prototype.constructor=i;var t={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},hidden:{configurable:!0}};return t.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},t.anchorX.set=function(n){this._structArray.int16[this._pos2+0]=n},t.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},t.anchorY.set=function(n){this._structArray.int16[this._pos2+1]=n},t.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},t.glyphStartIndex.set=function(n){this._structArray.uint16[this._pos2+2]=n},t.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},t.numGlyphs.set=function(n){this._structArray.uint16[this._pos2+3]=n},t.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},t.vertexStartIndex.set=function(n){this._structArray.uint32[this._pos4+2]=n},t.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},t.lineStartIndex.set=function(n){this._structArray.uint32[this._pos4+3]=n},t.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},t.lineLength.set=function(n){this._structArray.uint32[this._pos4+4]=n},t.segment.get=function(){return this._structArray.uint16[this._pos2+10]},t.segment.set=function(n){this._structArray.uint16[this._pos2+10]=n},t.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},t.lowerSize.set=function(n){this._structArray.uint16[this._pos2+11]=n},t.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},t.upperSize.set=function(n){this._structArray.uint16[this._pos2+12]=n},t.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},t.lineOffsetX.set=function(n){this._structArray.float32[this._pos4+7]=n},t.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},t.lineOffsetY.set=function(n){this._structArray.float32[this._pos4+8]=n},t.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},t.writingMode.set=function(n){this._structArray.uint8[this._pos1+36]=n},t.hidden.get=function(){return this._structArray.uint8[this._pos1+37]},t.hidden.set=function(n){this._structArray.uint8[this._pos1+37]=n},Object.defineProperties(i.prototype,t),i}(le);nl.prototype.size=40;tl=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.get=function(n){return new nl(this,n)},t}(cs);e("PlacedSymbolArray",tl);il=function(n){function t(){n.apply(this,arguments)}n&&(t.__proto__=n);t.prototype=Object.create(n&&n.prototype);t.prototype.constructor=t;var i={offsetX:{configurable:!0}};return i.offsetX.get=function(){return this._structArray.float32[this._pos4+0]},i.offsetX.set=function(n){this._structArray.float32[this._pos4+0]=n},Object.defineProperties(t.prototype,i),t}(le);il.prototype.size=4;rl=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.getoffsetX=function(n){return this.float32[1*n+0]},t.prototype.get=function(n){return new il(this,n)},t}(ye);e("GlyphOffsetArray",rl);ul=function(n){function i(){n.apply(this,arguments)}n&&(i.__proto__=n);i.prototype=Object.create(n&&n.prototype);i.prototype.constructor=i;var t={x:{configurable:!0},y:{configurable:!0},tileUnitDistanceFromAnchor:{configurable:!0}};return t.x.get=function(){return this._structArray.int16[this._pos2+0]},t.x.set=function(n){this._structArray.int16[this._pos2+0]=n},t.y.get=function(){return this._structArray.int16[this._pos2+1]},t.y.set=function(n){this._structArray.int16[this._pos2+1]=n},t.tileUnitDistanceFromAnchor.get=function(){return this._structArray.int16[this._pos2+2]},t.tileUnitDistanceFromAnchor.set=function(n){this._structArray.int16[this._pos2+2]=n},Object.defineProperties(i.prototype,t),i}(le);ul.prototype.size=6;fl=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.getx=function(n){return this.int16[3*n+0]},t.prototype.gety=function(n){return this.int16[3*n+1]},t.prototype.gettileUnitDistanceFromAnchor=function(n){return this.int16[3*n+2]},t.prototype.get=function(n){return new ul(this,n)},t}(ls);e("SymbolLineVertexArray",fl);el=function(n){function i(){n.apply(this,arguments)}n&&(i.__proto__=n);i.prototype=Object.create(n&&n.prototype);i.prototype.constructor=i;var t={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return t.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},t.featureIndex.set=function(n){this._structArray.uint32[this._pos4+0]=n},t.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},t.sourceLayerIndex.set=function(n){this._structArray.uint16[this._pos2+2]=n},t.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},t.bucketIndex.set=function(n){this._structArray.uint16[this._pos2+3]=n},Object.defineProperties(i.prototype,t),i}(le);el.prototype.size=8;ol=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.get=function(n){return new el(this,n)},t}(as);e("FeatureIndexArray",ol);var sl=ft([{name:"a_pos",components:2,type:"Int16"}],4),yp=sl.members,tt=(sl.size,sl.alignment,function(n){void 0===n&&(n=[]);this.segments=n});tt.prototype.prepareSegment=function(n,t,i){var r=this.segments[this.segments.length-1];return n>tt.MAX_VERTEX_ARRAY_LENGTH&&co("Max vertices per segment is "+tt.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+n),(!r||r.vertexLength+n>tt.MAX_VERTEX_ARRAY_LENGTH)&&(r={vertexOffset:t.length,primitiveOffset:i.length,vertexLength:0,primitiveLength:0},this.segments.push(r)),r};tt.prototype.get=function(){return this.segments};tt.prototype.destroy=function(){for(var i,r,n=0,t=this.segments;n<t.length;n+=1){i=t[n];for(r in i.vaos)i.vaos[r].destroy()}};tt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1;e("SegmentVector",tt);hl=function(n,t){return 256*(n=nr(Math.floor(n),0,255))+(t=nr(Math.floor(t),0,255))};wi=function(n,t,i){this.value=n;this.name=t;this.type=i;this.statistics={max:-1/0}};wi.prototype.defines=function(){return["#define HAS_UNIFORM_u_"+this.name]};wi.prototype.populatePaintArray=function(){};wi.prototype.updatePaintArray=function(){};wi.prototype.upload=function(){};wi.prototype.destroy=function(){};wi.prototype.setUniforms=function(n,t,i,r){var u=r.constantOr(this.value),f=n.gl;"color"===this.type?f.uniform4f(t.uniforms["u_"+this.name],u.r,u.g,u.b,u.a):f.uniform1f(t.uniforms["u_"+this.name],u)};bi=function(n,t,i){this.expression=n;this.name=t;this.type=i;this.statistics={max:-1/0};var r="color"===i?we:ye;this.paintVertexAttributes=[{name:"a_"+t,type:"Float32",components:"color"===i?2:1,offset:0}];this.paintVertexArray=new r};bi.prototype.defines=function(){return[]};bi.prototype.populatePaintArray=function(n,t){var i=this.paintVertexArray,o=i.length,r,u,f,e;if(i.reserve(n),r=this.expression.evaluate(new k(0),t,{}),"color"===this.type)for(u=lf(r),f=o;f<n;f++)i.emplaceBack(u[0],u[1]);else{for(e=o;e<n;e++)i.emplaceBack(r);this.statistics.max=Math.max(this.statistics.max,r)}};bi.prototype.updatePaintArray=function(n,t,i,r){var s=this.paintVertexArray,e=this.expression.evaluate({zoom:0},i,r),o,u,f;if("color"===this.type)for(o=lf(e),u=n;u<t;u++)s.emplace(u,o[0],o[1]);else{for(f=n;f<t;f++)s.emplace(f,e);this.statistics.max=Math.max(this.statistics.max,e)}};bi.prototype.upload=function(n){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=n.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))};bi.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};bi.prototype.setUniforms=function(n,t){n.gl.uniform1f(t.uniforms["a_"+this.name+"_t"],0)};ui=function(n,t,i,r,u){this.expression=n;this.name=t;this.type=i;this.useIntegerZoom=r;this.zoom=u;this.statistics={max:-1/0};var f="color"===i?vs:we;this.paintVertexAttributes=[{name:"a_"+t,type:"Float32",components:"color"===i?4:2,offset:0}];this.paintVertexArray=new f};ui.prototype.defines=function(){return[]};ui.prototype.populatePaintArray=function(n,t){var i=this.paintVertexArray,e=i.length,r,u,f;if(i.reserve(n),r=this.expression.evaluate(new k(this.zoom),t,{}),u=this.expression.evaluate(new k(this.zoom+1),t,{}),"color"===this.type)for(var o=lf(r),s=lf(u),h=e;h<n;h++)i.emplaceBack(o[0],o[1],s[0],s[1]);else{for(f=e;f<n;f++)i.emplaceBack(r,u);this.statistics.max=Math.max(this.statistics.max,r,u)}};ui.prototype.updatePaintArray=function(n,t,i,r){var s=this.paintVertexArray,f=this.expression.evaluate({zoom:this.zoom},i,r),e=this.expression.evaluate({zoom:this.zoom+1},i,r),u;if("color"===this.type)for(var h=lf(f),c=lf(e),o=n;o<t;o++)s.emplace(o,h[0],h[1],c[0],c[1]);else{for(u=n;u<t;u++)s.emplace(u,f,e);this.statistics.max=Math.max(this.statistics.max,f,e)}};ui.prototype.upload=function(n){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=n.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))};ui.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};ui.prototype.interpolationFactor=function(n){return this.useIntegerZoom?this.expression.interpolationFactor(Math.floor(n),this.zoom,this.zoom+1):this.expression.interpolationFactor(n,this.zoom,this.zoom+1)};ui.prototype.setUniforms=function(n,t,i){n.gl.uniform1f(t.uniforms["a_"+this.name+"_t"],this.interpolationFactor(i.zoom))};yt=function(){this.binders={};this.cacheKey="";this._buffers=[];this._idMap={};this._bufferOffset=0};yt.createDynamic=function(n,t,i){var e=new yt,o=[],u,r;for(u in n.paint._values)if(i(u)&&(r=n.paint.get(u),r instanceof ai&&du(r.property.specification))){var f=cd(u,n.type),s=r.property.specification.type,h=r.property.useIntegerZoom;"constant"===r.value.kind?(e.binders[u]=new wi(r.value,f,s),o.push("/u_"+f)):"source"===r.value.kind?(e.binders[u]=new bi(r.value,f,s),o.push("/a_"+f)):(e.binders[u]=new ui(r.value,f,s,h,t),o.push("/z_"+f))}return e.cacheKey=o.sort().join(""),e};yt.prototype.populatePaintArrays=function(n,t,i){var u,r;for(u in this.binders)this.binders[u].populatePaintArray(n,t);t.id&&(r=String(t.id),this._idMap[r]=this._idMap[r]||[],this._idMap[r].push({index:i,start:this._bufferOffset,end:n}));this._bufferOffset=n};yt.prototype.updatePaintArrays=function(n,t,i){var h=!1,f,e,u,l,s,r,a;for(f in n)if(e=this._idMap[f],e)for(var v=n[f],o=0,c=e;o<c.length;o+=1){u=c[o];l=t.feature(u.index);for(s in this.binders)r=this.binders[s],r instanceof wi||!0!==r.expression.isStateDependent||(a=i.paint.get(s),r.expression=a.value,r.updatePaintArray(u.start,u.end,l,v),h=!0)}return h};yt.prototype.defines=function(){var n=[];for(var t in this.binders)n.push.apply(n,this.binders[t].defines());return n};yt.prototype.setUniforms=function(n,t,i,r){for(var u in this.binders)this.binders[u].setUniforms(n,t,r,i.get(u))};yt.prototype.getPaintVertexBuffers=function(){return this._buffers};yt.prototype.upload=function(n){var r,i,u,t;for(r in this.binders)this.binders[r].upload(n);i=[];for(u in this.binders)t=this.binders[u],(t instanceof bi||t instanceof ui)&&t.paintVertexBuffer&&i.push(t.paintVertexBuffer);this._buffers=i};yt.prototype.destroy=function(){for(var n in this.binders)this.binders[n].destroy()};pt=function(n,t,i,r){var u,e,f;for(void 0===r&&(r=function(){return!0}),this.programConfigurations={},u=0,e=t;u<e.length;u+=1)f=e[u],this.programConfigurations[f.id]=yt.createDynamic(f,i,r),this.programConfigurations[f.id].layoutAttributes=n;this.needsUpload=!1};pt.prototype.populatePaintArrays=function(n,t,i){for(var r in this.programConfigurations)this.programConfigurations[r].populatePaintArrays(n,t,i);this.needsUpload=!0};pt.prototype.updatePaintArrays=function(n,t,i){for(var f,r=0,u=i;r<u.length;r+=1)f=u[r],this.needsUpload=this.programConfigurations[f.id].updatePaintArrays(n,t,f)||this.needsUpload};pt.prototype.get=function(n){return this.programConfigurations[n]};pt.prototype.upload=function(n){if(this.needsUpload){for(var t in this.programConfigurations)this.programConfigurations[t].upload(n);this.needsUpload=!1}};pt.prototype.destroy=function(){for(var n in this.programConfigurations)this.programConfigurations[n].destroy()};e("ConstantBinder",wi);e("SourceExpressionBinder",bi);e("CompositeExpressionBinder",ui);e("ProgramConfiguration",yt,{omit:["_buffers"]});e("ProgramConfigurationSet",pt);lt=8192;be=(cl=16,{min:-1*Math.pow(2,cl-1),max:Math.pow(2,cl-1)-1});fi=function(n){this.zoom=n.zoom;this.overscaling=n.overscaling;this.layers=n.layers;this.layerIds=this.layers.map(function(n){return n.id});this.index=n.index;this.layoutVertexArray=new cf;this.indexArray=new pi;this.segments=new tt;this.programConfigurations=new pt(yp,n.layers,n.zoom)};fi.prototype.populate=function(n,t){for(var e,i=0,u=n;i<u.length;i+=1){var f=u[i],r=f.feature,o=f.index,s=f.sourceLayerIndex;this.layers[0]._featureFilter(new k(this.zoom),r)&&(e=af(r),this.addFeature(r,e,o),t.featureIndex.insert(r,e,o,s,this.index))}};fi.prototype.update=function(n,t){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(n,t,this.stateDependentLayers)};fi.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length};fi.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload};fi.prototype.upload=function(n){this.uploaded||(this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,yp),this.indexBuffer=n.createIndexBuffer(this.indexArray));this.programConfigurations.upload(n);this.uploaded=!0};fi.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())};fi.prototype.addFeature=function(n,t,i){for(var o,c,s,r,e=0,h=t;e<h.length;e+=1)for(o=0,c=h[e];o<c.length;o+=1){var l=c[o],u=l.x,f=l.y;u<0||u>=lt||f<0||f>=lt||(s=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),r=s.vertexLength,ps(this.layoutVertexArray,u,f,-1,-1),ps(this.layoutVertexArray,u,f,1,-1),ps(this.layoutVertexArray,u,f,1,1),ps(this.layoutVertexArray,u,f,-1,1),this.indexArray.emplaceBack(r,r+1,r+2),this.indexArray.emplaceBack(r,r+3,r+2),s.vertexLength+=4,s.primitiveLength+=2)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,n,i)};e("CircleBucket",fi,{omit:["layers"]});kp={paint:new vt({"circle-radius":new o(t.paint_circle["circle-radius"]),"circle-color":new o(t.paint_circle["circle-color"]),"circle-blur":new o(t.paint_circle["circle-blur"]),"circle-opacity":new o(t.paint_circle["circle-opacity"]),"circle-translate":new f(t.paint_circle["circle-translate"]),"circle-translate-anchor":new f(t.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new f(t.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new f(t.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new o(t.paint_circle["circle-stroke-width"]),"circle-stroke-color":new o(t.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new o(t.paint_circle["circle-stroke-opacity"])})};lr="undefined"!=typeof Float32Array?Float32Array:Array;Math.PI;nw=gp;tw=(ar=pl(),function(n,t,i,r,u,f){var e,o;for(t||(t=3),i||(i=0),o=r?Math.min(r*t+i,n.length):n.length,e=i;e<o;e+=t)ar[0]=n[e],ar[1]=n[e+1],ar[2]=n[e+2],u(ar,ar,f),n[e]=ar[0],n[e+1]=ar[1],n[e+2]=ar[2];return n});uw=function(){var n=iw();return function(t,i,r,u,f,e){var o,s;for(i||(i=4),r||(r=0),s=u?Math.min(u*i+r,t.length):t.length,o=r;o<s;o+=i)n[0]=t[o],n[1]=t[o+1],n[2]=t[o+2],n[3]=t[o+3],f(n,n,e),t[o]=n[0],t[o+1]=n[1],t[o+2]=n[2],t[o+3]=n[3];return t}}();tg=rw;wd=pl();bd=wl(1,0,0);kd=wl(0,1,0);dd=fw();gd=fw();ng=dp();!function(){var n,t=((n=new lr(2))[0]=0,n[1]=0,n)}();ew=function(n){function t(t){n.call(this,t,kp)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(n){return new fi(n)},t.prototype.queryRadius=function(n){var t=n;return ke("circle-radius",this,t)+ke("circle-stroke-width",this,t)+bs(this.paint.get("circle-translate"))},t.prototype.queryIntersectsFeature=function(n,t,i,r,u,f,e,o){for(var s,a,y=ks(n,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),f.angle,e),p=this.paint.get("circle-radius").evaluate(t,i)+this.paint.get("circle-stroke-width").evaluate(t,i),c="map"===this.paint.get("circle-pitch-alignment"),k=c?y:function(n,t,i){return n.map(function(n){return n.map(function(n){return ow(n,t,i)})})}(y,o,f),d=c?p*e:p,l=0,w=r;l<w.length;l+=1)for(s=0,a=w[l];s<a.length;s+=1){var h=a[s],g=c?h:ow(h,o,f),v=d,b=bl([],[h.x,h.y,0,1],o);if("viewport"===this.paint.get("circle-pitch-scale")&&"map"===this.paint.get("circle-pitch-alignment")?v*=b[3]/f.cameraToCenterDistance:"map"===this.paint.get("circle-pitch-scale")&&"viewport"===this.paint.get("circle-pitch-alignment")&&(v*=f.cameraToCenterDistance/b[3]),pp(k,g,v))return!0}return!1},t}(yi);kl=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t}(fi);e("HeatmapBucket",kl,{omit:["layers"]});gr=function(n,t){dl(this,n,1,t)};gr.prototype.resize=function(n){sw(this,n,1)};gr.prototype.clone=function(){return new gr({width:this.width,height:this.height},new Uint8Array(this.data))};gr.copy=function(n,t,i,r,u){gl(n,t,i,r,u,1)};ei=function(n,t){dl(this,n,4,t)};ei.prototype.resize=function(n){sw(this,n,4)};ei.prototype.clone=function(){return new ei({width:this.width,height:this.height},new Uint8Array(this.data))};ei.copy=function(n,t,i,r,u){gl(n,t,i,r,u,4)};e("AlphaImage",gr);e("RGBAImage",ei);hw={paint:new vt({"heatmap-radius":new o(t.paint_heatmap["heatmap-radius"]),"heatmap-weight":new o(t.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new f(t.paint_heatmap["heatmap-intensity"]),"heatmap-color":new hf(t.paint_heatmap["heatmap-color"]),"heatmap-opacity":new f(t.paint_heatmap["heatmap-opacity"])})};var ig=function(n){function t(t){n.call(this,t,hw);this._updateColorRamp()}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(n){return new kl(n)},t.prototype._handleSpecialPaintPropertyUpdate=function(n){"heatmap-color"===n&&this._updateColorRamp()},t.prototype._updateColorRamp=function(){var n=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=cw(n,"heatmapDensity");this.colorRampTexture=null},t.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},t.prototype.queryRadius=function(){return 0},t.prototype.queryIntersectsFeature=function(){return!1},t.prototype.hasOffscreenPass=function(){return 0!==this.paint.get("heatmap-opacity")&&"none"!==this.visibility},t}(yi),rg={paint:new vt({"hillshade-illumination-direction":new f(t.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new f(t.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new f(t.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new f(t.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new f(t.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new f(t.paint_hillshade["hillshade-accent-color"])})},ug=function(n){function t(t){n.call(this,t,rg)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.hasOffscreenPass=function(){return 0!==this.paint.get("hillshade-exaggeration")&&"none"!==this.visibility},t}(yi),na=ft([{name:"a_pos",components:2,type:"Int16"}],4),lw=na.members,ta=(na.size,na.alignment,ds),fg=ds;ds.deviation=function(n,t,i,r){var h=t&&t.length,y=h?t[0]*i:n.length,f=Math.abs(ua(n,0,y,i)),u,s,c,l,e;if(h)for(u=0,s=t.length;u<s;u++)c=t[u]*i,l=u<s-1?t[u+1]*i:n.length,f-=Math.abs(ua(n,c,l,i));for(e=0,u=0;u<r.length;u+=3){var o=r[u]*i,a=r[u+1]*i,v=r[u+2]*i;e+=Math.abs((n[o]-n[v])*(n[a+1]-n[o+1])-(n[o]-n[a])*(n[v+1]-n[o+1]))}return 0===f&&0===e?0:Math.abs((e-f)/f)};ds.flatten=function(n){for(var i,r,f=n[0][0].length,u={vertices:[],holes:[],dimensions:f},e=0,t=0;t<n.length;t++){for(i=0;i<n[t].length;i++)for(r=0;r<f;r++)u.vertices.push(n[t][i][r]);t>0&&(e+=n[t-1].length,u.holes.push(e))}return u};ta.default=fg;fa=bw;ww=bw;fa.default=ww;ki=function(n){this.zoom=n.zoom;this.overscaling=n.overscaling;this.layers=n.layers;this.layerIds=this.layers.map(function(n){return n.id});this.index=n.index;this.layoutVertexArray=new cf;this.indexArray=new pi;this.indexArray2=new pe;this.programConfigurations=new pt(lw,n.layers,n.zoom);this.segments=new tt;this.segments2=new tt};ki.prototype.populate=function(n,t){for(var e,i=0,u=n;i<u.length;i+=1){var f=u[i],r=f.feature,o=f.index,s=f.sourceLayerIndex;this.layers[0]._featureFilter(new k(this.zoom),r)&&(e=af(r),this.addFeature(r,e,o),t.featureIndex.insert(r,e,o,s,this.index))}};ki.prototype.update=function(n,t){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(n,t,this.stateDependentLayers)};ki.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length};ki.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload};ki.prototype.upload=function(n){this.uploaded||(this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,lw),this.indexBuffer=n.createIndexBuffer(this.indexArray),this.indexBuffer2=n.createIndexBuffer(this.indexArray2));this.programConfigurations.upload(n);this.uploaded=!0};ki.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())};ki.prototype.addFeature=function(n,t,i){for(var r,c,s,u,e,o,h=0,l=ea(t,500);h<l.length;h+=1){for(var a=l[h],v=0,y=0,k=a;y<k.length;y+=1)v+=k[y].length;for(var p=this.segments.prepareSegment(v,this.layoutVertexArray,this.indexArray),w=p.vertexLength,f=[],d=[],b=0,g=a;b<g.length;b+=1)if(r=g[b],0!==r.length){for(r!==a[0]&&d.push(f.length/2),c=this.segments2.prepareSegment(r.length,this.layoutVertexArray,this.indexArray2),s=c.vertexLength,this.layoutVertexArray.emplaceBack(r[0].x,r[0].y),this.indexArray2.emplaceBack(s+r.length-1,s),f.push(r[0].x),f.push(r[0].y),u=1;u<r.length;u++)this.layoutVertexArray.emplaceBack(r[u].x,r[u].y),this.indexArray2.emplaceBack(s+u-1,s+u),f.push(r[u].x),f.push(r[u].y);c.vertexLength+=r.length;c.primitiveLength+=r.length}for(e=ta(f,d),o=0;o<e.length;o+=3)this.indexArray.emplaceBack(w+e[o],w+e[o+1],w+e[o+2]);p.vertexLength+=v;p.primitiveLength+=e.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,n,i)};e("FillBucket",ki,{omit:["layers"]});var wg={paint:new vt({"fill-antialias":new f(t.paint_fill["fill-antialias"]),"fill-opacity":new o(t.paint_fill["fill-opacity"]),"fill-color":new o(t.paint_fill["fill-color"]),"fill-outline-color":new o(t.paint_fill["fill-outline-color"]),"fill-translate":new f(t.paint_fill["fill-translate"]),"fill-translate-anchor":new f(t.paint_fill["fill-translate-anchor"]),"fill-pattern":new vi(t.paint_fill["fill-pattern"])})},bg=function(n){function t(t){n.call(this,t,wg)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.recalculate=function(n){this.paint=this._transitioningPaint.possiblyEvaluate(n);var t=this.paint._values["fill-outline-color"];"constant"===t.value.kind&&void 0===t.value.value&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},t.prototype.createBucket=function(n){return new ki(n)},t.prototype.queryRadius=function(){return bs(this.paint.get("fill-translate"))},t.prototype.queryIntersectsFeature=function(n,t,i,r,u,f,e){return ll(ks(n,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),f.angle,e),r)},t}(yi),oa=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),kw=oa.members,sa=(oa.size,oa.alignment,Math.pow(2,13));di=function(n){this.zoom=n.zoom;this.overscaling=n.overscaling;this.layers=n.layers;this.layerIds=this.layers.map(function(n){return n.id});this.index=n.index;this.layoutVertexArray=new rs;this.indexArray=new pi;this.programConfigurations=new pt(kw,n.layers,n.zoom);this.segments=new tt};di.prototype.populate=function(n,t){for(var e,i=0,u=n;i<u.length;i+=1){var f=u[i],r=f.feature,o=f.index,s=f.sourceLayerIndex;this.layers[0]._featureFilter(new k(this.zoom),r)&&(e=af(r),this.addFeature(r,e,o),t.featureIndex.insert(r,e,o,s,this.index))}};di.prototype.update=function(n,t){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(n,t,this.stateDependentLayers)};di.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length};di.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload};di.prototype.upload=function(n){this.uploaded||(this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,kw),this.indexBuffer=n.createIndexBuffer(this.indexArray));this.programConfigurations.upload(n);this.uploaded=!0};di.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())};di.prototype.addFeature=function(n,t,i){for(var h,f,c,e,o,u,rt,s,v,d,y,l,a,p=0,g=ea(t,500);p<g.length;p+=1){for(var w=g[p],b=0,nt=0,et=w;nt<et.length;nt+=1)b+=et[nt].length;for(var r=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),it=0,ot=w;it<ot.length;it+=1)if(h=ot[it],0!==h.length&&!dg(h))for(f=0,c=0;c<h.length;c++)e=h[c],c>=1&&(o=h[c-1],kg(e,o)||(r.vertexLength+4>tt.MAX_VERTEX_ARRAY_LENGTH&&(r=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray)),u=e.sub(o)._perp()._unit(),rt=o.dist(e),f+rt>32768&&(f=0),ro(this.layoutVertexArray,e.x,e.y,u.x,u.y,0,0,f),ro(this.layoutVertexArray,e.x,e.y,u.x,u.y,0,1,f),f+=rt,ro(this.layoutVertexArray,o.x,o.y,u.x,u.y,0,0,f),ro(this.layoutVertexArray,o.x,o.y,u.x,u.y,0,1,f),s=r.vertexLength,this.indexArray.emplaceBack(s,s+1,s+2),this.indexArray.emplaceBack(s+1,s+2,s+3),r.vertexLength+=4,r.primitiveLength+=2));r.vertexLength+b>tt.MAX_VERTEX_ARRAY_LENGTH&&(r=this.segments.prepareSegment(b,this.layoutVertexArray,this.indexArray));for(var k=[],st=[],ut=r.vertexLength,ft=0,ht=w;ft<ht.length;ft+=1)if(v=ht[ft],0!==v.length)for(v!==w[0]&&st.push(k.length/2),d=0;d<v.length;d++)y=v[d],ro(this.layoutVertexArray,y.x,y.y,0,0,1,1,0),k.push(y.x),k.push(y.y);for(l=ta(k,st),a=0;a<l.length;a+=3)this.indexArray.emplaceBack(ut+l[a],ut+l[a+1],ut+l[a+2]);r.primitiveLength+=l.length/3;r.vertexLength+=b}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,n,i)};e("FillExtrusionBucket",di,{omit:["layers"]});var gg={paint:new vt({"fill-extrusion-opacity":new f(t["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new o(t["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new f(t["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new f(t["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new vi(t["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new o(t["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new o(t["paint_fill-extrusion"]["fill-extrusion-base"])})},nn=function(n){function t(t){n.call(this,t,gg)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.createBucket=function(n){return new di(n)},t.prototype.queryRadius=function(){return bs(this.paint.get("fill-extrusion-translate"))},t.prototype.queryIntersectsFeature=function(n,t,i,r,u,f,e){return ll(ks(n,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),f.angle,e),r)},t.prototype.hasOffscreenPass=function(){return 0!==this.paint.get("fill-extrusion-opacity")&&"none"!==this.visibility},t.prototype.resize=function(){this.viewportFrame&&(this.viewportFrame.destroy(),this.viewportFrame=null)},t}(yi),ha=ft([{name:"a_pos_normal",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),dw=ha.members,gw=(ha.size,ha.alignment,yf);yf.types=["Unknown","Point","LineString","Polygon"];yf.prototype.loadGeometry=function(){var t=this._pbf,f;t.pos=this._geometry;for(var n,s=t.readVarint()+t.pos,i=1,r=0,e=0,o=0,u=[];t.pos<s;)if(r<=0&&(f=t.readVarint(),i=7&f,r=f>>3),r--,1===i||2===i)e+=t.readSVarint(),o+=t.readSVarint(),1===i&&(n&&u.push(n),n=[]),n.push(new ot(e,o));else{if(7!==i)throw new Error("unknown command "+i);n&&n.push(n[0].clone())}return n&&u.push(n),u};yf.prototype.bbox=function(){var n=this._pbf,h;n.pos=this._geometry;for(var c=n.readVarint()+n.pos,t=1,u=0,i=0,r=0,f=1/0,e=-1/0,o=1/0,s=-1/0;n.pos<c;)if(u<=0&&(h=n.readVarint(),t=7&h,u=h>>3),u--,1===t||2===t)(i+=n.readSVarint())<f&&(f=i),i>e&&(e=i),(r+=n.readSVarint())<o&&(o=r),r>s&&(s=r);else if(7!==t)throw new Error("unknown command "+t);return[f,o,e,s]};yf.prototype.toGeoJSON=function(n,t,i){function o(n){for(var i,r,t=0;t<n.length;t++)i=n[t],r=180-360*(i.y+a)/c,n[t]=[360*(i.x+l)/c-180,360/Math.PI*Math.atan(Math.exp(r*Math.PI/180))-90]}var r,f,c=this.extent*Math.pow(2,i),l=this.extent*n,a=this.extent*t,u=this.loadGeometry(),e=yf.types[this.type],s,h;switch(this.type){case 1:for(s=[],r=0;r<u.length;r++)s[r]=u[r][0];o(u=s);break;case 2:for(r=0;r<u.length;r++)o(u[r]);break;case 3:for(u=function(n){var e=n.length,t,f,r,i,u;if(e<=1)return[n];for(r=[],i=0;i<e;i++)u=rn(n[i]),0!==u&&(void 0===f&&(f=u<0),f===u<0?(t&&r.push(t),t=[n[i]]):t.push(n[i]));return t&&r.push(t),r}(u),r=0;r<u.length;r++)for(f=0;f<u[r].length;f++)o(u[r][f])}return 1===u.length?u=u[0]:e="Multi"+e,h={type:"Feature",geometry:{type:e,coordinates:u},properties:this.properties},"id"in this&&(h.id=this.id),h};ca=nb;nb.prototype.feature=function(n){if(n<0||n>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[n];var t=this._pbf.readVarint()+this._pbf.pos;return new gw(this._pbf,t,this.extent,this._keys,this._values)};var uo={VectorTile:function(n,t){this.layers=n.readFields(fn,{},t)},VectorTileFeature:gw,VectorTileLayer:ca},en=uo.VectorTileFeature.types,tb=63,on=Math.cos(Math.PI/180*37.5),la=.5,ib=Math.pow(2,14)/la;wt=function(n){this.zoom=n.zoom;this.overscaling=n.overscaling;this.layers=n.layers;this.layerIds=this.layers.map(function(n){return n.id});this.index=n.index;this.layoutVertexArray=new us;this.indexArray=new pi;this.programConfigurations=new pt(dw,n.layers,n.zoom);this.segments=new tt};wt.prototype.populate=function(n,t){for(var e,i=0,u=n;i<u.length;i+=1){var f=u[i],r=f.feature,o=f.index,s=f.sourceLayerIndex;this.layers[0]._featureFilter(new k(this.zoom),r)&&(e=af(r),this.addFeature(r,e,o),t.featureIndex.insert(r,e,o,s,this.index))}};wt.prototype.update=function(n,t){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(n,t,this.stateDependentLayers)};wt.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length};wt.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload};wt.prototype.upload=function(n){this.uploaded||(this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,dw),this.indexBuffer=n.createIndexBuffer(this.indexArray));this.programConfigurations.upload(n);this.uploaded=!0};wt.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())};wt.prototype.addFeature=function(n,t,i){for(var e,r=this.layers[0].layout,o=r.get("line-join").evaluate(n,{}),s=r.get("line-cap"),h=r.get("line-miter-limit"),c=r.get("line-round-limit"),u=0,f=t;u<f.length;u+=1)e=f[u],this.addLine(e,n,o,s,h,c,i)};wt.prototype.addLine=function(n,t,i,r,u,f,e){var h=null,g,v,w,d,p,at,et,vt,a,kt,dt,tt,yt,ht,wt,ct;for(t.properties&&t.properties.hasOwnProperty("mapbox_clip_start")&&t.properties.hasOwnProperty("mapbox_clip_end")&&(h={start:t.properties.mapbox_clip_start,end:t.properties.mapbox_clip_end,tileTotal:void 0}),g="Polygon"===en[t.type],v=n.length;v>=2&&n[v-1].equals(n[v-2]);)v--;for(w=0;w<v-1&&n[w].equals(n[w+1]);)w++;if(!(v<(g?3:2))){h&&(h.tileTotal=function(n,t,i){for(var u,f,e=0,r=t;r<i-1;r++)u=n[r],f=n[r+1],e+=u.dist(f);return e}(n,w,v));"bevel"===i&&(u=1.05);var it=lt/(512*this.overscaling)*15,gt=n[w],c=this.segments.prepareSegment(10*v,this.layoutVertexArray,this.indexArray);this.distance=0;var o,rt,ut,ni=r,ti=g?"butt":r,nt=!0,k=void 0,y=void 0,l=void 0,s=void 0;for(this.e1=this.e2=this.e3=-1,g&&(o=n[v-2],s=gt.sub(o)._unit()._perp()),d=w;d<v;d++)if(!(y=g&&d===v-1?n[w+1]:n[d+1])||!n[d].equals(y)){s&&(l=s);o&&(k=o);o=n[d];s=y?y.sub(o)._unit()._perp():l;p=(l=l||s).add(s);0===p.x&&0===p.y||p._unit();var ft=p.x*s.x+p.y*s.y,b=0!==ft?1/ft:1/0,bt=ft<on&&k&&y;if(bt&&d>w&&(at=o.dist(k),at>2*it&&(et=o.sub(o.sub(k)._mult(it/at)._round()),this.distance+=et.dist(k),this.addCurrentVertex(et,this.distance,l.mult(1),0,0,!1,c,h),k=et)),vt=k&&y,a=vt?i:y?ni:ti,vt&&"round"===a&&(b<f?a="miter":b<=2&&(a="fakeround")),"miter"===a&&b>u&&(a="bevel"),"bevel"===a&&(b>2&&(a="flipbevel"),b<u&&(a="miter")),k&&(this.distance+=o.dist(k)),"miter"===a)p._mult(b),this.addCurrentVertex(o,this.distance,p,0,0,!1,c,h);else if("flipbevel"===a)b>100?p=s.clone().mult(-1):(kt=l.x*s.y-l.y*s.x>0?-1:1,dt=b*l.add(s).mag()/l.sub(s).mag(),p._perp()._mult(dt*kt)),this.addCurrentVertex(o,this.distance,p,0,0,!1,c,h),this.addCurrentVertex(o,this.distance,p.mult(-1),0,0,!1,c,h);else if("bevel"===a||"fakeround"===a){if(tt=l.x*s.y-l.y*s.x>0,yt=-Math.sqrt(b*b-1),tt?(ut=0,rt=yt):(rt=0,ut=yt),nt||this.addCurrentVertex(o,this.distance,l,rt,ut,!1,c,h),"fakeround"===a){for(var ot=Math.floor(8*(.5-(ft-.5))),st=void 0,pt=0;pt<ot;pt++)st=s.mult((pt+1)/(ot+1))._add(l)._unit(),this.addPieSliceVertex(o,this.distance,st,tt,c,h);for(this.addPieSliceVertex(o,this.distance,p,tt,c,h),ht=ot-1;ht>=0;ht--)st=l.mult((ht+1)/(ot+1))._add(s)._unit(),this.addPieSliceVertex(o,this.distance,st,tt,c,h)}y&&this.addCurrentVertex(o,this.distance,s,-rt,-ut,!1,c,h)}else"butt"===a?(nt||this.addCurrentVertex(o,this.distance,l,0,0,!1,c,h),y&&this.addCurrentVertex(o,this.distance,s,0,0,!1,c,h)):"square"===a?(nt||(this.addCurrentVertex(o,this.distance,l,1,1,!1,c,h),this.e1=this.e2=-1),y&&this.addCurrentVertex(o,this.distance,s,-1,-1,!1,c,h)):"round"===a&&(nt||(this.addCurrentVertex(o,this.distance,l,0,0,!1,c,h),this.addCurrentVertex(o,this.distance,l,1,1,!0,c,h),this.e1=this.e2=-1),y&&(this.addCurrentVertex(o,this.distance,s,-1,-1,!0,c,h),this.addCurrentVertex(o,this.distance,s,0,0,!1,c,h)));bt&&d<v-1&&(wt=o.dist(y),wt>2*it&&(ct=o.add(y.sub(o)._mult(it/wt)._round()),this.distance+=ct.dist(o),this.addCurrentVertex(ct,this.distance,s.mult(1),0,0,!1,c,h),o=ct));nt=!1}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,e)}};wt.prototype.addCurrentVertex=function(n,t,i,r,u,f,e,o){var s,h=this.layoutVertexArray,c=this.indexArray;o&&(t=rb(t,o));s=i.clone();r&&s._sub(i.perp()._mult(r));aa(h,n,s,f,!1,r,t);this.e3=e.vertexLength++;this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),e.primitiveLength++);this.e1=this.e2;this.e2=this.e3;s=i.mult(-1);u&&s._sub(i.perp()._mult(u));aa(h,n,s,f,!0,-u,t);this.e3=e.vertexLength++;this.e1>=0&&this.e2>=0&&(c.emplaceBack(this.e1,this.e2,this.e3),e.primitiveLength++);this.e1=this.e2;this.e2=this.e3;t>ib/2&&!o&&(this.distance=0,this.addCurrentVertex(n,this.distance,i,r,u,f,e))};wt.prototype.addPieSliceVertex=function(n,t,i,r,u,f){i=i.mult(r?-1:1);var e=this.layoutVertexArray,o=this.indexArray;f&&(t=rb(t,f));aa(e,n,i,!1,r,0,t);this.e3=u.vertexLength++;this.e1>=0&&this.e2>=0&&(o.emplaceBack(this.e1,this.e2,this.e3),u.primitiveLength++);r?this.e2=this.e3:this.e1=this.e3};e("LineBucket",wt,{omit:["layers"]});var sn=new vt({"line-cap":new f(t.layout_line["line-cap"]),"line-join":new o(t.layout_line["line-join"]),"line-miter-limit":new f(t.layout_line["line-miter-limit"]),"line-round-limit":new f(t.layout_line["line-round-limit"])}),ub={paint:new vt({"line-opacity":new o(t.paint_line["line-opacity"]),"line-color":new o(t.paint_line["line-color"]),"line-translate":new f(t.paint_line["line-translate"]),"line-translate-anchor":new f(t.paint_line["line-translate-anchor"]),"line-width":new o(t.paint_line["line-width"]),"line-gap-width":new o(t.paint_line["line-gap-width"]),"line-offset":new o(t.paint_line["line-offset"]),"line-blur":new o(t.paint_line["line-blur"]),"line-dasharray":new vi(t.paint_line["line-dasharray"]),"line-pattern":new vi(t.paint_line["line-pattern"]),"line-gradient":new hf(t.paint_line["line-gradient"])}),layout:sn},fb=new(function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.possiblyEvaluate=function(t,i){return i=new k(Math.floor(i.zoom),{now:i.now,fadeDuration:i.fadeDuration,zoomHistory:i.zoomHistory,transition:i.transition}),n.prototype.possiblyEvaluate.call(this,t,i)},t.prototype.evaluate=function(t,i,r,u){return i=si({},i,{zoom:Math.floor(i.zoom)}),n.prototype.evaluate.call(this,t,i,r,u)},t}(o))(ub.paint.properties["line-width"].specification);fb.useIntegerZoom=!0;eb=function(n){function t(t){n.call(this,t,ub)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype._handleSpecialPaintPropertyUpdate=function(n){"line-gradient"===n&&this._updateGradient()},t.prototype._updateGradient=function(){var n=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=cw(n,"lineProgress");this.gradientTexture=null},t.prototype.recalculate=function(t){n.prototype.recalculate.call(this,t);this.paint._values["line-floorwidth"]=fb.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t)},t.prototype.createBucket=function(n){return new wt(n)},t.prototype.queryRadius=function(n){var t=n,i=ob(ke("line-width",this,t),ke("line-gap-width",this,t)),r=ke("line-offset",this,t);return i/2+Math.abs(r)+bs(this.paint.get("line-translate"))},t.prototype.queryIntersectsFeature=function(n,t,i,r,u,f,e){var s=ks(n,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),f.angle,e),h=e/2*ob(this.paint.get("line-width").evaluate(t,i),this.paint.get("line-gap-width").evaluate(t,i)),o=this.paint.get("line-offset").evaluate(t,i);return o&&(r=function(n,t){for(var s=[],h=new ot(0,0),f=0;f<n.length;f++){for(var r=n[f],c=[],i=0;i<r.length;i++){var l=r[i-1],e=r[i],a=r[i+1],v=0===i?h:e.sub(l)._unit()._perp(),o=i===r.length-1?h:a.sub(e)._unit()._perp(),u=v._add(o)._unit(),y=u.x*o.x+u.y*o.y;u._mult(1/y);c.push(u._mult(t)._add(e))}s.push(c)}return s}(r,o*e)),wp(s,r,h)},t}(yi);var va=ft([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"}]),hn=ft([{name:"a_projected_pos",components:3,type:"Float32"}],4),cn=(ft([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ft([{name:"a_placed",components:2,type:"Uint8"}],4)),ln=(ft([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"},{type:"Int16",name:"radius"},{type:"Int16",name:"signedDistanceFromAnchor"}]),ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4)),an=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4);ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"hidden"}]);ft([{type:"Float32",name:"offsetX"}]);ft([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);pf={"!":"︕","#":"＃",$:"＄","%":"％","&":"＆","(":"︵",")":"︶","*":"＊","+":"＋",",":"︐","-":"︲",".":"・","/":"／",":":"︓",";":"︔","<":"︿","=":"＝",">":"﹀","?":"︖","@":"＠","[":"﹇","\\":"＼","]":"﹈","^":"＾",_:"︳","`":"｀","{":"︷","|":"―","}":"︸","~":"～","¢":"￠","£":"￡","¥":"￥","¦":"￤","¬":"￢","¯":"￣","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"￦","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","！":"︕","（":"︵","）":"︶","，":"︐","－":"︲","．":"・","：":"︓","；":"︔","＜":"︿","＞":"﹀","？":"︖","［":"﹇","］":"﹈","＿":"︳","｛":"︷","｜":"―","｝":"︸","｟":"︵","｠":"︶","｡":"︒","｢":"﹁","｣":"﹂"};ya=function(n){function t(t,i,r,u){n.call(this,t,i);this.angle=r;void 0!==u&&(this.segment=u)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.clone=function(){return new t(this.x,this.y,this.angle,this.segment)},t}(ot);e("Anchor",ya);hb=uo.VectorTileFeature.types;cb=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];wf=function(n){this.layoutVertexArray=new fs;this.indexArray=new pi;this.programConfigurations=n;this.segments=new tt;this.dynamicLayoutVertexArray=new es;this.opacityVertexArray=new os;this.placedSymbolArray=new tl};wf.prototype.upload=function(n,t,i,r){i&&(this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,va.members),this.indexBuffer=n.createIndexBuffer(this.indexArray,t),this.dynamicLayoutVertexBuffer=n.createVertexBuffer(this.dynamicLayoutVertexArray,hn.members,!0),this.opacityVertexBuffer=n.createVertexBuffer(this.opacityVertexArray,cb,!0),this.opacityVertexBuffer.itemSize=1);(i||r)&&this.programConfigurations.upload(n)};wf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())};e("SymbolBuffers",wf);bf=function(n,t,i){this.layoutVertexArray=new n;this.layoutAttributes=t;this.indexArray=new i;this.segments=new tt;this.collisionVertexArray=new hs};bf.prototype.upload=function(n){this.layoutVertexBuffer=n.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes);this.indexBuffer=n.createIndexBuffer(this.indexArray);this.collisionVertexBuffer=n.createVertexBuffer(this.collisionVertexArray,cn.members,!0)};bf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())};e("CollisionBuffers",bf);v=function(n){var i,t;this.collisionBoxArray=n.collisionBoxArray;this.zoom=n.zoom;this.overscaling=n.overscaling;this.layers=n.layers;this.layerIds=this.layers.map(function(n){return n.id});this.index=n.index;this.pixelRatio=n.pixelRatio;this.sourceLayerIndex=n.sourceLayerIndex;i=this.layers[0]._unevaluatedLayout._values;this.textSizeData=pa(this.zoom,i["text-size"]);this.iconSizeData=pa(this.zoom,i["icon-size"]);t=this.layers[0].layout;this.sortFeaturesByY=t.get("text-allow-overlap")||t.get("icon-allow-overlap")||t.get("text-ignore-placement")||t.get("icon-ignore-placement");this.sourceID=n.sourceID};v.prototype.createArrays=function(){this.text=new wf(new pt(va.members,this.layers,this.zoom,function(n){return/^text/.test(n)}));this.icon=new wf(new pt(va.members,this.layers,this.zoom,function(n){return/^icon/.test(n)}));this.collisionBox=new bf(ve,ln.members,pe);this.collisionCircle=new bf(ve,an.members,pi);this.glyphOffsetArray=new rl;this.lineVertexArray=new fl};v.prototype.calculateGlyphDependencies=function(n,t,i,r){for(var f,u=0;u<n.length;u++)(t[n.charCodeAt(u)]=!0,i&&r)&&(f=pf[n.charAt(u)],f&&(t[f.charCodeAt(0)]=!0))};v.prototype.populate=function(n,t){var e=this.layers[0],u=e.layout,h=u.get("text-font"),w=u.get("text-field"),c=u.get("icon-image"),b=("constant"!==w.value.kind||w.value.value.toString().length>0)&&("constant"!==h.value.kind||h.value.value.length>0),d="constant"!==c.value.kind||c.value.value&&c.value.value.length>0,i,f,v,s,p,rt;if(this.features=[],b||d){for(var ut=t.iconDependencies,o=t.glyphDependencies,ft=new k(this.zoom),l=0,g=n;l<g.length;l+=1){var a=g[l],r=a.feature,et=a.index,ot=a.sourceLayerIndex;if(e._featureFilter(ft,r)&&(i=void 0,b&&(i=vn(i=e.getValueAndResolveTokens("text-field",r),e,r)),f=void 0,(d&&(f=e.getValueAndResolveTokens("icon-image",r)),i||f)&&(v={text:i,icon:f,index:et,sourceLayerIndex:ot,geometry:af(r),properties:r.properties,type:hb[r.type]},void 0!==r.id&&(v.id=r.id),this.features.push(v),f&&(ut[f]=!0),i))){var y=h.evaluate(r,{}).join(","),st=o[y]=o[y]||{},nt="map"===u.get("text-rotation-alignment")&&"point"!==u.get("symbol-placement");if(i instanceof bt)for(s=0,p=i.sections;s<p.length;s+=1){var tt=p[s],ht=pc(i.toString()),it=tt.fontStack||y,ct=o[it]=o[it]||{};this.calculateGlyphDependencies(tt.text,ct,nt,ht)}else rt=pc(i),this.calculateGlyphDependencies(i,st,nt,rt)}}"line"===u.get("symbol-placement")&&(this.features=function(n){function y(i){t.push(n[i]);c++}function p(n,i,r){var f=u[n];return delete u[n],u[i]=f,t[f].geometry[0].pop(),t[f].geometry[0]=t[f].geometry[0].concat(r[0]),f}function w(n,i,r){var u=f[i];return delete f[i],f[n]=u,t[u].geometry[0].shift(),t[u].geometry[0]=r[0].concat(t[u].geometry[0]),u}function l(n,t,i){var r=i?t[0][t[0].length-1]:t[0][0];return n+":"+r.x+":"+r.y}for(var i,r,a,v,f={},u={},t=[],c=0,e=0;e<n.length;e++){var s=n[e],o=s.geometry,h=s.text instanceof bt?s.text.toString():s.text;h?(i=l(h,o),r=l(h,o,!0),i in u&&r in f&&u[i]!==f[r]?(a=w(i,r,o),v=p(i,r,t[a].geometry),delete f[i],delete u[r],u[l(h,t[v].geometry,!0)]=v,t[a].geometry=null):i in u?p(i,r,o):r in f?w(i,r,o):(y(e),f[i]=c-1,u[r]=c-1)):y(e)}return t.filter(function(n){return n.geometry})}(this.features))}};v.prototype.update=function(n,t){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(n,t,this.layers),this.icon.programConfigurations.updatePaintArrays(n,t,this.layers))};v.prototype.isEmpty=function(){return 0===this.symbolInstances.length};v.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload};v.prototype.upload=function(n){this.uploaded||(this.collisionBox.upload(n),this.collisionCircle.upload(n));this.text.upload(n,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload);this.icon.upload(n,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload);this.uploaded=!0};v.prototype.destroy=function(){this.text.destroy();this.icon.destroy();this.collisionBox.destroy();this.collisionCircle.destroy()};v.prototype.addToLineVertexArray=function(n,t){var o=this.lineVertexArray.length,i,u,f;if(void 0!==n.segment){for(var s=n.dist(t[n.segment+1]),h=n.dist(t[n.segment]),e={},r=n.segment+1;r<t.length;r++)e[r]={x:t[r].x,y:t[r].y,tileUnitDistanceFromAnchor:s},r<t.length-1&&(s+=t[r+1].dist(t[r]));for(i=n.segment||0;i>=0;i--)e[i]={x:t[i].x,y:t[i].y,tileUnitDistanceFromAnchor:h},i>0&&(h+=t[i-1].dist(t[i]));for(u=0;u<t.length;u++)f=e[u],this.lineVertexArray.emplaceBack(f.x,f.y,f.tileUnitDistanceFromAnchor)}return{lineStartIndex:o,lineLength:this.lineVertexArray.length-o}};v.prototype.addSymbols=function(n,t,i,r,u,f,e,o,s,h){for(var b=n.indexArray,v=n.layoutVertexArray,rt=n.dynamicLayoutVertexArray,y=n.segments.prepareSegment(4*t.length,n.layoutVertexArray,n.indexArray),k=this.glyphOffsetArray.length,ut=y.vertexLength,w=0,d=t;w<d.length;w+=1){var l=d[w],g=l.tl,nt=l.tr,tt=l.bl,it=l.br,c=l.tex,a=y.vertexLength,p=l.glyphOffset[1];gs(v,o.x,o.y,g.x,p+g.y,c.x,c.y,i);gs(v,o.x,o.y,nt.x,p+nt.y,c.x+c.w,c.y,i);gs(v,o.x,o.y,tt.x,p+tt.y,c.x,c.y+c.h,i);gs(v,o.x,o.y,it.x,p+it.y,c.x+c.w,c.y+c.h,i);wa(rt,o,0);b.emplaceBack(a,a+1,a+2);b.emplaceBack(a+1,a+2,a+3);y.vertexLength+=4;y.primitiveLength+=2;this.glyphOffsetArray.emplaceBack(l.glyphOffset[0])}n.placedSymbolArray.emplaceBack(o.x,o.y,k,this.glyphOffsetArray.length-k,ut,s,h,o.segment,i?i[0]:0,i?i[1]:0,r[0],r[1],e,!1);n.programConfigurations.populatePaintArrays(n.layoutVertexArray.length,f,f.index)};v.prototype._addCollisionDebugVertex=function(n,t,i,r,u){return t.emplaceBack(0,0),n.emplaceBack(i.x,i.y,r.x,r.y,Math.round(u.x),Math.round(u.y))};v.prototype.addCollisionDebugVertices=function(n,t,i,r,u,f,e,o){var c=u.segments.prepareSegment(4,u.layoutVertexArray,u.indexArray),s=c.vertexLength,l=u.layoutVertexArray,a=u.collisionVertexArray,v,h;(this._addCollisionDebugVertex(l,a,f,e.anchor,new ot(n,t)),this._addCollisionDebugVertex(l,a,f,e.anchor,new ot(i,t)),this._addCollisionDebugVertex(l,a,f,e.anchor,new ot(i,r)),this._addCollisionDebugVertex(l,a,f,e.anchor,new ot(n,r)),c.vertexLength+=4,o)?(v=u.indexArray,v.emplaceBack(s,s+1,s+2),v.emplaceBack(s,s+2,s+3),c.primitiveLength+=2):(h=u.indexArray,h.emplaceBack(s,s+1),h.emplaceBack(s+1,s+2),h.emplaceBack(s+2,s+3),h.emplaceBack(s+3,s),c.primitiveLength+=4)};v.prototype.generateCollisionDebugBuffers=function(){for(var n,r,u,f,i=0,e=this.symbolInstances;i<e.length;i+=1)for(n=e[i],n.textCollisionFeature={boxStartIndex:n.textBoxStartIndex,boxEndIndex:n.textBoxEndIndex},n.iconCollisionFeature={boxStartIndex:n.iconBoxStartIndex,boxEndIndex:n.iconBoxEndIndex},r=0;r<2;r++)if(u=n[0===r?"textCollisionFeature":"iconCollisionFeature"],u)for(f=u.boxStartIndex;f<u.boxEndIndex;f++){var t=this.collisionBoxArray.get(f),s=t.x1,h=t.y1,c=t.x2,l=t.y2,o=t.radius>0;this.addCollisionDebugVertices(s,h,c,l,o?this.collisionCircle:this.collisionBox,t.anchorPoint,n,o)}};v.prototype.deserializeCollisionBoxes=function(n,t,i,r,u){for(var f,h,o,e={},s=t;s<i;s++){if(f=n.get(s),0===f.radius){e.textBox={x1:f.x1,y1:f.y1,x2:f.x2,y2:f.y2,anchorPointX:f.anchorPointX,anchorPointY:f.anchorPointY};e.textFeatureIndex=f.featureIndex;break}e.textCircles||(e.textCircles=[],e.textFeatureIndex=f.featureIndex);e.textCircles.push(f.anchorPointX,f.anchorPointY,f.radius,f.signedDistanceFromAnchor,1)}for(h=r;h<u;h++)if(o=n.get(h),0===o.radius){e.iconBox={x1:o.x1,y1:o.y1,x2:o.x2,y2:o.y2,anchorPointX:o.anchorPointX,anchorPointY:o.anchorPointY};e.iconFeatureIndex=o.featureIndex;break}return e};v.prototype.hasTextData=function(){return this.text.segments.get().length>0};v.prototype.hasIconData=function(){return this.icon.segments.get().length>0};v.prototype.hasCollisionBoxData=function(){return this.collisionBox.segments.get().length>0};v.prototype.hasCollisionCircleData=function(){return this.collisionCircle.segments.get().length>0};v.prototype.sortFeatures=function(n){var t=this,u,f,s,h,e,c,l,a,o,v,p,r;if(this.sortFeaturesByY&&this.sortedAngle!==n&&(this.sortedAngle=n,!(this.text.segments.get().length>1||this.icon.segments.get().length>1))){for(u=[],f=0;f<this.symbolInstances.length;f++)u.push(f);for(s=Math.sin(n),h=Math.cos(n),u.sort(function(n,i){var r=t.symbolInstances[n],u=t.symbolInstances[i];return(0|Math.round(s*r.anchor.x+h*r.anchor.y))-(0|Math.round(s*u.anchor.x+h*u.anchor.y))||u.featureIndex-r.featureIndex}),this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[],e=0,c=u;e<c.length;e+=1){for(l=c[e],a=t.symbolInstances[l],t.featureSortOrder.push(a.featureIndex),o=0,v=a.placedTextSymbolIndices;o<v.length;o+=1)for(var w=v[o],y=t.text.placedSymbolArray.get(w),b=y.vertexStartIndex+4*y.numGlyphs,i=y.vertexStartIndex;i<b;i+=4)t.text.indexArray.emplaceBack(i,i+1,i+2),t.text.indexArray.emplaceBack(i+1,i+2,i+3);p=t.icon.placedSymbolArray.get(l);p.numGlyphs&&(r=p.vertexStartIndex,t.icon.indexArray.emplaceBack(r,r+1,r+2),t.icon.indexArray.emplaceBack(r+1,r+2,r+3))}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray);this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}};e("SymbolBucket",v,{omit:["layers","collisionBoxArray","features","compareText"],shallow:["symbolInstances"]});v.MAX_GLYPHS=65535;v.addDynamicAttributes=wa;var yn=new vt({"symbol-placement":new f(t.layout_symbol["symbol-placement"]),"symbol-spacing":new f(t.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new f(t.layout_symbol["symbol-avoid-edges"]),"icon-allow-overlap":new f(t.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new f(t.layout_symbol["icon-ignore-placement"]),"icon-optional":new f(t.layout_symbol["icon-optional"]),"icon-rotation-alignment":new f(t.layout_symbol["icon-rotation-alignment"]),"icon-size":new o(t.layout_symbol["icon-size"]),"icon-text-fit":new f(t.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new f(t.layout_symbol["icon-text-fit-padding"]),"icon-image":new o(t.layout_symbol["icon-image"]),"icon-rotate":new o(t.layout_symbol["icon-rotate"]),"icon-padding":new f(t.layout_symbol["icon-padding"]),"icon-keep-upright":new f(t.layout_symbol["icon-keep-upright"]),"icon-offset":new o(t.layout_symbol["icon-offset"]),"icon-anchor":new o(t.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new f(t.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new f(t.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new f(t.layout_symbol["text-rotation-alignment"]),"text-field":new o(t.layout_symbol["text-field"]),"text-font":new o(t.layout_symbol["text-font"]),"text-size":new o(t.layout_symbol["text-size"]),"text-max-width":new o(t.layout_symbol["text-max-width"]),"text-line-height":new f(t.layout_symbol["text-line-height"]),"text-letter-spacing":new o(t.layout_symbol["text-letter-spacing"]),"text-justify":new o(t.layout_symbol["text-justify"]),"text-anchor":new o(t.layout_symbol["text-anchor"]),"text-max-angle":new f(t.layout_symbol["text-max-angle"]),"text-rotate":new o(t.layout_symbol["text-rotate"]),"text-padding":new f(t.layout_symbol["text-padding"]),"text-keep-upright":new f(t.layout_symbol["text-keep-upright"]),"text-transform":new o(t.layout_symbol["text-transform"]),"text-offset":new o(t.layout_symbol["text-offset"]),"text-allow-overlap":new f(t.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new f(t.layout_symbol["text-ignore-placement"]),"text-optional":new f(t.layout_symbol["text-optional"])}),lb={paint:new vt({"icon-opacity":new o(t.paint_symbol["icon-opacity"]),"icon-color":new o(t.paint_symbol["icon-color"]),"icon-halo-color":new o(t.paint_symbol["icon-halo-color"]),"icon-halo-width":new o(t.paint_symbol["icon-halo-width"]),"icon-halo-blur":new o(t.paint_symbol["icon-halo-blur"]),"icon-translate":new f(t.paint_symbol["icon-translate"]),"icon-translate-anchor":new f(t.paint_symbol["icon-translate-anchor"]),"text-opacity":new o(t.paint_symbol["text-opacity"]),"text-color":new o(t.paint_symbol["text-color"]),"text-halo-color":new o(t.paint_symbol["text-halo-color"]),"text-halo-width":new o(t.paint_symbol["text-halo-width"]),"text-halo-blur":new o(t.paint_symbol["text-halo-blur"]),"text-translate":new f(t.paint_symbol["text-translate"]),"text-translate-anchor":new f(t.paint_symbol["text-translate-anchor"])}),layout:yn},pn=function(n){function t(t){n.call(this,t,lb)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.recalculate=function(t){n.prototype.recalculate.call(this,t);"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport");"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport");"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment"));"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment"))},t.prototype.getValueAndResolveTokens=function(n,t){var i,r=this.layout.get(n).evaluate(t,{}),u=this._unevaluatedLayout._values[n];return u.isDataDriven()||fc(u.value)?r:(i=t.properties,r.replace(/{([^{}]+)}/g,function(n,t){return t in i?String(i[t]):""}))},t.prototype.createBucket=function(n){return new v(n)},t.prototype.queryRadius=function(){return 0},t.prototype.queryIntersectsFeature=function(){return!1},t}(yi),wn={paint:new vt({"background-color":new f(t.paint_background["background-color"]),"background-pattern":new vi(t.paint_background["background-pattern"]),"background-opacity":new f(t.paint_background["background-opacity"])})},bn=function(n){function t(t){n.call(this,t,wn)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t}(yi),kn={paint:new vt({"raster-opacity":new f(t.paint_raster["raster-opacity"]),"raster-hue-rotate":new f(t.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new f(t.paint_raster["raster-brightness-min"]),"raster-brightness-max":new f(t.paint_raster["raster-brightness-max"]),"raster-saturation":new f(t.paint_raster["raster-saturation"]),"raster-contrast":new f(t.paint_raster["raster-contrast"]),"raster-resampling":new f(t.paint_raster["raster-resampling"]),"raster-fade-duration":new f(t.paint_raster["raster-fade-duration"])})},dn={circle:ew,heatmap:ig,hillshade:ug,fill:bg,"fill-extrusion":nn,line:eb,symbol:pn,background:bn,raster:function(n){function t(t){n.call(this,t,kn)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t}(yi)};dt.prototype.pack=function(n,t){n=[].concat(n);t=t||{};for(var u,f,e,r,o=[],i=0;i<n.length;i++)if(u=n[i].w||n[i].width,f=n[i].h||n[i].height,e=n[i].id,u&&f){if(!(r=this.packOne(u,f,e)))continue;t.inPlace&&(n[i].x=r.x,n[i].y=r.y,n[i].id=r.id);o.push(r)}return this.shrink(),o};dt.prototype.packOne=function(n,t,i){var u,e,s,r,o,c,h,l,f={freebin:-1,shelf:-1,waste:1/0},a=0;if("string"==typeof i||"number"==typeof i){if(u=this.getBin(i))return this.ref(u),u;"number"==typeof i&&(this.maxId=Math.max(i,this.maxId))}else i=++this.maxId;for(r=0;r<this.freebins.length;r++){if(t===(u=this.freebins[r]).maxh&&n===u.maxw)return this.allocFreebin(r,n,t,i);t>u.maxh||n>u.maxw||t<=u.maxh&&n<=u.maxw&&(s=u.maxw*u.maxh-n*t)<f.waste&&(f.waste=s,f.freebin=r)}for(r=0;r<this.shelves.length;r++)if(a+=(e=this.shelves[r]).h,!(n>e.free)){if(t===e.h)return this.allocShelf(r,n,t,i);t>e.h||t<e.h&&(s=(e.h-t)*n)<f.waste&&(f.freebin=-1,f.waste=s,f.shelf=r)}return-1!==f.freebin?this.allocFreebin(f.freebin,n,t,i):-1!==f.shelf?this.allocShelf(f.shelf,n,t,i):t<=this.h-a&&n<=this.w?(e=new ba(a,this.w,t),this.allocShelf(this.shelves.push(e)-1,n,t,i)):this.autoResize?(o=c=this.h,((h=l=this.w)<=o||n>h)&&(l=2*Math.max(n,h)),(o<h||t>o)&&(c=2*Math.max(t,o)),this.resize(l,c),this.packOne(n,t,i)):null};dt.prototype.allocFreebin=function(n,t,i,r){var u=this.freebins.splice(n,1)[0];return u.id=r,u.w=t,u.h=i,u.refcount=0,this.bins[r]=u,this.ref(u),u};dt.prototype.allocShelf=function(n,t,i,r){var u=this.shelves[n].alloc(t,i,r);return this.bins[r]=u,this.ref(u),u};dt.prototype.shrink=function(){var n;if(this.shelves.length>0){for(var t=0,r=0,i=0;i<this.shelves.length;i++)n=this.shelves[i],r+=n.h,t=Math.max(n.w-n.free,t);this.resize(t,r)}};dt.prototype.getBin=function(n){return this.bins[n]};dt.prototype.ref=function(n){if(1==++n.refcount){var t=n.h;this.stats[t]=1+(0|this.stats[t])}return n.refcount};dt.prototype.unref=function(n){return 0===n.refcount?0:(0==--n.refcount&&(this.stats[n.h]--,delete this.bins[n.id],this.freebins.push(n)),n.refcount)};dt.prototype.clear=function(){this.shelves=[];this.freebins=[];this.stats={};this.bins={};this.maxId=0};dt.prototype.resize=function(n,t){this.w=n;this.h=t;for(var i=0;i<this.shelves.length;i++)this.shelves[i].resize(n);return!0};ba.prototype.alloc=function(n,t,i){if(n>this.free||t>this.h)return null;var r=this.x;return this.x+=n,this.free-=n,new function(n,t,i,r,u,f,e){this.id=n;this.x=t;this.y=i;this.w=r;this.h=u;this.maxw=f||r;this.maxh=e||u;this.refcount=0}(i,r,this.y,n,t,n,this.h)};ba.prototype.resize=function(n){return this.free+=n-this.w,this.w=n,!0};fo=function(n,t){var i=t.pixelRatio;this.paddedRect=n;this.pixelRatio=i};eo={tl:{configurable:!0},br:{configurable:!0},displaySize:{configurable:!0}};eo.tl.get=function(){return[this.paddedRect.x+1,this.paddedRect.y+1]};eo.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]};eo.displaySize.get=function(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]};Object.defineProperties(fo.prototype,eo);ka=function(n){var i={},r=new dt(0,0,{autoResize:!0}),c=[],u,t,f,e,o,s,h;for(u in n)t=n[u],f={x:0,y:0,w:t.data.width+2,h:t.data.height+2},c.push(f),i[u]=new fo(f,t);r.pack(c,{inPlace:!0});e=new ei({width:r.w,height:r.h});for(o in n)s=n[o],h=i[o].paddedRect,ei.copy(s.data,e,{x:0,y:0},{x:h.x+1,y:h.y+1},s.data);this.image=e;this.positions=i};e("ImagePosition",fo);e("ImageAtlas",ka);var ab=self.HTMLImageElement,vb=self.HTMLCanvasElement,yb=self.HTMLVideoElement,pb=self.ImageData,su=function(n,t,i,r){this.context=n;this.format=i;this.texture=n.gl.createTexture();this.update(t,r)};su.prototype.update=function(n,t){var r=n.width,u=n.height,e=!this.size||this.size[0]!==r||this.size[1]!==u,f=this.context,i=f.gl;this.useMipmap=Boolean(t&&t.useMipmap);i.bindTexture(i.TEXTURE_2D,this.texture);e?(this.size=[r,u],f.pixelStoreUnpack.set(1),this.format!==i.RGBA||t&&!1===t.premultiply||f.pixelStoreUnpackPremultiplyAlpha.set(!0),n instanceof ab||n instanceof vb||n instanceof yb||n instanceof pb?i.texImage2D(i.TEXTURE_2D,0,this.format,this.format,i.UNSIGNED_BYTE,n):i.texImage2D(i.TEXTURE_2D,0,this.format,r,u,0,this.format,i.UNSIGNED_BYTE,n.data)):n instanceof ab||n instanceof vb||n instanceof yb||n instanceof pb?i.texSubImage2D(i.TEXTURE_2D,0,0,0,i.RGBA,i.UNSIGNED_BYTE,n):i.texSubImage2D(i.TEXTURE_2D,0,0,0,r,u,i.RGBA,i.UNSIGNED_BYTE,n.data);this.useMipmap&&this.isSizePowerOfTwo()&&i.generateMipmap(i.TEXTURE_2D)};su.prototype.bind=function(n,t,i){var r=this.context.gl;r.bindTexture(r.TEXTURE_2D,this.texture);i!==r.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(i=r.LINEAR);n!==this.filter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,n),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,i||n),this.filter=n);t!==this.wrap&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,t),this.wrap=t)};su.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0};su.prototype.destroy=function(){this.context.gl.deleteTexture(this.texture);this.texture=null};var wb=function(n,t,i,r,u){var f,o,l=8*u-r-1,a=(1<<l)-1,v=a>>1,e=-7,s=i?u-1:0,c=i?-1:1,h=n[t+s];for(s+=c,f=h&(1<<-e)-1,h>>=-e,e+=l;e>0;f=256*f+n[t+s],s+=c,e-=8);for(o=f&(1<<-e)-1,f>>=-e,e+=r;e>0;o=256*o+n[t+s],s+=c,e-=8);if(0===f)f=1-v;else{if(f===a)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,r);f-=v}return(h?-1:1)*o*Math.pow(2,f-r)},bb=function(n,t,i,r,u,f){var e,o,s,l=8*f-u-1,a=(1<<l)-1,h=a>>1,y=23===u?Math.pow(2,-24)-Math.pow(2,-77):0,c=r?0:f-1,v=r?1:-1,p=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,e=a):(e=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-e))<1&&(e--,s*=2),(t+=e+h>=1?y/s:y*Math.pow(2,1-h))*s>=2&&(e++,s/=2),e+h>=a?(o=0,e=a):e+h>=1?(o=(t*s-1)*Math.pow(2,u),e+=h):(o=t*Math.pow(2,h-1)*Math.pow(2,u),e=0));u>=8;n[i+c]=255&o,c+=v,o/=256,u-=8);for(e=e<<u|o,l+=u;l>0;n[i+c]=255&e,c+=v,e/=256,l-=8);n[i+c-v]|=128*p},nh=w;w.Varint=0;w.Fixed64=1;w.Bytes=2;w.Fixed32=5;w.prototype={destroy:function(){this.buf=null},readFields:function(n,t,i){for(i=i||this.length;this.pos<i;){var r=this.readVarint(),u=r>>3,f=this.pos;this.type=7&r;n(u,t,this);this.pos===f&&this.skip(r)}return t},readMessage:function(n,t){return this.readFields(n,t,this.readVarint()+this.pos)},readFixed32:function(){var n=th(this.buf,this.pos);return this.pos+=4,n},readSFixed32:function(){var n=db(this.buf,this.pos);return this.pos+=4,n},readFixed64:function(){var n=th(this.buf,this.pos)+4294967296*th(this.buf,this.pos+4);return this.pos+=8,n},readSFixed64:function(){var n=th(this.buf,this.pos)+4294967296*db(this.buf,this.pos+4);return this.pos+=8,n},readFloat:function(){var n=wb(this.buf,this.pos,!0,23,4);return this.pos+=4,n},readDouble:function(){var n=wb(this.buf,this.pos,!0,52,8);return this.pos+=8,n},readVarint:function(n){var t,i,r=this.buf;return t=127&(i=r[this.pos++]),i<128?t:(t|=(127&(i=r[this.pos++]))<<7,i<128?t:(t|=(127&(i=r[this.pos++]))<<14,i<128?t:(t|=(127&(i=r[this.pos++]))<<21,i<128?t:function(n,t,i){var u,r,f=i.buf;if((r=f[i.pos++],u=(112&r)>>4,r<128)||(r=f[i.pos++],u|=(127&r)<<3,r<128)||(r=f[i.pos++],u|=(127&r)<<10,r<128)||(r=f[i.pos++],u|=(127&r)<<17,r<128)||(r=f[i.pos++],u|=(127&r)<<24,r<128)||(r=f[i.pos++],u|=(1&r)<<31,r<128))return kf(n,u,t);throw new Error("Expected varint not more than 10 bytes");}(t|=(15&(i=r[this.pos]))<<28,n,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var n=this.readVarint();return n%2==1?(n+1)/-2:n/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var n=this.readVarint()+this.pos,t=function(n,t,i){for(var h="",u=t;u<i;){var f,s,c,e=n[u],r=null,o=e>239?4:e>223?3:e>191?2:1;if(u+o>i)break;1===o?e<128&&(r=e):2===o?128==(192&(f=n[u+1]))&&(r=(31&e)<<6|63&f)<=127&&(r=null):3===o?(f=n[u+1],s=n[u+2],128==(192&f)&&128==(192&s)&&((r=(15&e)<<12|(63&f)<<6|63&s)<=2047||r>=55296&&r<=57343)&&(r=null)):4===o&&(f=n[u+1],s=n[u+2],c=n[u+3],128==(192&f)&&128==(192&s)&&128==(192&c)&&((r=(15&e)<<18|(63&f)<<12|(63&s)<<6|63&c)<=65535||r>=1114112)&&(r=null));null===r?(r=65533,o=1):r>65535&&(r-=65536,h+=String.fromCharCode(r>>>10&1023|55296),r=56320|1023&r);h+=String.fromCharCode(r);u+=o}return h}(this.buf,this.pos,n);return this.pos=n,t},readBytes:function(){var n=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,n);return this.pos=n,t},readPackedVarint:function(n,t){var i=vr(this);for(n=n||[];this.pos<i;)n.push(this.readVarint(t));return n},readPackedSVarint:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readSVarint());return n},readPackedBoolean:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readBoolean());return n},readPackedFloat:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readFloat());return n},readPackedDouble:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readDouble());return n},readPackedFixed32:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readFixed32());return n},readPackedSFixed32:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readSFixed32());return n},readPackedFixed64:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readFixed64());return n},readPackedSFixed64:function(n){var t=vr(this);for(n=n||[];this.pos<t;)n.push(this.readSFixed64());return n},skip:function(n){var t=7&n;if(t===w.Varint)for(;this.buf[this.pos++]>127;);else if(t===w.Bytes)this.pos=this.readVarint()+this.pos;else if(t===w.Fixed32)this.pos+=4;else{if(t!==w.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(n,t){this.writeVarint(n<<3|t)},realloc:function(n){for(var i,t=this.length||16;t<this.pos+n;)t*=2;t!==this.length&&(i=new Uint8Array(t),i.set(this.buf),this.buf=i,this.length=t)},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(n){this.realloc(4);df(this.buf,n,this.pos);this.pos+=4},writeSFixed32:function(n){this.realloc(4);df(this.buf,n,this.pos);this.pos+=4},writeFixed64:function(n){this.realloc(8);df(this.buf,-1&n,this.pos);df(this.buf,Math.floor(n*(1/4294967296)),this.pos+4);this.pos+=8},writeSFixed64:function(n){this.realloc(8);df(this.buf,-1&n,this.pos);df(this.buf,Math.floor(n*(1/4294967296)),this.pos+4);this.pos+=8},writeVarint:function(n){(n=+n||0)>268435455||n<0?function(n,t){var i,r;if(n>=0?(i=n%4294967296|0,r=n/4294967296|0):(r=~(-n/4294967296),4294967295^(i=~(-n%4294967296))?i=i+1|0:(i=0,r=r+1|0)),n>=0x10000000000000000||n<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),function(n,t,i){i.buf[i.pos++]=127&n|128;n>>>=7;i.buf[i.pos++]=127&n|128;n>>>=7;i.buf[i.pos++]=127&n|128;n>>>=7;i.buf[i.pos++]=127&n|128;n>>>=7;i.buf[i.pos]=127&n}(i,0,t),function(n,t){var i=(7&n)<<4;(t.buf[t.pos++]|=i|((n>>>=3)?128:0),n)&&(t.buf[t.pos++]=127&n|((n>>>=7)?128:0),n)&&(t.buf[t.pos++]=127&n|((n>>>=7)?128:0),n)&&(t.buf[t.pos++]=127&n|((n>>>=7)?128:0),n)&&(t.buf[t.pos++]=127&n|((n>>>=7)?128:0),n)&&(t.buf[t.pos++]=127&n)}(r,t)}(n,this):(this.realloc(4),this.buf[this.pos++]=127&n|(n>127?128:0),n<=127||(this.buf[this.pos++]=127&(n>>>=7)|(n>127?128:0),n<=127||(this.buf[this.pos++]=127&(n>>>=7)|(n>127?128:0),n<=127||(this.buf[this.pos++]=n>>>7&127))))},writeSVarint:function(n){this.writeVarint(n<0?2*-n-1:2*n)},writeBoolean:function(n){this.writeVarint(Boolean(n))},writeString:function(n){var i,t;n=String(n);this.realloc(4*n.length);this.pos++;i=this.pos;this.pos=function(n,t,i){for(var r,u,f=0;f<t.length;f++){if((r=t.charCodeAt(f))>55295&&r<57344){if(!u){r>56319||f+1===t.length?(n[i++]=239,n[i++]=191,n[i++]=189):u=r;continue}if(r<56320){n[i++]=239;n[i++]=191;n[i++]=189;u=r;continue}r=u-55296<<10|r-56320|65536;u=null}else u&&(n[i++]=239,n[i++]=191,n[i++]=189,u=null);r<128?n[i++]=r:(r<2048?n[i++]=r>>6|192:(r<65536?n[i++]=r>>12|224:(n[i++]=r>>18|240,n[i++]=r>>12&63|128),n[i++]=r>>6&63|128),n[i++]=63&r|128)}return i}(this.buf,n,this.pos);t=this.pos-i;t>=128&&kb(i,t,this);this.pos=i-1;this.writeVarint(t);this.pos+=t},writeFloat:function(n){this.realloc(4);bb(this.buf,n,this.pos,!0,23,4);this.pos+=4},writeDouble:function(n){this.realloc(8);bb(this.buf,n,this.pos,!0,52,8);this.pos+=8},writeBytes:function(n){var i=n.length,t;for(this.writeVarint(i),this.realloc(i),t=0;t<i;t++)this.buf[this.pos++]=n[t]},writeRawMessage:function(n,t){var r,i;this.pos++;r=this.pos;n(t,this);i=this.pos-r;i>=128&&kb(r,i,this);this.pos=r-1;this.writeVarint(i);this.pos+=i},writeMessage:function(n,t,i){this.writeTag(n,w.Bytes);this.writeRawMessage(t,i)},writePackedVarint:function(n,t){this.writeMessage(n,gn,t)},writePackedSVarint:function(n,t){this.writeMessage(n,ntt,t)},writePackedBoolean:function(n,t){this.writeMessage(n,rtt,t)},writePackedFloat:function(n,t){this.writeMessage(n,ttt,t)},writePackedDouble:function(n,t){this.writeMessage(n,itt,t)},writePackedFixed32:function(n,t){this.writeMessage(n,utt,t)},writePackedSFixed32:function(n,t){this.writeMessage(n,ftt,t)},writePackedFixed64:function(n,t){this.writeMessage(n,ett,t)},writePackedSFixed64:function(n,t){this.writeMessage(n,ott,t)},writeBytesField:function(n,t){this.writeTag(n,w.Bytes);this.writeBytes(t)},writeFixed32Field:function(n,t){this.writeTag(n,w.Fixed32);this.writeFixed32(t)},writeSFixed32Field:function(n,t){this.writeTag(n,w.Fixed32);this.writeSFixed32(t)},writeFixed64Field:function(n,t){this.writeTag(n,w.Fixed64);this.writeFixed64(t)},writeSFixed64Field:function(n,t){this.writeTag(n,w.Fixed64);this.writeSFixed64(t)},writeVarintField:function(n,t){this.writeTag(n,w.Varint);this.writeVarint(t)},writeSVarintField:function(n,t){this.writeTag(n,w.Varint);this.writeSVarint(t)},writeStringField:function(n,t){this.writeTag(n,w.Bytes);this.writeString(t)},writeFloatField:function(n,t){this.writeTag(n,w.Fixed32);this.writeFloat(t)},writeDoubleField:function(n,t){this.writeTag(n,w.Fixed64);this.writeDouble(t)},writeBooleanField:function(n,t){this.writeVarintField(n,Boolean(t))}};ih=3;gb=ih;oo=function(n,t,i){this.target=n;this.parent=t;this.mapId=i;this.callbacks={};this.callbackID=0;sv(["receive"],this);this.target.addEventListener("message",this.receive,!1)};oo.prototype.send=function(n,t,i,r){var f=i?this.mapId+":"+this.callbackID++:null,u;i&&(this.callbacks[f]=i);u=[];this.target.postMessage({targetMapId:r,sourceMapId:this.mapId,type:n,id:String(f),data:se(t,u)},u)};oo.prototype.receive=function(n){var i,e=this,t=n.data,o=t.id,r,u,f;t.targetMapId&&this.mapId!==t.targetMapId||(r=function(n,t){var i=[];e.target.postMessage({sourceMapId:e.mapId,type:"<response>",id:String(o),error:n?se(n):null,data:se(t,i)},i)},"<response>"===t.type?(i=this.callbacks[t.id],delete this.callbacks[t.id],i&&t.error?i(uu(t.error)):i&&i(null,uu(t.data))):void 0!==t.id&&this.parent[t.type]?this.parent[t.type](t.sourceMapId,uu(t.data),r):void 0!==t.id&&this.parent.getWorkerSource?(u=t.type.split("."),f=uu(t.data),this.parent.getWorkerSource(t.sourceMapId,u[0],f.source)[u[1]](f,r)):this.parent[t.type](uu(t.data)))};oo.prototype.remove=function(){this.target.removeEventListener("message",this.receive,!1)};gf=function(n,t,i){this.z=n;this.x=t;this.y=i;this.key=ga(0,n,t,i)};gf.prototype.equals=function(n){return this.z===n.z&&this.x===n.x&&this.y===n.y};gf.prototype.url=function(n,t){var u,i,r,f,e,o=(u=this.x,i=this.y,r=this.z,f=nk(256*u,256*(i=Math.pow(2,r)-i-1),r),e=nk(256*(u+1),256*(i+1),r),f[0]+","+f[1]+","+e[0]+","+e[1]),s=function(n,t,i){for(var u,f="",r=n;r>0;r--)f+=(t&(u=1<<r-1)?1:0)+(i&u?2:0);return f}(this.z,this.x,this.y);return n[(this.x+this.y)%n.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String("tms"===t?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",s).replace("{bbox-epsg-3857}",o)};da=function(n,t){this.wrap=n;this.canonical=t;this.key=ga(n,t.z,t.x,t.y)};p=function(n,t,i,r,u){this.overscaledZ=n;this.wrap=t;this.canonical=new gf(i,+r,+u);this.key=ga(t,n,r,u)};p.prototype.equals=function(n){return this.overscaledZ===n.overscaledZ&&this.wrap===n.wrap&&this.canonical.equals(n.canonical)};p.prototype.scaledTo=function(n){var t=this.canonical.z-n;return n>this.canonical.z?new p(n,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new p(n,this.wrap,n,this.canonical.x>>t,this.canonical.y>>t)};p.prototype.isChildOf=function(n){var t=this.canonical.z-n.canonical.z;return 0===n.overscaledZ||n.overscaledZ<this.overscaledZ&&n.canonical.x===this.canonical.x>>t&&n.canonical.y===this.canonical.y>>t};p.prototype.children=function(n){if(this.overscaledZ>=n)return[new p(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var t=this.canonical.z+1,i=2*this.canonical.x,r=2*this.canonical.y;return[new p(t,this.wrap,t,i,r),new p(t,this.wrap,t,i+1,r),new p(t,this.wrap,t,i,r+1),new p(t,this.wrap,t,i+1,r+1)]};p.prototype.isLessThan=function(n){return this.wrap<n.wrap||!(this.wrap>n.wrap)&&(this.overscaledZ<n.overscaledZ||!(this.overscaledZ>n.overscaledZ)&&(this.canonical.x<n.canonical.x||!(this.canonical.x>n.canonical.x)&&this.canonical.y<n.canonical.y))};p.prototype.wrapped=function(){return new p(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)};p.prototype.unwrapTo=function(n){return new p(this.overscaledZ,n,this.canonical.z,this.canonical.x,this.canonical.y)};p.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)};p.prototype.toUnwrapped=function(){return new da(this.wrap,this.canonical)};p.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y};p.prototype.toCoordinate=function(){return new oi(this.canonical.x+Math.pow(2,this.wrap),this.canonical.y,this.canonical.z)};e("CanonicalTileID",gf);e("OverscaledTileID",p,{omit:["posMatrix"]});gi=function(n,t,i){var r,f,o,u;if(this.uid=n,t.height!==t.width)throw new RangeError("DEM tiles must be square");if(i&&"mapbox"!==i&&"terrarium"!==i)return co('"'+i+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');r=this.dim=t.height;this.border=Math.max(Math.ceil(t.height/2),1);this.stride=this.dim+2*this.border;this.data=new Int32Array(this.stride*this.stride);for(var s=t.data,h="terrarium"===i?this._unpackTerrarium:this._unpackMapbox,e=0;e<r;e++)for(f=0;f<r;f++)o=4*(e*r+f),this.set(f,e,h(s[o],s[o+1],s[o+2]));for(u=0;u<r;u++)this.set(-1,u,this.get(0,u)),this.set(r,u,this.get(r-1,u)),this.set(u,-1,this.get(u,0)),this.set(u,r,this.get(u,r-1));this.set(-1,-1,this.get(0,0));this.set(r,-1,this.get(r-1,0));this.set(-1,r,this.get(0,r-1));this.set(r,r,this.get(r-1,r-1))};gi.prototype.set=function(n,t,i){this.data[this._idx(n,t)]=i+65536};gi.prototype.get=function(n,t){return this.data[this._idx(n,t)]-65536};gi.prototype._idx=function(n,t){if(n<-this.border||n>=this.dim+this.border||t<-this.border||t>=this.dim+this.border)throw new RangeError("out of range source coordinates for DEM data");return(t+this.border)*this.stride+(n+this.border)};gi.prototype._unpackMapbox=function(n,t,i){return(65536*n+256*t+i)/10-1e4};gi.prototype._unpackTerrarium=function(n,t,i){return 256*n+t+i/256-32768};gi.prototype.getPixels=function(){return new ei({width:this.dim+2*this.border,height:this.dim+2*this.border},new Uint8Array(this.data.buffer))};gi.prototype.backfillBorder=function(n,t,i){var r;if(this.dim!==n.dim)throw new Error("dem dimension mismatch");var f=t*this.dim,e=t*this.dim+this.dim,o=i*this.dim,s=i*this.dim+this.dim;switch(t){case-1:f=e-1;break;case 1:e=f+1}switch(i){case-1:o=s-1;break;case 1:s=o+1}for(var h=nr(f,-this.border,this.dim+this.border),c=nr(e,-this.border,this.dim+this.border),l=nr(o,-this.border,this.dim+this.border),a=nr(s,-this.border,this.dim+this.border),v=-t*this.dim,y=-i*this.dim,u=l;u<a;u++)for(r=h;r<c;r++)this.set(r,u,n.get(r+v,u+y))};e("DEMData",gi);nv=ft([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);so=function(n){var t,i;for(this._stringToNumber={},this._numberToString=[],t=0;t<n.length;t++)i=n[t],this._stringToNumber[i]=t,this._numberToString[t]=i};so.prototype.encode=function(n){return this._stringToNumber[n]};so.prototype.decode=function(n){return this._numberToString[n]};ho=function(n,t,i,r){this.type="Feature";this._vectorTileFeature=n;n._z=t;n._x=i;n._y=r;this.properties=n.properties;null!=n.id&&(this.id=n.id)};rh={geometry:{configurable:!0}};rh.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry};rh.geometry.set=function(n){this._geometry=n};ho.prototype.toJSON=function(){var t={geometry:this.geometry};for(var n in this)"_geometry"!==n&&"_vectorTileFeature"!==n&&(t[n]=this[n]);return t};Object.defineProperties(ho.prototype,rh);ne=function(){this.state={};this.stateChanges={}};ne.prototype.updateState=function(n,t,i){t=String(t);this.stateChanges[n]=this.stateChanges[n]||{};this.stateChanges[n][t]=this.stateChanges[n][t]||{};si(this.stateChanges[n][t],i)};ne.prototype.getState=function(n,t){t=String(t);var i=this.state[n]||{},r=this.stateChanges[n]||{};return si({},i[t],r[t])};ne.prototype.initializeTileState=function(n,t){n.setFeatureState(this.state,t)};ne.prototype.coalesceChanges=function(n,t){var u={},i,f,r,e;for(i in this.stateChanges){this.state[i]=this.state[i]||{};f={};for(r in this.stateChanges[i])this.state[i][r]||(this.state[i][r]={}),si(this.state[i][r],this.stateChanges[i][r]),f[r]=this.state[i][r];u[i]=f}if(this.stateChanges={},0!==Object.keys(u).length)for(e in n)n[e].setFeatureState(u,t)};yr=function(n,t,i){this.tileID=n;this.x=n.canonical.x;this.y=n.canonical.y;this.z=n.canonical.z;this.grid=t||new uf(lt,16,0);this.featureIndexArray=i||new ol};yr.prototype.insert=function(n,t,i,r,u){var c=this.featureIndexArray.length,o,e;for(this.featureIndexArray.emplaceBack(i,r,u),o=0;o<t.length;o++){for(var h=t[o],f=[1/0,1/0,-1/0,-1/0],s=0;s<h.length;s++)e=h[s],f[0]=Math.min(f[0],e.x),f[1]=Math.min(f[1],e.y),f[2]=Math.max(f[2],e.x),f[3]=Math.max(f[3],e.y);f[0]<lt&&f[1]<lt&&f[2]>=0&&f[3]>=0&&this.grid.insert(c,f[0],f[1],f[2],f[3])}};yr.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new uo.VectorTile(new nh(this.rawTileData)).layers,this.sourceLayerCoder=new so(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers};yr.prototype.query=function(n,t,i){var o=this,y,f,r,e;this.loadVTLayers();for(var w=n.params||{},b=lt/n.tileSize/n.scale,g=bo(w.filter),s=n.queryGeometry,u=n.queryPadding*b,h=1/0,c=1/0,l=-1/0,a=-1/0,v=0;v<s.length;v++)for(y=s[v],f=0;f<y.length;f++)r=y[f],h=Math.min(h,r.x),c=Math.min(c,r.y),l=Math.max(l,r.x),a=Math.max(a,r.y);e=this.grid.query(h-u,c-u,l+u,a+u);e.sort(ltt);for(var k,d={},nt=function(r){var h=e[r],u,f;h!==k&&(k=h,u=o.featureIndexArray.get(h),f=null,o.loadMatchingFeature(d,u.bucketIndex,u.sourceLayerIndex,u.featureIndex,g,w.layers,t,function(t,r){f||(f=af(t));var u={};return t.id&&(u=i.getState(r.sourceLayer||"_geojsonTileLayer",String(t.id))),r.queryIntersectsFeature(s,t,u,f,o.z,n.transform,b,n.posMatrix)}))},p=0;p<e.length;p++)nt(p);return d};yr.prototype.loadMatchingFeature=function(n,t,i,r,u,f,e,o){var v=this.bucketLayerIDs[t],p,h,c,s,l,y,a;if((!f||function(n,t){for(var i=0;i<n.length;i++)if(t.indexOf(n[i])>=0)return!0;return!1}(f,v))&&(p=this.sourceLayerCoder.decode(i),h=this.vtLayers[p].feature(r),u(new k(this.tileID.overscaledZ),h)))for(c=0;c<v.length;c++)s=v[c],f&&f.indexOf(s)<0||(l=e[s],l&&(!o||o(h,l))&&(y=new ho(h,this.z,this.x,this.y),y.layer=l.serialize(),a=n[s],void 0===a&&(a=n[s]=[]),a.push({featureIndex:r,feature:y})))};yr.prototype.lookupSymbolFeatures=function(n,t,i,r,u,f){var o={},h;this.loadVTLayers();for(var c=bo(r),e=0,s=n;e<s.length;e+=1)h=s[e],this.loadMatchingFeature(o,t,i,h,c,u,f);return o};yr.prototype.hasLayer=function(n){for(var i,u,t=0,r=this.bucketLayerIDs;t<r.length;t+=1)for(i=0,u=r[t];i<u.length;i+=1)if(n===u[i])return!0;return!1};e("FeatureIndex",yr,{omit:["rawTileData","sourceLayerCoder"]});d=function(n,t){this.tileID=n;this.uid=ov();this.uses=0;this.tileSize=t;this.buckets={};this.expirationTime=null;this.queryPadding=0;this.hasSymbolBuckets=!1;this.expiredRequestCount=0;this.state="loading"};d.prototype.registerFadeDuration=function(n){var t=n+this.timeAdded;t<lu.now()||this.fadeEndTime&&t<this.fadeEndTime||(this.fadeEndTime=t)};d.prototype.wasRequested=function(){return"errored"===this.state||"loaded"===this.state||"reloading"===this.state};d.prototype.loadVectorData=function(n,t,i){var f,r,u,e;if(this.hasData()&&this.unloadVectorData(),this.state="loaded",n){for(f in n.featureIndex&&(this.latestFeatureIndex=n.featureIndex,n.rawTileData?(this.latestRawTileData=n.rawTileData,this.latestFeatureIndex.rawTileData=n.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=n.collisionBoxArray,this.buckets=function(n,t){var e={},u,o,i,r,f,s;if(!t)return e;for(u=0,o=n;u<o.length;u+=1)if(i=o[u],r=i.layerIds.map(function(n){return t.getLayer(n)}).filter(Boolean),0!==r.length)for(i.layers=r,i.stateDependentLayers=r.filter(function(n){return n.isStateDependent()}),f=0,s=r;f<s.length;f+=1)e[s[f].id]=i;return e}(n.buckets,t.style),this.hasSymbolBuckets=!1,this.buckets)if(r=this.buckets[f],r instanceof v){if(this.hasSymbolBuckets=!0,!i)break;r.justReloaded=!0}for(u in this.queryPadding=0,this.buckets)e=this.buckets[u],this.queryPadding=Math.max(this.queryPadding,t.style.getLayer(u).queryRadius(e));n.iconAtlasImage&&(this.iconAtlasImage=n.iconAtlasImage);n.glyphAtlasImage&&(this.glyphAtlasImage=n.glyphAtlasImage)}else this.collisionBoxArray=new ys};d.prototype.unloadVectorData=function(){for(var n in this.buckets)this.buckets[n].destroy();this.buckets={};this.iconAtlasTexture&&this.iconAtlasTexture.destroy();this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy();this.latestFeatureIndex=null;this.state="unloaded"};d.prototype.unloadDEMData=function(){this.dem=null;this.neighboringTiles=null;this.state="unloaded"};d.prototype.getBucket=function(n){return this.buckets[n.id]};d.prototype.upload=function(n){var r,t,i;for(r in this.buckets)t=this.buckets[r],t.uploadPending()&&t.upload(n);i=n.gl;this.iconAtlasImage&&(this.iconAtlasTexture=new su(n,this.iconAtlasImage,i.RGBA),this.iconAtlasImage=null);this.glyphAtlasImage&&(this.glyphAtlasTexture=new su(n,this.glyphAtlasImage,i.ALPHA),this.glyphAtlasImage=null)};d.prototype.queryRenderedFeatures=function(n,t,i,r,u,f,e,o){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:i,scale:r,tileSize:this.tileSize,posMatrix:o,transform:f,params:u,queryPadding:this.queryPadding*e},n,t):{}};d.prototype.querySourceFeatures=function(n,t){var f,e;if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData){var o=this.latestFeatureIndex.loadVTLayers(),l=t?t.sourceLayer:"",i=o._geojsonTileLayer||o[l];if(i)for(var a=bo(t&&t.filter),r=this.tileID.canonical,s=r.z,h=r.x,c=r.y,v={z:s,x:h,y:c},u=0;u<i.length;u++)f=i.feature(u),a(new k(this.tileID.overscaledZ),f)&&(e=new ho(f,s,h,c),e.tile=v,n.push(e))}};d.prototype.clearMask=function(){this.segments&&(this.segments.destroy(),delete this.segments);this.maskedBoundsBuffer&&(this.maskedBoundsBuffer.destroy(),delete this.maskedBoundsBuffer);this.maskedIndexBuffer&&(this.maskedIndexBuffer.destroy(),delete this.maskedIndexBuffer)};d.prototype.setMask=function(n,t){var r,e,h,o,f;if(!te(this.mask,n)&&(this.mask=n,this.clearMask(),!te(n,{0:!0}))){for(r=new ae,e=new pi,this.segments=new tt,this.segments.prepareSegment(0,r,e),h=Object.keys(n),o=0;o<h.length;o++){var c=n[h[o]],s=lt>>c.z,i=new ot(c.x*s,c.y*s),u=new ot(i.x+s,i.y+s),l=this.segments.prepareSegment(4,r,e);r.emplaceBack(i.x,i.y,i.x,i.y);r.emplaceBack(u.x,i.y,u.x,i.y);r.emplaceBack(i.x,u.y,i.x,u.y);r.emplaceBack(u.x,u.y,u.x,u.y);f=l.vertexLength;e.emplaceBack(f,f+1,f+2);e.emplaceBack(f+1,f+2,f+3);l.vertexLength+=4;l.primitiveLength+=2}this.maskedBoundsBuffer=t.createVertexBuffer(r,nv.members);this.maskedIndexBuffer=t.createIndexBuffer(e)}};d.prototype.hasData=function(){return"loaded"===this.state||"reloading"===this.state||"expired"===this.state};d.prototype.setExpiryData=function(n){var i=this.expirationTime,r,u,t,f;n.cacheControl?(r=function(n){var t={},i;return(n.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,function(n,i,r,u){var f=r||u;return t[i]=!f||f.toLowerCase(),""}),t["max-age"])&&(i=parseInt(t["max-age"],10),isNaN(i)?delete t["max-age"]:t["max-age"]=i),t}(n.cacheControl),r["max-age"]&&(this.expirationTime=Date.now()+1e3*r["max-age"])):n.expires&&(this.expirationTime=new Date(n.expires).getTime());this.expirationTime&&(u=Date.now(),t=!1,this.expirationTime>u?t=!1:i?this.expirationTime<i?t=!0:(f=this.expirationTime-i,f?this.expirationTime=u+Math.max(f,3e4):t=!0):t=!0,t?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0)};d.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)};d.prototype.setFeatureState=function(n,t){var f,i;if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData&&0!==Object.keys(n).length){f=this.latestFeatureIndex.loadVTLayers();for(i in this.buckets){var r=this.buckets[i],e=r.layers[0].sourceLayer||"_geojsonTileLayer",o=f[e],u=n[e];o&&u&&0!==Object.keys(u).length&&(r.update(u,o),t&&t.style&&(this.queryPadding=Math.max(this.queryPadding,t.style.getLayer(i).queryRadius(r))))}}};d.prototype.holdingForFade=function(){return void 0!==this.symbolFadeHoldUntil};d.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<lu.now()};d.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0};d.prototype.setHoldDuration=function(n){this.symbolFadeHoldUntil=lu.now()+n};uh={horizontal:1,vertical:2,horizontalOnly:3};at=function(){this.text="";this.sectionIndex=[];this.sections=[]};at.fromFeature=function(n,t){var i=new at,r,u,f,e;if(n instanceof bt)for(r=0;r<n.sections.length;r++)for(u=n.sections[r],i.sections.push({scale:u.scale||1,fontStack:u.fontStack||t}),i.text+=u.text,f=0;f<u.text.length;f++)i.sectionIndex.push(r);else for(i.text=n,i.sections.push({scale:1,fontStack:t}),e=0;e<n.length;e++)i.sectionIndex.push(0);return i};at.prototype.length=function(){return this.text.length};at.prototype.getSection=function(n){return this.sections[this.sectionIndex[n]]};at.prototype.getCharCode=function(n){return this.text.charCodeAt(n)};at.prototype.verticalizePunctuation=function(){this.text=function(n){for(var r,u,i="",t=0;t<n.length;t++)r=n.charCodeAt(t+1)||null,u=n.charCodeAt(t-1)||null,i+=r&&lp(r)&&!pf[n[t+1]]||u&&lp(u)&&!pf[n[t-1]]||!pf[n[t]]?n[t]:pf[n[t]];return i}(this.text)};at.prototype.trim=function(){for(var r,t,n=0,i=0;i<this.text.length&&fh[this.text.charCodeAt(i)];i++)n++;for(r=this.text.length,t=this.text.length-1;t>=0&&t>=n&&fh[this.text.charCodeAt(t)];t--)r--;this.text=this.text.substring(n,r);this.sectionIndex=this.sectionIndex.slice(n,r)};at.prototype.substring=function(n,t){var i=new at;return i.text=this.text.substring(n,t),i.sectionIndex=this.sectionIndex.slice(n,t),i.sections=this.sections,i};at.prototype.toString=function(){return this.text};at.prototype.getMaxScale=function(){var n=this;return this.sectionIndex.reduce(function(t,i){return Math.max(t,n.sections[i].scale)},0)};fh={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0};et={};et[10]=!0;et[32]=!0;et[38]=!0;et[40]=!0;et[41]=!0;et[43]=!0;et[45]=!0;et[47]=!0;et[173]=!0;et[183]=!0;et[8203]=!0;et[8208]=!0;et[8211]=!0;et[8231]=!0;n.createCommonjsModule=iv;n.Point=ot;n.window=self;n.browser=lu;n.uuid=function(){return function n(t){return t?(t^16*Math.random()>>t/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,n)}()};n.validateUuid=function(n){return!!n&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(n)};n.storageAvailable=function(n){try{var t=self[n];return t.setItem("_mapbox_test_",1),t.removeItem("_mapbox_test_"),!0}catch(n){return!1}};n.warnOnce=co;n.postData=function(n,t,i){var r=ch(si(n,{method:"POST"}));return r.onerror=function(){i(new Error(r.statusText))},r.onload=function(){r.status>=200&&r.status<300?i(null,r.response):i(new ie(r.statusText,r.status,n.url))},r.send(t),{cancel:function(){return r.abort()}}};n.getJSON=function(n,t){var i=ch(n);return i.setRequestHeader("Accept","application/json"),i.onerror=function(){t(new Error(i.statusText))},i.onload=function(){if(i.status>=200&&i.status<300&&i.response){var r;try{r=JSON.parse(i.response)}catch(n){return t(n)}t(null,r)}else 401===i.status&&n.url.match(/mapbox.com/)?t(new ie(i.statusText+": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens",i.status,n.url)):t(new ie(i.statusText,i.status,n.url))},i.send(),{cancel:function(){return i.abort()}}};n.getImage=function(n,t){return lh(n,function(n,i){var r,u,f;n?t(n):i&&(r=new self.Image,u=self.URL||self.webkitURL,r.onload=function(){t(null,r);u.revokeObjectURL(r.src)},f=new self.Blob([new Uint8Array(i.data)],{type:"image/png"}),r.cacheControl=i.cacheControl,r.expires=i.expires,r.src=i.data.byteLength?u.createObjectURL(f):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=")})};n.ResourceType=hh;n.RGBAImage=ei;n.ShelfPack=dt;n.ImagePosition=fo;n.Texture=su;n.getArrayBuffer=lh;n.parseGlyphPBF=function(n){return new nh(n).readFields(stt,[])};n.isChar=i;n.asyncAll=function(n,t,i){if(!n.length)return i(null,[]);var f=n.length,r=new Array(n.length),u=null;n.forEach(function(n,e){t(n,function(n,t){n&&(u=n);r[e]=t;0==--f&&i(u,r)})})};n.AlphaImage=gr;n.styleSpec=t;n.endsWith=eh;n.extend=si;n.sphericalToCartesian=function(n){var r=n[0],t=n[1],i=n[2];return t+=90,t*=Math.PI/180,i*=Math.PI/180,{x:r*Math.cos(t)*Math.sin(i),y:r*Math.sin(t)*Math.sin(i),z:r*Math.cos(i)}};n.Evented=ir;n.validateStyle=hp;n.validateLight=ud;n.emitValidationErrors=cp;n.Color=l;n.number=ct;n.Properties=vt;n.Transitionable=li;n.Transitioning=of;n.PossiblyEvaluated=ce;n.DataConstantProperty=f;n.uniqueId=ov;n.Actor=oo;n.pick=function(n,t){for(var r,u={},i=0;i<t.length;i++)r=t[i],r in n&&(u[r]=n[r]);return u};n.wrap=function(n,t,i){var r=i-t,u=((n-t)%r+r)%r+t;return u===t?i:u};n.clamp=nr;n.Event=ao;n.ErrorEvent=vh;n.OverscaledTileID=p;n.EXTENT=lt;n.getCoordinatesCenter=function(n){for(var i=1/0,r=1/0,u=-1/0,f=-1/0,t=0;t<n.length;t++)i=Math.min(i,n[t].column),r=Math.min(r,n[t].row),u=Math.max(u,n[t].column),f=Math.max(f,n[t].row);var e=u-i,o=f-r,s=Math.max(e,o),h=Math.max(0,Math.floor(-Math.log(s)/Math.LN2));return new oi((i+u)/2,(r+f)/2,0).zoomTo(h)};n.CanonicalTileID=gf;n.StructArrayLayout4i8=ae;n.rasterBoundsAttributes=nv;n.getVideo=function(n,t){var e,u,i=self.document.createElement("video"),r,f;for(i.muted=!0,i.onloadstart=function(){t(null,i)},r=0;r<n.length;r++)f=self.document.createElement("source"),e=n[r],u=void 0,(u=self.document.createElement("a")).href=e,(u.protocol!==self.document.location.protocol||u.host!==self.document.location.host)&&(i.crossOrigin="Anonymous"),f.src=n[r],i.appendChild(f);return{cancel:function(){}}};n.ValidationError=u;n.bindAll=sv;n.deepEqual=te;n.Tile=d;n.Coordinate=oi;n.keysDifference=function(n,t){var i=[];for(var r in n)r in t||i.push(r);return i};n.SourceFeatureState=ne;n.refProperties=["type","source","source-layer","minzoom","maxzoom","filter","layout"];n.create=function(){var n=new lr(16);return n[0]=1,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=1,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=1,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,n};n.identity=function(n){return n[0]=1,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=1,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=1,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,n};n.invert=function(n,t){var r=t[0],u=t[1],f=t[2],e=t[3],o=t[4],s=t[5],h=t[6],c=t[7],l=t[8],a=t[9],v=t[10],y=t[11],p=t[12],w=t[13],b=t[14],k=t[15],d=r*s-u*o,g=r*h-f*o,nt=r*c-e*o,tt=u*h-f*s,it=u*c-e*s,rt=f*c-e*h,ut=l*w-a*p,ft=l*b-v*p,et=l*k-y*p,ot=a*b-v*w,st=a*k-y*w,ht=v*k-y*b,i=d*ht-g*st+nt*ot+tt*et-it*ft+rt*ut;return i?(i=1/i,n[0]=(s*ht-h*st+c*ot)*i,n[1]=(f*st-u*ht-e*ot)*i,n[2]=(w*rt-b*it+k*tt)*i,n[3]=(v*it-a*rt-y*tt)*i,n[4]=(h*et-o*ht-c*ft)*i,n[5]=(r*ht-f*et+e*ft)*i,n[6]=(b*nt-p*rt-k*g)*i,n[7]=(l*rt-v*nt+y*g)*i,n[8]=(o*st-s*et+c*ut)*i,n[9]=(u*et-r*st-e*ut)*i,n[10]=(p*it-w*nt+k*d)*i,n[11]=(a*nt-l*it-y*d)*i,n[12]=(s*ft-o*ot-h*ut)*i,n[13]=(r*ot-u*ft+f*ut)*i,n[14]=(w*g-p*tt-b*d)*i,n[15]=(l*tt-a*g+v*d)*i,n):null};n.multiply=function(n,t,i){var o=t[0],s=t[1],h=t[2],c=t[3],l=t[4],a=t[5],v=t[6],y=t[7],p=t[8],w=t[9],b=t[10],k=t[11],d=t[12],g=t[13],nt=t[14],tt=t[15],r=i[0],u=i[1],f=i[2],e=i[3];return n[0]=r*o+u*l+f*p+e*d,n[1]=r*s+u*a+f*w+e*g,n[2]=r*h+u*v+f*b+e*nt,n[3]=r*c+u*y+f*k+e*tt,r=i[4],u=i[5],f=i[6],e=i[7],n[4]=r*o+u*l+f*p+e*d,n[5]=r*s+u*a+f*w+e*g,n[6]=r*h+u*v+f*b+e*nt,n[7]=r*c+u*y+f*k+e*tt,r=i[8],u=i[9],f=i[10],e=i[11],n[8]=r*o+u*l+f*p+e*d,n[9]=r*s+u*a+f*w+e*g,n[10]=r*h+u*v+f*b+e*nt,n[11]=r*c+u*y+f*k+e*tt,r=i[12],u=i[13],f=i[14],e=i[15],n[12]=r*o+u*l+f*p+e*d,n[13]=r*s+u*a+f*w+e*g,n[14]=r*h+u*v+f*b+e*nt,n[15]=r*c+u*y+f*k+e*tt,n};n.translate=function(n,t,i){var e,o,s,h,c,l,a,v,y,p,w,b,r=i[0],u=i[1],f=i[2];return t===n?(n[12]=t[0]*r+t[4]*u+t[8]*f+t[12],n[13]=t[1]*r+t[5]*u+t[9]*f+t[13],n[14]=t[2]*r+t[6]*u+t[10]*f+t[14],n[15]=t[3]*r+t[7]*u+t[11]*f+t[15]):(e=t[0],o=t[1],s=t[2],h=t[3],c=t[4],l=t[5],a=t[6],v=t[7],y=t[8],p=t[9],w=t[10],b=t[11],n[0]=e,n[1]=o,n[2]=s,n[3]=h,n[4]=c,n[5]=l,n[6]=a,n[7]=v,n[8]=y,n[9]=p,n[10]=w,n[11]=b,n[12]=e*r+c*u+y*f+t[12],n[13]=o*r+l*u+p*f+t[13],n[14]=s*r+a*u+w*f+t[14],n[15]=h*r+v*u+b*f+t[15]),n};n.scale=function(n,t,i){var r=i[0],u=i[1],f=i[2];return n[0]=t[0]*r,n[1]=t[1]*r,n[2]=t[2]*r,n[3]=t[3]*r,n[4]=t[4]*u,n[5]=t[5]*u,n[6]=t[6]*u,n[7]=t[7]*u,n[8]=t[8]*f,n[9]=t[9]*f,n[10]=t[10]*f,n[11]=t[11]*f,n[12]=t[12],n[13]=t[13],n[14]=t[14],n[15]=t[15],n};n.rotateX=function(n,t,i){var r=Math.sin(i),u=Math.cos(i),f=t[4],e=t[5],o=t[6],s=t[7],h=t[8],c=t[9],l=t[10],a=t[11];return t!==n&&(n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[12]=t[12],n[13]=t[13],n[14]=t[14],n[15]=t[15]),n[4]=f*u+h*r,n[5]=e*u+c*r,n[6]=o*u+l*r,n[7]=s*u+a*r,n[8]=h*u-f*r,n[9]=c*u-e*r,n[10]=l*u-o*r,n[11]=a*u-s*r,n};n.rotateZ=function(n,t,i){var r=Math.sin(i),u=Math.cos(i),f=t[0],e=t[1],o=t[2],s=t[3],h=t[4],c=t[5],l=t[6],a=t[7];return t!==n&&(n[8]=t[8],n[9]=t[9],n[10]=t[10],n[11]=t[11],n[12]=t[12],n[13]=t[13],n[14]=t[14],n[15]=t[15]),n[0]=f*u+h*r,n[1]=e*u+c*r,n[2]=o*u+l*r,n[3]=s*u+a*r,n[4]=h*u-f*r,n[5]=c*u-e*r,n[6]=l*u-o*r,n[7]=a*u-s*r,n};n.perspective=function(n,t,i,r,u){var f=1/Math.tan(t/2),e=1/(r-u);return n[0]=f/i,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=f,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=(u+r)*e,n[11]=-1,n[12]=0,n[13]=0,n[14]=2*u*r*e,n[15]=0,n};n.ortho=function(n,t,i,r,u,f,e){var o=1/(t-i),s=1/(r-u),h=1/(f-e);return n[0]=-2*o,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=-2*s,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=2*h,n[11]=0,n[12]=(t+i)*o,n[13]=(u+r)*s,n[14]=(e+f)*h,n[15]=1,n};n.create$1=iw;n.normalize=rw;n.transformMat4=bl;n.forEach=uw;n.getSizeData=pa;n.evaluateSizeForFeature=function(n,t,i){var r=t;return"source"===n.functionType?i.lowerSize/10:"composite"===n.functionType?ct(i.lowerSize/10,i.upperSize/10,r.uSizeT):r.uSize};n.evaluateSizeForZoom=function(n,t,i){var e,u;if("constant"===n.functionType)return{uSizeT:0,uSize:n.layoutSize};if("source"===n.functionType)return{uSizeT:0,uSize:0};if("camera"===n.functionType){var o=n.propertyValue,f=n.zoomRange,r=n.sizeRange,s=nr(oc(o,i.specification).interpolationFactor(t,f.min,f.max),0,1);return{uSizeT:0,uSize:r.min+s*(r.max-r.min)}}return e=n.propertyValue,u=n.zoomRange,{uSizeT:nr(oc(e,i.specification).interpolationFactor(t,u.min,u.max),0,1),uSize:0}};n.addDynamicAttributes=wa;n.properties=lb;n.WritingMode=uh;n.multiPolygonIntersectsBufferedPoint=pp;n.multiPolygonIntersectsMultiPolygon=ll;n.multiPolygonIntersectsBufferedMultiLine=wp;n.polygonIntersectsPolygon=function(n,t){for(var r,i=0;i<n.length;i++)if(ws(t,n[i]))return!0;for(r=0;r<t.length;r++)if(ws(n,t[r]))return!0;return!!al(n,t)};n.distToSegmentSquared=bp;n.StyleLayer=yi;n.createStyleLayer=function(n){return new dn[n.type](n)};n.clone=tr;n.filterObject=cv;n.mapObject=hv;n.registerForPluginAvailability=function(n){return he?n({pluginURL:he,completionCallback:bc}):dc.once("pluginAvailable",n),n};n.evented=dc;n.ZoomHistory=ts;n.createLayout=ft;n.ProgramConfiguration=yt;n.create$2=dp;n.fromRotation=function(n,t){var i=Math.sin(t),r=Math.cos(t);return n[0]=r,n[1]=i,n[2]=0,n[3]=-i,n[4]=r,n[5]=0,n[6]=0,n[7]=0,n[8]=1,n};n.create$3=pl;n.length=gp;n.fromValues=wl;n.normalize$1=vd;n.dot=yd;n.cross=pd;n.transformMat3=function(n,t,i){var r=t[0],u=t[1],f=t[2];return n[0]=r*i[0]+u*i[3]+f*i[6],n[1]=r*i[1]+u*i[4]+f*i[7],n[2]=r*i[2]+u*i[5]+f*i[8],n};n.len=nw;n.forEach$1=tw;n.StructArrayLayout2i4=cf;n.UnwrappedTileID=da;n.create$4=function(){var n=new lr(4);return n[0]=1,n[1]=0,n[2]=0,n[3]=1,n};n.rotate=function(n,t,i){var f=t[0],e=t[1],o=t[2],s=t[3],r=Math.sin(i),u=Math.cos(i);return n[0]=f*u+o*r,n[1]=e*u+s*r,n[2]=f*-r+o*u,n[3]=e*-r+s*u,n};n.ease=fv;n.bezier=uv;n.EvaluationParameters=k;n.setRTLTextPlugin=function(n,t){if(kc)throw new Error("setRTLTextPlugin cannot be called multiple times.");kc=!0;he=lu.resolveURL(n);bc=function(n){n?(kc=!1,he=null,t&&t(n)):ap=!0};dc.fire(new ao("pluginAvailable",{pluginURL:he,completionCallback:bc}))};n.values=function(n){var t=[];for(var i in n)t.push(n[i]);return t};n.featureFilter=bo;n.Anchor=ya;n.register=e;n.GLYPH_PBF_BORDER=gb;n.shapeText=function(n,t,i,r,u,f,e,o,s,h,c){var l=at.fromFeature(n,i),w,k,d,v,g,b,nt,tt,y;c===uh.vertical&&l.verticalizePunctuation();var a,it=[],p={positionedGlyphs:it,text:l,top:s[1],bottom:s[1],left:s[0],right:s[0],writingMode:c},rt=fu.processBidirectionalText,ut=fu.processStyledBidirectionalText;if(rt&&1===l.sections.length)for(a=[],w=0,k=rt(l.toString(),tv(l,o,r,t));w<k.length;w+=1){for(d=k[w],v=new at,v.text=d,v.sections=l.sections,g=0;g<d.length;g++)v.sectionIndex.push(0);a.push(v)}else if(ut)for(a=[],b=0,nt=ut(l.text,l.sectionIndex,tv(l,o,r,t));b<nt.length;b+=1)tt=nt[b],y=new at,y.text=tt[0],y.sectionIndex=tt[1],y.sections=l.sections,a.push(y);else a=function(n,t){for(var f,r=[],e=n.text,i=0,u=0,o=t;u<o.length;u+=1)f=o[u],r.push(n.substring(i,f)),i=f;return i<e.length&&r.push(n.substring(i,e.length)),r}(l,tv(l,o,r,t));return function(n,t,i,r,u,f,e,o,s){for(var l,k,d,y,ft,g,a=0,p=-17,v=0,c=n.positionedGlyphs,nt="right"===f?1:"left"===f?0:.5,b=0,tt=i;b<tt.length;b+=1)if(l=tt[b],l.trim(),k=l.getMaxScale(),l.length()){for(d=c.length,y=0;y<l.length();y++){var h=l.getSection(y),w=l.getCharCode(y),it=24*(k-h.scale),rt=t[h.fontStack],ut=rt&&rt[w];ut&&(wc(w)&&e!==uh.horizontal?(c.push({glyph:w,x:a,y:it,vertical:!0,scale:h.scale,fontStack:h.fontStack}),a+=s*h.scale+o):(c.push({glyph:w,x:a,y:p+it,vertical:!1,scale:h.scale,fontStack:h.fontStack}),a+=ut.metrics.advance*h.scale+o))}c.length!==d&&(ft=a-o,v=Math.max(ft,v),vtt(c,t,d,c.length-1,nt));a=0;p+=r*k}else p+=r;var et=rk(u),ot=et.horizontalAlign,st=et.verticalAlign;!function(n,t,i,r,u,f,e){for(var s=(t-i)*u,h=(-r*e+.5)*f,o=0;o<n.length;o++)n[o].x+=s,n[o].y+=h}(c,nt,ot,st,v,r,i.length);g=p- -17;n.top+=-st*g;n.bottom=n.top+g;n.left+=-ot*v;n.right=n.left+v}(p,t,a,u,f,e,c,o,h),!!it.length&&(p.text=p.text.toString(),p)};n.shapeIcon=function(n,t,i){var r=rk(i),e=r.horizontalAlign,o=r.verticalAlign,s=t[0],h=t[1],u=s-n.displaySize[0]*e,c=u+n.displaySize[0],f=h-n.displaySize[1]*o;return{image:n,top:f,bottom:f+n.displaySize[1],left:u,right:c}};n.allowsVerticalWritingMode=pc;n.allowsLetterSpacing=function(n){for(var t=0,i=n;t<i.length;t+=1)if(!od(i[t].charCodeAt(0)))return!1;return!0};n.classifyRings=ea;n.SymbolBucket=v;n.Formatted=bt;n.FeatureIndex=yr;n.CollisionBoxArray=ys;n.DictionaryCoder=so;n.ImageAtlas=ka;n.mvt=uo;n.Protobuf=nh;n.DEMData=gi;n.vectorTile=uo;n.Point$1=ot;n.pbf=nh;n.plugin=fu}),r(["./shared.js"],function(n){function k(n){var i=typeof n;if("number"===i||"boolean"===i||"string"===i||null==n)return JSON.stringify(n);if(Array.isArray(n)){for(var f="[",r=0,e=n;r<e.length;r+=1)f+=k(e[r])+",";return f+"]"}for(var u=Object.keys(n).sort(),o="{",t=0;t<u.length;t++)o+=JSON.stringify(u[t])+":"+k(n[u[t]])+",";return o+"}"}function pr(t){for(var r="",i=0,u=n.refProperties;i<u.length;i+=1)r+="/"+k(t[u[i]]);return r}function ti(n,t,i,r,u){var s,h,o;if(void 0===t.segment)return!0;for(var a=t,f=t.segment+1,e=0;e>-i/2;){if(--f<0)return!1;e-=n[f].dist(a);a=n[f]}for(e+=n[f].dist(n[f+1]),f++,s=[],h=0;e<i/2;){var v=n[f-1],c=n[f],l=n[f+1];if(!l)return!1;for(o=v.angleTo(c)-c.angleTo(l),o=Math.abs((o+3*Math.PI)%(2*Math.PI)-Math.PI),s.push({distance:e,angleDelta:o}),h+=o;e-s[0].distance>r;)h-=s.shift().angleDelta;if(h>u)return!1;f++;e+=c.dist(l)}return!0}function ii(n){for(var i=0,t=0;t<n.length-1;t++)i+=n[t].dist(n[t+1]);return i}function ri(n,t,i){return n?.6*t*i:0}function ui(n,t){return Math.max(n?n.right-n.left:0,t?t.right-t.left:0)}function wr(t,i,r,u,f,e){for(var v=ri(r,f,e),w=ui(r,u)*e,c=0,y=ii(t)/2,o=0;o<t.length-1;o++){var s=t[o],h=t[o+1],l=s.dist(h);if(c+l>y){var p=(y-c)/l,b=n.number(s.x,h.x,p),k=n.number(s.y,h.y,p),a=new n.Anchor(b,k,h.angleTo(s),o);return a._round(),!v||ti(t,a,w,v,i)?a:void 0}c+=l}}function br(t,i,r,u,f,e,o,s,h){var v=ri(u,e,o),l=ui(u,f),c=l*o,a=0===t[0].x||t[0].x===h||0===t[0].y||t[0].y===h;return i-c<i/4&&(i=c+i/4),function t(i,r,u,f,e,o,s,h,c){for(var b,nt=o/2,it=ii(i),a=0,v=r-u,y=[],l=0;l<i.length-1;l++){for(var p=i[l],w=i[l+1],k=p.dist(w),rt=w.angleTo(p);v+u<a+k;){var tt=((v+=u)-a)/k,d=n.number(p.x,w.x,tt),g=n.number(p.y,w.y,tt);d>=0&&d<c&&g>=0&&g<c&&v-nt>=0&&v+nt<=it&&(b=new n.Anchor(d,g,rt,l),b._round(),f&&!ti(i,b,o,f,e)||y.push(b))}a+=k}return h||y.length||s||(y=t(i,a/2,u,f,e,o,s,!0,c)),y}(t,a?i/2*s%i:(l/2+2*e)*o*s%i,i,v,r,c,a,!1,h)}function o(n,t){if(!(this instanceof o))return new o(n,t);if(this.data=n||[],this.length=this.data.length,this.compare=t||kr,this.length>0)for(var i=(this.length>>1)-1;i>=0;i--)this._down(i)}function kr(n,t){return n<t?-1:n>t?1:0}function dr(t,i,r){var o,w,b,c,k,f;void 0===i&&(i=1);void 0===r&&(r=!1);for(var l=1/0,a=1/0,v=-1/0,y=-1/0,d=t[0],h=0;h<d.length;h++)o=d[h],(!h||o.x<l)&&(l=o.x),(!h||o.y<a)&&(a=o.y),(!h||o.x>v)&&(v=o.x),(!h||o.y>y)&&(y=o.y);var nt=v-l,tt=y-a,p=Math.min(nt,tt),u=p/2,s=new g(null,gr);if(0===p)return new n.Point(l,a);for(w=l;w<v;w+=p)for(b=a;b<y;b+=p)s.push(new e(w+u,b+u,u,t));for(c=function(n){for(var r=0,s=0,h=0,u=n[0],f=0,c=u.length,l=c-1;f<c;l=f++){var t=u[f],i=u[l],o=t.x*i.y-i.x*t.y;s+=(t.x+i.x)*o;h+=(t.y+i.y)*o;r+=3*o}return new e(s/r,h/r,0,n)}(t),k=s.length;s.length;)f=s.pop(),(f.d>c.d||!c.d)&&(c=f,r&&console.log("found best %d after %d probes",Math.round(1e4*f.d)/1e4,k)),f.max-c.d<=i||(u=f.h/2,s.push(new e(f.p.x-u,f.p.y-u,u,t)),s.push(new e(f.p.x+u,f.p.y-u,u,t)),s.push(new e(f.p.x-u,f.p.y+u,u,t)),s.push(new e(f.p.x+u,f.p.y+u,u,t)),k+=4);return r&&(console.log("num probes: "+k),console.log("best distance: "+c.d)),c.p}function gr(n,t){return t.max-n.max}function e(t,i,r,u){this.p=new n.Point(t,i);this.h=r;this.d=function(t,i){for(var r,u,f=!1,e=1/0,o=0;o<i.length;o++)for(var s=i[o],h=0,c=s.length,l=c-1;h<c;l=h++)r=s[h],u=s[l],r.y>t.y!=u.y>t.y&&t.x<(u.x-r.x)*(t.y-r.y)/(u.y-r.y)+r.x&&(f=!f),e=Math.min(e,n.distToSegmentSquared(t,r,u));return(f?1:-1)*Math.sqrt(e)}(this.p,u);this.max=this.d+this.h*Math.SQRT2}function nu(t,i,r,u,f,e){var w,y,a;t.createArrays();t.symbolInstances=[];w=512*t.overscaling;t.tilePixelRatio=n.EXTENT/w;t.compareText={};t.iconsNeedLinear=!1;var o=t.layers[0].layout,h=t.layers[0]._unevaluatedLayout._values,c={};if("composite"===t.textSizeData.functionType){var b=t.textSizeData.zoomRange,ot=b.min,st=b.max;c.compositeTextSizes=[h["text-size"].possiblyEvaluate(new n.EvaluationParameters(ot)),h["text-size"].possiblyEvaluate(new n.EvaluationParameters(st))]}if("composite"===t.iconSizeData.functionType){var k=t.iconSizeData.zoomRange,ht=k.min,ct=k.max;c.compositeIconSizes=[h["icon-size"].possiblyEvaluate(new n.EvaluationParameters(ht)),h["icon-size"].possiblyEvaluate(new n.EvaluationParameters(ct))]}c.layoutTextSize=h["text-size"].possiblyEvaluate(new n.EvaluationParameters(t.zoom+1));c.layoutIconSize=h["icon-size"].possiblyEvaluate(new n.EvaluationParameters(t.zoom+1));c.textMaxSize=h["text-size"].possiblyEvaluate(new n.EvaluationParameters(18));for(var d=24*o.get("text-line-height"),lt="map"===o.get("text-rotation-alignment")&&"point"!==o.get("symbol-placement"),at=o.get("text-keep-upright"),p=0,g=t.features;p<g.length;p+=1){var s=g[p],nt=o.get("text-font").evaluate(s,{}).join(","),vt=r,v={},l=s.text;if(l){var tt=l instanceof n.Formatted?l.toString():l,it=o.get("text-offset").evaluate(s,{}).map(function(n){return 24*n}),yt=24*o.get("text-letter-spacing").evaluate(s,{}),rt=n.allowsLetterSpacing(tt)?yt:0,ut=o.get("text-anchor").evaluate(s,{}),ft=o.get("text-justify").evaluate(s,{}),et="point"===o.get("symbol-placement")?24*o.get("text-max-width").evaluate(s,{}):0;v.horizontal=n.shapeText(l,i,nt,et,d,ut,ft,rt,it,24,n.WritingMode.horizontal);n.allowsVerticalWritingMode(tt)&&lt&&at&&(v.vertical=n.shapeText(l,i,nt,et,d,ut,ft,rt,it,24,n.WritingMode.vertical))}y=void 0;s.icon&&(a=u[s.icon],a&&(y=n.shapeIcon(f[s.icon],o.get("icon-offset").evaluate(s,{}),o.get("icon-anchor").evaluate(s,{})),void 0===t.sdfIcons?t.sdfIcons=a.sdf:t.sdfIcons!==a.sdf&&n.warnOnce("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),a.pixelRatio!==t.pixelRatio?t.iconsNeedLinear=!0:0!==o.get("icon-rotate").constantOr(1)&&(t.iconsNeedLinear=!0)));(v.horizontal||y)&&tu(t,s,v,y,vt,c)}e&&t.generateCollisionDebugBuffers()}function tu(t,i,r,u,e,o){var at=o.layoutTextSize.evaluate(i,{}),dt=o.layoutIconSize.evaluate(i,{}),g=o.textMaxSize.evaluate(i,{}),c,nt,it,rt,a,ut,v,ft,y,et,ot,st,p,ht,w,b,ct,k,lt,d;void 0===g&&(g=at);var s=t.layers[0].layout,gt=s.get("text-offset").evaluate(i,{}),ni=s.get("icon-offset").evaluate(i,{}),ti=at/24,ii=t.tilePixelRatio*ti,vt=t.tilePixelRatio*g/24,ri=t.tilePixelRatio*dt,yt=t.tilePixelRatio*s.get("symbol-spacing"),ui=s.get("text-padding")*t.tilePixelRatio,fi=s.get("icon-padding")*t.tilePixelRatio,pt=s.get("text-max-angle")/180*Math.PI,oi="map"===s.get("text-rotation-alignment")&&"point"!==s.get("symbol-placement"),si="map"===s.get("icon-rotation-alignment")&&"point"!==s.get("symbol-placement"),wt=s.get("symbol-placement"),hi=yt/2,h=function(s,h){h.x<0||h.x>=n.EXTENT||h.y<0||h.y>=n.EXTENT||t.symbolInstances.push(function(t,i,r,u,e,o,s,h,c,a,v,y,p,w,b,k,d,g,nt,tt,it){var rt,ut,ft=t.addToLineVertexArray(i,r),ct=0,lt=0,at=0,ni=u.horizontal?u.horizontal.text:"",ot=[],vt,yt,pt,st,wt,ht,et,bt,kt,dt,gt;return u.horizontal&&(vt=o.layout.get("text-rotate").evaluate(nt,{}),rt=new l(s,r,i,h,c,a,u.horizontal,v,y,p,t.overscaling,vt),lt+=ei(t,i,u.horizontal,o,p,nt,w,ft,u.vertical?n.WritingMode.horizontal:n.WritingMode.horizontalOnly,ot,tt,it),u.vertical&&(at+=ei(t,i,u.vertical,o,p,nt,w,ft,n.WritingMode.vertical,ot,tt,it))),yt=rt?rt.boxStartIndex:t.collisionBoxArray.length,pt=rt?rt.boxEndIndex:t.collisionBoxArray.length,e&&(st=function(t,i,r,u,f,e){var l,a,v,y,s=i.image,o=r.layout,g=i.top-1/s.pixelRatio,nt=i.left-1/s.pixelRatio,tt=i.bottom+1/s.pixelRatio,it=i.right+1/s.pixelRatio,k;if("none"!==o.get("icon-text-fit")&&f){var rt=it-nt,ut=tt-g,p=o.get("text-size").evaluate(e,{})/24,h=f.left*p,pt=f.right*p,c=f.top*p,ft=pt-h,et=f.bottom*p-c,ot=o.get("icon-text-fit-padding")[0],st=o.get("icon-text-fit-padding")[1],ht=o.get("icon-text-fit-padding")[2],ct=o.get("icon-text-fit-padding")[3],w="width"===o.get("icon-text-fit")?.5*(et-ut):0,b="height"===o.get("icon-text-fit")?.5*(ft-rt):0,lt="width"===o.get("icon-text-fit")||"both"===o.get("icon-text-fit")?ft:rt,at="height"===o.get("icon-text-fit")||"both"===o.get("icon-text-fit")?et:ut;l=new n.Point(h+b-ct,c+w-ot);a=new n.Point(h+b+st+lt,c+w-ot);v=new n.Point(h+b+st+lt,c+w+ht+at);y=new n.Point(h+b-ct,c+w+ht+at)}else l=new n.Point(nt,g),a=new n.Point(it,g),v=new n.Point(it,tt),y=new n.Point(nt,tt);if(k=r.layout.get("icon-rotate").evaluate(e,{})*Math.PI/180,k){var vt=Math.sin(k),yt=Math.cos(k),d=[yt,-vt,vt,yt];l._matMult(d);a._matMult(d);y._matMult(d);v._matMult(d)}return[{tl:l,tr:a,bl:y,br:v,tex:s.paddedRect,writingMode:void 0,glyphOffset:[0,0]}]}(0,e,o,0,u.horizontal,nt),wt=o.layout.get("icon-rotate").evaluate(nt,{}),ut=new l(s,r,i,h,c,a,e,b,k,!1,t.overscaling,wt),ct=4*st.length,ht=t.iconSizeData,et=null,"source"===ht.functionType?et=[10*o.layout.get("icon-size").evaluate(nt,{})]:"composite"===ht.functionType&&(et=[10*it.compositeIconSizes[0].evaluate(nt,{}),10*it.compositeIconSizes[1].evaluate(nt,{})]),t.addSymbols(t.icon,st,et,g,d,nt,!1,i,ft.lineStartIndex,ft.lineLength)),bt=ut?ut.boxStartIndex:t.collisionBoxArray.length,kt=ut?ut.boxEndIndex:t.collisionBoxArray.length,t.glyphOffsetArray.length>=n.SymbolBucket.MAX_GLYPHS&&n.warnOnce("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),dt=new f,gt=new f,{key:ni,textBoxStartIndex:yt,textBoxEndIndex:pt,iconBoxStartIndex:bt,iconBoxEndIndex:kt,textOffset:w,iconOffset:g,anchor:i,line:r,featureIndex:h,numGlyphVertices:lt,numVerticalGlyphVertices:at,numIconVertices:ct,textOpacityState:dt,iconOpacityState:gt,isDuplicate:!1,placedTextSymbolIndices:ot,crossTileID:0}}(t,h,s,r,u,t.layers[0],t.collisionBoxArray,i.index,i.sourceLayerIndex,t.index,ii,ui,oi,gt,ri,fi,si,ni,i,e,o))};if("line"===wt)for(c=0,nt=function(t,i,r,u,f){for(var e,o,l=[],h=0;h<t.length;h++)for(var a=t[h],s=void 0,c=0;c<a.length-1;c++)e=a[c],o=a[c+1],e.x<i&&o.x<i||(e.x<i?e=new n.Point(i,e.y+(o.y-e.y)*((i-e.x)/(o.x-e.x)))._round():o.x<i&&(o=new n.Point(i,e.y+(o.y-e.y)*((i-e.x)/(o.x-e.x)))._round()),e.y<r&&o.y<r||(e.y<r?e=new n.Point(e.x+(o.x-e.x)*((r-e.y)/(o.y-e.y)),r)._round():o.y<r&&(o=new n.Point(e.x+(o.x-e.x)*((r-e.y)/(o.y-e.y)),r)._round()),e.x>=u&&o.x>=u||(e.x>=u?e=new n.Point(u,e.y+(o.y-e.y)*((u-e.x)/(o.x-e.x)))._round():o.x>=u&&(o=new n.Point(u,e.y+(o.y-e.y)*((u-e.x)/(o.x-e.x)))._round()),e.y>=f&&o.y>=f||(e.y>=f?e=new n.Point(e.x+(o.x-e.x)*((f-e.y)/(o.y-e.y)),f)._round():o.y>=f&&(o=new n.Point(e.x+(o.x-e.x)*((f-e.y)/(o.y-e.y)),f)._round()),s&&e.equals(s[s.length-1])||(s=[e],l.push(s)),s.push(o)))));return l}(i.geometry,0,0,n.EXTENT,n.EXTENT);c<nt.length;c+=1)for(var bt=nt[c],tt=0,kt=br(bt,yt,pt,r.vertical||r.horizontal,u,24,vt,t.overscaling,n.EXTENT);tt<kt.length;tt+=1)it=kt[tt],rt=r.horizontal,rt&&iu(t,rt.text,hi,it)||h(bt,it);else if("line-center"===wt)for(a=0,ut=i.geometry;a<ut.length;a+=1)v=ut[a],v.length>1&&(ft=wr(v,pt,r.vertical||r.horizontal,u,24,vt),ft&&h(v,ft));else if("Polygon"===i.type)for(y=0,et=n.classifyRings(i.geometry,0);y<et.length;y+=1)ot=et[y],st=dr(ot,16),h(ot[0],new n.Anchor(st.x,st.y,0));else if("LineString"===i.type)for(p=0,ht=i.geometry;p<ht.length;p+=1)w=ht[p],h(w,new n.Anchor(w[0].x,w[0].y,0));else if("Point"===i.type)for(b=0,ct=i.geometry;b<ct.length;b+=1)for(k=0,lt=ct[b];k<lt.length;k+=1)d=lt[k],h([d],new n.Anchor(d.x,d.y,0))}function ei(t,i,r,u,f,e,o,s,h,c,l,a){var y=function(t,i,r,u,f,e){for(var h,p=r.layout.get("text-rotate").evaluate(f,{})*Math.PI/180,it=r.layout.get("text-offset").evaluate(f,{}).map(function(n){return 24*n}),rt=i.positionedGlyphs,ut=[],w=0;w<rt.length;w++){var o=rt[w],ft=e[o.fontStack],s=ft&&ft[o.glyph];if(s&&(h=s.rect,h)){var et=n.GLYPH_PBF_BORDER+1,c=s.metrics.advance*o.scale/2,at=u?[o.x+c,o.y]:[0,0],ot=u?[0,0]:[o.x+c+it[0],o.y+it[1]],b=(s.metrics.left-et)*o.scale-c+ot[0],k=(-s.metrics.top-et)*o.scale+ot[1],st=b+h.w*o.scale,ht=k+h.h*o.scale,d=new n.Point(b,k),g=new n.Point(st,k),nt=new n.Point(b,ht),tt=new n.Point(st,ht);if(u&&o.vertical){var l=new n.Point(-c,c),a=-Math.PI/2,v=new n.Point(5,0);d._rotateAround(a,l)._add(v);g._rotateAround(a,l)._add(v);nt._rotateAround(a,l)._add(v);tt._rotateAround(a,l)._add(v)}if(p){var ct=Math.sin(p),lt=Math.cos(p),y=[lt,-ct,ct,lt];d._matMult(y);g._matMult(y);nt._matMult(y);tt._matMult(y)}ut.push({tl:d,tr:g,bl:nt,br:tt,tex:h,writingMode:i.writingMode,glyphOffset:at})}}return ut}(0,r,u,f,e,l),p=t.textSizeData,v=null;return"source"===p.functionType?v=[10*u.layout.get("text-size").evaluate(e,{})]:"composite"===p.functionType&&(v=[10*a.compositeTextSizes[0].evaluate(e,{}),10*a.compositeTextSizes[1].evaluate(e,{})]),t.addSymbols(t.text,y,v,o,f,e,h,i,s.lineStartIndex,s.lineLength),c.push(t.text.placedSymbolArray.length-1),4*y.length}function iu(n,t,i,r){var u=n.compareText,e,f;if(t in u){for(e=u[t],f=e.length-1;f>=0;f--)if(r.dist(e[f])<i)return!0}else u[t]=[];return u[t].push(r),!1}function oi(t,i){for(var f=new n.EvaluationParameters(i),r=0,u=t;r<u.length;r+=1)u[r].recalculate(f)}function ru(t,i){var r=n.getArrayBuffer(t.request,function(t,r){t?i(t):r&&i(null,{vectorTile:new n.mvt.VectorTile(new n.Protobuf(r.data)),rawData:r.data,cacheControl:r.cacheControl,expires:r.expires})});return function(){r.cancel();i()}}function hi(n){var i=0,t;if(n&&n.length>0)for(i+=Math.abs(rt(n[0])),t=1;t<n.length;t++)i-=Math.abs(rt(n[t]));return i}function rt(n){var o,s,r,u,f,t,e=0,i=n.length;if(i>2){for(t=0;t<i;t++)t===i-2?(r=i-2,u=i-1,f=0):t===i-1?(r=i-1,u=0,f=1):(r=t,u=t+1,f=t+2),o=n[r],s=n[u],e+=(ut(n[f][0])-ut(o[0]))*Math.sin(ut(s[1]));e=e*it.RADIUS*it.RADIUS/2}return e}function ut(n){return n*Math.PI/180}function ai(n,t){return function(i){return n(i,t)}}function vi(n,t){t=!!t;n[0]=yi(n[0],t);for(var i=1;i<n.length;i++)n[i]=yi(n[i],!t);return n}function yi(n,t){return function(n){return ci.ring(n)>=0}(n)===t?n:n.reverse()}function bi(n,t){this.options=t||{};this.features=n;this.length=n.length}function y(n,t){this.id="number"==typeof n.id?n.id:void 0;this.type=n.type;this.rawGeometry=1===n.type?[n.geometry]:n.geometry;this.properties=n.tags;this.extent=t||4096}function ot(t){var i=new n.pbf;return function(n,t){for(var i in n.layers)t.writeMessage(3,ou,n.layers[i])}(t,i),i.finish()}function ou(n,t){var i,r,u,f;for(t.writeVarintField(15,n.version||1),t.writeStringField(1,n.name||""),t.writeVarintField(5,n.extent||4096),r={keys:[],values:[],keycache:{},valuecache:{}},i=0;i<n.length;i++)r.feature=n.feature(i),t.writeMessage(2,su,r);for(u=r.keys,i=0;i<u.length;i++)t.writeStringField(3,u[i]);for(f=r.values,i=0;i<f.length;i++)t.writeMessage(4,lu,f[i])}function su(n,t){var i=n.feature;void 0!==i.id&&t.writeVarintField(1,i.id);t.writeMessage(2,hu,n);t.writeVarintField(3,i.type);t.writeMessage(4,cu,i)}function hu(n,t){var s=n.feature,h=n.keys,c=n.values,l=n.keycache,a=n.valuecache,r,u,i,f,o,e;for(r in s.properties)u=l[r],void 0===u&&(h.push(r),u=h.length-1,l[r]=u),t.writeVarint(u),i=s.properties[r],f=typeof i,"string"!==f&&"boolean"!==f&&"number"!==f&&(i=JSON.stringify(i)),o=f+":"+i,e=a[o],void 0===e&&(c.push(i),e=c.length-1,a[o]=e),t.writeVarint(e)}function st(n,t){return(t<<3)+(7&n)}function ki(n){return n<<1^n>>31}function cu(n,t){for(var i,e,o,r,s,h,c=n.loadGeometry(),u=n.type,l=0,a=0,v=c.length,f=0;f<v;f++){for(i=c[f],e=1,1===u&&(e=i.length),t.writeVarint(st(1,e)),o=3===u?i.length-1:i.length,r=0;r<o;r++)1===r&&1!==u&&t.writeVarint(st(2,o-1)),s=i[r].x-l,h=i[r].y-a,t.writeVarint(ki(s)),t.writeVarint(ki(h)),l+=s,a+=h;3===u&&t.writeVarint(st(7,0))}}function lu(n,t){var i=typeof n;"string"===i?t.writeStringField(1,n):"boolean"===i?t.writeBooleanField(7,n):"number"===i&&(n%1!=0?t.writeDoubleField(3,n):n<0?t.writeSVarintField(6,n):t.writeVarintField(5,n))}function ht(n,t,i,r,u,f){if(!(u-r<=i)){var e=Math.floor((r+u)/2);!function n(t,i,r,u,f,e){for(;f>u;){if(f-u>600){var s=f-u+1,v=r-u+1,y=Math.log(s),l=.5*Math.exp(2*y/3),p=.5*Math.sqrt(y*l*(s-l)/s)*(v-s/2<0?-1:1),w=Math.max(u,Math.floor(r-v*l/s+p)),b=Math.min(f,Math.floor(r+(s-v)*l/s+p));n(t,i,r,w,b,e)}var a=i[2*r+e],c=u,o=f;for(h(t,i,u,r),i[2*f+e]>a&&h(t,i,u,f);c<o;){for(h(t,i,c,o),c++,o--;i[2*c+e]<a;)c++;for(;i[2*o+e]>a;)o--}i[2*u+e]===a?h(t,i,u,o):h(t,i,++o,f);o<=r&&(u=o+1);r<=o&&(f=o-1)}}(n,t,e,r,u,f%2);ht(n,t,i,r,e-1,f+1);ht(n,t,i,e+1,u,f+1)}}function h(n,t,i,r){ct(n,i,r);ct(t,2*i,2*r);ct(t,2*i+1,2*r+1)}function ct(n,t,i){var r=n[t];n[t]=n[i];n[i]=r}function di(n,t,i,r){var u=n-i,f=t-r;return u*u+f*f}function gi(n,t,i,r,u){return new nr(n,t,i,r,u)}function nr(n,t,i,r,u){t=t||au;i=i||vu;u=u||Array;this.nodeSize=r||64;this.points=n;this.ids=new u(n.length);this.coords=new u(2*n.length);for(var f=0;f<n.length;f++)this.ids[f]=f,this.coords[2*f]=t(n[f]),this.coords[2*f+1]=i(n[f]);ht(this.ids,this.coords,this.nodeSize,0,this.ids.length-1,0)}function au(n){return n[0]}function vu(n){return n[1]}function tr(n){this.options=vt(Object.create(this.options),n);this.trees=new Array(this.options.maxZoom+1)}function yu(n,t,i,r,u){return{x:n,y:t,zoom:1/0,id:i,parentId:-1,numPoints:r,properties:u}}function ir(n){return{type:"Feature",id:n.id,properties:rr(n),geometry:{type:"Point",coordinates:[(r=n.x,360*(r-.5)),(t=n.y,i=(180-360*t)*Math.PI/180,360*Math.atan(Math.exp(i))/Math.PI-90)]}};var t,i,r}function rr(n){var t=n.numPoints,i=t>=1e4?Math.round(t/1e3)+"k":t>=1e3?Math.round(t/100)/10+"k":t;return vt(vt({},n.properties),{cluster:!0,cluster_id:n.id,point_count:t,point_count_abbreviated:i})}function lt(n){return n/360+.5}function at(n){var i=Math.sin(n*Math.PI/180),t=.5-.25*Math.log((1+i)/(1-i))/Math.PI;return t<0?0:t>1?1:t}function vt(n,t){for(var i in t)n[i]=t[i];return n}function ur(n){return n.x}function fr(n){return n.y}function pu(n,t,i,r,u,f){var e=u-i,o=f-r,s;return(0!==e||0!==o)&&(s=((n-i)*e+(t-r)*o)/(e*e+o*o),s>1?(i=u,r=f):s>0&&(i+=e*s,r+=o*s)),(e=n-i)*e+(o=t-r)*o}function c(n,t,i,r){var u={id:void 0===n?null:n,type:t,geometry:i,tags:r,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(n){var i=n.geometry,r=n.type,t,u;if("Point"===r||"MultiPoint"===r||"LineString"===r)yt(n,i);else if("Polygon"===r||"MultiLineString"===r)for(t=0;t<i.length;t++)yt(n,i[t]);else if("MultiPolygon"===r)for(t=0;t<i.length;t++)for(u=0;u<i[t].length;u++)yt(n,i[t][u])}(u),u}function yt(n,t){for(var i=0;i<t.length;i+=3)n.minX=Math.min(n.minX,t[i]),n.minY=Math.min(n.minY,t[i+1]),n.maxX=Math.max(n.maxX,t[i]),n.maxY=Math.max(n.maxY,t[i+1])}function w(n,t,i,r){var u,l;if(t.geometry){var f=t.geometry.coordinates,o=t.geometry.type,s=Math.pow(i.tolerance/((1<<i.maxZoom)*i.extent),2),e=[],h=t.id;if(i.promoteId?h=t.properties[i.promoteId]:i.generateId&&(h=r||0),"Point"===o)er(f,e);else if("MultiPoint"===o)for(u=0;u<f.length;u++)er(f[u],e);else if("LineString"===o)pt(f,e,s,!1);else if("MultiLineString"===o){if(i.lineMetrics){for(u=0;u<f.length;u++)e=[],pt(f[u],e,s,!1),n.push(c(h,"LineString",e,t.properties));return}wt(f,e,s,!1)}else if("Polygon"===o)wt(f,e,s,!0);else{if("MultiPolygon"!==o){if("GeometryCollection"===o){for(u=0;u<t.geometry.geometries.length;u++)w(n,{id:h,geometry:t.geometry.geometries[u],properties:t.properties},i,r);return}throw new Error("Input data is not a valid GeoJSON object.");}for(u=0;u<f.length;u++)l=[],wt(f[u],l,s,!0),e.push(l)}n.push(c(h,o,e,t.properties))}}function er(n,t){t.push(or(n[0]));t.push(sr(n[1]));t.push(0)}function pt(n,t,i,r){for(var o,s,f,e,c,h=0,u=0;u<n.length;u++)f=or(n[u][0]),e=sr(n[u][1]),t.push(f),t.push(e),t.push(0),u>0&&(h+=r?(o*e-f*s)/2:Math.sqrt(Math.pow(f-o,2)+Math.pow(e-s,2))),o=f,s=e;c=t.length-3;t[2]=1,function n(t,i,r,u){for(var s,h,f,o=u,l=r-i>>1,c=r-i,a=t[i],v=t[i+1],y=t[r],p=t[r+1],e=i+3;e<r;e+=3)s=pu(t[e],t[e+1],a,v,y,p),s>o?(f=e,o=s):s===o&&(h=Math.abs(e-l),h<c&&(f=e,c=h));o>u&&(f-i>3&&n(t,i,f,u),t[f+2]=o,r-f>3&&n(t,f,r,u))}(t,0,c,i);t[c+2]=1;t.size=Math.abs(h);t.start=0;t.end=t.size}function wt(n,t,i,r){for(var f,u=0;u<n.length;u++)f=[],pt(n[u],f,i,r),t.push(f)}function or(n){return n/360+.5}function sr(n){var i=Math.sin(n*Math.PI/180),t=.5-.25*Math.log((1+i)/(1-i))/Math.PI;return t<0?0:t>1?1:t}function r(n,t,i,r,u,f,e,o){var v,p,h,a,w;if(r/=t,f>=(i/=t)&&e<r)return n;if(e<i||f>=r)return null;for(v=[],p=0;p<n.length;p++){var l=n[p],y=l.geometry,s=l.type,b=0===u?l.minX:l.minY,k=0===u?l.maxX:l.maxY;if(b>=i&&k<r)v.push(l);else if(!(k<i||b>=r)){if(h=[],"Point"===s||"MultiPoint"===s)wu(y,h,i,r,u);else if("LineString"===s)hr(y,h,i,r,u,!1,o.lineMetrics);else if("MultiLineString"===s)bt(y,h,i,r,u,!1);else if("Polygon"===s)bt(y,h,i,r,u,!0);else if("MultiPolygon"===s)for(a=0;a<y.length;a++)w=[],bt(y[a],w,i,r,u,!0),w.length&&h.push(w);if(h.length){if(o.lineMetrics&&"LineString"===s){for(a=0;a<h.length;a++)v.push(c(l.id,s,h[a],l.tags));continue}"LineString"!==s&&"MultiLineString"!==s||(1===h.length?(s="LineString",h=h[0]):s="MultiLineString");"Point"!==s&&"MultiPoint"!==s||(s=3===h.length?"Point":"MultiPoint");v.push(c(l.id,s,h,l.tags))}}}return v.length?v:null}function wu(n,t,i,r,u){for(var e,f=0;f<n.length;f+=3)e=n[f+u],e>=i&&e<=r&&(t.push(n[f]),t.push(n[f+1]),t.push(n[f+2]))}function hr(n,t,i,r,u,f,e){for(var c,w,l,o=cr(n),b=0===u?bu:ku,k=n.start,a=0;a<n.length-3;a+=3){var s=n[a],h=n[a+1],g=n[a+2],v=n[a+3],y=n[a+4],p=0===u?s:h,d=0===u?v:y,nt=!1;e&&(w=Math.sqrt(Math.pow(s-v,2)+Math.pow(h-y,2)));p<i?d>=i&&(l=b(o,s,h,v,y,i),e&&(o.start=k+w*l)):p>=r?d<r&&(l=b(o,s,h,v,y,r),e&&(o.start=k+w*l)):kt(o,s,h,g);d<i&&p>=i&&(l=b(o,s,h,v,y,i),nt=!0);d>r&&p<=r&&(l=b(o,s,h,v,y,r),nt=!0);!f&&nt&&(e&&(o.end=k+w*l),t.push(o),o=cr(n));e&&(k+=w)}c=n.length-3;s=n[c];h=n[c+1];g=n[c+2];(p=0===u?s:h)>=i&&p<=r&&kt(o,s,h,g);c=o.length-3;f&&c>=3&&(o[c]!==o[0]||o[c+1]!==o[1])&&kt(o,o[0],o[1],o[2]);o.length&&t.push(o)}function cr(n){var t=[];return t.size=n.size,t.start=n.start,t.end=n.end,t}function bt(n,t,i,r,u,f){for(var e=0;e<n.length;e++)hr(n[e],t,i,r,u,f,!1)}function kt(n,t,i,r){n.push(t);n.push(i);n.push(r)}function bu(n,t,i,r,u,f){var e=(f-t)/(r-t);return n.push(f),n.push(i+(u-i)*e),n.push(1),e}function ku(n,t,i,r,u,f){var e=(f-i)/(u-i);return n.push(t+(r-t)*e),n.push(f),n.push(1),e}function lr(n,t){for(var f,i,u,r,h,o,s=[],e=0;e<n.length;e++){if(i=n[e],u=i.type,"Point"===u||"MultiPoint"===u||"LineString"===u)f=dt(i.geometry,t);else if("MultiLineString"===u||"Polygon"===u)for(f=[],r=0;r<i.geometry.length;r++)f.push(dt(i.geometry[r],t));else if("MultiPolygon"===u)for(f=[],r=0;r<i.geometry.length;r++){for(h=[],o=0;o<i.geometry[r].length;o++)h.push(dt(i.geometry[r][o],t));f.push(h)}s.push(c(i.id,u,f,i.tags))}return s}function dt(n,t){var r=[],i;for(r.size=n.size,void 0!==n.start&&(r.start=n.start,r.end=n.end),i=0;i<n.length;i+=3)r.push(n[i]+t,n[i+1],n[i+2]);return r}function ar(n,t){var o;if(n.transformed)return n;for(var i,u,s=1<<n.z,h=n.x,c=n.y,e=0;e<n.features.length;e++){var f=n.features[e],r=f.geometry,l=f.type;if(f.geometry=[],1===l)for(i=0;i<r.length;i+=2)f.geometry.push(vr(r[i],r[i+1],t,s,h,c));else for(i=0;i<r.length;i++){for(o=[],u=0;u<r[i].length;u+=2)o.push(vr(r[i][u],r[i][u+1],t,s,h,c));f.geometry.push(o)}}return n.transformed=!0,n}function vr(n,t,i,r,u,f){return[Math.round(i*(n*r-u)),Math.round(i*(t*r-f))]}function du(n,t,i,r,u){for(var l=t===u.maxZoom?0:u.tolerance/((1<<t)*u.extent),f={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:i,y:r,z:t,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},e=0;e<n.length;e++){f.numFeatures++;gu(f,n[e],l,u);var o=n[e].minX,s=n[e].minY,h=n[e].maxX,c=n[e].maxY;o<f.minX&&(f.minX=o);s<f.minY&&(f.minY=s);h>f.maxX&&(f.maxX=h);c>f.maxY&&(f.maxY=c)}return f}function gu(n,t,i,r){var f=t.geometry,e=t.type,o=[],u,h,c,s,l,a;if("Point"===e||"MultiPoint"===e)for(u=0;u<f.length;u+=3)o.push(f[u]),o.push(f[u+1]),n.numPoints++,n.numSimplified++;else if("LineString"===e)gt(o,f,n,i,!1,!1);else if("MultiLineString"===e||"Polygon"===e)for(u=0;u<f.length;u++)gt(o,f[u],n,i,"Polygon"===e,0===u);else if("MultiPolygon"===e)for(h=0;h<f.length;h++)for(c=f[h],u=0;u<c.length;u++)gt(o,c[u],n,i,!0,0===u);if(o.length){if(s=t.tags||null,"LineString"===e&&r.lineMetrics){for(l in s={},t.tags)s[l]=t.tags[l];s.mapbox_clip_start=f.start/f.size;s.mapbox_clip_end=f.end/f.size}a={geometry:o,type:"Polygon"===e||"MultiPolygon"===e?3:"LineString"===e||"MultiLineString"===e?2:1,tags:s};null!==t.id&&(a.id=t.id);n.features.push(a)}}function gt(n,t,i,r,u,f){var s=r*r,o,e;if(r>0&&t.size<(u?s:r))i.numPoints+=t.length/3;else{for(o=[],e=0;e<t.length;e+=3)(0===r||t[e+2]>s)&&(i.numSimplified++,o.push(t[e]),o.push(t[e+1])),i.numPoints++;u&&function(n,t){for(var e,o,f=0,i=0,r=n.length,u=r-2;i<r;u=i,i+=2)f+=(n[i]-n[u])*(n[i+1]+n[u+1]);if(f>0===t)for(i=0,r=n.length;i<r/2;i+=2)e=n[i],o=n[i+1],n[i]=n[r-2-i],n[i+1]=n[r-1-i],n[r-2-i]=e,n[r-1-i]=o}(o,f);n.push(o)}}function b(n,t){var u=(t=this.options=function(n,t){for(var i in t)n[i]=t[i];return n}(Object.create(this.options),t)).debug,i;if(u&&console.time("preprocess data"),t.maxZoom<0||t.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");i=function(n,t){var r=[],i;if("FeatureCollection"===n.type)for(i=0;i<n.features.length;i++)w(r,n.features[i],t,i);else"Feature"===n.type?w(r,n,t):w(r,{geometry:n},t);return r}(n,t);this.tiles={};this.tileCoords=[];u&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",t.indexMaxZoom,t.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0);(i=function(n,t){var i=t.buffer/t.extent,u=n,f=r(n,1,-1-i,i,0,-1,2,t),e=r(n,1,1-i,2+i,0,-1,2,t);return(f||e)&&(u=r(n,1,-i,1+i,0,-1,2,t)||[],f&&(u=lr(f,1).concat(u)),e&&(u=u.concat(lr(e,-1)))),u}(i,t)).length&&this.splitTile(i,0,0,0);u&&(i.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function ni(n,t,i){return 32*((1<<n)*i+t)+n}function nf(n,t){var r=n.tileID.canonical,u,f,i;if(!this._geoJSONIndex||(u=this._geoJSONIndex.getTile(r.z,r.x,r.y),!u))return t(null,null);f=new ft(u.features);i=p(f);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i));t(null,{vectorTile:f,rawData:i.buffer})}var d=function(n){n&&this.replace(n)},f,l,g,fi,nt,tt,u,a,it,ci,li,pi,v,ft,wi,et,yr,t;d.prototype.replace=function(n){this._layerConfigs={};this._layers={};this.update(n,[])};d.prototype.update=function(t,i){for(var u,l,e,a,v,o,y,p,s,w,f,b,h,r=this,c=0,k=t;c<k.length;c+=1)u=k[c],r._layerConfigs[u.id]=u,l=r._layers[u.id]=n.createStyleLayer(u),l._featureFilter=n.featureFilter(l.filter);for(e=0,a=i;e<a.length;e+=1)v=a[e],delete r._layerConfigs[v],delete r._layers[v];for(this.familiesBySource={},o=0,y=function(n){for(var u,r,f,e,t={},i=0;i<n.length;i++)u=pr(n[i]),r=t[u],r||(r=t[u]=[]),r.push(n[i]);f=[];for(e in t)f.push(t[e]);return f}(n.values(this._layerConfigs));o<y.length;o+=1)p=y[o].map(function(n){return r._layers[n.id]}),s=p[0],"none"!==s.visibility&&(w=s.source||"",f=r.familiesBySource[w],f||(f=r.familiesBySource[w]={}),b=s.sourceLayer||"_geojsonTileLayer",h=f[b],h||(h=f[b]=[]),h.push(p))};f=function(){this.opacity=0;this.targetOpacity=0;this.time=0};f.prototype.clone=function(){var n=new f;return n.opacity=this.opacity,n.targetOpacity=this.targetOpacity,n.time=this.time,n};n.register("OpacityState",f);l=function(t,i,r,u,f,e,o,s,h,c,l,a){var v=o.top*s-h,y=o.bottom*s+h,p=o.left*s-h,w=o.right*s+h,b,it;if(this.boxStartIndex=t.length,c)b=y-v,it=w-p,b>0&&(b=Math.max(10*s,b),this._addLineCollisionCircles(t,i,r,r.segment,it,b,u,f,e,l));else{if(a){var k=new n.Point(p,v),d=new n.Point(w,v),g=new n.Point(p,y),nt=new n.Point(w,y),tt=a*Math.PI/180;k._rotate(tt);d._rotate(tt);g._rotate(tt);nt._rotate(tt);p=Math.min(k.x,d.x,g.x,nt.x);w=Math.max(k.x,d.x,g.x,nt.x);v=Math.min(k.y,d.y,g.y,nt.y);y=Math.max(k.y,d.y,g.y,nt.y)}t.emplaceBack(r.x,r.y,p,v,w,y,u,f,e,0,0)}this.boxEndIndex=t.length};l.prototype._addLineCollisionCircles=function(n,t,i,r,u,f,e,o,s,h){var w=f/2,d=Math.floor(u/w)||1,rt=1+.4*Math.log(h)/Math.LN2,g=Math.floor(d*rt/2),b=-f/2,nt=i,c=r+1,a=b,k=-u/2,ut=k-u/4,y,p,v,l;do{if(--c<0){if(a>k)return;c=0;break}a-=t[c].dist(nt);nt=t[c]}while(a>ut);for(y=t[c].dist(t[c+1]),p=-g;p<d+g;p++)if(v=p*w,l=k+v,v<0&&(l+=v),v>u&&(l+=v-u),!(l<a)){for(;a+y<l;){if(a+=y,++c+1>=t.length)return;y=t[c].dist(t[c+1])}var ft=l-a,tt=t[c],it=t[c+1].sub(tt)._unit()._mult(ft)._add(tt)._round(),et=Math.abs(l-b)<w?0:.8*(l-b);n.emplaceBack(it.x,it.y,-f/2,-f/2,f/2,f/2,e,o,s,f/2,et)}};g=o;fi=o;o.prototype={push:function(n){this.data.push(n);this.length++;this._up(this.length-1)},pop:function(){if(0!==this.length){var n=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),n}},peek:function(){return this.data[0]},_up:function(n){for(var i,r,t=this.data,f=this.compare,u=t[n];n>0;){if(i=n-1>>1,r=t[i],f(u,r)>=0)break;t[n]=r;n=i}t[n]=u},_down:function(n){for(var t=this.data,f=this.compare,o=this.length>>1,e=t[n];n<o;){var i=1+(n<<1),r=i+1,u=t[i];if(r<this.length&&f(t[r],u)<0&&(i=r,u=t[r]),f(u,e)>=0)break;t[n]=u;n=i}t[n]=e}};g.default=fi;nt=function(t){var u={},f=new n.ShelfPack(0,0,{autoResize:!0}),p=[],e,o,w,s,i,h,c,l,a,v,r,y;for(e in t){o=t[e];w=u[e]={};for(s in o)i=o[+s],i&&0!==i.bitmap.width&&0!==i.bitmap.height&&(h={x:0,y:0,w:i.bitmap.width+2,h:i.bitmap.height+2},p.push(h),w[s]={rect:h,metrics:i.metrics})}f.pack(p,{inPlace:!0});c=new n.AlphaImage({width:f.w,height:f.h});for(l in t){a=t[l];for(v in a)r=a[+v],r&&0!==r.bitmap.width&&0!==r.bitmap.height&&(y=u[l][v].rect,n.AlphaImage.copy(r.bitmap,c,{x:0,y:0},{x:y.x+1,y:y.y+1},r.bitmap))}this.image=c;this.positions=u};n.register("GlyphAtlas",nt);tt=function(t){this.tileID=new n.OverscaledTileID(t.tileID.overscaledZ,t.tileID.wrap,t.tileID.canonical.z,t.tileID.canonical.x,t.tileID.canonical.y);this.uid=t.uid;this.zoom=t.zoom;this.pixelRatio=t.pixelRatio;this.tileSize=t.tileSize;this.source=t.source;this.overscaling=this.tileID.overscaleFactor();this.showCollisionBoxes=t.showCollisionBoxes;this.collectResourceTiming=!!t.collectResourceTiming};tt.prototype.parse=function(t,i,r,u){function tt(){var i,r,f,t;if(s)return u(s);if(h&&c){i=new nt(h);r=new n.ImageAtlas(c);for(f in y)t=y[f],t instanceof n.SymbolBucket&&(oi(t.layers,this.zoom),nu(t,h,i.positions,c,r.positions,this.showCollisionBoxes));this.status="done";u(null,{buckets:n.values(y).filter(function(n){return!n.isEmpty()}),featureIndex:o,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:i.image,iconAtlasImage:r.image})}}var f=this,it,o,l,a,et,w,k,v,e,d,g;this.status="parsing";this.data=t;this.collisionBoxArray=new n.CollisionBoxArray;it=new n.DictionaryCoder(Object.keys(t.layers).sort());o=new n.FeatureIndex(this.tileID);o.bucketLayerIDs=[];var s,h,c,y={},b={featureIndex:o,iconDependencies:{},glyphDependencies:{}},rt=i.familiesBySource[this.source];for(l in rt)if(a=t.layers[l],a){1===a.version&&n.warnOnce('Vector tile source "'+f.source+'" layer "'+l+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var ut=it.encode(l),ft=[],p=0;p<a.length;p++)et=a.feature(p),ft.push({feature:et,index:p,sourceLayerIndex:ut});for(w=0,k=rt[l];w<k.length;w+=1)v=k[w],e=v[0],e.minzoom&&f.zoom<Math.floor(e.minzoom)||e.maxzoom&&f.zoom>=e.maxzoom||"none"!==e.visibility&&(oi(v,f.zoom),(y[e.id]=e.createBucket({index:o.bucketLayerIDs.length,layers:v,zoom:f.zoom,pixelRatio:f.pixelRatio,overscaling:f.overscaling,collisionBoxArray:f.collisionBoxArray,sourceLayerIndex:ut,sourceID:f.source})).populate(ft,b),o.bucketLayerIDs.push(v.map(function(n){return n.id})))}d=n.mapObject(b.glyphDependencies,function(n){return Object.keys(n).map(Number)});Object.keys(d).length?r.send("getGlyphs",{uid:this.uid,stacks:d},function(n,t){s||(s=n,h=t,tt.call(f))}):h={};g=Object.keys(b.iconDependencies);g.length?r.send("getImages",{icons:g},function(n,t){s||(s=n,c=t,tt.call(f))}):c={};tt.call(this)};var s="undefined"!=typeof performance,i={getEntriesByName:function(n){return!!(s&&performance&&performance.getEntriesByName)&&performance.getEntriesByName(n)},mark:function(n){return!!(s&&performance&&performance.mark)&&performance.mark(n)},measure:function(n,t,i){return!!(s&&performance&&performance.measure)&&performance.measure(n,t,i)},clearMarks:function(n){return!!(s&&performance&&performance.clearMarks)&&performance.clearMarks(n)},clearMeasures:function(n){return!!(s&&performance&&performance.clearMeasures)&&performance.clearMeasures(n)}},si=function(n){this._marks={start:[n.url,"start"].join("#"),end:[n.url,"end"].join("#"),measure:n.url.toString()};i.mark(this._marks.start)};si.prototype.finish=function(){i.mark(this._marks.end);var n=i.getEntriesByName(this._marks.measure);return 0===n.length&&(i.measure(this._marks.measure,this._marks.start,this._marks.end),n=i.getEntriesByName(this._marks.measure),i.clearMarks(this._marks.start),i.clearMarks(this._marks.end),i.clearMeasures(this._marks.measure)),n};i.Performance=si;u=function(n,t,i){this.actor=n;this.layerIndex=t;this.loadVectorData=i||ru;this.loading={};this.loaded={}};u.prototype.loadTile=function(t,r){var u=this,e=t.uid,o,f;this.loading||(this.loading={});o=!!(t&&t.request&&t.request.collectResourceTiming)&&new i.Performance(t.request);f=this.loading[e]=new tt(t);f.abort=this.loadVectorData(t,function(t,i){var l,s,h,c;if(delete u.loading[e],t||!i)return r(t);l=i.rawData;s={};i.expires&&(s.expires=i.expires);i.cacheControl&&(s.cacheControl=i.cacheControl);h={};o&&(c=o.finish(),c&&(h.resourceTiming=JSON.parse(JSON.stringify(c))));f.vectorTile=i.vectorTile;f.parse(i.vectorTile,u.layerIndex,u.actor,function(t,i){if(t||!i)return r(t);r(null,n.extend({rawTileData:l.slice(0)},i,s,h))});u.loaded=u.loaded||{};u.loaded[e]=f})};u.prototype.reloadTile=function(n,t){var r=this.loaded,f=n.uid,e=this,i,u;r&&r[f]&&(i=r[f],i.showCollisionBoxes=n.showCollisionBoxes,u=function(n,r){var u=i.reloadCallback;u&&(delete i.reloadCallback,i.parse(i.vectorTile,e.layerIndex,e.actor,u));t(n,r)},"parsing"===i.status?i.reloadCallback=u:"done"===i.status&&i.parse(i.vectorTile,this.layerIndex,this.actor,u))};u.prototype.abortTile=function(n,t){var i=this.loading,r=n.uid;i&&i[r]&&i[r].abort&&(i[r].abort(),delete i[r]);t()};u.prototype.removeTile=function(n,t){var i=this.loaded,r=n.uid;i&&i[r]&&delete i[r];t()};a=function(){this.loaded={}};a.prototype.loadTile=function(t,i){var r=t.uid,f=t.encoding,e=t.rawImageData,u=new n.DEMData(r,e,f);this.loaded=this.loaded||{};this.loaded[r]=u;i(null,u)};a.prototype.removeTile=function(n){var t=this.loaded,i=n.uid;t&&t[i]&&delete t[i]};it={RADIUS:6378137,FLATTENING:1/298.257223563,POLAR_RADIUS:6356752.3142};ci={geometry:function n(t){var i,r=0;switch(t.type){case"Polygon":return hi(t.coordinates);case"MultiPolygon":for(i=0;i<t.coordinates.length;i++)r+=hi(t.coordinates[i]);return r;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0;case"GeometryCollection":for(i=0;i<t.geometries.length;i++)r+=n(t.geometries[i]);return r}},ring:rt};li=function n(t,i){switch(t&&t.type||null){case"FeatureCollection":return t.features=t.features.map(ai(n,i)),t;case"Feature":return t.geometry=n(t.geometry,i),t;case"Polygon":case"MultiPolygon":return function(n,t){return"Polygon"===n.type?n.coordinates=vi(n.coordinates,t):"MultiPolygon"===n.type&&(n.coordinates=n.coordinates.map(ai(vi,t))),n}(t,i);default:return t}};pi=n.mvt.VectorTileFeature.prototype.toGeoJSON;v=function(t){this._feature=t;this.extent=n.EXTENT;this.type=t.type;this.properties=t.tags;"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))};v.prototype.loadGeometry=function(){var i,f;if(1===this._feature.type){for(var e=[],t=0,o=this._feature.geometry;t<o.length;t+=1)i=o[t],e.push([new n.Point(i[0],i[1])]);return e}for(var s=[],r=0,h=this._feature.geometry;r<h.length;r+=1){for(var c=[],u=0,l=h[r];u<l.length;u+=1)f=l[u],c.push(new n.Point(f[0],f[1]));s.push(c)}return s};v.prototype.toGeoJSON=function(n,t,i){return pi.call(this,n,t,i)};ft=function(t){this.layers={_geojsonTileLayer:this};this.name="_geojsonTileLayer";this.extent=n.EXTENT;this.length=t.length;this._features=t};ft.prototype.feature=function(n){return new v(this._features[n])};wi=n.vectorTile.VectorTileFeature;et=bi;bi.prototype.feature=function(n){return new y(this.features[n],this.options.extent)};y.prototype.loadGeometry=function(){var u=this.rawGeometry,t;for(this.geometry=[],t=0;t<u.length;t++){for(var r=u[t],f=[],i=0;i<r.length;i++)f.push(new n.Point$1(r[i][0],r[i][1]));this.geometry.push(f)}return this.geometry};y.prototype.bbox=function(){var o,t,n;this.geometry||this.loadGeometry();for(var s=this.geometry,i=1/0,r=-1/0,u=1/0,f=-1/0,e=0;e<s.length;e++)for(o=s[e],t=0;t<o.length;t++)n=o[t],i=Math.min(i,n.x),r=Math.max(r,n.x),u=Math.min(u,n.y),f=Math.max(f,n.y);return[i,u,r,f]};y.prototype.toGeoJSON=wi.prototype.toGeoJSON;var p=ot,uu=ot,fu=function(n,t){var r,i;t=t||{};r={};for(i in n)r[i]=new et(n[i].features,t),r[i].name=i,r[i].version=t.version,r[i].extent=t.extent;return ot({layers:r})},eu=et;return p.fromVectorTileJs=uu,p.fromGeojsonVt=fu,p.GeoJSONWrapper=eu,nr.prototype={range:function(n,t,i,r){return function(n,t,i,r,u,f,e){for(var s,h,c,l,w,o=[0,n.length-1,0],a=[];o.length;){var p=o.pop(),v=o.pop(),y=o.pop();if(v-y<=e)for(c=y;c<=v;c++)s=t[2*c],h=t[2*c+1],s>=i&&s<=u&&h>=r&&h<=f&&a.push(n[c]);else l=Math.floor((y+v)/2),s=t[2*l],h=t[2*l+1],s>=i&&s<=u&&h>=r&&h<=f&&a.push(n[l]),w=(p+1)%2,(0===p?i<=s:r<=h)&&(o.push(y),o.push(l-1),o.push(w)),(0===p?u>=s:f>=h)&&(o.push(l+1),o.push(v),o.push(w))}return a}(this.ids,this.coords,n,t,i,r,this.nodeSize)},within:function(n,t,i){return function(n,t,i,r,u,f){for(var o,p,e=[0,n.length-1,0],l=[],w=u*u;e.length;){var a=e.pop(),h=e.pop(),c=e.pop();if(h-c<=f)for(o=c;o<=h;o++)di(t[2*o],t[2*o+1],i,r)<=w&&l.push(n[o]);else{var s=Math.floor((c+h)/2),v=t[2*s],y=t[2*s+1];di(v,y,i,r)<=w&&l.push(n[s]);p=(a+1)%2;(0===a?i-u<=v:r-u<=y)&&(e.push(c),e.push(s-1),e.push(p));(0===a?i+u>=v:r+u>=y)&&(e.push(s+1),e.push(h),e.push(p))}}return l}(this.ids,this.coords,n,t,i,this.nodeSize)}},tr.prototype={options:{minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,reduce:null,initial:function(){return{}},map:function(n){return n}},load:function(n){var u=this.options.log,f,e,o,s,t,i,r,h;for(u&&console.time("total time"),f="prepare "+n.length+" points",u&&console.time(f),this.points=n,t=[],i=0;i<n.length;i++)n[i].geometry&&t.push((e=n[i],o=i,void 0,{x:lt((s=e.geometry.coordinates)[0]),y:at(s[1]),zoom:1/0,index:o,parentId:-1}));for(this.trees[this.options.maxZoom+1]=gi(t,ur,fr,this.options.nodeSize,Float32Array),u&&console.timeEnd(f),r=this.options.maxZoom;r>=this.options.minZoom;r--)h=+Date.now(),t=this._cluster(t,r),this.trees[r]=gi(t,ur,fr,this.options.nodeSize,Float32Array),u&&console.log("z%d: %d clusters in %dms",r,t.length,+Date.now()-h);return u&&console.timeEnd("total time"),this},getClusters:function(n,t){var i=((n[0]+180)%360+360)%360-180,f=Math.max(-90,Math.min(90,n[1])),r=180===n[2]?180:((n[2]+180)%360+360)%360-180,e=Math.max(-90,Math.min(90,n[3])),s,h,u;if(n[2]-n[0]>=360)i=-180,r=180;else if(i>r)return s=this.getClusters([i,f,180,e],t),h=this.getClusters([-180,f,r,e],t),s.concat(h);for(var c=this.trees[this._limitZoom(t)],l=c.range(lt(i),at(e),lt(r),at(f)),a=[],o=0;o<l.length;o++)u=c.points[l[o]],a.push(u.numPoints?ir(u):this.points[u.index]);return a},getChildren:function(n){var h=n>>5,o=n%32,u="No cluster with the specified id.",i=this.trees[o],r,t;if(!i)throw new Error(u);if(r=i.points[h],!r)throw new Error(u);for(var c=this.options.radius/(this.options.extent*Math.pow(2,o-1)),s=i.within(r.x,r.y,c),f=[],e=0;e<s.length;e++)t=i.points[s[e]],t.parentId===n&&f.push(t.numPoints?ir(t):this.points[t.index]);if(0===f.length)throw new Error(u);return f},getLeaves:function(n,t,i){t=t||10;i=i||0;var r=[];return this._appendLeaves(r,n,t,i,0),r},getTile:function(n,t,i){var u=this.trees[this._limitZoom(n)],r=Math.pow(2,n),h=this.options.extent,f=this.options.radius/h,o=(i-f)/r,s=(i+1+f)/r,e={features:[]};return this._addTileFeatures(u.range((t-f)/r,o,(t+1+f)/r,s),u.points,t,i,r,e),0===t&&this._addTileFeatures(u.range(1-f/r,o,1,s),u.points,r,i,r,e),t===r-1&&this._addTileFeatures(u.range(0,o,f/r,s),u.points,-1,i,r,e),e.features.length?e:null},getClusterExpansionZoom:function(n){for(var i,t=n%32-1;t<this.options.maxZoom;){if(i=this.getChildren(n),t++,1!==i.length)break;n=i[0].properties.cluster_id}return t},_appendLeaves:function(n,t,i,r,u){for(var f,o=this.getChildren(t),e=0;e<o.length;e++)if(f=o[e].properties,f&&f.cluster?u+f.point_count<=r?u+=f.point_count:u=this._appendLeaves(n,f.cluster_id,i,r,u):u<r?u++:n.push(o[e]),n.length===i)break;return u},_addTileFeatures:function(n,t,i,r,u,f){for(var o=0;o<n.length;o++){var e=t[n[o]],s={type:1,geometry:[[Math.round(this.options.extent*(e.x*u-i)),Math.round(this.options.extent*(e.y*u-r))]],tags:e.numPoints?rr(e):this.points[e.index].properties},h=e.numPoints?e.id:this.points[e.index].id;void 0!==h&&(s.id=h);f.features.push(s)}},_limitZoom:function(n){return Math.max(this.options.minZoom,Math.min(n,this.options.maxZoom+1))},_cluster:function(n,t){for(var i,o,s,r,h,c=[],p=this.options.radius/(this.options.extent*Math.pow(2,t)),f=0;f<n.length;f++)if(i=n[f],!(i.zoom<=t)){i.zoom=t;var l=this.trees[t+1],a=l.within(i.x,i.y,p),u=i.numPoints||1,v=i.x*u,y=i.y*u,e=null;for(this.options.reduce&&(e=this.options.initial(),this._accumulate(e,i)),o=(f<<5)+(t+1),s=0;s<a.length;s++)r=l.points[a[s]],r.zoom<=t||(r.zoom=t,h=r.numPoints||1,v+=r.x*h,y+=r.y*h,u+=h,r.parentId=o,this.options.reduce&&this._accumulate(e,r));1===u?c.push(i):(i.parentId=o,c.push(yu(v/u,y/u,o,u,e)))}return c},_accumulate:function(n,t){var i=t.numPoints?t.properties:this.options.map(this.points[t.index].properties);this.options.reduce(n,i)}},b.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},b.prototype.splitTile=function(n,t,i,u,f,e,o){for(var w,b,c=[n,t,i,u],h=this.options,v=h.debug;c.length;){u=c.pop();i=c.pop();t=c.pop();n=c.pop();var l=1<<t,ut=ni(t,i,u),s=this.tiles[ut];if(!s&&(v>1&&console.time("creation"),s=this.tiles[ut]=du(n,t,i,u,h),this.tileCoords.push({z:t,x:i,y:u}),v)&&(v>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,u,s.numFeatures,s.numPoints,s.numSimplified),console.timeEnd("creation")),w="z"+t,this.stats[w]=(this.stats[w]||0)+1,this.total++),s.source=n,f){if(t===h.maxZoom||t===f)continue;if(b=1<<f-t,i!==Math.floor(e/b)||u!==Math.floor(o/b))continue}else if(t===h.indexMaxZoom||s.numPoints<=h.indexMaxPoints)continue;if(s.source=null,0!==n.length){v>1&&console.time("clipping");var k,d,g,nt,y,p,a=.5*h.buffer/h.extent,tt=.5-a,it=.5+a,rt=1+a;k=d=g=nt=null;y=r(n,l,i-a,i+it,0,s.minX,s.maxX,h);p=r(n,l,i+tt,i+rt,0,s.minX,s.maxX,h);n=null;y&&(k=r(y,l,u-a,u+it,1,s.minY,s.maxY,h),d=r(y,l,u+tt,u+rt,1,s.minY,s.maxY,h),y=null);p&&(g=r(p,l,u-a,u+it,1,s.minY,s.maxY,h),nt=r(p,l,u+tt,u+rt,1,s.minY,s.maxY,h),p=null);v>1&&console.timeEnd("clipping");c.push(k||[],t+1,2*i,2*u);c.push(d||[],t+1,2*i,2*u+1);c.push(g||[],t+1,2*i+1,2*u);c.push(nt||[],t+1,2*i+1,2*u+1)}}},b.prototype.getTile=function(n,t,i){var c=this.options,l=c.extent,s=c.debug,h,r;if(n<0||n>24)return null;if(h=1<<n,r=ni(n,t=(t%h+h)%h,i),this.tiles[r])return ar(this.tiles[r],l);s>1&&console.log("drilling down to z%d-%d-%d",n,t,i);for(var u,f=n,e=t,o=i;!u&&f>0;)f--,e=Math.floor(e/2),o=Math.floor(o/2),u=this.tiles[ni(f,e,o)];return u&&u.source?(s>1&&console.log("found parent tile z%d-%d-%d",f,e,o),s>1&&console.time("drilling down"),this.splitTile(u.source,f,e,o,n,t,i),s>1&&console.timeEnd("drilling down"),this.tiles[r]?ar(this.tiles[r],l):null):null},yr=function(t){function r(n,i,r){t.call(this,n,i,nf);r&&(this.loadGeoJSON=r)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.loadData=function(n,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0});this._pendingCallback=t;this._pendingLoadDataParams=n;this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},r.prototype._loadData=function(){var u=this,t,n,r;this._pendingCallback&&this._pendingLoadDataParams&&(t=this._pendingCallback,n=this._pendingLoadDataParams,delete this._pendingCallback,delete this._pendingLoadDataParams,r=!!(n&&n.request&&n.request.collectResourceTiming)&&new i.Performance(n.request),this.loadGeoJSON(n,function(i,f){var s,e,o;if(i||!f)return t(i);if("object"!=typeof f)return t(new Error("Input data is not a valid GeoJSON object."));li(f,!0);try{u._geoJSONIndex=n.cluster?(s=n.superclusterOptions,new tr(s)).load(f.features):function(n,t){return new b(n,t)}(f,n.geojsonVtOptions)}catch(i){return t(i)}u.loaded={};e={};r&&(o=r.finish(),o&&(e.resourceTiming={},e.resourceTiming[n.source]=JSON.parse(JSON.stringify(o))));t(null,e)}))},r.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},r.prototype.reloadTile=function(n,i){var r=this.loaded,u=n.uid;return r&&r[u]?t.prototype.reloadTile.call(this,n,i):this.loadTile(n,i)},r.prototype.loadGeoJSON=function(t,i){if(t.request)n.getJSON(t.request,i);else{if("string"!=typeof t.data)return i(new Error("Input data is not a valid GeoJSON object."));try{return i(null,JSON.parse(t.data))}catch(n){return i(new Error("Input data is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(n,t){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0});t()},r.prototype.getClusterExpansionZoom=function(n,t){t(null,this._geoJSONIndex.getClusterExpansionZoom(n.clusterId))},r.prototype.getClusterChildren=function(n,t){t(null,this._geoJSONIndex.getChildren(n.clusterId))},r.prototype.getClusterLeaves=function(n,t){t(null,this._geoJSONIndex.getLeaves(n.clusterId,n.limit,n.offset))},r}(u),t=function(t){var i=this;this.self=t;this.actor=new n.Actor(t,this);this.layerIndexes={};this.workerSourceTypes={vector:u,geojson:yr};this.workerSources={};this.demWorkerSources={};this.self.registerWorkerSource=function(n,t){if(i.workerSourceTypes[n])throw new Error('Worker source with name "'+n+'" already registered.');i.workerSourceTypes[n]=t};this.self.registerRTLTextPlugin=function(t){if(n.plugin.isLoaded())throw new Error("RTL text plugin already registered.");n.plugin.applyArabicShaping=t.applyArabicShaping;n.plugin.processBidirectionalText=t.processBidirectionalText;n.plugin.processStyledBidirectionalText=t.processStyledBidirectionalText}},t.prototype.setLayers=function(n,t,i){this.getLayerIndex(n).replace(t);i()},t.prototype.updateLayers=function(n,t,i){this.getLayerIndex(n).update(t.layers,t.removedIds);i()},t.prototype.loadTile=function(n,t,i){this.getWorkerSource(n,t.type,t.source).loadTile(t,i)},t.prototype.loadDEMTile=function(n,t,i){this.getDEMWorkerSource(n,t.source).loadTile(t,i)},t.prototype.reloadTile=function(n,t,i){this.getWorkerSource(n,t.type,t.source).reloadTile(t,i)},t.prototype.abortTile=function(n,t,i){this.getWorkerSource(n,t.type,t.source).abortTile(t,i)},t.prototype.removeTile=function(n,t,i){this.getWorkerSource(n,t.type,t.source).removeTile(t,i)},t.prototype.removeDEMTile=function(n,t){this.getDEMWorkerSource(n,t.source).removeTile(t)},t.prototype.removeSource=function(n,t,i){if(this.workerSources[n]&&this.workerSources[n][t.type]&&this.workerSources[n][t.type][t.source]){var r=this.workerSources[n][t.type][t.source];delete this.workerSources[n][t.type][t.source];void 0!==r.removeSource?r.removeSource(t,i):i()}},t.prototype.loadWorkerSource=function(n,t,i){try{this.self.importScripts(t.url);i()}catch(n){i(n.toString())}},t.prototype.loadRTLTextPlugin=function(t,i,r){try{n.plugin.isLoaded()||(this.self.importScripts(i),r(n.plugin.isLoaded()?null:new Error("RTL Text Plugin failed to import scripts from "+i)))}catch(n){r(n.toString())}},t.prototype.getLayerIndex=function(n){var t=this.layerIndexes[n];return t||(t=this.layerIndexes[n]=new d),t},t.prototype.getWorkerSource=function(n,t,i){var u=this,r;return(this.workerSources[n]||(this.workerSources[n]={}),this.workerSources[n][t]||(this.workerSources[n][t]={}),this.workerSources[n][t][i])||(r={send:function(t,i,r){u.actor.send(t,i,r,n)}},this.workerSources[n][t][i]=new this.workerSourceTypes[t](r,this.getLayerIndex(n))),this.workerSources[n][t][i]},t.prototype.getDEMWorkerSource=function(n,t){return this.demWorkerSources[n]||(this.demWorkerSources[n]={}),this.demWorkerSources[n][t]||(this.demWorkerSources[n][t]=new a),this.demWorkerSources[n][t]},"undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof self&&self instanceof WorkerGlobalScope&&new t(self),t}),r(["./shared.js"],function(n){function kf(n){if(!at)return null;for(var t=0;t<n.length;t++)if(n[t]in at)return n[t];return n[0]}function bi(n,t){var i=vt(v.API_URL);if(n.protocol=i.protocol,n.authority=i.authority,"/"!==i.path&&(n.path=""+i.path+n.path),!v.REQUIRE_ACCESS_TOKEN)return li(n);if(!(t=t||v.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+bu);if("s"===t[0])throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+bu);return n.params.push("access_token="+t),li(n)}function kt(n){return 0===n.indexOf("mapbox:")}function vt(n){var t=n.match(as);if(!t)throw new Error("Unable to parse URL object");return{protocol:t[1],authority:t[2],path:t[3]||"/",params:t[4]?t[4].split("&"):[]}}function li(n){var t=n.params.length?"?"+n.params.join("&"):"";return n.protocol+"://"+n.authority+n.path+t}function ue(n,t,i,r,u,f){this.fontSize=n||24;this.buffer=void 0===t?3:t;this.cutoff=r||.25;this.fontFamily=u||"sans-serif";this.fontWeight=f||"normal";this.radius=i||8;var e=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement("canvas");this.canvas.width=this.canvas.height=e;this.ctx=this.canvas.getContext("2d");this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily;this.ctx.textBaseline="middle";this.ctx.fillStyle="black";this.gridOuter=new Float64Array(e*e);this.gridInner=new Float64Array(e*e);this.f=new Float64Array(e);this.d=new Float64Array(e);this.z=new Float64Array(e+1);this.v=new Int16Array(e);this.middle=Math.round(e/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}function fe(n,t,i,r,u,f,e){for(var s,o=0;o<t;o++){for(s=0;s<i;s++)r[s]=n[s*t+o];for(ee(r,u,f,e,i),s=0;s<i;s++)n[s*t+o]=u[s]}for(s=0;s<i;s++){for(o=0;o<t;o++)r[o]=n[s*t+o];for(ee(r,u,f,e,t),o=0;o<t;o++)n[s*t+o]=Math.sqrt(u[o])}}function ee(n,t,i,r,u){var e,f,o;for(i[0]=0,r[0]=-dt,r[1]=+dt,e=1,f=0;e<u;e++){for(o=(n[e]+e*e-(n[i[f]]+i[f]*i[f]))/(2*e-2*i[f]);o<=r[f];)f--,o=(n[e]+e*e-(n[i[f]]+i[f]*i[f]))/(2*e-2*i[f]);i[++f]=e;r[f]=o;r[f+1]=+dt}for(e=0,f=0;e<u;e++){for(;r[f+1]<e;)f++;t[e]=(e-i[f])*(e-i[f])+n[i[f]]}}function oe(t,i,r){var u=function(t,i){if(t)return r(t);if(i){var u=n.pick(i,["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds"]);i.vector_layers&&(u.vectorLayers=i.vector_layers,u.vectorLayerIds=u.vectorLayers.map(function(n){return n.id}));r(null,u)}};return t.url?n.getJSON(i(cs(t.url),n.ResourceType.Source),u):n.browser.frame(function(){return u(null,t)})}function nh(n,t,i,r,u){var s=u.maxPitchScaleFactor(),h=n.tilesIn(i,s),f,e,a;h.sort(he);for(var c=[],o=0,l=h;o<l.length;o+=1)f=l[o],c.push({wrappedTileID:f.tileID.wrapped().key,queryResults:f.tile.queryRenderedFeatures(t,n._state,f.queryGeometry,f.scale,r,u,s,n.transform.calculatePosMatrix(f.tileID.toUnwrapped()))});e=function(n){for(var t,i,r={},e={},u=0,o=n;u<o.length;u+=1){var s=o[u],h=s.queryResults,c=s.wrappedTileID,l=e[c]=e[c]||{};for(t in h)for(var y=h[t],a=l[t]=l[t]||{},p=r[t]=r[t]||[],f=0,v=y;f<v.length;f+=1)i=v[f],a[i.featureIndex]||(a[i.featureIndex]=!0,p.push(i.feature))}return r}(c);for(a in e)e[a].forEach(function(t){var i=n.getFeatureState(t.layer["source-layer"],t.id);t.source=t.layer.source;t.layer["source-layer"]&&(t.sourceLayer=t.layer["source-layer"]);t.state=i});return e}function he(n,t){var i=n.tileID,r=t.tileID;return i.overscaledZ-r.overscaledZ||i.canonical.y-r.canonical.y||i.wrap-r.wrap||i.canonical.x-r.canonical.x}function gu(t,i){var r=i.zoomTo(t.canonical.z);return new n.Point((r.column-(t.canonical.x+t.wrap*Math.pow(2,t.canonical.z)))*n.EXTENT,(r.row-t.canonical.y)*n.EXTENT)}function ae(n,t){return n%32-t%32||t-n}function ve(n){return"raster"===n||"image"===n||"video"===n}function rh(){return new n.window.Worker(ss.workerUrl)}function uh(t,i){var r={};for(var u in t)"ref"!==u&&(r[u]=t[u]);return n.refProperties.forEach(function(n){n in i&&(r[n]=i[n])}),r}function ye(n){var r,i,t;for(n=n.slice(),r=Object.create(null),i=0;i<n.length;i++)r[n[i].id]=n[i];for(t=0;t<n.length;t++)"ref"in n[t]&&(n[t]=uh(n[t],r[n[t].ref]));return n}function pe(n,t,i){i.push({command:r.addSource,args:[n,t[n]]})}function we(n,t,i){t.push({command:r.removeSource,args:[n]});i[n]=!0}function fh(n,t,i,r){we(n,i,r);pe(n,t,i)}function eh(t,i,r){for(var u in t[r])if(t[r].hasOwnProperty(u)&&"data"!==u&&!n.deepEqual(t[r][u],i[r][u]))return!1;for(u in i[r])if(i[r].hasOwnProperty(u)&&"data"!==u&&!n.deepEqual(t[r][u],i[r][u]))return!1;return!0}function eu(t,i,r,u,f,e){for(var o in i=i||{},t=t||{})t.hasOwnProperty(o)&&(n.deepEqual(t[o],i[o])||r.push({command:e,args:[u,o,i[o],f]}));for(o in i)i.hasOwnProperty(o)&&!t.hasOwnProperty(o)&&(n.deepEqual(t[o],i[o])||r.push({command:e,args:[u,o,i[o],f]}))}function be(n){return n.id}function ke(n,t){return n[t.id]=t,n}function oh(t,i){var u,f,e,o;if(!t)return[{command:r.setStyle,args:[i]}];u=[];try{if(!n.deepEqual(t.version,i.version))return[{command:r.setStyle,args:[i]}];n.deepEqual(t.center,i.center)||u.push({command:r.setCenter,args:[i.center]});n.deepEqual(t.zoom,i.zoom)||u.push({command:r.setZoom,args:[i.zoom]});n.deepEqual(t.bearing,i.bearing)||u.push({command:r.setBearing,args:[i.bearing]});n.deepEqual(t.pitch,i.pitch)||u.push({command:r.setPitch,args:[i.pitch]});n.deepEqual(t.sprite,i.sprite)||u.push({command:r.setSprite,args:[i.sprite]});n.deepEqual(t.glyphs,i.glyphs)||u.push({command:r.setGlyphs,args:[i.glyphs]});n.deepEqual(t.transition,i.transition)||u.push({command:r.setTransition,args:[i.transition]});n.deepEqual(t.light,i.light)||u.push({command:r.setLight,args:[i.light]});f={};e=[];!function(t,i,u,f){for(var e in i=i||{},t=t||{})t.hasOwnProperty(e)&&(i.hasOwnProperty(e)||we(e,u,f));for(e in i)i.hasOwnProperty(e)&&(t.hasOwnProperty(e)?n.deepEqual(t[e],i[e])||("geojson"===t[e].type&&"geojson"===i[e].type&&eh(t,i,e)?u.push({command:r.setGeoJSONSourceData,args:[e,i[e].data]}):fh(e,i,u,f)):pe(e,i,u))}(t.sources,i.sources,e,f);o=[];t.layers&&t.layers.forEach(function(n){f[n.source]?u.push({command:r.removeLayer,args:[n.id]}):o.push(n)});u=u.concat(e),function(t,i,u){i=i||[];for(var e,s,o,v,f,y=(t=t||[]).map(be),a=i.map(be),w=t.reduce(ke,{}),p=i.reduce(ke,{}),c=y.slice(),b=Object.create(null),h=0,l=0;h<y.length;h++)e=y[h],p.hasOwnProperty(e)?l++:(u.push({command:r.removeLayer,args:[e]}),c.splice(c.indexOf(e,l),1));for(h=0,l=0;h<a.length;h++)e=a[a.length-1-h],c[c.length-1-h]!==e&&(w.hasOwnProperty(e)?(u.push({command:r.removeLayer,args:[e]}),c.splice(c.lastIndexOf(e,c.length-l),1)):l++,v=c[c.length-h],u.push({command:r.addLayer,args:[p[e],v]}),c.splice(c.length-h,0,e),b[e]=!0);for(h=0;h<a.length;h++)if(s=w[e=a[h]],o=p[e],!b[e]&&!n.deepEqual(s,o))if(n.deepEqual(s.source,o.source)&&n.deepEqual(s["source-layer"],o["source-layer"])&&n.deepEqual(s.type,o.type)){for(f in eu(s.layout,o.layout,u,e,null,r.setLayoutProperty),eu(s.paint,o.paint,u,e,null,r.setPaintProperty),n.deepEqual(s.filter,o.filter)||u.push({command:r.setFilter,args:[e,o.filter]}),n.deepEqual(s.minzoom,o.minzoom)&&n.deepEqual(s.maxzoom,o.maxzoom)||u.push({command:r.setLayerZoomRange,args:[e,o.minzoom,o.maxzoom]}),s)s.hasOwnProperty(f)&&"layout"!==f&&"paint"!==f&&"filter"!==f&&"metadata"!==f&&"minzoom"!==f&&"maxzoom"!==f&&(0===f.indexOf("paint.")?eu(s[f],o[f],u,e,f.slice(6),r.setPaintProperty):n.deepEqual(s[f],o[f])||u.push({command:r.setLayerProperty,args:[e,f,o[f]]}));for(f in o)o.hasOwnProperty(f)&&!s.hasOwnProperty(f)&&"layout"!==f&&"paint"!==f&&"filter"!==f&&"metadata"!==f&&"minzoom"!==f&&"maxzoom"!==f&&(0===f.indexOf("paint.")?eu(s[f],o[f],u,e,f.slice(6),r.setPaintProperty):n.deepEqual(s[f],o[f])||u.push({command:r.setLayerProperty,args:[e,f,o[f]]}))}else u.push({command:r.removeLayer,args:[e]}),v=c[c.lastIndexOf(e)+1],u.push({command:r.addLayer,args:[o,v]})}(o,i.layers,u)}catch(n){console.warn("Unable to compute style diff:",n);u=[{command:r.setStyle,args:[i]}]}return u}function tf(t,i,r,u,f){var e=n.identity(new Float32Array(16));return i?(n.identity(e),n.scale(e,e,[1/f,1/f,1]),r||n.rotateZ(e,e,u.angle)):(n.scale(e,e,[u.width/2,-u.height/2,1]),n.translate(e,e,[1,-1,0]),n.multiply(e,e,t)),e}function sh(t,i,r,u,f){var e=n.identity(new Float32Array(16));return i?(n.multiply(e,e,t),n.scale(e,e,[f,f,1]),r||n.rotateZ(e,e,-u.angle)):(n.scale(e,e,[1,-1,1]),n.translate(e,e,[-1,-1,0]),n.scale(e,e,[2/u.width,2/u.height,1])),e}function ct(t,i){var r=[t.x,t.y,0,1],u;return su(r,r,i),u=r[3],{point:new n.Point(r[0]/u,r[1]/u),signedDistanceFromCamera:u}}function hh(n,t){var i=n[0]/n[3],r=n[1]/n[3];return i>=-t[0]&&i<=t[0]&&r>=-t[1]&&r<=t[1]}function ch(t,i,r,u,f,e,o,s){var w=u?t.textSizeData:t.iconSizeData,ut=n.evaluateSizeForZoom(w,r.transform.zoom,de.properties[u?"text-size":"icon-size"]),ft=[512/r.width+1,512/r.height+1],c=u?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray,h,l;c.clear();for(var b=t.lineVertexArray,k=u?t.text.placedSymbolArray:t.icon.placedSymbolArray,d=r.transform.width/r.transform.height,a=!1,v=0;v<k.length;v++)if(h=k.get(v),h.hidden||h.writingMode===n.WritingMode.vertical&&!a)rf(h.numGlyphs,c);else if(a=!1,l=[h.anchorX,h.anchorY,0,1],n.transformMat4(l,l,i),hh(l,ft)){var g=.5+l[3]/r.transform.cameraToCenterDistance*.5,nt=n.evaluateSizeForFeature(w,ut,h),tt=o?nt*g:nt/g,y=new n.Point(h.anchorX,h.anchorY),it=ct(y,f).point,rt={},p=to(h,tt,!1,s,i,f,e,t.glyphOffsetArray,b,c,it,y,rt,d);a=p.useVertical;(p.notEnoughRoom||a||p.needsFlipping&&to(h,tt,!0,s,i,f,e,t.glyphOffsetArray,b,c,it,y,rt,d).notEnoughRoom)&&rf(h.numGlyphs,c)}else rf(h.numGlyphs,c);u?t.text.dynamicLayoutVertexBuffer.updateData(c):t.icon.dynamicLayoutVertexBuffer.updateData(c)}function ge(n,t,i,r,u,f,e,o,s,h,c,l){var w=o.glyphStartIndex+o.numGlyphs,v=o.lineStartIndex,y=o.lineStartIndex+o.lineLength,b=t.getoffsetX(o.glyphStartIndex),k=t.getoffsetX(w-1),p=ou(n*b,i,r,u,f,e,o.segment,v,y,s,h,c,l),a;return p?(a=ou(n*k,i,r,u,f,e,o.segment,v,y,s,h,c,l),a?{first:p,last:a}:null):null}function no(t,i,r,u){return t===n.WritingMode.horizontal&&Math.abs(r.y-i.y)>Math.abs(r.x-i.x)*u?{useVertical:!0}:(t===n.WritingMode.vertical?i.y<r.y:i.x>r.x)?{needsFlipping:!0}:null}function to(t,i,r,u,f,e,o,s,h,c,l,a,v,y){var p,d=i/24,g=t.lineOffsetX*i,nt=t.lineOffsetY*i,ft,et,tt,b,it,k,rt,ut;if(t.numGlyphs>1){var vt=t.glyphStartIndex+t.numGlyphs,yt=t.lineStartIndex,pt=t.lineStartIndex+t.lineLength,w=ge(d,s,g,nt,r,l,a,t,h,e,v,!1);if(!w)return{notEnoughRoom:!0};if(ft=ct(w.first.point,o).point,et=ct(w.last.point,o).point,u&&!r&&(tt=no(t.writingMode,ft,et,y),tt))return tt;for(p=[w.first],b=t.glyphStartIndex+1;b<vt-1;b++)p.push(ou(d*s.getoffsetX(b),g,nt,r,l,a,t.segment,yt,pt,h,e,v,!1));p.push(w.last)}else{if(u&&!r){var ot=ct(a,f).point,st=t.lineStartIndex+t.segment+1,ht=new n.Point(h.getx(st),h.gety(st)),lt=ct(ht,f),wt=lt.signedDistanceFromCamera>0?lt.point:io(a,ht,ot,1,f),at=no(t.writingMode,ot,wt,y);if(at)return at}if(it=ou(d*s.getoffsetX(t.glyphStartIndex),g,nt,r,l,a,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,h,e,v,!1),!it)return{notEnoughRoom:!0};p=[it]}for(k=0,rt=p;k<rt.length;k+=1)ut=rt[k],n.addDynamicAttributes(c,ut.point,ut.angle);return{}}function io(n,t,i,r,u){var e=ct(n.add(n.sub(t)._unit()),u).point,f=i.sub(e);return i.add(f._mult(r/f.mag()))}function ou(t,i,r,u,f,e,o,s,h,c,l,a,v){var ut=u?t-i:t+i,p=ut>0?1:-1,nt=0,tt,it,rt;u&&(p*=-1,nt=Math.PI);p<0&&(nt+=Math.PI);for(var y=p>0?s+o:s+o+1,ot=y,w=f,b=f,k=0,d=0,g=Math.abs(ut);k+d<=g;){if((y+=p)<s||y>=h)return null;(b=w,void 0===(w=a[y]))&&(tt=new n.Point(c.getx(y),c.gety(y)),it=ct(tt,l),it.signedDistanceFromCamera>0?w=a[y]=it.point:(rt=y-p,w=io(0===k?e:new n.Point(c.getx(rt),c.gety(rt)),tt,b,g-k+1,l)));k+=d;d=b.dist(w)}var st=(g-k)/d,ft=w.sub(b),et=ft.mult(st)._add(b);return et._add(ft._unit()._perp()._mult(r*p)),{point:et,angle:nt+Math.atan2(w.y-b.y,w.x-b.x),tileDistance:v?{prevTileDistance:y-p===ot?0:c.gettileUnitDistanceFromAnchor(y-p),lastSegmentViewportDistance:g-k}:null}}function rf(n,t){for(var r,i=0;i<n;i++)r=t.length,t.resize(r+4),t.float32.set(ro,3*r)}function su(n,t,i){var r=t[0],u=t[1];return n[0]=i[0]*r+i[4]*u+i[12],n[1]=i[1]*r+i[5]*u+i[13],n[3]=i[3]*r+i[7]*u+i[15],n}function uf(n,t,i){n[t+4]=i?1:0}function nt(t,i,r){return i*(n.EXTENT/(t.tileSize*Math.pow(2,r-t.tileID.overscaledZ)))}function of(n,t,i){n.emplaceBack(t?1:0,i?1:0);n.emplaceBack(t?1:0,i?1:0);n.emplaceBack(t?1:0,i?1:0);n.emplaceBack(t?1:0,i?1:0)}function uo(n){if(0===n.opacity&&!n.placed)return 0;if(1===n.opacity&&n.placed)return 4294967295;var t=n.placed?1:0,i=Math.floor(127*n.opacity);return i*lh+t*ah+i*vh+t*yh+i*ph+t*wh+i*bh+t}function nc(t,i){for(var u=t.sort(function(n,t){return n.tileID.isLessThan(t.tileID)?-1:t.tileID.isLessThan(n.tileID)?1:0}),r=0;r<u.length;r++){var e={},f=u[r],o=u.slice(r+1);so(f.tileID.wrapped(),f.tileID,o,new n.OverscaledTileID(0,f.tileID.wrap+1,0,0,0),e);f.setMask(e,i)}}function so(t,i,r,u,f){for(var o,l,s,h,c,e=0;e<r.length;e++){if(o=r[e],u.isLessThan(o.tileID))break;if(i.key===o.tileID.key)return;if(o.tileID.isChildOf(i)){for(l=i.children(1/0),s=0;s<l.length;s++)so(t,l[s],r.slice(e),u,f);return}}h=i.overscaledZ-t.overscaledZ;c=new n.CanonicalTileID(h,i.canonical.x-(t.canonical.x<<h),i.canonical.y-(t.canonical.y<<h));f[c.key]=f[c.key]||c}function ho(n,t,i,r,u){var h=n.context,f=h.gl,o=u?n.useProgram("collisionCircle"):n.useProgram("collisionBox"),l,s,v,p;for(h.setDepthMode(e.disabled),h.setStencilMode(c.disabled),h.setColorMode(n.colorModeForRenderPass()),l=0;l<r.length;l++){var w=r[l],a=t.getTile(w),y=a.getBucket(i);y&&(s=u?y.collisionCircle:y.collisionBox,s&&(f.uniformMatrix4fv(o.uniforms.u_matrix,!1,w.posMatrix),f.uniform1f(o.uniforms.u_camera_to_center_distance,n.transform.cameraToCenterDistance),v=nt(a,1,n.transform.zoom),p=Math.pow(2,n.transform.zoom-a.tileID.overscaledZ),f.uniform1f(o.uniforms.u_pixels_to_tile_units,v),f.uniform2f(o.uniforms.u_extrude_scale,n.transform.pixelsToGLUnits[0]/(v*p),n.transform.pixelsToGLUnits[1]/(v*p)),f.uniform1f(o.uniforms.u_overscale_factor,a.tileID.overscaleFactor()),o.draw(h,u?f.TRIANGLES:f.LINES,i.id,s.layoutVertexBuffer,s.indexBuffer,s.segments,null,s.collisionVertexBuffer,null)))}}function ao(n,t,i,r,u,f,o,s,h,c){var a,g=n.context,l=g.gl,ct=n.transform,k="map"===s,y="map"===h,ut=k&&"point"!==i.layout.get("symbol-placement"),lt=k&&!y&&!ut,at=y,d,tt,b,ft,et;for(g.setDepthMode(at?n.depthModeForSublayer(0,e.ReadOnly):e.disabled),d=0,tt=r;d<tt.length;d+=1){var w=tt[d],v=t.getTile(w),p=v.getBucket(i);if(p&&(b=u?p.text:p.icon,b&&b.segments.get().length)){var it=b.programConfigurations.get(i.id),rt=u||p.sdfIcons,vt=u?p.textSizeData:p.iconSizeData;(a||(a=n.useProgram(rt?"symbolSDF":"symbolIcon",it),it.setUniforms(n.context,a,i.paint,{zoom:n.transform.zoom}),tc(a,n,i,u,lt,y,vt)),g.activeTexture.set(l.TEXTURE0),l.uniform1i(a.uniforms.u_texture,0),u)?(v.glyphAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),l.uniform2fv(a.uniforms.u_texsize,v.glyphAtlasTexture.size)):(ft=1!==i.layout.get("icon-size").constantOr(0)||p.iconsNeedLinear,et=y||0!==ct.pitch,v.iconAtlasTexture.bind(rt||n.options.rotating||n.options.zooming||ft||et?l.LINEAR:l.NEAREST,l.CLAMP_TO_EDGE),l.uniform2fv(a.uniforms.u_texsize,v.iconAtlasTexture.size));l.uniformMatrix4fv(a.uniforms.u_matrix,!1,n.translatePosMatrix(w.posMatrix,v,f,o));var ot=nt(v,1,n.transform.zoom),st=tf(w.posMatrix,y,k,n.transform,ot),ht=sh(w.posMatrix,y,k,n.transform,ot);l.uniformMatrix4fv(a.uniforms.u_gl_coord_matrix,!1,n.translatePosMatrix(ht,v,f,o,!0));ut?(l.uniformMatrix4fv(a.uniforms.u_label_plane_matrix,!1,co),ch(p,w.posMatrix,n,u,st,ht,y,c)):l.uniformMatrix4fv(a.uniforms.u_label_plane_matrix,!1,st);l.uniform1f(a.uniforms.u_fade_change,n.options.fadeDuration?n.symbolFadeChange:1);ic(a,it,n,i,v,b,u,rt,y)}}}function tc(t,i,r,u,f,e,o){var s=i.context.gl,h=i.transform,l,a,c;s.uniform1i(t.uniforms.u_pitch_with_map,e?1:0);s.uniform1f(t.uniforms.u_is_text,u?1:0);s.uniform1f(t.uniforms.u_pitch,h.pitch/180*Math.PI);l="constant"===o.functionType||"source"===o.functionType;a="constant"===o.functionType||"camera"===o.functionType;s.uniform1i(t.uniforms.u_is_size_zoom_constant,l?1:0);s.uniform1i(t.uniforms.u_is_size_feature_constant,a?1:0);s.uniform1f(t.uniforms.u_camera_to_center_distance,h.cameraToCenterDistance);c=n.evaluateSizeForZoom(o,h.zoom,lo.properties[u?"text-size":"icon-size"]);void 0!==c.uSizeT&&s.uniform1f(t.uniforms.u_size_t,c.uSizeT);void 0!==c.uSize&&s.uniform1f(t.uniforms.u_size,c.uSize);s.uniform1f(t.uniforms.u_aspect_ratio,h.width/h.height);s.uniform1i(t.uniforms.u_rotate_symbol,f?1:0)}function ic(n,t,i,r,u,f,e,o,s){var h=i.context,c=h.gl,l=i.transform,a,v;o&&(a=0!==r.paint.get(e?"text-halo-width":"icon-halo-width").constantOr(1),v=s?Math.cos(l._pitch)*l.cameraToCenterDistance:1,c.uniform1f(n.uniforms.u_gamma_scale,v),a&&(c.uniform1f(n.uniforms.u_is_halo,1),vo(f,r,h,n)),c.uniform1f(n.uniforms.u_is_halo,0));vo(f,r,h,n)}function vo(n,t,i,r){r.draw(i,i.gl.TRIANGLES,t.id,n.layoutVertexBuffer,n.indexBuffer,n.segments,n.programConfigurations.get(t.id),n.dynamicLayoutVertexBuffer,n.opacityVertexBuffer)}function rc(t,i,r,u,f,e,o,s,h){var b,k,y,p,l=i.context,c=l.gl,a=f.paint.get("line-dasharray"),v=f.paint.get("line-pattern"),w,g,tt,rt,d;if(s||h){if(w=1/nt(r,1,i.transform.tileZoom),a)b=i.lineAtlas.getDash(a.from,"round"===f.layout.get("line-cap")),k=i.lineAtlas.getDash(a.to,"round"===f.layout.get("line-cap")),g=b.width*a.fromScale,tt=k.width*a.toScale,c.uniform2f(t.uniforms.u_patternscale_a,w/g,-b.height/2),c.uniform2f(t.uniforms.u_patternscale_b,w/tt,-k.height/2),c.uniform1f(t.uniforms.u_sdfgamma,i.lineAtlas.width/(256*Math.min(g,tt)*n.browser.devicePixelRatio)/2);else if(v){if(y=i.imageManager.getPattern(v.from),p=i.imageManager.getPattern(v.to),!y||!p)return;c.uniform2f(t.uniforms.u_pattern_size_a,y.displaySize[0]*v.fromScale/w,y.displaySize[1]);c.uniform2f(t.uniforms.u_pattern_size_b,p.displaySize[0]*v.toScale/w,p.displaySize[1]);var it=i.imageManager.getPixelSize(),ut=it.width,ft=it.height;c.uniform2fv(t.uniforms.u_texsize,[ut,ft])}c.uniform2f(t.uniforms.u_gl_units_to_pixels,1/i.transform.pixelsToGLUnits[0],1/i.transform.pixelsToGLUnits[1])}if(s&&(a?(c.uniform1i(t.uniforms.u_image,0),l.activeTexture.set(c.TEXTURE0),i.lineAtlas.bind(l),c.uniform1f(t.uniforms.u_tex_y_a,b.y),c.uniform1f(t.uniforms.u_tex_y_b,k.y),c.uniform1f(t.uniforms.u_mix,a.t)):v&&(c.uniform1i(t.uniforms.u_image,0),l.activeTexture.set(c.TEXTURE0),i.imageManager.bind(l),c.uniform2fv(t.uniforms.u_pattern_tl_a,y.tl),c.uniform2fv(t.uniforms.u_pattern_br_a,y.br),c.uniform2fv(t.uniforms.u_pattern_tl_b,p.tl),c.uniform2fv(t.uniforms.u_pattern_br_b,p.br),c.uniform1f(t.uniforms.u_fade,v.t))),l.setStencilMode(i.stencilModeForClipping(e)),rt=i.translatePosMatrix(e.posMatrix,r,f.paint.get("line-translate"),f.paint.get("line-translate-anchor")),c.uniformMatrix4fv(t.uniforms.u_matrix,!1,rt),c.uniform1f(t.uniforms.u_ratio,1/nt(r,1,i.transform.zoom)),f.paint.get("line-gradient")){if(l.activeTexture.set(c.TEXTURE0),d=f.gradientTexture,!f.gradient)return;d||(d=f.gradientTexture=new n.Texture(l,f.gradient,c.RGBA));d.bind(c.LINEAR,c.CLAMP_TO_EDGE);c.uniform1i(t.uniforms.u_image,0)}t.draw(l,c.TRIANGLES,f.id,u.layoutVertexBuffer,u.indexBuffer,u.segments,o)}function yo(n,t,i,r,u){if(!vf(i.paint.get("fill-pattern"),n))for(var o=!0,f=0,s=r;f<s.length;f+=1){var e=s[f],h=t.getTile(e),c=h.getBucket(i);c&&(n.context.setStencilMode(n.stencilModeForClipping(e)),u(n,t,i,h,e,c,o),o=!1)}}function uc(n,t,i,r,u,f,e){var s=n.context.gl,o=f.programConfigurations.get(i.id);po("fill",i.paint.get("fill-pattern"),n,o,i,r,u,e).draw(n.context,s.TRIANGLES,i.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,o)}function fc(n,t,i,r,u,f,e){var o=n.context.gl,s=f.programConfigurations.get(i.id),h=po("fillOutline",i.getPaintProperty("fill-outline-color")?null:i.paint.get("fill-pattern"),n,s,i,r,u,e);o.uniform2f(h.uniforms.u_world,o.drawingBufferWidth,o.drawingBufferHeight);h.draw(n.context,o.LINES,i.id,f.layoutVertexBuffer,f.indexBuffer2,f.segments2,s)}function po(n,t,i,r,u,f,e,o){var s,h=i.context.program.get();return t?(s=i.useProgram(n+"Pattern",r),(o||s.program!==h)&&(r.setUniforms(i.context,s,u.paint,{zoom:i.transform.zoom}),yf(t,i,s)),pf(f,i,s)):(s=i.useProgram(n,r),(o||s.program!==h)&&r.setUniforms(i.context,s,u.paint,{zoom:i.transform.zoom})),i.context.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,i.translatePosMatrix(e.posMatrix,f,u.paint.get("fill-translate"),u.paint.get("fill-translate-anchor"))),s}function ec(t,i,r,u,f,e,o){var c=t.context,a=c.gl,h=r.paint.get("fill-extrusion-pattern"),v=t.context.program.get(),l=e.programConfigurations.get(r.id),s=t.useProgram(h?"fillExtrusionPattern":"fillExtrusion",l);if((o||s.program!==v)&&l.setUniforms(c,s,r.paint,{zoom:t.transform.zoom}),h){if(vf(h,t))return;yf(h,t,s);pf(u,t,s);a.uniform1f(s.uniforms.u_height_factor,-Math.pow(2,f.overscaledZ)/u.tileSize/8)}t.context.gl.uniformMatrix4fv(s.uniforms.u_matrix,!1,t.translatePosMatrix(f.posMatrix,u,r.paint.get("fill-extrusion-translate"),r.paint.get("fill-extrusion-translate-anchor"))),function(t,i){var f=i.context.gl,r=i.style.light,e=r.properties.get("position"),o=[e.x,e.y,e.z],s=n.create$2(),u;"viewport"===r.properties.get("anchor")&&n.fromRotation(s,-i.transform.angle);n.transformMat3(o,o,s);u=r.properties.get("color");f.uniform3fv(t.uniforms.u_lightpos,o);f.uniform1f(t.uniforms.u_lightintensity,r.properties.get("intensity"));f.uniform3f(t.uniforms.u_lightcolor,u.r,u.g,u.b)}(s,t);s.draw(c,a.TRIANGLES,r.id,e.layoutVertexBuffer,e.indexBuffer,e.segments,l)}function oc(t,i,r){var h=t.context,u=h.gl,l=i.fbo,f,a,v,e,o,s,c;l&&(f=t.useProgram("hillshade"),a=t.transform.calculatePosMatrix(i.tileID.toUnwrapped(),!0),!function(n,t,i){var r=i.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===i.paint.get("hillshade-illumination-anchor")&&(r-=t.transform.angle);t.context.gl.uniform2f(n.uniforms.u_light,i.paint.get("hillshade-exaggeration"),r)}(f,t,r),v=function(t,i){var r=i.toCoordinate(),u=new n.Coordinate(r.column,r.row+1,r.zoom);return[t.transform.coordinateLocation(r).lat,t.transform.coordinateLocation(u).lat]}(t,i.tileID),h.activeTexture.set(u.TEXTURE0),u.bindTexture(u.TEXTURE_2D,l.colorAttachment.get()),u.uniformMatrix4fv(f.uniforms.u_matrix,!1,a),u.uniform2fv(f.uniforms.u_latrange,v),u.uniform1i(f.uniforms.u_image,0),e=r.paint.get("hillshade-shadow-color"),u.uniform4f(f.uniforms.u_shadow,e.r,e.g,e.b,e.a),o=r.paint.get("hillshade-highlight-color"),u.uniform4f(f.uniforms.u_highlight,o.r,o.g,o.b,o.a),s=r.paint.get("hillshade-accent-color"),(u.uniform4f(f.uniforms.u_accent,s.r,s.g,s.b,s.a),i.maskedBoundsBuffer&&i.maskedIndexBuffer&&i.segments)?f.draw(h,u.TRIANGLES,r.id,i.maskedBoundsBuffer,i.maskedIndexBuffer,i.segments):(c=t.rasterBoundsBuffer,t.rasterBoundsVAO.bind(h,f,c,[]),u.drawArrays(u.TRIANGLE_STRIP,0,c.length)))}function sc(t,i,r){var f=t.context,u=f.gl,e,c,l,h,a,s,o,v;i.dem&&i.dem.data&&(e=i.dem.dim,c=i.dem.getPixels(),(f.activeTexture.set(u.TEXTURE1),f.pixelStoreUnpackPremultiplyAlpha.set(!1),i.demTexture=i.demTexture||t.getTileTexture(i.tileSize),i.demTexture)?(l=i.demTexture,l.update(c,{premultiply:!1}),l.bind(u.NEAREST,u.CLAMP_TO_EDGE)):(i.demTexture=new n.Texture(f,c,u.RGBA,{premultiply:!1}),i.demTexture.bind(u.NEAREST,u.CLAMP_TO_EDGE)),f.activeTexture.set(u.TEXTURE0),h=i.fbo,h||(a=new n.Texture(f,{width:e,height:e,data:null},u.RGBA),a.bind(u.LINEAR,u.CLAMP_TO_EDGE),(h=i.fbo=f.createFramebuffer(e,e)).colorAttachment.set(a.texture)),f.bindFramebuffer.set(h.framebuffer),f.viewport.set([0,0,e,e]),s=n.create(),n.ortho(s,0,n.EXTENT,-n.EXTENT,0,0,1),n.translate(s,s,[0,-n.EXTENT,0]),o=t.useProgram("hillshadePrepare"),u.uniformMatrix4fv(o.uniforms.u_matrix,!1,s),u.uniform1f(o.uniforms.u_zoom,i.tileID.overscaledZ),u.uniform2fv(o.uniforms.u_dimension,[2*e,2*e]),u.uniform1i(o.uniforms.u_image,1),u.uniform1f(o.uniforms.u_maxzoom,r),v=t.rasterBoundsBuffer,t.rasterBoundsVAO.bind(f,o,v,[]),u.drawArrays(u.TRIANGLE_STRIP,0,v.length),i.needsHillshadePrepare=!1)}function hc(t,i,r,u,f){var e=u.paint.get("raster-fade-duration");if(e>0){var o=n.browser.now(),s=(o-t.timeAdded)/e,v=i?(o-i.timeAdded)/e:-1,h=r.getSource(),c=f.coveringZoomLevel({tileSize:h.tileSize,roundZoom:h.roundZoom}),l=!i||Math.abs(i.tileID.overscaledZ-c)>Math.abs(t.tileID.overscaledZ-c),a=l&&t.refreshedUponExpiration?1:n.clamp(l?s:1-v,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),i?{opacity:1,mix:1-a}:{opacity:a,mix:0}}return{opacity:1,mix:0}}function cc(t,i,r){var o=t.context,u=o.gl,l=r.posMatrix,f=t.useProgram("debug"),h,y;o.setDepthMode(e.disabled);o.setStencilMode(c.disabled);o.setColorMode(t.colorModeForRenderPass());u.uniformMatrix4fv(f.uniforms.u_matrix,!1,l);u.uniform4f(f.uniforms.u_color,1,0,0,1);t.debugVAO.bind(o,f,t.debugBuffer,[]);u.drawArrays(u.LINE_STRIP,0,t.debugBuffer.length);for(var a=function(n,t,i,r){r=r||1;for(var u,l,f,s,h,e,a=[],o=0,c=n.length;o<c;o++)if(f=lc[n[o]]){for(e=null,u=0,l=f[1].length;u<l;u+=2)-1===f[1][u]&&-1===f[1][u+1]?e=null:(s=t+f[1][u]*r,h=i-f[1][u+1]*r,e&&a.push(e.x,e.y,s,h),e={x:s,y:h});t+=f[0]*r}return a}(r.toString(),50,200,5),w=new n.StructArrayLayout2i4,s=0;s<a.length;s+=2)w.emplaceBack(a[s],a[s+1]);h=o.createVertexBuffer(w,lu.members);(new p).bind(o,f,h,[]);u.uniform4f(f.uniforms.u_color,1,1,1,1);for(var d=i.getTile(r).tileSize,b=n.EXTENT/(Math.pow(2,t.transform.zoom-r.overscaledZ)*d),k=[[-1,-1],[-1,1],[1,-1],[1,1]],v=0;v<k.length;v++)y=k[v],u.uniformMatrix4fv(f.uniforms.u_matrix,!1,n.translate([],l,[b*y[0],b*y[1],0])),u.drawArrays(u.LINES,0,h.length);u.uniform4f(f.uniforms.u_color,0,0,0,1);u.uniformMatrix4fv(f.uniforms.u_matrix,!1,l);u.drawArrays(u.LINES,0,h.length)}function wf(n,t){if(n.row>t.row){var i=n;n=t;t=i}return{x0:n.column,y0:n.row,x1:t.column,y1:t.row,dx:t.column-n.column,dy:t.row-n.row}}function bo(n,t,i,r,u){var h=Math.max(i,Math.floor(t.y0)),c=Math.min(r,Math.ceil(t.y1)),e,o,s;(n.x0===t.x0&&n.y0===t.y0?n.x0+t.dy/n.dy*n.dx<t.x1:n.x1-t.dy/n.dy*n.dx<t.x0)&&(e=n,n=t,t=e);for(var l=n.dx/n.dy,a=t.dx/t.dy,v=n.dx>0,y=t.dx<0,f=h;f<c;f++)o=l*Math.max(0,Math.min(n.dy,f+v-n.y0))+n.x0,s=a*Math.max(0,Math.min(t.dy,f+y-t.y0))+t.x0,u(Math.floor(s),Math.ceil(o),f)}function ko(n,t,i,r,u,f){var h,e=wf(n,t),o=wf(t,i),s=wf(i,n);e.dy>o.dy&&(h=e,e=o,o=h);e.dy>s.dy&&(h=e,e=s,s=h);o.dy>s.dy&&(h=o,o=s,s=h);e.dy&&bo(s,e,r,u,f);o.dy&&bo(s,o,r,u,f)}function vc(n){return n*(2-n)}function bf(n){n.parentNode&&n.parentNode.removeChild(n)}function us(n,t,r){var u;if(n=new i(n.lng,n.lat),t){var f=new i(n.lng-360,n.lat),e=new i(n.lng+360,n.lat),o=r.locationPoint(n).distSqr(t);r.locationPoint(f).distSqr(t)<o?n=f:r.locationPoint(e).distSqr(t)<o&&(n=e)}for(;Math.abs(n.lng-r.center.lng)>180;){if(u=r.locationPoint(n),u.x>=0&&u.y>=0&&u.x<=r.width&&u.y<=r.height)break;n.lng>r.center.lng?n.lng-=360:n.lng+=360}return n}function fs(n,t,i){var r=n.classList;for(var u in yu)r.remove("mapboxgl-"+i+"-anchor-"+u);r.add("mapboxgl-"+i+"-anchor-"+t)}function os(n,t,i){var e,o,u,s,h,l,r=i&&i.maxWidth||100,a=n._container.clientHeight/2,c=(e=n.unproject([0,a]),o=n.unproject([r,a]),u=Math.PI/180,s=e.lat*u,h=o.lat*u,l=Math.sin(s)*Math.sin(h)+Math.cos(s)*Math.cos(h)*Math.cos((o.lng-e.lng)*u),6371e3*Math.acos(Math.min(l,1))),f;i&&"imperial"===i.unit?(f=3.2808*c,f>5280?pu(t,r,f/5280,"mi"):pu(t,r,f,"ft")):i&&"nautical"===i.unit?pu(t,r,c/1852,"nm"):pu(t,r,c,"m")}function pu(n,t,i,r){var e,o,u,f=(e=i,(o=Math.pow(10,(""+Math.floor(e)).length-1))*(u=(u=e/o)>=10?10:u>=5?5:u>=3?3:u>=2?2:1)),s=f/i;"m"===r&&f>=1e3&&(f/=1e3,r="km");n.style.width=t*s+"px";n.innerHTML=f+r}var wu=n.createCommonjsModule(function(n){function t(n){return!!("undefined"!=typeof window&&"undefined"!=typeof document&&Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray&&Function.prototype&&Function.prototype.bind&&Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions&&"JSON"in window&&"parse"in JSON&&"stringify"in JSON&&function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var n,t,r=new Blob([""],{type:"text/javascript"}),i=URL.createObjectURL(r);try{t=new Worker(i);n=!0}catch(t){n=!1}return t&&t.terminate(),URL.revokeObjectURL(i),n}()&&"Uint8ClampedArray"in window&&ArrayBuffer.isView&&function(n){return void 0===i[n]&&(i[n]=function(n){var i=document.createElement("canvas"),r=Object.create(t.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=n,i.probablySupportsContext?i.probablySupportsContext("webgl",r)||i.probablySupportsContext("experimental-webgl",r):i.supportsContext?i.supportsContext("webgl",r)||i.supportsContext("experimental-webgl",r):i.getContext("webgl",r)||i.getContext("experimental-webgl",r)}(n)),i[n]}(n&&n.failIfMajorPerformanceCaveat))}n.exports?n.exports=t:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=t);var i={};t.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}}),t={create:function(t,i,r){var u=n.window.document.createElement(t);return i&&(u.className=i),r&&r.appendChild(u),u},createNS:function(t,i){return n.window.document.createElementNS(t,i)}},at=n.window.document?n.window.document.documentElement.style:null,df,si=kf(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),gf,hi,ci,wi,v,bu,ai,re,dt,et,ki,gt,i,f,yt,it,ni,ce,pt,nr,tr,ir,rr,ur,fr,er,or,sr,hr,cr,lr,ar,vr,yr,pr,wr,br,kr,dr,gr,nu,tu,iu,ru,uu,fu,e,c,l,rt,ti,nf,ht,r,s,de,ro,w,hu,wt,ff,ef,tt,sf,vi,fo,cu,hf,ii,yi,oo,au,af,co,lo,u,o,bt,g,go,a,ns,h,ri,ft,ts,b,lt,ui,rs,fi,yu,st;t.disableDrag=function(){at&&si&&(df=at[si],at[si]="none")};t.enableDrag=function(){at&&si&&(at[si]=df)};gf=kf(["transform","WebkitTransform"]);t.setTransform=function(n,t){n.style[gf]=t};hi=!1;try{ci=Object.defineProperty({},"passive",{get:function(){hi=!0}});n.window.addEventListener("test",ci,ci);n.window.removeEventListener("test",ci,ci)}catch(n){hi=!1}t.addEventListener=function(n,t,i,r){void 0===r&&(r={});"passive"in r&&hi?n.addEventListener(t,i,r):n.addEventListener(t,i,r.capture)};t.removeEventListener=function(n,t,i,r){void 0===r&&(r={});"passive"in r&&hi?n.removeEventListener(t,i,r):n.removeEventListener(t,i,r.capture)};wi=function(t){t.preventDefault();t.stopPropagation();n.window.removeEventListener("click",wi,!0)};t.suppressClick=function(){n.window.addEventListener("click",wi,!0);n.window.setTimeout(function(){n.window.removeEventListener("click",wi,!0)},0)};t.mousePos=function(t,i){var r=t.getBoundingClientRect();return i=i.touches?i.touches[0]:i,new n.Point(i.clientX-r.left-t.clientLeft,i.clientY-r.top-t.clientTop)};t.touchPos=function(t,i){for(var f=t.getBoundingClientRect(),e=[],u="touchend"===i.type?i.changedTouches:i.touches,r=0;r<u.length;r++)e.push(new n.Point(u[r].clientX-f.left-t.clientLeft,u[r].clientY-f.top-t.clientTop));return e};t.mouseButton=function(t){return void 0!==n.window.InstallTrigger&&2===t.button&&t.ctrlKey&&n.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:t.button};t.remove=function(n){n.parentNode&&n.parentNode.removeChild(n)};v={API_URL:"https://api.mapbox.com",EVENTS_URL:"https://events.mapbox.com/events/v2",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null};bu="See https://www.mapbox.com/api-documentation/#access-tokens";var hs=function(n,t){if(!kt(n))return n;var i=vt(n);return i.path="/fonts/v1"+i.path,bi(i,t)},cs=function(n,t){if(!kt(n))return n;var i=vt(n);return i.path="/v4/"+i.authority+".json",i.params.push("secure"),bi(i,t)},ne=function(n,t,i,r){var u=vt(n);return kt(n)?(u.path="/styles/v1"+u.path+"/sprite"+t+i,bi(u,r)):(u.path+=""+t+i,li(u))},ls=/(\.(png|jpg)\d*)(?=$)/,ku=function(t,i,r){if(!i||!kt(i))return t;var u=vt(t),f=n.browser.devicePixelRatio>=2||512===r?"@2x":"",e=n.browser.supportsWebp?".webp":"$1";return u.path=u.path.replace(ls,""+f+e),function(n){for(var t=0;t<n.length;t++)0===n[t].indexOf("access_token=tk.")&&(n[t]="access_token="+(v.ACCESS_TOKEN||""))}(u.params),li(u)},as=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;ai=function(){this.eventData={anonId:null,lastSuccess:null,accessToken:v.ACCESS_TOKEN};this.queue=[];this.pending=!1;this.pendingRequest=null};ai.prototype.postTurnstileEvent=function(t){v.ACCESS_TOKEN&&Array.isArray(t)&&t.some(function(n){return/(mapbox\.c)(n|om)/i.test(n)})&&this.queueRequest(n.browser.now())};ai.prototype.queueRequest=function(n){this.queue.push(n);this.processRequests()};ai.prototype.processRequests=function(){var t=this,u,r,f,h,c;if(!this.pendingRequest&&0!==this.queue.length){var e="mapbox.turnstileEventData:"+(v.ACCESS_TOKEN||""),o=n.storageAvailable("localStorage"),i=!!this.eventData.accessToken&&this.eventData.accessToken!==v.ACCESS_TOKEN;if(i&&(this.eventData.anonId=this.eventData.lastSuccess=null),(!this.eventData.anonId||!this.eventData.lastSuccess)&&o)try{u=n.window.localStorage.getItem(e);u&&(this.eventData=JSON.parse(u))}catch(t){n.warnOnce("Unable to read from LocalStorage")}if(n.validateUuid(this.eventData.anonId)||(this.eventData.anonId=n.uuid(),i=!0),r=this.queue.shift(),this.eventData.lastSuccess){var l=new Date(this.eventData.lastSuccess),a=new Date(r),s=(r-this.eventData.lastSuccess)/864e5;i=i||s>=1||s<-1||l.getDate()!==a.getDate()}if(!i)return this.processRequests();f=vt(v.EVENTS_URL);f.params.push("access_token="+(v.ACCESS_TOKEN||""));h={url:li(f),headers:{"Content-Type":"text/plain"}};c=JSON.stringify([{event:"appUserTurnstile",created:new Date(r).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:"0.48.0","enabled.telemetry":!1,userId:this.eventData.anonId}]);this.pendingRequest=n.postData(h,c,function(i){if(t.pendingRequest=null,!i){if(t.eventData.lastSuccess=r,t.eventData.accessToken=v.ACCESS_TOKEN,o)try{n.window.localStorage.setItem(e,JSON.stringify(t.eventData))}catch(t){n.warnOnce("Unable to write to LocalStorage")}t.processRequests()}})}};var te=new ai,ie=te.postTurnstileEvent.bind(te),k=function(){this.images={};this.loaded=!1;this.requestors=[];this.shelfPack=new n.ShelfPack(64,64,{autoResize:!0});this.patterns={};this.atlasImage=new n.RGBAImage({width:64,height:64});this.dirty=!0};k.prototype.isLoaded=function(){return this.loaded};k.prototype.setLoaded=function(n){var t,i;if(this.loaded!==n&&(this.loaded=n,n)){for(t=0,i=this.requestors;t<i.length;t+=1){var r=i[t],u=r.ids,f=r.callback;this._notify(u,f)}this.requestors=[]}};k.prototype.getImage=function(n){return this.images[n]};k.prototype.addImage=function(n,t){this.images[n]=t};k.prototype.removeImage=function(n){delete this.images[n];var t=this.patterns[n];t&&(this.shelfPack.unref(t.bin),delete this.patterns[n])};k.prototype.listImages=function(){return Object.keys(this.images)};k.prototype.getImages=function(n,t){var u=!0,i,r,f;if(!this.isLoaded())for(i=0,r=n;i<r.length;i+=1)f=r[i],this.images[f]||(u=!1);this.isLoaded()||u?this._notify(n,t):this.requestors.push({ids:n,callback:t})};k.prototype._notify=function(n,t){for(var u,i,f={},r=0,e=n;r<e.length;r+=1)u=e[r],i=this.images[u],i&&(f[u]={data:i.data.clone(),pixelRatio:i.pixelRatio,sdf:i.sdf});t(null,f)};k.prototype.getPixelSize=function(){return{width:this.shelfPack.w,height:this.shelfPack.h}};k.prototype.getPattern=function(t){var l=this.patterns[t],r,c;if(l)return l.position;if(r=this.getImage(t),!r)return null;var a=r.data.width+2,v=r.data.height+2,u=this.shelfPack.packOne(a,v);if(!u)return null;this.atlasImage.resize(this.getPixelSize());var i=r.data,f=this.atlasImage,e=u.x+1,o=u.y+1,s=i.width,h=i.height;return n.RGBAImage.copy(i,f,{x:0,y:0},{x:e,y:o},{width:s,height:h}),n.RGBAImage.copy(i,f,{x:0,y:h-1},{x:e,y:o-1},{width:s,height:1}),n.RGBAImage.copy(i,f,{x:0,y:0},{x:e,y:o+h},{width:s,height:1}),n.RGBAImage.copy(i,f,{x:s-1,y:0},{x:e-1,y:o},{width:1,height:h}),n.RGBAImage.copy(i,f,{x:0,y:0},{x:e+s,y:o},{width:1,height:h}),this.dirty=!0,c=new n.ImagePosition(u,r),this.patterns[t]={bin:u,position:c},c};k.prototype.bind=function(t){var i=t.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new n.Texture(t,this.atlasImage,i.RGBA);this.atlasTexture.bind(i.LINEAR,i.CLAMP_TO_EDGE)};re=ue;dt=1e20;ue.prototype.draw=function(n){var i,u;this.ctx.clearRect(0,0,this.size,this.size);this.ctx.fillText(n,this.buffer,this.middle);for(var f=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),t=0;t<this.size*this.size;t++)i=f.data[4*t+3]/255,this.gridOuter[t]=1===i?0:0===i?dt:Math.pow(Math.max(0,.5-i),2),this.gridInner[t]=1===i?dt:0===i?0:Math.pow(Math.max(0,i-.5),2);for(fe(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),fe(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),t=0;t<this.size*this.size;t++)u=this.gridOuter[t]-this.gridInner[t],r[t]=Math.max(0,Math.min(255,Math.round(255-255*(u/this.radius+this.cutoff))));return r};et=function(n,t){this.requestTransform=n;this.localIdeographFontFamily=t;this.entries={}};et.prototype.setURL=function(n){this.url=n};et.prototype.getGlyphs=function(t,i){var r=this,o=[],f,u,e,s;for(f in t)for(u=0,e=t[f];u<e.length;u+=1)s=e[u],o.push({stack:f,id:s});n.asyncAll(o,function(n,t){var u=n.stack,f=n.id,i=r.entries[u],o,e,s;i||(i=r.entries[u]={glyphs:{},requests:{}});o=i.glyphs[f];void 0===o?(o=r._tinySDF(i,u,f))?t(null,{stack:u,id:f,glyph:o}):(e=Math.floor(f/256),256*e>65535?t(new Error("glyphs > 65535 not supported")):(s=i.requests[e],s||(s=i.requests[e]=[],et.loadGlyphRange(u,e,r.url,r.requestTransform,function(n,t){var u,r,f;if(t)for(u in t)i.glyphs[+u]=t[+u];for(r=0,f=s;r<f.length;r+=1)f[r](n,t);delete i.requests[e]})),s.push(function(n,i){n?t(n):i&&t(null,{stack:u,id:f,glyph:i[f]||null})}))):t(null,{stack:u,id:f,glyph:o})},function(n,t){if(n)i(n);else if(t){for(var u={},f=0,o=t;f<o.length;f+=1){var e=o[f],s=e.stack,h=e.id,r=e.glyph;(u[s]||(u[s]={}))[h]=r&&{id:r.id,bitmap:r.bitmap.clone(),metrics:r.metrics}}i(null,u)}})};et.prototype._tinySDF=function(t,i,r){var e=this.localIdeographFontFamily,f,u;if(e&&(n.isChar["CJK Unified Ideographs"](r)||n.isChar["Hangul Syllables"](r)))return f=t.tinySDF,f||(u="400",/bold/i.test(i)?u="900":/medium/i.test(i)?u="500":/light/i.test(i)&&(u="200"),f=t.tinySDF=new et.TinySDF(24,3,8,.25,e,u)),{id:r,bitmap:new n.AlphaImage({width:30,height:30},f.draw(String.fromCharCode(r))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}};et.loadGlyphRange=function(t,i,r,u,f){var e=256*i,o=e+255,s=u(hs(r).replace("{fontstack}",t).replace("{range}",e+"-"+o),n.ResourceType.Glyphs);n.getArrayBuffer(s,function(t,i){var u;if(t)f(t);else if(i){for(var e={},r=0,o=n.parseGlyphPBF(i.data);r<o.length;r+=1)u=o[r],e[u.id]=u;f(null,e)}})};et.TinySDF=re;ki=function(){this.specification=n.styleSpec.light.position};ki.prototype.possiblyEvaluate=function(t,i){return n.sphericalToCartesian(t.expression.evaluate(i))};ki.prototype.interpolate=function(t,i,r){return{x:n.number(t.x,i.x,r),y:n.number(t.y,i.y,r),z:n.number(t.z,i.z,r)}};var vs=new n.Properties({anchor:new n.DataConstantProperty(n.styleSpec.light.anchor),position:new ki,color:new n.DataConstantProperty(n.styleSpec.light.color),intensity:new n.DataConstantProperty(n.styleSpec.light.intensity)}),ys=function(t){function i(i){t.call(this);this._transitionable=new n.Transitionable(vs);this.setLight(i);this._transitioning=this._transitionable.untransitioned()}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.getLight=function(){return this._transitionable.serialize()},i.prototype.setLight=function(t){var i,r;if(!this._validate(n.validateLight,t))for(i in t)r=t[i],n.endsWith(i,"-transition")?this._transitionable.setTransition(i.slice(0,-11),r):this._transitionable.setValue(i,r)},i.prototype.updateTransitions=function(n){this._transitioning=this._transitionable.transitioned(n,this._transitioning)},i.prototype.hasTransition=function(){return this._transitioning.hasTransition()},i.prototype.recalculate=function(n){this.properties=this._transitioning.possiblyEvaluate(n)},i.prototype._validate=function(t,i){return n.emitValidationErrors(this,t.call(n.validateStyle,n.extend({value:i,style:{glyphs:!0,sprite:!0},styleSpec:n.styleSpec})))},i}(n.Evented),di=function(n,t){this.width=n;this.height=t;this.nextRow=0;this.bytes=4;this.data=new Uint8Array(this.width*this.height*this.bytes);this.positions={}};di.prototype.getDash=function(n,t){var i=n.join(",")+String(t);return this.positions[i]||(this.positions[i]=this.addDash(n,t)),this.positions[i]};di.prototype.addDash=function(t,i){var r=i?7:0,w=2*r+1,o,s,v,p,g;if(this.nextRow+w>this.height)return n.warnOnce("LineAtlas out of space"),null;for(o=0,s=0;s<t.length;s++)o+=t[s];for(var h=this.width/o,y=h/2,b=t.length%2==1,c=-r;c<=r;c++)for(var nt=this.nextRow+r+c,tt=this.width*nt,k=b?-t[t.length-1]:0,f=t[0],l=1,u=0;u<this.width;u++){for(;f<u/h;)k=f,f+=t[l],b&&l===t.length-1&&(f+=t[0]),l++;var it=Math.abs(u-k*h),rt=Math.abs(u-f*h),e=Math.min(it,rt),d=l%2==1,a=void 0;i?(v=r?c/r*(y+1):0,d?(p=y-Math.abs(v),a=Math.sqrt(e*e+p*p)):a=y-Math.sqrt(e*e+v*v)):a=(d?1:-1)*e;this.data[3+4*(tt+u)]=Math.max(0,Math.min(255,a+128))}return g={y:(this.nextRow+r+.5)/this.height,height:2*r/this.height,width:o},this.nextRow+=w,this.dirty=!0,g};di.prototype.bind=function(n){var t=n.gl;this.texture?(t.bindTexture(t.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,t.texSubImage2D(t.TEXTURE_2D,0,0,0,this.width,this.height,t.RGBA,t.UNSIGNED_BYTE,this.data))):(this.texture=t.createTexture(),t.bindTexture(t.TEXTURE_2D,this.texture),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.REPEAT),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,this.data))};gt=function wu(t,i){var u,r,e,f;for(this.workerPool=t,this.actors=[],this.currentActor=0,this.id=n.uniqueId(),u=this.workerPool.acquire(this.id),r=0;r<u.length;r++)e=u[r],f=new wu.Actor(e,i,this.id),f.name="Worker "+r,this.actors.push(f)};gt.prototype.broadcast=function(t,i,r){r=r||function(){};n.asyncAll(this.actors,function(n,r){n.send(t,i,r)},r)};gt.prototype.send=function(n,t,i,r){return("number"!=typeof r||isNaN(r))&&(r=this.currentActor=(this.currentActor+1)%this.actors.length),this.actors[r].send(n,t,i),r};gt.prototype.remove=function(){this.actors.forEach(function(n){n.remove()});this.actors=[];this.workerPool.release(this.id)};gt.Actor=n.Actor;i=function(n,t){if(isNaN(n)||isNaN(t))throw new Error("Invalid LngLat object: ("+n+", "+t+")");if(this.lng=+n,this.lat=+t,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90");};i.prototype.wrap=function(){return new i(n.wrap(this.lng,-180,180),this.lat)};i.prototype.toArray=function(){return[this.lng,this.lat]};i.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"};i.prototype.toBounds=function(n){var t=360*n/40075017,r=t/Math.cos(Math.PI/180*this.lat);return new f(new i(this.lng-r,this.lat-t),new i(this.lng+r,this.lat+t))};i.convert=function(n){if(n instanceof i)return n;if(Array.isArray(n)&&(2===n.length||3===n.length))return new i(Number(n[0]),Number(n[1]));if(!Array.isArray(n)&&"object"==typeof n&&null!==n)return new i(Number(n.lng),Number(n.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]");};f=function(n,t){n&&(t?this.setSouthWest(n).setNorthEast(t):4===n.length?this.setSouthWest([n[0],n[1]]).setNorthEast([n[2],n[3]]):this.setSouthWest(n[0]).setNorthEast(n[1]))};f.prototype.setNorthEast=function(n){return this._ne=n instanceof i?new i(n.lng,n.lat):i.convert(n),this};f.prototype.setSouthWest=function(n){return this._sw=n instanceof i?new i(n.lng,n.lat):i.convert(n),this};f.prototype.extend=function(n){var t,r,u=this._sw,e=this._ne;if(n instanceof i)t=n,r=n;else{if(!(n instanceof f))return Array.isArray(n)?n.every(Array.isArray)?this.extend(f.convert(n)):this.extend(i.convert(n)):this;if(t=n._sw,r=n._ne,!t||!r)return this}return u||e?(u.lng=Math.min(t.lng,u.lng),u.lat=Math.min(t.lat,u.lat),e.lng=Math.max(r.lng,e.lng),e.lat=Math.max(r.lat,e.lat)):(this._sw=new i(t.lng,t.lat),this._ne=new i(r.lng,r.lat)),this};f.prototype.getCenter=function(){return new i((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)};f.prototype.getSouthWest=function(){return this._sw};f.prototype.getNorthEast=function(){return this._ne};f.prototype.getNorthWest=function(){return new i(this.getWest(),this.getNorth())};f.prototype.getSouthEast=function(){return new i(this.getEast(),this.getSouth())};f.prototype.getWest=function(){return this._sw.lng};f.prototype.getSouth=function(){return this._sw.lat};f.prototype.getEast=function(){return this._ne.lng};f.prototype.getNorth=function(){return this._ne.lat};f.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]};f.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"};f.prototype.isEmpty=function(){return!(this._sw&&this._ne)};f.convert=function(n){return!n||n instanceof f?n:new f(n)};yt=function(n,t,i){this.bounds=f.convert(this.validateBounds(n));this.minzoom=t||0;this.maxzoom=i||24};yt.prototype.validateBounds=function(n){return Array.isArray(n)&&4===n.length?[Math.max(-180,n[0]),Math.max(-90,n[1]),Math.min(180,n[2]),Math.min(90,n[3])]:[-180,-90,180,90]};yt.prototype.contains=function(n){var t=Math.floor(this.lngX(this.bounds.getWest(),n.z)),i=Math.floor(this.latY(this.bounds.getNorth(),n.z)),r=Math.ceil(this.lngX(this.bounds.getEast(),n.z)),u=Math.ceil(this.latY(this.bounds.getSouth(),n.z));return n.x>=t&&n.x<r&&n.y>=i&&n.y<u};yt.prototype.lngX=function(n,t){return(n+180)*(Math.pow(2,t)/360)};yt.prototype.latY=function(t,i){var r=n.clamp(Math.sin(Math.PI/180*t),-.9999,.9999),u=Math.pow(2,i)/(2*Math.PI);return Math.pow(2,i-1)+.5*Math.log((1+r)/(1-r))*-u};var ps=function(t){function i(i,r,u,f){if(t.call(this),this.id=i,this.dispatcher=u,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,n.extend(this,n.pick(r,["url","scheme","tileSize"])),this._options=n.extend({type:"vector"},r),this._collectResourceTiming=r.collectResourceTiming,512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(f)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){var t=this;this.fire(new n.Event("dataloading",{dataType:"source"}));this._tileJSONRequest=oe(this._options,this.map._transformRequest,function(i,r){t._tileJSONRequest=null;i?t.fire(new n.ErrorEvent(i)):r&&(n.extend(t,r),r.bounds&&(t.tileBounds=new yt(r.bounds,t.minzoom,t.maxzoom)),ie(r.tiles),t.fire(new n.Event("data",{dataType:"source",sourceDataType:"metadata"})),t.fire(new n.Event("data",{dataType:"source",sourceDataType:"content"})))})},i.prototype.hasTile=function(n){return!this.tileBounds||this.tileBounds.contains(n.canonical)},i.prototype.onAdd=function(n){this.map=n;this.load()},i.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},i.prototype.serialize=function(){return n.extend({},this._options)},i.prototype.loadTile=function(t,i){function u(n,r){return t.aborted?i(null):n&&404!==n.status?i(n):(r&&r.resourceTiming&&(t.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&r&&t.setExpiryData(r),t.loadVectorData(r,this.map.painter),i(null),void(t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)))}var f=ku(t.tileID.canonical.url(this.tiles,this.scheme),this.url),r={request:this.map._transformRequest(f,n.ResourceType.Tile),uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:n.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes};r.request.collectResourceTiming=this._collectResourceTiming;void 0===t.workerID||"expired"===t.state?t.workerID=this.dispatcher.send("loadTile",r,u.bind(this)):"loading"===t.state?t.reloadCallback=i:this.dispatcher.send("reloadTile",r,u.bind(this),t.workerID)},i.prototype.abortTile=function(n){this.dispatcher.send("abortTile",{uid:n.uid,type:this.type,source:this.id},void 0,n.workerID)},i.prototype.unloadTile=function(n){n.unloadVectorData();this.dispatcher.send("removeTile",{uid:n.uid,type:this.type,source:this.id},void 0,n.workerID)},i.prototype.hasTransition=function(){return!1},i}(n.Evented),se=function(t){function i(i,r,u,f){t.call(this);this.id=i;this.dispatcher=u;this.setEventedParent(f);this.type="raster";this.minzoom=0;this.maxzoom=22;this.roundZoom=!0;this.scheme="xyz";this.tileSize=512;this._loaded=!1;this._options=n.extend({},r);n.extend(this,n.pick(r,["url","scheme","tileSize"]))}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){var t=this;this.fire(new n.Event("dataloading",{dataType:"source"}));this._tileJSONRequest=oe(this._options,this.map._transformRequest,function(i,r){t._tileJSONRequest=null;i?t.fire(new n.ErrorEvent(i)):r&&(n.extend(t,r),r.bounds&&(t.tileBounds=new yt(r.bounds,t.minzoom,t.maxzoom)),ie(r.tiles),t.fire(new n.Event("data",{dataType:"source",sourceDataType:"metadata"})),t.fire(new n.Event("data",{dataType:"source",sourceDataType:"content"})))})},i.prototype.onAdd=function(n){this.map=n;this.load()},i.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},i.prototype.serialize=function(){return n.extend({},this._options)},i.prototype.hasTile=function(n){return!this.tileBounds||this.tileBounds.contains(n.canonical)},i.prototype.loadTile=function(t,i){var r=this,u=ku(t.tileID.canonical.url(this.tiles,this.scheme),this.url,this.tileSize);t.request=n.getImage(this.map._transformRequest(u,n.ResourceType.Tile),function(u,f){if(delete t.request,t.aborted)t.state="unloaded",i(null);else if(u)t.state="errored",i(u);else if(f){r.map._refreshExpiredTiles&&t.setExpiryData(f);delete f.cacheControl;delete f.expires;var o=r.map.painter.context,e=o.gl;t.texture=r.map.painter.getTileTexture(f.width);t.texture?t.texture.update(f,{useMipmap:!0}):(t.texture=new n.Texture(o,f,e.RGBA,{useMipmap:!0}),t.texture.bind(e.LINEAR,e.CLAMP_TO_EDGE,e.LINEAR_MIPMAP_NEAREST),o.extTextureFilterAnisotropic&&e.texParameterf(e.TEXTURE_2D,o.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,o.extTextureFilterAnisotropicMax));t.state="loaded";i(null)}})},i.prototype.abortTile=function(n,t){n.request&&(n.request.cancel(),delete n.request);t()},i.prototype.unloadTile=function(n,t){n.texture&&this.map.painter.saveTileTexture(n.texture);t()},i.prototype.hasTransition=function(){return!1},i}(n.Evented),ws=function(t){function i(i,r,u,f){t.call(this,i,r,u,f);this.type="raster-dem";this.maxzoom=22;this._options=n.extend({},r);this.encoding=r.encoding||"mapbox"}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},i.prototype.loadTile=function(t,i){var r=ku(t.tileID.canonical.url(this.tiles,this.scheme),this.url,this.tileSize);t.request=n.getImage(this.map._transformRequest(r,n.ResourceType.Tile),function(r,u){if(delete t.request,t.aborted)t.state="unloaded",i(null);else if(r)t.state="errored",i(r);else if(u){this.map._refreshExpiredTiles&&t.setExpiryData(u);delete u.cacheControl;delete u.expires;var f=n.browser.getImageData(u),e={uid:t.uid,coord:t.tileID,source:this.id,rawImageData:f,encoding:this.encoding};t.workerID&&"expired"!==t.state||(t.workerID=this.dispatcher.send("loadDEMTile",e,function(n,r){n&&(t.state="errored",i(n));r&&(t.dem=r,t.needsHillshadePrepare=!0,t.state="loaded",i(null))}.bind(this)))}}.bind(this));t.neighboringTiles=this._getNeighboringTiles(t.tileID)},i.prototype._getNeighboringTiles=function(t){var i=t.canonical,u=Math.pow(2,i.z),f=(i.x-1+u)%u,e=0===i.x?t.wrap-1:t.wrap,o=(i.x+1+u)%u,s=i.x+1===u?t.wrap+1:t.wrap,r={};return r[new n.OverscaledTileID(t.overscaledZ,e,i.z,f,i.y).key]={backfilled:!1},r[new n.OverscaledTileID(t.overscaledZ,s,i.z,o,i.y).key]={backfilled:!1},i.y>0&&(r[new n.OverscaledTileID(t.overscaledZ,e,i.z,f,i.y-1).key]={backfilled:!1},r[new n.OverscaledTileID(t.overscaledZ,t.wrap,i.z,i.x,i.y-1).key]={backfilled:!1},r[new n.OverscaledTileID(t.overscaledZ,s,i.z,o,i.y-1).key]={backfilled:!1}),i.y+1<u&&(r[new n.OverscaledTileID(t.overscaledZ,e,i.z,f,i.y+1).key]={backfilled:!1},r[new n.OverscaledTileID(t.overscaledZ,t.wrap,i.z,i.x,i.y+1).key]={backfilled:!1},r[new n.OverscaledTileID(t.overscaledZ,s,i.z,o,i.y+1).key]={backfilled:!1}),r},i.prototype.unloadTile=function(n){n.demTexture&&this.map.painter.saveTileTexture(n.demTexture);n.fbo&&(n.fbo.destroy(),delete n.fbo);n.dem&&delete n.dem;delete n.neighboringTiles;n.state="unloaded";this.dispatcher.send("removeDEMTile",{uid:n.uid,source:this.id},void 0,n.workerID)},i}(se),bs=function(t){function i(i,r,u,f){t.call(this);this.id=i;this.type="geojson";this.minzoom=0;this.maxzoom=18;this.tileSize=512;this.isTileClipped=!0;this.reparseOverscaled=!0;this._removed=!1;this.dispatcher=u;this.setEventedParent(f);this._data=r.data;this._options=n.extend({},r);this._collectResourceTiming=r.collectResourceTiming;this._resourceTiming=[];void 0!==r.maxzoom&&(this.maxzoom=r.maxzoom);r.type&&(this.type=r.type);r.attribution&&(this.attribution=r.attribution);var e=n.EXTENT/this.tileSize;this.workerOptions=n.extend({source:this.id,cluster:r.cluster||!1,geojsonVtOptions:{buffer:(void 0!==r.buffer?r.buffer:128)*e,tolerance:(void 0!==r.tolerance?r.tolerance:.375)*e,extent:n.EXTENT,maxZoom:this.maxzoom,lineMetrics:r.lineMetrics||!1,generateId:r.generateId||!1},superclusterOptions:{maxZoom:void 0!==r.clusterMaxZoom?Math.min(r.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:n.EXTENT,radius:(r.clusterRadius||50)*e,log:!1}},r.workerOptions)}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){var t=this;this.fire(new n.Event("dataloading",{dataType:"source"}));this._updateWorkerData(function(i){if(i)t.fire(new n.ErrorEvent(i));else{var r={dataType:"source",sourceDataType:"metadata"};t._collectResourceTiming&&t._resourceTiming&&t._resourceTiming.length>0&&(r.resourceTiming=t._resourceTiming,t._resourceTiming=[]);t.fire(new n.Event("data",r))}})},i.prototype.onAdd=function(n){this.map=n;this.load()},i.prototype.setData=function(t){var i=this;return this._data=t,this.fire(new n.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(t){if(t)i.fire(new n.ErrorEvent(t));else{var r={dataType:"source",sourceDataType:"content"};i._collectResourceTiming&&i._resourceTiming&&i._resourceTiming.length>0&&(r.resourceTiming=i._resourceTiming,i._resourceTiming=[]);i.fire(new n.Event("data",r))}}),this},i.prototype.getClusterExpansionZoom=function(n,t){return this.dispatcher.send("geojson.getClusterExpansionZoom",{clusterId:n,source:this.id},t,this.workerID),this},i.prototype.getClusterChildren=function(n,t){return this.dispatcher.send("geojson.getClusterChildren",{clusterId:n,source:this.id},t,this.workerID),this},i.prototype.getClusterLeaves=function(n,t,i,r){return this.dispatcher.send("geojson.getClusterLeaves",{source:this.id,clusterId:n,limit:t,offset:i},r,this.workerID),this},i.prototype._updateWorkerData=function(t){var i=this,r=n.extend({},this.workerOptions),u=this._data;"string"==typeof u?(r.request=this.map._transformRequest(n.browser.resolveURL(u),n.ResourceType.Source),r.request.collectResourceTiming=this._collectResourceTiming):r.data=JSON.stringify(u);this.workerID=this.dispatcher.send(this.type+".loadData",r,function(n,u){i._removed||u&&u.abandoned||(i._loaded=!0,u&&u.resourceTiming&&u.resourceTiming[i.id]&&(i._resourceTiming=u.resourceTiming[i.id].slice(0)),i.dispatcher.send(i.type+".coalesce",{source:r.source},null,i.workerID),t(n))},this.workerID)},i.prototype.loadTile=function(t,i){var u=this,r=void 0===t.workerID?"loadTile":"reloadTile",f={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:n.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes};t.workerID=this.dispatcher.send(r,f,function(n,f){return t.unloadVectorData(),t.aborted?i(null):n?i(n):(t.loadVectorData(f,u.map.painter,"reloadTile"===r),i(null))},this.workerID)},i.prototype.abortTile=function(n){n.aborted=!0},i.prototype.unloadTile=function(n){n.unloadVectorData();this.dispatcher.send("removeTile",{uid:n.uid,type:this.type,source:this.id},null,n.workerID)},i.prototype.onRemove=function(){this._removed=!0;this.dispatcher.send("removeSource",{type:this.type,source:this.id},null,this.workerID)},i.prototype.serialize=function(){return n.extend({},this._options,{type:this.type,data:this._data})},i.prototype.hasTransition=function(){return!1},i}(n.Evented),p=function(){this.boundProgram=null;this.boundLayoutVertexBuffer=null;this.boundPaintVertexBuffers=[];this.boundIndexBuffer=null;this.boundVertexOffset=null;this.boundDynamicVertexBuffer=null;this.vao=null};p.prototype.bind=function(n,t,i,r,u,f,e,o){var h,s,c;for(this.context=n,h=this.boundPaintVertexBuffers.length!==r.length,s=0;!h&&s<r.length;s++)this.boundPaintVertexBuffers[s]!==r[s]&&(h=!0);c=!this.vao||this.boundProgram!==t||this.boundLayoutVertexBuffer!==i||h||this.boundIndexBuffer!==u||this.boundVertexOffset!==f||this.boundDynamicVertexBuffer!==e||this.boundDynamicVertexBuffer2!==o;!n.extVertexArrayObject||c?this.freshBind(t,i,r,u,f,e,o):(n.bindVertexArrayOES.set(this.vao),e&&e.bind(),u&&u.dynamicDraw&&u.bind(),o&&o.bind())};p.prototype.freshBind=function(n,t,i,r,u,f,e){var a,w=n.numAttributes,s=this.context,o=s.gl,h,c,v,l,y,p;if(s.extVertexArrayObject)this.vao&&this.destroy(),this.vao=s.extVertexArrayObject.createVertexArrayOES(),s.bindVertexArrayOES.set(this.vao),a=0,this.boundProgram=n,this.boundLayoutVertexBuffer=t,this.boundPaintVertexBuffers=i,this.boundIndexBuffer=r,this.boundVertexOffset=u,this.boundDynamicVertexBuffer=f,this.boundDynamicVertexBuffer2=e;else for(a=s.currentNumAttributes||0,h=w;h<a;h++)o.disableVertexAttribArray(h);for(t.enableAttributes(o,n),c=0,v=i;c<v.length;c+=1)v[c].enableAttributes(o,n);for(f&&f.enableAttributes(o,n),e&&e.enableAttributes(o,n),t.bind(),t.setVertexAttribPointers(o,n,u),l=0,y=i;l<y.length;l+=1)p=y[l],p.bind(),p.setVertexAttribPointers(o,n,u);f&&(f.bind(),f.setVertexAttribPointers(o,n,u));r&&r.bind();e&&(e.bind(),e.setVertexAttribPointers(o,n,u));s.currentNumAttributes=w};p.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};var gi=function(t){function r(n,i,r,u){t.call(this);this.id=n;this.dispatcher=r;this.coordinates=i.coordinates;this.type="image";this.minzoom=0;this.maxzoom=22;this.tileSize=512;this.tiles={};this.setEventedParent(u);this.options=i}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.load=function(){var t=this;this.fire(new n.Event("dataloading",{dataType:"source"}));this.url=this.options.url;n.getImage(this.map._transformRequest(this.url,n.ResourceType.Image),function(i,r){i?t.fire(new n.ErrorEvent(i)):r&&(t.image=n.browser.getImageData(r),t._finishLoading())})},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new n.Event("data",{dataType:"source",sourceDataType:"metadata"})))},r.prototype.onAdd=function(n){this.map=n;this.load()},r.prototype.setCoordinates=function(t){var u;this.coordinates=t;var e=this.map,f=t.map(function(n){return e.transform.locationCoordinate(i.convert(n)).zoomTo(0)}),r=this.centerCoord=n.getCoordinatesCenter(f);return r.column=Math.floor(r.column),r.row=Math.floor(r.row),this.tileID=new n.CanonicalTileID(r.zoom,r.column,r.row),this.minzoom=this.maxzoom=r.zoom,u=f.map(function(t){var i=t.zoomTo(r.zoom);return new n.Point(Math.round((i.column-r.column)*n.EXTENT),Math.round((i.row-r.row)*n.EXTENT))}),this._boundsArray=new n.StructArrayLayout4i8,this._boundsArray.emplaceBack(u[0].x,u[0].y,0,0),this._boundsArray.emplaceBack(u[1].x,u[1].y,n.EXTENT,0),this._boundsArray.emplaceBack(u[3].x,u[3].y,0,n.EXTENT),this._boundsArray.emplaceBack(u[2].x,u[2].y,n.EXTENT,n.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new n.Event("data",{dataType:"source",sourceDataType:"content"})),this},r.prototype.prepare=function(){var t,i,u,r;if(0!==Object.keys(this.tiles).length&&this.image){t=this.map.painter.context;i=t.gl;for(u in this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,n.rasterBoundsAttributes.members)),this.boundsVAO||(this.boundsVAO=new p),this.texture||(this.texture=new n.Texture(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE)),this.tiles)r=this.tiles[u],"loaded"!==r.state&&(r.state="loaded",r.texture=this.texture)}},r.prototype.loadTile=function(n,t){this.tileID&&this.tileID.equals(n.tileID.canonical)?(this.tiles[String(n.tileID.wrap)]=n,n.buckets={},t(null)):(n.state="errored",t(null))},r.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(n.Evented),ks=function(t){function i(n,i,r,u){t.call(this,n,i,r,u);this.roundZoom=!0;this.type="video";this.options=i}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){var t=this,f=this.options,i,r,u;for(this.urls=[],i=0,r=f.urls;i<r.length;i+=1)u=r[i],t.urls.push(t.map._transformRequest(u,n.ResourceType.Source).url);n.getVideo(this.urls,function(i,r){i?t.fire(new n.ErrorEvent(i)):r&&(t.video=r,t.video.loop=!0,t.video.addEventListener("playing",function(){t.map._rerender()}),t.map&&t.video.play(),t._finishLoading())})},i.prototype.getVideo=function(){return this.video},i.prototype.onAdd=function(n){this.map||(this.map=n,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},i.prototype.prepare=function(){var i,t,u,r;if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){i=this.map.painter.context;t=i.gl;for(u in this.boundsBuffer||(this.boundsBuffer=i.createVertexBuffer(this._boundsArray,n.rasterBoundsAttributes.members)),this.boundsVAO||(this.boundsVAO=new p),this.texture?this.video.paused||(this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,this.video)):(this.texture=new n.Texture(i,this.video,t.RGBA),this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE)),this.tiles)r=this.tiles[u],"loaded"!==r.state&&(r.state="loaded",r.texture=this.texture)}},i.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},i.prototype.hasTransition=function(){return this.video&&!this.video.paused},i}(gi),ds=function(t){function i(i,r,u,f){t.call(this,i,r,u,f);r.coordinates?Array.isArray(r.coordinates)&&4===r.coordinates.length&&!r.coordinates.some(function(n){return!Array.isArray(n)||2!==n.length||n.some(function(n){return"number"!=typeof n})})||this.fire(new n.ErrorEvent(new n.ValidationError("sources."+i,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new n.ErrorEvent(new n.ValidationError("sources."+i,null,'missing required property "coordinates"')));r.animate&&"boolean"!=typeof r.animate&&this.fire(new n.ErrorEvent(new n.ValidationError("sources."+i,null,'optional "animate" property must be a boolean value')));r.canvas?"string"==typeof r.canvas||r.canvas instanceof n.window.HTMLCanvasElement||this.fire(new n.ErrorEvent(new n.ValidationError("sources."+i,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new n.ErrorEvent(new n.ValidationError("sources."+i,null,'missing required property "canvas"')));this.options=r;this.animate=void 0===r.animate||r.animate}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.load=function(){this.canvas||(this.canvas=this.options.canvas instanceof n.window.HTMLCanvasElement?this.options.canvas:n.window.document.getElementById(this.options.canvas));this.width=this.canvas.width;this.height=this.canvas.height;this._hasInvalidDimensions()?this.fire(new n.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0;this.map._rerender()},this.pause=function(){this._playing=!1},this._finishLoading())},i.prototype.getCanvas=function(){return this.canvas},i.prototype.onAdd=function(n){this.map=n;this.load();this.canvas&&this.animate&&this.play()},i.prototype.onRemove=function(){this.pause()},i.prototype.prepare=function(){var u=!1,i,t,f,r;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,u=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,u=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){i=this.map.painter.context;t=i.gl;for(f in this.boundsBuffer||(this.boundsBuffer=i.createVertexBuffer(this._boundsArray,n.rasterBoundsAttributes.members)),this.boundsVAO||(this.boundsVAO=new p),this.texture?u?this.texture.update(this.canvas):this._playing&&(this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,this.canvas)):(this.texture=new n.Texture(i,this.canvas,t.RGBA),this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE)),this.tiles)r=this.tiles[f],"loaded"!==r.state&&(r.state="loaded",r.texture=this.texture)}},i.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},i.prototype.hasTransition=function(){return this._playing},i.prototype._hasInvalidDimensions=function(){for(var i,n=0,t=[this.canvas.width,this.canvas.height];n<t.length;n+=1)if(i=t[n],isNaN(i)||i<=0)return!0;return!1},i}(gi),du={vector:ps,raster:se,"raster-dem":ws,geojson:bs,video:ks,image:gi,canvas:ds},gs=function(t,i,r,u){var f=new du[i.type](t,i,r,u);if(f.id!==t)throw new Error("Expected Source id to be "+t+" instead of "+f.id);return n.bindAll(["load","abort","unload","serialize","prepare"],f),f};it=function(n,t){this.max=n;this.onRemove=t;this.reset()};it.prototype.reset=function(){var r,n,i,t;for(r in this.data)for(n=0,i=this.data[r];n<i.length;n+=1)t=i[n],t.timeout&&clearTimeout(t.timeout),this.onRemove(t.value);return this.data={},this.order=[],this};it.prototype.add=function(n,t,i){var e=this,r=n.wrapped().key,u,f;return void 0===this.data[r]&&(this.data[r]=[]),u={value:t,timeout:void 0},(void 0!==i&&(u.timeout=setTimeout(function(){e.remove(n,u)},i)),this.data[r].push(u),this.order.push(r),this.order.length>this.max)&&(f=this._getAndRemoveByKey(this.order[0]),f&&this.onRemove(f)),this};it.prototype.has=function(n){return n.wrapped().key in this.data};it.prototype.getAndRemove=function(n){return this.has(n)?this._getAndRemoveByKey(n.wrapped().key):null};it.prototype._getAndRemoveByKey=function(n){var t=this.data[n].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[n].length&&delete this.data[n],this.order.splice(this.order.indexOf(n),1),t.value};it.prototype.get=function(n){return this.has(n)?this.data[n.wrapped().key][0].value:null};it.prototype.remove=function(n,t){if(!this.has(n))return this;var i=n.wrapped().key,u=void 0===t?0:this.data[i].indexOf(t),r=this.data[i][u];return this.data[i].splice(u,1),r.timeout&&clearTimeout(r.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(r.value),this.order.splice(this.order.indexOf(i),1),this};it.prototype.setMaxSize=function(n){for(this.max=n;this.order.length>this.max;){var t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this};ni=function(n,t,i){this.context=n;var r=n.gl;this.buffer=r.createBuffer();this.dynamicDraw=Boolean(i);this.unbindVAO();n.bindElementBuffer.set(this.buffer);r.bufferData(r.ELEMENT_ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?r.DYNAMIC_DRAW:r.STATIC_DRAW);this.dynamicDraw||delete t.arrayBuffer};ni.prototype.unbindVAO=function(){this.context.extVertexArrayObject&&this.context.bindVertexArrayOES.set(null)};ni.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)};ni.prototype.updateData=function(n){var t=this.context.gl;this.unbindVAO();this.bind();t.bufferSubData(t.ELEMENT_ARRAY_BUFFER,0,n.arrayBuffer)};ni.prototype.destroy=function(){var n=this.context.gl;this.buffer&&(n.deleteBuffer(this.buffer),delete this.buffer)};ce={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};pt=function(n,t,i,r){this.length=t.length;this.attributes=i;this.itemSize=t.bytesPerElement;this.dynamicDraw=r;this.context=n;var u=n.gl;this.buffer=u.createBuffer();n.bindVertexBuffer.set(this.buffer);u.bufferData(u.ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?u.DYNAMIC_DRAW:u.STATIC_DRAW);this.dynamicDraw||delete t.arrayBuffer};pt.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)};pt.prototype.updateData=function(n){var t=this.context.gl;this.bind();t.bufferSubData(t.ARRAY_BUFFER,0,n.arrayBuffer)};pt.prototype.enableAttributes=function(n,t){for(var u,r,i=0;i<this.attributes.length;i++)u=this.attributes[i],r=t.attributes[u.name],void 0!==r&&n.enableVertexAttribArray(r)};pt.prototype.setVertexAttribPointers=function(n,t,i){for(var r,f,u=0;u<this.attributes.length;u++)r=this.attributes[u],f=t.attributes[r.name],void 0!==f&&n.vertexAttribPointer(f,r.components,n[ce[r.type]],!1,this.itemSize,r.offset+this.itemSize*(i||0))};pt.prototype.destroy=function(){var n=this.context.gl;this.buffer&&(n.deleteBuffer(this.buffer),delete this.buffer)};nr=function(t){this.context=t;this.current=n.Color.transparent};nr.prototype.get=function(){return this.current};nr.prototype.set=function(n){var t=this.current;n.r===t.r&&n.g===t.g&&n.b===t.b&&n.a===t.a||(this.context.gl.clearColor(n.r,n.g,n.b,n.a),this.current=n)};tr=function(n){this.context=n;this.current=1};tr.prototype.get=function(){return this.current};tr.prototype.set=function(n){this.current!==n&&(this.context.gl.clearDepth(n),this.current=n)};ir=function(n){this.context=n;this.current=0};ir.prototype.get=function(){return this.current};ir.prototype.set=function(n){this.current!==n&&(this.context.gl.clearStencil(n),this.current=n)};rr=function(n){this.context=n;this.current=[!0,!0,!0,!0]};rr.prototype.get=function(){return this.current};rr.prototype.set=function(n){var t=this.current;n[0]===t[0]&&n[1]===t[1]&&n[2]===t[2]&&n[3]===t[3]||(this.context.gl.colorMask(n[0],n[1],n[2],n[3]),this.current=n)};ur=function(n){this.context=n;this.current=!0};ur.prototype.get=function(){return this.current};ur.prototype.set=function(n){this.current!==n&&(this.context.gl.depthMask(n),this.current=n)};fr=function(n){this.context=n;this.current=255};fr.prototype.get=function(){return this.current};fr.prototype.set=function(n){this.current!==n&&(this.context.gl.stencilMask(n),this.current=n)};er=function(n){this.context=n;this.current={func:n.gl.ALWAYS,ref:0,mask:255}};er.prototype.get=function(){return this.current};er.prototype.set=function(n){var t=this.current;n.func===t.func&&n.ref===t.ref&&n.mask===t.mask||(this.context.gl.stencilFunc(n.func,n.ref,n.mask),this.current=n)};or=function(n){this.context=n;var t=this.context.gl;this.current=[t.KEEP,t.KEEP,t.KEEP]};or.prototype.get=function(){return this.current};or.prototype.set=function(n){var t=this.current;n[0]===t[0]&&n[1]===t[1]&&n[2]===t[2]||(this.context.gl.stencilOp(n[0],n[1],n[2]),this.current=n)};sr=function(n){this.context=n;this.current=!1};sr.prototype.get=function(){return this.current};sr.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;n?t.enable(t.STENCIL_TEST):t.disable(t.STENCIL_TEST);this.current=n}};hr=function(n){this.context=n;this.current=[0,1]};hr.prototype.get=function(){return this.current};hr.prototype.set=function(n){var t=this.current;n[0]===t[0]&&n[1]===t[1]||(this.context.gl.depthRange(n[0],n[1]),this.current=n)};cr=function(n){this.context=n;this.current=!1};cr.prototype.get=function(){return this.current};cr.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;n?t.enable(t.DEPTH_TEST):t.disable(t.DEPTH_TEST);this.current=n}};lr=function(n){this.context=n;this.current=n.gl.LESS};lr.prototype.get=function(){return this.current};lr.prototype.set=function(n){this.current!==n&&(this.context.gl.depthFunc(n),this.current=n)};ar=function(n){this.context=n;this.current=!1};ar.prototype.get=function(){return this.current};ar.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;n?t.enable(t.BLEND):t.disable(t.BLEND);this.current=n}};vr=function(n){this.context=n;var t=this.context.gl;this.current=[t.ONE,t.ZERO]};vr.prototype.get=function(){return this.current};vr.prototype.set=function(n){var t=this.current;n[0]===t[0]&&n[1]===t[1]||(this.context.gl.blendFunc(n[0],n[1]),this.current=n)};yr=function(t){this.context=t;this.current=n.Color.transparent};yr.prototype.get=function(){return this.current};yr.prototype.set=function(n){var t=this.current;n.r===t.r&&n.g===t.g&&n.b===t.b&&n.a===t.a||(this.context.gl.blendColor(n.r,n.g,n.b,n.a),this.current=n)};pr=function(n){this.context=n;this.current=null};pr.prototype.get=function(){return this.current};pr.prototype.set=function(n){this.current!==n&&(this.context.gl.useProgram(n),this.current=n)};wr=function(n){this.context=n;this.current=n.gl.TEXTURE0};wr.prototype.get=function(){return this.current};wr.prototype.set=function(n){this.current!==n&&(this.context.gl.activeTexture(n),this.current=n)};br=function(n){this.context=n;var t=this.context.gl;this.current=[0,0,t.drawingBufferWidth,t.drawingBufferHeight]};br.prototype.get=function(){return this.current};br.prototype.set=function(n){var t=this.current;n[0]===t[0]&&n[1]===t[1]&&n[2]===t[2]&&n[3]===t[3]||(this.context.gl.viewport(n[0],n[1],n[2],n[3]),this.current=n)};kr=function(n){this.context=n;this.current=null};kr.prototype.get=function(){return this.current};kr.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.bindFramebuffer(t.FRAMEBUFFER,n);this.current=n}};dr=function(n){this.context=n;this.current=null};dr.prototype.get=function(){return this.current};dr.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.bindRenderbuffer(t.RENDERBUFFER,n);this.current=n}};gr=function(n){this.context=n;this.current=null};gr.prototype.get=function(){return this.current};gr.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.bindTexture(t.TEXTURE_2D,n);this.current=n}};nu=function(n){this.context=n;this.current=null};nu.prototype.get=function(){return this.current};nu.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.bindBuffer(t.ARRAY_BUFFER,n);this.current=n}};tu=function(n){this.context=n;this.current=null};tu.prototype.get=function(){return this.current};tu.prototype.set=function(n){var t=this.context.gl;t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,n);this.current=n};iu=function(n){this.context=n;this.current=null};iu.prototype.get=function(){return this.current};iu.prototype.set=function(n){this.current!==n&&this.context.extVertexArrayObject&&(this.context.extVertexArrayObject.bindVertexArrayOES(n),this.current=n)};ru=function(n){this.context=n;this.current=4};ru.prototype.get=function(){return this.current};ru.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.pixelStorei(t.UNPACK_ALIGNMENT,n);this.current=n}};uu=function(n){this.context=n;this.current=!1};uu.prototype.get=function(){return this.current};uu.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,n);this.current=n}};fu=function(n,t){this.context=n;this.current=null;this.parent=t};fu.prototype.get=function(){return this.current};var th=function(n){function t(t,i){n.call(this,t,i);this.dirty=!1}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.set=function(n){if(this.dirty||this.current!==n){var t=this.context.gl;this.context.bindFramebuffer.set(this.parent);t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,n,0);this.current=n;this.dirty=!1}},t.prototype.setDirty=function(){this.dirty=!0},t}(fu),ih=function(n){function t(){n.apply(this,arguments)}return n&&(t.__proto__=n),t.prototype=Object.create(n&&n.prototype),t.prototype.constructor=t,t.prototype.set=function(n){if(this.current!==n){var t=this.context.gl;this.context.bindFramebuffer.set(this.parent);t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.RENDERBUFFER,n);this.current=n}},t}(fu),le=function(n,t,i){this.context=n;this.width=t;this.height=i;var u=n.gl,r=this.framebuffer=u.createFramebuffer();this.colorAttachment=new th(n,r);this.depthAttachment=new ih(n,r)};le.prototype.destroy=function(){var n=this.context.gl,i=this.colorAttachment.get(),t;i&&n.deleteTexture(i);t=this.depthAttachment.get();t&&n.deleteRenderbuffer(t);n.deleteFramebuffer(this.framebuffer)};e=function(n,t,i){this.func=n;this.mask=t;this.range=i};e.ReadOnly=!1;e.ReadWrite=!0;e.disabled=new e(519,e.ReadOnly,[0,1]);c=function(n,t,i,r,u,f){this.test=n;this.ref=t;this.mask=i;this.fail=r;this.depthFail=u;this.pass=f};c.disabled=new c({func:519,mask:0},0,0,7680,7680,7680);l=function(n,t,i){this.blendFunction=n;this.blendColor=t;this.mask=i};l.Replace=[1,0];l.disabled=new l(l.Replace,n.Color.transparent,[!1,!1,!1,!1]);l.unblended=new l(l.Replace,n.Color.transparent,[!0,!0,!0,!0]);l.alphaBlended=new l([1,771],n.Color.transparent,[!0,!0,!0,!0]);rt=function(n){this.gl=n;this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object");this.clearColor=new nr(this);this.clearDepth=new tr(this);this.clearStencil=new ir(this);this.colorMask=new rr(this);this.depthMask=new ur(this);this.stencilMask=new fr(this);this.stencilFunc=new er(this);this.stencilOp=new or(this);this.stencilTest=new sr(this);this.depthRange=new hr(this);this.depthTest=new cr(this);this.depthFunc=new lr(this);this.blend=new ar(this);this.blendFunc=new vr(this);this.blendColor=new yr(this);this.program=new pr(this);this.activeTexture=new wr(this);this.viewport=new br(this);this.bindFramebuffer=new kr(this);this.bindRenderbuffer=new dr(this);this.bindTexture=new gr(this);this.bindVertexBuffer=new nu(this);this.bindElementBuffer=new tu(this);this.bindVertexArrayOES=this.extVertexArrayObject&&new iu(this);this.pixelStoreUnpack=new ru(this);this.pixelStoreUnpackPremultiplyAlpha=new uu(this);this.extTextureFilterAnisotropic=n.getExtension("EXT_texture_filter_anisotropic")||n.getExtension("MOZ_EXT_texture_filter_anisotropic")||n.getExtension("WEBKIT_EXT_texture_filter_anisotropic");this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=n.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT));this.extTextureHalfFloat=n.getExtension("OES_texture_half_float");this.extTextureHalfFloat&&n.getExtension("OES_texture_half_float_linear")};rt.prototype.createIndexBuffer=function(n,t){return new ni(this,n,t)};rt.prototype.createVertexBuffer=function(n,t,i){return new pt(this,n,t,i)};rt.prototype.createRenderbuffer=function(n,t,i){var r=this.gl,u=r.createRenderbuffer();return this.bindRenderbuffer.set(u),r.renderbufferStorage(r.RENDERBUFFER,n,t,i),this.bindRenderbuffer.set(null),u};rt.prototype.createFramebuffer=function(n,t){return new le(this,n,t)};rt.prototype.clear=function(n){var r=n.color,u=n.depth,t=this.gl,i=0;r&&(i|=t.COLOR_BUFFER_BIT,this.clearColor.set(r),this.colorMask.set([!0,!0,!0,!0]));void 0!==u&&(i|=t.DEPTH_BUFFER_BIT,this.clearDepth.set(u),this.depthMask.set(!0));t.clear(i)};rt.prototype.setDepthMode=function(n){n.func!==this.gl.ALWAYS||n.mask?(this.depthTest.set(!0),this.depthFunc.set(n.func),this.depthMask.set(n.mask),this.depthRange.set(n.range)):this.depthTest.set(!1)};rt.prototype.setStencilMode=function(n){n.test.func!==this.gl.ALWAYS||n.mask?(this.stencilTest.set(!0),this.stencilMask.set(n.mask),this.stencilOp.set([n.fail,n.depthFail,n.pass]),this.stencilFunc.set({func:n.test.func,ref:n.ref,mask:n.test.mask})):this.stencilTest.set(!1)};rt.prototype.setColorMode=function(t){n.deepEqual(t.blendFunction,l.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(t.blendFunction),this.blendColor.set(t.blendColor));this.colorMask.set(t.mask)};ti=function(t){function i(i,r,u){var f=this;t.call(this);this.id=i;this.dispatcher=u;this.on("data",function(n){"source"===n.dataType&&"metadata"===n.sourceDataType&&(f._sourceLoaded=!0);f._sourceLoaded&&!f._paused&&"source"===n.dataType&&"content"===n.sourceDataType&&(f.reload(),f.transform&&f.update(f.transform))});this.on("error",function(){f._sourceErrored=!0});this._source=gs(i,r,u,this);this._tiles={};this._cache=new it(0,this._unloadTile.bind(this));this._timers={};this._cacheTimers={};this._maxTileCacheSize=null;this._coveredTiles={};this._state=new n.SourceFeatureState}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.onAdd=function(n){this.map=n;this._maxTileCacheSize=n?n._maxTileCacheSize:null;this._source&&this._source.onAdd&&this._source.onAdd(n)},i.prototype.onRemove=function(n){this._source&&this._source.onRemove&&this._source.onRemove(n)},i.prototype.loaded=function(){var t,n;if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;for(t in this._tiles)if(n=this._tiles[t],"loaded"!==n.state&&"errored"!==n.state)return!1;return!0},i.prototype.getSource=function(){return this._source},i.prototype.pause=function(){this._paused=!0},i.prototype.resume=function(){if(this._paused){var n=this._shouldReloadOnResume;this._paused=!1;this._shouldReloadOnResume=!1;n&&this.reload();this.transform&&this.update(this.transform)}},i.prototype._loadTile=function(n,t){return this._source.loadTile(n,t)},i.prototype._unloadTile=function(n){if(this._source.unloadTile)return this._source.unloadTile(n,function(){})},i.prototype._abortTile=function(n){if(this._source.abortTile)return this._source.abortTile(n,function(){})},i.prototype.serialize=function(){return this._source.serialize()},i.prototype.prepare=function(n){for(var t in this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null),this._tiles)this._tiles[t].upload(n)},i.prototype.getIds=function(){return Object.keys(this._tiles).map(Number).sort(ae)},i.prototype.getRenderableIds=function(t){var i=this,r=[];for(var u in i._tiles)i._isIdRenderable(+u,t)&&r.push(+u);return t?r.sort(function(t,r){var u=i._tiles[t].tileID,f=i._tiles[r].tileID,e=new n.Point(u.canonical.x,u.canonical.y)._rotate(i.transform.angle),o=new n.Point(f.canonical.x,f.canonical.y)._rotate(i.transform.angle);return u.overscaledZ-f.overscaledZ||o.y-e.y||o.x-e.x}):r.sort(ae)},i.prototype.hasRenderableParent=function(n){var t=this.findLoadedParent(n,0);return!!t&&this._isIdRenderable(t.tileID.key)},i.prototype._isIdRenderable=function(n,t){return this._tiles[n]&&this._tiles[n].hasData()&&!this._coveredTiles[n]&&(t||!this._tiles[n].holdingForFade())},i.prototype.reload=function(){if(this._paused)this._shouldReloadOnResume=!0;else for(var n in this._cache.reset(),this._tiles)"errored"!==this._tiles[n].state&&this._reloadTile(n,"reloading")},i.prototype._reloadTile=function(n,t){var i=this._tiles[n];i&&("loading"!==i.state&&(i.state=t),this._loadTile(i,this._tileLoaded.bind(this,i,n,t)))},i.prototype._tileLoaded=function(t,i,r,u){if(u)return t.state="errored",void(404!==u.status?this._source.fire(new n.ErrorEvent(u,{tile:t})):this.update(this.transform));t.timeAdded=n.browser.now();"expired"===r&&(t.refreshedUponExpiration=!0);this._setTileReloadTimer(i,t);"raster-dem"===this.getSource().type&&t.dem&&this._backfillDEM(t);this._state.initializeTileState(t,this.map?this.map.painter:null);this._source.fire(new n.Event("data",{dataType:"source",tile:t,coord:t.tileID}));this.map&&(this.map.painter.tileExtentVAO.vao=null)},i.prototype._backfillDEM=function(n){function f(n,t){n.needsHillshadePrepare=!0;var i=t.tileID.canonical.x-n.tileID.canonical.x,u=t.tileID.canonical.y-n.tileID.canonical.y,r=Math.pow(2,n.tileID.canonical.z),f=t.tileID.key;0===i&&0===u||Math.abs(u)>1||(Math.abs(i)>1&&(1===Math.abs(i+r)?i+=r:1===Math.abs(i-r)&&(i-=r)),t.dem&&n.dem&&(n.dem.backfillBorder(t.dem,i,u),n.neighboringTiles&&n.neighboringTiles[f]&&(n.neighboringTiles[f].backfilled=!0)))}for(var r,u,i=this.getRenderableIds(),t=0;t<i.length;t++)r=i[t],n.neighboringTiles&&n.neighboringTiles[r]&&(u=this.getTileByID(r),f(n,u),f(u,n))},i.prototype.getTile=function(n){return this.getTileByID(n.key)},i.prototype.getTileByID=function(n){return this._tiles[n]},i.prototype.getZoom=function(n){return n.zoom+n.scaleZoom(n.tileSize/this._source.tileSize)},i.prototype._retainLoadedChildren=function(n,t,i,r){var o,u,f,s,e;for(o in this._tiles)if(u=this._tiles[o],!(r[o]||!u.hasData()||u.tileID.overscaledZ<=t||u.tileID.overscaledZ>i)){for(f=u.tileID;u&&u.tileID.overscaledZ>t+1;)s=u.tileID.scaledTo(u.tileID.overscaledZ-1),(u=this._tiles[s.key])&&u.hasData()&&(f=s);for(e=f;e.overscaledZ>t;)if(n[(e=e.scaledTo(e.overscaledZ-1)).key]){r[f.key]=f;break}}},i.prototype.findLoadedParent=function(n,t){for(var i,f,u,r=n.overscaledZ-1;r>=t;r--){if(i=n.scaledTo(r),!i)return;if(f=String(i.key),u=this._tiles[f],u&&u.hasData())return u;if(this._cache.has(i))return this._cache.get(i)}},i.prototype.updateCacheSize=function(n){var i=(Math.ceil(n.width/this._source.tileSize)+1)*(Math.ceil(n.height/this._source.tileSize)+1),t=Math.floor(5*i),r="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,t):t;this._cache.setMaxSize(r)},i.prototype.handleWrapJump=function(n){var s=(n-(void 0===this._prevLng?n:this._prevLng))/360,f=Math.round(s),i,e,t,r,u,o;if(this._prevLng=n,f){i={};for(e in this._tiles)t=this._tiles[e],t.tileID=t.tileID.unwrapTo(t.tileID.wrap+f),i[t.tileID.key]=t;for(r in this._tiles=i,this._timers)clearTimeout(this._timers[r]),delete this._timers[r];for(u in this._tiles)o=this._tiles[u],this._setTileReloadTimer(u,o)}},i.prototype.update=function(t){var r=this,f,o,s,g,c,p,w,e;if(this.transform=t,this._sourceLoaded&&!this._paused){this.updateCacheSize(t);this.handleWrapJump(this.transform.center.lng);this._coveredTiles={};this.used?this._source.tileID?f=t.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(t){return new n.OverscaledTileID(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y)}):(f=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(f=f.filter(function(n){return r._source.hasTile(n)}))):f=[];var h=(this._source.roundZoom?Math.round:Math.floor)(this.getZoom(t)),nt=Math.max(h-i.maxOverzooming,this._source.minzoom),tt=Math.max(h+i.maxUnderzooming,this._source.minzoom),u=this._updateRetainedTiles(f,h);if(ve(this._source.type)){for(var l={},b={},a=0,k=Object.keys(u);a<k.length;a+=1){var v=k[a],d=u[v],y=r._tiles[v];!y||y.fadeEndTime&&y.fadeEndTime<=n.browser.now()||(o=r.findLoadedParent(d,nt),o&&(r._addTile(o.tileID),l[o.tileID.key]=o.tileID),b[v]=d)}for(s in this._retainLoadedChildren(b,h,tt,u),l)u[s]||(r._coveredTiles[s]=!0,u[s]=l[s])}for(g in u)r._tiles[g].clearFadeHold();for(c=0,p=n.keysDifference(this._tiles,u);c<p.length;c+=1)w=p[c],e=r._tiles[w],e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(r.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||r._removeTile(w)}},i.prototype.releaseSymbolFadeTiles=function(){for(var n in this._tiles)this._tiles[n].holdingForFade()&&this._removeTile(n)},i.prototype._updateRetainedTiles=function(n,t){for(var e,d,h,v,o,u,c,y,s,p,l,f,r={},w={},g=Math.max(t-i.maxOverzooming,this._source.minzoom),nt=Math.max(t+i.maxUnderzooming,this._source.minzoom),b={},a=0,k=n;a<k.length;a+=1)e=k[a],d=this._addTile(e),r[e.key]=e,d.hasData()||t<this._source.maxzoom&&(b[e.key]=e);for(this._retainLoadedChildren(b,t,nt,r),h=0,v=n;h<v.length;h+=1)if(o=v[h],u=this._tiles[o.key],!u.hasData()){if(t+1>this._source.maxzoom){if(c=o.children(this._source.maxzoom)[0],y=this.getTile(c),y&&y.hasData()){r[c.key]=c;continue}}else if(s=o.children(this._source.maxzoom),r[s[0].key]&&r[s[1].key]&&r[s[2].key]&&r[s[3].key])continue;for(p=u.wasRequested(),l=o.overscaledZ-1;l>=g;--l){if(f=o.scaledTo(l),w[f.key])break;if(w[f.key]=!0,!(u=this.getTile(f))&&p&&(u=this._addTile(f)),u&&(r[f.key]=f,p=u.wasRequested(),u.hasData()))break}}return r},i.prototype._addTile=function(t){var i=this._tiles[t.key],r;return i?i:((i=this._cache.getAndRemove(t))&&(this._setTileReloadTimer(t.key,i),i.tileID=t,this._state.initializeTileState(i,this.map?this.map.painter:null),this._cacheTimers[t.key]&&(clearTimeout(this._cacheTimers[t.key]),delete this._cacheTimers[t.key],this._setTileReloadTimer(t.key,i))),r=Boolean(i),r||(i=new n.Tile(t,this._source.tileSize*t.overscaleFactor()),this._loadTile(i,this._tileLoaded.bind(this,i,t.key,i.state))),i?(i.uses++,this._tiles[t.key]=i,r||this._source.fire(new n.Event("dataloading",{tile:i,coord:i.tileID,dataType:"source"})),i):null)},i.prototype._setTileReloadTimer=function(n,t){var r=this,i;n in this._timers&&(clearTimeout(this._timers[n]),delete this._timers[n]);i=t.getExpiryTimeout();i&&(this._timers[n]=setTimeout(function(){r._reloadTile(n,"expired");delete r._timers[n]},i))},i.prototype._removeTile=function(n){var t=this._tiles[n];t&&(t.uses--,delete this._tiles[n],this._timers[n]&&(clearTimeout(this._timers[n]),delete this._timers[n]),t.uses>0||(t.hasData()?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))},i.prototype.clearTiles=function(){for(var n in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(n);this._cache.reset()},i.prototype.tilesIn=function(t,i){for(var u,f,r,p,h,w=[],b=this.getIds(),c=1/0,l=1/0,a=-1/0,v=-1/0,k=t[0].zoom,y=0;y<t.length;y++)u=t[y],c=Math.min(c,u.column),l=Math.min(l,u.row),a=Math.max(a,u.column),v=Math.max(v,u.row);for(f=0;f<b.length;f++)if(r=this._tiles[b[f]],!r.holdingForFade()){var e=r.tileID,d=Math.pow(2,this.transform.zoom-r.tileID.overscaledZ),o=i*r.queryPadding*n.EXTENT/r.tileSize/d,s=[gu(e,new n.Coordinate(c,l,k)),gu(e,new n.Coordinate(a,v,k))];if(s[0].x-o<n.EXTENT&&s[0].y-o<n.EXTENT&&s[1].x+o>=0&&s[1].y+o>=0){for(p=[],h=0;h<t.length;h++)p.push(gu(e,t[h]));w.push({tile:r,tileID:e,queryGeometry:[p],scale:d})}}return w},i.prototype.getVisibleCoordinates=function(n){for(var i,r=this,u=this.getRenderableIds(n).map(function(n){return r._tiles[n].tileID}),t=0,f=u;t<f.length;t+=1)i=f[t],i.posMatrix=r.transform.calculatePosMatrix(i.toUnwrapped());return u},i.prototype.hasTransition=function(){var i,t;if(this._source.hasTransition())return!0;if(ve(this._source.type))for(i in this._tiles)if(t=this._tiles[i],void 0!==t.fadeEndTime&&t.fadeEndTime>=n.browser.now())return!0;return!1},i.prototype.setFeatureState=function(n,t,i){n=n||"_geojsonTileLayer";this._state.updateState(n,t,i)},i.prototype.getFeatureState=function(n,t){return n=n||"_geojsonTileLayer",this._state.getState(n,t)},i}(n.Evented);ti.maxOverzooming=10;ti.maxUnderzooming=3;ht=function(){this.active={}};ht.prototype.acquire=function(n){if(!this.workers)for(this.workers=[];this.workers.length<ht.workerCount;)this.workers.push(new rh);return this.active[n]=!0,this.workers.slice()};ht.prototype.release=function(n){delete this.active[n];0===Object.keys(this.active).length&&(this.workers.forEach(function(n){n.terminate()}),this.workers=null)};ht.workerCount=Math.max(Math.floor(n.browser.hardwareConcurrency/2),1);r={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setGeoJSONSourceData:"setGeoJSONSourceData",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};s=function(n,t,i){var u=this.boxCells=[],f=this.circleCells=[],r;for(this.xCellCount=Math.ceil(n/i),this.yCellCount=Math.ceil(t/i),r=0;r<this.xCellCount*this.yCellCount;r++)u.push([]),f.push([]);this.circleKeys=[];this.boxKeys=[];this.bboxes=[];this.circles=[];this.width=n;this.height=t;this.xScale=this.xCellCount/n;this.yScale=this.yCellCount/t;this.boxUid=0;this.circleUid=0};s.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length};s.prototype.insert=function(n,t,i,r,u){this._forEachCell(t,i,r,u,this._insertBoxCell,this.boxUid++);this.boxKeys.push(n);this.bboxes.push(t);this.bboxes.push(i);this.bboxes.push(r);this.bboxes.push(u)};s.prototype.insertCircle=function(n,t,i,r){this._forEachCell(t-r,i-r,t+r,i+r,this._insertCircleCell,this.circleUid++);this.circleKeys.push(n);this.circles.push(t);this.circles.push(i);this.circles.push(r)};s.prototype._insertBoxCell=function(n,t,i,r,u,f){this.boxCells[u].push(f)};s.prototype._insertCircleCell=function(n,t,i,r,u,f){this.circleCells[u].push(f)};s.prototype._query=function(n,t,i,r,u,f){var e,o,s,a;if(i<0||n>this.width||r<0||t>this.height)return!u&&[];if(e=[],n<=0&&t<=0&&this.width<=i&&this.height<=r){if(u)return!0;for(o=0;o<this.boxKeys.length;o++)e.push({key:this.boxKeys[o],x1:this.bboxes[4*o],y1:this.bboxes[4*o+1],x2:this.bboxes[4*o+2],y2:this.bboxes[4*o+3]});for(s=0;s<this.circleKeys.length;s++){var c=this.circles[3*s],l=this.circles[3*s+1],h=this.circles[3*s+2];e.push({key:this.circleKeys[s],x1:c-h,y1:l-h,x2:c+h,y2:l+h})}return f?e.filter(f):e}return a={hitTest:u,seenUids:{box:{},circle:{}}},this._forEachCell(n,t,i,r,this._queryCell,e,a,f),u?e.length>0:e};s.prototype._queryCircle=function(n,t,i,r,u){var e=n-i,o=n+i,s=t-i,h=t+i,f,c;return o<0||e>this.width||h<0||s>this.height?!r&&[]:(f=[],c={hitTest:r,circle:{x:n,y:t,radius:i},seenUids:{box:{},circle:{}}},this._forEachCell(e,s,o,h,this._queryCellCircle,f,c,u),r?f.length>0:f)};s.prototype.query=function(n,t,i,r,u){return this._query(n,t,i,r,!1,u)};s.prototype.hitTest=function(n,t,i,r,u){return this._query(n,t,i,r,!0,u)};s.prototype.hitTestCircle=function(n,t,i,r){return this._queryCircle(n,t,i,!0,r)};s.prototype._queryCell=function(n,t,i,r,u,f,e,o){var y=e.seenUids,d=this.boxCells[u],l,s,b,v,c;if(null!==d)for(var h=this.bboxes,w=0,g=d;w<g.length;w+=1)if(l=g[w],!y.box[l]&&(y.box[l]=!0,s=4*l,n<=h[s+2]&&t<=h[s+3]&&i>=h[s+0]&&r>=h[s+1]&&(!o||o(this.boxKeys[l])))){if(e.hitTest)return f.push(!0),!0;f.push({key:this.boxKeys[l],x1:h[s],y1:h[s+1],x2:h[s+2],y2:h[s+3]})}if(b=this.circleCells[u],null!==b)for(var a=this.circles,k=0,nt=b;k<nt.length;k+=1)if(v=nt[k],!y.circle[v]&&(y.circle[v]=!0,c=3*v,this._circleAndRectCollide(a[c],a[c+1],a[c+2],n,t,i,r)&&(!o||o(this.circleKeys[v])))){if(e.hitTest)return f.push(!0),!0;var tt=a[c],it=a[c+1],p=a[c+2];f.push({key:this.circleKeys[v],x1:tt-p,y1:it-p,x2:tt+p,y2:it+p})}};s.prototype._queryCellCircle=function(n,t,i,r,u,f,e,o){var s=e.circle,a=e.seenUids,d=this.boxCells[u],h,c,w,l,y;if(null!==d)for(var v=this.bboxes,p=0,g=d;p<g.length;p+=1)if(h=g[p],!a.box[h]&&(a.box[h]=!0,c=4*h,this._circleAndRectCollide(s.x,s.y,s.radius,v[c+0],v[c+1],v[c+2],v[c+3])&&(!o||o(this.boxKeys[h]))))return f.push(!0),!0;if(w=this.circleCells[u],null!==w)for(var b=this.circles,k=0,nt=w;k<nt.length;k+=1)if(l=nt[k],!a.circle[l]&&(a.circle[l]=!0,y=3*l,this._circlesCollide(b[y],b[y+1],b[y+2],s.x,s.y,s.radius)&&(!o||o(this.circleKeys[l]))))return f.push(!0),!0};s.prototype._forEachCell=function(n,t,i,r,u,f,e,o){for(var s,c,l=this._convertToXCellCoord(n),a=this._convertToYCellCoord(t),v=this._convertToXCellCoord(i),y=this._convertToYCellCoord(r),h=l;h<=v;h++)for(s=a;s<=y;s++)if(c=this.xCellCount*s+h,u.call(this,n,t,i,r,c,f,e,o))return};s.prototype._convertToXCellCoord=function(n){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(n*this.xScale)))};s.prototype._convertToYCellCoord=function(n){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(n*this.yScale)))};s.prototype._circlesCollide=function(n,t,i,r,u,f){var e=r-n,o=u-t,s=i+f;return s*s>e*e+o*o};s.prototype._circleAndRectCollide=function(n,t,i,r,u,f,e){var s=(f-r)/2,c=Math.abs(n-(r+s)),o,h,l,a;return c>s+i?!1:(o=(e-u)/2,h=Math.abs(t-(u+o)),h>o+i)?!1:c<=s||h<=o?!0:(l=c-s,a=h-o,l*l+a*a<=i*i)};de=n.properties.layout;ro=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);w=function(n,t,i){void 0===t&&(t=new s(n.width+200,n.height+200,25));void 0===i&&(i=new s(n.width+200,n.height+200,25));this.transform=n;this.grid=t;this.ignoredGrid=i;this.pitchfactor=Math.cos(n._pitch)*n.cameraToCenterDistance;this.screenRightBoundary=n.width+100;this.screenBottomBoundary=n.height+100;this.gridRightBoundary=n.width+200;this.gridBottomBoundary=n.height+200};w.prototype.placeCollisionBox=function(n,t,i,r,u){var f=this.projectAndGetPerspectiveRatio(r,n.anchorPointX,n.anchorPointY),e=i*f.perspectiveRatio,o=n.x1*e+f.point.x,s=n.y1*e+f.point.y,h=n.x2*e+f.point.x,c=n.y2*e+f.point.y;return!this.isInsideGrid(o,s,h,c)||!t&&this.grid.hitTest(o,s,h,c,u)?{box:[],offscreen:!1}:{box:[o,s,h,c],offscreen:this.isOffscreen(o,s,h,c)}};w.prototype.approximateTileDistance=function(n,t,i,r,u){var e=u?1:r/this.pitchfactor,f=n.lastSegmentViewportDistance*i;return n.prevTileDistance+f+(e-1)*f*Math.abs(Math.sin(t))};w.prototype.placeCollisionCircles=function(t,i,r,u,f,e,o,s,h,c,l,a,v,y){var k=[],g=this.projectAnchor(c,e.anchorX,e.anchorY),bt=h/24,kt=e.lineOffsetX*h,dt=e.lineOffsetY*h,ot=new n.Point(e.anchorX,e.anchorY),d=ge(bt,s,kt,dt,!1,ct(ot,l).point,ot,e,o,l,{},!0),st=!1,nt=!1,tt=!0,gt=g.perspectiveRatio*u,ht=1/(u*r),it=0,rt=0,p,w,b,ut,ft,et,at;for(d&&(it=this.approximateTileDistance(d.first.tileDistance,d.first.angle,ht,g.cameraDistance,v),rt=this.approximateTileDistance(d.last.tileDistance,d.last.angle,ht,g.cameraDistance,v)),p=0;p<t.length;p+=5){var ni=t[p],ti=t[p+1],ii=t[p+2],lt=t[p+3];if(!d||lt<-it||lt>rt)uf(t,p,!1);else{if(w=this.projectPoint(c,ni,ti),b=ii*gt,k.length>0&&(ut=w.x-k[k.length-4],ft=w.y-k[k.length-3],b*b*2>ut*ut+ft*ft&&p+8<t.length&&(et=t[p+8],et>-it&&et<rt))){uf(t,p,!1);continue}at=p/5;k.push(w.x,w.y,b,at);uf(t,p,!0);var vt=w.x-b,yt=w.y-b,pt=w.x+b,wt=w.y+b;if(tt=tt&&this.isOffscreen(vt,yt,pt,wt),nt=nt||this.isInsideGrid(vt,yt,pt,wt),!i&&this.grid.hitTestCircle(w.x,w.y,b,y)){if(!a)return{circles:[],offscreen:!1};st=!0}}}return{circles:st||!nt?[]:k,offscreen:tt}};w.prototype.queryRenderedSymbols=function(t){var a,u,r,i,b;if(0===t.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};for(var y=[],f=1/0,e=1/0,o=-1/0,s=-1/0,l=0,p=t;l<p.length;l+=1)a=p[l],u=new n.Point(a.x+100,a.y+100),f=Math.min(f,u.x),e=Math.min(e,u.y),o=Math.max(o,u.x),s=Math.max(s,u.y),y.push(u);for(var h={},c={},v=0,w=this.grid.query(f,e,o,s).concat(this.ignoredGrid.query(f,e,o,s));v<w.length;v+=1)r=w[v],i=r.key,(void 0===h[i.bucketInstanceId]&&(h[i.bucketInstanceId]={}),h[i.bucketInstanceId][i.featureIndex])||(b=[new n.Point(r.x1,r.y1),new n.Point(r.x2,r.y1),new n.Point(r.x2,r.y2),new n.Point(r.x1,r.y2)],n.polygonIntersectsPolygon(y,b)&&(h[i.bucketInstanceId][i.featureIndex]=!0,void 0===c[i.bucketInstanceId]&&(c[i.bucketInstanceId]=[]),c[i.bucketInstanceId].push(i.featureIndex)));return c};w.prototype.insertCollisionBox=function(n,t,i,r,u){var f={bucketInstanceId:i,featureIndex:r,collisionGroupID:u};(t?this.ignoredGrid:this.grid).insert(f,n[0],n[1],n[2],n[3])};w.prototype.insertCollisionCircles=function(n,t,i,r,u){for(var e=t?this.ignoredGrid:this.grid,o={bucketInstanceId:i,featureIndex:r,collisionGroupID:u},f=0;f<n.length;f+=4)e.insertCircle(o,n[f],n[f+1],n[f+2])};w.prototype.projectAnchor=function(n,t,i){var r=[t,i,0,1];return su(r,r,n),{perspectiveRatio:.5+this.transform.cameraToCenterDistance/r[3]*.5,cameraDistance:r[3]}};w.prototype.projectPoint=function(t,i,r){var u=[i,r,0,1];return su(u,u,t),new n.Point((u[0]/u[3]+1)/2*this.transform.width+100,(-u[1]/u[3]+1)/2*this.transform.height+100)};w.prototype.projectAndGetPerspectiveRatio=function(t,i,r){var u=[i,r,0,1];return su(u,u,t),{point:new n.Point((u[0]/u[3]+1)/2*this.transform.width+100,(-u[1]/u[3]+1)/2*this.transform.height+100),perspectiveRatio:.5+this.transform.cameraToCenterDistance/u[3]*.5}};w.prototype.isOffscreen=function(n,t,i,r){return i<100||n>=this.screenRightBoundary||r<100||t>this.screenBottomBoundary};w.prototype.isInsideGrid=function(n,t,i,r){return i>=0&&n<this.gridRightBoundary&&r>=0&&t<this.gridBottomBoundary};hu=function(n,t,i,r){this.opacity=n?Math.max(0,Math.min(1,n.opacity+(n.placed?t:-t))):r&&i?1:0;this.placed=i};hu.prototype.isHidden=function(){return 0===this.opacity&&!this.placed};wt=function(n,t,i,r,u){this.text=new hu(n?n.text:null,t,i,u);this.icon=new hu(n?n.icon:null,t,r,u)};wt.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};ff=function(n,t,i){this.text=n;this.icon=t;this.skipFade=i};ef=function(n){this.crossSourceCollisions=n;this.maxGroupID=0;this.collisionGroups={}};ef.prototype.get=function(n){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[n]){var t=++this.maxGroupID;this.collisionGroups[n]={ID:t,predicate:function(n){return n.collisionGroupID===t}}}return this.collisionGroups[n]};tt=function(n,t,i){this.transform=n.clone();this.collisionIndex=new w(this.transform);this.placements={};this.opacities={};this.stale=!1;this.fadeDuration=t;this.retainedQueryData={};this.collisionGroups=new ef(i)};tt.prototype.placeLayerTile=function(t,i,r,u){var f=i.getBucket(t),s=i.latestFeatureIndex;if(f&&s&&t.id===f.layerIds[0]){var h=i.collisionBoxArray,e=f.layers[0].layout,c=Math.pow(2,this.transform.zoom-i.tileID.overscaledZ),l=i.tileSize/n.EXTENT,o=this.transform.calculatePosMatrix(i.tileID.toUnwrapped()),a=tf(o,"map"===e.get("text-pitch-alignment"),"map"===e.get("text-rotation-alignment"),this.transform,nt(i,1,this.transform.zoom)),v=tf(o,"map"===e.get("icon-pitch-alignment"),"map"===e.get("icon-rotation-alignment"),this.transform,nt(i,1,this.transform.zoom));this.retainedQueryData[f.bucketInstanceId]=new function(n,t,i,r,u){this.bucketInstanceId=n;this.featureIndex=t;this.sourceLayerIndex=i;this.bucketIndex=r;this.tileID=u}(f.bucketInstanceId,s,f.sourceLayerIndex,f.index,i.tileID);this.placeLayerBucket(f,o,a,v,c,l,r,i.holdingForFade(),u,h)}};tt.prototype.placeLayerBucket=function(t,i,r,u,f,e,o,s,h,c){for(var l,tt,it,ot,rt,ut,a=t.layers[0].layout,st=n.evaluateSizeForZoom(t.textSizeData,this.transform.zoom,n.properties.layout.properties["text-size"]),ht=a.get("text-optional"),ct=a.get("icon-optional"),w=this.collisionGroups.get(t.sourceID),g=0,ft=t.symbolInstances;g<ft.length;g+=1)if(l=ft[g],!h[l.crossTileID]){if(s){this.placements[l.crossTileID]=new ff(!1,!1,!1);continue}var v=!1,y=!1,p=!0,k=null,b=null,d=null,nt=0,et=0;l.collisionArrays||(l.collisionArrays=t.deserializeCollisionBoxes(c,l.textBoxStartIndex,l.textBoxEndIndex,l.iconBoxStartIndex,l.iconBoxEndIndex));l.collisionArrays.textFeatureIndex&&(nt=l.collisionArrays.textFeatureIndex);l.collisionArrays.textBox&&(v=(k=this.collisionIndex.placeCollisionBox(l.collisionArrays.textBox,a.get("text-allow-overlap"),e,i,w.predicate)).box.length>0,p=p&&k.offscreen);tt=l.collisionArrays.textCircles;tt&&(it=t.text.placedSymbolArray.get(l.placedTextSymbolIndices[0]),ot=n.evaluateSizeForFeature(t.textSizeData,st,it),b=this.collisionIndex.placeCollisionCircles(tt,a.get("text-allow-overlap"),f,e,l.key,it,t.lineVertexArray,t.glyphOffsetArray,ot,i,r,o,"map"===a.get("text-pitch-alignment"),w.predicate),v=a.get("text-allow-overlap")||b.circles.length>0,p=p&&b.offscreen);l.collisionArrays.iconFeatureIndex&&(et=l.collisionArrays.iconFeatureIndex);l.collisionArrays.iconBox&&(y=(d=this.collisionIndex.placeCollisionBox(l.collisionArrays.iconBox,a.get("icon-allow-overlap"),e,i,w.predicate)).box.length>0,p=p&&d.offscreen);rt=ht||0===l.numGlyphVertices&&0===l.numVerticalGlyphVertices;ut=ct||0===l.numIconVertices;rt||ut?ut?rt||(y=y&&v):v=y&&v:y=v=y&&v;v&&k&&this.collisionIndex.insertCollisionBox(k.box,a.get("text-ignore-placement"),t.bucketInstanceId,nt,w.ID);y&&d&&this.collisionIndex.insertCollisionBox(d.box,a.get("icon-ignore-placement"),t.bucketInstanceId,et,w.ID);v&&b&&this.collisionIndex.insertCollisionCircles(b.circles,a.get("text-ignore-placement"),t.bucketInstanceId,nt,w.ID);this.placements[l.crossTileID]=new ff(v,y,p||t.justReloaded);h[l.crossTileID]=!0}t.justReloaded=!1};tt.prototype.commit=function(n,t){var u,i,f,e,o,c;this.commitTime=t;var r=!1,s=n&&0!==this.fadeDuration?(this.commitTime-n.commitTime)/this.fadeDuration:1,h=n?n.opacities:{};for(u in this.placements)i=this.placements[u],f=h[u],f?(this.opacities[u]=new wt(f,s,i.text,i.icon),r=r||i.text!==f.text.placed||i.icon!==f.icon.placed):(this.opacities[u]=new wt(null,s,i.text,i.icon,i.skipFade),r=r||i.text||i.icon);for(e in h)o=h[e],this.opacities[e]||(c=new wt(o,s,!1,!1),c.isHidden()||(this.opacities[e]=c,r=r||o.text.placed||o.icon.placed));r?this.lastPlacementChangeTime=t:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=n?n.lastPlacementChangeTime:t)};tt.prototype.updateLayerOpacities=function(n,t){for(var i,r,e={},u=0,f=t;u<f.length;u+=1)i=f[u],r=i.getBucket(n),r&&i.latestFeatureIndex&&n.id===r.layerIds[0]&&this.updateBucketOpacities(r,e,i.collisionBoxArray)};tt.prototype.updateBucketOpacities=function(n,t,i){var y,p,o,c,b,k,l,f,s,h,d;n.hasTextData()&&n.text.opacityVertexArray.clear();n.hasIconData()&&n.icon.opacityVertexArray.clear();n.hasCollisionBoxData()&&n.collisionBox.collisionVertexArray.clear();n.hasCollisionCircleData()&&n.collisionCircle.collisionVertexArray.clear();for(var a=n.layers[0].layout,g=new wt(null,0,!1,!1,!0),nt=new wt(null,0,a.get("text-allow-overlap"),a.get("icon-allow-overlap"),!0),e=0;e<n.symbolInstances.length;e++){var r=n.symbolInstances[e],v=t[r.crossTileID],u=this.opacities[r.crossTileID];if(v?u=g:u||(u=nt,this.opacities[r.crossTileID]=u),t[r.crossTileID]=!0,y=r.numGlyphVertices>0||r.numVerticalGlyphVertices>0,p=r.numIconVertices>0,y){for(var tt=uo(u.text),it=(r.numGlyphVertices+r.numVerticalGlyphVertices)/4,w=0;w<it;w++)n.text.opacityVertexArray.emplaceBack(tt);for(o=0,c=r.placedTextSymbolIndices;o<c.length;o+=1)b=c[o],n.text.placedSymbolArray.get(b).hidden=u.text.isHidden()}if(p){for(k=uo(u.icon),l=0;l<r.numIconVertices/4;l++)n.icon.opacityVertexArray.emplaceBack(k);n.icon.placedSymbolArray.get(e).hidden=u.icon.isHidden()}if(r.collisionArrays||(r.collisionArrays=n.deserializeCollisionBoxes(i,r.textBoxStartIndex,r.textBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex)),f=r.collisionArrays,f&&(f.textBox&&n.hasCollisionBoxData()&&of(n.collisionBox.collisionVertexArray,u.text.placed,!1),f.iconBox&&n.hasCollisionBoxData()&&of(n.collisionBox.collisionVertexArray,u.icon.placed,!1),s=f.textCircles,s&&n.hasCollisionCircleData()))for(h=0;h<s.length;h+=5)d=v||0===s[h+4],of(n.collisionCircle.collisionVertexArray,u.text.placed,d)}n.sortFeatures(this.transform.angle);this.retainedQueryData[n.bucketInstanceId]&&(this.retainedQueryData[n.bucketInstanceId].featureSortOrder=n.featureSortOrder);n.hasTextData()&&n.text.opacityVertexBuffer&&n.text.opacityVertexBuffer.updateData(n.text.opacityVertexArray);n.hasIconData()&&n.icon.opacityVertexBuffer&&n.icon.opacityVertexBuffer.updateData(n.icon.opacityVertexArray);n.hasCollisionBoxData()&&n.collisionBox.collisionVertexBuffer&&n.collisionBox.collisionVertexBuffer.updateData(n.collisionBox.collisionVertexArray);n.hasCollisionCircleData()&&n.collisionCircle.collisionVertexBuffer&&n.collisionCircle.collisionVertexBuffer.updateData(n.collisionCircle.collisionVertexArray)};tt.prototype.symbolFadeChange=function(n){return 0===this.fadeDuration?1:(n-this.commitTime)/this.fadeDuration};tt.prototype.hasTransitions=function(n){return this.stale||n-this.lastPlacementChangeTime<this.fadeDuration};tt.prototype.stillRecent=function(n){return"undefined"!==this.commitTime&&this.commitTime+this.fadeDuration>n};tt.prototype.setStale=function(){this.stale=!0};var lh=Math.pow(2,25),ah=Math.pow(2,24),vh=Math.pow(2,17),yh=Math.pow(2,16),ph=Math.pow(2,9),wh=Math.pow(2,8),bh=Math.pow(2,1);sf=function(){this._currentTileIndex=0;this._seenCrossTileIDs={}};sf.prototype.continuePlacement=function(n,t,i,r,u){for(;this._currentTileIndex<n.length;){var f=n[this._currentTileIndex];if(t.placeLayerTile(r,f,i,this._seenCrossTileIDs),this._currentTileIndex++,u())return!0}};vi=function(n,t,i,r,u,f){this.placement=new tt(n,u,f);this._currentPlacementIndex=t.length-1;this._forceFullPlacement=i;this._showCollisionBoxes=r;this._done=!1};vi.prototype.isDone=function(){return this._done};vi.prototype.continuePlacement=function(t,i,r){for(var f,e,u=this,o=n.browser.now(),s=function(){var t=n.browser.now()-o;return!u._forceFullPlacement&&t>2};this._currentPlacementIndex>=0;){if(f=i[t[u._currentPlacementIndex]],e=u.placement.collisionIndex.transform.zoom,"symbol"===f.type&&(!f.minzoom||f.minzoom<=e)&&(!f.maxzoom||f.maxzoom>e)){if(u._inProgressLayer||(u._inProgressLayer=new sf),u._inProgressLayer.continuePlacement(r[f.source],u.placement,u._showCollisionBoxes,f,s))return;delete u._inProgressLayer}u._currentPlacementIndex--}this._done=!0};vi.prototype.commit=function(n,t){return this.placement.commit(n,t),this.placement};fo=256/n.EXTENT;cu=function(n,t,i){var r,e,u,f;for(this.tileID=n,this.indexedSymbolInstances={},this.bucketInstanceId=i,r=0,e=t;r<e.length;r+=1)u=e[r],f=u.key,this.indexedSymbolInstances[f]||(this.indexedSymbolInstances[f]=[]),this.indexedSymbolInstances[f].push({crossTileID:u.crossTileID,coord:this.getScaledCoordinates(u,n)})};cu.prototype.getScaledCoordinates=function(t,i){var f=i.canonical.z-this.tileID.canonical.z,r=fo/Math.pow(2,f),u=t.anchor;return{x:Math.floor((i.canonical.x*n.EXTENT+u.x)*r),y:Math.floor((i.canonical.y*n.EXTENT+u.y)*r)}};cu.prototype.findMatches=function(n,t,i){for(var u,e,r,s=this.tileID.canonical.z<t.canonical.z?1:Math.pow(2,this.tileID.canonical.z-t.canonical.z),f=0,h=n;f<h.length;f+=1)if(u=h[f],!u.crossTileID&&(e=this.indexedSymbolInstances[u.key],e))for(var c=this.getScaledCoordinates(u,t),o=0,l=e;o<l.length;o+=1)if(r=l[o],Math.abs(r.coord.x-c.x)<=s&&Math.abs(r.coord.y-c.y)<=s&&!i[r.crossTileID]){i[r.crossTileID]=!0;u.crossTileID=r.crossTileID;break}};hf=function(){this.maxCrossTileID=0};hf.prototype.generate=function(){return++this.maxCrossTileID};ii=function(){this.indexes={};this.usedCrossTileIDs={};this.lng=0};ii.prototype.handleWrapJump=function(n){var f=Math.round((n-this.lng)/360),i,r,u,e,t;if(0!==f)for(i in this.indexes){r=this.indexes[i];u={};for(e in r)t=r[e],t.tileID=t.tileID.unwrapTo(t.tileID.wrap+f),u[t.tileID.key]=t;this.indexes[i]=u}this.lng=n};ii.prototype.addBucket=function(n,t,i){var r,h,u,f,e,v,c,l,o,a,s;if(this.indexes[n.overscaledZ]&&this.indexes[n.overscaledZ][n.key]){if(this.indexes[n.overscaledZ][n.key].bucketInstanceId===t.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(n.overscaledZ,this.indexes[n.overscaledZ][n.key])}for(r=0,h=t.symbolInstances;r<h.length;r+=1)h[r].crossTileID=0;this.usedCrossTileIDs[n.overscaledZ]||(this.usedCrossTileIDs[n.overscaledZ]={});u=this.usedCrossTileIDs[n.overscaledZ];for(f in this.indexes)if(e=this.indexes[f],Number(f)>n.overscaledZ)for(v in e)c=e[v],c.tileID.isChildOf(n)&&c.findMatches(t.symbolInstances,n,u);else l=e[n.scaledTo(Number(f)).key],l&&l.findMatches(t.symbolInstances,n,u);for(o=0,a=t.symbolInstances;o<a.length;o+=1)s=a[o],s.crossTileID||(s.crossTileID=i.generate(),u[s.crossTileID]=!0);return void 0===this.indexes[n.overscaledZ]&&(this.indexes[n.overscaledZ]={}),this.indexes[n.overscaledZ][n.key]=new cu(n,t.symbolInstances,t.bucketInstanceId),!0};ii.prototype.removeBucketCrossTileIDs=function(n,t){var u,i,r,f;for(u in t.indexedSymbolInstances)for(i=0,r=t.indexedSymbolInstances[u];i<r.length;i+=1)f=r[i],delete this.usedCrossTileIDs[n][f.crossTileID]};ii.prototype.removeStaleBuckets=function(n){var u=!1,r,t,i;for(r in this.indexes){t=this.indexes[r];for(i in t)n[t[i].bucketInstanceId]||(this.removeBucketCrossTileIDs(r,t[i]),delete t[i],u=!0)}return u};yi=function(){this.layerIndexes={};this.crossTileIDs=new hf;this.maxBucketInstanceId=0;this.bucketsInCurrentPlacement={}};yi.prototype.addLayer=function(n,t,i){var u=this.layerIndexes[n.id],f,o,e,s,h,r;for(void 0===u&&(u=this.layerIndexes[n.id]=new ii),f=!1,o={},u.handleWrapJump(i),e=0,s=t;e<s.length;e+=1)h=s[e],r=h.getBucket(n),r&&n.id===r.layerIds[0]&&(r.bucketInstanceId||(r.bucketInstanceId=++this.maxBucketInstanceId),u.addBucket(h.tileID,r,this.crossTileIDs)&&(f=!0),o[r.bucketInstanceId]=!0);return u.removeStaleBuckets(o)&&(f=!0),f};yi.prototype.pruneUnusedLayers=function(n){var t={};for(var i in n.forEach(function(n){t[n]=!0}),this.layerIndexes)t[i]||delete this.layerIndexes[i]};var cf=function(t,i){return n.emitValidationErrors(t,i&&i.filter(function(n){return"source.canvas"!==n.identifier}))},kh=n.pick(r,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),dh=n.pick(r,["setCenter","setZoom","setBearing","setPitch"]),pi=function(t){function i(r,u){var f=this,e;void 0===u&&(u={});t.call(this);this.map=r;this.dispatcher=new gt((nf||(nf=new ht),nf),this);this.imageManager=new k;this.glyphManager=new et(r._transformRequest,u.localIdeographFontFamily);this.lineAtlas=new di(256,512);this.crossTileSymbolIndex=new yi;this._layers={};this._order=[];this.sourceCaches={};this.zoomHistory=new n.ZoomHistory;this._loaded=!1;this._resetUpdates();e=this;this._rtlTextPluginCallback=i.registerForPluginAvailability(function(n){for(var t in e.dispatcher.broadcast("loadRTLTextPlugin",n.pluginURL,n.completionCallback),e.sourceCaches)e.sourceCaches[t].reload()});this.on("data",function(n){var i,t,u,r;if("source"===n.dataType&&"metadata"===n.sourceDataType&&(i=f.sourceCaches[n.sourceId],i&&(t=i.getSource(),t&&t.vectorLayerIds)))for(u in f._layers)r=f._layers[u],r.source===t.id&&f._validateLayer(r)})}return t&&(i.__proto__=t),i.prototype=Object.create(t&&t.prototype),i.prototype.constructor=i,i.prototype.loadURL=function(t,i){var r=this,u,f;void 0===i&&(i={});this.fire(new n.Event("dataloading",{dataType:"style"}));u="boolean"==typeof i.validate?i.validate:!kt(t);t=function(n,t){if(!kt(n))return n;var i=vt(n);return i.path="/styles/v1"+i.path,bi(i,t)}(t,i.accessToken);f=this.map._transformRequest(t,n.ResourceType.Style);this._request=n.getJSON(f,function(t,i){r._request=null;t?r.fire(new n.ErrorEvent(t)):i&&r._load(i,u)})},i.prototype.loadJSON=function(t,i){var r=this;void 0===i&&(i={});this.fire(new n.Event("dataloading",{dataType:"style"}));this._request=n.browser.frame(function(){r._request=null;r._load(t,!1!==i.validate)})},i.prototype._load=function(t,i){var r=this,e,o,f,s,u;if(!i||!cf(this,n.validateStyle(t))){for(e in this._loaded=!0,this.stylesheet=t,t.sources)r.addSource(e,t.sources[e],{validate:!1});for(t.sprite?this._spriteRequest=function(t,i,r){function c(){var o,i,e;if(u)r(u);else if(f&&s){o=n.browser.getImageData(s);i={};for(e in f){var t=f[e],h=t.width,c=t.height,a=t.x,v=t.y,y=t.sdf,p=t.pixelRatio,l=new n.RGBAImage({width:h,height:c});n.RGBAImage.copy(o,l,{x:a,y:v},{x:0,y:0},{width:h,height:c});i[e]={data:l,pixelRatio:p,sdf:y}}r(null,i)}}var f,s,u,h=n.browser.devicePixelRatio>1?"@2x":"",e=n.getJSON(i(ne(t,h,".json"),n.ResourceType.SpriteJSON),function(n,t){e=null;u||(u=n,f=t,c())}),o=n.getImage(i(ne(t,h,".png"),n.ResourceType.SpriteImage),function(n,t){o=null;u||(u=n,s=t,c())});return{cancel:function(){e&&(e.cancel(),e=null);o&&(o.cancel(),o=null)}}}(t.sprite,this.map._transformRequest,function(t,i){if(r._spriteRequest=null,t)r.fire(new n.ErrorEvent(t));else if(i)for(var u in i)r.imageManager.addImage(u,i[u]);r.imageManager.setLoaded(!0);r.fire(new n.Event("data",{dataType:"style"}))}):this.imageManager.setLoaded(!0),this.glyphManager.setURL(t.glyphs),o=ye(this.stylesheet.layers),this._order=o.map(function(n){return n.id}),this._layers={},f=0,s=o;f<s.length;f+=1)u=s[f],(u=n.createStyleLayer(u)).setEventedParent(r,{layer:{id:u.id}}),r._layers[u.id]=u;this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order));this.light=new ys(this.stylesheet.light);this.fire(new n.Event("data",{dataType:"style"}));this.fire(new n.Event("style.load"))}},i.prototype._validateLayer=function(t){var u=this.sourceCaches[t.source],r,i;u&&(r=t.sourceLayer,r&&(i=u.getSource(),("geojson"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(r))&&this.fire(new n.ErrorEvent(new Error('Source layer "'+r+'" does not exist on source "'+i.id+'" as specified by style layer "'+t.id+'"')))))},i.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var n in this.sourceCaches)if(!this.sourceCaches[n].loaded())return!1;return!!this.imageManager.isLoaded()},i.prototype._serializeLayers=function(n){var t=this;return n.map(function(n){return t._layers[n].serialize()})},i.prototype.hasTransitions=function(){var n,t;if(this.light&&this.light.hasTransition())return!0;for(n in this.sourceCaches)if(this.sourceCaches[n].hasTransition())return!0;for(t in this._layers)if(this._layers[t].hasTransition())return!0;return!1},i.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading");},i.prototype.update=function(t){var f,e,r,o,h,c,u,s,l,i;if(this._loaded){if(this._changed){f=Object.keys(this._updatedLayers);e=Object.keys(this._removedLayers);for(r in(f.length||e.length)&&this._updateWorkerLayers(f,e),this._updatedSources)o=this._updatedSources[r],"reload"===o?this._reloadSource(r):"clear"===o&&this._clearSource(r);for(h in this._updatedPaintProps)this._layers[h].updateTransitions(t);this.light.updateTransitions(t);this._resetUpdates();this.fire(new n.Event("data",{dataType:"style"}))}for(c in this.sourceCaches)this.sourceCaches[c].used=!1;for(u=0,s=this._order;u<s.length;u+=1)l=s[u],i=this._layers[l],i.recalculate(t),!i.isHidden(t.zoom)&&i.source&&(this.sourceCaches[i.source].used=!0);this.light.recalculate(t);this.z=t.zoom}},i.prototype._updateWorkerLayers=function(n,t){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(n),removedIds:t})},i.prototype._resetUpdates=function(){this._changed=!1;this._updatedLayers={};this._removedLayers={};this._updatedSources={};this._updatedPaintProps={}},i.prototype.setState=function(t){var u=this,i,r;if((this._checkLoaded(),cf(this,n.validateStyle(t)))||((t=n.clone(t)).layers=ye(t.layers),i=oh(this.serialize(),t).filter(function(n){return!(n.command in dh)}),0===i.length))return!1;if(r=i.filter(function(n){return!(n.command in kh)}),r.length>0)throw new Error("Unimplemented: "+r.map(function(n){return n.command}).join(", ")+".");return i.forEach(function(n){"setTransition"!==n.command&&u[n.command].apply(u,n.args)}),this.stylesheet=t,!0},i.prototype.addImage=function(t,i){if(this.getImage(t))return this.fire(new n.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(t,i);this.fire(new n.Event("data",{dataType:"style"}))},i.prototype.getImage=function(n){return this.imageManager.getImage(n)},i.prototype.removeImage=function(t){if(!this.getImage(t))return this.fire(new n.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(t);this.fire(new n.Event("data",{dataType:"style"}))},i.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},i.prototype.addSource=function(t,i,r){var f=this,u;if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error("There is already a source with this ID");if(!i.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(i).join(", ")+".");["vector","raster","geojson","video","image"].indexOf(i.type)>=0&&this._validate(n.validateStyle.source,"sources."+t,i,null,r)||(this.map&&this.map._collectResourceTiming&&(i.collectResourceTiming=!0),u=this.sourceCaches[t]=new ti(t,i,this.dispatcher),u.style=this,u.setEventedParent(this,function(){return{isSourceLoaded:f.loaded(),source:u.serialize(),sourceId:t}}),u.onAdd(this.map),this._changed=!0)},i.prototype.removeSource=function(t){var r,i;if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error("There is no source with this ID");for(r in this._layers)if(this._layers[r].source===t)return this.fire(new n.ErrorEvent(new Error('Source "'+t+'" cannot be removed while layer "'+r+'" is using it.')));i=this.sourceCaches[t];delete this.sourceCaches[t];delete this._updatedSources[t];i.fire(new n.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:t}));i.setEventedParent(null);i.clearTiles();i.onRemove&&i.onRemove(this.map);this._changed=!0},i.prototype.setGeoJSONSourceData=function(n,t){this._checkLoaded();this.sourceCaches[n].getSource().setData(t);this._changed=!0},i.prototype.getSource=function(n){return this.sourceCaches[n]&&this.sourceCaches[n].getSource()},i.prototype.addLayer=function(t,i,r){var u,f,e,o;this._checkLoaded();u=t.id;this.getLayer(u)?this.fire(new n.ErrorEvent(new Error('Layer with id "'+u+'" already exists on this map'))):("object"==typeof t.source&&(this.addSource(u,t.source),t=n.clone(t),t=n.extend(t,{source:u})),this._validate(n.validateStyle.layer,"layers."+u,t,{arrayIndex:-1},r))||(f=n.createStyleLayer(t),this._validateLayer(f),f.setEventedParent(this,{layer:{id:u}}),e=i?this._order.indexOf(i):this._order.length,i&&-1===e?this.fire(new n.ErrorEvent(new Error('Layer with id "'+i+'" does not exist on this map.'))):((this._order.splice(e,0,u),this._layerOrderChanged=!0,this._layers[u]=f,this._removedLayers[u]&&f.source)&&(o=this._removedLayers[u],delete this._removedLayers[u],o.type!==f.type?this._updatedSources[f.source]="clear":(this._updatedSources[f.source]="reload",this.sourceCaches[f.source].pause())),this._updateLayer(f)))},i.prototype.moveLayer=function(t,i){var u,r;(this._checkLoaded(),this._changed=!0,this._layers[t])?t!==i&&(u=this._order.indexOf(t),this._order.splice(u,1),r=i?this._order.indexOf(i):this._order.length,i&&-1===r?this.fire(new n.ErrorEvent(new Error('Layer with id "'+i+'" does not exist on this map.'))):(this._order.splice(r,0,t),this._layerOrderChanged=!0)):this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be moved.")))},i.prototype.removeLayer=function(t){var i,r;this._checkLoaded();i=this._layers[t];i?(i.setEventedParent(null),r=this._order.indexOf(t),this._order.splice(r,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=i,delete this._layers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t]):this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be removed.")))},i.prototype.getLayer=function(n){return this._layers[n]},i.prototype.setLayerZoomRange=function(t,i,r){this._checkLoaded();var u=this.getLayer(t);u?u.minzoom===i&&u.maxzoom===r||(null!=i&&(u.minzoom=i),null!=r&&(u.maxzoom=r),this._updateLayer(u)):this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot have zoom extent.")))},i.prototype.setFilter=function(t,i){this._checkLoaded();var r=this.getLayer(t);if(r){if(!n.deepEqual(r.filter,i))return null==i?(r.filter=void 0,void this._updateLayer(r)):void(this._validate(n.validateStyle.filter,"layers."+r.id+".filter",i)||(r.filter=n.clone(i),this._updateLayer(r)))}else this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be filtered.")))},i.prototype.getFilter=function(t){return n.clone(this.getLayer(t).filter)},i.prototype.setLayoutProperty=function(t,i,r){this._checkLoaded();var u=this.getLayer(t);u?n.deepEqual(u.getLayoutProperty(i),r)||(u.setLayoutProperty(i,r),this._updateLayer(u)):this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},i.prototype.getLayoutProperty=function(n,t){return this.getLayer(n).getLayoutProperty(t)},i.prototype.setPaintProperty=function(t,i,r){this._checkLoaded();var u=this.getLayer(t);u?n.deepEqual(u.getPaintProperty(i),r)||(u.setPaintProperty(i,r)&&this._updateLayer(u),this._changed=!0,this._updatedPaintProps[t]=!0):this.fire(new n.ErrorEvent(new Error("The layer '"+t+"' does not exist in the map's style and cannot be styled.")))},i.prototype.getPaintProperty=function(n,t){return this.getLayer(n).getPaintProperty(t)},i.prototype.setFeatureState=function(t,i){this._checkLoaded();var u=t.source,f=t.sourceLayer,r=this.sourceCaches[u];void 0!==r?"vector"!==r.getSource().type||f?null!=t.id&&""!==t.id?r.setFeatureState(f,t.id,i):this.fire(new n.ErrorEvent(new Error("The feature id parameter must be provided."))):this.fire(new n.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types."))):this.fire(new n.ErrorEvent(new Error("The source '"+u+"' does not exist in the map's style.")))},i.prototype.getFeatureState=function(t){this._checkLoaded();var r=t.source,u=t.sourceLayer,i=this.sourceCaches[r];if(void 0!==i){if("vector"!==i.getSource().type||u)return i.getFeatureState(u,t.id);this.fire(new n.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new n.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},i.prototype.getTransition=function(){return n.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},i.prototype.serialize=function(){var t=this;return n.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:n.mapObject(this.sourceCaches,function(n){return n.serialize()}),layers:this._order.map(function(n){return t._layers[n].serialize()})},function(n){return void 0!==n})},i.prototype._updateLayer=function(n){this._updatedLayers[n.id]=!0;n.source&&!this._updatedSources[n.source]&&(this._updatedSources[n.source]="reload",this.sourceCaches[n.source].pause());this._changed=!0},i.prototype._flattenRenderedFeatures=function(n){for(var f,i,e,s,r=[],t=this._order.length-1;t>=0;t--)for(var h=this._order[t],u=0,o=n;u<o.length;u+=1)if(f=o[u][h],f)for(i=0,e=f;i<e.length;i+=1)s=e[i],r.push(s);return r},i.prototype.queryRenderedFeatures=function(t,i,r){var e,u,o,s,h,f,l,c;if(i&&i.filter&&this._validate(n.validateStyle.filter,"queryRenderedFeatures.filter",i.filter),e={},i&&i.layers){if(!Array.isArray(i.layers))return this.fire(new n.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(u=0,o=i.layers;u<o.length;u+=1){if(s=o[u],h=this._layers[s],!h)return this.fire(new n.ErrorEvent(new Error("The layer '"+s+"' does not exist in the map's style and cannot be queried for features."))),[];e[h.source]=!0}}f=[];l=t.map(function(n){return r.pointCoordinate(n)});for(c in this.sourceCaches)i.layers&&!e[c]||f.push(nh(this.sourceCaches[c],this._layers,l,i,r));return this.placement&&f.push(function(n,t,i,r,u,f){for(var a,y,p,e={},c=u.queryRenderedSymbols(i),o=[],s=0,l=Object.keys(c).map(Number);s<l.length;s+=1)a=l[s],o.push(f[a]);o.sort(he);for(var w=function(){var t=v[h],s=t.featureIndex.lookupSymbolFeatures(c[t.bucketInstanceId],t.bucketIndex,t.sourceLayerIndex,r.filter,r.layers,n),i,l,f,u,o,a;for(i in s)for(l=e[i]=e[i]||[],f=s[i],f.sort(function(n,i){var r=t.featureSortOrder,u;return r?(u=r.indexOf(n.featureIndex),r.indexOf(i.featureIndex)-u):i.featureIndex-n.featureIndex}),u=0,o=f;u<o.length;u+=1)a=o[u],l.push(a.feature)},h=0,v=o;h<v.length;h+=1)w();y=function(i){e[i].forEach(function(r){var u=n[i],f=t[u.source].getFeatureState(r.layer["source-layer"],r.id);r.source=r.layer.source;r.layer["source-layer"]&&(r.sourceLayer=r.layer["source-layer"]);r.state=f})};for(p in e)y(p);return e}(this._layers,this.sourceCaches,t,i,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenRenderedFeatures(f)},i.prototype.querySourceFeatures=function(t,i){i&&i.filter&&this._validate(n.validateStyle.filter,"querySourceFeatures.filter",i.filter);var r=this.sourceCaches[t];return r?function(n,t){for(var r,u,f=n.getRenderableIds().map(function(t){return n.getTileByID(t)}),e=[],o={},i=0;i<f.length;i++)r=f[i],u=r.tileID.canonical.key,o[u]||(o[u]=!0,r.querySourceFeatures(e,t));return e}(r,i):[]},i.prototype.addSourceType=function(n,t,r){return i.getSourceType(n)?r(new Error('A source type called "'+n+'" already exists.')):(i.setSourceType(n,t),t.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:n,url:t.workerSourceURL},r):r(null,null))},i.prototype.getLight=function(){return this.light.getLight()},i.prototype.setLight=function(t){var u,i,r,f;this._checkLoaded();u=this.light.getLight();i=!1;for(r in t)if(!n.deepEqual(t[r],u[r])){i=!0;break}i&&(f={now:n.browser.now(),transition:n.extend({duration:300,delay:0},this.stylesheet.transition)},this.light.setLight(t),this.light.updateTransitions(f))},i.prototype._validate=function(t,i,r,u,f){return(!f||!1!==f.validate)&&cf(this,t.call(n.validateStyle,n.extend({key:i,style:this.serialize(),value:r,styleSpec:n.styleSpec},u)))},i.prototype._remove=function(){for(var t in this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),n.evented.off("pluginAvailable",this._rtlTextPluginCallback),this.sourceCaches)this.sourceCaches[t].clearTiles();this.dispatcher.remove()},i.prototype._clearSource=function(n){this.sourceCaches[n].clearTiles()},i.prototype._reloadSource=function(n){this.sourceCaches[n].resume();this.sourceCaches[n].reload()},i.prototype._updateSources=function(n){for(var t in this.sourceCaches)this.sourceCaches[t].update(n)},i.prototype._generateCollisionBoxes=function(){for(var n in this.sourceCaches)this._reloadSource(n)},i.prototype._updatePlacement=function(t,i,r,u){for(var w,f,l,b,a,s,v,k,h,o=!1,y=!1,e={},c=0,p=this._order;c<p.length;c+=1)w=p[c],f=this._layers[w],"symbol"===f.type&&(e[f.source]||(l=this.sourceCaches[f.source],e[f.source]=l.getRenderableIds(!0).map(function(n){return l.getTileByID(n)}).sort(function(n,t){return t.tileID.overscaledZ-n.tileID.overscaledZ||(n.tileID.isLessThan(t.tileID)?-1:1)})),b=this.crossTileSymbolIndex.addLayer(f,e[f.source],t.center.lng),o=o||b);if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),a=this._layerOrderChanged,(a||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(n.browser.now()))&&(this.pauseablePlacement=new vi(t,this._order,a,i,r,u),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,e),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(this.placement,n.browser.now()),y=!0),o&&this.pauseablePlacement.placement.setStale()),y||o)for(s=0,v=this._order;s<v.length;s+=1)k=v[s],h=this._layers[k],"symbol"===h.type&&this.placement.updateLayerOpacities(h,e[h.source]);return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(n.browser.now())},i.prototype._releaseSymbolFadeTiles=function(){for(var n in this.sourceCaches)this.sourceCaches[n].releaseSymbolFadeTiles()},i.prototype.getImages=function(n,t,i){this.imageManager.getImages(t.icons,i)},i.prototype.getGlyphs=function(n,t,i){this.glyphManager.getGlyphs(t.stacks,i)},i}(n.Evented);pi.getSourceType=function(n){return du[n]};pi.setSourceType=function(n,t){du[n]=t};pi.registerForPluginAvailability=n.registerForPluginAvailability;var lu=n.createLayout([{name:"a_pos",type:"Int16",components:2}]),lf={prelude:{fragmentSource:"#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n",vertexSource:"#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif\n\n// Unpack a pair of values that have been packed into a single float.\n// The packed values are assumed to be 8-bit unsigned integers, and are\n// packed like so:\n// packedValue = floor(input[0]) * 256 + input[1],\nvec2 unpack_float(const float packedValue) {\n    int packedIntValue = int(packedValue);\n    int v0 = packedIntValue / 256;\n    return vec2(v0, packedIntValue - v0 * 256);\n}\n\nvec2 unpack_opacity(const float packedOpacity) {\n    int intOpacity = int(packedOpacity) / 2;\n    return vec2(float(intOpacity) / 127.0, mod(packedOpacity, 2.0));\n}\n\n// To minimize the number of attributes needed, we encode a 4-component\n// color into a pair of floats (i.e. a vec2) as follows:\n// [ floor(color.r * 255) * 256 + color.g * 255,\n//   floor(color.b * 255) * 256 + color.g * 255 ]\nvec4 decode_color(const vec2 encodedColor) {\n    return vec4(\n        unpack_float(encodedColor[0]) / 255.0,\n        unpack_float(encodedColor[1]) / 255.0\n    );\n}\n\n// Unpack a pair of paint values and interpolate between them.\nfloat unpack_mix_vec2(const vec2 packedValue, const float t) {\n    return mix(packedValue[0], packedValue[1], t);\n}\n\n// Unpack a pair of paint values and interpolate between them.\nvec4 unpack_mix_vec4(const vec4 packedColors, const float t) {\n    vec4 minColor = decode_color(vec2(packedColors[0], packedColors[1]));\n    vec4 maxColor = decode_color(vec2(packedColors[2], packedColors[3]));\n    return mix(minColor, maxColor, t);\n}\n\n// The offset depends on how many pixels are between the world origin and the edge of the tile:\n// vec2 offset = mod(pixel_coord, size)\n//\n// At high zoom levels there are a ton of pixels between the world origin and the edge of the tile.\n// The glsl spec only guarantees 16 bits of precision for highp floats. We need more than that.\n//\n// The pixel_coord is passed in as two 16 bit values:\n// pixel_coord_upper = floor(pixel_coord / 2^16)\n// pixel_coord_lower = mod(pixel_coord, 2^16)\n//\n// The offset is calculated in a series of steps that should preserve this precision:\nvec2 get_pattern_pos(const vec2 pixel_coord_upper, const vec2 pixel_coord_lower,\n    const vec2 pattern_size, const float tile_units_to_pixels, const vec2 pos) {\n\n    vec2 offset = mod(mod(mod(pixel_coord_upper, pattern_size) * 256.0, pattern_size) * 256.0 + pixel_coord_lower, pattern_size);\n    return (tile_units_to_pixels * pos + offset) / pattern_size;\n}\n"},background:{fragmentSource:"uniform vec4 u_color;\nuniform float u_opacity;\n\nvoid main() {\n    gl_FragColor = u_color * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},backgroundPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform vec2 u_texsize;\nuniform float u_mix;\nuniform float u_opacity;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\nvoid main() {\n    vec2 imagecoord = mod(v_pos_a, 1.0);\n    vec2 pos = mix(u_pattern_tl_a / u_texsize, u_pattern_br_a / u_texsize, imagecoord);\n    vec4 color1 = texture2D(u_image, pos);\n\n    vec2 imagecoord_b = mod(v_pos_b, 1.0);\n    vec2 pos2 = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, imagecoord_b);\n    vec4 color2 = texture2D(u_image, pos2);\n\n    gl_FragColor = mix(color1, color2, u_mix) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n    v_pos_a = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_a * u_pattern_size_a, u_tile_units_to_pixels, a_pos);\n    v_pos_b = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_b * u_pattern_size_b, u_tile_units_to_pixels, a_pos);\n}\n"},circle:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec3 v_data;\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize mediump float radius\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize highp vec4 stroke_color\n    #pragma mapbox: initialize mediump float stroke_width\n    #pragma mapbox: initialize lowp float stroke_opacity\n\n    vec2 extrude = v_data.xy;\n    float extrude_length = length(extrude);\n\n    lowp float antialiasblur = v_data.z;\n    float antialiased_blur = -max(blur, antialiasblur);\n\n    float opacity_t = smoothstep(0.0, antialiased_blur, extrude_length - 1.0);\n\n    float color_t = stroke_width < 0.01 ? 0.0 : smoothstep(\n        antialiased_blur,\n        0.0,\n        extrude_length - radius / (radius + stroke_width)\n    );\n\n    gl_FragColor = opacity_t * mix(color * opacity, stroke_color * stroke_opacity, color_t);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform bool u_scale_with_map;\nuniform bool u_pitch_with_map;\nuniform vec2 u_extrude_scale;\nuniform highp float u_camera_to_center_distance;\n\nattribute vec2 a_pos;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\n\nvarying vec3 v_data;\n\nvoid main(void) {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize mediump float radius\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize highp vec4 stroke_color\n    #pragma mapbox: initialize mediump float stroke_width\n    #pragma mapbox: initialize lowp float stroke_opacity\n\n    // unencode the extrusion vector that we snuck into the a_pos vector\n    vec2 extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n    // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n    // in extrusion data\n    vec2 circle_center = floor(a_pos * 0.5);\n    if (u_pitch_with_map) {\n        vec2 corner_position = circle_center;\n        if (u_scale_with_map) {\n            corner_position += extrude * (radius + stroke_width) * u_extrude_scale;\n        } else {\n            // Pitching the circle with the map effectively scales it with the map\n            // To counteract the effect for pitch-scale: viewport, we rescale the\n            // whole circle based on the pitch scaling effect at its central point\n            vec4 projected_center = u_matrix * vec4(circle_center, 0, 1);\n            corner_position += extrude * (radius + stroke_width) * u_extrude_scale * (projected_center.w / u_camera_to_center_distance);\n        }\n\n        gl_Position = u_matrix * vec4(corner_position, 0, 1);\n    } else {\n        gl_Position = u_matrix * vec4(circle_center, 0, 1);\n\n        if (u_scale_with_map) {\n            gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * u_camera_to_center_distance;\n        } else {\n            gl_Position.xy += extrude * (radius + stroke_width) * u_extrude_scale * gl_Position.w;\n        }\n    }\n\n    // This is a minimum blur distance that serves as a faux-antialiasing for\n    // the circle. since blur is a ratio of the circle's size and the intent is\n    // to keep the blur at roughly 1px, the two are inversely related.\n    lowp float antialiasblur = 1.0 / DEVICE_PIXEL_RATIO / (radius + stroke_width);\n\n    v_data = vec3(extrude.x, extrude.y, antialiasblur);\n}\n"},clippingMask:{fragmentSource:"void main() {\n    gl_FragColor = vec4(1.0);\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},heatmap:{fragmentSource:"#pragma mapbox: define highp float weight\n\nuniform highp float u_intensity;\nvarying vec2 v_extrude;\n\n// Gaussian kernel coefficient: 1 / sqrt(2 * PI)\n#define GAUSS_COEF 0.3989422804014327\n\nvoid main() {\n    #pragma mapbox: initialize highp float weight\n\n    // Kernel density estimation with a Gaussian kernel of size 5x5\n    float d = -0.5 * 3.0 * 3.0 * dot(v_extrude, v_extrude);\n    float val = weight * u_intensity * GAUSS_COEF * exp(d);\n\n    gl_FragColor = vec4(val, 1.0, 1.0, 1.0);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\n\nuniform mat4 u_matrix;\nuniform float u_extrude_scale;\nuniform float u_opacity;\nuniform float u_intensity;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_extrude;\n\n// Effective \"0\" in the kernel density texture to adjust the kernel size to;\n// this empirically chosen number minimizes artifacts on overlapping kernels\n// for typical heatmap cases (assuming clustered source)\nconst highp float ZERO = 1.0 / 255.0 / 16.0;\n\n// Gaussian kernel coefficient: 1 / sqrt(2 * PI)\n#define GAUSS_COEF 0.3989422804014327\n\nvoid main(void) {\n    #pragma mapbox: initialize highp float weight\n    #pragma mapbox: initialize mediump float radius\n\n    // unencode the extrusion vector that we snuck into the a_pos vector\n    vec2 unscaled_extrude = vec2(mod(a_pos, 2.0) * 2.0 - 1.0);\n\n    // This 'extrude' comes in ranging from [-1, -1], to [1, 1].  We'll use\n    // it to produce the vertices of a square mesh framing the point feature\n    // we're adding to the kernel density texture.  We'll also pass it as\n    // a varying, so that the fragment shader can determine the distance of\n    // each fragment from the point feature.\n    // Before we do so, we need to scale it up sufficiently so that the\n    // kernel falls effectively to zero at the edge of the mesh.\n    // That is, we want to know S such that\n    // weight * u_intensity * GAUSS_COEF * exp(-0.5 * 3.0^2 * S^2) == ZERO\n    // Which solves to:\n    // S = sqrt(-2.0 * log(ZERO / (weight * u_intensity * GAUSS_COEF))) / 3.0\n    float S = sqrt(-2.0 * log(ZERO / weight / u_intensity / GAUSS_COEF)) / 3.0;\n\n    // Pass the varying in units of radius\n    v_extrude = S * unscaled_extrude;\n\n    // Scale by radius and the zoom-based scale factor to produce actual\n    // mesh position\n    vec2 extrude = v_extrude * radius * u_extrude_scale;\n\n    // multiply a_pos by 0.5, since we had it * 2 in order to sneak\n    // in extrusion data\n    vec4 pos = vec4(floor(a_pos * 0.5) + extrude, 0, 1);\n\n    gl_Position = u_matrix * pos;\n}\n"},heatmapTexture:{fragmentSource:"uniform sampler2D u_image;\nuniform sampler2D u_color_ramp;\nuniform float u_opacity;\nvarying vec2 v_pos;\n\nvoid main() {\n    float t = texture2D(u_image, v_pos).r;\n    vec4 color = texture2D(u_color_ramp, vec2(t, 0.5));\n    gl_FragColor = color * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\n\n    v_pos.x = a_pos.x;\n    v_pos.y = 1.0 - a_pos.y;\n}\n"},collisionBox:{fragmentSource:"\nvarying float v_placed;\nvarying float v_notUsed;\n\nvoid main() {\n\n    float alpha = 0.5;\n\n    // Red = collision, hide label\n    gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n\n    // Blue = no collision, label is showing\n    if (v_placed > 0.5) {\n        gl_FragColor = vec4(0.0, 0.0, 1.0, 0.5) * alpha;\n    }\n\n    if (v_notUsed > 0.5) {\n        // This box not used, fade it out\n        gl_FragColor *= .1;\n    }\n}",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_anchor_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_placed;\n\nuniform mat4 u_matrix;\nuniform vec2 u_extrude_scale;\nuniform float u_camera_to_center_distance;\n\nvarying float v_placed;\nvarying float v_notUsed;\n\nvoid main() {\n    vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\n    highp float camera_to_anchor_distance = projectedPoint.w;\n    highp float collision_perspective_ratio = clamp(\n        0.5 + 0.5 * (u_camera_to_center_distance / camera_to_anchor_distance),\n        0.0, // Prevents oversized near-field boxes in pitched/overzoomed tiles\n        4.0);\n\n    gl_Position = u_matrix * vec4(a_pos, 0.0, 1.0);\n    gl_Position.xy += a_extrude * u_extrude_scale * gl_Position.w * collision_perspective_ratio;\n\n    v_placed = a_placed.x;\n    v_notUsed = a_placed.y;\n}\n"},collisionCircle:{fragmentSource:"uniform float u_overscale_factor;\n\nvarying float v_placed;\nvarying float v_notUsed;\nvarying float v_radius;\nvarying vec2 v_extrude;\nvarying vec2 v_extrude_scale;\n\nvoid main() {\n    float alpha = 0.5;\n\n    // Red = collision, hide label\n    vec4 color = vec4(1.0, 0.0, 0.0, 1.0) * alpha;\n\n    // Blue = no collision, label is showing\n    if (v_placed > 0.5) {\n        color = vec4(0.0, 0.0, 1.0, 0.5) * alpha;\n    }\n\n    if (v_notUsed > 0.5) {\n        // This box not used, fade it out\n        color *= .2;\n    }\n\n    float extrude_scale_length = length(v_extrude_scale);\n    float extrude_length = length(v_extrude) * extrude_scale_length;\n    float stroke_width = 15.0 * extrude_scale_length / u_overscale_factor;\n    float radius = v_radius * extrude_scale_length;\n\n    float distance_to_edge = abs(extrude_length - radius);\n    float opacity_t = smoothstep(-stroke_width, 0.0, -distance_to_edge);\n\n    gl_FragColor = opacity_t * color;\n}\n",vertexSource:"attribute vec2 a_pos;\nattribute vec2 a_anchor_pos;\nattribute vec2 a_extrude;\nattribute vec2 a_placed;\n\nuniform mat4 u_matrix;\nuniform vec2 u_extrude_scale;\nuniform float u_camera_to_center_distance;\n\nvarying float v_placed;\nvarying float v_notUsed;\nvarying float v_radius;\n\nvarying vec2 v_extrude;\nvarying vec2 v_extrude_scale;\n\nvoid main() {\n    vec4 projectedPoint = u_matrix * vec4(a_anchor_pos, 0, 1);\n    highp float camera_to_anchor_distance = projectedPoint.w;\n    highp float collision_perspective_ratio = clamp(\n        0.5 + 0.5 * (u_camera_to_center_distance / camera_to_anchor_distance),\n        0.0, // Prevents oversized near-field circles in pitched/overzoomed tiles\n        4.0);\n\n    gl_Position = u_matrix * vec4(a_pos, 0.0, 1.0);\n\n    highp float padding_factor = 1.2; // Pad the vertices slightly to make room for anti-alias blur\n    gl_Position.xy += a_extrude * u_extrude_scale * padding_factor * gl_Position.w * collision_perspective_ratio;\n\n    v_placed = a_placed.x;\n    v_notUsed = a_placed.y;\n    v_radius = abs(a_extrude.y); // We don't pitch the circles, so both units of the extrusion vector are equal in magnitude to the radius\n\n    v_extrude = a_extrude * padding_factor;\n    v_extrude_scale = u_extrude_scale * u_camera_to_center_distance * collision_perspective_ratio;\n}\n"},debug:{fragmentSource:"uniform highp vec4 u_color;\n\nvoid main() {\n    gl_FragColor = u_color;\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fill:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float opacity\n\n    gl_FragColor = color * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float opacity\n\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n}\n"},fillOutline:{fragmentSource:"#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_pos;\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 outline_color\n    #pragma mapbox: initialize lowp float opacity\n\n    float dist = length(v_pos - gl_FragCoord.xy);\n    float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n    gl_FragColor = outline_color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"attribute vec2 a_pos;\n\nuniform mat4 u_matrix;\nuniform vec2 u_world;\n\nvarying vec2 v_pos;\n\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 outline_color\n    #pragma mapbox: initialize lowp float opacity\n\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n    v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillOutlinePattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform vec2 u_texsize;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    vec2 imagecoord = mod(v_pos_a, 1.0);\n    vec2 pos = mix(u_pattern_tl_a / u_texsize, u_pattern_br_a / u_texsize, imagecoord);\n    vec4 color1 = texture2D(u_image, pos);\n\n    vec2 imagecoord_b = mod(v_pos_b, 1.0);\n    vec2 pos2 = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, imagecoord_b);\n    vec4 color2 = texture2D(u_image, pos2);\n\n    // find distance to outline for alpha interpolation\n\n    float dist = length(v_pos - gl_FragCoord.xy);\n    float alpha = 1.0 - smoothstep(0.0, 1.0, dist);\n\n\n    gl_FragColor = mix(color1, color2, u_mix) * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec2 v_pos;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n    v_pos_a = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_a * u_pattern_size_a, u_tile_units_to_pixels, a_pos);\n    v_pos_b = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_b * u_pattern_size_b, u_tile_units_to_pixels, a_pos);\n\n    v_pos = (gl_Position.xy / gl_Position.w + 1.0) / 2.0 * u_world;\n}\n"},fillPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform vec2 u_texsize;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    vec2 imagecoord = mod(v_pos_a, 1.0);\n    vec2 pos = mix(u_pattern_tl_a / u_texsize, u_pattern_br_a / u_texsize, imagecoord);\n    vec4 color1 = texture2D(u_image, pos);\n\n    vec2 imagecoord_b = mod(v_pos_b, 1.0);\n    vec2 pos2 = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, imagecoord_b);\n    vec4 color2 = texture2D(u_image, pos2);\n\n    gl_FragColor = mix(color1, color2, u_mix) * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\n\nattribute vec2 a_pos;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\n\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n\n    v_pos_a = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_a * u_pattern_size_a, u_tile_units_to_pixels, a_pos);\n    v_pos_b = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_b * u_pattern_size_b, u_tile_units_to_pixels, a_pos);\n}\n"},fillExtrusion:{fragmentSource:"varying vec4 v_color;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n    #pragma mapbox: initialize lowp float base\n    #pragma mapbox: initialize lowp float height\n    #pragma mapbox: initialize highp vec4 color\n\n    gl_FragColor = v_color;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec4 a_normal_ed;\n\nvarying vec4 v_color;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\n#pragma mapbox: define highp vec4 color\n\nvoid main() {\n    #pragma mapbox: initialize lowp float base\n    #pragma mapbox: initialize lowp float height\n    #pragma mapbox: initialize highp vec4 color\n\n    vec3 normal = a_normal_ed.xyz;\n\n    base = max(0.0, base);\n    height = max(0.0, height);\n\n    float t = mod(normal.x, 2.0);\n\n    gl_Position = u_matrix * vec4(a_pos, t > 0.0 ? height : base, 1);\n\n    // Relative luminance (how dark/bright is the surface color?)\n    float colorvalue = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\n\n    v_color = vec4(0.0, 0.0, 0.0, 1.0);\n\n    // Add slight ambient lighting so no extrusions are totally black\n    vec4 ambientlight = vec4(0.03, 0.03, 0.03, 1.0);\n    color += ambientlight;\n\n    // Calculate cos(theta), where theta is the angle between surface normal and diffuse light ray\n    float directional = clamp(dot(normal / 16384.0, u_lightpos), 0.0, 1.0);\n\n    // Adjust directional so that\n    // the range of values for highlight/shading is narrower\n    // with lower light intensity\n    // and with lighter/brighter surface colors\n    directional = mix((1.0 - u_lightintensity), max((1.0 - colorvalue + u_lightintensity), 1.0), directional);\n\n    // Add gradient along z axis of side surfaces\n    if (normal.y != 0.0) {\n        directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n    }\n\n    // Assign final color based on surface + ambient light color, diffuse light directional, and light color\n    // with lower bounds adjusted to hue of light\n    // so that shading is tinted with the complementary (opposite) color to the light color\n    v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);\n    v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);\n    v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);\n}\n"},fillExtrusionPattern:{fragmentSource:"uniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform vec2 u_texsize;\nuniform float u_mix;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n    #pragma mapbox: initialize lowp float base\n    #pragma mapbox: initialize lowp float height\n\n    vec2 imagecoord = mod(v_pos_a, 1.0);\n    vec2 pos = mix(u_pattern_tl_a / u_texsize, u_pattern_br_a / u_texsize, imagecoord);\n    vec4 color1 = texture2D(u_image, pos);\n\n    vec2 imagecoord_b = mod(v_pos_b, 1.0);\n    vec2 pos2 = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, imagecoord_b);\n    vec4 color2 = texture2D(u_image, pos2);\n\n    vec4 mixedColor = mix(color1, color2, u_mix);\n\n    gl_FragColor = mixedColor * v_lighting;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pixel_coord_upper;\nuniform vec2 u_pixel_coord_lower;\nuniform float u_scale_a;\nuniform float u_scale_b;\nuniform float u_tile_units_to_pixels;\nuniform float u_height_factor;\n\nuniform vec3 u_lightcolor;\nuniform lowp vec3 u_lightpos;\nuniform lowp float u_lightintensity;\n\nattribute vec2 a_pos;\nattribute vec4 a_normal_ed;\n\nvarying vec2 v_pos_a;\nvarying vec2 v_pos_b;\nvarying vec4 v_lighting;\nvarying float v_directional;\n\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n\nvoid main() {\n    #pragma mapbox: initialize lowp float base\n    #pragma mapbox: initialize lowp float height\n\n    vec3 normal = a_normal_ed.xyz;\n    float edgedistance = a_normal_ed.w;\n\n    base = max(0.0, base);\n    height = max(0.0, height);\n\n    float t = mod(normal.x, 2.0);\n    float z = t > 0.0 ? height : base;\n\n    gl_Position = u_matrix * vec4(a_pos, z, 1);\n\n    vec2 pos = normal.x == 1.0 && normal.y == 0.0 && normal.z == 16384.0\n        ? a_pos // extrusion top\n        : vec2(edgedistance, z * u_height_factor); // extrusion side\n\n    v_pos_a = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_a * u_pattern_size_a, u_tile_units_to_pixels, pos);\n    v_pos_b = get_pattern_pos(u_pixel_coord_upper, u_pixel_coord_lower, u_scale_b * u_pattern_size_b, u_tile_units_to_pixels, pos);\n\n    v_lighting = vec4(0.0, 0.0, 0.0, 1.0);\n    float directional = clamp(dot(normal / 16383.0, u_lightpos), 0.0, 1.0);\n    directional = mix((1.0 - u_lightintensity), max((0.5 + u_lightintensity), 1.0), directional);\n\n    if (normal.y != 0.0) {\n        directional *= clamp((t + base) * pow(height / 150.0, 0.5), mix(0.7, 0.98, 1.0 - u_lightintensity), 1.0);\n    }\n\n    v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));\n}\n"},extrusionTexture:{fragmentSource:"uniform sampler2D u_image;\nuniform float u_opacity;\nvarying vec2 v_pos;\n\nvoid main() {\n    gl_FragColor = texture2D(u_image, v_pos) * u_opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(0.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_world;\nattribute vec2 a_pos;\nvarying vec2 v_pos;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);\n\n    v_pos.x = a_pos.x;\n    v_pos.y = 1.0 - a_pos.y;\n}\n"},hillshadePrepare:{fragmentSource:"#ifdef GL_ES\nprecision highp float;\n#endif\n\nuniform sampler2D u_image;\nvarying vec2 v_pos;\nuniform vec2 u_dimension;\nuniform float u_zoom;\nuniform float u_maxzoom;\n\nfloat getElevation(vec2 coord, float bias) {\n    // Convert encoded elevation value to meters\n    vec4 data = texture2D(u_image, coord) * 255.0;\n    return (data.r + data.g * 256.0 + data.b * 256.0 * 256.0) / 4.0;\n}\n\nvoid main() {\n    vec2 epsilon = 1.0 / u_dimension;\n\n    // queried pixels:\n    // +-----------+\n    // |   |   |   |\n    // | a | b | c |\n    // |   |   |   |\n    // +-----------+\n    // |   |   |   |\n    // | d | e | f |\n    // |   |   |   |\n    // +-----------+\n    // |   |   |   |\n    // | g | h | i |\n    // |   |   |   |\n    // +-----------+\n\n    float a = getElevation(v_pos + vec2(-epsilon.x, -epsilon.y), 0.0);\n    float b = getElevation(v_pos + vec2(0, -epsilon.y), 0.0);\n    float c = getElevation(v_pos + vec2(epsilon.x, -epsilon.y), 0.0);\n    float d = getElevation(v_pos + vec2(-epsilon.x, 0), 0.0);\n    float e = getElevation(v_pos, 0.0);\n    float f = getElevation(v_pos + vec2(epsilon.x, 0), 0.0);\n    float g = getElevation(v_pos + vec2(-epsilon.x, epsilon.y), 0.0);\n    float h = getElevation(v_pos + vec2(0, epsilon.y), 0.0);\n    float i = getElevation(v_pos + vec2(epsilon.x, epsilon.y), 0.0);\n\n    // here we divide the x and y slopes by 8 * pixel size\n    // where pixel size (aka meters/pixel) is:\n    // circumference of the world / (pixels per tile * number of tiles)\n    // which is equivalent to: 8 * 40075016.6855785 / (512 * pow(2, u_zoom))\n    // which can be reduced to: pow(2, 19.25619978527 - u_zoom)\n    // we want to vertically exaggerate the hillshading though, because otherwise\n    // it is barely noticeable at low zooms. to do this, we multiply this by some\n    // scale factor pow(2, (u_zoom - u_maxzoom) * a) where a is an arbitrary value\n    // Here we use a=0.3 which works out to the expression below. see \n    // nickidlugash's awesome breakdown for more info\n    // https://github.com/mapbox/mapbox-gl-js/pull/5286#discussion_r148419556\n    float exaggeration = u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;\n\n    vec2 deriv = vec2(\n        (c + f + f + i) - (a + d + d + g),\n        (g + h + h + i) - (a + b + b + c)\n    ) /  pow(2.0, (u_zoom - u_maxzoom) * exaggeration + 19.2562 - u_zoom);\n\n    gl_FragColor = clamp(vec4(\n        deriv.x / 2.0 + 0.5,\n        deriv.y / 2.0 + 0.5,\n        1.0,\n        1.0), 0.0, 1.0);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n    v_pos = (a_texture_pos / 8192.0) / 2.0 + 0.25;\n}\n"},hillshade:{fragmentSource:"uniform sampler2D u_image;\nvarying vec2 v_pos;\n\nuniform vec2 u_latrange;\nuniform vec2 u_light;\nuniform vec4 u_shadow;\nuniform vec4 u_highlight;\nuniform vec4 u_accent;\n\n#define PI 3.141592653589793\n\nvoid main() {\n    vec4 pixel = texture2D(u_image, v_pos);\n\n    vec2 deriv = ((pixel.rg * 2.0) - 1.0);\n\n    // We divide the slope by a scale factor based on the cosin of the pixel's approximate latitude\n    // to account for mercator projection distortion. see #4807 for details\n    float scaleFactor = cos(radians((u_latrange[0] - u_latrange[1]) * (1.0 - v_pos.y) + u_latrange[1]));\n    // We also multiply the slope by an arbitrary z-factor of 1.25\n    float slope = atan(1.25 * length(deriv) / scaleFactor);\n    float aspect = deriv.x != 0.0 ? atan(deriv.y, -deriv.x) : PI / 2.0 * (deriv.y > 0.0 ? 1.0 : -1.0);\n\n    float intensity = u_light.x;\n    // We add PI to make this property match the global light object, which adds PI/2 to the light's azimuthal\n    // position property to account for 0deg corresponding to north/the top of the viewport in the style spec\n    // and the original shader was written to accept (-illuminationDirection - 90) as the azimuthal.\n    float azimuth = u_light.y + PI;\n\n    // We scale the slope exponentially based on intensity, using a calculation similar to\n    // the exponential interpolation function in the style spec:\n    // https://github.com/mapbox/mapbox-gl-js/blob/master/src/style-spec/expression/definitions/interpolate.js#L217-L228\n    // so that higher intensity values create more opaque hillshading.\n    float base = 1.875 - intensity * 1.75;\n    float maxValue = 0.5 * PI;\n    float scaledSlope = intensity != 0.5 ? ((pow(base, slope) - 1.0) / (pow(base, maxValue) - 1.0)) * maxValue : slope;\n\n    // The accent color is calculated with the cosine of the slope while the shade color is calculated with the sine\n    // so that the accent color's rate of change eases in while the shade color's eases out.\n    float accent = cos(scaledSlope);\n    // We multiply both the accent and shade color by a clamped intensity value\n    // so that intensities >= 0.5 do not additionally affect the color values\n    // while intensity values < 0.5 make the overall color more transparent.\n    vec4 accent_color = (1.0 - accent) * u_accent * clamp(intensity * 2.0, 0.0, 1.0);\n    float shade = abs(mod((aspect + azimuth) / PI + 0.5, 2.0) - 1.0);\n    vec4 shade_color = mix(u_shadow, u_highlight, shade) * sin(scaledSlope) * clamp(intensity * 2.0, 0.0, 1.0);\n    gl_FragColor = accent_color * (1.0 - shade_color.a) + shade_color;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n    v_pos = a_texture_pos / 8192.0;\n}\n"},line:{fragmentSource:"#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n\n    // Calculate the distance of the pixel from the line in pixels.\n    float dist = length(v_normal) * v_width2.s;\n\n    // Calculate the antialiasing fade factor. This is either when fading in\n    // the line in case of an offset line (v_width2.t) or when fading out\n    // (v_width2.s)\n    float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n    float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n    gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\nvarying highp float v_linesofar;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize mediump float gapwidth\n    #pragma mapbox: initialize lowp float offset\n    #pragma mapbox: initialize mediump float width\n\n    vec2 a_extrude = a_data.xy - 128.0;\n    float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n    v_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * 2.0;\n\n    vec2 pos = a_pos_normal.xy;\n\n    // x is 1 if it's a round cap, 0 otherwise\n    // y is 1 if the normal points up, and -1 if it points down\n    mediump vec2 normal = a_pos_normal.zw;\n    v_normal = normal;\n\n    // these transformations used to be applied in the JS and native code bases.\n    // moved them into the shader for clarity and simplicity.\n    gapwidth = gapwidth / 2.0;\n    float halfwidth = width / 2.0;\n    offset = -1.0 * offset;\n\n    float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n    float outset = gapwidth + halfwidth * (gapwidth > 0.0 ? 2.0 : 1.0) + (halfwidth == 0.0 ? 0.0 : ANTIALIASING);\n\n    // Scale the extrusion vector down to a normal and then up by the line width\n    // of this vertex.\n    mediump vec2 dist = outset * a_extrude * scale;\n\n    // Calculate the offset when drawing a line that is to the side of the actual line.\n    // We do this by creating a vector that points towards the extrude, but rotate\n    // it when we're drawing round end points (a_direction = -1 or 1) since their\n    // extrude vector points in another direction.\n    mediump float u = 0.5 * a_direction;\n    mediump float t = 1.0 - abs(u);\n    mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n    vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n    gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n    // calculate how much the perspective view squishes or stretches the extrude\n    float extrude_length_without_perspective = length(dist);\n    float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n    v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n    v_width2 = vec2(outset, inset);\n}\n"},lineGradient:{fragmentSource:"\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nuniform sampler2D u_image;\n\nvarying vec2 v_width2;\nvarying vec2 v_normal;\nvarying float v_gamma_scale;\nvarying highp float v_lineprogress;\n\nvoid main() {\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n\n    // Calculate the distance of the pixel from the line in pixels.\n    float dist = length(v_normal) * v_width2.s;\n\n    // Calculate the antialiasing fade factor. This is either when fading in\n    // the line in case of an offset line (v_width2.t) or when fading out\n    // (v_width2.s)\n    float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n    float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n    // For gradient lines, v_lineprogress is the ratio along the entire line,\n    // scaled to [0, 2^15), and the gradient ramp is stored in a texture.\n    vec4 color = texture2D(u_image, vec2(v_lineprogress, 0.5));\n\n    gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"\n// the attribute conveying progress along a line is scaled to [0, 2^15)\n#define MAX_LINE_DISTANCE 32767.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\n// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\nattribute vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_gamma_scale;\nvarying highp float v_lineprogress;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n\nvoid main() {\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize mediump float gapwidth\n    #pragma mapbox: initialize lowp float offset\n    #pragma mapbox: initialize mediump float width\n\n    vec2 a_extrude = a_data.xy - 128.0;\n    float a_direction = mod(a_data.z, 4.0) - 1.0;\n\n    v_lineprogress = (floor(a_data.z / 4.0) + a_data.w * 64.0) * 2.0 / MAX_LINE_DISTANCE;\n\n    vec2 pos = a_pos_normal.xy;\n\n    // x is 1 if it's a round cap, 0 otherwise\n    // y is 1 if the normal points up, and -1 if it points down\n    mediump vec2 normal = a_pos_normal.zw;\n    v_normal = normal;\n\n    // these transformations used to be applied in the JS and native code bases.\n    // moved them into the shader for clarity and simplicity.\n    gapwidth = gapwidth / 2.0;\n    float halfwidth = width / 2.0;\n    offset = -1.0 * offset;\n\n    float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n    float outset = gapwidth + halfwidth * (gapwidth > 0.0 ? 2.0 : 1.0) + (halfwidth == 0.0 ? 0.0 : ANTIALIASING);\n\n    // Scale the extrusion vector down to a normal and then up by the line width\n    // of this vertex.\n    mediump vec2 dist = outset * a_extrude * scale;\n\n    // Calculate the offset when drawing a line that is to the side of the actual line.\n    // We do this by creating a vector that points towards the extrude, but rotate\n    // it when we're drawing round end points (a_direction = -1 or 1) since their\n    // extrude vector points in another direction.\n    mediump float u = 0.5 * a_direction;\n    mediump float t = 1.0 - abs(u);\n    mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n    vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n    gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n    // calculate how much the perspective view squishes or stretches the extrude\n    float extrude_length_without_perspective = length(dist);\n    float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n    v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n    v_width2 = vec2(outset, inset);\n}\n"},linePattern:{fragmentSource:"uniform vec2 u_pattern_size_a;\nuniform vec2 u_pattern_size_b;\nuniform vec2 u_pattern_tl_a;\nuniform vec2 u_pattern_br_a;\nuniform vec2 u_pattern_tl_b;\nuniform vec2 u_pattern_br_b;\nuniform vec2 u_texsize;\nuniform float u_fade;\n\nuniform sampler2D u_image;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n\nvoid main() {\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n\n    // Calculate the distance of the pixel from the line in pixels.\n    float dist = length(v_normal) * v_width2.s;\n\n    // Calculate the antialiasing fade factor. This is either when fading in\n    // the line in case of an offset line (v_width2.t) or when fading out\n    // (v_width2.s)\n    float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n    float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n    float x_a = mod(v_linesofar / u_pattern_size_a.x, 1.0);\n    float x_b = mod(v_linesofar / u_pattern_size_b.x, 1.0);\n\n    // v_normal.y is 0 at the midpoint of the line, -1 at the lower edge, 1 at the upper edge\n    // we clamp the line width outset to be between 0 and half the pattern height plus padding (2.0)\n    // to ensure we don't sample outside the designated symbol on the sprite sheet.\n    // 0.5 is added to shift the component to be bounded between 0 and 1 for interpolation of\n    // the texture coordinate\n    float y_a = 0.5 + (v_normal.y * clamp(v_width2.s, 0.0, (u_pattern_size_a.y + 2.0) / 2.0) / u_pattern_size_a.y);\n    float y_b = 0.5 + (v_normal.y * clamp(v_width2.s, 0.0, (u_pattern_size_b.y + 2.0) / 2.0) / u_pattern_size_b.y);\n    vec2 pos_a = mix(u_pattern_tl_a / u_texsize, u_pattern_br_a / u_texsize, vec2(x_a, y_a));\n    vec2 pos_b = mix(u_pattern_tl_b / u_texsize, u_pattern_br_b / u_texsize, vec2(x_b, y_b));\n\n    vec4 color = mix(texture2D(u_image, pos_a), texture2D(u_image, pos_b), u_fade);\n\n    gl_FragColor = color * alpha * opacity;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying float v_linesofar;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n\nvoid main() {\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize lowp float offset\n    #pragma mapbox: initialize mediump float gapwidth\n    #pragma mapbox: initialize mediump float width\n\n    vec2 a_extrude = a_data.xy - 128.0;\n    float a_direction = mod(a_data.z, 4.0) - 1.0;\n    float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n    vec2 pos = a_pos_normal.xy;\n\n    // x is 1 if it's a round cap, 0 otherwise\n    // y is 1 if the normal points up, and -1 if it points down\n    mediump vec2 normal = a_pos_normal.zw;\n    v_normal = normal;\n\n    // these transformations used to be applied in the JS and native code bases.\n    // moved them into the shader for clarity and simplicity.\n    gapwidth = gapwidth / 2.0;\n    float halfwidth = width / 2.0;\n    offset = -1.0 * offset;\n\n    float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n    float outset = gapwidth + halfwidth * (gapwidth > 0.0 ? 2.0 : 1.0) + (halfwidth == 0.0 ? 0.0 : ANTIALIASING);\n\n    // Scale the extrusion vector down to a normal and then up by the line width\n    // of this vertex.\n    mediump vec2 dist = outset * a_extrude * scale;\n\n    // Calculate the offset when drawing a line that is to the side of the actual line.\n    // We do this by creating a vector that points towards the extrude, but rotate\n    // it when we're drawing round end points (a_direction = -1 or 1) since their\n    // extrude vector points in another direction.\n    mediump float u = 0.5 * a_direction;\n    mediump float t = 1.0 - abs(u);\n    mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n    vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n    gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n    // calculate how much the perspective view squishes or stretches the extrude\n    float extrude_length_without_perspective = length(dist);\n    float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n    v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n    v_linesofar = a_linesofar;\n    v_width2 = vec2(outset, inset);\n}\n"},lineSDF:{fragmentSource:"\nuniform sampler2D u_image;\nuniform float u_sdfgamma;\nuniform float u_mix;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize mediump float width\n    #pragma mapbox: initialize lowp float floorwidth\n\n    // Calculate the distance of the pixel from the line in pixels.\n    float dist = length(v_normal) * v_width2.s;\n\n    // Calculate the antialiasing fade factor. This is either when fading in\n    // the line in case of an offset line (v_width2.t) or when fading out\n    // (v_width2.s)\n    float blur2 = (blur + 1.0 / DEVICE_PIXEL_RATIO) * v_gamma_scale;\n    float alpha = clamp(min(dist - (v_width2.t - blur2), v_width2.s - dist) / blur2, 0.0, 1.0);\n\n    float sdfdist_a = texture2D(u_image, v_tex_a).a;\n    float sdfdist_b = texture2D(u_image, v_tex_b).a;\n    float sdfdist = mix(sdfdist_a, sdfdist_b, u_mix);\n    alpha *= smoothstep(0.5 - u_sdfgamma / floorwidth, 0.5 + u_sdfgamma / floorwidth, sdfdist);\n\n    gl_FragColor = color * (alpha * opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"// floor(127 / 2) == 63.0\n// the maximum allowed miter limit is 2.0 at the moment. the extrude normal is\n// stored in a byte (-128..127). we scale regular normals up to length 63, but\n// there are also \"special\" normals that have a bigger length (of up to 126 in\n// this case).\n// #define scale 63.0\n#define scale 0.015873016\n\n// We scale the distance before adding it to the buffers so that we can store\n// long distances for long segments. Use this value to unscale the distance.\n#define LINE_DISTANCE_SCALE 2.0\n\n// the distance over which the line edge fades out.\n// Retina devices need a smaller distance to avoid aliasing.\n#define ANTIALIASING 1.0 / DEVICE_PIXEL_RATIO / 2.0\n\nattribute vec4 a_pos_normal;\nattribute vec4 a_data;\n\nuniform mat4 u_matrix;\nuniform mediump float u_ratio;\nuniform vec2 u_patternscale_a;\nuniform float u_tex_y_a;\nuniform vec2 u_patternscale_b;\nuniform float u_tex_y_b;\nuniform vec2 u_gl_units_to_pixels;\n\nvarying vec2 v_normal;\nvarying vec2 v_width2;\nvarying vec2 v_tex_a;\nvarying vec2 v_tex_b;\nvarying float v_gamma_scale;\n\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 color\n    #pragma mapbox: initialize lowp float blur\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize mediump float gapwidth\n    #pragma mapbox: initialize lowp float offset\n    #pragma mapbox: initialize mediump float width\n    #pragma mapbox: initialize lowp float floorwidth\n\n    vec2 a_extrude = a_data.xy - 128.0;\n    float a_direction = mod(a_data.z, 4.0) - 1.0;\n    float a_linesofar = (floor(a_data.z / 4.0) + a_data.w * 64.0) * LINE_DISTANCE_SCALE;\n\n    vec2 pos = a_pos_normal.xy;\n\n    // x is 1 if it's a round cap, 0 otherwise\n    // y is 1 if the normal points up, and -1 if it points down\n    mediump vec2 normal = a_pos_normal.zw;\n    v_normal = normal;\n\n    // these transformations used to be applied in the JS and native code bases.\n    // moved them into the shader for clarity and simplicity.\n    gapwidth = gapwidth / 2.0;\n    float halfwidth = width / 2.0;\n    offset = -1.0 * offset;\n\n    float inset = gapwidth + (gapwidth > 0.0 ? ANTIALIASING : 0.0);\n    float outset = gapwidth + halfwidth * (gapwidth > 0.0 ? 2.0 : 1.0) + (halfwidth == 0.0 ? 0.0 : ANTIALIASING);\n\n    // Scale the extrusion vector down to a normal and then up by the line width\n    // of this vertex.\n    mediump vec2 dist =outset * a_extrude * scale;\n\n    // Calculate the offset when drawing a line that is to the side of the actual line.\n    // We do this by creating a vector that points towards the extrude, but rotate\n    // it when we're drawing round end points (a_direction = -1 or 1) since their\n    // extrude vector points in another direction.\n    mediump float u = 0.5 * a_direction;\n    mediump float t = 1.0 - abs(u);\n    mediump vec2 offset2 = offset * a_extrude * scale * normal.y * mat2(t, -u, u, t);\n\n    vec4 projected_extrude = u_matrix * vec4(dist / u_ratio, 0.0, 0.0);\n    gl_Position = u_matrix * vec4(pos + offset2 / u_ratio, 0.0, 1.0) + projected_extrude;\n\n    // calculate how much the perspective view squishes or stretches the extrude\n    float extrude_length_without_perspective = length(dist);\n    float extrude_length_with_perspective = length(projected_extrude.xy / gl_Position.w * u_gl_units_to_pixels);\n    v_gamma_scale = extrude_length_without_perspective / extrude_length_with_perspective;\n\n    v_tex_a = vec2(a_linesofar * u_patternscale_a.x / floorwidth, normal.y * u_patternscale_a.y + u_tex_y_a);\n    v_tex_b = vec2(a_linesofar * u_patternscale_b.x / floorwidth, normal.y * u_patternscale_b.y + u_tex_y_b);\n\n    v_width2 = vec2(outset, inset);\n}\n"},raster:{fragmentSource:"uniform float u_fade_t;\nuniform float u_opacity;\nuniform sampler2D u_image0;\nuniform sampler2D u_image1;\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nuniform float u_brightness_low;\nuniform float u_brightness_high;\n\nuniform float u_saturation_factor;\nuniform float u_contrast_factor;\nuniform vec3 u_spin_weights;\n\nvoid main() {\n\n    // read and cross-fade colors from the main and parent tiles\n    vec4 color0 = texture2D(u_image0, v_pos0);\n    vec4 color1 = texture2D(u_image1, v_pos1);\n    if (color0.a > 0.0) {\n        color0.rgb = color0.rgb / color0.a;\n    }\n    if (color1.a > 0.0) {\n        color1.rgb = color1.rgb / color1.a;\n    }\n    vec4 color = mix(color0, color1, u_fade_t);\n    color.a *= u_opacity;\n    vec3 rgb = color.rgb;\n\n    // spin\n    rgb = vec3(\n        dot(rgb, u_spin_weights.xyz),\n        dot(rgb, u_spin_weights.zxy),\n        dot(rgb, u_spin_weights.yzx));\n\n    // saturation\n    float average = (color.r + color.g + color.b) / 3.0;\n    rgb += (average - rgb) * u_saturation_factor;\n\n    // contrast\n    rgb = (rgb - 0.5) * u_contrast_factor + 0.5;\n\n    // brightness\n    vec3 u_high_vec = vec3(u_brightness_low, u_brightness_low, u_brightness_low);\n    vec3 u_low_vec = vec3(u_brightness_high, u_brightness_high, u_brightness_high);\n\n    gl_FragColor = vec4(mix(u_high_vec, u_low_vec, rgb) * color.a, color.a);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"uniform mat4 u_matrix;\nuniform vec2 u_tl_parent;\nuniform float u_scale_parent;\nuniform float u_buffer_scale;\n\nattribute vec2 a_pos;\nattribute vec2 a_texture_pos;\n\nvarying vec2 v_pos0;\nvarying vec2 v_pos1;\n\nvoid main() {\n    gl_Position = u_matrix * vec4(a_pos, 0, 1);\n    // We are using Int16 for texture position coordinates to give us enough precision for\n    // fractional coordinates. We use 8192 to scale the texture coordinates in the buffer\n    // as an arbitrarily high number to preserve adequate precision when rendering.\n    // This is also the same value as the EXTENT we are using for our tile buffer pos coordinates,\n    // so math for modifying either is consistent.\n    v_pos0 = (((a_texture_pos / 8192.0) - 0.5) / u_buffer_scale ) + 0.5;\n    v_pos1 = (v_pos0 * u_scale_parent) + u_tl_parent;\n}\n"},symbolIcon:{fragmentSource:"uniform sampler2D u_texture;\n\n#pragma mapbox: define lowp float opacity\n\nvarying vec2 v_tex;\nvarying float v_fade_opacity;\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    lowp float alpha = opacity * v_fade_opacity;\n    gl_FragColor = texture2D(u_texture, v_tex) * alpha;\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\nattribute vec3 a_projected_pos;\nattribute float a_fade_opacity;\n\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and feature constant\nuniform highp float u_camera_to_center_distance;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform float u_fade_change;\n\n#pragma mapbox: define lowp float opacity\n\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_tex;\nvarying float v_fade_opacity;\n\nvoid main() {\n    #pragma mapbox: initialize lowp float opacity\n\n    vec2 a_pos = a_pos_offset.xy;\n    vec2 a_offset = a_pos_offset.zw;\n\n    vec2 a_tex = a_data.xy;\n    vec2 a_size = a_data.zw;\n\n    highp float segment_angle = -a_projected_pos[2];\n\n    float size;\n    if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n        size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n    } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n        size = a_size[0] / 10.0;\n    } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n        size = u_size;\n    } else {\n        size = u_size;\n    }\n\n    vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n    highp float camera_to_anchor_distance = projectedPoint.w;\n    // See comments in symbol_sdf.vertex\n    highp float distance_ratio = u_pitch_with_map ?\n        camera_to_anchor_distance / u_camera_to_center_distance :\n        u_camera_to_center_distance / camera_to_anchor_distance;\n    highp float perspective_ratio = clamp(\n            0.5 + 0.5 * distance_ratio,\n            0.0, // Prevents oversized near-field symbols in pitched/overzoomed tiles\n            4.0);\n\n    size *= perspective_ratio;\n\n    float fontScale = u_is_text ? size / 24.0 : size;\n\n    highp float symbol_rotation = 0.0;\n    if (u_rotate_symbol) {\n        // See comments in symbol_sdf.vertex\n        vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n        vec2 a = projectedPoint.xy / projectedPoint.w;\n        vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n        symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n    }\n\n    highp float angle_sin = sin(segment_angle + symbol_rotation);\n    highp float angle_cos = cos(segment_angle + symbol_rotation);\n    mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n    vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n    gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 32.0 * fontScale), 0.0, 1.0);\n\n    v_tex = a_tex / u_texsize;\n    vec2 fade_opacity = unpack_opacity(a_fade_opacity);\n    float fade_change = fade_opacity[1] > 0.5 ? u_fade_change : -u_fade_change;\n    v_fade_opacity = max(0.0, min(1.0, fade_opacity[0] + fade_change));\n}\n"},symbolSDF:{fragmentSource:"#define SDF_PX 8.0\n#define EDGE_GAMMA 0.105/DEVICE_PIXEL_RATIO\n\nuniform bool u_is_halo;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n\nuniform sampler2D u_texture;\nuniform highp float u_gamma_scale;\nuniform bool u_is_text;\n\nvarying vec2 v_data0;\nvarying vec3 v_data1;\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 fill_color\n    #pragma mapbox: initialize highp vec4 halo_color\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize lowp float halo_width\n    #pragma mapbox: initialize lowp float halo_blur\n\n    vec2 tex = v_data0.xy;\n    float gamma_scale = v_data1.x;\n    float size = v_data1.y;\n    float fade_opacity = v_data1[2];\n\n    float fontScale = u_is_text ? size / 24.0 : size;\n\n    lowp vec4 color = fill_color;\n    highp float gamma = EDGE_GAMMA / (fontScale * u_gamma_scale);\n    lowp float buff = (256.0 - 64.0) / 256.0;\n    if (u_is_halo) {\n        color = halo_color;\n        gamma = (halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (fontScale * u_gamma_scale);\n        buff = (6.0 - halo_width / fontScale) / SDF_PX;\n    }\n\n    lowp float dist = texture2D(u_texture, tex).a;\n    highp float gamma_scaled = gamma * gamma_scale;\n    highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist);\n\n    gl_FragColor = color * (alpha * opacity * fade_opacity);\n\n#ifdef OVERDRAW_INSPECTOR\n    gl_FragColor = vec4(1.0);\n#endif\n}\n",vertexSource:"const float PI = 3.141592653589793;\n\nattribute vec4 a_pos_offset;\nattribute vec4 a_data;\nattribute vec3 a_projected_pos;\nattribute float a_fade_opacity;\n\n// contents of a_size vary based on the type of property value\n// used for {text,icon}-size.\n// For constants, a_size is disabled.\n// For source functions, we bind only one value per vertex: the value of {text,icon}-size evaluated for the current feature.\n// For composite functions:\n// [ text-size(lowerZoomStop, feature),\n//   text-size(upperZoomStop, feature) ]\nuniform bool u_is_size_zoom_constant;\nuniform bool u_is_size_feature_constant;\nuniform highp float u_size_t; // used to interpolate between zoom stops when size is a composite function\nuniform highp float u_size; // used when size is both zoom and feature constant\n\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n\nuniform mat4 u_matrix;\nuniform mat4 u_label_plane_matrix;\nuniform mat4 u_gl_coord_matrix;\n\nuniform bool u_is_text;\nuniform bool u_pitch_with_map;\nuniform highp float u_pitch;\nuniform bool u_rotate_symbol;\nuniform highp float u_aspect_ratio;\nuniform highp float u_camera_to_center_distance;\nuniform float u_fade_change;\n\nuniform vec2 u_texsize;\n\nvarying vec2 v_data0;\nvarying vec3 v_data1;\n\nvoid main() {\n    #pragma mapbox: initialize highp vec4 fill_color\n    #pragma mapbox: initialize highp vec4 halo_color\n    #pragma mapbox: initialize lowp float opacity\n    #pragma mapbox: initialize lowp float halo_width\n    #pragma mapbox: initialize lowp float halo_blur\n\n    vec2 a_pos = a_pos_offset.xy;\n    vec2 a_offset = a_pos_offset.zw;\n\n    vec2 a_tex = a_data.xy;\n    vec2 a_size = a_data.zw;\n\n    highp float segment_angle = -a_projected_pos[2];\n    float size;\n\n    if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {\n        size = mix(a_size[0], a_size[1], u_size_t) / 10.0;\n    } else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {\n        size = a_size[0] / 10.0;\n    } else if (!u_is_size_zoom_constant && u_is_size_feature_constant) {\n        size = u_size;\n    } else {\n        size = u_size;\n    }\n\n    vec4 projectedPoint = u_matrix * vec4(a_pos, 0, 1);\n    highp float camera_to_anchor_distance = projectedPoint.w;\n    // If the label is pitched with the map, layout is done in pitched space,\n    // which makes labels in the distance smaller relative to viewport space.\n    // We counteract part of that effect by multiplying by the perspective ratio.\n    // If the label isn't pitched with the map, we do layout in viewport space,\n    // which makes labels in the distance larger relative to the features around\n    // them. We counteract part of that effect by dividing by the perspective ratio.\n    highp float distance_ratio = u_pitch_with_map ?\n        camera_to_anchor_distance / u_camera_to_center_distance :\n        u_camera_to_center_distance / camera_to_anchor_distance;\n    highp float perspective_ratio = clamp(\n        0.5 + 0.5 * distance_ratio,\n        0.0, // Prevents oversized near-field symbols in pitched/overzoomed tiles\n        4.0);\n\n    size *= perspective_ratio;\n\n    float fontScale = u_is_text ? size / 24.0 : size;\n\n    highp float symbol_rotation = 0.0;\n    if (u_rotate_symbol) {\n        // Point labels with 'rotation-alignment: map' are horizontal with respect to tile units\n        // To figure out that angle in projected space, we draw a short horizontal line in tile\n        // space, project it, and measure its angle in projected space.\n        vec4 offsetProjectedPoint = u_matrix * vec4(a_pos + vec2(1, 0), 0, 1);\n\n        vec2 a = projectedPoint.xy / projectedPoint.w;\n        vec2 b = offsetProjectedPoint.xy / offsetProjectedPoint.w;\n\n        symbol_rotation = atan((b.y - a.y) / u_aspect_ratio, b.x - a.x);\n    }\n\n    highp float angle_sin = sin(segment_angle + symbol_rotation);\n    highp float angle_cos = cos(segment_angle + symbol_rotation);\n    mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n\n    vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0);\n    gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 32.0 * fontScale), 0.0, 1.0);\n    float gamma_scale = gl_Position.w;\n\n    vec2 tex = a_tex / u_texsize;\n    vec2 fade_opacity = unpack_opacity(a_fade_opacity);\n    float fade_change = fade_opacity[1] > 0.5 ? u_fade_change : -u_fade_change;\n    float interpolated_fade_opacity = max(0.0, min(1.0, fade_opacity[0] + fade_change));\n\n    v_data0 = vec2(tex.x, tex.y);\n    v_data1 = vec3(gamma_scale, size, interpolated_fade_opacity);\n}\n"}},eo=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,gh=function(n){var t=lf[n],i={};t.fragmentSource=t.fragmentSource.replace(eo,function(n,t,r,u,f){return i[f]=!0,"define"===t?"\n#ifndef HAS_UNIFORM_u_"+f+"\nvarying "+r+" "+u+" "+f+";\n#else\nuniform "+r+" "+u+" u_"+f+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+f+"\n    "+r+" "+u+" "+f+" = u_"+f+";\n#endif\n"});t.vertexSource=t.vertexSource.replace(eo,function(n,t,r,u,f){var e="float"===u?"vec2":"vec4";return i[f]?"define"===t?"\n#ifndef HAS_UNIFORM_u_"+f+"\nuniform lowp float a_"+f+"_t;\nattribute "+r+" "+e+" a_"+f+";\nvarying "+r+" "+u+" "+f+";\n#else\nuniform "+r+" "+u+" u_"+f+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+f+"\n    "+f+" = unpack_mix_"+e+"(a_"+f+", a_"+f+"_t);\n#else\n    "+r+" "+u+" "+f+" = u_"+f+";\n#endif\n":"define"===t?"\n#ifndef HAS_UNIFORM_u_"+f+"\nuniform lowp float a_"+f+"_t;\nattribute "+r+" "+e+" a_"+f+";\n#else\nuniform "+r+" "+u+" u_"+f+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+f+"\n    "+r+" "+u+" "+f+" = unpack_mix_"+e+"(a_"+f+", a_"+f+"_t);\n#else\n    "+r+" "+u+" "+f+" = u_"+f+";\n#endif\n"})};for(oo in lf)gh(oo);au=lf;af=function(t,i,r,u){var f=t.gl,o,s,y,e,h,c,p,l,a;this.program=f.createProgram();o=r.defines().concat("#define DEVICE_PIXEL_RATIO "+n.browser.devicePixelRatio.toFixed(1));u&&o.push("#define OVERDRAW_INSPECTOR;");var w=o.concat(au.prelude.fragmentSource,i.fragmentSource).join("\n"),b=o.concat(au.prelude.vertexSource,i.vertexSource).join("\n"),v=f.createShader(f.FRAGMENT_SHADER);for(f.shaderSource(v,w),f.compileShader(v),f.attachShader(this.program,v),s=f.createShader(f.VERTEX_SHADER),f.shaderSource(s,b),f.compileShader(s),f.attachShader(this.program,s),y=r.layoutAttributes||[],e=0;e<y.length;e++)f.bindAttribLocation(this.program,e,y[e].name);for(f.linkProgram(this.program),this.numAttributes=f.getProgramParameter(this.program,f.ACTIVE_ATTRIBUTES),this.attributes={},this.uniforms={},h=0;h<this.numAttributes;h++)c=f.getActiveAttrib(this.program,h),c&&(this.attributes[c.name]=f.getAttribLocation(this.program,c.name));for(p=f.getProgramParameter(this.program,f.ACTIVE_UNIFORMS),l=0;l<p;l++)a=f.getActiveUniform(this.program,l),a&&(this.uniforms[a.name]=f.getUniformLocation(this.program,a.name))};af.prototype.draw=function(n,t,i,r,u,f,e,o,s){for(var h,v,c,l=n.gl,y=(c={},c[l.LINES]=2,c[l.TRIANGLES]=3,c)[t],a=0,w=f.get();a<w.length;a+=1)h=w[a],v=h.vaos||(h.vaos={}),(v[i]||(v[i]=new p)).bind(n,this,r,e?e.getPaintVertexBuffers():[],u,h.vertexOffset,o,s),l.drawElements(t,h.primitiveLength*y,l.UNSIGNED_SHORT,h.primitiveOffset*y*2)};co=n.identity(new Float32Array(16));lo=n.properties.layout;var vf=function(n,t){if(!n)return!1;var i=t.imageManager.getPattern(n.from),r=t.imageManager.getPattern(n.to);return!i||!r},yf=function(n,t,i){var e=t.context,r=e.gl,u=t.imageManager.getPattern(n.from),f=t.imageManager.getPattern(n.to);r.uniform1i(i.uniforms.u_image,0);r.uniform2fv(i.uniforms.u_pattern_tl_a,u.tl);r.uniform2fv(i.uniforms.u_pattern_br_a,u.br);r.uniform2fv(i.uniforms.u_pattern_tl_b,f.tl);r.uniform2fv(i.uniforms.u_pattern_br_b,f.br);var o=t.imageManager.getPixelSize(),s=o.width,h=o.height;r.uniform2fv(i.uniforms.u_texsize,[s,h]);r.uniform1f(i.uniforms.u_mix,n.t);r.uniform2fv(i.uniforms.u_pattern_size_a,u.displaySize);r.uniform2fv(i.uniforms.u_pattern_size_b,f.displaySize);r.uniform1f(i.uniforms.u_scale_a,n.fromScale);r.uniform1f(i.uniforms.u_scale_b,n.toScale);e.activeTexture.set(r.TEXTURE0);t.imageManager.bind(t.context)},pf=function(n,t,i){var r=t.context.gl;r.uniform1f(i.uniforms.u_tile_units_to_pixels,1/nt(n,1,t.transform.tileZoom));var u=Math.pow(2,n.tileID.overscaledZ),f=n.tileSize*Math.pow(2,t.transform.tileZoom)/u,e=f*(n.tileID.canonical.x+n.tileID.wrap*u),o=f*n.tileID.canonical.y;r.uniform2f(i.uniforms.u_pixel_coord_upper,e>>16,o>>16);r.uniform2f(i.uniforms.u_pixel_coord_lower,65535&e,65535&o)};var lc={" ":[16,[]],"!":[10,[5,21,5,7,-1,-1,5,2,4,1,5,0,6,1,5,2]],'"':[16,[4,21,4,14,-1,-1,12,21,12,14]],"#":[21,[11,25,4,-7,-1,-1,17,25,10,-7,-1,-1,4,12,18,12,-1,-1,3,6,17,6]],$:[20,[8,25,8,-4,-1,-1,12,25,12,-4,-1,-1,17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],"%":[24,[21,21,3,0,-1,-1,8,21,10,19,10,17,9,15,7,14,5,14,3,16,3,18,4,20,6,21,8,21,10,20,13,19,16,19,19,20,21,21,-1,-1,17,7,15,6,14,4,14,2,16,0,18,0,20,1,21,3,21,5,19,7,17,7]],"&":[26,[23,12,23,13,22,14,21,14,20,13,19,11,17,6,15,3,13,1,11,0,7,0,5,1,4,2,3,4,3,6,4,8,5,9,12,13,13,14,14,16,14,18,13,20,11,21,9,20,8,18,8,16,9,13,11,10,16,3,18,1,20,0,22,0,23,1,23,2]],"'":[10,[5,19,4,20,5,21,6,20,6,18,5,16,4,15]],"(":[14,[11,25,9,23,7,20,5,16,4,11,4,7,5,2,7,-2,9,-5,11,-7]],")":[14,[3,25,5,23,7,20,9,16,10,11,10,7,9,2,7,-2,5,-5,3,-7]],"*":[16,[8,21,8,9,-1,-1,3,18,13,12,-1,-1,13,18,3,12]],"+":[26,[13,18,13,0,-1,-1,4,9,22,9]],",":[10,[6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"-":[26,[4,9,22,9]],".":[10,[5,2,4,1,5,0,6,1,5,2]],"/":[22,[20,25,2,-7]],0:[20,[9,21,6,20,4,17,3,12,3,9,4,4,6,1,9,0,11,0,14,1,16,4,17,9,17,12,16,17,14,20,11,21,9,21]],1:[20,[6,17,8,18,11,21,11,0]],2:[20,[4,16,4,17,5,19,6,20,8,21,12,21,14,20,15,19,16,17,16,15,15,13,13,10,3,0,17,0]],3:[20,[5,21,16,21,10,13,13,13,15,12,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],4:[20,[13,21,3,7,18,7,-1,-1,13,21,13,0]],5:[20,[15,21,5,21,4,12,5,13,8,14,11,14,14,13,16,11,17,8,17,6,16,3,14,1,11,0,8,0,5,1,4,2,3,4]],6:[20,[16,18,15,20,12,21,10,21,7,20,5,17,4,12,4,7,5,3,7,1,10,0,11,0,14,1,16,3,17,6,17,7,16,10,14,12,11,13,10,13,7,12,5,10,4,7]],7:[20,[17,21,7,0,-1,-1,3,21,17,21]],8:[20,[8,21,5,20,4,18,4,16,5,14,7,13,11,12,14,11,16,9,17,7,17,4,16,2,15,1,12,0,8,0,5,1,4,2,3,4,3,7,4,9,6,11,9,12,13,13,15,14,16,16,16,18,15,20,12,21,8,21]],9:[20,[16,14,15,11,13,9,10,8,9,8,6,9,4,11,3,14,3,15,4,18,6,20,9,21,10,21,13,20,15,18,16,14,16,9,15,4,13,1,10,0,8,0,5,1,4,3]],":":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,5,2,4,1,5,0,6,1,5,2]],";":[10,[5,14,4,13,5,12,6,13,5,14,-1,-1,6,1,5,0,4,1,5,2,6,1,6,-1,5,-3,4,-4]],"<":[24,[20,18,4,9,20,0]],"=":[26,[4,12,22,12,-1,-1,4,6,22,6]],">":[24,[4,18,20,9,4,0]],"?":[18,[3,16,3,17,4,19,5,20,7,21,11,21,13,20,14,19,15,17,15,15,14,13,13,12,9,10,9,7,-1,-1,9,2,8,1,9,0,10,1,9,2]],"@":[27,[18,13,17,15,15,16,12,16,10,15,9,14,8,11,8,8,9,6,11,5,14,5,16,6,17,8,-1,-1,12,16,10,14,9,11,9,8,10,6,11,5,-1,-1,18,16,17,8,17,6,19,5,21,5,23,7,24,10,24,12,23,15,22,17,20,19,18,20,15,21,12,21,9,20,7,19,5,17,4,15,3,12,3,9,4,6,5,4,7,2,9,1,12,0,15,0,18,1,20,2,21,3,-1,-1,19,16,18,8,18,6,19,5]],A:[18,[9,21,1,0,-1,-1,9,21,17,0,-1,-1,4,7,14,7]],B:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,-1,-1,4,11,13,11,16,10,17,9,18,7,18,4,17,2,16,1,13,0,4,0]],C:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5]],D:[21,[4,21,4,0,-1,-1,4,21,11,21,14,20,16,18,17,16,18,13,18,8,17,5,16,3,14,1,11,0,4,0]],E:[19,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11,-1,-1,4,0,17,0]],F:[18,[4,21,4,0,-1,-1,4,21,17,21,-1,-1,4,11,12,11]],G:[21,[18,16,17,18,15,20,13,21,9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,18,8,-1,-1,13,8,18,8]],H:[22,[4,21,4,0,-1,-1,18,21,18,0,-1,-1,4,11,18,11]],I:[8,[4,21,4,0]],J:[16,[12,21,12,5,11,2,10,1,8,0,6,0,4,1,3,2,2,5,2,7]],K:[21,[4,21,4,0,-1,-1,18,21,4,7,-1,-1,9,12,18,0]],L:[17,[4,21,4,0,-1,-1,4,0,16,0]],M:[24,[4,21,4,0,-1,-1,4,21,12,0,-1,-1,20,21,12,0,-1,-1,20,21,20,0]],N:[22,[4,21,4,0,-1,-1,4,21,18,0,-1,-1,18,21,18,0]],O:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21]],P:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,14,17,12,16,11,13,10,4,10]],Q:[22,[9,21,7,20,5,18,4,16,3,13,3,8,4,5,5,3,7,1,9,0,13,0,15,1,17,3,18,5,19,8,19,13,18,16,17,18,15,20,13,21,9,21,-1,-1,12,4,18,-2]],R:[21,[4,21,4,0,-1,-1,4,21,13,21,16,20,17,19,18,17,18,15,17,13,16,12,13,11,4,11,-1,-1,11,11,18,0]],S:[20,[17,18,15,20,12,21,8,21,5,20,3,18,3,16,4,14,5,13,7,12,13,10,15,9,16,8,17,6,17,3,15,1,12,0,8,0,5,1,3,3]],T:[16,[8,21,8,0,-1,-1,1,21,15,21]],U:[22,[4,21,4,6,5,3,7,1,10,0,12,0,15,1,17,3,18,6,18,21]],V:[18,[1,21,9,0,-1,-1,17,21,9,0]],W:[24,[2,21,7,0,-1,-1,12,21,7,0,-1,-1,12,21,17,0,-1,-1,22,21,17,0]],X:[20,[3,21,17,0,-1,-1,17,21,3,0]],Y:[18,[1,21,9,11,9,0,-1,-1,17,21,9,11]],Z:[20,[17,21,3,0,-1,-1,3,21,17,21,-1,-1,3,0,17,0]],"[":[14,[4,25,4,-7,-1,-1,5,25,5,-7,-1,-1,4,25,11,25,-1,-1,4,-7,11,-7]],"\\":[14,[0,21,14,-3]],"]":[14,[9,25,9,-7,-1,-1,10,25,10,-7,-1,-1,3,25,10,25,-1,-1,3,-7,10,-7]],"^":[16,[6,15,8,18,10,15,-1,-1,3,12,8,17,13,12,-1,-1,8,17,8,0]],_:[16,[0,-2,16,-2]],"`":[10,[6,21,5,20,4,18,4,16,5,15,6,16,5,17]],a:[19,[15,14,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],b:[19,[4,21,4,0,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],c:[18,[15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],d:[19,[15,21,15,0,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],e:[18,[3,8,15,8,15,10,14,12,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],f:[12,[10,21,8,21,6,20,5,17,5,0,-1,-1,2,14,9,14]],g:[19,[15,14,15,-2,14,-5,13,-6,11,-7,8,-7,6,-6,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],h:[19,[4,21,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],i:[8,[3,21,4,20,5,21,4,22,3,21,-1,-1,4,14,4,0]],j:[10,[5,21,6,20,7,21,6,22,5,21,-1,-1,6,14,6,-3,5,-6,3,-7,1,-7]],k:[17,[4,21,4,0,-1,-1,14,14,4,4,-1,-1,8,8,15,0]],l:[8,[4,21,4,0]],m:[30,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0,-1,-1,15,10,18,13,20,14,23,14,25,13,26,10,26,0]],n:[19,[4,14,4,0,-1,-1,4,10,7,13,9,14,12,14,14,13,15,10,15,0]],o:[19,[8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3,16,6,16,8,15,11,13,13,11,14,8,14]],p:[19,[4,14,4,-7,-1,-1,4,11,6,13,8,14,11,14,13,13,15,11,16,8,16,6,15,3,13,1,11,0,8,0,6,1,4,3]],q:[19,[15,14,15,-7,-1,-1,15,11,13,13,11,14,8,14,6,13,4,11,3,8,3,6,4,3,6,1,8,0,11,0,13,1,15,3]],r:[13,[4,14,4,0,-1,-1,4,8,5,11,7,13,9,14,12,14]],s:[17,[14,11,13,13,10,14,7,14,4,13,3,11,4,9,6,8,11,7,13,6,14,4,14,3,13,1,10,0,7,0,4,1,3,3]],t:[12,[5,21,5,4,6,1,8,0,10,0,-1,-1,2,14,9,14]],u:[19,[4,14,4,4,5,1,7,0,10,0,12,1,15,4,-1,-1,15,14,15,0]],v:[16,[2,14,8,0,-1,-1,14,14,8,0]],w:[22,[3,14,7,0,-1,-1,11,14,7,0,-1,-1,11,14,15,0,-1,-1,19,14,15,0]],x:[17,[3,14,14,0,-1,-1,14,14,3,0]],y:[16,[2,14,8,0,-1,-1,14,14,8,0,6,-4,4,-6,2,-7,1,-7]],z:[17,[14,14,3,0,-1,-1,3,14,14,14,-1,-1,3,0,14,0]],"{":[14,[9,25,7,24,6,23,5,21,5,19,6,17,7,16,8,14,8,12,6,10,-1,-1,7,24,6,22,6,20,7,18,8,17,9,15,9,13,8,11,4,9,8,7,9,5,9,3,8,1,7,0,6,-2,6,-4,7,-6,-1,-1,6,8,8,6,8,4,7,2,6,1,5,-1,5,-3,6,-5,7,-6,9,-7]],"|":[8,[4,25,4,-7]],"}":[14,[5,25,7,24,8,23,9,21,9,19,8,17,7,16,6,14,6,12,8,10,-1,-1,7,24,8,22,8,20,7,18,6,17,5,15,5,13,6,11,10,9,6,7,5,5,5,3,6,1,7,0,8,-2,8,-4,7,-6,-1,-1,8,8,6,6,6,4,7,2,8,1,9,-1,9,-3,8,-5,7,-6,5,-7]],"~":[24,[3,6,3,8,4,11,6,12,8,12,10,11,14,8,16,7,18,7,20,8,21,10,-1,-1,3,8,4,10,6,11,8,11,10,10,14,7,16,6,18,6,20,7,21,10,21,12]]},wo={symbol:function(n,t,i,r){if("translucent"===n.renderPass){var u=n.context;u.setStencilMode(c.disabled);u.setColorMode(n.colorModeForRenderPass());0!==i.paint.get("icon-opacity").constantOr(1)&&ao(n,t,i,r,!1,i.paint.get("icon-translate"),i.paint.get("icon-translate-anchor"),i.layout.get("icon-rotation-alignment"),i.layout.get("icon-pitch-alignment"),i.layout.get("icon-keep-upright"));0!==i.paint.get("text-opacity").constantOr(1)&&ao(n,t,i,r,!0,i.paint.get("text-translate"),i.paint.get("text-translate-anchor"),i.layout.get("text-rotation-alignment"),i.layout.get("text-pitch-alignment"),i.layout.get("text-keep-upright"));t.map.showCollisionBoxes&&function(n,t,i,r){ho(n,t,i,r,!1);ho(n,t,i,r,!0)}(n,t,i,r)}},circle:function(n,t,i,r){var o,f,l,h,y;if("translucent"===n.renderPass){var w=i.paint.get("circle-opacity"),b=i.paint.get("circle-stroke-width"),k=i.paint.get("circle-stroke-opacity");if(0!==w.constantOr(1)||0!==b.constantOr(1)&&0!==k.constantOr(1))for(o=n.context,f=o.gl,o.setDepthMode(n.depthModeForSublayer(0,e.ReadOnly)),o.setStencilMode(c.disabled),o.setColorMode(n.colorModeForRenderPass()),l=!0,h=0;h<r.length;h++){var p=r[h],a=t.getTile(p),s=a.getBucket(i);if(s){var d=n.context.program.get(),v=s.programConfigurations.get(i.id),u=n.useProgram("circle",v);((l||u.program!==d)&&(v.setUniforms(o,u,i.paint,{zoom:n.transform.zoom}),l=!1),f.uniform1f(u.uniforms.u_camera_to_center_distance,n.transform.cameraToCenterDistance),f.uniform1i(u.uniforms.u_scale_with_map,"map"===i.paint.get("circle-pitch-scale")?1:0),"map"===i.paint.get("circle-pitch-alignment"))?(f.uniform1i(u.uniforms.u_pitch_with_map,1),y=nt(a,1,n.transform.zoom),f.uniform2f(u.uniforms.u_extrude_scale,y,y)):(f.uniform1i(u.uniforms.u_pitch_with_map,0),f.uniform2fv(u.uniforms.u_extrude_scale,n.transform.pixelsToGLUnits));f.uniformMatrix4fv(u.uniforms.u_matrix,!1,n.translatePosMatrix(p.posMatrix,a,i.paint.get("circle-translate"),i.paint.get("circle-translate-anchor")));u.draw(o,f.TRIANGLES,i.id,s.layoutVertexBuffer,s.indexBuffer,s.segments,v)}}}},heatmap:function(t,i,r,u){var f,o,y,a,v,p,s;if(0!==r.paint.get("heatmap-opacity"))if("offscreen"===t.renderPass){for(f=t.context,o=f.gl,f.setDepthMode(t.depthModeForSublayer(0,e.ReadOnly)),f.setStencilMode(c.disabled),function(n,t,i){var r=n.gl,u,f;n.activeTexture.set(r.TEXTURE1);n.viewport.set([0,0,t.width/4,t.height/4]);u=i.heatmapFbo;u?(r.bindTexture(r.TEXTURE_2D,u.colorAttachment.get()),n.bindFramebuffer.set(u.framebuffer)):(f=r.createTexture(),r.bindTexture(r.TEXTURE_2D,f),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),u=i.heatmapFbo=n.createFramebuffer(t.width/4,t.height/4),function n(t,i,r,u){var f=t.gl;f.texImage2D(f.TEXTURE_2D,0,f.RGBA,i.width/4,i.height/4,0,f.RGBA,t.extTextureHalfFloat?t.extTextureHalfFloat.HALF_FLOAT_OES:f.UNSIGNED_BYTE,null);u.colorAttachment.set(r);t.extTextureHalfFloat&&f.checkFramebufferStatus(f.FRAMEBUFFER)!==f.FRAMEBUFFER_COMPLETE&&(t.extTextureHalfFloat=null,u.colorAttachment.setDirty(),n(t,i,r,u))}(n,t,f,u))}(f,t,r),f.clear({color:n.Color.transparent}),f.setColorMode(new l([o.ONE,o.ONE],n.Color.transparent,[!0,!0,!0,!0])),y=!0,a=0;a<u.length;a++)if(v=u[a],!i.hasRenderableParent(v)&&(p=i.getTile(v),s=p.getBucket(r),s)){var k=t.context.program.get(),w=s.programConfigurations.get(r.id),h=t.useProgram("heatmap",w),b=t.transform.zoom;(y||h.program!==k)&&(w.setUniforms(t.context,h,r.paint,{zoom:b}),y=!1);o.uniform1f(h.uniforms.u_extrude_scale,nt(p,1,b));o.uniform1f(h.uniforms.u_intensity,r.paint.get("heatmap-intensity"));o.uniformMatrix4fv(h.uniforms.u_matrix,!1,v.posMatrix);h.draw(f,o.TRIANGLES,r.id,s.layoutVertexBuffer,s.indexBuffer,s.segments,w)}f.viewport.set([0,0,t.width,t.height])}else"translucent"===t.renderPass&&(t.context.setColorMode(t.colorModeForRenderPass()),function(t,i){var f=t.context,r=f.gl,h=i.heatmapFbo,o,u,l,s;h&&(f.activeTexture.set(r.TEXTURE0),r.bindTexture(r.TEXTURE_2D,h.colorAttachment.get()),f.activeTexture.set(r.TEXTURE1),o=i.colorRampTexture,o||(o=i.colorRampTexture=new n.Texture(f,i.colorRamp,r.RGBA)),o.bind(r.LINEAR,r.CLAMP_TO_EDGE),f.setDepthMode(e.disabled),f.setStencilMode(c.disabled),u=t.useProgram("heatmapTexture"),l=i.paint.get("heatmap-opacity"),r.uniform1f(u.uniforms.u_opacity,l),r.uniform1i(u.uniforms.u_image,0),r.uniform1i(u.uniforms.u_color_ramp,1),s=n.create(),n.ortho(s,0,t.width,t.height,0,0,1),r.uniformMatrix4fv(u.uniforms.u_matrix,!1,s),r.uniform2f(u.uniforms.u_world,r.drawingBufferWidth,r.drawingBufferHeight),t.viewportVAO.bind(t.context,u,t.viewportBuffer,[]),r.drawArrays(r.TRIANGLE_STRIP,0,4))}(t,r))},line:function(n,t,i,r){var l,a,f;if("translucent"===n.renderPass&&(l=i.paint.get("line-opacity"),a=i.paint.get("line-width"),0!==l.constantOr(1)&&0!==a.constantOr(1))){f=n.context;f.setDepthMode(n.depthModeForSublayer(0,e.ReadOnly));f.setColorMode(n.colorModeForRenderPass());for(var v,k=i.paint.get("line-dasharray")?"lineSDF":i.paint.get("line-pattern")?"linePattern":i.paint.get("line-gradient")?"lineGradient":"line",y=!0,o=0,p=r;o<p.length;o+=1){var w=p[o],u=t.getTile(w),s=u.getBucket(i);if(s){var h=s.programConfigurations.get(i.id),d=n.context.program.get(),c=n.useProgram(k,h),b=y||c.program!==d,g=v!==u.tileID.overscaledZ;b&&h.setUniforms(n.context,c,i.paint,{zoom:n.transform.zoom});rc(c,n,u,s,i,w,h,b,g);v=u.tileID.overscaledZ;y=!1}}}},fill:function(t,i,r,u){var h=r.paint.get("fill-color"),o=r.paint.get("fill-opacity"),f,s;0!==o.constantOr(1)&&(f=t.context,f.setColorMode(t.colorModeForRenderPass()),s=r.paint.get("fill-pattern")||1!==h.constantOr(n.Color.transparent).a||1!==o.constantOr(0)?"translucent":"opaque",t.renderPass===s&&(f.setDepthMode(t.depthModeForSublayer(1,"opaque"===t.renderPass?e.ReadWrite:e.ReadOnly)),yo(t,i,r,u,uc)),"translucent"===t.renderPass&&r.paint.get("fill-antialias")&&(f.setDepthMode(t.depthModeForSublayer(r.getPaintProperty("fill-outline-color")?2:0,e.ReadOnly)),yo(t,i,r,u,fc)))},"fill-extrusion":function(t,i,r,u){if(0!==r.paint.get("fill-extrusion-opacity"))if("offscreen"===t.renderPass){!function(t,i){var r=t.context,u=r.gl,f=i.viewportFrame,o;(t.depthRboNeedsClear&&t.setupOffscreenDepthRenderbuffer(),f)||(o=new n.Texture(r,{width:t.width,height:t.height,data:null},u.RGBA),o.bind(u.LINEAR,u.CLAMP_TO_EDGE),(f=i.viewportFrame=r.createFramebuffer(t.width,t.height)).colorAttachment.set(o.texture));r.bindFramebuffer.set(f.framebuffer);f.depthAttachment.set(t.depthRbo);t.depthRboNeedsClear&&(r.clear({depth:1}),t.depthRboNeedsClear=!1);r.clear({color:n.Color.transparent});r.setStencilMode(c.disabled);r.setDepthMode(new e(u.LEQUAL,e.ReadWrite,[0,1]));r.setColorMode(t.colorModeForRenderPass())}(t,r);for(var o=!0,f=0,s=u;f<s.length;f+=1){var h=s[f],l=i.getTile(h),a=l.getBucket(r);a&&(ec(t,0,r,l,h,a,o),o=!1)}}else"translucent"===t.renderPass&&function(t,i){var s=i.viewportFrame,o;if(s){var u=t.context,r=u.gl,f=t.useProgram("extrusionTexture");u.setStencilMode(c.disabled);u.setDepthMode(e.disabled);u.setColorMode(t.colorModeForRenderPass());u.activeTexture.set(r.TEXTURE0);r.bindTexture(r.TEXTURE_2D,s.colorAttachment.get());r.uniform1f(f.uniforms.u_opacity,i.paint.get("fill-extrusion-opacity"));r.uniform1i(f.uniforms.u_image,0);o=n.create();n.ortho(o,0,t.width,t.height,0,0,1);r.uniformMatrix4fv(f.uniforms.u_matrix,!1,o);r.uniform2f(f.uniforms.u_world,r.drawingBufferWidth,r.drawingBufferHeight);t.viewportVAO.bind(u,f,t.viewportBuffer,[]);r.drawArrays(r.TRIANGLE_STRIP,0,4)}}(t,r)},hillshade:function(n,t,i,r){var u,h,f,s,l,o;if("offscreen"===n.renderPass||"translucent"===n.renderPass){for(u=n.context,h=t.getSource().maxzoom,u.setDepthMode(n.depthModeForSublayer(0,e.ReadOnly)),u.setStencilMode(c.disabled),u.setColorMode(n.colorModeForRenderPass()),f=0,s=r;f<s.length;f+=1)l=s[f],o=t.getTile(l),o.needsHillshadePrepare&&"offscreen"===n.renderPass?sc(n,o,h):"translucent"===n.renderPass&&oc(n,o,i);u.viewport.set([0,0,n.width,n.height])}},raster:function(n,t,i,r){var h,o,nt,k,d;if("translucent"===n.renderPass&&0!==i.paint.get("raster-opacity")){var v,y,s=n.context,u=s.gl,p=t.getSource(),f=n.useProgram("raster");s.setStencilMode(c.disabled);s.setColorMode(n.colorModeForRenderPass());u.uniform1f(f.uniforms.u_brightness_low,i.paint.get("raster-brightness-min"));u.uniform1f(f.uniforms.u_brightness_high,i.paint.get("raster-brightness-max"));u.uniform1f(f.uniforms.u_saturation_factor,(v=i.paint.get("raster-saturation"))>0?1-1/(1.001-v):-v);u.uniform1f(f.uniforms.u_contrast_factor,(y=i.paint.get("raster-contrast"))>0?1/(1-y):1+y);u.uniform3fv(f.uniforms.u_spin_weights,function(n){n*=Math.PI/180;var i=Math.sin(n),t=Math.cos(n);return[(2*t+1)/3,(-Math.sqrt(3)*i-t+1)/3,(Math.sqrt(3)*i-t+1)/3]}(i.paint.get("raster-hue-rotate")));u.uniform1f(f.uniforms.u_buffer_scale,1);u.uniform1i(f.uniforms.u_image0,0);u.uniform1i(f.uniforms.u_image1,1);for(var rt=r.length&&r[0].overscaledZ,w=0,g=r;w<g.length;w+=1){h=g[w];s.setDepthMode(n.depthModeForSublayer(h.overscaledZ-rt,1===i.paint.get("raster-opacity")?e.ReadWrite:e.ReadOnly,u.LESS));o=t.getTile(h);nt=n.transform.calculatePosMatrix(h.toUnwrapped(),!0);o.registerFadeDuration(i.paint.get("raster-fade-duration"));u.uniformMatrix4fv(f.uniforms.u_matrix,!1,nt);var l=t.findLoadedParent(h,0),tt=hc(o,l,t,i,n.transform),a=void 0,it=void 0,b="nearest"===i.paint.get("raster-resampling")?u.NEAREST:u.LINEAR;(s.activeTexture.set(u.TEXTURE0),o.texture.bind(b,u.CLAMP_TO_EDGE,u.LINEAR_MIPMAP_NEAREST),s.activeTexture.set(u.TEXTURE1),l?(l.texture.bind(b,u.CLAMP_TO_EDGE,u.LINEAR_MIPMAP_NEAREST),a=Math.pow(2,l.tileID.overscaledZ-o.tileID.overscaledZ),it=[o.tileID.canonical.x*a%1,o.tileID.canonical.y*a%1]):o.texture.bind(b,u.CLAMP_TO_EDGE,u.LINEAR_MIPMAP_NEAREST),u.uniform2fv(f.uniforms.u_tl_parent,it||[0,0]),u.uniform1f(f.uniforms.u_scale_parent,a||1),u.uniform1f(f.uniforms.u_fade_t,tt.mix),u.uniform1f(f.uniforms.u_opacity,tt.opacity*i.paint.get("raster-opacity")),p instanceof gi)?(k=p.boundsBuffer,p.boundsVAO.bind(s,f,k,[]),u.drawArrays(u.TRIANGLE_STRIP,0,k.length)):o.maskedBoundsBuffer&&o.maskedIndexBuffer&&o.segments?f.draw(s,u.TRIANGLES,i.id,o.maskedBoundsBuffer,o.maskedIndexBuffer,o.segments):(d=n.rasterBoundsBuffer,n.rasterBoundsVAO.bind(s,f,d,[]),u.drawArrays(u.TRIANGLE_STRIP,0,d.length))}}},background:function(n,t,i){var f=i.paint.get("background-color"),l=i.paint.get("background-opacity"),r,h,a,v;if(0!==l){var u=n.context,o=u.gl,y=n.transform,p=y.tileSize,s=i.paint.get("background-pattern"),w=s||1!==f.a||1!==l?"translucent":"opaque";if(n.renderPass===w){if(u.setStencilMode(c.disabled),u.setDepthMode(n.depthModeForSublayer(0,"opaque"===w?e.ReadWrite:e.ReadOnly)),u.setColorMode(n.colorModeForRenderPass()),s){if(vf(s,n))return;r=n.useProgram("backgroundPattern");yf(s,n,r);n.tileExtentPatternVAO.bind(u,r,n.tileExtentBuffer,[])}else r=n.useProgram("background"),o.uniform4f(r.uniforms.u_color,f.r,f.g,f.b,f.a),n.tileExtentVAO.bind(u,r,n.tileExtentBuffer,[]);for(o.uniform1f(r.uniforms.u_opacity,l),h=0,a=y.coveringTiles({tileSize:p});h<a.length;h+=1)v=a[h],s&&pf({tileID:v,tileSize:p},n,r),o.uniformMatrix4fv(r.uniforms.u_matrix,!1,n.transform.calculatePosMatrix(v.toUnwrapped())),o.drawArrays(o.TRIANGLE_STRIP,0,n.tileExtentBuffer.length)}}},debug:function(n,t,i){for(var r=0;r<i.length;r++)cc(n,t,i[r])}},y=function(t,i){this.context=new rt(t);this.transform=i;this._tileTextures={};this.setup();this.numSublayers=ti.maxUnderzooming+ti.maxOverzooming+1;this.depthEpsilon=1/Math.pow(2,16);this.depthRboNeedsClear=!0;this.emptyProgramConfiguration=new n.ProgramConfiguration;this.crossTileSymbolIndex=new yi};y.prototype.resize=function(t,i){var e=this.context.gl,r,u,f;if(this.width=t*n.browser.devicePixelRatio,this.height=i*n.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(r=0,u=this.style._order;r<u.length;r+=1)f=u[r],this.style._layers[f].resize();this.depthRbo&&(e.deleteRenderbuffer(this.depthRbo),this.depthRbo=null)};y.prototype.setup=function(){var f=this.context,u=new n.StructArrayLayout2i4,t,i,r;u.emplaceBack(0,0);u.emplaceBack(n.EXTENT,0);u.emplaceBack(0,n.EXTENT);u.emplaceBack(n.EXTENT,n.EXTENT);this.tileExtentBuffer=f.createVertexBuffer(u,lu.members);this.tileExtentVAO=new p;this.tileExtentPatternVAO=new p;t=new n.StructArrayLayout2i4;t.emplaceBack(0,0);t.emplaceBack(n.EXTENT,0);t.emplaceBack(n.EXTENT,n.EXTENT);t.emplaceBack(0,n.EXTENT);t.emplaceBack(0,0);this.debugBuffer=f.createVertexBuffer(t,lu.members);this.debugVAO=new p;i=new n.StructArrayLayout4i8;i.emplaceBack(0,0,0,0);i.emplaceBack(n.EXTENT,0,n.EXTENT,0);i.emplaceBack(0,n.EXTENT,0,n.EXTENT);i.emplaceBack(n.EXTENT,n.EXTENT,n.EXTENT,n.EXTENT);this.rasterBoundsBuffer=f.createVertexBuffer(i,n.rasterBoundsAttributes.members);this.rasterBoundsVAO=new p;r=new n.StructArrayLayout2i4;r.emplaceBack(0,0);r.emplaceBack(1,0);r.emplaceBack(0,1);r.emplaceBack(1,1);this.viewportBuffer=f.createVertexBuffer(r,lu.members);this.viewportVAO=new p};y.prototype.clearStencil=function(){var i=this.context,t=i.gl,r,u;i.setColorMode(l.disabled);i.setDepthMode(e.disabled);i.setStencilMode(new c({func:t.ALWAYS,mask:0},0,255,t.ZERO,t.ZERO,t.ZERO));r=n.create();n.ortho(r,0,this.width,this.height,0,0,1);n.scale(r,r,[t.drawingBufferWidth,t.drawingBufferHeight,0]);u=this.useProgram("clippingMask");t.uniformMatrix4fv(u.uniforms.u_matrix,!1,r);this.viewportVAO.bind(i,u,this.viewportBuffer,[]);t.drawArrays(t.TRIANGLE_STRIP,0,4)};y.prototype._renderTileClippingMasks=function(n){var i=this.context,t=i.gl,s,r,u,f,h,o;for(i.setColorMode(l.disabled),i.setDepthMode(e.disabled),s=1,this._tileClippingMaskIDs={},r=0,u=n;r<u.length;r+=1)f=u[r],h=this._tileClippingMaskIDs[f.key]=s++,i.setStencilMode(new c({func:t.ALWAYS,mask:0},h,255,t.KEEP,t.KEEP,t.REPLACE)),o=this.useProgram("clippingMask"),t.uniformMatrix4fv(o.uniforms.u_matrix,!1,f.posMatrix),this.tileExtentVAO.bind(this.context,o,this.tileExtentBuffer,[]),t.drawArrays(t.TRIANGLE_STRIP,0,this.tileExtentBuffer.length)};y.prototype.stencilModeForClipping=function(n){var t=this.context.gl;return new c({func:t.EQUAL,mask:255},this._tileClippingMaskIDs[n.key],0,t.KEEP,t.KEEP,t.REPLACE)};y.prototype.colorModeForRenderPass=function(){var t=this.context.gl;return this._showOverdrawInspector?new l([t.CONSTANT_COLOR,t.ONE],new n.Color(1/8,1/8,1/8,0),[!0,!0,!0,!0]):"opaque"===this.renderPass?l.unblended:l.alphaBlended};y.prototype.depthModeForSublayer=function(n,t,i){var r=1-((1+this.currentLayer)*this.numSublayers+n)*this.depthEpsilon,u=r-1+this.depthRange;return new e(i||this.context.gl.LEQUAL,t,[u,r])};y.prototype.render=function(t,i){var f,r,rt,a,o,y,p,w,b,ot,l,d,st,s,g,it;this.style=t;this.options=i;this.lineAtlas=t.lineAtlas;this.imageManager=t.imageManager;this.glyphManager=t.glyphManager;this.symbolFadeChange=t.placement.symbolFadeChange(n.browser.now());f=this.style._order;r=this.style.sourceCaches;for(rt in r)a=r[rt],a.used&&a.prepare(this.context);var h,e={},v={},ut={};for(o in r)y=r[o],e[o]=y.getVisibleCoordinates(),v[o]=e[o].slice().reverse(),ut[o]=y.getVisibleCoordinates(!0).reverse();for(p in r)if(w=r[p],b=w.getSource(),"raster"===b.type||"raster-dem"===b.type){for(var ft=[],k=0,et=e[p];k<et.length;k+=1)ot=et[k],ft.push(w.getTile(ot));nc(ft,this.context)}for(this.renderPass="offscreen",this.depthRboNeedsClear=!0,l=0,d=f;l<d.length;l+=1)st=d[l],s=this.style._layers[st],s.hasOffscreenPass()&&!s.isHidden(this.transform.zoom)&&(g=v[s.source],g.length&&this.renderLayer(this,r[s.source],s,g));for(this.context.bindFramebuffer.set(null),this.context.clear({color:i.showOverdrawInspector?n.Color.black:n.Color.transparent,depth:1}),this._showOverdrawInspector=i.showOverdrawInspector,this.depthRange=(t._order.length+2)*this.numSublayers*this.depthEpsilon,this.renderPass="opaque",this.currentLayer=f.length-1;this.currentLayer>=0;this.currentLayer--){var c=this.style._layers[f[this.currentLayer]],nt=r[c.source],ht=e[c.source];c.source!==h&&nt&&(this.clearStencil(),nt.getSource().isTileClipped&&this._renderTileClippingMasks(ht));this.renderLayer(this,nt,c,ht);h=c.source}for(this.renderPass="translucent",this.currentLayer=0,h=null;this.currentLayer<f.length;this.currentLayer++){var u=this.style._layers[f[this.currentLayer]],tt=r[u.source],ct=("symbol"===u.type?ut:v)[u.source];u.source!==h&&tt&&(this.clearStencil(),tt.getSource().isTileClipped&&this._renderTileClippingMasks(e[u.source]));this.renderLayer(this,tt,u,ct);h=u.source}if(this.options.showTileBoundaries)for(it in r){wo.debug(this,r[it],e[it]);break}};y.prototype.setupOffscreenDepthRenderbuffer=function(){var n=this.context;this.depthRbo||(this.depthRbo=n.createRenderbuffer(n.gl.DEPTH_COMPONENT16,this.width,this.height))};y.prototype.renderLayer=function(n,t,i,r){i.isHidden(this.transform.zoom)||("background"===i.type||r.length)&&(this.id=i.id,wo[i.type](n,t,i,r))};y.prototype.translatePosMatrix=function(t,i,r,u,f){var e,o,s,c,h;return!r[0]&&!r[1]?t:(e=f?"map"===u?this.transform.angle:0:"viewport"===u?-this.transform.angle:0,e&&(o=Math.sin(e),s=Math.cos(e),r=[r[0]*s-r[1]*o,r[0]*o+r[1]*s]),c=[f?r[0]:nt(i,r[0],this.transform.zoom),f?r[1]:nt(i,r[1],this.transform.zoom),0],h=new Float32Array(16),n.translate(h,t,c),h)};y.prototype.saveTileTexture=function(n){var t=this._tileTextures[n.size[0]];t?t.push(n):this._tileTextures[n.size[0]]=[n]};y.prototype.getTileTexture=function(n){var t=this._tileTextures[n];return t&&t.length>0?t.pop():null};y.prototype._createProgramCached=function(n,t){this.cache=this.cache||{};var i=""+n+(t.cacheKey||"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[i]||(this.cache[i]=new af(this.context,au[n],t,this._showOverdrawInspector)),this.cache[i]};y.prototype.useProgram=function(n,t){var i=this._createProgramCached(n,t||this.emptyProgramConfiguration);return this.context.program.set(i.program),i};u=function(n,t,r){this.tileSize=512;this.maxValidLatitude=85.051129;this._renderWorldCopies=void 0===r||r;this._minZoom=n||0;this._maxZoom=t||22;this.setMaxBounds();this.width=0;this.height=0;this._center=new i(0,0);this.zoom=0;this.angle=0;this._fov=.64350110879328437;this._pitch=0;this._unmodified=!0;this._posMatrixCache={};this._alignedPosMatrixCache={}};o={minZoom:{configurable:!0},maxZoom:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerPoint:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},unmodified:{configurable:!0},x:{configurable:!0},y:{configurable:!0},point:{configurable:!0}};u.prototype.clone=function(){var n=new u(this._minZoom,this._maxZoom,this._renderWorldCopies);return n.tileSize=this.tileSize,n.latRange=this.latRange,n.width=this.width,n.height=this.height,n._center=this._center,n.zoom=this.zoom,n.angle=this.angle,n._fov=this._fov,n._pitch=this._pitch,n._unmodified=this._unmodified,n._calcMatrices(),n};o.minZoom.get=function(){return this._minZoom};o.minZoom.set=function(n){this._minZoom!==n&&(this._minZoom=n,this.zoom=Math.max(this.zoom,n))};o.maxZoom.get=function(){return this._maxZoom};o.maxZoom.set=function(n){this._maxZoom!==n&&(this._maxZoom=n,this.zoom=Math.min(this.zoom,n))};o.renderWorldCopies.get=function(){return this._renderWorldCopies};o.renderWorldCopies.set=function(n){void 0===n?n=!0:null===n&&(n=!1);this._renderWorldCopies=n};o.worldSize.get=function(){return this.tileSize*this.scale};o.centerPoint.get=function(){return this.size._div(2)};o.size.get=function(){return new n.Point(this.width,this.height)};o.bearing.get=function(){return-this.angle/Math.PI*180};o.bearing.set=function(t){var i=-n.wrap(t,-180,180)*Math.PI/180;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=n.create$4(),n.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))};o.pitch.get=function(){return this._pitch/Math.PI*180};o.pitch.set=function(t){var i=n.clamp(t,0,60)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())};o.fov.get=function(){return this._fov/Math.PI*180};o.fov.set=function(n){n=Math.max(.01,Math.min(60,n));this._fov!==n&&(this._unmodified=!1,this._fov=n/180*Math.PI,this._calcMatrices())};o.zoom.get=function(){return this._zoom};o.zoom.set=function(n){var t=Math.min(Math.max(n,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._zoom=t,this.scale=this.zoomScale(t),this.tileZoom=Math.floor(t),this.zoomFraction=t-this.tileZoom,this._constrain(),this._calcMatrices())};o.center.get=function(){return this._center};o.center.set=function(n){n.lat===this._center.lat&&n.lng===this._center.lng||(this._unmodified=!1,this._center=n,this._constrain(),this._calcMatrices())};u.prototype.coveringZoomLevel=function(n){return(n.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/n.tileSize))};u.prototype.getVisibleUnwrappedCoordinates=function(t){var u=this.pointCoordinate(new n.Point(0,0),0),f=this.pointCoordinate(new n.Point(this.width,0),0),e=Math.floor(u.column),o=Math.floor(f.column),r=[new n.UnwrappedTileID(0,t)],i;if(this._renderWorldCopies)for(i=e;i<=o;i++)0!==i&&r.push(new n.UnwrappedTileID(i,t));return r};u.prototype.coveringTiles=function(t){var i=this.coveringZoomLevel(t),f=i,r,u;return void 0!==t.minzoom&&i<t.minzoom?[]:(void 0!==t.maxzoom&&i>t.maxzoom&&(i=t.maxzoom),r=this.pointCoordinate(this.centerPoint,i),u=new n.Point(r.column-.5,r.row-.5),function(t,i,r,u){function o(i,o,s){var h,c,a,l;if(s>=0&&s<=f)for(h=i;h<o;h++)c=Math.floor(h/f),a=(h%f+f)%f,0!==c&&!0!==u||(l=new n.OverscaledTileID(r,c,t,a,s),e[l.key]=l)}void 0===u&&(u=!0);var f=1<<t,e={};return ko(i[0],i[1],i[2],0,f,o),ko(i[2],i[3],i[0],0,f,o),Object.keys(e).map(function(n){return e[n]})}(i,[this.pointCoordinate(new n.Point(0,0),i),this.pointCoordinate(new n.Point(this.width,0),i),this.pointCoordinate(new n.Point(this.width,this.height),i),this.pointCoordinate(new n.Point(0,this.height),i)],t.reparseOverscaled?f:i,this._renderWorldCopies).sort(function(n,t){return u.dist(n.canonical)-u.dist(t.canonical)}))};u.prototype.resize=function(n,t){this.width=n;this.height=t;this.pixelsToGLUnits=[2/n,-2/t];this._constrain();this._calcMatrices()};o.unmodified.get=function(){return this._unmodified};u.prototype.zoomScale=function(n){return Math.pow(2,n)};u.prototype.scaleZoom=function(n){return Math.log(n)/Math.LN2};u.prototype.project=function(t){return new n.Point(this.lngX(t.lng),this.latY(t.lat))};u.prototype.unproject=function(n){return new i(this.xLng(n.x),this.yLat(n.y))};o.x.get=function(){return this.lngX(this.center.lng)};o.y.get=function(){return this.latY(this.center.lat)};o.point.get=function(){return new n.Point(this.x,this.y)};u.prototype.lngX=function(n){return(180+n)*this.worldSize/360};u.prototype.latY=function(t){return t=n.clamp(t,-this.maxValidLatitude,this.maxValidLatitude),(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))*this.worldSize/360};u.prototype.xLng=function(n){return 360*n/this.worldSize-180};u.prototype.yLat=function(n){var t=180-360*n/this.worldSize;return 360/Math.PI*Math.atan(Math.exp(t*Math.PI/180))-90};u.prototype.setLocationAtPoint=function(n,t){var i=this.pointCoordinate(t)._sub(this.pointCoordinate(this.centerPoint));this.center=this.coordinateLocation(this.locationCoordinate(n)._sub(i));this._renderWorldCopies&&(this.center=this.center.wrap())};u.prototype.locationPoint=function(n){return this.coordinatePoint(this.locationCoordinate(n))};u.prototype.pointLocation=function(n){return this.coordinateLocation(this.pointCoordinate(n))};u.prototype.locationCoordinate=function(t){return new n.Coordinate(this.lngX(t.lng)/this.tileSize,this.latY(t.lat)/this.tileSize,this.zoom).zoomTo(this.tileZoom)};u.prototype.coordinateLocation=function(n){var t=n.zoomTo(this.zoom);return new i(this.xLng(t.column*this.tileSize),this.yLat(t.row*this.tileSize))};u.prototype.pointCoordinate=function(t,i){var r,u;void 0===i&&(i=this.tileZoom);r=[t.x,t.y,0,1];u=[t.x,t.y,1,1];n.transformMat4(r,r,this.pixelMatrixInverse);n.transformMat4(u,u,this.pixelMatrixInverse);var f=r[3],e=u[3],c=r[0]/f,l=u[0]/e,a=r[1]/f,v=u[1]/e,o=r[2]/f,s=u[2]/e,h=o===s?0:(0-o)/(s-o);return new n.Coordinate(n.number(c,l,h)/this.tileSize,n.number(a,v,h)/this.tileSize,this.zoom)._zoomTo(i)};u.prototype.coordinatePoint=function(t){var r=t.zoomTo(this.zoom),i=[r.column*this.tileSize,r.row*this.tileSize,0,1];return n.transformMat4(i,i,this.pixelMatrix),new n.Point(i[0]/i[3],i[1]/i[3])};u.prototype.getBounds=function(){return(new f).extend(this.pointLocation(new n.Point(0,0))).extend(this.pointLocation(new n.Point(this.width,0))).extend(this.pointLocation(new n.Point(this.width,this.height))).extend(this.pointLocation(new n.Point(0,this.height)))};u.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new f([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null};u.prototype.setMaxBounds=function(n){n?(this.lngRange=[n.getWest(),n.getEast()],this.latRange=[n.getSouth(),n.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])};u.prototype.calculatePosMatrix=function(t,i){var u,f;if(void 0===i&&(i=!1),u=t.key,f=i?this._alignedPosMatrixCache:this._posMatrixCache,f[u])return f[u];var e=t.canonical,o=this.worldSize/this.zoomScale(e.z),s=e.x+Math.pow(2,e.z)*t.wrap,r=n.identity(new Float64Array(16));return n.translate(r,r,[s*o,e.y*o,0]),n.scale(r,r,[o/n.EXTENT,o/n.EXTENT,1]),n.multiply(r,i?this.alignedProjMatrix:this.projMatrix,r),f[u]=new Float32Array(r),f[u]};u.prototype._constrain=function(){var a,v,y,p,s,w,h;if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var c,l,u,f,t=-90,e=90,i=-180,o=180,r=this.size,b=this._unmodified;if(this.latRange&&(a=this.latRange,t=this.latY(a[1]),c=(e=this.latY(a[0]))-t<r.y?r.y/(e-t):0),this.lngRange&&(v=this.lngRange,i=this.lngX(v[0]),l=(o=this.lngX(v[1]))-i<r.x?r.x/(o-i):0),y=Math.max(l||0,c||0),y)return this.center=this.unproject(new n.Point(l?(o+i)/2:this.x,c?(e+t)/2:this.y)),this.zoom+=this.scaleZoom(y),this._unmodified=b,void(this._constraining=!1);this.latRange&&(p=this.y,s=r.y/2,p-s<t&&(f=t+s),p+s>e&&(f=e-s));this.lngRange&&(w=this.x,h=r.x/2,w-h<i&&(u=i+h),w+h>o&&(u=o-h));void 0===u&&void 0===f||(this.center=this.unproject(new n.Point(void 0!==u?u:this.x,void 0!==f?f:this.y)));this._unmodified=b;this._constraining=!1}};u.prototype._calcMatrices=function(){var s;if(this.height){this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var o=this._fov/2,v=Math.PI/2+this._pitch,y=Math.sin(o)*this.cameraToCenterDistance/Math.sin(Math.PI-v-o),i=this.x,r=this.y,p=1.01*(Math.cos(Math.PI/2-this._pitch)*y+this.cameraToCenterDistance),t=new Float64Array(16);n.perspective(t,this._fov,this.width/this.height,1,p);n.scale(t,t,[1,-1,1]);n.translate(t,t,[0,0,-this.cameraToCenterDistance]);n.rotateX(t,t,this._pitch);n.rotateZ(t,t,this.angle);n.translate(t,t,[-i,-r,0]);s=this.worldSize/(12756274*Math.PI*Math.abs(Math.cos(this.center.lat*(Math.PI/180))));n.scale(t,t,[1,1,s,1]);this.projMatrix=t;var h=this.width%2/2,c=this.height%2/2,l=Math.cos(this.angle),a=Math.sin(this.angle),u=i-Math.round(i)+l*h+a*c,f=r-Math.round(r)+l*c+a*h,e=new Float64Array(t);if(n.translate(e,e,[u>.5?u-1:u,f>.5?f-1:f,0]),this.alignedProjMatrix=e,t=n.create(),n.scale(t,t,[this.width/2,-this.height/2,1]),n.translate(t,t,[1,-1,0]),this.pixelMatrix=n.multiply(new Float64Array(16),t,this.projMatrix),!(t=n.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=t;this._posMatrixCache={};this._alignedPosMatrixCache={}}};u.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var t=this.pointCoordinate(new n.Point(0,0)).zoomTo(this.zoom),i=[t.column*this.tileSize,t.row*this.tileSize,0,1];return n.transformMat4(i,i,this.pixelMatrix)[3]/this.cameraToCenterDistance};Object.defineProperties(u.prototype,o);bt=function(){var u,f,i,t,r;n.bindAll(["_onHashChange","_updateHash"],this);this._updateHash=(u=this._updateHashUnthrottled.bind(this),f=300,i=!1,t=0,r=function(){t=0;i&&(u(),t=setTimeout(r,f),i=!1)},function(){return i=!0,t||r(),t})};bt.prototype.addTo=function(t){return this._map=t,n.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this};bt.prototype.remove=function(){return n.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this};bt.prototype.getHashString=function(n){var f=this._map.getCenter(),r=Math.round(100*this._map.getZoom())/100,h=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),t=Math.pow(10,h),e=Math.round(f.lng*t)/t,o=Math.round(f.lat*t)/t,s=this._map.getBearing(),u=this._map.getPitch(),i="";return i+=n?"#/"+e+"/"+o+"/"+r:"#"+r+"/"+o+"/"+e,(s||u)&&(i+="/"+Math.round(10*s)/10),u&&(i+="/"+Math.round(u)),i};bt.prototype._onHashChange=function(){var t=n.window.location.hash.replace("#","").split("/");return t.length>=3&&(this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:+(t[3]||0),pitch:+(t[4]||0)}),!0)};bt.prototype._updateHashUnthrottled=function(){var t=this.getHashString();n.window.history.replaceState(n.window.history.state,"",t)};var d=function(i){function r(r,u,f,e){void 0===e&&(e={});var o=t.mousePos(u.getCanvasContainer(),f),s=u.unproject(o);i.call(this,r,n.extend({point:o,lngLat:s,originalEvent:f},e));this._defaultPrevented=!1;this.target=u}i&&(r.__proto__=i);r.prototype=Object.create(i&&i.prototype);r.prototype.constructor=r;var u={defaultPrevented:{configurable:!0}};return r.prototype.preventDefault=function(){this._defaultPrevented=!0},u.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(r.prototype,u),r}(n.Event),vu=function(i){function r(r,u,f){var e=t.touchPos(u.getCanvasContainer(),f),s=e.map(function(n){return u.unproject(n)}),o=e.reduce(function(n,t,i,r){return n.add(t.div(r.length))},new n.Point(0,0)),h=u.unproject(o);i.call(this,r,{points:e,point:o,lngLats:s,lngLat:h,originalEvent:f});this._defaultPrevented=!1}i&&(r.__proto__=i);r.prototype=Object.create(i&&i.prototype);r.prototype.constructor=r;var u={defaultPrevented:{configurable:!0}};return r.prototype.preventDefault=function(){this._defaultPrevented=!0},u.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(r.prototype,u),r}(n.Event),ac=function(n){function t(t,i,r){n.call(this,t,{originalEvent:r});this._defaultPrevented=!1}n&&(t.__proto__=n);t.prototype=Object.create(n&&n.prototype);t.prototype.constructor=t;var i={defaultPrevented:{configurable:!0}};return t.prototype.preventDefault=function(){this._defaultPrevented=!0},i.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(t.prototype,i),t}(n.Event),ut=function(t){this._map=t;this._el=t.getCanvasContainer();this._delta=0;n.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};ut.prototype.isEnabled=function(){return!!this._enabled};ut.prototype.isActive=function(){return!!this._active};ut.prototype.enable=function(n){this.isEnabled()||(this._enabled=!0,this._aroundCenter=n&&"center"===n.around)};ut.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)};ut.prototype.onWheel=function(t){if(this.isEnabled()){var i=t.deltaMode===n.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY,r=n.browser.now(),u=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r;0!==i&&i%4.000244140625==0?this._type="wheel":0!==i&&Math.abs(i)<4?this._type="trackpad":u>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(u*i)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue));t.shiftKey&&i&&(i/=4);this._type&&(this._lastWheelEvent=t,this._delta-=i,this.isActive()||this._start(t));t.preventDefault()}};ut.prototype._onTimeout=function(n){this._type="wheel";this._delta-=this._lastValue;this.isActive()||this._start(n)};ut.prototype._start=function(r){if(this._delta){this._frameId&&(this._map._cancelRenderFrame(this._frameId),this._frameId=null);this._active=!0;this._map.fire(new n.Event("movestart",{originalEvent:r}));this._map.fire(new n.Event("zoomstart",{originalEvent:r}));this._finishTimeout&&clearTimeout(this._finishTimeout);var u=t.mousePos(this._el,r);this._around=i.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(u));this._aroundPoint=this._map.transform.locationPoint(this._around);this._frameId||(this._frameId=this._map._requestRenderFrame(this._onScrollFrame))}};ut.prototype._onScrollFrame=function(){var i=this,t,e,r,o,f,l;if(this._frameId=null,this.isActive()){t=this._map.transform;0!==this._delta&&(e="wheel"===this._type&&Math.abs(this._delta)>4.000244140625?1/450:.01,r=2/(1+Math.exp(-Math.abs(this._delta*e))),this._delta<0&&0!==r&&(r=1/r),o="number"==typeof this._targetZoom?t.zoomScale(this._targetZoom):t.scale,this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(o*r))),"wheel"===this._type&&(this._startZoom=t.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0);var s="number"==typeof this._targetZoom?this._targetZoom:t.zoom,h=this._startZoom,c=this._easing,u=!1;"wheel"===this._type&&h&&c?(f=Math.min((n.browser.now()-this._lastWheelEventTime)/200,1),l=c(f),t.zoom=n.number(h,s,l),f<1?this._frameId||(this._frameId=this._map._requestRenderFrame(this._onScrollFrame)):u=!0):(t.zoom=s,u=!0);t.setLocationAtPoint(this._around,this._aroundPoint);this._map.fire(new n.Event("move",{originalEvent:this._lastWheelEvent}));this._map.fire(new n.Event("zoom",{originalEvent:this._lastWheelEvent}));u&&(this._active=!1,this._finishTimeout=setTimeout(function(){i._map.fire(new n.Event("zoomend",{originalEvent:i._lastWheelEvent}));i._map.fire(new n.Event("moveend",{originalEvent:i._lastWheelEvent}));delete i._targetZoom},200))}};ut.prototype._smoothOutEasing=function(t){var r=n.ease;if(this._prevEase){var i=this._prevEase,f=(n.browser.now()-i.start)/i.duration,e=i.easing(f+.01)-i.easing(f),u=.27/Math.sqrt(e*e+.0001)*.01,o=Math.sqrt(.0729-u*u);r=n.bezier(u,o,.25,1)}return this._prevEase={start:n.browser.now(),duration:t,easing:r},r};g=function(t,i){this._map=t;this._el=t.getCanvasContainer();this._container=t.getContainer();this._clickTolerance=i.clickTolerance||1;n.bindAll(["_onMouseMove","_onMouseUp","_onKeyDown"],this)};g.prototype.isEnabled=function(){return!!this._enabled};g.prototype.isActive=function(){return!!this._active};g.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)};g.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)};g.prototype.onMouseDown=function(i){this.isEnabled()&&i.shiftKey&&0===i.button&&(n.window.document.addEventListener("mousemove",this._onMouseMove,!1),n.window.document.addEventListener("keydown",this._onKeyDown,!1),n.window.document.addEventListener("mouseup",this._onMouseUp,!1),t.disableDrag(),this._startPos=this._lastPos=t.mousePos(this._el,i),this._active=!0)};g.prototype._onMouseMove=function(n){var i=t.mousePos(this._el,n),r;if(!(this._lastPos.equals(i)||!this._box&&i.dist(this._startPos)<this._clickTolerance)){r=this._startPos;this._lastPos=i;this._box||(this._box=t.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",n));var u=Math.min(r.x,i.x),e=Math.max(r.x,i.x),f=Math.min(r.y,i.y),o=Math.max(r.y,i.y);t.setTransform(this._box,"translate("+u+"px,"+f+"px)");this._box.style.width=e-u+"px";this._box.style.height=o-f+"px"}};g.prototype._onMouseUp=function(i){if(0===i.button){var r=this._startPos,u=t.mousePos(this._el,i),e=(new f).extend(this._map.unproject(r)).extend(this._map.unproject(u));this._finish();t.suppressClick();r.x===u.x&&r.y===u.y?this._fireEvent("boxzoomcancel",i):this._map.fitBounds(e,{linear:!0}).fire(new n.Event("boxzoomend",{originalEvent:i,boxZoomBounds:e}))}};g.prototype._onKeyDown=function(n){27===n.keyCode&&(this._finish(),this._fireEvent("boxzoomcancel",n))};g.prototype._finish=function(){this._active=!1;n.window.document.removeEventListener("mousemove",this._onMouseMove,!1);n.window.document.removeEventListener("keydown",this._onKeyDown,!1);n.window.document.removeEventListener("mouseup",this._onMouseUp,!1);this._container.classList.remove("mapboxgl-crosshair");this._box&&(t.remove(this._box),this._box=null);t.enableDrag();delete this._startPos;delete this._lastPos};g.prototype._fireEvent=function(t,i){return this._map.fire(new n.Event(t,{originalEvent:i}))};go=n.bezier(0,0,.25,1);a=function(t,i){this._map=t;this._el=i.element||t.getCanvasContainer();this._state="disabled";this._button=i.button||"right";this._bearingSnap=i.bearingSnap||0;this._pitchWithRotate=!1!==i.pitchWithRotate;n.bindAll(["onMouseDown","_onMouseMove","_onMouseUp","_onBlur","_onDragFrame"],this)};a.prototype.isEnabled=function(){return"disabled"!==this._state};a.prototype.isActive=function(){return"active"===this._state};a.prototype.enable=function(){this.isEnabled()||(this._state="enabled")};a.prototype.disable=function(){if(this.isEnabled())switch(this._state){case"active":this._state="disabled";this._unbind();this._deactivate();this._fireEvent("rotateend");this._pitchWithRotate&&this._fireEvent("pitchend");this._fireEvent("moveend");break;case"pending":this._state="disabled";this._unbind();break;default:this._state="disabled"}};a.prototype.onMouseDown=function(i){if("enabled"===this._state){if("right"===this._button){if(this._eventButton=t.mouseButton(i),this._eventButton!==(i.ctrlKey?0:2))return}else{if(i.ctrlKey||0!==t.mouseButton(i))return;this._eventButton=0}t.disableDrag();n.window.document.addEventListener("mousemove",this._onMouseMove,{capture:!0});n.window.document.addEventListener("mouseup",this._onMouseUp);n.window.addEventListener("blur",this._onBlur);this._state="pending";this._inertia=[[n.browser.now(),this._map.getBearing()]];this._startPos=this._lastPos=t.mousePos(this._el,i);this._center=this._map.transform.centerPoint;i.preventDefault()}};a.prototype._onMouseMove=function(n){var i=t.mousePos(this._el,n);this._lastPos.equals(i)||(this._lastMoveEvent=n,this._lastPos=i,"pending"===this._state&&(this._state="active",this._fireEvent("rotatestart",n),this._fireEvent("movestart",n),this._pitchWithRotate&&this._fireEvent("pitchstart",n)),this._frameId||(this._frameId=this._map._requestRenderFrame(this._onDragFrame)))};a.prototype._onDragFrame=function(){var t;if(this._frameId=null,t=this._lastMoveEvent,t){var i=this._map.transform,u=this._startPos,f=this._lastPos,o=.8*(u.x-f.x),s=-.5*(u.y-f.y),e=i.bearing-o,h=i.pitch-s,r=this._inertia,c=r[r.length-1];this._drainInertiaBuffer();r.push([n.browser.now(),this._map._normalizeBearing(e,c[1])]);i.bearing=e;this._pitchWithRotate&&(this._fireEvent("pitch",t),i.pitch=h);this._fireEvent("rotate",t);this._fireEvent("move",t);delete this._lastMoveEvent;this._startPos=this._lastPos}};a.prototype._onMouseUp=function(n){if(t.mouseButton(n)===this._eventButton)switch(this._state){case"active":this._state="enabled";t.suppressClick();this._unbind();this._deactivate();this._inertialRotate(n);break;case"pending":this._state="enabled";this._unbind()}};a.prototype._onBlur=function(n){switch(this._state){case"active":this._state="enabled";this._unbind();this._deactivate();this._fireEvent("rotateend",n);this._pitchWithRotate&&this._fireEvent("pitchend",n);this._fireEvent("moveend",n);break;case"pending":this._state="enabled";this._unbind()}};a.prototype._unbind=function(){n.window.document.removeEventListener("mousemove",this._onMouseMove,{capture:!0});n.window.document.removeEventListener("mouseup",this._onMouseUp);n.window.removeEventListener("blur",this._onBlur);t.enableDrag()};a.prototype._deactivate=function(){this._frameId&&(this._map._cancelRenderFrame(this._frameId),this._frameId=null);delete this._lastMoveEvent;delete this._startPos;delete this._lastPos};a.prototype._inertialRotate=function(n){var f=this,u,o;this._fireEvent("rotateend",n);this._drainInertiaBuffer();var t=this._map,s=t.getBearing(),i=this._inertia,h=function(){Math.abs(s)<f._bearingSnap?t.resetNorth({noMoveStart:!0},{originalEvent:n}):f._fireEvent("moveend",n);f._pitchWithRotate&&f._fireEvent("pitchend",n)};if(i.length<2)h();else{var c=i[0],l=i[i.length-1],v=i[i.length-2],r=t._normalizeBearing(s,v[1]),e=l[1]-c[1],y=e<0?-1:1,a=(l[0]-c[0])/1e3;0!==e&&0!==a?(u=Math.abs(e*(.25/a)),u>180&&(u=180),o=u/180,r+=y*u*(o/2),Math.abs(t._normalizeBearing(r,0))<this._bearingSnap&&(r=t._normalizeBearing(0,r)),t.rotateTo(r,{duration:1e3*o,easing:go,noMoveStart:!0},{originalEvent:n})):h()}};a.prototype._fireEvent=function(t,i){return this._map.fire(new n.Event(t,i?{originalEvent:i}:{}))};a.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,i=n.browser.now();t.length>0&&i-t[0][0]>160;)t.shift()};ns=n.bezier(0,0,.3,1);h=function(t,i){this._map=t;this._el=t.getCanvasContainer();this._state="disabled";this._clickTolerance=i.clickTolerance||1;n.bindAll(["_onMove","_onMouseUp","_onTouchEnd","_onBlur","_onDragFrame"],this)};h.prototype.isEnabled=function(){return"disabled"!==this._state};h.prototype.isActive=function(){return"active"===this._state};h.prototype.enable=function(){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-drag-pan"),this._state="enabled")};h.prototype.disable=function(){if(this.isEnabled())switch(this._el.classList.remove("mapboxgl-touch-drag-pan"),this._state){case"active":this._state="disabled";this._unbind();this._deactivate();this._fireEvent("dragend");this._fireEvent("moveend");break;case"pending":this._state="disabled";this._unbind();break;default:this._state="disabled"}};h.prototype.onMouseDown=function(i){"enabled"===this._state&&(i.ctrlKey||0!==t.mouseButton(i)||(t.addEventListener(n.window.document,"mousemove",this._onMove,{capture:!0}),t.addEventListener(n.window.document,"mouseup",this._onMouseUp),this._start(i)))};h.prototype.onTouchStart=function(i){"enabled"===this._state&&(i.touches.length>1||(t.addEventListener(n.window.document,"touchmove",this._onMove,{capture:!0,passive:!1}),t.addEventListener(n.window.document,"touchend",this._onTouchEnd),this._start(i)))};h.prototype._start=function(i){n.window.addEventListener("blur",this._onBlur);this._state="pending";this._startPos=this._mouseDownPos=this._lastPos=t.mousePos(this._el,i);this._inertia=[[n.browser.now(),this._startPos]]};h.prototype._onMove=function(i){i.preventDefault();var r=t.mousePos(this._el,i);this._lastPos.equals(r)||"pending"===this._state&&r.dist(this._mouseDownPos)<this._clickTolerance||(this._lastMoveEvent=i,this._lastPos=r,this._drainInertiaBuffer(),this._inertia.push([n.browser.now(),this._lastPos]),"pending"===this._state&&(this._state="active",this._fireEvent("dragstart",i),this._fireEvent("movestart",i)),this._frameId||(this._frameId=this._map._requestRenderFrame(this._onDragFrame)))};h.prototype._onDragFrame=function(){var n,t;this._frameId=null;n=this._lastMoveEvent;n&&(t=this._map.transform,t.setLocationAtPoint(t.pointLocation(this._startPos),this._lastPos),this._fireEvent("drag",n),this._fireEvent("move",n),this._startPos=this._lastPos,delete this._lastMoveEvent)};h.prototype._onMouseUp=function(n){if(0===t.mouseButton(n))switch(this._state){case"active":this._state="enabled";t.suppressClick();this._unbind();this._deactivate();this._inertialPan(n);break;case"pending":this._state="enabled";this._unbind()}};h.prototype._onTouchEnd=function(n){switch(this._state){case"active":this._state="enabled";this._unbind();this._deactivate();this._inertialPan(n);break;case"pending":this._state="enabled";this._unbind()}};h.prototype._onBlur=function(n){switch(this._state){case"active":this._state="enabled";this._unbind();this._deactivate();this._fireEvent("dragend",n);this._fireEvent("moveend",n);break;case"pending":this._state="enabled";this._unbind()}};h.prototype._unbind=function(){t.removeEventListener(n.window.document,"touchmove",this._onMove,{capture:!0,passive:!1});t.removeEventListener(n.window.document,"touchend",this._onTouchEnd);t.removeEventListener(n.window.document,"mousemove",this._onMove,{capture:!0});t.removeEventListener(n.window.document,"mouseup",this._onMouseUp);t.removeEventListener(n.window,"blur",this._onBlur)};h.prototype._deactivate=function(){this._frameId&&(this._map._cancelRenderFrame(this._frameId),this._frameId=null);delete this._lastMoveEvent;delete this._startPos;delete this._mouseDownPos;delete this._lastPos};h.prototype._inertialPan=function(n){var t,r,i,e,s;if(this._fireEvent("dragend",n),this._drainInertiaBuffer(),t=this._inertia,t.length<2)this._fireEvent("moveend",n);else{var u=t[t.length-1],f=t[0],h=u[1].sub(f[1]),o=(u[0]-f[0])/1e3;0===o||u[1].equals(f[1])?this._fireEvent("moveend",n):(r=h.mult(.3/o),i=r.mag(),i>1400&&(i=1400,r._unit()._mult(i)),e=i/750,s=r.mult(-e/2),this._map.panBy(s,{duration:1e3*e,easing:ns,noMoveStart:!0},{originalEvent:n}))}};h.prototype._fireEvent=function(t,i){return this._map.fire(new n.Event(t,i?{originalEvent:i}:{}))};h.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,i=n.browser.now();t.length>0&&i-t[0][0]>160;)t.shift()};ri=function(t){this._map=t;this._el=t.getCanvasContainer();n.bindAll(["_onKeyDown"],this)};ri.prototype.isEnabled=function(){return!!this._enabled};ri.prototype.enable=function(){this.isEnabled()||(this._el.addEventListener("keydown",this._onKeyDown,!1),this._enabled=!0)};ri.prototype.disable=function(){this.isEnabled()&&(this._el.removeEventListener("keydown",this._onKeyDown),this._enabled=!1)};ri.prototype._onKeyDown=function(n){if(!(n.altKey||n.ctrlKey||n.metaKey)){var i=0,r=0,u=0,f=0,e=0;switch(n.keyCode){case 61:case 107:case 171:case 187:i=1;break;case 189:case 109:case 173:i=-1;break;case 37:n.shiftKey?r=-1:(n.preventDefault(),f=-1);break;case 39:n.shiftKey?r=1:(n.preventDefault(),f=1);break;case 38:n.shiftKey?u=1:(n.preventDefault(),e=-1);break;case 40:n.shiftKey?u=-1:(e=1,n.preventDefault());break;default:return}var t=this._map,o=t.getZoom(),s={duration:300,delayEndEvents:500,easing:vc,zoom:i?Math.round(o)+i*(n.shiftKey?2:1):o,bearing:t.getBearing()+15*r,pitch:t.getPitch()+10*u,offset:[100*-f,100*-e],center:t.getCenter()};t.easeTo(s,{originalEvent:n})}};ft=function(t){this._map=t;n.bindAll(["_onDblClick","_onZoomEnd"],this)};ft.prototype.isEnabled=function(){return!!this._enabled};ft.prototype.isActive=function(){return!!this._active};ft.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)};ft.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)};ft.prototype.onTouchStart=function(n){var t=this;this.isEnabled()&&(n.points.length>1||(this._tapped?(clearTimeout(this._tapped),this._tapped=null,this._zoom(n)):this._tapped=setTimeout(function(){t._tapped=null},300)))};ft.prototype.onDblClick=function(n){this.isEnabled()&&(n.originalEvent.preventDefault(),this._zoom(n))};ft.prototype._zoom=function(n){this._active=!0;this._map.on("zoomend",this._onZoomEnd);this._map.zoomTo(this._map.getZoom()+(n.originalEvent.shiftKey?-1:1),{around:n.lngLat},n)};ft.prototype._onZoomEnd=function(){this._active=!1;this._map.off("zoomend",this._onZoomEnd)};ts=n.bezier(0,0,.15,1);b=function(t){this._map=t;this._el=t.getCanvasContainer();n.bindAll(["_onMove","_onEnd","_onTouchFrame"],this)};b.prototype.isEnabled=function(){return!!this._enabled};b.prototype.enable=function(n){this.isEnabled()||(this._el.classList.add("mapboxgl-touch-zoom-rotate"),this._enabled=!0,this._aroundCenter=!!n&&"center"===n.around)};b.prototype.disable=function(){this.isEnabled()&&(this._el.classList.remove("mapboxgl-touch-zoom-rotate"),this._enabled=!1)};b.prototype.disableRotation=function(){this._rotationDisabled=!0};b.prototype.enableRotation=function(){this._rotationDisabled=!1};b.prototype.onStart=function(i){if(this.isEnabled()&&2===i.touches.length){var r=t.mousePos(this._el,i.touches[0]),u=t.mousePos(this._el,i.touches[1]);this._startVec=r.sub(u);this._gestureIntent=void 0;this._inertia=[];t.addEventListener(n.window.document,"touchmove",this._onMove,{passive:!1});t.addEventListener(n.window.document,"touchend",this._onEnd)}};b.prototype._getTouchEventData=function(n){var r=t.mousePos(this._el,n.touches[0]),u=t.mousePos(this._el,n.touches[1]),i=r.sub(u);return{vec:i,center:r.add(u).div(2),scale:i.mag()/this._startVec.mag(),bearing:this._rotationDisabled?0:180*i.angleWith(this._startVec)/Math.PI}};b.prototype._onMove=function(t){var r;if(2===t.touches.length){var i=this._getTouchEventData(t),u=i.vec,f=i.scale,e=i.bearing;this._gestureIntent||(r=Math.abs(1-f)>.15,Math.abs(e)>10?this._gestureIntent="rotate":r&&(this._gestureIntent="zoom"),this._gestureIntent&&(this._map.fire(new n.Event(this._gestureIntent+"start",{originalEvent:t})),this._map.fire(new n.Event("movestart",{originalEvent:t})),this._startVec=u));this._lastTouchEvent=t;this._frameId||(this._frameId=this._map._requestRenderFrame(this._onTouchFrame));t.preventDefault()}};b.prototype._onTouchFrame=function(){var i,t;if(this._frameId=null,i=this._gestureIntent,i){t=this._map.transform;this._startScale||(this._startScale=t.scale,this._startBearing=t.bearing);var r=this._getTouchEventData(this._lastTouchEvent),u=r.center,o=r.bearing,f=r.scale,e=t.pointLocation(u),s=t.locationPoint(e);"rotate"===i&&(t.bearing=this._startBearing+o);t.zoom=t.scaleZoom(this._startScale*f);t.setLocationAtPoint(e,s);this._map.fire(new n.Event(i,{originalEvent:this._lastTouchEvent}));this._map.fire(new n.Event("move",{originalEvent:this._lastTouchEvent}));this._drainInertiaBuffer();this._inertia.push([n.browser.now(),f,u])}};b.prototype._onEnd=function(i){var o,s,f,r,u,l,e;if(t.removeEventListener(n.window.document,"touchmove",this._onMove,{passive:!1}),t.removeEventListener(n.window.document,"touchend",this._onEnd),o=this._gestureIntent,s=this._startScale,this._frameId&&(this._map._cancelRenderFrame(this._frameId),this._frameId=null),delete this._gestureIntent,delete this._startScale,delete this._startBearing,delete this._lastTouchEvent,o)if(this._map.fire(new n.Event(o+"end",{originalEvent:i})),this._drainInertiaBuffer(),f=this._inertia,r=this._map,f.length<2)r.snapToNorth({},{originalEvent:i});else{var h=f[f.length-1],a=f[0],c=r.transform.scaleZoom(s*h[1]),v=r.transform.scaleZoom(s*a[1]),p=c-v,y=(h[0]-a[0])/1e3,w=h[2];0!==y&&c!==v?(u=.15*p/y,Math.abs(u)>2.5&&(u=u>0?2.5:-2.5),l=1e3*Math.abs(u/(12*.15)),e=c+u*l/2e3,e<0&&(e=0),r.easeTo({zoom:e,duration:l,easing:ts,around:this._aroundCenter?r.getCenter():r.unproject(w),noMoveStart:!0},{originalEvent:i})):r.snapToNorth({},{originalEvent:i})}};b.prototype._drainInertiaBuffer=function(){for(var t=this._inertia,i=n.browser.now();t.length>2&&i-t[0][0]>160;)t.shift()};var is={scrollZoom:ut,boxZoom:g,dragRotate:a,dragPan:h,keyboard:ri,doubleClickZoom:ft,touchZoomRotate:b},yc=function(t){function r(i,r){t.call(this);this._moving=!1;this._zooming=!1;this.transform=i;this._bearingSnap=r.bearingSnap;n.bindAll(["_renderFrameCallback"],this)}return t&&(r.__proto__=t),r.prototype=Object.create(t&&t.prototype),r.prototype.constructor=r,r.prototype.getCenter=function(){return this.transform.center},r.prototype.setCenter=function(n,t){return this.jumpTo({center:n},t)},r.prototype.panBy=function(t,i,r){return t=n.Point.convert(t).mult(-1),this.panTo(this.transform.center,n.extend({offset:t},i),r)},r.prototype.panTo=function(t,i,r){return this.easeTo(n.extend({center:t},i),r)},r.prototype.getZoom=function(){return this.transform.zoom},r.prototype.setZoom=function(n,t){return this.jumpTo({zoom:n},t),this},r.prototype.zoomTo=function(t,i,r){return this.easeTo(n.extend({zoom:t},i),r)},r.prototype.zoomIn=function(n,t){return this.zoomTo(this.getZoom()+1,n,t),this},r.prototype.zoomOut=function(n,t){return this.zoomTo(this.getZoom()-1,n,t),this},r.prototype.getBearing=function(){return this.transform.bearing},r.prototype.setBearing=function(n,t){return this.jumpTo({bearing:n},t),this},r.prototype.rotateTo=function(t,i,r){return this.easeTo(n.extend({bearing:t},i),r)},r.prototype.resetNorth=function(t,i){return this.rotateTo(0,n.extend({duration:1e3},t),i),this},r.prototype.snapToNorth=function(n,t){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(n,t):this},r.prototype.getPitch=function(){return this.transform.pitch},r.prototype.setPitch=function(n,t){return this.jumpTo({pitch:n},t),this},r.prototype.cameraForBounds=function(t,i){var u;if("number"==typeof(i=n.extend({padding:{top:0,bottom:0,right:0,left:0},offset:[0,0],maxZoom:this.transform.maxZoom},i)).padding&&(u=i.padding,i.padding={top:u,bottom:u,right:u,left:u}),n.deepEqual(Object.keys(i.padding).sort(function(n,t){return n<t?-1:n>t?1:0}),["bottom","left","right","top"])){t=f.convert(t);var e=[(i.padding.left-i.padding.right)/2,(i.padding.top-i.padding.bottom)/2],v=Math.min(i.padding.right,i.padding.left),y=Math.min(i.padding.top,i.padding.bottom);i.offset=[i.offset[0]+e[0],i.offset[1]+e[1]];var o=n.Point.convert(i.offset),r=this.transform,s=r.project(t.getNorthWest()),h=r.project(t.getSouthEast()),c=h.sub(s),l=(r.width-2*v-2*Math.abs(o.x))/c.x,a=(r.height-2*y-2*Math.abs(o.y))/c.y;if(!(a<0||l<0))return i.center=r.unproject(s.add(h).div(2)),i.zoom=Math.min(r.scaleZoom(r.scale*Math.min(l,a)),i.maxZoom),i.bearing=0,i;n.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.")}else n.warnOnce("options.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'")},r.prototype.fitBounds=function(t,i,r){var u=this.cameraForBounds(t,i);return u?(i=n.extend(u,i)).linear?this.easeTo(i,r):this.flyTo(i,r):this},r.prototype.jumpTo=function(t,r){this.stop();var u=this.transform,f=!1,e=!1,o=!1;return"zoom"in t&&u.zoom!==+t.zoom&&(f=!0,u.zoom=+t.zoom),void 0!==t.center&&(u.center=i.convert(t.center)),"bearing"in t&&u.bearing!==+t.bearing&&(e=!0,u.bearing=+t.bearing),"pitch"in t&&u.pitch!==+t.pitch&&(o=!0,u.pitch=+t.pitch),this.fire(new n.Event("movestart",r)).fire(new n.Event("move",r)),f&&this.fire(new n.Event("zoomstart",r)).fire(new n.Event("zoom",r)).fire(new n.Event("zoomend",r)),e&&this.fire(new n.Event("rotatestart",r)).fire(new n.Event("rotate",r)).fire(new n.Event("rotateend",r)),o&&this.fire(new n.Event("pitchstart",r)).fire(new n.Event("pitch",r)).fire(new n.Event("pitchend",r)),this.fire(new n.Event("moveend",r))},r.prototype.easeTo=function(t,r){var f=this;this.stop();!1===(t=n.extend({offset:[0,0],duration:500,easing:n.ease},t)).animate&&(t.duration=0);var u=this.transform,e=this.getZoom(),o=this.getBearing(),c=this.getPitch(),s="zoom"in t?+t.zoom:e,l="bearing"in t?this._normalizeBearing(t.bearing,o):o,a="pitch"in t?+t.pitch:c,v=u.centerPoint.add(n.Point.convert(t.offset)),y=u.pointLocation(v),p=i.convert(t.center||y);this._normalizeCenter(p);var h,w,b=u.project(y),d=u.project(p).sub(b),k=u.zoomScale(s-e);return t.around&&(h=i.convert(t.around),w=u.locationPoint(h)),this._zooming=s!==e,this._rotating=o!==l,this._pitching=a!==c,this._prepareEase(r,t.noMoveStart),clearTimeout(this._easeEndTimeoutID),this._ease(function(t){if(f._zooming&&(u.zoom=n.number(e,s,t)),f._rotating&&(u.bearing=n.number(o,l,t)),f._pitching&&(u.pitch=n.number(c,a,t)),h)u.setLocationAtPoint(h,w);else{var y=u.zoomScale(u.zoom-e),p=s>e?Math.min(2,k):Math.max(.5,k),g=Math.pow(p,1-t),i=u.unproject(b.add(d.mult(t*g)).mult(y));u.setLocationAtPoint(u.renderWorldCopies?i.wrap():i,v)}f._fireMoveEvents(r)},function(){t.delayEndEvents?f._easeEndTimeoutID=setTimeout(function(){return f._afterEase(r)},t.delayEndEvents):f._afterEase(r)},t),this},r.prototype._prepareEase=function(t,i){this._moving=!0;i||this.fire(new n.Event("movestart",t));this._zooming&&this.fire(new n.Event("zoomstart",t));this._rotating&&this.fire(new n.Event("rotatestart",t));this._pitching&&this.fire(new n.Event("pitchstart",t))},r.prototype._fireMoveEvents=function(t){this.fire(new n.Event("move",t));this._zooming&&this.fire(new n.Event("zoom",t));this._rotating&&this.fire(new n.Event("rotate",t));this._pitching&&this.fire(new n.Event("pitch",t))},r.prototype._afterEase=function(t){var i=this._zooming,r=this._rotating,u=this._pitching;this._moving=!1;this._zooming=!1;this._rotating=!1;this._pitching=!1;i&&this.fire(new n.Event("zoomend",t));r&&this.fire(new n.Event("rotateend",t));u&&this.fire(new n.Event("pitchend",t));this.fire(new n.Event("moveend",t))},r.prototype.flyTo=function(t,r){function et(n){var t=(o*o-e*e+(n?-1:1)*l*l*s*s)/(2*(n?o:e)*l*s);return Math.log(Math.sqrt(t*t+1)-t)}function ot(n){return(Math.exp(n)-Math.exp(-n))/2}function y(n){return(Math.exp(n)+Math.exp(-n))/2}var a=this,ut,ft,l,ct,lt;this.stop();t=n.extend({offset:[0,0],speed:1.2,curve:1.42,easing:n.ease},t);var u=this.transform,c=this.getZoom(),v=this.getBearing(),w=this.getPitch(),b="zoom"in t?n.clamp(+t.zoom,u.minZoom,u.maxZoom):c,k="bearing"in t?this._normalizeBearing(t.bearing,v):v,d="pitch"in t?+t.pitch:w,at=u.zoomScale(b-c),g=u.centerPoint.add(n.Point.convert(t.offset)),nt=u.pointLocation(g),tt=i.convert(t.center||nt);this._normalizeCenter(tt);var it=u.project(nt),rt=u.project(tt).sub(it),f=t.curve,e=Math.max(u.width,u.height),o=e/at,s=rt.mag();"minZoom"in t&&(ut=n.clamp(Math.min(t.minZoom,c,b),u.minZoom,u.maxZoom),ft=e/u.zoomScale(ut-c),f=Math.sqrt(ft/s*2));l=f*f;var h=et(0),st=function(n){return y(h)/y(h+f*n)},ht=function(n){return e*((y(h)*(ot(t=h+f*n)/y(t))-ot(h))/l)/s;var t},p=(et(1)-h)/f;if(Math.abs(s)<1e-6||!isFinite(p)){if(Math.abs(e-o)<1e-6)return this.easeTo(t,r);ct=o<e?-1:1;p=Math.abs(Math.log(o/e))/f;ht=function(){return 0};st=function(n){return Math.exp(ct*f*n)}}return"duration"in t?t.duration=+t.duration:(lt="screenSpeed"in t?+t.screenSpeed/f:+t.speed,t.duration=1e3*p/lt),t.maxDuration&&t.duration>t.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=v!==k,this._pitching=d!==w,this._prepareEase(r,!1),this._ease(function(t){var f=t*p,e=1/st(f),i;u.zoom=1===t?b:c+u.scaleZoom(e);a._rotating&&(u.bearing=n.number(v,k,t));a._pitching&&(u.pitch=n.number(w,d,t));i=u.unproject(it.add(rt.mult(ht(f))).mult(e));u.setLocationAtPoint(u.renderWorldCopies?i.wrap():i,g);a._fireMoveEvents(r)},function(){return a._afterEase(r)},t),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var n=this._onEaseEnd;delete this._onEaseEnd;n.call(this)}return this},r.prototype._ease=function(t,i,r){!1===r.animate||0===r.duration?(t(1),i()):(this._easeStart=n.browser.now(),this._easeOptions=r,this._onEaseFrame=t,this._onEaseEnd=i,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var t=Math.min((n.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t));t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(t,i){t=n.wrap(t,-180,180);var r=Math.abs(t-i);return Math.abs(t-360-i)<r&&(t-=360),Math.abs(t+360-i)<r&&(t+=360),t},r.prototype._normalizeCenter=function(n){var t=this.transform,i;t.renderWorldCopies&&!t.lngRange&&(i=n.lng-t.center.lng,n.lng+=i>180?-360:i<-180?360:0)},r}(n.Evented),ot=function(t){void 0===t&&(t={});this.options=t;n.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};ot.prototype.getDefaultPosition=function(){return"bottom-right"};ot.prototype.onAdd=function(n){var i=this.options&&this.options.compact;return this._map=n,this._container=t.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),i&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===i&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container};ot.prototype.onRemove=function(){t.remove(this._container);this._map.off("sourcedata",this._updateData);this._map.off("moveend",this._updateEditLink);this._map.off("resize",this._updateCompact);this._map=void 0};ot.prototype._updateEditLink=function(){var n=this._editLink,t,i;n||(n=this._editLink=this._container.querySelector(".mapbox-improve-map"));t=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:v.ACCESS_TOKEN}];n&&(i=t.reduce(function(n,i,r){return i.value&&(n+=i.key+"="+i.value+(r<t.length-1?"&":"")),n},"?"),n.href="https://www.mapbox.com/feedback/"+i+(this._map._hash?this._map._hash.getHashString(!0):""))};ot.prototype._updateData=function(n){n&&"metadata"===n.sourceDataType&&(this._updateAttributions(),this._updateEditLink())};ot.prototype._updateAttributions=function(){var n,i,r,u,t;if(this._map.style){n=[];(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?n=n.concat(this.options.customAttribution):"string"==typeof this.options.customAttribution&&n.push(this.options.customAttribution)),this._map.style.stylesheet)&&(i=this._map.style.stylesheet,this.styleOwner=i.owner,this.styleId=i.id);r=this._map.style.sourceCaches;for(u in r)t=r[u].getSource(),t.attribution&&n.indexOf(t.attribution)<0&&n.push(t.attribution);n.sort(function(n,t){return n.length-t.length});(n=n.filter(function(t,i){for(var r=i+1;r<n.length;r++)if(n[r].indexOf(t)>=0)return!1;return!0})).length?(this._container.innerHTML=n.join(" | "),this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty");this._editLink=null}};ot.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")};lt=function(){n.bindAll(["_updateLogo"],this);n.bindAll(["_updateCompact"],this)};lt.prototype.onAdd=function(n){this._map=n;this._container=t.create("div","mapboxgl-ctrl");var i=t.create("a","mapboxgl-ctrl-logo");return i.target="_blank",i.href="https://www.mapbox.com/",i.setAttribute("aria-label","Mapbox logo"),i.setAttribute("rel","noopener"),this._container.appendChild(i),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container};lt.prototype.onRemove=function(){t.remove(this._container);this._map.off("sourcedata",this._updateLogo);this._map.off("resize",this._updateCompact)};lt.prototype.getDefaultPosition=function(){return"bottom-left"};lt.prototype._updateLogo=function(n){n&&"metadata"!==n.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")};lt.prototype._logoRequired=function(){var n,t;if(this._map.style){n=this._map.style.sourceCaches;for(t in n)if(n[t].getSource().mapbox_logo)return!0;return!1}};lt.prototype._updateCompact=function(){var t=this._container.children,n;t.length&&(n=t[0],this._map.getCanvasContainer().offsetWidth<250?n.classList.add("mapboxgl-compact"):n.classList.remove("mapboxgl-compact"))};ui=function(){this._queue=[];this._id=0;this._cleared=!1;this._currentlyRunning=!1};ui.prototype.add=function(n){var t=++this._id;return this._queue.push({callback:n,id:t,cancelled:!1}),t};ui.prototype.remove=function(n){for(var i,r=this._currentlyRunning,t=0,u=r?this._queue.concat(r):this._queue;t<u.length;t+=1)if(i=u[t],i.id===n)return void(i.cancelled=!0)};ui.prototype.run=function(){var r=this._currentlyRunning=this._queue,n,t,i;for(this._queue=[],n=0,t=r;n<t.length;n+=1)if(i=t[n],!i.cancelled&&(i.callback(),this._cleared))break;this._cleared=!1;this._currentlyRunning=!1};ui.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0);this._queue=[]};var pc=n.window.HTMLImageElement,wc=n.window.HTMLElement,bc={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:0,maxZoom:22,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,bearingSnap:7,clickTolerance:3,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,transformRequest:null,fadeDuration:300,crossSourceCollisions:!0},kc=function(r){function e(i){var f=this,o,e;if(null!=(i=n.extend({},bc,i)).minZoom&&null!=i.maxZoom&&i.minZoom>i.maxZoom)throw new Error("maxZoom must be greater than minZoom");if(o=new u(i.minZoom,i.maxZoom,i.renderWorldCopies),r.call(this,o,i),this._interactive=i.interactive,this._maxTileCacheSize=i.maxTileCacheSize,this._failIfMajorPerformanceCaveat=i.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=i.preserveDrawingBuffer,this._trackResize=i.trackResize,this._bearingSnap=i.bearingSnap,this._refreshExpiredTiles=i.refreshExpiredTiles,this._fadeDuration=i.fadeDuration,this._crossSourceCollisions=i.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=i.collectResourceTiming,this._renderTaskQueue=new ui,this._controls=[],e=i.transformRequest,this._transformRequest=e?function(n,t){return e(n,t)||{url:n}}:function(n){return{url:n}},"string"==typeof i.container){if(this._container=n.window.document.getElementById(i.container),!this._container)throw new Error("Container '"+i.container+"' not found.");}else{if(!(i.container instanceof wc))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=i.container}if(i.maxBounds&&this.setMaxBounds(i.maxBounds),n.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return f._update(!1)});this.on("zoom",function(){return f._update(!0)});void 0!==n.window&&(n.window.addEventListener("online",this._onWindowOnline,!1),n.window.addEventListener("resize",this._onWindowResize,!1)),function(n,i){var r=n.getCanvasContainer(),f=null,e=!1,o=null;for(var u in is)n[u]=new is[u](n,i),i.interactive&&i[u]&&n[u].enable(i[u]);t.addEventListener(r,"mouseout",function(t){n.fire(new d("mouseout",n,t))});t.addEventListener(r,"mousedown",function(u){e=!0;o=t.mousePos(r,u);var f=new d("mousedown",n,u);n.fire(f);f.defaultPrevented||(i.interactive&&!n.doubleClickZoom.isActive()&&n.stop(),n.boxZoom.onMouseDown(u),n.boxZoom.isActive()||n.dragPan.isActive()||n.dragRotate.onMouseDown(u),n.boxZoom.isActive()||n.dragRotate.isActive()||n.dragPan.onMouseDown(u))});t.addEventListener(r,"mouseup",function(t){var i=n.dragRotate.isActive();f&&!i&&n.fire(new d("contextmenu",n,f));f=null;e=!1;n.fire(new d("mouseup",n,t))});t.addEventListener(r,"mousemove",function(t){if(!n.dragPan.isActive()&&!n.dragRotate.isActive()){for(var i=t.target;i&&i!==r;)i=i.parentNode;i===r&&n.fire(new d("mousemove",n,t))}});t.addEventListener(r,"mouseover",function(t){for(var i=t.target;i&&i!==r;)i=i.parentNode;i===r&&n.fire(new d("mouseover",n,t))});t.addEventListener(r,"touchstart",function(t){var r=new vu("touchstart",n,t);n.fire(r);r.defaultPrevented||(i.interactive&&n.stop(),n.boxZoom.isActive()||n.dragRotate.isActive()||n.dragPan.onTouchStart(t),n.touchZoomRotate.onStart(t),n.doubleClickZoom.onTouchStart(r))},{passive:!1});t.addEventListener(r,"touchmove",function(t){n.fire(new vu("touchmove",n,t))},{passive:!1});t.addEventListener(r,"touchend",function(t){n.fire(new vu("touchend",n,t))});t.addEventListener(r,"touchcancel",function(t){n.fire(new vu("touchcancel",n,t))});t.addEventListener(r,"click",function(u){var f=t.mousePos(r,u);(f.equals(o)||f.dist(o)<i.clickTolerance)&&n.fire(new d("click",n,u))});t.addEventListener(r,"dblclick",function(t){var i=new d("dblclick",n,t);n.fire(i);i.defaultPrevented||n.doubleClickZoom.onDblClick(i)});t.addEventListener(r,"contextmenu",function(t){var i=n.dragRotate.isActive();e||i?e&&(f=t):n.fire(new d("contextmenu",n,t));t.preventDefault()});t.addEventListener(r,"wheel",function(t){i.interactive&&n.stop();var r=new ac("wheel",n,t);n.fire(r);r.defaultPrevented||n.scrollZoom.onWheel(t)},{passive:!1})}(this,i);this._hash=i.hash&&(new bt).addTo(this);this._hash&&this._hash._onHashChange()||this.jumpTo({center:i.center,zoom:i.zoom,bearing:i.bearing,pitch:i.pitch});this.resize();i.style&&this.setStyle(i.style,{localIdeographFontFamily:i.localIdeographFontFamily});i.attributionControl&&this.addControl(new ot({customAttribution:i.customAttribution}));this.addControl(new lt,i.logoPosition);this.on("style.load",function(){f.transform.unmodified&&f.jumpTo(f.style.stylesheet)});this.on("data",function(t){f._update("style"===t.dataType);f.fire(new n.Event(t.dataType+"data",t))});this.on("dataloading",function(t){f.fire(new n.Event(t.dataType+"dataloading",t))})}r&&(e.__proto__=r);e.prototype=Object.create(r&&r.prototype);e.prototype.constructor=e;var o={showTileBoundaries:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0}};return e.prototype.addControl=function(t,i){var u,r;return(void 0===i&&t.getDefaultPosition&&(i=t.getDefaultPosition()),void 0===i&&(i="top-right"),!t||!t.onAdd)?this.fire(new n.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods."))):(u=t.onAdd(this),this._controls.push(t),r=this._controlPositions[i],-1!==i.indexOf("bottom")?r.insertBefore(u,r.firstChild):r.appendChild(u),this)},e.prototype.removeControl=function(t){if(!t||!t.onRemove)return this.fire(new n.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var i=this._controls.indexOf(t);return i>-1&&this._controls.splice(i,1),t.onRemove(this),this},e.prototype.resize=function(t){var u=this._containerDimensions(),i=u[0],r=u[1];return this._resizeCanvas(i,r),this.transform.resize(i,r),this.painter.resize(i,r),this.fire(new n.Event("movestart",t)).fire(new n.Event("move",t)).fire(new n.Event("resize",t)).fire(new n.Event("moveend",t)),this},e.prototype.getBounds=function(){return this.transform.getBounds()},e.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},e.prototype.setMaxBounds=function(n){return this.transform.setMaxBounds(f.convert(n)),this._update()},e.prototype.setMinZoom=function(n){if((n=null==n?0:n)>=0&&n<=this.transform.maxZoom)return this.transform.minZoom=n,this._update(),this.getZoom()<n&&this.setZoom(n),this;throw new Error("minZoom must be between 0 and the current maxZoom, inclusive");},e.prototype.getMinZoom=function(){return this.transform.minZoom},e.prototype.setMaxZoom=function(n){if((n=null==n?22:n)>=this.transform.minZoom)return this.transform.maxZoom=n,this._update(),this.getZoom()>n&&this.setZoom(n),this;throw new Error("maxZoom must be greater than the current minZoom");},e.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},e.prototype.setRenderWorldCopies=function(n){return this.transform.renderWorldCopies=n,this._update()},e.prototype.getMaxZoom=function(){return this.transform.maxZoom},e.prototype.project=function(n){return this.transform.locationPoint(i.convert(n))},e.prototype.unproject=function(t){return this.transform.pointLocation(n.Point.convert(t))},e.prototype.isMoving=function(){return this._moving||this.dragPan.isActive()||this.dragRotate.isActive()||this.scrollZoom.isActive()},e.prototype.isZooming=function(){return this._zooming||this.scrollZoom.isActive()},e.prototype.isRotating=function(){return this._rotating||this.dragRotate.isActive()},e.prototype.on=function(n,t,i){var e,u=this,f,o;if(void 0===i)return r.prototype.on.call(this,n,t);f=function(){var f,r;return"mouseenter"===n||"mouseover"===n?(f=!1,{layer:t,listener:i,delegates:{mousemove:function(r){var e=u.getLayer(t)?u.queryRenderedFeatures(r.point,{layers:[t]}):[];e.length?f||(f=!0,i.call(u,new d(n,u,r.originalEvent,{features:e}))):f=!1},mouseout:function(){f=!1}}}):"mouseleave"===n||"mouseout"===n?(r=!1,{layer:t,listener:i,delegates:{mousemove:function(f){(u.getLayer(t)?u.queryRenderedFeatures(f.point,{layers:[t]}):[]).length?r=!0:r&&(r=!1,i.call(u,new d(n,u,f.originalEvent)))},mouseout:function(t){r&&(r=!1,i.call(u,new d(n,u,t.originalEvent)))}}}):{layer:t,listener:i,delegates:(e={},e[n]=function(n){var r=u.getLayer(t)?u.queryRenderedFeatures(n.point,{layers:[t]}):[];r.length&&(n.features=r,i.call(u,n),delete n.features)},e)}}();for(o in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[n]=this._delegatedListeners[n]||[],this._delegatedListeners[n].push(f),f.delegates)u.on(o,f.delegates[o]);return this},e.prototype.off=function(n,t,i){var e,u,f,o;if(void 0===i)return r.prototype.off.call(this,n,t);if(this._delegatedListeners&&this._delegatedListeners[n])for(e=this._delegatedListeners[n],u=0;u<e.length;u++)if(f=e[u],f.layer===t&&f.listener===i){for(o in f.delegates)this.off(o,f.delegates[o]);return e.splice(u,1),this}return this},e.prototype.queryRenderedFeatures=function(t,i){var f,r,u;return this.style?((void 0!==i||void 0===t||t instanceof n.Point||Array.isArray(t)||(i=t,t=void 0),i=i||{},(t=t||[[0,0],[this.transform.width,this.transform.height]])instanceof n.Point||"number"==typeof t[0])?f=[n.Point.convert(t)]:(r=n.Point.convert(t[0]),u=n.Point.convert(t[1]),f=[r,new n.Point(u.x,r.y),u,new n.Point(r.x,u.y),r]),this.style.queryRenderedFeatures(f,i,this.transform)):[]},e.prototype.querySourceFeatures=function(n,t){return this.style.querySourceFeatures(n,t)},e.prototype.setStyle=function(t,i){if((!i||!1!==i.diff&&!i.localIdeographFontFamily)&&this.style&&t&&"object"==typeof t)try{return this.style.setState(t)&&this._update(!0),this}catch(t){n.warnOnce("Unable to perform style diff: "+(t.message||t.error||t)+".  Rebuilding the style from scratch.")}return this.style&&(this.style.setEventedParent(null),this.style._remove()),t?(this.style=new pi(this,i||{}),this.style.setEventedParent(this,{style:this.style}),"string"==typeof t?this.style.loadURL(t):this.style.loadJSON(t),this):(delete this.style,this)},e.prototype.getStyle=function(){if(this.style)return this.style.serialize()},e.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():n.warnOnce("There is no style added to the map.")},e.prototype.addSource=function(n,t){return this.style.addSource(n,t),this._update(!0)},e.prototype.isSourceLoaded=function(t){var i=this.style&&this.style.sourceCaches[t];if(void 0!==i)return i.loaded();this.fire(new n.ErrorEvent(new Error("There is no source with ID '"+t+"'")))},e.prototype.areTilesLoaded=function(){var i=this.style&&this.style.sourceCaches,r,n,u,t;for(r in i){n=i[r]._tiles;for(u in n)if(t=n[u],"loaded"!==t.state&&"errored"!==t.state)return!1}return!0},e.prototype.addSourceType=function(n,t,i){return this.style.addSourceType(n,t,i)},e.prototype.removeSource=function(n){return this.style.removeSource(n),this._update(!0)},e.prototype.getSource=function(n){return this.style.getSource(n)},e.prototype.addImage=function(t,i,r){var u,f;if(void 0===r&&(r={}),u=r.pixelRatio,void 0===u&&(u=1),f=r.sdf,void 0===f&&(f=!1),i instanceof pc){var e=n.browser.getImageData(i),o=e.width,s=e.height,h=e.data;this.style.addImage(t,{data:new n.RGBAImage({width:o,height:s},h),pixelRatio:u,sdf:f})}else{if(void 0===i.width||void 0===i.height)return this.fire(new n.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var c=i.width,l=i.height,a=i.data;this.style.addImage(t,{data:new n.RGBAImage({width:c,height:l},new Uint8Array(a)),pixelRatio:u,sdf:f})}},e.prototype.hasImage=function(t){return t?!!this.style.getImage(t):(this.fire(new n.ErrorEvent(new Error("Missing required image id"))),!1)},e.prototype.removeImage=function(n){this.style.removeImage(n)},e.prototype.loadImage=function(t,i){n.getImage(this._transformRequest(t,n.ResourceType.Image),i)},e.prototype.listImages=function(){return this.style.listImages()},e.prototype.addLayer=function(n,t){return this.style.addLayer(n,t),this._update(!0)},e.prototype.moveLayer=function(n,t){return this.style.moveLayer(n,t),this._update(!0)},e.prototype.removeLayer=function(n){return this.style.removeLayer(n),this._update(!0)},e.prototype.getLayer=function(n){return this.style.getLayer(n)},e.prototype.setFilter=function(n,t){return this.style.setFilter(n,t),this._update(!0)},e.prototype.setLayerZoomRange=function(n,t,i){return this.style.setLayerZoomRange(n,t,i),this._update(!0)},e.prototype.getFilter=function(n){return this.style.getFilter(n)},e.prototype.setPaintProperty=function(n,t,i){return this.style.setPaintProperty(n,t,i),this._update(!0)},e.prototype.getPaintProperty=function(n,t){return this.style.getPaintProperty(n,t)},e.prototype.setLayoutProperty=function(n,t,i){return this.style.setLayoutProperty(n,t,i),this._update(!0)},e.prototype.getLayoutProperty=function(n,t){return this.style.getLayoutProperty(n,t)},e.prototype.setLight=function(n){return this.style.setLight(n),this._update(!0)},e.prototype.getLight=function(){return this.style.getLight()},e.prototype.setFeatureState=function(n,t){return this.style.setFeatureState(n,t),this._update()},e.prototype.getFeatureState=function(n){return this.style.getFeatureState(n)},e.prototype.getContainer=function(){return this._container},e.prototype.getCanvasContainer=function(){return this._canvasContainer},e.prototype.getCanvas=function(){return this._canvas},e.prototype._containerDimensions=function(){var n=0,t=0;return this._container&&(n=this._container.offsetWidth||400,t=this._container.offsetHeight||300),[n,t]},e.prototype._detectMissingCSS=function(){"rgb(250, 128, 114)"!==n.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")&&n.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},e.prototype._setupContainer=function(){var n=this._container,i,r,u,f;n.classList.add("mapboxgl-map");(this._missingCSSCanary=t.create("div","mapboxgl-canary",n)).style.visibility="hidden";this._detectMissingCSS();i=this._canvasContainer=t.create("div","mapboxgl-canvas-container",n);this._interactive&&i.classList.add("mapboxgl-interactive");this._canvas=t.create("canvas","mapboxgl-canvas",i);this._canvas.style.position="absolute";this._canvas.addEventListener("webglcontextlost",this._contextLost,!1);this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1);this._canvas.setAttribute("tabindex","0");this._canvas.setAttribute("aria-label","Map");r=this._containerDimensions();this._resizeCanvas(r[0],r[1]);u=this._controlContainer=t.create("div","mapboxgl-control-container",n);f=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(n){f[n]=t.create("div","mapboxgl-ctrl-"+n,u)})},e.prototype._resizeCanvas=function(t,i){var r=n.window.devicePixelRatio||1;this._canvas.width=r*t;this._canvas.height=r*i;this._canvas.style.width=t+"px";this._canvas.style.height=i+"px"},e.prototype._setupPainter=function(){var t=n.extend({failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer},wu.webGLContextAttributes),i=this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);i?this.painter=new y(i,this.transform):this.fire(new n.ErrorEvent(new Error("Failed to initialize WebGL")))},e.prototype._contextLost=function(t){t.preventDefault();this._frame&&(this._frame.cancel(),this._frame=null);this.fire(new n.Event("webglcontextlost",{originalEvent:t}))},e.prototype._contextRestored=function(t){this._setupPainter();this.resize();this._update();this.fire(new n.Event("webglcontextrestored",{originalEvent:t}))},e.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},e.prototype._update=function(n){return this.style?(this._styleDirty=this._styleDirty||n,this._sourcesDirty=!0,this._rerender(),this):this},e.prototype._requestRenderFrame=function(n){return this._update(),this._renderTaskQueue.add(n)},e.prototype._cancelRenderFrame=function(n){this._renderTaskQueue.remove(n)},e.prototype._render=function(){var i,r,u,f,t;return this._renderTaskQueue.run(),i=!1,this.style&&this._styleDirty&&(this._styleDirty=!1,r=this.transform.zoom,u=n.browser.now(),this.style.zoomHistory.update(r,u),f=new n.EvaluationParameters(r,{now:u,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),t=f.crossFadingFactor(),1===t&&t===this._crossFadingFactor||(i=!0,this._crossFadingFactor=t),this.style.update(f)),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),fadeDuration:this._fadeDuration}),this.fire(new n.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new n.Event("load"))),this.style&&(this.style.hasTransitions()||i)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),(this._sourcesDirty||this._repaint||this._styleDirty||this._placementDirty)&&this._rerender(),this},e.prototype.remove=function(){var t,i,r;for(this._hash&&this._hash.remove(),this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.setStyle(null),void 0!==n.window&&(n.window.removeEventListener("resize",this._onWindowResize,!1),n.window.removeEventListener("online",this._onWindowOnline,!1)),t=0,i=this._controls;t<i.length;t+=1)i[t].onRemove(this);this._controls=[];r=this.painter.context.gl.getExtension("WEBGL_lose_context");r&&r.loseContext();bf(this._canvasContainer);bf(this._controlContainer);bf(this._missingCSSCanary);this._container.classList.remove("mapboxgl-map");this.fire(new n.Event("remove"))},e.prototype._rerender=function(){var t=this;this.style&&!this._frame&&(this._frame=n.browser.frame(function(){t._frame=null;t._render()}))},e.prototype._onWindowOnline=function(){this._update()},e.prototype._onWindowResize=function(){this._trackResize&&this.resize()._update()},o.showTileBoundaries.get=function(){return!!this._showTileBoundaries},o.showTileBoundaries.set=function(n){this._showTileBoundaries!==n&&(this._showTileBoundaries=n,this._update())},o.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},o.showCollisionBoxes.set=function(n){this._showCollisionBoxes!==n&&(this._showCollisionBoxes=n,n?this.style._generateCollisionBoxes():this._update())},o.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},o.showOverdrawInspector.set=function(n){this._showOverdrawInspector!==n&&(this._showOverdrawInspector=n,this._update())},o.repaint.get=function(){return!!this._repaint},o.repaint.set=function(n){this._repaint=n;this._update()},o.vertices.get=function(){return!!this._vertices},o.vertices.set=function(n){this._vertices=n;this._update()},Object.defineProperties(e.prototype,o),e}(yc);rs={showCompass:!0,showZoom:!0};fi=function(i){var r=this;this.options=n.extend({},rs,i);this._container=t.create("div","mapboxgl-ctrl mapboxgl-ctrl-group");this._container.addEventListener("contextmenu",function(n){return n.preventDefault()});this.options.showZoom&&(this._zoomInButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-in","Zoom In",function(){return r._map.zoomIn()}),this._zoomOutButton=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-zoom-out","Zoom Out",function(){return r._map.zoomOut()}));this.options.showCompass&&(n.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-icon mapboxgl-ctrl-compass","Reset North",function(){return r._map.resetNorth()}),this._compassArrow=t.create("span","mapboxgl-ctrl-compass-arrow",this._compass))};fi.prototype._rotateCompassArrow=function(){var n="rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassArrow.style.transform=n};fi.prototype.onAdd=function(n){return this._map=n,this.options.showCompass&&(this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new a(n,{button:"left",element:this._compass}),t.addEventListener(this._compass,"mousedown",this._handler.onMouseDown),this._handler.enable()),this._container};fi.prototype.onRemove=function(){t.remove(this._container);this.options.showCompass&&(this._map.off("rotate",this._rotateCompassArrow),t.removeEventListener(this._compass,"mousedown",this._handler.onMouseDown),this._handler.disable(),delete this._handler);delete this._map};fi.prototype._createButton=function(n,i,r){var u=t.create("button",n,this._container);return u.type="button",u.setAttribute("aria-label",i),u.addEventListener("click",r),u};yu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};var ei,es=function(r){function u(i){var o,h,u,c,v,w,b,f,y,k,l,d,p,a,e,s;if(r.call(this),(arguments[0]instanceof n.window.HTMLElement||2===arguments.length)&&(i=n.extend({element:i},arguments[1])),n.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick"],this),this._anchor=i&&i.anchor||"center",this._color=i&&i.color||"#3FB1CE",this._draggable=i&&i.draggable||!1,this._state="inactive",i&&i.element)this._element=i.element,this._offset=n.Point.convert(i&&i.offset||[0,0]);else{for(this._defaultMarker=!0,this._element=t.create("div"),o=t.createNS("http://www.w3.org/2000/svg","svg"),o.setAttributeNS(null,"height","41px"),o.setAttributeNS(null,"width","27px"),o.setAttributeNS(null,"viewBox","0 0 27 41"),h=t.createNS("http://www.w3.org/2000/svg","g"),h.setAttributeNS(null,"stroke","none"),h.setAttributeNS(null,"stroke-width","1"),h.setAttributeNS(null,"fill","none"),h.setAttributeNS(null,"fill-rule","evenodd"),u=t.createNS("http://www.w3.org/2000/svg","g"),u.setAttributeNS(null,"fill-rule","nonzero"),c=t.createNS("http://www.w3.org/2000/svg","g"),c.setAttributeNS(null,"transform","translate(3.0, 29.0)"),c.setAttributeNS(null,"fill","#000000"),v=0,w=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];v<w.length;v+=1)b=w[v],f=t.createNS("http://www.w3.org/2000/svg","ellipse"),f.setAttributeNS(null,"opacity","0.04"),f.setAttributeNS(null,"cx","10.5"),f.setAttributeNS(null,"cy","5.80029008"),f.setAttributeNS(null,"rx",b.rx),f.setAttributeNS(null,"ry",b.ry),c.appendChild(f);y=t.createNS("http://www.w3.org/2000/svg","g");y.setAttributeNS(null,"fill",this._color);k=t.createNS("http://www.w3.org/2000/svg","path");k.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z");y.appendChild(k);l=t.createNS("http://www.w3.org/2000/svg","g");l.setAttributeNS(null,"opacity","0.25");l.setAttributeNS(null,"fill","#000000");d=t.createNS("http://www.w3.org/2000/svg","path");d.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z");l.appendChild(d);p=t.createNS("http://www.w3.org/2000/svg","g");p.setAttributeNS(null,"transform","translate(6.0, 7.0)");p.setAttributeNS(null,"fill","#FFFFFF");a=t.createNS("http://www.w3.org/2000/svg","g");a.setAttributeNS(null,"transform","translate(8.0, 8.0)");e=t.createNS("http://www.w3.org/2000/svg","circle");e.setAttributeNS(null,"fill","#000000");e.setAttributeNS(null,"opacity","0.25");e.setAttributeNS(null,"cx","5.5");e.setAttributeNS(null,"cy","5.5");e.setAttributeNS(null,"r","5.4999962");s=t.createNS("http://www.w3.org/2000/svg","circle");s.setAttributeNS(null,"fill","#FFFFFF");s.setAttributeNS(null,"cx","5.5");s.setAttributeNS(null,"cy","5.5");s.setAttributeNS(null,"r","5.4999962");a.appendChild(e);a.appendChild(s);u.appendChild(c);u.appendChild(y);u.appendChild(l);u.appendChild(p);u.appendChild(a);o.appendChild(u);this._element.appendChild(o);this._offset=n.Point.convert(i&&i.offset||[0,-14])}this._element.classList.add("mapboxgl-marker");this._popup=null}return r&&(u.__proto__=r),u.prototype=Object.create(r&&r.prototype),u.prototype.constructor=u,u.prototype.addTo=function(n){return this.remove(),this._map=n,n.getCanvasContainer().appendChild(this._element),n.on("move",this._update),n.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},u.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),delete this._map),t.remove(this._element),this._popup&&this._popup.remove(),this},u.prototype.getLngLat=function(){return this._lngLat},u.prototype.setLngLat=function(n){return this._lngLat=i.convert(n),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},u.prototype.getElement=function(){return this._element},u.prototype.setPopup=function(n){if(this._popup&&(this._popup.remove(),this._popup=null),n){if(!("offset"in n.options)){var t=Math.sqrt(Math.pow(13.5,2)/2);n.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[t,-1*(24.6+t)],"bottom-right":[-t,-1*(24.6+t)],left:[13.5,-24.6],right:[-13.5,-24.6]}:this._offset}this._popup=n;this._lngLat&&this._popup.setLngLat(this._lngLat)}return this},u.prototype._onMapClick=function(n){var t=n.originalEvent.target,i=this._element;this._popup&&(t===i||i.contains(t))&&this.togglePopup()},u.prototype.getPopup=function(){return this._popup},u.prototype.togglePopup=function(){var n=this._popup;return n?(n.isOpen()?n.remove():n.addTo(this._map),this):this},u.prototype._update=function(n){this._map&&(this._map.transform.renderWorldCopies&&(this._lngLat=us(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset),n&&"moveend"!==n.type||(this._pos=this._pos.round()),t.setTransform(this._element,yu[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px)"),fs(this._element,this._anchor,"marker"))},u.prototype.getOffset=function(){return this._offset},u.prototype.setOffset=function(t){return this._offset=n.Point.convert(t),this._update(),this},u.prototype._onMove=function(t){this._pos=t.point.sub(this._positionDelta);this._lngLat=this._map.unproject(this._pos);this.setLngLat(this._lngLat);this._element.style.pointerEvents="none";"pending"===this._state&&(this._state="active",this.fire(new n.Event("dragstart")));this.fire(new n.Event("drag"))},u.prototype._onUp=function(){this._element.style.pointerEvents="auto";this._positionDelta=null;this._map.off("mousemove",this._onMove);this._map.off("touchmove",this._onMove);"active"===this._state&&this.fire(new n.Event("dragend"));this._state="inactive"},u.prototype._addDragHandler=function(n){this._element.contains(n.originalEvent.target)&&(n.preventDefault(),this._positionDelta=n.point.sub(this._pos).add(this._offset),this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},u.prototype.setDraggable=function(n){return this._draggable=!!n,this._map&&(n?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},u.prototype.isDraggable=function(){return this._draggable},u}(n.Evented),dc={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showUserLocation:!0},gc=function(r){function u(t){r.call(this);this.options=n.extend({},dc,t);n.bindAll(["_onSuccess","_onError","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return r&&(u.__proto__=r),u.prototype=Object.create(r&&r.prototype),u.prototype.constructor=u,u.prototype.onAdd=function(i){var r;return this._map=i,this._container=t.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),r=this._setupUI,void 0!==ei?r(ei):void 0!==n.window.navigator.permissions?n.window.navigator.permissions.query({name:"geolocation"}).then(function(n){ei="denied"!==n.state;r(ei)}):(ei=!!n.window.navigator.geolocation,r(ei)),this._container},u.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(n.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0);this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove();t.remove(this._container);this._map=void 0},u.prototype._onSuccess=function(t){if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t);this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t);this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale");this.fire(new n.Event("geolocate",t));this._finish()},u.prototype._updateCamera=function(n){var t=new i(n.coords.longitude,n.coords.latitude),r=n.coords.accuracy;this._map.fitBounds(t.toBounds(r),this.options.fitBoundsOptions,{geolocateSource:!0})},u.prototype._updateMarker=function(n){n?this._userLocationDotMarker.setLngLat([n.coords.longitude,n.coords.latitude]).addTo(this._map):this._userLocationDotMarker.remove()},u.prototype._onError=function(t){if(this.options.trackUserLocation)if(1===t.code)this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),void 0!==this._geolocationWatchID&&this._clearWatch();else switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale");this.fire(new n.Event("error",t));this._finish()},u.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId);this._timeoutId=void 0},u.prototype._setupUI=function(i){var r=this;!1!==i?(this._container.addEventListener("contextmenu",function(n){return n.preventDefault()}),this._geolocateButton=t.create("button","mapboxgl-ctrl-icon mapboxgl-ctrl-geolocate",this._container),this._geolocateButton.type="button",this._geolocateButton.setAttribute("aria-label","Geolocate"),this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=t.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new es(this._dotElement),this.options.trackUserLocation&&(this._watchState="OFF")),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(t){t.geolocateSource||"ACTIVE_LOCK"!==r._watchState||(r._watchState="BACKGROUND",r._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),r._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),r.fire(new n.Event("trackuserlocationend")))})):n.warnOnce("Geolocation support is not available, the GeolocateControl will not be visible.")},u.prototype.trigger=function(){if(!this._setup)return n.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE";this.fire(new n.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":this._watchState="OFF";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background");this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error");this.fire(new n.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK";this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background");this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition);this.fire(new n.Event("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}"OFF"===this._watchState&&void 0!==this._geolocationWatchID?this._clearWatch():void 0===this._geolocationWatchID&&(this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._geolocationWatchID=n.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,this.options.positionOptions))}else n.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},u.prototype._clearWatch=function(){n.window.navigator.geolocation.clearWatch(this._geolocationWatchID);this._geolocationWatchID=void 0;this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting");this._geolocateButton.setAttribute("aria-pressed","false");this.options.showUserLocation&&this._updateMarker(null)},u}(n.Evented),nl={maxWidth:100,unit:"metric"},oi=function(t){this.options=n.extend({},nl,t);n.bindAll(["_onMove","setUnit"],this)};oi.prototype.getDefaultPosition=function(){return"bottom-left"};oi.prototype._onMove=function(){os(this._map,this._container,this.options)};oi.prototype.onAdd=function(n){return this._map=n,this._container=t.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",n.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container};oi.prototype.onRemove=function(){t.remove(this._container);this._map.off("move",this._onMove);this._map=void 0};oi.prototype.setUnit=function(n){this.options.unit=n;os(this._map,this._container,this.options)};st=function(){this._fullscreen=!1;n.bindAll(["_onClickFullscreen","_changeIcon"],this);"onfullscreenchange"in n.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in n.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in n.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in n.window.document&&(this._fullscreenchange="MSFullscreenChange");this._className="mapboxgl-ctrl"};st.prototype.onAdd=function(i){return this._map=i,this._mapContainer=this._map.getContainer(),this._container=t.create("div",this._className+" mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._container.style.display="none",n.warnOnce("This device does not support fullscreen mode.")),this._container};st.prototype.onRemove=function(){t.remove(this._container);this._map=null;n.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)};st.prototype._checkFullscreenSupport=function(){return!!(n.window.document.fullscreenEnabled||n.window.document.mozFullScreenEnabled||n.window.document.msFullscreenEnabled||n.window.document.webkitFullscreenEnabled)};st.prototype._setupUI=function(){var i=this._fullscreenButton=t.create("button",this._className+"-icon "+this._className+"-fullscreen",this._container);i.setAttribute("aria-label","Toggle fullscreen");i.type="button";this._fullscreenButton.addEventListener("click",this._onClickFullscreen);n.window.document.addEventListener(this._fullscreenchange,this._changeIcon)};st.prototype._isFullscreen=function(){return this._fullscreen};st.prototype._changeIcon=function(){(n.window.document.fullscreenElement||n.window.document.mozFullScreenElement||n.window.document.webkitFullscreenElement||n.window.document.msFullscreenElement)===this._mapContainer!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(this._className+"-shrink"),this._fullscreenButton.classList.toggle(this._className+"-fullscreen"))};st.prototype._onClickFullscreen=function(){this._isFullscreen()?n.window.document.exitFullscreen?n.window.document.exitFullscreen():n.window.document.mozCancelFullScreen?n.window.document.mozCancelFullScreen():n.window.document.msExitFullscreen?n.window.document.msExitFullscreen():n.window.document.webkitCancelFullScreen&&n.window.document.webkitCancelFullScreen():this._mapContainer.requestFullscreen?this._mapContainer.requestFullscreen():this._mapContainer.mozRequestFullScreen?this._mapContainer.mozRequestFullScreen():this._mapContainer.msRequestFullscreen?this._mapContainer.msRequestFullscreen():this._mapContainer.webkitRequestFullscreen&&this._mapContainer.webkitRequestFullscreen()};var tl={closeButton:!0,closeOnClick:!0,className:""},il=function(r){function u(t){r.call(this);this.options=n.extend(Object.create(tl),t);n.bindAll(["_update","_onClickClose"],this)}return r&&(u.__proto__=r),u.prototype=Object.create(r&&r.prototype),u.prototype.constructor=u,u.prototype.addTo=function(t){return this._map=t,this._map.on("move",this._update),this.options.closeOnClick&&this._map.on("click",this._onClickClose),this._update(),this.fire(new n.Event("open")),this},u.prototype.isOpen=function(){return!!this._map},u.prototype.remove=function(){return this._content&&t.remove(this._content),this._container&&(t.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("click",this._onClickClose),delete this._map),this.fire(new n.Event("close")),this},u.prototype.getLngLat=function(){return this._lngLat},u.prototype.setLngLat=function(n){return this._lngLat=i.convert(n),this._pos=null,this._update(),this},u.prototype.setText=function(t){return this.setDOMContent(n.window.document.createTextNode(t))},u.prototype.setHTML=function(t){var i,r=n.window.document.createDocumentFragment(),u=n.window.document.createElement("body");for(u.innerHTML=t;i=u.firstChild;)r.appendChild(i);return this.setDOMContent(r)},u.prototype.setDOMContent=function(n){return this._createContent(),this._content.appendChild(n),this._update(),this},u.prototype._createContent=function(){this._content&&t.remove(this._content);this._content=t.create("div","mapboxgl-popup-content",this._container);this.options.closeButton&&(this._closeButton=t.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClickClose))},u.prototype._update=function(){var s=this,u,f,e,o;if(this._map&&this._lngLat&&this._content){this._container||(this._container=t.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=t.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(n){return s._container.classList.add(n)}));this._map.transform.renderWorldCopies&&(this._lngLat=us(this._lngLat,this._pos,this._map.transform));var i=this._pos=this._map.project(this._lngLat),r=this.options.anchor,h=function s(t){var r,i;return t?"number"==typeof t?(r=Math.round(Math.sqrt(.5*Math.pow(t,2))),{center:new n.Point(0,0),top:new n.Point(0,t),"top-left":new n.Point(r,r),"top-right":new n.Point(-r,r),bottom:new n.Point(0,-t),"bottom-left":new n.Point(r,-r),"bottom-right":new n.Point(-r,-r),left:new n.Point(t,0),right:new n.Point(-t,0)}):t instanceof n.Point||Array.isArray(t)?(i=n.Point.convert(t),{center:i,top:i,"top-left":i,"top-right":i,bottom:i,"bottom-left":i,"bottom-right":i,left:i,right:i}):{center:n.Point.convert(t.center||[0,0]),top:n.Point.convert(t.top||[0,0]),"top-left":n.Point.convert(t["top-left"]||[0,0]),"top-right":n.Point.convert(t["top-right"]||[0,0]),bottom:n.Point.convert(t.bottom||[0,0]),"bottom-left":n.Point.convert(t["bottom-left"]||[0,0]),"bottom-right":n.Point.convert(t["bottom-right"]||[0,0]),left:n.Point.convert(t.left||[0,0]),right:n.Point.convert(t.right||[0,0])}:s(new n.Point(0,0))}(this.options.offset);r||(f=this._container.offsetWidth,e=this._container.offsetHeight,u=i.y+h.bottom.y<e?["top"]:i.y>this._map.transform.height-e?["bottom"]:[],i.x<f/2?u.push("left"):i.x>this._map.transform.width-f/2&&u.push("right"),r=0===u.length?"bottom":u.join("-"));o=i.add(h[r]).round();t.setTransform(this._container,yu[r]+" translate("+o.x+"px,"+o.y+"px)");fs(this._container,r,"popup")}},u.prototype._onClickClose=function(){this.remove()},u}(n.Evented),ss={version:"0.48.0",supported:wu,setRTLTextPlugin:n.setRTLTextPlugin,Map:kc,NavigationControl:fi,GeolocateControl:gc,AttributionControl:ot,ScaleControl:oi,FullscreenControl:st,Popup:il,Marker:es,Style:pi,LngLat:i,LngLatBounds:f,Point:n.Point,Evented:n.Evented,config:v,get accessToken(){return v.ACCESS_TOKEN},set accessToken(n){v.ACCESS_TOKEN=n},get workerCount(){return ht.workerCount},set workerCount(n){ht.workerCount=n},workerUrl:""};return ss}),i});var docLocation=document.location,path="",testMarkers={},ck=null,regexCached={regexC:new RegExp("[čć]","g"),regexZ:new RegExp("[ž]","g"),regexS:new RegExp("[š]","g"),regexD:new RegExp("[đ]","g")},currUser={frmKadaMoguMirovina_data:"",areCookiesOk:!1},sirinaProzora=$(window).width(),visinaProzora=$(window).height();if($(".search-field input").keyup(function(n){n.keyCode==13&&$("#pretrazivanje").submit()}),$.validator.methods.email=function(n,t){return this.optional(t)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*\.[a-zA-Z]{2,4}$/.test(n)},$.validator.addMethod("oibcheckprazan",function(n){var s=1,i=n;if(i=="")return!0;if(IsNumeric(i)==!0&&i.length==11){var t=1,r=0,u=0,f=0,e=0,o=0;for(t;t<=10;t=t+1)u=t==1?parseInt(i.substring(t-1,t))+10:parseInt(i.substring(t-1,t))+o,f=u>=10?u%10:u,f==0&&(f=10),e=f*2,o=e>=11?e%11:e;return r=11-o,r==10&&(r=0),r!=parseInt(i.substring(10,11))&&(s=0),s==0?!1:!0}return!1},"Neispravan OIB."),$.validator.addMethod("filesize",function(n,t,i){return this.optional(t)||t.files[0].size<=i},"Velicina datoteke ne smije biti veća od {0}"),docLocation!==undefined&&docLocation!==null){var protocol=docLocation.protocol,host=docLocation.host,href=docLocation.href,origin=docLocation.origin,pathName=docLocation.pathname.replace(/\//,"");href.indexOf("localhost:")>-1?path=origin+"/":docLocation.host.indexOf(".globaldizajn.hr")>-1?(pathName=pathName.substring(0,pathName.indexOf("/")+1),path=protocol+"//"+host+"/"+pathName):path=protocol+"//"+host+"/"+pathName;path!==""&&path.indexOf("//")>-1&&(path=path.substring(0,path.length-1))}sessionStorage.getItem("istaknutaObavijest")==="true"?$(".info-strip").hide():$(".info-strip").show();$(document).ready(function(){var r,f,e;$("iframe").each(function(){var n=$(this);n.hasClass("img-responsive")==!1&&n.addClass("img-responsive")});$(".info-close").click(function(){var n=$(this);sessionStorage.setItem("istaknutaObavijest","true");sessionStorage.getItem("istaknutaObavijest")==="true"&&$(".info-strip").hide()});$("#includeVijesti").change(function(){var n=$(this),t=$("input[name='"+n.prop("id")+"']");n.is(":checked")==!0?t.val("true"):t.val("");$("#pretrazivanje").submit()});$("#includePriopcenja").change(function(){var n=$(this),t=$("input[name='"+n.prop("id")+"']");n.is(":checked")==!0?t.val("true"):t.val("");$("#pretrazivanje").submit()});$(".search-field input").keyup(function(n){n.keyCode==13&&$("#pretrazivanje").submit()});initCountUps();r=$(window);$("#back-top").hide();$(function(){r.scroll(function(){$(this).scrollTop()>100?$("#back-top").fadeIn():$("#back-top").fadeOut()});$("#back-top").click(function(){return $("body,html").animate({scrollTop:0},600),!1})});matchHeightMultiple([$(".quick-link-title")]);matchHeightMultiple([$(".grid-item")]);$("a").each(function(n){var t=$(this),i=t.attr("href"),u=t.attr("target"),f=[".pdf",".xls",".xlsx",".doc",".docx"],e="",o=$(".listalica"),r,s;if((o.is(n.target)||o.has(n.target).length!==0)&&t.removeAttr("target"),!1){if(i===undefined||i===null||i==="")return;for(r=0,s=f.length;r<s;r++)if(e=f[r],i.indexOf(e)>-1){if(u!==undefined&&u!==null&&u!=="")return;t.prop("target","_blank");return}}});$("#nemaOib").click(function(){var n=$(this);n.is(":checked")===!0?($("#datumRodjenja").removeClass("ignore"),$("#datumRodjenja").prop("disabled",!1),$("#oib").addClass("ignore"),$("#oib").prop("disabled",!0)):($("#datumRodjenja").addClass("ignore"),$("#datumRodjenja").prop("disabled",!0),$("#oib").removeClass("ignore"),$("#oib").prop("disabled",!1))});$("#frmUpit").validate({ignore:".ignore",focusInvalid:!1,invalidHandler:function(n,t){!t.numberOfInvalids()},onkeyup:!1,rules:{vrsta_upita:{required:!0},ime:{required:!0},prezime:{required:!0},email:{required:!0,email:!0},upit:{required:!0},spambroj:{required:!0},gdpr:{required:!0},datumRodjenja:{required:function(){return $("#nemaOib").is(":checked")===!0?($("#datumRodjenja").removeClass("ignore"),$("#datumRodjenja").prop("disabled",!1),!0):($("#datumRodjenja").addClass("ignore"),$("#datumRodjenja").prop("disabled",!0),!1)}},oib:{oibcheckprazan:!0},kontakt:{required:function(){if($("#vrsta_upita").val()==="Tehnička podrška za e-prijave"||$("#vrsta_upita").val()==="Tehnička podrška za fizičke osobe")return!0}},up_file:{extension:"jpg|png|pdf",filesize:5e6},up_file2:{extension:"jpg|png|pdf",filesize:5e6}},errorPlacement:function(){},highlight:function(n){var i=$(n),t=i.parents(".holder");t.removeClass("ValidField");t.addClass("InvalidField")},unhighlight:function(n){var i=$(n),t=i.parents(".holder");t.removeClass("InvalidField");t.addClass("ValidField")}});$(".frmProracunskiKorisnikHolder").length>0&&$(".frmProracunskiKorisnikHolder").children().unwrap().wrapAll("<form method='post' action='' id='frmProracunskiKorisnik' class='frmProracunskiKorisnik'><\/form>");$("#frmProracunskiKorisnik").length>0&&$("#frmProracunskiKorisnik").validate({ignore:".ignore",focusInvalid:!1,invalidHandler:function(n,t){!t.numberOfInvalids()},onkeyup:!1,rules:{spambroj:{required:!0}},errorPlacement:function(){},highlight:function(n){var i=$(n),t=i.parents(".holder");t.removeClass("ValidField");t.addClass("InvalidField")},unhighlight:function(n){var i=$(n),t=i.parents(".holder");t.removeClass("InvalidField");t.addClass("ValidField")}});$(".btn_PosaljiUpit").click(function(n){var i=$(this),t=i.parents("form");n.preventDefault();t.valid()===!1||t.submit()});$("#frmKadaMoguMirovina").validate({ignore:".ignore",focusInvalid:!1,invalidHandler:function(n,t){!t.numberOfInvalids()},onkeyup:!1,rules:{datumRodenja:{required:!0},spol:{required:!0},vrsta:{required:!0}},errorPlacement:function(){},highlight:function(n){var i=$(n),t=i.parents("li");t.removeClass("ValidField");t.addClass("InvalidField")},unhighlight:function(n){var i=$(n),t=i.parents("li");t.removeClass("InvalidField");t.addClass("ValidField")}});$(".btn_frmKadaMoguMirovina").click(function(n){var i=$(this),t=i.parents("form"),r=$("#frmKadaMoguMirovina_GdCheck").val();if((n.preventDefault(),$("#frmKadaMoguMirovina").valid()===!1)||r!==""||currUser.frmKadaMoguMirovina_data===t.serialize())return!1;currUser.frmKadaMoguMirovina_data=t.serialize();$.ajax({url:t.prop("action"),method:t.prop("method"),cache:!1,data:t.serialize()}).done(function(n){$("#response_KadaMoguMirovina").empty().append(n)})});$(".page-gallery").length>0&&$(".page-gallery").lightGallery();$(".bootstrapDatePicker").datepicker({changeMonth:!0,changeYear:!0,format:"dd.mm.yyyy",language:"hr",autoclose:!0,startView:2,updateViewDate:!0,defaultViewDate:{year:"2019"}});$("input[name='datumRodenja']").change(function(){var t=$(this),n=t.val();n!==undefined&&n!==null&&n!==""&&n.indexOf(".")>-1&&t.parents("li").removeClass("InvalidField")});$(".icon-search[type=submit]").click(function(n){var i=$(this),t=$("input[name='pojam']"),r=i.parents("form");if(n.preventDefault(),t.val()===undefined||t.val()===null||t.val()===""||t.val().trim()===""||t.val().length<2)return!1;r.submit()});$(".okIfCookiePolicyAccepted").click(function(){var n=$(this),t=n.attr("data-href");cookieHelper.getCookie("gd-cookieOptions")!==undefined&&cookieHelper.getCookie("gd-cookieOptions")!==null&&cookieHelper.getCookie("gd-cookieOptions")!==""&&(document.location.href=t)});$(document).on("click touchend",function(n){var t=$(".main-nav, .toggle-main-nav, .toggle-search, .search");t.is(n.target)||t.has(n.target).length!==0||(sirinaProzora>1199&&$(".main-nav > ul > li > ul").slideUp(200),sirinaProzora<1200&&($(".search").fadeOut(200),$(".main-nav-wrapper").is(":visible")&&($(".main-nav-wrapper").fadeOut(200),$("body").removeClass("no-scroll"))))});$(".toggle-search").on("click",function(n){n.preventDefault();matchMedia("(max-width: 1199px)").matches&&($(".search").is(":visible")?$(".search").fadeOut(200):$(".search").fadeIn(200))});$(".toggle-main-nav").on("click",function(n){n.preventDefault();sirinaProzora<1200&&($(".main-nav-wrapper").is(":visible")?($(".main-nav-wrapper").fadeOut(200),$("body").removeClass("no-scroll")):($("body").addClass("no-scroll"),$(".main-nav-wrapper").fadeIn(200)))});enquire.register("only screen and (max-width: 1199px)",{match:function(){$(".main-nav > ul, .main-nav > ul > li").off(".mainNavHover");mainNavClick()},unmatch:function(){$(".main-nav > ul > li > a").off(".mainNavClick");mainNavHover()},setup:function(){matchMedia("(min-width: 1200px)").matches&&mainNavHover()}});$(".menu-left .expand-sub a").on("click",function(){var t=$(this),n=$(this).siblings("ul");n.get(0)&&(n.is(":visible")?(n.slideUp(200),t.parent().removeClass("expanded")):($(this).parent().siblings().find("ul").stop().slideUp(),$(".menu-left .expand-sub").parent().removeClass("expanded"),n.slideDown(200),t.parent().addClass("expanded")))});if($(".home-carousel").get(0)){function t(){$(this.slides).find(".slide-text > a").attr("tabindex","-1");$(this.slides).eq(this.activeIndex).find(".slide-text > a").attr("tabindex","0")}f=new Swiper(".home-carousel",{slidesPerView:1,spaceBetween:0,loop:!0,pagination:{el:".swiper-pagination",clickable:!0},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"},a11y:{enabled:!0,prevSlideMessage:"Prethodni slajd",nextSlideMessage:"Sljedeći slajd",firstSlideMessage:"Ovo je prvi slajd",lastSlideMessage:"Ovo je posljednji slajd",paginationBulletMessage:"Odi na slajd broj {{index}}"},on:{init:t,slideChange:t}})}if($(".home-carousel-2").get(0)){function t(){$(this.slides).find(".slide-text > a").attr("tabindex","-1");$(this.slides).eq(this.activeIndex).find(".slide-text > a").attr("tabindex","0")}e=new Swiper(".home-carousel-2",{slidesPerView:1,spaceBetween:0,loop:!0,pagination:{el:".swiper-pagination",clickable:!0},autoplay:{delay:2500,disableOnInteraction:!1},navigation:{nextEl:".swiper-button-next",prevEl:".swiper-button-prev"},a11y:{enabled:!0,prevSlideMessage:"Prethodni slajd",nextSlideMessage:"Sljedeći slajd",firstSlideMessage:"Ovo je prvi slajd",lastSlideMessage:"Ovo je posljednji slajd",paginationBulletMessage:"Odi na slajd broj {{index}}"},on:{init:t,slideChange:t}})}$(".changeGodinaStatistika").change(function(){var n=$(this);document.location.href=n.val()});var u="hzmo_kartaLsKey-"+default_lastCacheTime,i=null,n="";if($("#mm-holder").length>0&&document.location.href.indexOf("/"+default_KontaktiId)>-1){if(window.location.hash&&(n=window.location.hash.substring(1)),ck=new mapboxgl.Map({container:"mm-holder",style:"https://www.mirovinsko.hr/mireo-style.json",center:{lng:16.000851413745295,lat:45.813458941206022},zoom:6}),ck!==undefined&&ck!==null&&ck!==""){$(".mmo-close").on("click",function(){$(".mm-overlay").hide()});ck.on("load",function(){cookieHelper.getCookie("gd-cookieOptions")!==undefined&&cookieHelper.getCookie("gd-cookieOptions")!==null&&cookieHelper.getCookie("gd-cookieOptions")!==""?(i=localStorage.getItem(u),i===undefined||i===null?ajaxCall_RootObjectDohvatiPodatke().done(function(n){for(key in localStorage)key!==undefined&&key!==null&&key!==""&&key.indexOf("hzmo_kartaLsKey-")>-1&&localStorage.removeItem(key);localStorage.setItem(u,JSON.stringify(n));ajaxCall_RootObjectDohvatiPodatke_Response(n)}):ajaxCall_RootObjectDohvatiPodatke_Response(JSON.parse(i))):ajaxCall_RootObjectDohvatiPodatke().done(function(n){ajaxCall_RootObjectDohvatiPodatke_Response(n)})})}$(".mireoAdreseHolder").on("click",".mireoLocationHolder",function(){var t=$(this),f=t.attr("data-id"),i=$(this).attr("data-val-x"),r=$(this).attr("data-val-y"),u,n;$(".mireoLocationHolder").removeClass("active");$mireoMarker=$("[data-marker-id='"+f+"']");ck.flyTo({center:[i,r],zoom:13,duration:0});u=testMarkers[i+","+r];for(n in testMarkers)testMarkers.hasOwnProperty(n)&&testMarkers[n]._element.classList.remove("active");t.addClass("active");$mireoMarker.click();u._element.classList.add("active")});$(".searchKarta").click(function(t){t.preventDefault();var s=$(this),r=$("#kartaPojam"),u=null,f="",i="",o=null,e="";if(r.val()===undefined||r.val()===null||r.val().length<=2)return $("#trazilicaPodrucniUrediDropDown").change(),!1;i=r.val().toLowerCase();n!=""&&(i=removeDijakritickiZnakovi(i));$(".liMapaHolder").each(function(){u=$(this);f=u.text().trim().toLowerCase();n!=""&&(f=removeDijakritickiZnakovi(f));f.indexOf(i)<=-1?u.hide():u.show()});$(".mireo-marker").hide();$(".mireo-marker").each(function(){o=$(this);e=o.attr("data-naziv").toLowerCase();n!=""&&(e=removeDijakritickiZnakovi(e));e.indexOf(i)>-1&&o.show()});$(".mireo-marker:visible").length==1&&($(".mireoLocationHolder:visible").click(),$(".mireo-marker:visible").click())});$("#trazilicaPodrucniUrediDropDown").change(function(){var n=$(this),t=null;$(".mm-overlay").hide();$("#kartaPojam").val("");$(".mireoLocationHolder").removeClass("active");n.val()!==undefined&&n.val()!==null&&n.val()!==""&&parseInt(n.val(),10)>0&&$(".liMapaHolder").each(function(){t=$(this);t.attr("data-nadkategorijaid")!=n.val()?t.hide():t.show()});$(".mapboxgl-popup-close-button").click();$(".mireo-marker").hide();n.val()==="0"||n.val()===0?($(".liMapaHolder").show(),$(".mireo-marker").show()):$(".mireo-marker[data-nadkategorijaid='"+n.val()+"']").show();ck.flyTo({center:[16.000851413745295,45.813458941206022],zoom:6})});n!=""&&(n=n.replace("<","").replace(">","").replace("&","").replace(/-/g," ").trim(),$("#kartaPojam").val(n),setTimeout(function(){$(".searchKarta").click()},500))}$("#pojam").on("focus",function(){$(this).closest(".search").addClass("active")});$("#pojam").on("blur",function(){$(this).closest(".search").removeClass("active")});$(".search-button > .search-button").on("focus",function(){$(this).parent(".search-button").addClass("active")});$(".search-button > .search-button").on("blur",function(){$(this).parent(".search-button").removeClass("active")});$(".stats-aktualno").appendTo(".stats-wrapper")});$(window).on("load",function(){sirinaProzora=$(window).width();visinaProzora=$(window).height();setHeights()});$(window).on("resize orientationchange",function(){sirinaProzora=$(window).width();visinaProzora=$(window).height();resetDisplays();setHeights()});anketa.getKey=function(){return"hzmo_anketa"};anketa.getLastTimeVersion=function(){return new Date("2020-09-23T15:50:00")};anketa.initAnketa=function(){var t=anketa.getKey(),n=new anketa,i="";if(anketa.removeIfNewVersionExists(),$(".anketa-btn-spremi").length<=0)return!1;localStorage.getItem(t)===null||localStorage.getItem(t)===undefined||localStorage.getItem(t)===""?$.ajax({url:"default.aspx?ajax=true&ajaxAction=GetGuidVM&GdCheck=",method:"GET",dataType:"json",cache:!1}).done(function(r){if(r===null||r===undefined||r===""||r.Status!==200)return!1;n.guid=r.Guid;n.lastTimeVersion=anketa.getLastTimeVersion();i=JSON.stringify(n);localStorage.setItem(t,i);$("#frmAnketaStranice input[name='EncGuid']").val(n.guid);$("#frmAnketaStranice input[name='EncGuid']").attr("value",n.guid)}):(n=JSON.parse(localStorage.getItem(t)),$("#frmAnketaStranice input[name='EncGuid']").val(n.guid),$("#frmAnketaStranice input[name='EncGuid']").attr("value",n.guid),anketa.checkIfPageExistsInCollection(n.pages)==!0&&anketa.hideAndShowSuccessMessage());anketa.bindEvents()};anketa.checkIfPageExistsInCollection=function(n){var i=!1,f=document.location.href,r=null,t,u;if(n===undefined||n===null||n===[])return i;for(t=0,u=n.length;t<u;t++)if(r=n[t],r===f){i=!0;break}return i};anketa.hideAndShowSuccessMessage=function(){$(".error-msg-anketa").remove();$(".success-msg-anketa").addClass("show");$(".anketa-wrapper").addClass("hidden")};anketa.showErrorMessage=function(n){$(".error-msg-anketa").empty().append(n);$(".error-msg-anketa").addClass("show")};anketa.removeIfNewVersionExists=function(){var t=anketa.getKey(),n=new anketa,i="",r=null,u=null;if(localStorage.getItem(t)!==null||localStorage.getItem(t)!==undefined||localStorage.getItem(t)!==""){if(n=JSON.parse(localStorage.getItem(t)),n===undefined||n===null||n==="")return!1;n.lastTimeVersion!==undefined&&n.lastTimeVersion!==null&&n.lastTimeVersion!==""&&(i=new Date(n.lastTimeVersion));r=new Date(i);u=new Date(anketa.getLastTimeVersion());r.getTime()!=u.getTime()&&localStorage.removeItem(t)}return!1};anketa.bindEvents=function(){var t="",i="",n="";$(".anketa-btn-close, .anketa-btn-switch").click(function(){$(".anketa-wrap").is(":visible")?$(".anketa-wrap").fadeOut():$(".anketa-wrap").fadeIn()});$(".anketa-btn-pitanje").on("click change",function(){var i=$(this),n=i.text().toLowerCase();n=="yes"?n="da":n=="no"?n="ne":n=="partially"&&(n="djelomično");$(".anketa-btn-pitanje").removeClass("active");i.addClass("active");$("input[name='PronadenaInformacija']").removeAttr("checked");$(".anketa-radio[value='"+n+"']").attr("checked",!0);t=n;$(".anketa-pitanje-first").removeClass("anketa-pitanje-error")});$(".star-wrap").on("click change",function(){var n=$(this),t=n.children(".star-broj").text();$(".star").removeClass("active");n.children(".star").addClass("active");$("input[name='OcjenaStranice']").removeAttr("checked");$(".anketa-radio[value='"+t+"']").attr("checked",!0);i=t;$(".anketa-pitanje-second").removeClass("anketa-pitanje-error")});$("textarea[name='Rezencija']").on("click change",function(){var t=$(this);n=t.val().trim();n!=""&&$(".anketa-pitanje-third").removeClass("anketa-pitanje-error")});$(".anketa-btn-spremi").click(function(){t===undefined||t===null||t==""?$(".anketa-pitanje-first").addClass("anketa-pitanje-error"):$(".anketa-pitanje-first").removeClass("anketa-pitanje-error");i===undefined||i===null||i==""?$(".anketa-pitanje-second").addClass("anketa-pitanje-error"):$(".anketa-pitanje-second").removeClass("anketa-pitanje-error");n===undefined||n===null||n==""?$(".anketa-pitanje-third").addClass("anketa-pitanje-error"):$(".anketa-pitanje-third").removeClass("anketa-pitanje-error");$(".anketa-pitanje-error").length<=0&&anketa.submit()})};anketa.submit=function(){var i=$("#frmAnketaStranice"),r=i.serialize(),t=anketa.getKey(),n="";$.ajax({url:i.prop("action"),method:"POST",dataType:"json",cache:!1,data:r}).done(function(i){if(i===null||i===undefined||i==="")return!1;var r=new anketa;i.Valid==!1&&(i.ErrorMessage.indexOf("Neispravan guid")>-1&&(r.guid=i.EncGuid,r.lastTimeVersion=anketa.getLastTimeVersion(),r.pages=[],n=JSON.stringify(r),localStorage.setItem(t,n),$("#frmAnketaStranice input[name='EncGuid']").val(r.guid),$("#frmAnketaStranice input[name='EncGuid']").attr("value",r.guid)),anketa.showErrorMessage(i.ErrorMessage));i.Valid==!0&&(r=JSON.parse(localStorage.getItem(t)),r.pages.push(document.location.href),n=JSON.stringify(r),localStorage.setItem(t,n),anketa.hideAndShowSuccessMessage())})};$(document).ready(function(){anketa.initAnketa()});$(document).ready(function(){$(".upload-btn-wrapper-custom input[type=file]").change(function(){var n=$(this);n.parents(".upload-btn-wrapper-custom").children(".filename").text(n.val().split("\\").pop())});$(".upload-btn-wrapper-custom input[type=file]").on("dragenter",function(){var n=$(this);n.parents(".upload-btn-wrapper-custom").siblings("div").addClass("dragover")});$(".upload-btn-wrapper-custom input[type=file]").on("dragleave",function(){var n=$(this);n.parents(".upload-btn-wrapper-custom").siblings("div").removeClass("dragover")})})