var DM1881=DM1881||{},cssua;DM1881.Init=function(){function t(){$(window).width()<540?$(".search__input").attr("placeholder","Søk 1881"):$(".search__input").each(function(){$(this).attr("placeholder",$(this).data("placeholder"))})}function o(){var r=function(n){for(var i,u=window.location.search.substring(1),r=u.split("&"),t=0;t<r.length;t++)if(i=r[t].split("="),i[0]===n)return i[1];return!1},e=function(n){var i=document.cookie,u=n+"=",t=i.indexOf("; "+u),r;if(t==-1){if(t=i.indexOf(u),t!=0)return null}else t+=2,r=document.cookie.indexOf(";",t),r==-1&&(r=i.length);return decodeURI(i.substring(t+u.length,r))},u=r("lat"),f=r("lon"),n,t;u&&f?i(u,f):(n=e("1881_position"),n!=null&&(t=n.split("|"),i(t[0],t[1])))}function i(n,t){$(".listing-address-distance .link-icon-text").each(function(){this.href+="?locationlat="+n+"&locationlon="+t})}var n={searchForm:$("#form_search"),queryField:$("#query")},r=function(){function e(){var n=$(this).scrollTop();Math.abs(r-n)<=u||(n>r&&n>f?$(".header--default").removeClass("header--down").addClass("header--up"):n+$(window).height()<$(document).height()&&$(".header--default").removeClass("header--up").addClass("header--down"),r=n)}$.extend({getUrlVars:function(){for(var t=[],n,r=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),i=0;i<r.length;i++)n=r[i].split("="),t.push(n[0]),t[n[0]]=n[1];return t},getUrlVar:function(n){return $.getUrlVars()[n]}});$(".toogle-site-header-links").click(function(){$(".site-header-links").toggleClass("show-site-header-links")});$(".toogle-site-header-links__log-in").click(function(){$(".site-header-links__log-in").toggleClass("show-site-header-links__log-in")});$(".phone-hidden").click(function(){$(this).removeClass("phone-hidden")});$(".toggleactive").click(function(){$(this).toggleClass("active")});$(".search__input").each(function(){$(this).data("placeholder",$(this).attr("placeholder"))});$('#form_search button[type="reset"]').on("click",function(){$("#query").attr("value","").focus()});!cssua.ua.mobile&&!cssua.ua.ie;n.searchForm.submit(function(){n.queryField.autocomplete("close")});$(".search__input").focus(function(){$(".header--default").addClass("hide-header__logo")});$(".search__input").blur(function(){$(".header--default").removeClass("hide-header__logo")});var i,r=0,u=5,f=$(".header--default").outerHeight();$(window).scroll(function(){i=!0});setInterval(function(){i&&(e(),i=!1)},250);$(".js-list-content").each(function(){var n=$(this);n.attr("data-contains","");n.find("*").each(function(){$(this).attr("class")&&n.attr("data-contains",n.attr("data-contains")+" "+$(this).attr("class"))})});t();$(window).resize(t).trigger("resize");$(".dropdown").on("click",function(){$(this).find(".dropdown-menu").slideToggle("fast");$(this).toggleClass("active")});$(document).on("click",function(n){var t=$(".dropdown");t===n.target||t.has(n.target).length||$(".dropdown-menu").slideUp("fast")});o()},u=function(){$;this.value==="geo_location"?($.publish("/location/set"),$("<input>").attr({type:"hidden",id:"closest_to_pin",name:"closest_to_pin",value:this.value}).appendTo(n.searchForm)):window.location=this.value},f=function(n){var i,t,r;n.preventDefault();i=$(this).attr("href");t=$("#map_box").attr("data-map-listingid");console.log("LISTINGID",t);typeof t!="undefined"&&t!==""?(LogAction(t,"Map"),document.location.href=i+"?r="+encodeURIComponent(t)):(r=$("#query").val(),document.location.href=r!==""?i+"?query="+encodeURIComponent(r):i)},e=function(n){var i,t,r;n.preventDefault();i=$(this).attr("href");t=$("#map_box").attr("data-map-directions-url");typeof t!="undefined"&&t!==""?(r=$("#map_box").attr("data-map-listingid"),LogAction(r,"Route"),document.location.href=t):document.location.href=i},s=function(){document.addEventListener("DOMContentLoaded",r);$("[id^=geo-select]").on("change",u);$("#map_link").on("click",f);$("#map_link_directions").on("click",e)};return s(),{}}();document.addEventListener("DOMContentLoaded",function(){$(".phone-hidden").click(function(n){$(this).off("click");$(this).removeClass("phone-hidden");$(this).addClass("phone-visible");var t=$(n.currentTarget),i=t.data("listing"),r=t.data("value");cssua.ua.mobile||LogAction(i,"Call",r)})}),function(n){typeof define=="function"&&define.amd?define(["jquery"],n):typeof module=="object"&&module.exports?module.exports=function(t,i){return i===undefined&&(i=typeof window!="undefined"?require("jquery"):require("jquery")(t)),n(i),i}:n(jQuery)}(function(n){function i(i,r,u){typeof u=="string"&&(u={className:u});this.options=ot(p,n.isPlainObject(u)?u:{});this.loadHTML();this.wrapper=n(k.html);this.options.clickToHide&&this.wrapper.addClass(t+"-hidable");this.wrapper.data(t,this);this.arrow=this.wrapper.find("."+t+"-arrow");this.container=this.wrapper.find("."+t+"-container");this.container.append(this.userContainer);i&&i.length&&(this.elementType=i.attr("type"),this.originalElement=i,this.elem=rt(i),this.elem.data(t,this),this.elem.before(this.wrapper));this.container.hide();this.run(r)}var f=[].indexOf||function(n){for(var t=0,i=this.length;t<i;t++)if(t in this&&this[t]===n)return t;return-1},e="notify",t=e+"js",a=e+"!blank",r={t:"top",m:"middle",b:"bottom",l:"left",c:"center",r:"right"},h=["l","c","r"],v=["t","m","b"],s=["t","b","l","r"],b={t:"b",m:null,b:"t",l:"r",c:null,r:"l"},ut=function(t){var i;return i=[],n.each(t.split(/\W+/),function(n,t){var u;return u=t.toLowerCase().charAt(0),r[u]?i.push(u):void 0}),i},o={},k={name:"core",html:'<div class="'+t+'-wrapper">\n\t<div class="'+t+'-arrow"><\/div>\n\t<div class="'+t+'-container"><\/div>\n<\/div>',css:"."+t+"-corner {\n\tposition: fixed;\n\tmargin: 5px;\n\tz-index: 1050;\n}\n\n."+t+"-corner ."+t+"-wrapper,\n."+t+"-corner ."+t+"-container {\n\tposition: relative;\n\tdisplay: block;\n\theight: inherit;\n\twidth: inherit;\n\tmargin: 3px;\n}\n\n."+t+"-wrapper {\n\tz-index: 1;\n\tposition: absolute;\n\tdisplay: inline-block;\n\theight: 0;\n\twidth: 0;\n}\n\n."+t+"-container {\n\tdisplay: none;\n\tz-index: 1;\n\tposition: absolute;\n}\n\n."+t+"-hidable {\n\tcursor: pointer;\n}\n\n[data-notify-text],[data-notify-html] {\n\tposition: relative;\n}\n\n."+t+"-arrow {\n\tposition: absolute;\n\tz-index: 2;\n\twidth: 0;\n\theight: 0;\n}"},d={"border-radius":["-webkit-","-moz-"]},ft=function(n){return o[n]},et=function(n){if(!n)throw"Missing Style name";o[n]&&delete o[n]},g=function(i,r){var s,u,f,h;if(!i)throw"Missing Style name";if(!r)throw"Missing Style definition";if(!r.html)throw"Missing Style HTML";s=o[i];s&&s.cssElem&&(window.console&&console.warn(e+": overwriting style '"+i+"'"),o[i].cssElem.remove());r.name=i;o[i]=r;u="";r.classes&&n.each(r.classes,function(i,f){return u+="."+t+"-"+r.name+"-"+i+" {\n",n.each(f,function(t,i){return d[t]&&n.each(d[t],function(n,r){return u+="\t"+r+t+": "+i+";\n"}),u+="\t"+t+": "+i+";\n"}),u+="}\n"});r.css&&(u+="/* styles for "+r.name+" */\n"+r.css);u&&(r.cssElem=y(u),r.cssElem.attr("id","notify-"+r.name));f={};h=n(r.html);nt("html",h,f);nt("text",h,f);r.fields=f},y=function(t){var i;i=w("style");i.attr("type","text/css");n("head").append(i);try{i.html(t)}catch(r){i[0].styleSheet.cssText=t}return i},nt=function(t,i,r){var u;return t!=="html"&&(t="text"),u="data-notify-"+t,tt(i,"["+u+"]").each(function(){var i;i=n(this).attr(u);i||(i=a);r[i]=t})},tt=function(n,t){return n.is(t)?n:n.find(t)},p={clickToHide:!0,autoHide:!0,autoHideDelay:5e3,arrowShow:!0,arrowSize:5,breakNewLines:!0,elementPosition:"bottom",globalPosition:"top right",style:"bootstrap",className:"error",showAnimation:"slideDown",showDuration:400,hideAnimation:"slideUp",hideDuration:200,gap:5},ot=function(t,i){var r;return r=function(){},r.prototype=t,n.extend(!0,new r,i)},st=function(t){return n.extend(p,t)},w=function(t){return n("<"+t+"><\/"+t+">")},it={},rt=function(t){var i;return t.is("[type=radio]")&&(i=t.parents("form:first").find("[type=radio]").filter(function(i,r){return n(r).attr("name")===t.attr("name")}),t=i.first()),t},u=function(n,t,i){var u,f;if(typeof i=="string")i=parseInt(i,10);else if(typeof i!="number")return;if(!isNaN(i))return u=r[b[t.charAt(0)]],f=t,n[u]!==undefined&&(t=r[u.charAt(0)],i=-i),n[t]===undefined?n[t]=i:n[t]+=i,null},c=function(n,t,i){if(n==="l"||n==="t")return 0;if(n==="c"||n==="m")return i/2-t/2;if(n==="r"||n==="b")return i-t;throw"Invalid alignment";},l=function(n){return l.e=l.e||w("div"),l.e.text(n).html()};i.prototype.loadHTML=function(){var t;t=this.getStyle();this.userContainer=n(t.html);this.userFields=t.fields};i.prototype.show=function(n,t){var i,f,e,r,u;if(f=function(i){return function(){return n||i.elem||i.destroy(),t?t():void 0}}(this),u=this.container.parent().parents(":hidden").length>0,e=this.container.add(this.arrow),i=[],u&&n)r="show";else if(u&&!n)r="hide";else if(!u&&n)r=this.options.showAnimation,i.push(this.options.showDuration);else{if(u||n)return f();r=this.options.hideAnimation;i.push(this.options.hideDuration)}return i.push(f),e[r].apply(e,i)};i.prototype.setGlobalPosition=function(){var e=this.getPosition(),o=e[0],s=e[1],c=r[o],f=r[s],h=o+"|"+s,i=it[h],u;return i&&document.contains(i[0])||(i=it[h]=w("div"),u={},u[c]=0,f==="middle"?u.top="45%":f==="center"?u.left="45%":u[f]=0,i.css(u).addClass(t+"-corner"),n("body").append(i)),i.prepend(this.wrapper)};i.prototype.setElementPosition=function(){var et,i,e,ot,st,ht,t,d,ct,lt,g,nt,at,y,p,vt,yt,pt,tt,w,it,o,wt,l,a,rt,k,ut,ft;for(k=this.getPosition(),l=k[0],o=k[1],wt=k[2],g=this.elem.position(),d=this.elem.outerHeight(),nt=this.elem.outerWidth(),ct=this.elem.innerHeight(),lt=this.elem.innerWidth(),ft=this.wrapper.position(),st=this.container.height(),ht=this.container.width(),pt=r[l],w=b[l],it=r[w],t={},t[it]=l==="b"?d:l==="r"?nt:0,u(t,"top",g.top-ft.top),u(t,"left",g.left-ft.left),ut=["top","left"],y=0,vt=ut.length;y<vt;y++)a=ut[y],tt=parseInt(this.elem.css("margin-"+a),10),tt&&u(t,a,tt);if(at=Math.max(0,this.options.gap-(this.options.arrowShow?e:0)),u(t,it,at),this.options.arrowShow){for(e=this.options.arrowSize,i=n.extend({},t),et=this.userContainer.css("border-color")||this.userContainer.css("border-top-color")||this.userContainer.css("background-color")||"white",p=0,yt=s.length;p<yt;p++)(a=s[p],rt=r[a],a!==w)&&(ot=rt===pt?et:"transparent",i["border-"+rt]=e+"px solid "+ot);u(t,r[w],e);f.call(s,o)>=0&&u(i,r[o],e*2)}else this.arrow.hide();return f.call(v,l)>=0?(u(t,"left",c(o,ht,nt)),i&&u(i,"left",c(o,e,lt))):f.call(h,l)>=0&&(u(t,"top",c(o,st,d)),i&&u(i,"top",c(o,e,ct))),this.container.is(":visible")&&(t.display="block"),this.container.removeAttr("style").css(t),i?this.arrow.removeAttr("style").css(i):void 0};i.prototype.getPosition=function(){var n,t,i,r,u,e,o,c;if(c=this.options.position||(this.elem?this.options.elementPosition:this.options.globalPosition),n=ut(c),n.length===0&&(n[0]="b"),t=n[0],f.call(s,t)<0)throw"Must be one of ["+s+"]";return(n.length===1||(i=n[0],f.call(v,i)>=0)&&(r=n[1],f.call(h,r)<0)||(u=n[0],f.call(h,u)>=0)&&(e=n[1],f.call(v,e)<0))&&(n[1]=(o=n[0],f.call(h,o)>=0)?"m":"l"),n.length===2&&(n[2]=n[1]),n};i.prototype.getStyle=function(n){var t;if(n||(n=this.options.style),n||(n="default"),t=o[n],!t)throw"Missing style: "+n;return t};i.prototype.updateClasses=function(){var i,r;return i=["base"],n.isArray(this.options.className)?i=i.concat(this.options.className):this.options.className&&i.push(this.options.className),r=this.getStyle(),i=n.map(i,function(n){return t+"-"+r.name+"-"+n}).join(" "),this.userContainer.attr("class",i)};i.prototype.run=function(t,i){var r,u,f,e,o;if(n.isPlainObject(i)?n.extend(this.options,i):n.type(i)==="string"&&(this.options.className=i),this.container&&!t){this.show(!1);return}if(this.container||t){u={};n.isPlainObject(t)?u=t:u[a]=t;for(f in u)(r=u[f],e=this.userFields[f],e)&&(e==="text"&&(r=l(r),this.options.breakNewLines&&(r=r.replace(/\n/g,"<br/>"))),o=f===a?"":"="+f,tt(this.userContainer,"[data-notify-"+e+o+"]").html(r));this.updateClasses();this.elem?this.setElementPosition():this.setGlobalPosition();this.show(!0);this.options.autoHide&&(clearTimeout(this.autohideTimer),this.autohideTimer=setTimeout(this.show.bind(this,!1),this.options.autoHideDelay))}};i.prototype.destroy=function(){this.wrapper.data(t,null);this.wrapper.remove()};n[e]=function(t,r,u){return t&&t.nodeName||t.jquery?n(t)[e](r,u):(u=r,r=t,new i(null,r,u)),t};n.fn[e]=function(r,u){return n(this).each(function(){var f=rt(n(this)).data(t),e;f&&f.destroy();e=new i(n(this),r,u)}),this};n.extend(n[e],{defaults:st,addStyle:g,removeStyle:et,pluginOptions:p,getStyle:ft,insertCSS:y});g("bootstrap",{html:"<div>\n<span data-notify-text><\/span>\n<\/div>",classes:{base:{"font-weight":"bold",padding:"8px 15px 8px 14px","text-shadow":"0 1px 0 rgba(255, 255, 255, 0.5)","background-color":"#fcf8e3",border:"1px solid #fbeed5","border-radius":"4px","white-space":"nowrap","padding-left":"25px","background-repeat":"no-repeat","background-position":"3px 7px"},error:{color:"#B94A48","background-color":"#F2DEDE","border-color":"#EED3D7","background-image":"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAtRJREFUeNqkVc1u00AQHq+dOD+0poIQfkIjalW0SEGqRMuRnHos3DjwAH0ArlyQeANOOSMeAA5VjyBxKBQhgSpVUKKQNGloFdw4cWw2jtfMOna6JOUArDTazXi/b3dm55socPqQhFka++aHBsI8GsopRJERNFlY88FCEk9Yiwf8RhgRyaHFQpPHCDmZG5oX2ui2yilkcTT1AcDsbYC1NMAyOi7zTX2Agx7A9luAl88BauiiQ/cJaZQfIpAlngDcvZZMrl8vFPK5+XktrWlx3/ehZ5r9+t6e+WVnp1pxnNIjgBe4/6dAysQc8dsmHwPcW9C0h3fW1hans1ltwJhy0GxK7XZbUlMp5Ww2eyan6+ft/f2FAqXGK4CvQk5HueFz7D6GOZtIrK+srupdx1GRBBqNBtzc2AiMr7nPplRdKhb1q6q6zjFhrklEFOUutoQ50xcX86ZlqaZpQrfbBdu2R6/G19zX6XSgh6RX5ubyHCM8nqSID6ICrGiZjGYYxojEsiw4PDwMSL5VKsC8Yf4VRYFzMzMaxwjlJSlCyAQ9l0CW44PBADzXhe7xMdi9HtTrdYjFYkDQL0cn4Xdq2/EAE+InCnvADTf2eah4Sx9vExQjkqXT6aAERICMewd/UAp/IeYANM2joxt+q5VI+ieq2i0Wg3l6DNzHwTERPgo1ko7XBXj3vdlsT2F+UuhIhYkp7u7CarkcrFOCtR3H5JiwbAIeImjT/YQKKBtGjRFCU5IUgFRe7fF4cCNVIPMYo3VKqxwjyNAXNepuopyqnld602qVsfRpEkkz+GFL1wPj6ySXBpJtWVa5xlhpcyhBNwpZHmtX8AGgfIExo0ZpzkWVTBGiXCSEaHh62/PoR0p/vHaczxXGnj4bSo+G78lELU80h1uogBwWLf5YlsPmgDEd4M236xjm+8nm4IuE/9u+/PH2JXZfbwz4zw1WbO+SQPpXfwG/BBgAhCNZiSb/pOQAAAAASUVORK5CYII=)"},success:{color:"#468847","background-color":"#DFF0D8","border-color":"#D6E9C6","background-image":"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAutJREFUeNq0lctPE0Ecx38zu/RFS1EryqtgJFA08YCiMZIAQQ4eRG8eDGdPJiYeTIwHTfwPiAcvXIwXLwoXPaDxkWgQ6islKlJLSQWLUraPLTv7Gme32zoF9KSTfLO7v53vZ3d/M7/fIth+IO6INt2jjoA7bjHCJoAlzCRw59YwHYjBnfMPqAKWQYKjGkfCJqAF0xwZjipQtA3MxeSG87VhOOYegVrUCy7UZM9S6TLIdAamySTclZdYhFhRHloGYg7mgZv1Zzztvgud7V1tbQ2twYA34LJmF4p5dXF1KTufnE+SxeJtuCZNsLDCQU0+RyKTF27Unw101l8e6hns3u0PBalORVVVkcaEKBJDgV3+cGM4tKKmI+ohlIGnygKX00rSBfszz/n2uXv81wd6+rt1orsZCHRdr1Imk2F2Kob3hutSxW8thsd8AXNaln9D7CTfA6O+0UgkMuwVvEFFUbbAcrkcTA8+AtOk8E6KiQiDmMFSDqZItAzEVQviRkdDdaFgPp8HSZKAEAL5Qh7Sq2lIJBJwv2scUqkUnKoZgNhcDKhKg5aH+1IkcouCAdFGAQsuWZYhOjwFHQ96oagWgRoUov1T9kRBEODAwxM2QtEUl+Wp+Ln9VRo6BcMw4ErHRYjH4/B26AlQoQQTRdHWwcd9AH57+UAXddvDD37DmrBBV34WfqiXPl61g+vr6xA9zsGeM9gOdsNXkgpEtTwVvwOklXLKm6+/p5ezwk4B+j6droBs2CsGa/gNs6RIxazl4Tc25mpTgw/apPR1LYlNRFAzgsOxkyXYLIM1V8NMwyAkJSctD1eGVKiq5wWjSPdjmeTkiKvVW4f2YPHWl3GAVq6ymcyCTgovM3FzyRiDe2TaKcEKsLpJvNHjZgPNqEtyi6mZIm4SRFyLMUsONSSdkPeFtY1n0mczoY3BHTLhwPRy9/lzcziCw9ACI+yql0VLzcGAZbYSM5CCSZg1/9oc/nn7+i8N9p/8An4JMADxhH+xHfuiKwAAAABJRU5ErkJggg==)"},info:{color:"#3A87AD","background-color":"#D9EDF7","border-color":"#BCE8F1","background-image":"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QYFAhkSsdes/QAAA8dJREFUOMvVlGtMW2UYx//POaWHXg6lLaW0ypAtw1UCgbniNOLcVOLmAjHZolOYlxmTGXVZdAnRfXQm+7SoU4mXaOaiZsEpC9FkiQs6Z6bdCnNYruM6KNBw6YWewzl9z+sHImEWv+vz7XmT95f/+3/+7wP814v+efDOV3/SoX3lHAA+6ODeUFfMfjOWMADgdk+eEKz0pF7aQdMAcOKLLjrcVMVX3xdWN29/GhYP7SvnP0cWfS8caSkfHZsPE9Fgnt02JNutQ0QYHB2dDz9/pKX8QjjuO9xUxd/66HdxTeCHZ3rojQObGQBcuNjfplkD3b19Y/6MrimSaKgSMmpGU5WevmE/swa6Oy73tQHA0Rdr2Mmv/6A1n9w9suQ7097Z9lM4FlTgTDrzZTu4StXVfpiI48rVcUDM5cmEksrFnHxfpTtU/3BFQzCQF/2bYVoNbH7zmItbSoMj40JSzmMyX5qDvriA7QdrIIpA+3cdsMpu0nXI8cV0MtKXCPZev+gCEM1S2NHPvWfP/hL+7FSr3+0p5RBEyhEN5JCKYr8XnASMT0xBNyzQGQeI8fjsGD39RMPk7se2bd5ZtTyoFYXftF6y37gx7NeUtJJOTFlAHDZLDuILU3j3+H5oOrD3yWbIztugaAzgnBKJuBLpGfQrS8wO4FZgV+c1IxaLgWVU0tMLEETCos4xMzEIv9cJXQcyagIwigDGwJgOAtHAwAhisQUjy0ORGERiELgG4iakkzo4MYAxcM5hAMi1WWG1yYCJIcMUaBkVRLdGeSU2995TLWzcUAzONJ7J6FBVBYIggMzmFbvdBV44Corg8vjhzC+EJEl8U1kJtgYrhCzgc/vvTwXKSib1paRFVRVORDAJAsw5FuTaJEhWM2SHB3mOAlhkNxwuLzeJsGwqWzf5TFNdKgtY5qHp6ZFf67Y/sAVadCaVY5YACDDb3Oi4NIjLnWMw2QthCBIsVhsUTU9tvXsjeq9+X1d75/KEs4LNOfcdf/+HthMnvwxOD0wmHaXr7ZItn2wuH2SnBzbZAbPJwpPx+VQuzcm7dgRCB57a1uBzUDRL4bfnI0RE0eaXd9W89mpjqHZnUI5Hh2l2dkZZUhOqpi2qSmpOmZ64Tuu9qlz/SEXo6MEHa3wOip46F1n7633eekV8ds8Wxjn37Wl63VVa+ej5oeEZ/82ZBETJjpJ1Rbij2D3Z/1trXUvLsblCK0XfOx0SX2kMsn9dX+d+7Kf6h8o4AIykuffjT8L20LU+w4AZd5VvEPY+XpWqLV327HR7DzXuDnD8r+ovkBehJ8i+y8YAAAAASUVORK5CYII=)"},warn:{color:"#C09853","background-color":"#FCF8E3","border-color":"#FBEED5","background-image":"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAMAAAC6V+0/AAABJlBMVEXr6eb/2oD/wi7/xjr/0mP/ykf/tQD/vBj/3o7/uQ//vyL/twebhgD/4pzX1K3z8e349vK6tHCilCWbiQymn0jGworr6dXQza3HxcKkn1vWvV/5uRfk4dXZ1bD18+/52YebiAmyr5S9mhCzrWq5t6ufjRH54aLs0oS+qD751XqPhAybhwXsujG3sm+Zk0PTwG6Shg+PhhObhwOPgQL4zV2nlyrf27uLfgCPhRHu7OmLgAafkyiWkD3l49ibiAfTs0C+lgCniwD4sgDJxqOilzDWowWFfAH08uebig6qpFHBvH/aw26FfQTQzsvy8OyEfz20r3jAvaKbhgG9q0nc2LbZxXanoUu/u5WSggCtp1anpJKdmFz/zlX/1nGJiYmuq5Dx7+sAAADoPUZSAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfdBgUBGhh4aah5AAAAlklEQVQY02NgoBIIE8EUcwn1FkIXM1Tj5dDUQhPU502Mi7XXQxGz5uVIjGOJUUUW81HnYEyMi2HVcUOICQZzMMYmxrEyMylJwgUt5BljWRLjmJm4pI1hYp5SQLGYxDgmLnZOVxuooClIDKgXKMbN5ggV1ACLJcaBxNgcoiGCBiZwdWxOETBDrTyEFey0jYJ4eHjMGWgEAIpRFRCUt08qAAAAAElFTkSuQmCC)"}}});n(function(){y(k.css).attr("id","core-notify");n(document).on("click","."+t+"-hidable",function(){n(this).trigger("notify-hide")});n(document).on("notify-hide","."+t+"-wrapper",function(){var i=n(this).data(t);i&&i.show(!1)})})}),function(n){var t=n({});n.subscribe=function(){t.on.apply(t,arguments)};n.unsubscribe=function(){t.off.apply(t,arguments)};n.publish=function(){t.trigger.apply(t,arguments)}}(jQuery);$(function(){var n=$("#query").autocomplete({appendTo:$("#autocomplete"),source:function(n,t){$.ajax({url:ServiceDomain+"/autocompleteservice/autocomplete/getsuggestions?mode=search",dataType:"jsonp",data:{q:n.term,lat:$("#lat").val(),lon:$("#lon").val()},success:function(n){t(n)}})},position:{my:"left top-2",at:"left-2 bottom",collision:"none"},messages:{noResults:"",results:function(){}},minLength:2,delay:200,select:function(n,t){DM1881.GaLog.pushDataLayer(["Auto: "+t.item.category,t.item.title,$(this).val()]);$(this).val(t.item.title);$(this).attr("value",t.item.title);switch(t.item.category){case"Company":case"Person":$.get("/utility/geturl/"+t.item.id,function(n){n&&n.url?(t.item.title.indexOf("Åpningstider")!==-1&&(n.url+="#contact"),t.item.title.indexOf("Vis i kart")!==-1&&(n.url=MapHost+"?r="+t.item.id),window.location=n.url):$("#form_search").submit()});break;case"Street":window.location=MapHost+"?query="+encodeURIComponent(t.item.title)+"&type=adresse";break;case"Place":window.location=MapHost+"?r="+t.item.id;break;case"Proximity":$.publish("/location/set");break;default:$("#form_search").submit()}n.preventDefault()},open:function(){$(this).autocomplete("widget").css({width:$(this).parent().outerWidth()+4})},focus:function(n){n.preventDefault()},response:function(n,t){t.content.splice(0,0,{category:"Proximity",value:this.value,id:0,label:this.value,title:this.value})}}).autocomplete("instance")._renderItem=function(n,t){var u=this.term.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),f=$.trim(u).replace("  "," ").split(" ").join("|"),e=new RegExp("("+f+")","gi"),r=t.title.replace(e,"<strong>$1<\/strong>"),i="icon-search-2";switch(t.category){case"Person":i="icon-user";break;case"Company":i=t.title.indexOf("Åpningstider")!==-1||t.title.indexOf("Vis i kart")!==-1?"icon-sub-info":"icon-factory";break;case"Street":case"Place":i="icon-map-pin";break;case"Proximity":i="icon-bullseye";r="Søk "+r+" i nærheten"}return $('<li><div><a href="#"><span class="'+i+'"><\/span><span>'+r+"<\/span><\/a><\/div><\/li>").appendTo(n)};$(".ui-autocomplete").addClass("input-autocomplete-options")});DM1881.Location=function(){var n={searchForm:$("#form_search"),queryField:$("#query")},t=function(n){navigator.geolocation&&navigator.geolocation.getCurrentPosition(n,i)},i=function(n){switch(n.code){case n.PERMISSION_DENIED:$.notify("Din enhet må tillate posisjonering.","error");break;case n.POSITION_UNAVAILABLE:$.notify("Posisjonering er ikke tilgjengelig.","error");break;case n.TIMEOUT:$.notify("Posisjonering tok for lang tid.","error");break;case n.UNKNOWN_ERROR:$.notify("En ukjent feil har oppstått med posisjonering.","error")}},r=function(){t(function(t){var i,r;$("#lat").remove();$("#lon").remove();$("<input>").attr({type:"hidden",id:"lat",name:"lat",value:t.coords.latitude}).appendTo(n.searchForm);$("<input>").attr({type:"hidden",id:"lon",name:"lon",value:t.coords.longitude}).appendTo(n.searchForm);i=$.getUrlVar("type");i!==""&&$("<input>").attr({type:"hidden",id:"type",name:"type",value:i}).appendTo(n.searchForm);n.queryField.val()!==""&&(r=document.location.host.indexOf("localhost")!==-1?";path=/;":";path=/;domain=.1881.no",document.cookie="1881_position="+t.coords.latitude+"|"+t.coords.longitude+r+";",n.searchForm.submit())})},u=function(){$.subscribe("/location/set",r)};return u(),{}}();cssua=function(n,t,i){"use strict";var u=" ua-",e=/\s*([\-\w ]+)[\s\/\:]([\d_]+\b(?:[\-\._\/]\w+)*)/,o=/([\w\-\.]+[\s\/][v]?[\d_]+\b(?:[\-\._\/]\w+)*)/g,s=/\b(?:(blackberry\w*|bb10)|(rim tablet os))(?:\/(\d+\.\d+(?:\.\w+)*))?/,h=/\bsilk-accelerated=true\b/,c=/\bfluidapp\b/,l=/(\bwindows\b|\bmacintosh\b|\blinux\b|\bunix\b)/,a=/(\bandroid\b|\bipad\b|\bipod\b|\bwindows phone\b|\bwpdesktop\b|\bxblwp7\b|\bzunewp7\b|\bwindows ce\b|\bblackberry\w*|\bbb10\b|\brim tablet os\b|\bmeego|\bwebos\b|\bpalm|\bsymbian|\bj2me\b|\bdocomo\b|\bpda\b|\bchtml\b|\bmidp\b|\bcldc\b|\w*?mobile\w*?|\w*?phone\w*?)/,v=/(\bxbox\b|\bplaystation\b|\bnintendo\s+\w+)/,r={parse:function(n,t){var i={},r,y,p,u,nt,k,w,d,b,f,g;if(t&&(i.standalone=t),n=(""+n).toLowerCase(),!n)return i;for(p=n.split(/[()]/),u=0,nt=p.length;u<nt;u++)if(u%2)for(k=p[u].split(";"),r=0,y=k.length;r<y;r++)e.exec(k[r])&&(w=RegExp.$1.split(" ").join("_"),d=RegExp.$2,(!i[w]||parseFloat(i[w])<parseFloat(d))&&(i[w]=d));else if(b=p[u].match(o),b)for(r=0,y=b.length;r<y;r++)f=b[r].split(/[\/\s]+/),f.length&&f[0]!=="mozilla"&&(i[f[0].split(" ").join("_")]=f.slice(1).join("-"));return a.exec(n)?(i.mobile=RegExp.$1,s.exec(n)&&(delete i[i.mobile],i.blackberry=i.version||RegExp.$3||RegExp.$2||RegExp.$1,RegExp.$1?i.mobile="blackberry":i.version==="0.0.1"&&(i.blackberry="7.1.0.0"))):v.exec(n)?(i.game=RegExp.$1,g=i.game.split(" ").join("_"),i.version&&!i[g]&&(i[g]=i.version)):l.exec(n)&&(i.desktop=RegExp.$1),i.intel_mac_os_x?(i.mac_os_x=i.intel_mac_os_x.split("_").join("."),delete i.intel_mac_os_x):i.cpu_iphone_os?(i.ios=i.cpu_iphone_os.split("_").join("."),delete i.cpu_iphone_os):i.cpu_os?(i.ios=i.cpu_os.split("_").join("."),delete i.cpu_os):i.mobile!=="iphone"||i.ios||(i.ios="1"),i.opera&&i.version?(i.opera=i.version,delete i.blackberry):h.exec(n)?i.silk_accelerated=!0:c.exec(n)&&(i.fluidapp=i.version),i.edge&&(delete i.applewebkit,delete i.safari,delete i.chrome,delete i.android),i.applewebkit?(i.webkit=i.applewebkit,delete i.applewebkit,i.opr&&(i.opera=i.opr,delete i.opr,delete i.chrome),i.safari&&(i.chrome||i.crios||i.fxios||i.opera||i.silk||i.fluidapp||i.phantomjs||i.mobile&&!i.ios?(delete i.safari,i.vivaldi&&delete i.chrome):i.safari=i.version&&!i.rim_tablet_os?i.version:{"419":"2.0.4","417":"2.0.3","416":"2.0.2","412":"2.0","312":"1.3","125":"1.2","85":"1.0"}[parseInt(i.safari,10)]||i.safari)):i.msie||i.trident?(i.opera||(i.ie=i.msie||i.rv),delete i.msie,delete i.android,i.windows_phone_os?(i.windows_phone=i.windows_phone_os,delete i.windows_phone_os):(i.mobile==="wpdesktop"||i.mobile==="xblwp7"||i.mobile==="zunewp7")&&(i.mobile="windows desktop",i.windows_phone=+i.ie<9?"7.0":+i.ie<10?"7.5":"8.0",delete i.windows_nt)):(i.gecko||i.firefox)&&(i.gecko=i.rv),i.rv&&delete i.rv,i.version&&delete i.version,i},format:function(n){function r(n,t){var r,i;if(n=n.split(".").join("-"),r=u+n,typeof t=="string"){for(t=t.split(" ").join("_").split(".").join("-"),i=t.indexOf("-");i>0;)r+=u+n+"-"+t.substring(0,i),i=t.indexOf("-",i+1);r+=u+n+"-"+t}return r}var i="";for(var t in n)t&&n.hasOwnProperty(t)&&(i+=r(t,n[t]));return i},encode:function(n){var t="";for(var i in n)i&&n.hasOwnProperty(i)&&(t&&(t+="&"),t+=encodeURIComponent(i)+"="+encodeURIComponent(n[i]));return t}},f;return r.userAgent=r.ua=r.parse(t,i),f=r.format(r.ua)+" js",n.className=n.className?n.className.replace(/\bno-js\b/g,"")+f:f.substr(1),r}(document.documentElement,navigator.userAgent,navigator.standalone),function(n,t,i){function o(){var t=n.L;r.noConflict=function(){return n.L=t,this};n.L=r}var r={version:"1.0.2+4bbb16c"},u,f,e;typeof module=="object"&&typeof module.exports=="object"?module.exports=r:typeof define=="function"&&define.amd&&define(r);typeof n!="undefined"&&o();r.Util={extend:function(n){for(var i,r,t=1,u=arguments.length;t<u;t++){r=arguments[t];for(i in r)n[i]=r[i]}return n},create:Object.create||function(){function n(){}return function(t){return n.prototype=t,new n}}(),bind:function(n,t){var i=Array.prototype.slice,r;return n.bind?n.bind.apply(n,i.call(arguments,1)):(r=i.call(arguments,2),function(){return n.apply(t,r.length?r.concat(i.call(arguments)):arguments)})},stamp:function(n){return n._leaflet_id=n._leaflet_id||++r.Util.lastId,n._leaflet_id},lastId:0,throttle:function(n,t,i){var u,r,f,e;return e=function(){u=!1;r&&(f.apply(i,r),r=!1)},f=function(){u?r=arguments:(n.apply(i,arguments),setTimeout(e,t),u=!0)}},wrapNum:function(n,t,i){var f=t[1],r=t[0],u=f-r;return n===f&&i?n:((n-r)%u+u)%u+r},falseFn:function(){return!1},formatNum:function(n,t){var i=Math.pow(10,t||5);return Math.round(n*i)/i},trim:function(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")},splitWords:function(n){return r.Util.trim(n).split(/\s+/)},setOptions:function(n,t){n.hasOwnProperty("options")||(n.options=n.options?r.Util.create(n.options):{});for(var i in t)n.options[i]=t[i];return n.options},getParamString:function(n,t,i){var u=[];for(var r in n)u.push(encodeURIComponent(i?r.toUpperCase():r)+"="+encodeURIComponent(n[r]));return(!t||t.indexOf("?")===-1?"?":"&")+u.join("&")},template:function(n,t){return n.replace(r.Util.templateRe,function(n,r){var u=t[r];if(u===i)throw new Error("No value provided for variable "+n);else typeof u=="function"&&(u=u(t));return u})},templateRe:/\{ *([\w_\-]+) *\}/g,isArray:Array.isArray||function(n){return Object.prototype.toString.call(n)==="[object Array]"},indexOf:function(n,t){for(var i=0;i<n.length;i++)if(n[i]===t)return i;return-1},emptyImageUrl:"data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="},function(){function t(t){return n["webkit"+t]||n["moz"+t]||n["ms"+t]}function u(t){var r=+new Date,u=Math.max(0,16-(r-i));return i=r+u,n.setTimeout(t,u)}var i=0,f=n.requestAnimationFrame||t("RequestAnimationFrame")||u,e=n.cancelAnimationFrame||t("CancelAnimationFrame")||t("CancelRequestAnimationFrame")||function(t){n.clearTimeout(t)};r.Util.requestAnimFrame=function(t,i,e){if(e&&f===u)t.call(i);else return f.call(n,r.bind(t,i))};r.Util.cancelAnimFrame=function(t){t&&e.call(n,t)}}();r.extend=r.Util.extend;r.bind=r.Util.bind;r.stamp=r.Util.stamp;r.setOptions=r.Util.setOptions;r.Class=function(){};r.Class.extend=function(n){var i=function(){this.initialize&&this.initialize.apply(this,arguments);this.callInitHooks()},f=i.__super__=this.prototype,t=r.Util.create(f),u;t.constructor=i;i.prototype=t;for(u in this)this.hasOwnProperty(u)&&u!=="prototype"&&(i[u]=this[u]);return n.statics&&(r.extend(i,n.statics),delete n.statics),n.includes&&(r.Util.extend.apply(null,[t].concat(n.includes)),delete n.includes),t.options&&(n.options=r.Util.extend(r.Util.create(t.options),n.options)),r.extend(t,n),t._initHooks=[],t.callInitHooks=function(){if(!this._initHooksCalled){f.callInitHooks&&f.callInitHooks.call(this);this._initHooksCalled=!0;for(var n=0,i=t._initHooks.length;n<i;n++)t._initHooks[n].call(this)}},i};r.Class.include=function(n){return r.extend(this.prototype,n),this};r.Class.mergeOptions=function(n){return r.extend(this.prototype.options,n),this};r.Class.addInitHook=function(n){var t=Array.prototype.slice.call(arguments,1),i=typeof n=="function"?n:function(){this[n].apply(this,t)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(i),this};r.Evented=r.Class.extend({on:function(n,t,i){var f,u,e;if(typeof n=="object")for(f in n)this._on(f,n[f],t);else for(n=r.Util.splitWords(n),u=0,e=n.length;u<e;u++)this._on(n[u],t,i);return this},off:function(n,t,i){var f,u,e;if(n)if(typeof n=="object")for(f in n)this._off(f,n[f],t);else for(n=r.Util.splitWords(n),u=0,e=n.length;u<e;u++)this._off(n[u],t,i);else delete this._events;return this},_on:function(n,t,r){var u,o,f,e,s;for(this._events=this._events||{},u=this._events[n],u||(u=[],this._events[n]=u),r===this&&(r=i),o={fn:t,ctx:r},f=u,e=0,s=f.length;e<s;e++)if(f[e].fn===t&&f[e].ctx===r)return;f.push(o);u.count++},_off:function(n,t,u){var f,e,o,s;if(this._events&&(f=this._events[n],f)){if(!t){for(e=0,o=f.length;e<o;e++)f[e].fn=r.Util.falseFn;delete this._events[n];return}if(u===this&&(u=i),f)for(e=0,o=f.length;e<o;e++)if((s=f[e],s.ctx===u)&&s.fn===t){s.fn=r.Util.falseFn;this._firingCount&&(this._events[n]=f=f.slice());f.splice(e,1);return}}},fire:function(n,t,i){var e,u,f,s,o;if(!this.listens(n,i))return this;if(e=r.Util.extend({},t,{type:n,target:this}),this._events&&(u=this._events[n],u)){for(this._firingCount=this._firingCount+1||1,f=0,s=u.length;f<s;f++)o=u[f],o.fn.call(o.ctx||this,e);this._firingCount--}return i&&this._propagateEvent(e),this},listens:function(n,t){var i=this._events&&this._events[n],r;if(i&&i.length)return!0;if(t)for(r in this._eventParents)if(this._eventParents[r].listens(n,t))return!0;return!1},once:function(n,t,i){var u,f;if(typeof n=="object"){for(u in n)this.once(u,n[u],t);return this}f=r.bind(function(){this.off(n,t,i).off(n,f,i)},this);return this.on(n,t,i).on(n,f,i)},addEventParent:function(n){return this._eventParents=this._eventParents||{},this._eventParents[r.stamp(n)]=n,this},removeEventParent:function(n){return this._eventParents&&delete this._eventParents[r.stamp(n)],this},_propagateEvent:function(n){for(var t in this._eventParents)this._eventParents[t].fire(n.type,r.extend({layer:n.target},n),!0)}});u=r.Evented.prototype;u.addEventListener=u.on;u.removeEventListener=u.clearAllEventListeners=u.off;u.addOneTimeEventListener=u.once;u.fireEvent=u.fire;u.hasEventListeners=u.listens;r.Mixin={Events:u},function(){var i=navigator.userAgent.toLowerCase(),e=t.documentElement,f="ActiveXObject"in n,o=i.indexOf("webkit")!==-1,b=i.indexOf("phantom")!==-1,h=i.search("android [23]")!==-1,c=i.indexOf("chrome")!==-1,l=i.indexOf("gecko")!==-1&&!o&&!n.opera&&!f,k=navigator.platform.indexOf("Win")===0,u=typeof orientation!="undefined"||i.indexOf("mobile")!==-1,a=!n.PointerEvent&&n.MSPointerEvent,v=n.PointerEvent||a,y=f&&"transition"in e.style,s="WebKitCSSMatrix"in n&&"m11"in new n.WebKitCSSMatrix&&!h,p="MozPerspective"in e.style,w="OTransition"in e.style,d=!n.L_NO_TOUCH&&(v||"ontouchstart"in n||n.DocumentTouch&&t instanceof n.DocumentTouch);r.Browser={ie:f,ielt9:f&&!t.addEventListener,edge:"msLaunchUri"in navigator&&!("documentMode"in t),webkit:o,gecko:l,android:i.indexOf("android")!==-1,android23:h,chrome:c,safari:!c&&i.indexOf("safari")!==-1,win:k,ie3d:y,webkit3d:s,gecko3d:p,opera12:w,any3d:!n.L_DISABLE_3D&&(y||s||p)&&!w&&!b,mobile:u,mobileWebkit:u&&o,mobileWebkit3d:u&&s,mobileOpera:u&&n.opera,mobileGecko:u&&l,touch:!!d,msPointer:!!a,pointer:!!v,retina:(n.devicePixelRatio||n.screen.deviceXDPI/n.screen.logicalXDPI)>1}}();r.Point=function(n,t,i){this.x=i?Math.round(n):n;this.y=i?Math.round(t):t};r.Point.prototype={clone:function(){return new r.Point(this.x,this.y)},add:function(n){return this.clone()._add(r.point(n))},_add:function(n){return this.x+=n.x,this.y+=n.y,this},subtract:function(n){return this.clone()._subtract(r.point(n))},_subtract:function(n){return this.x-=n.x,this.y-=n.y,this},divideBy:function(n){return this.clone()._divideBy(n)},_divideBy:function(n){return this.x/=n,this.y/=n,this},multiplyBy:function(n){return this.clone()._multiplyBy(n)},_multiplyBy:function(n){return this.x*=n,this.y*=n,this},scaleBy:function(n){return new r.Point(this.x*n.x,this.y*n.y)},unscaleBy:function(n){return new r.Point(this.x/n.x,this.y/n.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},distanceTo:function(n){n=r.point(n);var t=n.x-this.x,i=n.y-this.y;return Math.sqrt(t*t+i*i)},equals:function(n){return n=r.point(n),n.x===this.x&&n.y===this.y},contains:function(n){return n=r.point(n),Math.abs(n.x)<=Math.abs(this.x)&&Math.abs(n.y)<=Math.abs(this.y)},toString:function(){return"Point("+r.Util.formatNum(this.x)+", "+r.Util.formatNum(this.y)+")"}};r.point=function(n,t,u){return n instanceof r.Point?n:r.Util.isArray(n)?new r.Point(n[0],n[1]):n===i||n===null?n:typeof n=="object"&&"x"in n&&"y"in n?new r.Point(n.x,n.y):new r.Point(n,t,u)};r.Bounds=function(n,t){var r,i,u;if(n)for(r=t?[n,t]:n,i=0,u=r.length;i<u;i++)this.extend(r[i])};r.Bounds.prototype={extend:function(n){return n=r.point(n),this.min||this.max?(this.min.x=Math.min(n.x,this.min.x),this.max.x=Math.max(n.x,this.max.x),this.min.y=Math.min(n.y,this.min.y),this.max.y=Math.max(n.y,this.max.y)):(this.min=n.clone(),this.max=n.clone()),this},getCenter:function(n){return new r.Point((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,n)},getBottomLeft:function(){return new r.Point(this.min.x,this.max.y)},getTopRight:function(){return new r.Point(this.max.x,this.min.y)},getSize:function(){return this.max.subtract(this.min)},contains:function(n){var t,i;return n=typeof n[0]=="number"||n instanceof r.Point?r.point(n):r.bounds(n),n instanceof r.Bounds?(t=n.min,i=n.max):t=i=n,t.x>=this.min.x&&i.x<=this.max.x&&t.y>=this.min.y&&i.y<=this.max.y},intersects:function(n){n=r.bounds(n);var t=this.min,i=this.max,u=n.min,f=n.max,e=f.x>=t.x&&u.x<=i.x,o=f.y>=t.y&&u.y<=i.y;return e&&o},overlaps:function(n){n=r.bounds(n);var t=this.min,i=this.max,u=n.min,f=n.max,e=f.x>t.x&&u.x<i.x,o=f.y>t.y&&u.y<i.y;return e&&o},isValid:function(){return!!(this.min&&this.max)}};r.bounds=function(n,t){return!n||n instanceof r.Bounds?n:new r.Bounds(n,t)};r.Transformation=function(n,t,i,r){this._a=n;this._b=t;this._c=i;this._d=r};r.Transformation.prototype={transform:function(n,t){return this._transform(n.clone(),t)},_transform:function(n,t){return t=t||1,n.x=t*(this._a*n.x+this._b),n.y=t*(this._c*n.y+this._d),n},untransform:function(n,t){return t=t||1,new r.Point((n.x/t-this._b)/this._a,(n.y/t-this._d)/this._c)}};r.DomUtil={get:function(n){return typeof n=="string"?t.getElementById(n):n},getStyle:function(n,i){var r=n.style[i]||n.currentStyle&&n.currentStyle[i],u;return(!r||r==="auto")&&t.defaultView&&(u=t.defaultView.getComputedStyle(n,null),r=u?u[i]:null),r==="auto"?null:r},create:function(n,i,r){var u=t.createElement(n);return u.className=i||"",r&&r.appendChild(u),u},remove:function(n){var t=n.parentNode;t&&t.removeChild(n)},empty:function(n){while(n.firstChild)n.removeChild(n.firstChild)},toFront:function(n){n.parentNode.appendChild(n)},toBack:function(n){var t=n.parentNode;t.insertBefore(n,t.firstChild)},hasClass:function(n,t){if(n.classList!==i)return n.classList.contains(t);var u=r.DomUtil.getClass(n);return u.length>0&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(u)},addClass:function(n,t){var f,u,o,e;if(n.classList!==i)for(f=r.Util.splitWords(t),u=0,o=f.length;u<o;u++)n.classList.add(f[u]);else r.DomUtil.hasClass(n,t)||(e=r.DomUtil.getClass(n),r.DomUtil.setClass(n,(e?e+" ":"")+t))},removeClass:function(n,t){n.classList!==i?n.classList.remove(t):r.DomUtil.setClass(n,r.Util.trim((" "+r.DomUtil.getClass(n)+" ").replace(" "+t+" "," ")))},setClass:function(n,t){n.className.baseVal===i?n.className=t:n.className.baseVal=t},getClass:function(n){return n.className.baseVal===i?n.className:n.className.baseVal},setOpacity:function(n,t){"opacity"in n.style?n.style.opacity=t:"filter"in n.style&&r.DomUtil._setOpacityIE(n,t)},_setOpacityIE:function(n,t){var i=!1,r="DXImageTransform.Microsoft.Alpha";try{i=n.filters.item(r)}catch(u){if(t===1)return}t=Math.round(t*100);i?(i.Enabled=t!==100,i.Opacity=t):n.style.filter+=" progid:"+r+"(opacity="+t+")"},testProp:function(n){for(var r=t.documentElement.style,i=0;i<n.length;i++)if(n[i]in r)return n[i];return!1},setTransform:function(n,t,i){var u=t||new r.Point(0,0);n.style[r.DomUtil.TRANSFORM]=(r.Browser.ie3d?"translate("+u.x+"px,"+u.y+"px)":"translate3d("+u.x+"px,"+u.y+"px,0)")+(i?" scale("+i+")":"")},setPosition:function(n,t){n._leaflet_pos=t;r.Browser.any3d?r.DomUtil.setTransform(n,t):(n.style.left=t.x+"px",n.style.top=t.y+"px")},getPosition:function(n){return n._leaflet_pos||new r.Point(0,0)}},function(){var u,i;r.DomUtil.TRANSFORM=r.DomUtil.testProp(["transform","WebkitTransform","OTransform","MozTransform","msTransform"]);u=r.DomUtil.TRANSITION=r.DomUtil.testProp(["webkitTransition","transition","OTransition","MozTransition","msTransition"]);r.DomUtil.TRANSITION_END=u==="webkitTransition"||u==="OTransition"?u+"End":"transitionend";"onselectstart"in t?(r.DomUtil.disableTextSelection=function(){r.DomEvent.on(n,"selectstart",r.DomEvent.preventDefault)},r.DomUtil.enableTextSelection=function(){r.DomEvent.off(n,"selectstart",r.DomEvent.preventDefault)}):(i=r.DomUtil.testProp(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]),r.DomUtil.disableTextSelection=function(){if(i){var n=t.documentElement.style;this._userSelect=n[i];n[i]="none"}},r.DomUtil.enableTextSelection=function(){i&&(t.documentElement.style[i]=this._userSelect,delete this._userSelect)});r.DomUtil.disableImageDrag=function(){r.DomEvent.on(n,"dragstart",r.DomEvent.preventDefault)};r.DomUtil.enableImageDrag=function(){r.DomEvent.off(n,"dragstart",r.DomEvent.preventDefault)};r.DomUtil.preventOutline=function(t){while(t.tabIndex===-1)t=t.parentNode;if(t&&t.style){r.DomUtil.restoreOutline();this._outlineElement=t;this._outlineStyle=t.style.outline;t.style.outline="none";r.DomEvent.on(n,"keydown",r.DomUtil.restoreOutline,this)}};r.DomUtil.restoreOutline=function(){this._outlineElement&&(this._outlineElement.style.outline=this._outlineStyle,delete this._outlineElement,delete this._outlineStyle,r.DomEvent.off(n,"keydown",r.DomUtil.restoreOutline,this))}}();r.LatLng=function(n,t,r){if(isNaN(n)||isNaN(t))throw new Error("Invalid LatLng object: ("+n+", "+t+")");this.lat=+n;this.lng=+t;r!==i&&(this.alt=+r)};r.LatLng.prototype={equals:function(n,t){if(!n)return!1;n=r.latLng(n);var u=Math.max(Math.abs(this.lat-n.lat),Math.abs(this.lng-n.lng));return u<=(t===i?1e-9:t)},toString:function(n){return"LatLng("+r.Util.formatNum(this.lat,n)+", "+r.Util.formatNum(this.lng,n)+")"},distanceTo:function(n){return r.CRS.Earth.distance(this,r.latLng(n))},wrap:function(){return r.CRS.Earth.wrapLatLng(this)},toBounds:function(n){var t=180*n/40075017,i=t/Math.cos(Math.PI/180*this.lat);return r.latLngBounds([this.lat-t,this.lng-i],[this.lat+t,this.lng+i])},clone:function(){return new r.LatLng(this.lat,this.lng,this.alt)}};r.latLng=function(n,t,u){return n instanceof r.LatLng?n:r.Util.isArray(n)&&typeof n[0]!="object"?n.length===3?new r.LatLng(n[0],n[1],n[2]):n.length===2?new r.LatLng(n[0],n[1]):null:n===i||n===null?n:typeof n=="object"&&"lat"in n?new r.LatLng(n.lat,"lng"in n?n.lng:n.lon,n.alt):t===i?null:new r.LatLng(n,t,u)};r.LatLngBounds=function(n,t){var r,i,u;if(n)for(r=t?[n,t]:n,i=0,u=r.length;i<u;i++)this.extend(r[i])};r.LatLngBounds.prototype={extend:function(n){var u=this._southWest,f=this._northEast,t,i;if(n instanceof r.LatLng)t=n,i=n;else if(n instanceof r.LatLngBounds){if(t=n._southWest,i=n._northEast,!t||!i)return this}else return n?this.extend(r.latLng(n)||r.latLngBounds(n)):this;return u||f?(u.lat=Math.min(t.lat,u.lat),u.lng=Math.min(t.lng,u.lng),f.lat=Math.max(i.lat,f.lat),f.lng=Math.max(i.lng,f.lng)):(this._southWest=new r.LatLng(t.lat,t.lng),this._northEast=new r.LatLng(i.lat,i.lng)),this},pad:function(n){var t=this._southWest,i=this._northEast,u=Math.abs(t.lat-i.lat)*n,f=Math.abs(t.lng-i.lng)*n;return new r.LatLngBounds(new r.LatLng(t.lat-u,t.lng-f),new r.LatLng(i.lat+u,i.lng+f))},getCenter:function(){return new r.LatLng((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new r.LatLng(this.getNorth(),this.getWest())},getSouthEast:function(){return new r.LatLng(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(n){n=typeof n[0]=="number"||n instanceof r.LatLng?r.latLng(n):r.latLngBounds(n);var u=this._southWest,f=this._northEast,t,i;return n instanceof r.LatLngBounds?(t=n.getSouthWest(),i=n.getNorthEast()):t=i=n,t.lat>=u.lat&&i.lat<=f.lat&&t.lng>=u.lng&&i.lng<=f.lng},intersects:function(n){n=r.latLngBounds(n);var t=this._southWest,i=this._northEast,u=n.getSouthWest(),f=n.getNorthEast(),e=f.lat>=t.lat&&u.lat<=i.lat,o=f.lng>=t.lng&&u.lng<=i.lng;return e&&o},overlaps:function(n){n=r.latLngBounds(n);var t=this._southWest,i=this._northEast,u=n.getSouthWest(),f=n.getNorthEast(),e=f.lat>t.lat&&u.lat<i.lat,o=f.lng>t.lng&&u.lng<i.lng;return e&&o},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(n){return n?(n=r.latLngBounds(n),this._southWest.equals(n.getSouthWest())&&this._northEast.equals(n.getNorthEast())):!1},isValid:function(){return!!(this._southWest&&this._northEast)}};r.latLngBounds=function(n,t){return n instanceof r.LatLngBounds?n:new r.LatLngBounds(n,t)};r.Projection={};r.Projection.LonLat={project:function(n){return new r.Point(n.lng,n.lat)},unproject:function(n){return new r.LatLng(n.y,n.x)},bounds:r.bounds([-180,-90],[180,90])};r.Projection.SphericalMercator={R:6378137,MAX_LATITUDE:85.0511287798,project:function(n){var t=Math.PI/180,i=this.MAX_LATITUDE,f=Math.max(Math.min(i,n.lat),-i),u=Math.sin(f*t);return new r.Point(this.R*n.lng*t,this.R*Math.log((1+u)/(1-u))/2)},unproject:function(n){var t=180/Math.PI;return new r.LatLng((2*Math.atan(Math.exp(n.y/this.R))-Math.PI/2)*t,n.x*t/this.R)},bounds:function(){var n=6378137*Math.PI;return r.bounds([-n,-n],[n,n])}()};r.CRS={latLngToPoint:function(n,t){var i=this.projection.project(n),r=this.scale(t);return this.transformation._transform(i,r)},pointToLatLng:function(n,t){var i=this.scale(t),r=this.transformation.untransform(n,i);return this.projection.unproject(r)},project:function(n){return this.projection.project(n)},unproject:function(n){return this.projection.unproject(n)},scale:function(n){return 256*Math.pow(2,n)},zoom:function(n){return Math.log(n/256)/Math.LN2},getProjectedBounds:function(n){if(this.infinite)return null;var t=this.projection.bounds,i=this.scale(n),u=this.transformation.transform(t.min,i),f=this.transformation.transform(t.max,i);return r.bounds(u,f)},infinite:!1,wrapLatLng:function(n){var t=this.wrapLng?r.Util.wrapNum(n.lng,this.wrapLng,!0):n.lng,i=this.wrapLat?r.Util.wrapNum(n.lat,this.wrapLat,!0):n.lat,u=n.alt;return r.latLng(i,t,u)}};r.CRS.Simple=r.extend({},r.CRS,{projection:r.Projection.LonLat,transformation:new r.Transformation(1,0,-1,0),scale:function(n){return Math.pow(2,n)},zoom:function(n){return Math.log(n)/Math.LN2},distance:function(n,t){var i=t.lng-n.lng,r=t.lat-n.lat;return Math.sqrt(i*i+r*r)},infinite:!0});r.CRS.Earth=r.extend({},r.CRS,{wrapLng:[-180,180],R:6371e3,distance:function(n,t){var i=Math.PI/180,r=n.lat*i,u=t.lat*i,f=Math.sin(r)*Math.sin(u)+Math.cos(r)*Math.cos(u)*Math.cos((t.lng-n.lng)*i);return this.R*Math.acos(Math.min(f,1))}});r.CRS.EPSG3857=r.extend({},r.CRS.Earth,{code:"EPSG:3857",projection:r.Projection.SphericalMercator,transformation:function(){var n=.5/(Math.PI*r.Projection.SphericalMercator.R);return new r.Transformation(n,.5,-n,.5)}()});r.CRS.EPSG900913=r.extend({},r.CRS.EPSG3857,{code:"EPSG:900913"});r.CRS.EPSG4326=r.extend({},r.CRS.Earth,{code:"EPSG:4326",projection:r.Projection.LonLat,transformation:new r.Transformation(1/180,1,-1/180,.5)});r.Map=r.Evented.extend({options:{crs:r.CRS.EPSG3857,center:i,zoom:i,minZoom:i,maxZoom:i,layers:[],maxBounds:i,renderer:i,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(n,t){if(t=r.setOptions(this,t),this._initContainer(n),this._initLayout(),this._onResize=r.bind(this._onResize,this),this._initEvents(),t.maxBounds&&this.setMaxBounds(t.maxBounds),t.zoom!==i&&(this._zoom=this._limitZoom(t.zoom)),t.center&&t.zoom!==i&&this.setView(r.latLng(t.center),t.zoom,{reset:!0}),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._sizeChanged=!0,this.callInitHooks(),this._zoomAnimated=r.DomUtil.TRANSITION&&r.Browser.any3d&&!r.Browser.mobileOpera&&this.options.zoomAnimation,this._zoomAnimated){this._createAnimProxy();r.DomEvent.on(this._proxy,r.DomUtil.TRANSITION_END,this._catchTransitionEnd,this)}this._addLayers(this.options.layers)},setView:function(n,t,u){if(t=t===i?this._zoom:this._limitZoom(t),n=this._limitCenter(r.latLng(n),t,this.options.maxBounds),u=u||{},this._stop(),this._loaded&&!u.reset&&u!==!0){u.animate!==i&&(u.zoom=r.extend({animate:u.animate},u.zoom),u.pan=r.extend({animate:u.animate,duration:u.duration},u.pan));var f=this._zoom!==t?this._tryAnimatedZoom&&this._tryAnimatedZoom(n,t,u.zoom):this._tryAnimatedPan(n,u.pan);if(f)return clearTimeout(this._sizeTimer),this}return this._resetView(n,t),this},setZoom:function(n,t){return this._loaded?this.setView(this.getCenter(),n,{zoom:t}):(this._zoom=n,this)},zoomIn:function(n,t){return n=n||(r.Browser.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom+n,t)},zoomOut:function(n,t){return n=n||(r.Browser.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom-n,t)},setZoomAround:function(n,t,i){var f=this.getZoomScale(t),u=this.getSize().divideBy(2),e=n instanceof r.Point?n:this.latLngToContainerPoint(n),o=e.subtract(u).multiplyBy(1-1/f),s=this.containerPointToLatLng(u.add(o));return this.setView(s,t,{zoom:i})},_getBoundsCenterZoom:function(n,t){t=t||{};n=n.getBounds?n.getBounds():r.latLngBounds(n);var u=r.point(t.paddingTopLeft||t.padding||[0,0]),f=r.point(t.paddingBottomRight||t.padding||[0,0]),i=this.getBoundsZoom(n,!1,u.add(f));i=typeof t.maxZoom=="number"?Math.min(t.maxZoom,i):i;var e=f.subtract(u).divideBy(2),o=this.project(n.getSouthWest(),i),s=this.project(n.getNorthEast(),i),h=this.unproject(o.add(s).divideBy(2).add(e),i);return{center:h,zoom:i}},fitBounds:function(n,t){if(n=r.latLngBounds(n),!n.isValid())throw new Error("Bounds are not valid.");var i=this._getBoundsCenterZoom(n,t);return this.setView(i.center,i.zoom,t)},fitWorld:function(n){return this.fitBounds([[-90,-180],[90,180]],n)},panTo:function(n,t){return this.setView(n,this._zoom,{pan:t})},panBy:function(n,t){if(n=r.point(n).round(),t=t||{},!n.x&&!n.y)return this.fire("moveend");if(t.animate!==!0&&!this.getSize().contains(n))return this._resetView(this.unproject(this.project(this.getCenter()).add(n)),this.getZoom()),this;if(!this._panAnim){this._panAnim=new r.PosAnimation;this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)}if(t.noMoveStart||this.fire("movestart"),t.animate!==!1){r.DomUtil.addClass(this._mapPane,"leaflet-pan-anim");var i=this._getMapPanePos().subtract(n).round();this._panAnim.run(this._mapPane,i,t.duration||.25,t.easeLinearity)}else this._rawPanBy(n),this.fire("move").fire("moveend");return this},flyTo:function(n,t,u){function w(n){var r=n?-1:1,u=n?v:f,e=v*v-f*f+r*c*c*h*h,o=2*u*c*h,t=e/o,i=Math.sqrt(t*t+1)-t;return i<1e-9?-18:Math.log(i)}function b(n){return(Math.exp(n)-Math.exp(-n))/2}function l(n){return(Math.exp(n)+Math.exp(-n))/2}function g(n){return b(n)/l(n)}function nt(n){return f*(l(e)/l(e+o*n))}function tt(n){return f*(l(e)*g(e+o*n)-b(e))/c}function it(n){return 1-Math.pow(1-n,1.5)}function d(){var i=(Date.now()-rt)/ut,u=it(i)*k;i<=1?(this._flyToFrame=r.Util.requestAnimFrame(d,this),this._move(this.unproject(a.add(y.subtract(a).multiplyBy(tt(u)/h)),s),this.getScaleZoom(f/nt(u),s),{flyTo:!0})):this._move(n,t)._moveEnd(!0)}var e;if(u=u||{},u.animate===!1||!r.Browser.any3d)return this.setView(n,t,u);this._stop();var a=this.project(this.getCenter()),y=this.project(n),p=this.getSize(),s=this._zoom;n=r.latLng(n);t=t===i?s:t;var f=Math.max(p.x,p.y),v=f*this.getZoomScale(s,t),h=y.distanceTo(a)||1,o=1.42,c=o*o;e=w(0);var rt=Date.now(),k=(w(1)-e)/o,ut=u.duration?1e3*u.duration:1e3*k*.8;return this._moveStart(!0),d.call(this),this},flyToBounds:function(n,t){var i=this._getBoundsCenterZoom(n,t);return this.flyTo(i.center,i.zoom,t)},setMaxBounds:function(n){if(n=r.latLngBounds(n),n.isValid())this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds);else return this.options.maxBounds=null,this.off("moveend",this._panInsideMaxBounds);this.options.maxBounds=n;this._loaded&&this._panInsideMaxBounds();return this.on("moveend",this._panInsideMaxBounds)},setMinZoom:function(n){return(this.options.minZoom=n,this._loaded&&this.getZoom()<this.options.minZoom)?this.setZoom(n):this},setMaxZoom:function(n){return(this.options.maxZoom=n,this._loaded&&this.getZoom()>this.options.maxZoom)?this.setZoom(n):this},panInsideBounds:function(n,t){this._enforcingBounds=!0;var i=this.getCenter(),u=this._limitCenter(i,this._zoom,r.latLngBounds(n));return i.equals(u)||this.panTo(u,t),this._enforcingBounds=!1,this},invalidateSize:function(n){var i;if(!this._loaded)return this;n=r.extend({animate:!1,pan:!0},n===!0?{animate:!0}:n);i=this.getSize();this._sizeChanged=!0;this._lastCenter=null;var u=this.getSize(),f=i.divideBy(2).round(),e=u.divideBy(2).round(),t=f.subtract(e);return!t.x&&!t.y?this:(n.animate&&n.pan?this.panBy(t):(n.pan&&this._rawPanBy(t),this.fire("move"),n.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(r.bind(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:i,newSize:u}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(n){if(n=this._locateOptions=r.extend({timeout:1e4,watch:!1},n),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var t=r.bind(this._handleGeolocationResponse,this),i=r.bind(this._handleGeolocationError,this);return n.watch?this._locationWatchId=navigator.geolocation.watchPosition(t,i,n):navigator.geolocation.getCurrentPosition(t,i,n),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(n){var t=n.code,i=n.message||(t===1?"permission denied":t===2?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld();this.fire("locationerror",{code:t,message:"Geolocation error: "+i+"."})},_handleGeolocationResponse:function(n){var s=n.coords.latitude,h=n.coords.longitude,i=new r.LatLng(s,h),o=i.toBounds(n.coords.accuracy),u=this._locateOptions,f,e,t;u.setView&&(f=this.getBoundsZoom(o),this.setView(i,u.maxZoom?Math.min(f,u.maxZoom):f));e={latlng:i,bounds:o,timestamp:n.timestamp};for(t in n.coords)typeof n.coords[t]=="number"&&(e[t]=n.coords[t]);this.fire("locationfound",e)},addHandler:function(n,t){if(!t)return this;var i=this[n]=new t(this);return this._handlers.push(i),this.options[n]&&i.enable(),this},remove:function(){if(this._initEvents(!0),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id;delete this._containerId}catch(t){this._container._leaflet_id=i;this._containerId=i}r.DomUtil.remove(this._mapPane);this._clearControlPos&&this._clearControlPos();this._clearHandlers();this._loaded&&this.fire("unload");for(var n in this._layers)this._layers[n].remove();return this},createPane:function(n,t){var u="leaflet-pane"+(n?" leaflet-"+n.replace("Pane","")+"-pane":""),i=r.DomUtil.create("div",u,t||this._mapPane);return n&&(this._panes[n]=i),i},getCenter:function(){return(this._checkIfLoaded(),this._lastCenter&&!this._moved())?this._lastCenter:this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var n=this.getPixelBounds(),t=this.unproject(n.getBottomLeft()),i=this.unproject(n.getTopRight());return new r.LatLngBounds(t,i)},getMinZoom:function(){return this.options.minZoom===i?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===i?this._layersMaxZoom===i?Infinity:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(n,t,i){n=r.latLngBounds(n);i=r.point(i||[0,0]);var u=this.getZoom()||0,s=this.getMinZoom(),h=this.getMaxZoom(),c=n.getNorthWest(),l=n.getSouthEast(),e=this.getSize().subtract(i),o=this.project(l,u).subtract(this.project(c,u)),f=r.Browser.any3d?this.options.zoomSnap:1,a=Math.min(e.x/o.x,e.y/o.y);return u=this.getScaleZoom(a,u),f&&(u=Math.round(u/(f/100))*(f/100),u=t?Math.ceil(u/f)*f:Math.floor(u/f)*f),Math.max(s,Math.min(h,u))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new r.Point(this._container.clientWidth,this._container.clientHeight),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(n,t){var i=this._getTopLeftPoint(n,t);return new r.Bounds(i,i.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(n){return this.options.crs.getProjectedBounds(n===i?this.getZoom():n)},getPane:function(n){return typeof n=="string"?this._panes[n]:n},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(n,t){var r=this.options.crs;return t=t===i?this._zoom:t,r.scale(n)/r.scale(t)},getScaleZoom:function(n,t){var u=this.options.crs,r;return t=t===i?this._zoom:t,r=u.zoom(n*u.scale(t)),isNaN(r)?Infinity:r},project:function(n,t){return t=t===i?this._zoom:t,this.options.crs.latLngToPoint(r.latLng(n),t)},unproject:function(n,t){return t=t===i?this._zoom:t,this.options.crs.pointToLatLng(r.point(n),t)},layerPointToLatLng:function(n){var t=r.point(n).add(this.getPixelOrigin());return this.unproject(t)},latLngToLayerPoint:function(n){var t=this.project(r.latLng(n))._round();return t._subtract(this.getPixelOrigin())},wrapLatLng:function(n){return this.options.crs.wrapLatLng(r.latLng(n))},distance:function(n,t){return this.options.crs.distance(r.latLng(n),r.latLng(t))},containerPointToLayerPoint:function(n){return r.point(n).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(n){return r.point(n).add(this._getMapPanePos())},containerPointToLatLng:function(n){var t=this.containerPointToLayerPoint(r.point(n));return this.layerPointToLatLng(t)},latLngToContainerPoint:function(n){return this.layerPointToContainerPoint(this.latLngToLayerPoint(r.latLng(n)))},mouseEventToContainerPoint:function(n){return r.DomEvent.getMousePosition(n,this._container)},mouseEventToLayerPoint:function(n){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(n))},mouseEventToLatLng:function(n){return this.layerPointToLatLng(this.mouseEventToLayerPoint(n))},_initContainer:function(n){var t=this._container=r.DomUtil.get(n);if(t){if(t._leaflet_id)throw new Error("Map container is already initialized.");}else throw new Error("Map container not found.");r.DomEvent.addListener(t,"scroll",this._onScroll,this);this._containerId=r.Util.stamp(t)},_initLayout:function(){var t=this._container,n;this._fadeAnimated=this.options.fadeAnimation&&r.Browser.any3d;r.DomUtil.addClass(t,"leaflet-container"+(r.Browser.touch?" leaflet-touch":"")+(r.Browser.retina?" leaflet-retina":"")+(r.Browser.ielt9?" leaflet-oldie":"")+(r.Browser.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));n=r.DomUtil.getStyle(t,"position");n!=="absolute"&&n!=="relative"&&n!=="fixed"&&(t.style.position="relative");this._initPanes();this._initControlPos&&this._initControlPos()},_initPanes:function(){var n=this._panes={};this._paneRenderers={};this._mapPane=this.createPane("mapPane",this._container);r.DomUtil.setPosition(this._mapPane,new r.Point(0,0));this.createPane("tilePane");this.createPane("shadowPane");this.createPane("overlayPane");this.createPane("markerPane");this.createPane("tooltipPane");this.createPane("popupPane");this.options.markerZoomAnimation||(r.DomUtil.addClass(n.markerPane,"leaflet-zoom-hide"),r.DomUtil.addClass(n.shadowPane,"leaflet-zoom-hide"))},_resetView:function(n,t){var u,i;r.DomUtil.setPosition(this._mapPane,new r.Point(0,0));u=!this._loaded;this._loaded=!0;t=this._limitZoom(t);this.fire("viewprereset");i=this._zoom!==t;this._moveStart(i)._move(n,t)._moveEnd(i);this.fire("viewreset");u&&this.fire("load")},_moveStart:function(n){return n&&this.fire("zoomstart"),this.fire("movestart")},_move:function(n,t,r){t===i&&(t=this._zoom);var u=this._zoom!==t;return this._zoom=t,this._lastCenter=n,this._pixelOrigin=this._getNewPixelOrigin(n),(u||r&&r.pinch)&&this.fire("zoom",r),this.fire("move",r)},_moveEnd:function(n){return n&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return r.Util.cancelAnimFrame(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(n){r.DomUtil.setPosition(this._mapPane,this._getMapPanePos().subtract(n))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.");},_initEvents:function(t){if(r.DomEvent){this._targets={};this._targets[r.stamp(this._container)]=this;var i=t?"off":"on";r.DomEvent[i](this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress",this._handleDOMEvent,this);this.options.trackResize&&r.DomEvent[i](n,"resize",this._onResize,this);r.Browser.any3d&&this.options.transform3DLimit&&this[i]("moveend",this._onMoveEnd)}},_onResize:function(){r.Util.cancelAnimFrame(this._resizeRequest);this._resizeRequest=r.Util.requestAnimFrame(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0;this._container.scrollLeft=0},_onMoveEnd:function(){var n=this._getMapPanePos();Math.max(Math.abs(n.x),Math.abs(n.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(n,t){for(var f=[],u,e=t==="mouseout"||t==="mouseover",i=n.target||n.srcElement,o=!1;i;){if(u=this._targets[r.stamp(i)],u&&(t==="click"||t==="preclick")&&!n._simulated&&this._draggableMoved(u)){o=!0;break}if(u&&u.listens(t,!0)){if(e&&!r.DomEvent._isExternalTarget(i,n))break;if(f.push(u),e)break}if(i===this._container)break;i=i.parentNode}return f.length||o||e||!r.DomEvent._isExternalTarget(i,n)||(f=[this]),f},_handleDOMEvent:function(n){if(this._loaded&&!r.DomEvent._skipped(n)){var t=n.type==="keypress"&&n.keyCode===13?"click":n.type;t==="mousedown"&&r.DomUtil.preventOutline(n.target||n.srcElement);this._fireDOMEvent(n,t)}},_fireDOMEvent:function(n,t,i){var o,e,u,s,f;if((n.type==="click"&&(o=r.Util.extend({},n),o.type="preclick",this._fireDOMEvent(o,o.type,i)),!n._stopped)&&(i=(i||[]).concat(this._findEventTargets(n,t)),i.length))for(e=i[0],t==="contextmenu"&&e.listens(t,!0)&&r.DomEvent.preventDefault(n),u={originalEvent:n},n.type!=="keypress"&&(s=e instanceof r.Marker,u.containerPoint=s?this.latLngToContainerPoint(e.getLatLng()):this.mouseEventToContainerPoint(n),u.layerPoint=this.containerPointToLayerPoint(u.containerPoint),u.latlng=s?e.getLatLng():this.layerPointToLatLng(u.layerPoint)),f=0;f<i.length;f++)if(i[f].fire(t,u,!0),u.originalEvent._stopped||i[f].options.nonBubblingEvents&&r.Util.indexOf(i[f].options.nonBubblingEvents,t)!==-1)return},_draggableMoved:function(n){return n=n.dragging&&n.dragging.enabled()?n:this,n.dragging&&n.dragging.moved()||this.boxZoom&&this.boxZoom.moved()},_clearHandlers:function(){for(var n=0,t=this._handlers.length;n<t;n++)this._handlers[n].disable()},whenReady:function(n,t){if(this._loaded)n.call(t||this,{target:this});else this.on("load",n,t);return this},_getMapPanePos:function(){return r.DomUtil.getPosition(this._mapPane)||new r.Point(0,0)},_moved:function(){var n=this._getMapPanePos();return n&&!n.equals([0,0])},_getTopLeftPoint:function(n,t){var r=n&&t!==i?this._getNewPixelOrigin(n,t):this.getPixelOrigin();return r.subtract(this._getMapPanePos())},_getNewPixelOrigin:function(n,t){var i=this.getSize()._divideBy(2);return this.project(n,t)._subtract(i)._add(this._getMapPanePos())._round()},_latLngToNewLayerPoint:function(n,t,i){var r=this._getNewPixelOrigin(i,t);return this.project(n,t)._subtract(r)},_latLngBoundsToNewLayerBounds:function(n,t,i){var u=this._getNewPixelOrigin(i,t);return r.bounds([this.project(n.getSouthWest(),t)._subtract(u),this.project(n.getNorthWest(),t)._subtract(u),this.project(n.getSouthEast(),t)._subtract(u),this.project(n.getNorthEast(),t)._subtract(u)])},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(n){return this.latLngToLayerPoint(n).subtract(this._getCenterLayerPoint())},_limitCenter:function(n,t,i){if(!i)return n;var u=this.project(n,t),f=this.getSize().divideBy(2),o=new r.Bounds(u.subtract(f),u.add(f)),e=this._getBoundsOffset(o,i,t);return e.round().equals([0,0])?n:this.unproject(u.add(e),t)},_limitOffset:function(n,t){if(!t)return n;var i=this.getPixelBounds(),u=new r.Bounds(i.min.add(n),i.max.add(n));return n.add(this._getBoundsOffset(u,t))},_getBoundsOffset:function(n,t,i){var u=r.bounds(this.project(t.getNorthEast(),i),this.project(t.getSouthWest(),i)),f=u.min.subtract(n.min),e=u.max.subtract(n.max),o=this._rebound(f.x,-e.x),s=this._rebound(f.y,-e.y);return new r.Point(o,s)},_rebound:function(n,t){return n+t>0?Math.round(n-t)/2:Math.max(0,Math.ceil(n))-Math.max(0,Math.floor(t))},_limitZoom:function(n){var i=this.getMinZoom(),u=this.getMaxZoom(),t=r.Browser.any3d?this.options.zoomSnap:1;return t&&(n=Math.round(n/t)*t),Math.max(i,Math.min(u,n))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){r.DomUtil.removeClass(this._mapPane,"leaflet-pan-anim");this.fire("moveend")},_tryAnimatedPan:function(n,t){var i=this._getCenterOffset(n)._floor();return(t&&t.animate)!==!0&&!this.getSize().contains(i)?!1:(this.panBy(i,t),!0)},_createAnimProxy:function(){var n=this._proxy=r.DomUtil.create("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(n);this.on("zoomanim",function(t){var i=r.DomUtil.TRANSFORM,u=n.style[i];r.DomUtil.setTransform(n,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1));u===n.style[i]&&this._animatingZoom&&this._onZoomTransitionEnd()},this);this.on("load moveend",function(){var i=this.getCenter(),t=this.getZoom();r.DomUtil.setTransform(n,this.project(i,t),this.getZoomScale(t,1))},this)},_catchTransitionEnd:function(n){this._animatingZoom&&n.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(n,t,i){if(this._animatingZoom)return!0;if(i=i||{},!this._zoomAnimated||i.animate===!1||this._nothingToAnimate()||Math.abs(t-this._zoom)>this.options.zoomAnimationThreshold)return!1;var u=this.getZoomScale(t),f=this._getCenterOffset(n)._divideBy(1-1/u);return i.animate!==!0&&!this.getSize().contains(f)?!1:(r.Util.requestAnimFrame(function(){this._moveStart(!0)._animateZoom(n,t,!0)},this),!0)},_animateZoom:function(n,t,i,u){i&&(this._animatingZoom=!0,this._animateToCenter=n,this._animateToZoom=t,r.DomUtil.addClass(this._mapPane,"leaflet-zoom-anim"));this.fire("zoomanim",{center:n,zoom:t,noUpdate:u});setTimeout(r.bind(this._onZoomTransitionEnd,this),250)},_onZoomTransitionEnd:function(){this._animatingZoom&&(r.DomUtil.removeClass(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom),r.Util.requestAnimFrame(function(){this._moveEnd(!0)},this))}});r.map=function(n,t){return new r.Map(n,t)};r.Layer=r.Evented.extend({options:{pane:"overlayPane",nonBubblingEvents:[],attribution:null},addTo:function(n){return n.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(n){return n&&n.removeLayer(this),this},getPane:function(n){return this._map.getPane(n?this.options[n]||n:this.options.pane)},addInteractiveTarget:function(n){return this._map._targets[r.stamp(n)]=this,this},removeInteractiveTarget:function(n){return delete this._map._targets[r.stamp(n)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(n){var t=n.target,i;if(t.hasLayer(this)){if(this._map=t,this._zoomAnimated=t._zoomAnimated,this.getEvents){i=this.getEvents();t.on(i,this);this.once("remove",function(){t.off(i,this)},this)}this.onAdd(t);this.getAttribution&&this._map.attributionControl&&this._map.attributionControl.addAttribution(this.getAttribution());this.fire("add");t.fire("layeradd",{layer:this})}}});r.Map.include({addLayer:function(n){var t=r.stamp(n);return this._layers[t]?this:(this._layers[t]=n,n._mapToAdd=this,n.beforeAdd&&n.beforeAdd(this),this.whenReady(n._layerAdd,n),this)},removeLayer:function(n){var t=r.stamp(n);if(!this._layers[t])return this;if(this._loaded)n.onRemove(this);return n.getAttribution&&this.attributionControl&&this.attributionControl.removeAttribution(n.getAttribution()),delete this._layers[t],this._loaded&&(this.fire("layerremove",{layer:n}),n.fire("remove")),n._map=n._mapToAdd=null,this},hasLayer:function(n){return!!n&&r.stamp(n)in this._layers},eachLayer:function(n,t){for(var i in this._layers)n.call(t,this._layers[i]);return this},_addLayers:function(n){n=n?r.Util.isArray(n)?n:[n]:[];for(var t=0,i=n.length;t<i;t++)this.addLayer(n[t])},_addZoomLimit:function(n){(isNaN(n.options.maxZoom)||!isNaN(n.options.minZoom))&&(this._zoomBoundLayers[r.stamp(n)]=n,this._updateZoomLevels())},_removeZoomLimit:function(n){var t=r.stamp(n);this._zoomBoundLayers[t]&&(delete this._zoomBoundLayers[t],this._updateZoomLevels())},_updateZoomLevels:function(){var n=Infinity,t=-Infinity,f=this._getZoomSpan(),u,r;for(u in this._zoomBoundLayers)r=this._zoomBoundLayers[u].options,n=r.minZoom===i?n:Math.min(n,r.minZoom),t=r.maxZoom===i?t:Math.max(t,r.maxZoom);this._layersMaxZoom=t===-Infinity?i:t;this._layersMinZoom=n===Infinity?i:n;f!==this._getZoomSpan()&&this.fire("zoomlevelschange");this.options.maxZoom===i&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom);this.options.minZoom===i&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});f="_leaflet_events";r.DomEvent={on:function(n,t,i,u){var e,f,o;if(typeof t=="object")for(e in t)this._on(n,e,t[e],i);else for(t=r.Util.splitWords(t),f=0,o=t.length;f<o;f++)this._on(n,t[f],i,u);return this},off:function(n,t,i,u){var e,f,o;if(typeof t=="object")for(e in t)this._off(n,e,t[e],i);else for(t=r.Util.splitWords(t),f=0,o=t.length;f<o;f++)this._off(n,t[f],i,u);return this},_on:function(t,i,u,e){var s=i+r.stamp(u)+(e?"_"+r.stamp(e):""),o,h;return t[f]&&t[f][s]?this:(o=function(i){return u.call(e||t,i||n.event)},h=o,r.Browser.pointer&&i.indexOf("touch")===0?this.addPointerListener(t,i,o,s):r.Browser.touch&&i==="dblclick"&&this.addDoubleTapListener?this.addDoubleTapListener(t,o,s):"addEventListener"in t?i==="mousewheel"?t.addEventListener("onwheel"in t?"wheel":"mousewheel",o,!1):i==="mouseenter"||i==="mouseleave"?(o=function(i){i=i||n.event;r.DomEvent._isExternalTarget(t,i)&&h(i)},t.addEventListener(i==="mouseenter"?"mouseover":"mouseout",o,!1)):(i==="click"&&r.Browser.android&&(o=function(n){return r.DomEvent._filterClick(n,h)}),t.addEventListener(i,o,!1)):"attachEvent"in t&&t.attachEvent("on"+i,o),t[f]=t[f]||{},t[f][s]=o,this)},_off:function(n,t,i,u){var e=t+r.stamp(i)+(u?"_"+r.stamp(u):""),o=n[f]&&n[f][e];return o?(r.Browser.pointer&&t.indexOf("touch")===0?this.removePointerListener(n,t,e):r.Browser.touch&&t==="dblclick"&&this.removeDoubleTapListener?this.removeDoubleTapListener(n,e):"removeEventListener"in n?t==="mousewheel"?n.removeEventListener("onwheel"in n?"wheel":"mousewheel",o,!1):n.removeEventListener(t==="mouseenter"?"mouseover":t==="mouseleave"?"mouseout":t,o,!1):"detachEvent"in n&&n.detachEvent("on"+t,o),n[f][e]=null,this):this},stopPropagation:function(n){return n.stopPropagation?n.stopPropagation():n.originalEvent?n.originalEvent._stopped=!0:n.cancelBubble=!0,r.DomEvent._skipped(n),this},disableScrollPropagation:function(n){return r.DomEvent.on(n,"mousewheel",r.DomEvent.stopPropagation)},disableClickPropagation:function(n){var t=r.DomEvent.stopPropagation;r.DomEvent.on(n,r.Draggable.START.join(" "),t);return r.DomEvent.on(n,{click:r.DomEvent._fakeStop,dblclick:t})},preventDefault:function(n){return n.preventDefault?n.preventDefault():n.returnValue=!1,this},stop:function(n){return r.DomEvent.preventDefault(n).stopPropagation(n)},getMousePosition:function(n,t){if(!t)return new r.Point(n.clientX,n.clientY);var i=t.getBoundingClientRect();return new r.Point(n.clientX-i.left-t.clientLeft,n.clientY-i.top-t.clientTop)},_wheelPxFactor:r.Browser.win&&r.Browser.chrome?2:r.Browser.gecko?n.devicePixelRatio:1,getWheelDelta:function(n){return r.Browser.edge?n.wheelDeltaY/2:n.deltaY&&n.deltaMode===0?-n.deltaY/r.DomEvent._wheelPxFactor:n.deltaY&&n.deltaMode===1?-n.deltaY*20:n.deltaY&&n.deltaMode===2?-n.deltaY*60:n.deltaX||n.deltaZ?0:n.wheelDelta?(n.wheelDeltaY||n.wheelDelta)/2:n.detail&&Math.abs(n.detail)<32765?-n.detail*20:n.detail?n.detail/-32765*60:0},_skipEvents:{},_fakeStop:function(n){r.DomEvent._skipEvents[n.type]=!0},_skipped:function(n){var t=this._skipEvents[n.type];return this._skipEvents[n.type]=!1,t},_isExternalTarget:function(n,t){var i=t.relatedTarget;if(!i)return!0;try{while(i&&i!==n)i=i.parentNode}catch(r){return!1}return i!==n},_filterClick:function(n,t){var u=n.timeStamp||n.originalEvent&&n.originalEvent.timeStamp,i=r.DomEvent._lastClick&&u-r.DomEvent._lastClick;if(i&&i>100&&i<500||n.target._simulatedClick&&!n._simulated){r.DomEvent.stop(n);return}r.DomEvent._lastClick=u;t(n)}};r.DomEvent.addListener=r.DomEvent.on;r.DomEvent.removeListener=r.DomEvent.off;r.PosAnimation=r.Evented.extend({run:function(n,t,i,u){this.stop();this._el=n;this._inProgress=!0;this._duration=i||.25;this._easeOutPower=1/Math.max(u||.5,.2);this._startPos=r.DomUtil.getPosition(n);this._offset=t.subtract(this._startPos);this._startTime=+new Date;this.fire("start");this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=r.Util.requestAnimFrame(this._animate,this);this._step()},_step:function(n){var t=+new Date-this._startTime,i=this._duration*1e3;t<i?this._runFrame(this._easeOut(t/i),n):(this._runFrame(1),this._complete())},_runFrame:function(n,t){var i=this._startPos.add(this._offset.multiplyBy(n));t&&i._round();r.DomUtil.setPosition(this._el,i);this.fire("step")},_complete:function(){r.Util.cancelAnimFrame(this._animId);this._inProgress=!1;this.fire("end")},_easeOut:function(n){return 1-Math.pow(1-n,this._easeOutPower)}});r.Projection.Mercator={R:6378137,R_MINOR:6356752.3142451793,bounds:r.bounds([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(n){var u=Math.PI/180,i=this.R,t=n.lat*u,f=this.R_MINOR/i,e=Math.sqrt(1-f*f),o=e*Math.sin(t),s=Math.tan(Math.PI/4-t/2)/Math.pow((1-o)/(1+o),e/2);return t=-i*Math.log(Math.max(s,1e-10)),new r.Point(n.lng*u*i,t)},unproject:function(n){for(var e=180/Math.PI,u=this.R,o=this.R_MINOR/u,s=Math.sqrt(1-o*o),h=Math.exp(-n.y/u),i=Math.PI/2-2*Math.atan(h),c=0,f=.1,t;c<15&&Math.abs(f)>1e-7;c++)t=s*Math.sin(i),t=Math.pow((1-t)/(1+t),s/2),f=Math.PI/2-2*Math.atan(h*t)-i,i+=f;return new r.LatLng(i*e,n.x*e/u)}};r.CRS.EPSG3395=r.extend({},r.CRS.Earth,{code:"EPSG:3395",projection:r.Projection.Mercator,transformation:function(){var n=.5/(Math.PI*r.Projection.Mercator.R);return new r.Transformation(n,.5,-n,.5)}()});r.GridLayer=r.Layer.extend({options:{tileSize:256,opacity:1,updateWhenIdle:r.Browser.mobile,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:i,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(n){r.setOptions(this,n)},onAdd:function(){this._initContainer();this._levels={};this._tiles={};this._resetView();this._update()},beforeAdd:function(n){n._addZoomLimit(this)},onRemove:function(n){this._removeAllTiles();r.DomUtil.remove(this._container);n._removeZoomLimit(this);this._container=null;this._tileZoom=null},bringToFront:function(){return this._map&&(r.DomUtil.toFront(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(r.DomUtil.toBack(this._container),this._setAutoZIndex(Math.min)),this},getContainer:function(){return this._container},setOpacity:function(n){return this.options.opacity=n,this._updateOpacity(),this},setZIndex:function(n){return this.options.zIndex=n,this._updateZIndex(),this},isLoading:function(){return this._loading},redraw:function(){return this._map&&(this._removeAllTiles(),this._update()),this},getEvents:function(){var n={viewprereset:this._invalidateAll,viewreset:this._resetView,zoom:this._resetView,moveend:this._onMoveEnd};return this.options.updateWhenIdle||(this._onMove||(this._onMove=r.Util.throttle(this._onMoveEnd,this.options.updateInterval,this)),n.move=this._onMove),this._zoomAnimated&&(n.zoomanim=this._animateZoom),n},createTile:function(){return t.createElement("div")},getTileSize:function(){var n=this.options.tileSize;return n instanceof r.Point?n:new r.Point(n,n)},_updateZIndex:function(){this._container&&this.options.zIndex!==i&&this.options.zIndex!==null&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(n){for(var r=this.getPane().children,t=-n(-Infinity,Infinity),i=0,f=r.length,u;i<f;i++)u=r[i].style.zIndex,r[i]!==this._container&&u&&(t=n(t,+u));isFinite(t)&&(this.options.zIndex=t+n(-1,1),this._updateZIndex())},_updateOpacity:function(){var f,n,t;if(this._map&&!r.Browser.ielt9){r.DomUtil.setOpacity(this._container,this.options.opacity);var e=+new Date,i=!1,u=!1;for(f in this._tiles)(n=this._tiles[f],n.current&&n.loaded)&&(t=Math.min(1,(e-n.loaded)/200),r.DomUtil.setOpacity(n.el,t),t<1?i=!0:(n.active&&(u=!0),n.active=!0));u&&!this._noPrune&&this._pruneTiles();i&&(r.Util.cancelAnimFrame(this._fadeFrame),this._fadeFrame=r.Util.requestAnimFrame(this._updateOpacity,this))}},_initContainer:function(){this._container||(this._container=r.DomUtil.create("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var u=this._tileZoom,e=this.options.maxZoom,t,n,f;if(u===i)return i;for(t in this._levels)this._levels[t].el.children.length||t===u?this._levels[t].el.style.zIndex=e-Math.abs(u-t):(r.DomUtil.remove(this._levels[t].el),this._removeTilesAtZoom(t),delete this._levels[t]);return n=this._levels[u],f=this._map,n||(n=this._levels[u]={},n.el=r.DomUtil.create("div","leaflet-tile-container leaflet-zoom-animated",this._container),n.el.style.zIndex=e,n.origin=f.project(f.unproject(f.getPixelOrigin()),u).round(),n.zoom=u,this._setZoomTransform(n,f.getCenter(),f.getZoom()),r.Util.falseFn(n.el.offsetWidth)),this._level=n,n},_pruneTiles:function(){var t,i,r,n;if(this._map){if(r=this._map.getZoom(),r>this.options.maxZoom||r<this.options.minZoom){this._removeAllTiles();return}for(t in this._tiles)i=this._tiles[t],i.retain=i.current;for(t in this._tiles)i=this._tiles[t],i.current&&!i.active&&(n=i.coords,this._retainParent(n.x,n.y,n.z,n.z-5)||this._retainChildren(n.x,n.y,n.z,n.z+2));for(t in this._tiles)this._tiles[t].retain||this._removeTile(t)}},_removeTilesAtZoom:function(n){for(var t in this._tiles)this._tiles[t].coords.z===n&&this._removeTile(t)},_removeAllTiles:function(){for(var n in this._tiles)this._removeTile(n)},_invalidateAll:function(){for(var n in this._levels)r.DomUtil.remove(this._levels[n].el),delete this._levels[n];this._removeAllTiles();this._tileZoom=null},_retainParent:function(n,t,i,u){var o=Math.floor(n/2),s=Math.floor(t/2),e=i-1,h=new r.Point(+o,+s),c,f;return(h.z=+e,c=this._tileCoordsToKey(h),f=this._tiles[c],f&&f.active)?(f.retain=!0,!0):(f&&f.loaded&&(f.retain=!0),e>u)?this._retainParent(o,s,e,u):!1},_retainChildren:function(n,t,i,u){for(var o,s,h,f,e=2*n;e<2*n+2;e++)for(o=2*t;o<2*t+2;o++){if(s=new r.Point(e,o),s.z=i+1,h=this._tileCoordsToKey(s),f=this._tiles[h],f&&f.active){f.retain=!0;continue}else f&&f.loaded&&(f.retain=!0);i+1<u&&this._retainChildren(e,o,i+1,u)}},_resetView:function(n){var t=n&&(n.pinch||n.flyTo);this._setView(this._map.getCenter(),this._map.getZoom(),t,t)},_animateZoom:function(n){this._setView(n.center,n.zoom,!0,n.noUpdate)},_setView:function(n,t,r,u){var f=Math.round(t),e;(this.options.maxZoom!==i&&f>this.options.maxZoom||this.options.minZoom!==i&&f<this.options.minZoom)&&(f=i);e=this.options.updateWhenZooming&&f!==this._tileZoom;(!u||e)&&(this._tileZoom=f,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),f!==i&&this._update(n),r||this._pruneTiles(),this._noPrune=!!r);this._setZoomTransforms(n,t)},_setZoomTransforms:function(n,t){for(var i in this._levels)this._setZoomTransform(this._levels[i],n,t)},_setZoomTransform:function(n,t,i){var u=this._map.getZoomScale(i,n.zoom),f=n.origin.multiplyBy(u).subtract(this._map._getNewPixelOrigin(t,i)).round();r.Browser.any3d?r.DomUtil.setTransform(n.el,f,u):r.DomUtil.setPosition(n.el,f)},_resetGrid:function(){var t=this._map,n=t.options.crs,i=this._tileSize=this.getTileSize(),r=this._tileZoom,u=this._map.getPixelWorldBounds(this._tileZoom);u&&(this._globalTileRange=this._pxBoundsToTileRange(u));this._wrapX=n.wrapLng&&!this.options.noWrap&&[Math.floor(t.project([0,n.wrapLng[0]],r).x/i.x),Math.ceil(t.project([0,n.wrapLng[1]],r).x/i.y)];this._wrapY=n.wrapLat&&!this.options.noWrap&&[Math.floor(t.project([n.wrapLat[0],0],r).y/i.x),Math.ceil(t.project([n.wrapLat[1],0],r).y/i.y)]},_onMoveEnd:function(){this._map&&!this._map._animatingZoom&&this._update()},_getTiledPixelBounds:function(n){var t=this._map,f=t._animatingZoom?Math.max(t._animateToZoom,t.getZoom()):t.getZoom(),e=t.getZoomScale(f,this._tileZoom),i=t.project(n,this._tileZoom).floor(),u=t.getSize().divideBy(e*2);return new r.Bounds(i.subtract(u),i.add(u))},_update:function(n){var l=this._map,a,v,h,c,u,o,y,p;if(l&&(a=l.getZoom(),n===i&&(n=l.getCenter()),this._tileZoom!==i)){var b=this._getTiledPixelBounds(n),f=this._pxBoundsToTileRange(b),w=f.getCenter(),e=[],s=this.options.keepBuffer,k=new r.Bounds(f.getBottomLeft().subtract([s,-s]),f.getTopRight().add([s,-s]));for(v in this._tiles)h=this._tiles[v].coords,h.z===this._tileZoom&&k.contains(r.point(h.x,h.y))||(this._tiles[v].current=!1);if(Math.abs(a-this._tileZoom)>1){this._setView(n,a);return}for(c=f.min.y;c<=f.max.y;c++)for(u=f.min.x;u<=f.max.x;u++)(o=new r.Point(u,c),o.z=this._tileZoom,this._isValidTile(o))&&(y=this._tiles[this._tileCoordsToKey(o)],y?y.current=!0:e.push(o));if(e.sort(function(n,t){return n.distanceTo(w)-t.distanceTo(w)}),e.length!==0){for(this._loading||(this._loading=!0,this.fire("loading")),p=t.createDocumentFragment(),u=0;u<e.length;u++)this._addTile(e[u],p);this._level.el.appendChild(p)}}},_isValidTile:function(n){var i=this._map.options.crs,t,u;return!i.infinite&&(t=this._globalTileRange,!i.wrapLng&&(n.x<t.min.x||n.x>t.max.x)||!i.wrapLat&&(n.y<t.min.y||n.y>t.max.y))?!1:this.options.bounds?(u=this._tileCoordsToBounds(n),r.latLngBounds(this.options.bounds).overlaps(u)):!0},_keyToBounds:function(n){return this._tileCoordsToBounds(this._keyToTileCoords(n))},_tileCoordsToBounds:function(n){var t=this._map,f=this.getTileSize(),e=n.scaleBy(f),o=e.add(f),i=t.unproject(e,n.z),u=t.unproject(o,n.z);return this.options.noWrap||(i=t.wrapLatLng(i),u=t.wrapLatLng(u)),new r.LatLngBounds(i,u)},_tileCoordsToKey:function(n){return n.x+":"+n.y+":"+n.z},_keyToTileCoords:function(n){var t=n.split(":"),i=new r.Point(+t[0],+t[1]);return i.z=+t[2],i},_removeTile:function(n){var t=this._tiles[n];t&&(r.DomUtil.remove(t.el),delete this._tiles[n],this.fire("tileunload",{tile:t.el,coords:this._keyToTileCoords(n)}))},_initTile:function(n){r.DomUtil.addClass(n,"leaflet-tile");var t=this.getTileSize();n.style.width=t.x+"px";n.style.height=t.y+"px";n.onselectstart=r.Util.falseFn;n.onmousemove=r.Util.falseFn;r.Browser.ielt9&&this.options.opacity<1&&r.DomUtil.setOpacity(n,this.options.opacity);r.Browser.android&&!r.Browser.android23&&(n.style.WebkitBackfaceVisibility="hidden")},_addTile:function(n,t){var u=this._getTilePos(n),f=this._tileCoordsToKey(n),i=this.createTile(this._wrapCoords(n),r.bind(this._tileReady,this,n));this._initTile(i);this.createTile.length<2&&r.Util.requestAnimFrame(r.bind(this._tileReady,this,n,null,i));r.DomUtil.setPosition(i,u);this._tiles[f]={el:i,coords:n,current:!0};t.appendChild(i);this.fire("tileloadstart",{tile:i,coords:n})},_tileReady:function(n,t,i){if(this._map){t&&this.fire("tileerror",{error:t,tile:i,coords:n});var u=this._tileCoordsToKey(n);(i=this._tiles[u],i)&&(i.loaded=+new Date,this._map._fadeAnimated?(r.DomUtil.setOpacity(i.el,0),r.Util.cancelAnimFrame(this._fadeFrame),this._fadeFrame=r.Util.requestAnimFrame(this._updateOpacity,this)):(i.active=!0,this._pruneTiles()),t||(r.DomUtil.addClass(i.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:i.el,coords:n})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),r.Browser.ielt9||!this._map._fadeAnimated?r.Util.requestAnimFrame(this._pruneTiles,this):setTimeout(r.bind(this._pruneTiles,this),250)))}},_getTilePos:function(n){return n.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(n){var t=new r.Point(this._wrapX?r.Util.wrapNum(n.x,this._wrapX):n.x,this._wrapY?r.Util.wrapNum(n.y,this._wrapY):n.y);return t.z=n.z,t},_pxBoundsToTileRange:function(n){var t=this.getTileSize();return new r.Bounds(n.min.unscaleBy(t).floor(),n.max.unscaleBy(t).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var n in this._tiles)if(!this._tiles[n].loaded)return!1;return!0}});r.gridLayer=function(n){return new r.GridLayer(n)};r.TileLayer=r.GridLayer.extend({options:{minZoom:0,maxZoom:18,maxNativeZoom:null,minNativeZoom:null,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1},initialize:function(n,t){if(this._url=n,t=r.setOptions(this,t),t.detectRetina&&r.Browser.retina&&t.maxZoom>0&&(t.tileSize=Math.floor(t.tileSize/2),t.zoomReverse?(t.zoomOffset--,t.minZoom++):(t.zoomOffset++,t.maxZoom--),t.minZoom=Math.max(0,t.minZoom)),typeof t.subdomains=="string"&&(t.subdomains=t.subdomains.split("")),!r.Browser.android)this.on("tileunload",this._onTileRemove)},setUrl:function(n,t){return this._url=n,t||this.redraw(),this},createTile:function(n,i){var u=t.createElement("img");r.DomEvent.on(u,"load",r.bind(this._tileOnLoad,this,i,u));r.DomEvent.on(u,"error",r.bind(this._tileOnError,this,i,u));return this.options.crossOrigin&&(u.crossOrigin=""),u.alt="",u.setAttribute("role","presentation"),u.src=this.getTileUrl(n),u},getTileUrl:function(n){var t={r:r.Browser.retina?"@2x":"",s:this._getSubdomain(n),x:n.x,y:n.y,z:this._getZoomForUrl()},i;return this._map&&!this._map.options.crs.infinite&&(i=this._globalTileRange.max.y-n.y,this.options.tms&&(t.y=i),t["-y"]=i),r.Util.template(this._url,r.extend(t,this.options))},_tileOnLoad:function(n,t){r.Browser.ielt9?setTimeout(r.bind(n,this,null,t),0):n(null,t)},_tileOnError:function(n,t,i){var r=this.options.errorTileUrl;r&&(t.src=r);n(i,t)},getTileSize:function(){var f=this._map,t=r.GridLayer.prototype.getTileSize.call(this),n=this._tileZoom+this.options.zoomOffset,i=this.options.minNativeZoom,u=this.options.maxNativeZoom;return i!==null&&n<i?t.divideBy(f.getZoomScale(i,n)).round():u!==null&&n>u?t.divideBy(f.getZoomScale(u,n)).round():t},_onTileRemove:function(n){n.tile.onload=null},_getZoomForUrl:function(){var n=this._tileZoom,r=this.options.maxZoom,u=this.options.zoomReverse,f=this.options.zoomOffset,t=this.options.minNativeZoom,i=this.options.maxNativeZoom;return(u&&(n=r-n),n+=f,t!==null&&n<t)?t:i!==null&&n>i?i:n},_getSubdomain:function(n){var t=Math.abs(n.x+n.y)%this.options.subdomains.length;return this.options.subdomains[t]},_abortLoading:function(){var t,n;for(t in this._tiles)this._tiles[t].coords.z!==this._tileZoom&&(n=this._tiles[t].el,n.onload=r.Util.falseFn,n.onerror=r.Util.falseFn,n.complete||(n.src=r.Util.emptyImageUrl,r.DomUtil.remove(n)))}});r.tileLayer=function(n,t){return new r.TileLayer(n,t)};r.TileLayer.WMS=r.TileLayer.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(n,t){var i,u;this._url=n;i=r.extend({},this.defaultWmsParams);for(u in t)u in this.options||(i[u]=t[u]);t=r.setOptions(this,t);i.width=i.height=t.tileSize*(t.detectRetina&&r.Browser.retina?2:1);this.wmsParams=i},onAdd:function(n){this._crs=this.options.crs||n.options.crs;this._wmsVersion=parseFloat(this.wmsParams.version);var t=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[t]=this._crs.code;r.TileLayer.prototype.onAdd.call(this,n)},getTileUrl:function(n){var u=this._tileCoordsToBounds(n),t=this._crs.project(u.getNorthWest()),i=this._crs.project(u.getSouthEast()),e=(this._wmsVersion>=1.3&&this._crs===r.CRS.EPSG4326?[i.y,t.x,t.y,i.x]:[t.x,i.y,i.x,t.y]).join(","),f=r.TileLayer.prototype.getTileUrl.call(this,n);return f+r.Util.getParamString(this.wmsParams,f,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+e},setParams:function(n,t){return r.extend(this.wmsParams,n),t||this.redraw(),this}});r.tileLayer.wms=function(n,t){return new r.TileLayer.WMS(n,t)};r.ImageOverlay=r.Layer.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1},initialize:function(n,t,i){this._url=n;this._bounds=r.latLngBounds(t);r.setOptions(this,i)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity());this.options.interactive&&(r.DomUtil.addClass(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image));this.getPane().appendChild(this._image);this._reset()},onRemove:function(){r.DomUtil.remove(this._image);this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(n){return this.options.opacity=n,this._image&&this._updateOpacity(),this},setStyle:function(n){return n.opacity&&this.setOpacity(n.opacity),this},bringToFront:function(){return this._map&&r.DomUtil.toFront(this._image),this},bringToBack:function(){return this._map&&r.DomUtil.toBack(this._image),this},setUrl:function(n){return this._url=n,this._image&&(this._image.src=n),this},setBounds:function(n){return this._bounds=n,this._map&&this._reset(),this},getEvents:function(){var n={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(n.zoomanim=this._animateZoom),n},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var n=this._image=r.DomUtil.create("img","leaflet-image-layer "+(this._zoomAnimated?"leaflet-zoom-animated":""));n.onselectstart=r.Util.falseFn;n.onmousemove=r.Util.falseFn;n.onload=r.bind(this.fire,this,"load");this.options.crossOrigin&&(n.crossOrigin="");n.src=this._url;n.alt=this.options.alt},_animateZoom:function(n){var t=this._map.getZoomScale(n.zoom),i=this._map._latLngBoundsToNewLayerBounds(this._bounds,n.zoom,n.center).min;r.DomUtil.setTransform(this._image,i,t)},_reset:function(){var n=this._image,t=new r.Bounds(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),i=t.getSize();r.DomUtil.setPosition(n,t.min);n.style.width=i.x+"px";n.style.height=i.y+"px"},_updateOpacity:function(){r.DomUtil.setOpacity(this._image,this.options.opacity)}});r.imageOverlay=function(n,t,i){return new r.ImageOverlay(n,t,i)};r.Icon=r.Class.extend({initialize:function(n){r.setOptions(this,n)},createIcon:function(n){return this._createIcon("icon",n)},createShadow:function(n){return this._createIcon("shadow",n)},_createIcon:function(n,t){var r=this._getIconUrl(n),i;if(!r){if(n==="icon")throw new Error("iconUrl not set in Icon options (see the docs).");return null}return i=this._createImg(r,t&&t.tagName==="IMG"?t:null),this._setIconStyles(i,n),i},_setIconStyles:function(n,t){var f=this.options,u=f[t+"Size"],i,e;typeof u=="number"&&(u=[u,u]);i=r.point(u);e=r.point(t==="shadow"&&f.shadowAnchor||f.iconAnchor||i&&i.divideBy(2,!0));n.className="leaflet-marker-"+t+" "+(f.className||"");e&&(n.style.marginLeft=-e.x+"px",n.style.marginTop=-e.y+"px");i&&(n.style.width=i.x+"px",n.style.height=i.y+"px")},_createImg:function(n,i){return i=i||t.createElement("img"),i.src=n,i},_getIconUrl:function(n){return r.Browser.retina&&this.options[n+"RetinaUrl"]||this.options[n+"Url"]}});r.icon=function(n){return new r.Icon(n)};r.Icon.Default=r.Icon.extend({options:{iconUrl:"marker-icon.png",iconRetinaUrl:"marker-icon-2x.png",shadowUrl:"marker-shadow.png",iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],tooltipAnchor:[16,-28],shadowSize:[41,41]},_getIconUrl:function(n){return r.Icon.Default.imagePath||(r.Icon.Default.imagePath=this._detectIconPath()),(this.options.imagePath||r.Icon.Default.imagePath)+r.Icon.prototype._getIconUrl.call(this,n)},_detectIconPath:function(){var n=r.DomUtil.create("div","leaflet-default-icon-path",t.body),i=r.DomUtil.getStyle(n,"background-image")||r.DomUtil.getStyle(n,"backgroundImage");return t.body.removeChild(n),i.indexOf("url")===0?i.replace(/^url\([\"\']?/,"").replace(/marker-icon\.png[\"\']?\)$/,""):""}});r.Marker=r.Layer.extend({options:{icon:new r.Icon.Default,interactive:!0,draggable:!1,keyboard:!0,title:"",alt:"",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",nonBubblingEvents:["click","dblclick","mouseover","mouseout","contextmenu"]},initialize:function(n,t){r.setOptions(this,t);this._latlng=r.latLng(n)},onAdd:function(n){if(this._zoomAnimated=this._zoomAnimated&&n.options.markerZoomAnimation,this._zoomAnimated)n.on("zoomanim",this._animateZoom,this);this._initIcon();this.update()},onRemove:function(n){this.dragging&&this.dragging.enabled()&&(this.options.draggable=!0,this.dragging.removeHooks());this._zoomAnimated&&n.off("zoomanim",this._animateZoom,this);this._removeIcon();this._removeShadow()},getEvents:function(){return{zoom:this.update,viewreset:this.update}},getLatLng:function(){return this._latlng},setLatLng:function(n){var t=this._latlng;return this._latlng=r.latLng(n),this.update(),this.fire("move",{oldLatLng:t,latlng:this._latlng})},setZIndexOffset:function(n){return this.options.zIndexOffset=n,this.update()},setIcon:function(n){return this.options.icon=n,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup,this._popup.options),this},getElement:function(){return this._icon},update:function(){if(this._icon){var n=this._map.latLngToLayerPoint(this._latlng).round();this._setPos(n)}return this},_initIcon:function(){var n=this.options,f="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),t=n.icon.createIcon(this._icon),e=!1,i,u;if(t!==this._icon&&(this._icon&&this._removeIcon(),e=!0,n.title&&(t.title=n.title),n.alt&&(t.alt=n.alt)),r.DomUtil.addClass(t,f),n.keyboard&&(t.tabIndex="0"),this._icon=t,n.riseOnHover)this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex});i=n.icon.createShadow(this._shadow);u=!1;i!==this._shadow&&(this._removeShadow(),u=!0);i&&r.DomUtil.addClass(i,f);this._shadow=i;n.opacity<1&&this._updateOpacity();e&&this.getPane().appendChild(this._icon);this._initInteraction();i&&u&&this.getPane("shadowPane").appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex});r.DomUtil.remove(this._icon);this.removeInteractiveTarget(this._icon);this._icon=null},_removeShadow:function(){this._shadow&&r.DomUtil.remove(this._shadow);this._shadow=null},_setPos:function(n){r.DomUtil.setPosition(this._icon,n);this._shadow&&r.DomUtil.setPosition(this._shadow,n);this._zIndex=n.y+this.options.zIndexOffset;this._resetZIndex()},_updateZIndex:function(n){this._icon.style.zIndex=this._zIndex+n},_animateZoom:function(n){var t=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center).round();this._setPos(t)},_initInteraction:function(){if(this.options.interactive&&(r.DomUtil.addClass(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),r.Handler.MarkerDrag)){var n=this.options.draggable;this.dragging&&(n=this.dragging.enabled(),this.dragging.disable());this.dragging=new r.Handler.MarkerDrag(this);n&&this.dragging.enable()}},setOpacity:function(n){return this.options.opacity=n,this._map&&this._updateOpacity(),this},_updateOpacity:function(){var n=this.options.opacity;r.DomUtil.setOpacity(this._icon,n);this._shadow&&r.DomUtil.setOpacity(this._shadow,n)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)},_getPopupAnchor:function(){return this.options.icon.options.popupAnchor||[0,0]},_getTooltipAnchor:function(){return this.options.icon.options.tooltipAnchor||[0,0]}});r.marker=function(n,t){return new r.Marker(n,t)};r.DivIcon=r.Icon.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(n){var i=n&&n.tagName==="DIV"?n:t.createElement("div"),u=this.options,f;return i.innerHTML=u.html!==!1?u.html:"",u.bgPos&&(f=r.point(u.bgPos),i.style.backgroundPosition=-f.x+"px "+-f.y+"px"),this._setIconStyles(i,"icon"),i},createShadow:function(){return null}});r.divIcon=function(n){return new r.DivIcon(n)};r.DivOverlay=r.Layer.extend({options:{offset:[0,7],className:"",pane:"popupPane"},initialize:function(n,t){r.setOptions(this,n);this._source=t},onAdd:function(n){this._zoomAnimated=n._zoomAnimated;this._container||this._initLayout();n._fadeAnimated&&r.DomUtil.setOpacity(this._container,0);clearTimeout(this._removeTimeout);this.getPane().appendChild(this._container);this.update();n._fadeAnimated&&r.DomUtil.setOpacity(this._container,1);this.bringToFront()},onRemove:function(n){n._fadeAnimated?(r.DomUtil.setOpacity(this._container,0),this._removeTimeout=setTimeout(r.bind(r.DomUtil.remove,r.DomUtil,this._container),200)):r.DomUtil.remove(this._container)},getLatLng:function(){return this._latlng},setLatLng:function(n){return this._latlng=r.latLng(n),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(n){return this._content=n,this.update(),this},getElement:function(){return this._container},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},getEvents:function(){var n={zoom:this._updatePosition,viewreset:this._updatePosition};return this._zoomAnimated&&(n.zoomanim=this._animateZoom),n},isOpen:function(){return!!this._map&&this._map.hasLayer(this)},bringToFront:function(){return this._map&&r.DomUtil.toFront(this._container),this},bringToBack:function(){return this._map&&r.DomUtil.toBack(this._container),this},_updateContent:function(){if(this._content){var n=this._contentNode,t=typeof this._content=="function"?this._content(this._source||this):this._content;if(typeof t=="string")n.innerHTML=t;else{while(n.hasChildNodes())n.removeChild(n.firstChild);n.appendChild(t)}this.fire("contentupdate")}},_updatePosition:function(){var u,f;if(this._map){var t=this._map.latLngToLayerPoint(this._latlng),n=r.point(this.options.offset),i=this._getAnchor();this._zoomAnimated?r.DomUtil.setPosition(this._container,t.add(i)):n=n.add(t).add(i);u=this._containerBottom=-n.y;f=this._containerLeft=-Math.round(this._containerWidth/2)+n.x;this._container.style.bottom=u+"px";this._container.style.left=f+"px"}},_getAnchor:function(){return[0,0]}});r.Popup=r.DivOverlay.extend({options:{maxWidth:300,minWidth:50,maxHeight:null,autoPan:!0,autoPanPaddingTopLeft:null,autoPanPaddingBottomRight:null,autoPanPadding:[5,5],keepInView:!1,closeButton:!0,autoClose:!0,className:""},openOn:function(n){return n.openPopup(this),this},onAdd:function(n){if(r.DivOverlay.prototype.onAdd.call(this,n),n.fire("popupopen",{popup:this}),this._source&&(this._source.fire("popupopen",{popup:this},!0),!(this._source instanceof r.Path)))this._source.on("preclick",r.DomEvent.stopPropagation)},onRemove:function(n){r.DivOverlay.prototype.onRemove.call(this,n);n.fire("popupclose",{popup:this});this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof r.Path||this._source.off("preclick",r.DomEvent.stopPropagation))},getEvents:function(){var n=r.DivOverlay.prototype.getEvents.call(this);return("closeOnClick"in this.options?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(n.preclick=this._close),this.options.keepInView&&(n.moveend=this._adjustPan),n},_close:function(){this._map&&this._map.closePopup(this)},_initLayout:function(){var n="leaflet-popup",u=this._container=r.DomUtil.create("div",n+" "+(this.options.className||"")+" leaflet-zoom-animated"),t,i;if(this.options.closeButton){t=this._closeButton=r.DomUtil.create("a",n+"-close-button",u);t.href="#close";t.innerHTML="&#215;";r.DomEvent.on(t,"click",this._onCloseButtonClick,this)}i=this._wrapper=r.DomUtil.create("div",n+"-content-wrapper",u);this._contentNode=r.DomUtil.create("div",n+"-content",i);r.DomEvent.disableClickPropagation(i).disableScrollPropagation(this._contentNode).on(i,"contextmenu",r.DomEvent.stopPropagation);this._tipContainer=r.DomUtil.create("div",n+"-tip-container",u);this._tip=r.DomUtil.create("div",n+"-tip",this._tipContainer)},_updateLayout:function(){var i=this._contentNode,n=i.style,t;n.width="";n.whiteSpace="nowrap";t=i.offsetWidth;t=Math.min(t,this.options.maxWidth);t=Math.max(t,this.options.minWidth);n.width=t+1+"px";n.whiteSpace="";n.height="";var e=i.offsetHeight,u=this.options.maxHeight,f="leaflet-popup-scrolled";u&&e>u?(n.height=u+"px",r.DomUtil.addClass(i,f)):r.DomUtil.removeClass(i,f);this._containerWidth=this._container.offsetWidth},_animateZoom:function(n){var t=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center),i=this._getAnchor();r.DomUtil.setPosition(this._container,t.add(i))},_adjustPan:function(){if(this.options.autoPan&&(!this._map._panAnim||!this._map._panAnim._inProgress)){var o=this._map,a=parseInt(r.DomUtil.getStyle(this._container,"marginBottom"),10)||0,s=this._container.offsetHeight+a,h=this._containerWidth,c=new r.Point(this._containerLeft,-s-this._containerBottom);c._add(r.DomUtil.getPosition(this._container));var n=o.layerPointToContainerPoint(c),l=r.point(this.options.autoPanPadding),u=r.point(this.options.autoPanPaddingTopLeft||l),f=r.point(this.options.autoPanPaddingBottomRight||l),e=o.getSize(),t=0,i=0;n.x+h+f.x>e.x&&(t=n.x+h-e.x+f.x);n.x-t-u.x<0&&(t=n.x-u.x);n.y+s+f.y>e.y&&(i=n.y+s-e.y+f.y);n.y-i-u.y<0&&(i=n.y-u.y);(t||i)&&o.fire("autopanstart").panBy([t,i])}},_onCloseButtonClick:function(n){this._close();r.DomEvent.stop(n)},_getAnchor:function(){return r.point(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});r.popup=function(n,t){return new r.Popup(n,t)};r.Map.mergeOptions({closePopupOnClick:!0});r.Map.include({openPopup:function(n,t,i){return(n instanceof r.Popup||(n=new r.Popup(i).setContent(n)),t&&n.setLatLng(t),this.hasLayer(n))?this:(this._popup&&this._popup.options.autoClose&&this.closePopup(),this._popup=n,this.addLayer(n))},closePopup:function(n){return n&&n!==this._popup||(n=this._popup,this._popup=null),n&&this.removeLayer(n),this}});r.Layer.include({bindPopup:function(n,t){if(n instanceof r.Popup?(r.setOptions(n,t),this._popup=n,n._source=this):((!this._popup||t)&&(this._popup=new r.Popup(t,this)),this._popup.setContent(n)),!this._popupHandlersAdded){this.on({click:this._openPopup,remove:this.closePopup,move:this._movePopup});this._popupHandlersAdded=!0}return this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(n,t){if(n instanceof r.Layer||(t=n,n=this),n instanceof r.FeatureGroup)for(var i in this._layers){n=this._layers[i];break}return t||(t=n.getCenter?n.getCenter():n.getLatLng()),this._popup&&this._map&&(this._popup._source=n,this._popup.update(),this._map.openPopup(this._popup,t)),this},closePopup:function(){return this._popup&&this._popup._close(),this},togglePopup:function(n){return this._popup&&(this._popup._map?this.closePopup():this.openPopup(n)),this},isPopupOpen:function(){return this._popup.isOpen()},setPopupContent:function(n){return this._popup&&this._popup.setContent(n),this},getPopup:function(){return this._popup},_openPopup:function(n){var t=n.layer||n.target;if(this._popup&&this._map){if(r.DomEvent.stop(n),t instanceof r.Path){this.openPopup(n.layer||n.target,n.latlng);return}this._map.hasLayer(this._popup)&&this._popup._source===t?this.closePopup():this.openPopup(t,n.latlng)}},_movePopup:function(n){this._popup.setLatLng(n.latlng)}});r.Tooltip=r.DivOverlay.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,interactive:!1,opacity:.9},onAdd:function(n){r.DivOverlay.prototype.onAdd.call(this,n);this.setOpacity(this.options.opacity);n.fire("tooltipopen",{tooltip:this});this._source&&this._source.fire("tooltipopen",{tooltip:this},!0)},onRemove:function(n){r.DivOverlay.prototype.onRemove.call(this,n);n.fire("tooltipclose",{tooltip:this});this._source&&this._source.fire("tooltipclose",{tooltip:this},!0)},getEvents:function(){var n=r.DivOverlay.prototype.getEvents.call(this);return r.Browser.touch&&!this.options.permanent&&(n.preclick=this._close),n},_close:function(){this._map&&this._map.closeTooltip(this)},_initLayout:function(){var n="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=r.DomUtil.create("div",n)},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(n){var s=this._map,i=this._container,h=s.latLngToContainerPoint(s.getCenter()),c=s.layerPointToContainerPoint(n),u=this.options.direction,e=i.offsetWidth,o=i.offsetHeight,t=r.point(this.options.offset),f=this._getAnchor();u==="top"?n=n.add(r.point(-e/2+t.x,-o+t.y+f.y,!0)):u==="bottom"?n=n.subtract(r.point(e/2-t.x,-t.y,!0)):u==="center"?n=n.subtract(r.point(e/2+t.x,o/2-f.y+t.y,!0)):u==="right"||u==="auto"&&c.x<h.x?(u="right",n=n.add(r.point(t.x+f.x,f.y-o/2+t.y,!0))):(u="left",n=n.subtract(r.point(e+f.x-t.x,o/2-f.y-t.y,!0)));r.DomUtil.removeClass(i,"leaflet-tooltip-right");r.DomUtil.removeClass(i,"leaflet-tooltip-left");r.DomUtil.removeClass(i,"leaflet-tooltip-top");r.DomUtil.removeClass(i,"leaflet-tooltip-bottom");r.DomUtil.addClass(i,"leaflet-tooltip-"+u);r.DomUtil.setPosition(i,n)},_updatePosition:function(){var n=this._map.latLngToLayerPoint(this._latlng);this._setPosition(n)},setOpacity:function(n){this.options.opacity=n;this._container&&r.DomUtil.setOpacity(this._container,n)},_animateZoom:function(n){var t=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center);this._setPosition(t)},_getAnchor:function(){return r.point(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}});r.tooltip=function(n,t){return new r.Tooltip(n,t)};r.Map.include({openTooltip:function(n,t,i){return(n instanceof r.Tooltip||(n=new r.Tooltip(i).setContent(n)),t&&n.setLatLng(t),this.hasLayer(n))?this:this.addLayer(n)},closeTooltip:function(n){return n&&this.removeLayer(n),this}});r.Layer.include({bindTooltip:function(n,t){return n instanceof r.Tooltip?(r.setOptions(n,t),this._tooltip=n,n._source=this):((!this._tooltip||t)&&(this._tooltip=r.tooltip(t,this)),this._tooltip.setContent(n)),this._initTooltipInteractions(),this._tooltip.options.permanent&&this._map&&this._map.hasLayer(this)&&this.openTooltip(),this},unbindTooltip:function(){return this._tooltip&&(this._initTooltipInteractions(!0),this.closeTooltip(),this._tooltip=null),this},_initTooltipInteractions:function(n){if(n||!this._tooltipHandlersAdded){var i=n?"off":"on",t={remove:this.closeTooltip,move:this._moveTooltip};this._tooltip.options.permanent?t.add=this._openTooltip:(t.mouseover=this._openTooltip,t.mouseout=this.closeTooltip,this._tooltip.options.sticky&&(t.mousemove=this._moveTooltip),r.Browser.touch&&(t.click=this._openTooltip));this[i](t);this._tooltipHandlersAdded=!n}},openTooltip:function(n,t){if(n instanceof r.Layer||(t=n,n=this),n instanceof r.FeatureGroup)for(var i in this._layers){n=this._layers[i];break}return t||(t=n.getCenter?n.getCenter():n.getLatLng()),this._tooltip&&this._map&&(this._tooltip._source=n,this._tooltip.update(),this._map.openTooltip(this._tooltip,t),this._tooltip.options.interactive&&this._tooltip._container&&(r.DomUtil.addClass(this._tooltip._container,"leaflet-clickable"),this.addInteractiveTarget(this._tooltip._container))),this},closeTooltip:function(){return this._tooltip&&(this._tooltip._close(),this._tooltip.options.interactive&&this._tooltip._container&&(r.DomUtil.removeClass(this._tooltip._container,"leaflet-clickable"),this.removeInteractiveTarget(this._tooltip._container))),this},toggleTooltip:function(n){return this._tooltip&&(this._tooltip._map?this.closeTooltip():this.openTooltip(n)),this},isTooltipOpen:function(){return this._tooltip.isOpen()},setTooltipContent:function(n){return this._tooltip&&this._tooltip.setContent(n),this},getTooltip:function(){return this._tooltip},_openTooltip:function(n){var t=n.layer||n.target;this._tooltip&&this._map&&this.openTooltip(t,this._tooltip.options.sticky?n.latlng:i)},_moveTooltip:function(n){var t=n.latlng,i,r;this._tooltip.options.sticky&&n.originalEvent&&(i=this._map.mouseEventToContainerPoint(n.originalEvent),r=this._map.containerPointToLayerPoint(i),t=this._map.layerPointToLatLng(r));this._tooltip.setLatLng(t)}});r.LayerGroup=r.Layer.extend({initialize:function(n){this._layers={};var t,i;if(n)for(t=0,i=n.length;t<i;t++)this.addLayer(n[t])},addLayer:function(n){var t=this.getLayerId(n);return this._layers[t]=n,this._map&&this._map.addLayer(n),this},removeLayer:function(n){var t=n in this._layers?n:this.getLayerId(n);return this._map&&this._layers[t]&&this._map.removeLayer(this._layers[t]),delete this._layers[t],this},hasLayer:function(n){return!!n&&(n in this._layers||this.getLayerId(n)in this._layers)},clearLayers:function(){for(var n in this._layers)this.removeLayer(this._layers[n]);return this},invoke:function(n){var r=Array.prototype.slice.call(arguments,1),i,t;for(i in this._layers)t=this._layers[i],t[n]&&t[n].apply(t,r);return this},onAdd:function(n){for(var t in this._layers)n.addLayer(this._layers[t])},onRemove:function(n){for(var t in this._layers)n.removeLayer(this._layers[t])},eachLayer:function(n,t){for(var i in this._layers)n.call(t,this._layers[i]);return this},getLayer:function(n){return this._layers[n]},getLayers:function(){var n=[];for(var t in this._layers)n.push(this._layers[t]);return n},setZIndex:function(n){return this.invoke("setZIndex",n)},getLayerId:function(n){return r.stamp(n)}});r.layerGroup=function(n){return new r.LayerGroup(n)};r.FeatureGroup=r.LayerGroup.extend({addLayer:function(n){return this.hasLayer(n)?this:(n.addEventParent(this),r.LayerGroup.prototype.addLayer.call(this,n),this.fire("layeradd",{layer:n}))},removeLayer:function(n){return this.hasLayer(n)?(n in this._layers&&(n=this._layers[n]),n.removeEventParent(this),r.LayerGroup.prototype.removeLayer.call(this,n),this.fire("layerremove",{layer:n})):this},setStyle:function(n){return this.invoke("setStyle",n)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var t=new r.LatLngBounds,i,n;for(i in this._layers)n=this._layers[i],t.extend(n.getBounds?n.getBounds():n.getLatLng());return t}});r.featureGroup=function(n){return new r.FeatureGroup(n)};r.Renderer=r.Layer.extend({options:{padding:.1},initialize:function(n){r.setOptions(this,n);r.stamp(this);this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),this._zoomAnimated&&r.DomUtil.addClass(this._container,"leaflet-zoom-animated"));this.getPane().appendChild(this._container);this._update();this.on("update",this._updatePaths,this)},onRemove:function(){r.DomUtil.remove(this._container);this.off("update",this._updatePaths,this)},getEvents:function(){var n={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(n.zoomanim=this._onAnimZoom),n},_onAnimZoom:function(n){this._updateTransform(n.center,n.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(n,t){var i=this._map.getZoomScale(t,this._zoom),e=r.DomUtil.getPosition(this._container),u=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,t),s=this._map.project(n,t),h=s.subtract(o),f=u.multiplyBy(-i).add(e).add(u).subtract(h);r.Browser.any3d?r.DomUtil.setTransform(this._container,f,i):r.DomUtil.setPosition(this._container,f)},_reset:function(){this._update();this._updateTransform(this._center,this._zoom);for(var n in this._layers)this._layers[n]._reset()},_onZoomEnd:function(){for(var n in this._layers)this._layers[n]._project()},_updatePaths:function(){for(var n in this._layers)this._layers[n]._update()},_update:function(){var n=this.options.padding,t=this._map.getSize(),i=this._map.containerPointToLayerPoint(t.multiplyBy(-n)).round();this._bounds=new r.Bounds(i,i.add(t.multiplyBy(1+n*2)).round());this._center=this._map.getCenter();this._zoom=this._map.getZoom()}});r.Map.include({getRenderer:function(n){var t=n.options.renderer||this._getPaneRenderer(n.options.pane)||this.options.renderer||this._renderer;return t||(t=this._renderer=this.options.preferCanvas&&r.canvas()||r.svg()),this.hasLayer(t)||this.addLayer(t),t},_getPaneRenderer:function(n){if(n==="overlayPane"||n===i)return!1;var t=this._paneRenderers[n];return t===i&&(t=r.SVG&&r.svg({pane:n})||r.Canvas&&r.canvas({pane:n}),this._paneRenderers[n]=t),t}});r.Path=r.Layer.extend({options:{stroke:!0,color:"#3388ff",weight:3,opacity:1,lineCap:"round",lineJoin:"round",dashArray:null,dashOffset:null,fill:!1,fillColor:null,fillOpacity:.2,fillRule:"evenodd",interactive:!0},beforeAdd:function(n){this._renderer=n.getRenderer(this)},onAdd:function(){this._renderer._initPath(this);this._reset();this._renderer._addPath(this)},onRemove:function(){this._renderer._removePath(this)},redraw:function(){return this._map&&this._renderer._updatePath(this),this},setStyle:function(n){return r.setOptions(this,n),this._renderer&&this._renderer._updateStyle(this),this},bringToFront:function(){return this._renderer&&this._renderer._bringToFront(this),this},bringToBack:function(){return this._renderer&&this._renderer._bringToBack(this),this},getElement:function(){return this._path},_reset:function(){this._project();this._update()},_clickTolerance:function(){return(this.options.stroke?this.options.weight/2:0)+(r.Browser.touch?10:0)}});r.LineUtil={simplify:function(n,t){if(!t||!n.length)return n.slice();var i=t*t;return n=this._reducePoints(n,i),this._simplifyDP(n,i)},pointToSegmentDistance:function(n,t,i){return Math.sqrt(this._sqClosestPointOnSegment(n,t,i,!0))},closestPointOnSegment:function(n,t,i){return this._sqClosestPointOnSegment(n,t,i)},_simplifyDP:function(n,t){var u=n.length,o=typeof Uint8Array!=i+""?Uint8Array:Array,f=new o(u),r,e;for(f[0]=f[u-1]=1,this._simplifyDPStep(n,f,t,0,u-1),e=[],r=0;r<u;r++)f[r]&&e.push(n[r]);return e},_simplifyDPStep:function(n,t,i,r,u){for(var o=0,e,s,f=r+1;f<=u-1;f++)s=this._sqClosestPointOnSegment(n[f],n[r],n[u],!0),s>o&&(e=f,o=s);o>i&&(t[e]=1,this._simplifyDPStep(n,t,i,r,e),this._simplifyDPStep(n,t,i,e,u))},_reducePoints:function(n,t){for(var r=[n[0]],i=1,u=0,f=n.length;i<f;i++)this._sqDist(n[i],n[u])>t&&(r.push(n[i]),u=i);return u<f-1&&r.push(n[f-1]),r},clipSegment:function(n,t,i,r,u){var f=r?this._lastCode:this._getBitCode(n,i),e=this._getBitCode(t,i),s,o,h;for(this._lastCode=e;;){if(!(f|e))return[n,t];if(f&e)return!1;s=f||e;o=this._getEdgeIntersection(n,t,s,i,u);h=this._getBitCode(o,i);s===f?(n=o,f=h):(t=o,e=h)}},_getEdgeIntersection:function(n,t,i,u,f){var s=t.x-n.x,h=t.y-n.y,c=u.min,l=u.max,e,o;return i&8?(e=n.x+s*(l.y-n.y)/h,o=l.y):i&4?(e=n.x+s*(c.y-n.y)/h,o=c.y):i&2?(e=l.x,o=n.y+h*(l.x-n.x)/s):i&1&&(e=c.x,o=n.y+h*(c.x-n.x)/s),new r.Point(e,o,f)},_getBitCode:function(n,t){var i=0;return n.x<t.min.x?i|=1:n.x>t.max.x&&(i|=2),n.y<t.min.y?i|=4:n.y>t.max.y&&(i|=8),i},_sqDist:function(n,t){var i=t.x-n.x,r=t.y-n.y;return i*i+r*r},_sqClosestPointOnSegment:function(n,t,i,u){var o=t.x,s=t.y,f=i.x-o,e=i.y-s,c=f*f+e*e,h;return c>0&&(h=((n.x-o)*f+(n.y-s)*e)/c,h>1?(o=i.x,s=i.y):h>0&&(o+=f*h,s+=e*h)),f=n.x-o,e=n.y-s,u?f*f+e*e:new r.Point(o,s)}};r.Polyline=r.Path.extend({options:{smoothFactor:1,noClip:!1},initialize:function(n,t){r.setOptions(this,t);this._setLatLngs(n)},getLatLngs:function(){return this._latlngs},setLatLngs:function(n){return this._setLatLngs(n),this.redraw()},isEmpty:function(){return!this._latlngs.length},closestLayerPoint:function(n){for(var u,t,l,h,f=Infinity,i=null,c=r.LineUtil._sqClosestPointOnSegment,e,o,s=0,a=this._parts.length;s<a;s++)for(u=this._parts[s],t=1,l=u.length;t<l;t++)e=u[t-1],o=u[t],h=c(n,e,o,!0),h<f&&(f=h,i=c(n,e,o));return i&&(i.distance=Math.sqrt(f)),i},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");var n,r,e,u,f,t,o,i=this._rings[0],s=i.length;if(!s)return null;for(n=0,r=0;n<s-1;n++)r+=i[n].distanceTo(i[n+1])/2;if(r===0)return this._map.layerPointToLatLng(i[0]);for(n=0,u=0;n<s-1;n++)if(f=i[n],t=i[n+1],e=f.distanceTo(t),u+=e,u>r)return o=(u-r)/e,this._map.layerPointToLatLng([t.x-o*(t.x-f.x),t.y-o*(t.y-f.y)])},getBounds:function(){return this._bounds},addLatLng:function(n,t){return t=t||this._defaultShape(),n=r.latLng(n),t.push(n),this._bounds.extend(n),this.redraw()},_setLatLngs:function(n){this._bounds=new r.LatLngBounds;this._latlngs=this._convertLatLngs(n)},_defaultShape:function(){return r.Polyline._flat(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(n){for(var i=[],u=r.Polyline._flat(n),t=0,f=n.length;t<f;t++)u?(i[t]=r.latLng(n[t]),this._bounds.extend(i[t])):i[t]=this._convertLatLngs(n[t]);return i},_project:function(){var n=new r.Bounds,t,i;this._rings=[];this._projectLatlngs(this._latlngs,this._rings,n);t=this._clickTolerance();i=new r.Point(t,t);this._bounds.isValid()&&n.isValid()&&(n.min._subtract(i),n.max._add(i),this._pxBounds=n)},_projectLatlngs:function(n,t,i){var o=n[0]instanceof r.LatLng,e=n.length,u,f;if(o){for(f=[],u=0;u<e;u++)f[u]=this._map.latLngToLayerPoint(n[u]),i.extend(f[u]);t.push(f)}else for(u=0;u<e;u++)this._projectLatlngs(n[u],t,i)},_clipPoints:function(){var s=this._renderer._bounds,i,e,n,t,h,o,u,f;if(this._parts=[],this._pxBounds&&this._pxBounds.intersects(s)){if(this.options.noClip){this._parts=this._rings;return}for(i=this._parts,e=0,t=0,h=this._rings.length;e<h;e++)for(f=this._rings[e],n=0,o=f.length;n<o-1;n++)(u=r.LineUtil.clipSegment(f[n],f[n+1],s,n,!0),u)&&(i[t]=i[t]||[],i[t].push(u[0]),(u[1]!==f[n+1]||n===o-2)&&(i[t].push(u[1]),t++))}},_simplifyPoints:function(){for(var t=this._parts,i=this.options.smoothFactor,n=0,u=t.length;n<u;n++)t[n]=r.LineUtil.simplify(t[n],i)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)}});r.polyline=function(n,t){return new r.Polyline(n,t)};r.Polyline._flat=function(n){return!r.Util.isArray(n[0])||typeof n[0][0]!="object"&&typeof n[0][0]!="undefined"};r.PolyUtil={};r.PolyUtil.clipPolygon=function(n,t,i){for(var o,y=[1,4,2,8],v,a,s,h,e,f,l=r.LineUtil,u=0,c=n.length;u<c;u++)n[u]._code=l._getBitCode(n[u],t);for(a=0;a<4;a++){for(e=y[a],o=[],u=0,c=n.length,v=c-1;u<c;v=u++)s=n[u],h=n[v],s._code&e?h._code&e||(f=l._getEdgeIntersection(h,s,e,t,i),f._code=l._getBitCode(f,t),o.push(f)):(h._code&e&&(f=l._getEdgeIntersection(h,s,e,t,i),f._code=l._getBitCode(f,t),o.push(f)),o.push(s));n=o}return n};r.Polygon=r.Polyline.extend({options:{fill:!0},isEmpty:function(){return!this._latlngs.length||!this._latlngs[0].length},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");var r,e,n,t,u,i,o,s,c,f=this._rings[0],h=f.length;if(!h)return null;for(i=o=s=0,r=0,e=h-1;r<h;e=r++)n=f[r],t=f[e],u=n.y*t.x-t.y*n.x,o+=(n.x+t.x)*u,s+=(n.y+t.y)*u,i+=u*3;return c=i===0?f[0]:[o/i,s/i],this._map.layerPointToLatLng(c)},_convertLatLngs:function(n){var t=r.Polyline.prototype._convertLatLngs.call(this,n),i=t.length;return i>=2&&t[0]instanceof r.LatLng&&t[0].equals(t[i-1])&&t.pop(),t},_setLatLngs:function(n){r.Polyline.prototype._setLatLngs.call(this,n);r.Polyline._flat(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return r.Polyline._flat(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var n=this._renderer._bounds,u=this.options.weight,f=new r.Point(u,u),t,e,i;if(n=new r.Bounds(n.min.subtract(f),n.max.add(f)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(n)){if(this.options.noClip){this._parts=this._rings;return}for(t=0,e=this._rings.length;t<e;t++)i=r.PolyUtil.clipPolygon(this._rings[t],n,!0),i.length&&this._parts.push(i)}},_updatePath:function(){this._renderer._updatePoly(this,!0)}});r.polygon=function(n,t){return new r.Polygon(n,t)};r.Rectangle=r.Polygon.extend({initialize:function(n,t){r.Polygon.prototype.initialize.call(this,this._boundsToLatLngs(n),t)},setBounds:function(n){return this.setLatLngs(this._boundsToLatLngs(n))},_boundsToLatLngs:function(n){return n=r.latLngBounds(n),[n.getSouthWest(),n.getNorthWest(),n.getNorthEast(),n.getSouthEast()]}});r.rectangle=function(n,t){return new r.Rectangle(n,t)};r.CircleMarker=r.Path.extend({options:{fill:!0,radius:10},initialize:function(n,t){r.setOptions(this,t);this._latlng=r.latLng(n);this._radius=this.options.radius},setLatLng:function(n){return this._latlng=r.latLng(n),this.redraw(),this.fire("move",{latlng:this._latlng})},getLatLng:function(){return this._latlng},setRadius:function(n){return this.options.radius=this._radius=n,this.redraw()},getRadius:function(){return this._radius},setStyle:function(n){var t=n&&n.radius||this._radius;return r.Path.prototype.setStyle.call(this,n),this.setRadius(t),this},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng);this._updateBounds()},_updateBounds:function(){var n=this._radius,u=this._radiusY||n,t=this._clickTolerance(),i=[n+t,u+t];this._pxBounds=new r.Bounds(this._point.subtract(i),this._point.add(i))},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateCircle(this)},_empty:function(){return this._radius&&!this._renderer._bounds.intersects(this._pxBounds)}});r.circleMarker=function(n,t){return new r.CircleMarker(n,t)};r.Circle=r.CircleMarker.extend({initialize:function(n,t,i){if(typeof t=="number"&&(t=r.extend({},i,{radius:t})),r.setOptions(this,t),this._latlng=r.latLng(n),isNaN(this.options.radius))throw new Error("Circle radius cannot be NaN");this._mRadius=this.options.radius},setRadius:function(n){return this._mRadius=n,this.redraw()},getRadius:function(){return this._mRadius},getBounds:function(){var n=[this._radius,this._radiusY||this._radius];return new r.LatLngBounds(this._map.layerPointToLatLng(this._point.subtract(n)),this._map.layerPointToLatLng(this._point.add(n)))},setStyle:r.Path.prototype.setStyle,_project:function(){var o=this._latlng.lng,i=this._latlng.lat,n=this._map,s=n.options.crs,l;if(s.distance===r.CRS.Earth.distance){var t=Math.PI/180,f=this._mRadius/r.CRS.Earth.R/t,c=n.project([i+f,o]),a=n.project([i-f,o]),e=c.add(a).divideBy(2),h=n.unproject(e).lat,u=Math.acos((Math.cos(f*t)-Math.sin(i*t)*Math.sin(h*t))/(Math.cos(i*t)*Math.cos(h*t)))/t;(isNaN(u)||u===0)&&(u=f/Math.cos(Math.PI/180*i));this._point=e.subtract(n.getPixelOrigin());this._radius=isNaN(u)?0:Math.max(Math.round(e.x-n.project([h,o-u]).x),1);this._radiusY=Math.max(Math.round(e.y-c.y),1)}else l=s.unproject(s.project(this._latlng).subtract([this._mRadius,0])),this._point=n.latLngToLayerPoint(this._latlng),this._radius=this._point.x-n.latLngToLayerPoint(l).x;this._updateBounds()}});r.circle=function(n,t,i){return new r.Circle(n,t,i)};r.SVG=r.Renderer.extend({getEvents:function(){var n=r.Renderer.prototype.getEvents.call(this);return n.zoomstart=this._onZoomStart,n},_initContainer:function(){this._container=r.SVG.create("svg");this._container.setAttribute("pointer-events","none");this._rootGroup=r.SVG.create("g");this._container.appendChild(this._rootGroup)},_onZoomStart:function(){this._update()},_update:function(){if(!this._map._animatingZoom||!this._bounds){r.Renderer.prototype._update.call(this);var t=this._bounds,n=t.getSize(),i=this._container;this._svgSize&&this._svgSize.equals(n)||(this._svgSize=n,i.setAttribute("width",n.x),i.setAttribute("height",n.y));r.DomUtil.setPosition(i,t.min);i.setAttribute("viewBox",[t.min.x,t.min.y,n.x,n.y].join(" "));this.fire("update")}},_initPath:function(n){var t=n._path=r.SVG.create("path");n.options.className&&r.DomUtil.addClass(t,n.options.className);n.options.interactive&&r.DomUtil.addClass(t,"leaflet-interactive");this._updateStyle(n);this._layers[r.stamp(n)]=n},_addPath:function(n){this._rootGroup.appendChild(n._path);n.addInteractiveTarget(n._path)},_removePath:function(n){r.DomUtil.remove(n._path);n.removeInteractiveTarget(n._path);delete this._layers[r.stamp(n)]},_updatePath:function(n){n._project();n._update()},_updateStyle:function(n){var t=n._path,i=n.options;t&&(i.stroke?(t.setAttribute("stroke",i.color),t.setAttribute("stroke-opacity",i.opacity),t.setAttribute("stroke-width",i.weight),t.setAttribute("stroke-linecap",i.lineCap),t.setAttribute("stroke-linejoin",i.lineJoin),i.dashArray?t.setAttribute("stroke-dasharray",i.dashArray):t.removeAttribute("stroke-dasharray"),i.dashOffset?t.setAttribute("stroke-dashoffset",i.dashOffset):t.removeAttribute("stroke-dashoffset")):t.setAttribute("stroke","none"),i.fill?(t.setAttribute("fill",i.fillColor||i.color),t.setAttribute("fill-opacity",i.fillOpacity),t.setAttribute("fill-rule",i.fillRule||"evenodd")):t.setAttribute("fill","none"))},_updatePoly:function(n,t){this._setPath(n,r.SVG.pointsToPath(n._parts,t))},_updateCircle:function(n){var i=n._point,t=n._radius,u=n._radiusY||t,r="a"+t+","+u+" 0 1,0 ",f=n._empty()?"M0 0":"M"+(i.x-t)+","+i.y+r+t*2+",0 "+r+-t*2+",0 ";this._setPath(n,f)},_setPath:function(n,t){n._path.setAttribute("d",t)},_bringToFront:function(n){r.DomUtil.toFront(n._path)},_bringToBack:function(n){r.DomUtil.toBack(n._path)}});r.extend(r.SVG,{create:function(n){return t.createElementNS("http://www.w3.org/2000/svg",n)},pointsToPath:function(n,t){for(var f="",i,h,e,o,u=0,s=n.length;u<s;u++){for(e=n[u],i=0,h=e.length;i<h;i++)o=e[i],f+=(i?"L":"M")+o.x+" "+o.y;f+=t?r.Browser.svg?"z":"x":""}return f||"M0 0"}});r.Browser.svg=!!(t.createElementNS&&r.SVG.create("svg").createSVGRect);r.svg=function(n){return r.Browser.svg||r.Browser.vml?new r.SVG(n):null};r.Browser.vml=!r.Browser.svg&&function(){var i,n;try{return i=t.createElement("div"),i.innerHTML='<v:shape adj="1"/>',n=i.firstChild,n.style.behavior="url(#default#VML)",n&&typeof n.adj=="object"}catch(r){return!1}}();r.SVG.include(r.Browser.vml?{_initContainer:function(){this._container=r.DomUtil.create("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(r.Renderer.prototype._update.call(this),this.fire("update"))},_initPath:function(n){var t=n._container=r.SVG.create("shape");r.DomUtil.addClass(t,"leaflet-vml-shape "+(this.options.className||""));t.coordsize="1 1";n._path=r.SVG.create("path");t.appendChild(n._path);this._updateStyle(n)},_addPath:function(n){var t=n._container;this._container.appendChild(t);n.options.interactive&&n.addInteractiveTarget(t)},_removePath:function(n){var t=n._container;r.DomUtil.remove(t);n.removeInteractiveTarget(t)},_updateStyle:function(n){var i=n._stroke,u=n._fill,t=n.options,f=n._container;f.stroked=!!t.stroke;f.filled=!!t.fill;t.stroke?(i||(i=n._stroke=r.SVG.create("stroke")),f.appendChild(i),i.weight=t.weight+"px",i.color=t.color,i.opacity=t.opacity,i.dashStyle=t.dashArray?r.Util.isArray(t.dashArray)?t.dashArray.join(" "):t.dashArray.replace(/( *, *)/g," "):"",i.endcap=t.lineCap.replace("butt","flat"),i.joinstyle=t.lineJoin):i&&(f.removeChild(i),n._stroke=null);t.fill?(u||(u=n._fill=r.SVG.create("fill")),f.appendChild(u),u.color=t.fillColor||t.color,u.opacity=t.fillOpacity):u&&(f.removeChild(u),n._fill=null)},_updateCircle:function(n){var t=n._point.round(),i=Math.round(n._radius),r=Math.round(n._radiusY||i);this._setPath(n,n._empty()?"M0 0":"AL "+t.x+","+t.y+" "+i+","+r+" 0,23592600")},_setPath:function(n,t){n._path.v=t},_bringToFront:function(n){r.DomUtil.toFront(n._container)},_bringToBack:function(n){r.DomUtil.toBack(n._container)}}:{});r.Browser.vml&&(r.SVG.create=function(){try{return t.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(n){return t.createElement("<lvml:"+n+' class="lvml">')}}catch(n){return function(n){return t.createElement("<"+n+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}}());r.Canvas=r.Renderer.extend({onAdd:function(){r.Renderer.prototype.onAdd.call(this);this._draw()},_initContainer:function(){var n=this._container=t.createElement("canvas");r.DomEvent.on(n,"mousemove",r.Util.throttle(this._onMouseMove,32,this),this).on(n,"click dblclick mousedown mouseup contextmenu",this._onClick,this).on(n,"mouseout",this._handleMouseOut,this);this._ctx=n.getContext("2d")},_updatePaths:function(){var n,t;this._redrawBounds=null;for(t in this._layers)n=this._layers[t],n._update();this._redraw()},_update:function(){if(!this._map._animatingZoom||!this._bounds){this._drawnLayers={};r.Renderer.prototype._update.call(this);var t=this._bounds,n=this._container,i=t.getSize(),u=r.Browser.retina?2:1;r.DomUtil.setPosition(n,t.min);n.width=u*i.x;n.height=u*i.y;n.style.width=i.x+"px";n.style.height=i.y+"px";r.Browser.retina&&this._ctx.scale(2,2);this._ctx.translate(-t.min.x,-t.min.y);this.fire("update")}},_initPath:function(n){this._updateDashArray(n);this._layers[r.stamp(n)]=n;var t=n._order={layer:n,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=t);this._drawLast=t;this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(n){this._requestRedraw(n)},_removePath:function(n){var u=n._order,t=u.next,i=u.prev;t?t.prev=i:this._drawLast=i;i?i.next=t:this._drawFirst=t;delete n._order;delete this._layers[r.stamp(n)];this._requestRedraw(n)},_updatePath:function(n){this._extendRedrawBounds(n);n._project();n._update();this._requestRedraw(n)},_updateStyle:function(n){this._updateDashArray(n);this._requestRedraw(n)},_updateDashArray:function(n){if(n.options.dashArray){for(var i=n.options.dashArray.split(","),r=[],t=0;t<i.length;t++)r.push(Number(i[t]));n.options._dashArray=r}},_requestRedraw:function(n){this._map&&(this._extendRedrawBounds(n),this._redrawRequest=this._redrawRequest||r.Util.requestAnimFrame(this._redraw,this))},_extendRedrawBounds:function(n){var t=(n.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new r.Bounds;this._redrawBounds.extend(n._pxBounds.min.subtract([t,t]));this._redrawBounds.extend(n._pxBounds.max.add([t,t]))},_redraw:function(){this._redrawRequest=null;this._clear();this._draw();this._redrawBounds=null},_clear:function(){var n=this._redrawBounds,t;n?(t=n.getSize(),this._ctx.clearRect(n.min.x,n.min.y,t.x,t.y)):this._ctx.clearRect(0,0,this._container.width,this._container.height)},_draw:function(){var i,n=this._redrawBounds,r,t;for(this._ctx.save(),n&&(r=n.getSize(),this._ctx.beginPath(),this._ctx.rect(n.min.x,n.min.y,r.x,r.y),this._ctx.clip()),this._drawing=!0,t=this._drawFirst;t;t=t.next)i=t.layer,(!n||i._pxBounds&&i._pxBounds.intersects(n))&&i._updatePath();this._drawing=!1;this._ctx.restore()},_updatePoly:function(n,t){if(this._drawing){var r,u,o,f,e=n._parts,s=e.length,i=this._ctx;if(s){for(this._drawnLayers[n._leaflet_id]=n,i.beginPath(),i.setLineDash&&i.setLineDash(n.options&&n.options._dashArray||[]),r=0;r<s;r++){for(u=0,o=e[r].length;u<o;u++)f=e[r][u],i[u?"lineTo":"moveTo"](f.x,f.y);t&&i.closePath()}this._fillStroke(i,n)}}},_updateCircle:function(n){if(this._drawing&&!n._empty()){var u=n._point,t=this._ctx,r=n._radius,i=(n._radiusY||r)/r;this._drawnLayers[n._leaflet_id]=n;i!==1&&(t.save(),t.scale(1,i));t.beginPath();t.arc(u.x,u.y/i,r,0,Math.PI*2,!1);i!==1&&t.restore();this._fillStroke(t,n)}},_fillStroke:function(n,t){var i=t.options;i.fill&&(n.globalAlpha=i.fillOpacity,n.fillStyle=i.fillColor||i.color,n.fill(i.fillRule||"evenodd"));i.stroke&&i.weight!==0&&(n.globalAlpha=i.opacity,n.lineWidth=i.weight,n.strokeStyle=i.color,n.lineCap=i.lineCap,n.lineJoin=i.lineJoin,n.stroke())},_onClick:function(n){for(var f=this._map.mouseEventToLayerPoint(n),t,u,i=this._drawFirst;i;i=i.next)t=i.layer,t.options.interactive&&t._containsPoint(f)&&!this._map._draggableMoved(t)&&(u=t);u&&(r.DomEvent._fakeStop(n),this._fireEvent([u],n))},_onMouseMove:function(n){if(this._map&&!this._map.dragging.moving()&&!this._map._animatingZoom){var t=this._map.mouseEventToLayerPoint(n);this._handleMouseHover(n,t)}},_handleMouseOut:function(n){var t=this._hoveredLayer;t&&(r.DomUtil.removeClass(this._container,"leaflet-interactive"),this._fireEvent([t],n,"mouseout"),this._hoveredLayer=null)},_handleMouseHover:function(n,t){for(var u,i,f=this._drawFirst;f;f=f.next)u=f.layer,u.options.interactive&&u._containsPoint(t)&&(i=u);i!==this._hoveredLayer&&(this._handleMouseOut(n),i&&(r.DomUtil.addClass(this._container,"leaflet-interactive"),this._fireEvent([i],n,"mouseover"),this._hoveredLayer=i));this._hoveredLayer&&this._fireEvent([this._hoveredLayer],n)},_fireEvent:function(n,t,i){this._map._fireDOMEvent(t,i||t.type,n)},_bringToFront:function(n){var t=n._order,i=t.next,r=t.prev;if(i)i.prev=r;else return;r?r.next=i:i&&(this._drawFirst=i);t.prev=this._drawLast;this._drawLast.next=t;t.next=null;this._drawLast=t;this._requestRedraw(n)},_bringToBack:function(n){var t=n._order,r=t.next,i=t.prev;if(i)i.next=r;else return;r?r.prev=i:i&&(this._drawLast=i);t.prev=null;t.next=this._drawFirst;this._drawFirst.prev=t;this._drawFirst=t;this._requestRedraw(n)}});r.Browser.canvas=function(){return!!t.createElement("canvas").getContext}();r.canvas=function(n){return r.Browser.canvas?new r.Canvas(n):null};r.Polyline.prototype._containsPoint=function(n,t){var u,i,e,s,o,f,h=this._clickTolerance();if(!this._pxBounds.contains(n))return!1;for(u=0,s=this._parts.length;u<s;u++)for(f=this._parts[u],i=0,o=f.length,e=o-1;i<o;e=i++)if((t||i!==0)&&r.LineUtil.pointToSegmentDistance(n,f[e],f[i])<=h)return!0;return!1};r.Polygon.prototype._containsPoint=function(n){var o=!1,i,t,u,f,e,s,c,h;if(!this._pxBounds.contains(n))return!1;for(f=0,c=this._parts.length;f<c;f++)for(i=this._parts[f],e=0,h=i.length,s=h-1;e<h;s=e++)t=i[e],u=i[s],t.y>n.y!=u.y>n.y&&n.x<(u.x-t.x)*(n.y-t.y)/(u.y-t.y)+t.x&&(o=!o);return o||r.Polyline.prototype._containsPoint.call(this,n,!0)};r.CircleMarker.prototype._containsPoint=function(n){return n.distanceTo(this._point)<=this._radius+this._clickTolerance()};r.GeoJSON=r.FeatureGroup.extend({initialize:function(n,t){r.setOptions(this,t);this._layers={};n&&this.addData(n)},addData:function(n){var e=r.Util.isArray(n)?n:n.features,f,o,i,u,t;if(e){for(f=0,o=e.length;f<o;f++)i=e[f],(i.geometries||i.geometry||i.features||i.coordinates)&&this.addData(i);return this}if((u=this.options,u.filter&&!u.filter(n))||(t=r.GeoJSON.geometryToLayer(n,u),!t))return this;if(t.feature=r.GeoJSON.asFeature(n),t.defaultOptions=t.options,this.resetStyle(t),u.onEachFeature)u.onEachFeature(n,t);return this.addLayer(t)},resetStyle:function(n){return n.options=r.Util.extend({},n.defaultOptions),this._setLayerStyle(n,this.options.style),this},setStyle:function(n){return this.eachLayer(function(t){this._setLayerStyle(t,n)},this)},_setLayerStyle:function(n,t){typeof t=="function"&&(t=t(n.feature));n.setStyle&&n.setStyle(t)}});r.extend(r.GeoJSON,{geometryToLayer:function(n,t){var i=n.type==="Feature"?n.geometry:n,f=i?i.coordinates:null,o=[],s=t&&t.pointToLayer,h=t&&t.coordsToLatLng||this.coordsToLatLng,e,c,u,l,a;if(!f&&!i)return null;switch(i.type){case"Point":return e=h(f),s?s(n,e):new r.Marker(e);case"MultiPoint":for(u=0,l=f.length;u<l;u++)e=h(f[u]),o.push(s?s(n,e):new r.Marker(e));return new r.FeatureGroup(o);case"LineString":case"MultiLineString":return c=this.coordsToLatLngs(f,i.type==="LineString"?0:1,h),new r.Polyline(c,t);case"Polygon":case"MultiPolygon":return c=this.coordsToLatLngs(f,i.type==="Polygon"?1:2,h),new r.Polygon(c,t);case"GeometryCollection":for(u=0,l=i.geometries.length;u<l;u++)a=this.geometryToLayer({geometry:i.geometries[u],type:"Feature",properties:n.properties},t),a&&o.push(a);return new r.FeatureGroup(o);default:throw new Error("Invalid GeoJSON object.");}},coordsToLatLng:function(n){return new r.LatLng(n[1],n[0],n[2])},coordsToLatLngs:function(n,t,i){for(var u=[],r=0,e=n.length,f;r<e;r++)f=t?this.coordsToLatLngs(n[r],t-1,i):(i||this.coordsToLatLng)(n[r]),u.push(f);return u},latLngToCoords:function(n){return n.alt!==i?[n.lng,n.lat,n.alt]:[n.lng,n.lat]},latLngsToCoords:function(n,t,i){for(var u=[],f=0,e=n.length;f<e;f++)u.push(t?r.GeoJSON.latLngsToCoords(n[f],t-1,i):r.GeoJSON.latLngToCoords(n[f]));return!t&&i&&u.push(u[0]),u},getFeature:function(n,t){return n.feature?r.extend({},n.feature,{geometry:t}):r.GeoJSON.asFeature(t)},asFeature:function(n){return n.type==="Feature"||n.type==="FeatureCollection"?n:{type:"Feature",properties:{},geometry:n}}});e={toGeoJSON:function(){return r.GeoJSON.getFeature(this,{type:"Point",coordinates:r.GeoJSON.latLngToCoords(this.getLatLng())})}};r.Marker.include(e);r.Circle.include(e);r.CircleMarker.include(e);r.Polyline.prototype.toGeoJSON=function(){var n=!r.Polyline._flat(this._latlngs),t=r.GeoJSON.latLngsToCoords(this._latlngs,n?1:0);return r.GeoJSON.getFeature(this,{type:(n?"Multi":"")+"LineString",coordinates:t})};r.Polygon.prototype.toGeoJSON=function(){var n=!r.Polyline._flat(this._latlngs),i=n&&!r.Polyline._flat(this._latlngs[0]),t=r.GeoJSON.latLngsToCoords(this._latlngs,i?2:n?1:0,!0);return n||(t=[t]),r.GeoJSON.getFeature(this,{type:(i?"Multi":"")+"Polygon",coordinates:t})};r.LayerGroup.include({toMultiPoint:function(){var n=[];return this.eachLayer(function(t){n.push(t.toGeoJSON().geometry.coordinates)}),r.GeoJSON.getFeature(this,{type:"MultiPoint",coordinates:n})},toGeoJSON:function(){var i=this.feature&&this.feature.geometry&&this.feature.geometry.type,t,n;return i==="MultiPoint"?this.toMultiPoint():(t=i==="GeometryCollection",n=[],this.eachLayer(function(i){if(i.toGeoJSON){var u=i.toGeoJSON();n.push(t?u.geometry:r.GeoJSON.asFeature(u))}}),t)?r.GeoJSON.getFeature(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}});r.geoJSON=function(n,t){return new r.GeoJSON(n,t)};r.geoJson=r.geoJSON;r.Draggable=r.Evented.extend({options:{clickTolerance:3},statics:{START:r.Browser.touch?["touchstart","mousedown"]:["mousedown"],END:{mousedown:"mouseup",touchstart:"touchend",pointerdown:"touchend",MSPointerDown:"touchend"},MOVE:{mousedown:"mousemove",touchstart:"touchmove",pointerdown:"touchmove",MSPointerDown:"touchmove"}},initialize:function(n,t,i){this._element=n;this._dragStartTarget=t||n;this._preventOutline=i},enable:function(){if(!this._enabled){r.DomEvent.on(this._dragStartTarget,r.Draggable.START.join(" "),this._onDown,this);this._enabled=!0}},disable:function(){this._enabled&&(r.Draggable._dragging===this&&this.finishDrag(),r.DomEvent.off(this._dragStartTarget,r.Draggable.START.join(" "),this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(n){if(!n._simulated&&this._enabled&&(this._moved=!1,!r.DomUtil.hasClass(this._element,"leaflet-zoom-anim"))&&!r.Draggable._dragging&&!n.shiftKey&&(n.which===1||n.button===1||n.touches)&&(r.Draggable._dragging=this,this._preventOutline&&r.DomUtil.preventOutline(this._element),r.DomUtil.disableImageDrag(),r.DomUtil.disableTextSelection(),!this._moving)){this.fire("down");var i=n.touches?n.touches[0]:n;this._startPoint=new r.Point(i.clientX,i.clientY);r.DomEvent.on(t,r.Draggable.MOVE[n.type],this._onMove,this).on(t,r.Draggable.END[n.type],this._onUp,this)}},_onMove:function(i){if(!i._simulated&&this._enabled){if(i.touches&&i.touches.length>1){this._moved=!0;return}var f=i.touches&&i.touches.length===1?i.touches[0]:i,e=new r.Point(f.clientX,f.clientY),u=e.subtract(this._startPoint);(u.x||u.y)&&(Math.abs(u.x)+Math.abs(u.y)<this.options.clickTolerance||(r.DomEvent.preventDefault(i),this._moved||(this.fire("dragstart"),this._moved=!0,this._startPos=r.DomUtil.getPosition(this._element).subtract(u),r.DomUtil.addClass(t.body,"leaflet-dragging"),this._lastTarget=i.target||i.srcElement,n.SVGElementInstance&&this._lastTarget instanceof SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),r.DomUtil.addClass(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(u),this._moving=!0,r.Util.cancelAnimFrame(this._animRequest),this._lastEvent=i,this._animRequest=r.Util.requestAnimFrame(this._updatePosition,this,!0)))}},_updatePosition:function(){var n={originalEvent:this._lastEvent};this.fire("predrag",n);r.DomUtil.setPosition(this._element,this._newPos);this.fire("drag",n)},_onUp:function(n){!n._simulated&&this._enabled&&this.finishDrag()},finishDrag:function(){r.DomUtil.removeClass(t.body,"leaflet-dragging");this._lastTarget&&(r.DomUtil.removeClass(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null);for(var n in r.Draggable.MOVE)r.DomEvent.off(t,r.Draggable.MOVE[n],this._onMove,this).off(t,r.Draggable.END[n],this._onUp,this);r.DomUtil.enableImageDrag();r.DomUtil.enableTextSelection();this._moved&&this._moving&&(r.Util.cancelAnimFrame(this._animRequest),this.fire("dragend",{distance:this._newPos.distanceTo(this._startPos)}));this._moving=!1;r.Draggable._dragging=!1}});r.Handler=r.Class.extend({initialize:function(n){this._map=n},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});r.Map.mergeOptions({dragging:!0,inertia:!r.Browser.android23,inertiaDeceleration:3400,inertiaMaxSpeed:Infinity,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});r.Map.Drag=r.Handler.extend({addHooks:function(){if(!this._draggable){var n=this._map;this._draggable=new r.Draggable(n._mapPane,n._container);this._draggable.on({down:this._onDown,dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this);this._draggable.on("predrag",this._onPreDragLimit,this);if(n.options.worldCopyJump){this._draggable.on("predrag",this._onPreDragWrap,this);n.on("zoomend",this._onZoomEnd,this);n.whenReady(this._onZoomEnd,this)}}r.DomUtil.addClass(this._map._container,"leaflet-grab leaflet-touch-drag");this._draggable.enable();this._positions=[];this._times=[]},removeHooks:function(){r.DomUtil.removeClass(this._map._container,"leaflet-grab");r.DomUtil.removeClass(this._map._container,"leaflet-touch-drag");this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDown:function(){this._map._stop()},_onDragStart:function(){var t=this._map,n;this._map.options.maxBounds&&this._map.options.maxBoundsViscosity?(n=r.latLngBounds(this._map.options.maxBounds),this._offsetLimit=r.bounds(this._map.latLngToContainerPoint(n.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(n.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))):this._offsetLimit=null;t.fire("movestart").fire("dragstart");t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(n){if(this._map.options.inertia){var t=this._lastTime=+new Date,i=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(i);this._times.push(t);t-this._times[0]>50&&(this._positions.shift(),this._times.shift())}this._map.fire("move",n).fire("drag",n)},_onZoomEnd:function(){var n=this._map.getSize().divideBy(2),t=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=t.subtract(n).x;this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(n,t){return n-(n-t)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var n=this._draggable._newPos.subtract(this._draggable._startPos),t=this._offsetLimit;n.x<t.min.x&&(n.x=this._viscousLimit(n.x,t.min.x));n.y<t.min.y&&(n.y=this._viscousLimit(n.y,t.min.y));n.x>t.max.x&&(n.x=this._viscousLimit(n.x,t.max.x));n.y>t.max.y&&(n.y=this._viscousLimit(n.y,t.max.y));this._draggable._newPos=this._draggable._startPos.add(n)}},_onPreDragWrap:function(){var i=this._worldWidth,t=Math.round(i/2),n=this._initialWorldOffset,r=this._draggable._newPos.x,u=(r-t+n)%i+t-n,f=(r+t+n)%i-t-n,e=Math.abs(u+n)<Math.abs(f+n)?u:f;this._draggable._absPos=this._draggable._newPos.clone();this._draggable._newPos.x=e},_onDragEnd:function(n){var t=this._map,u=t.options,c=!u.inertia||this._times.length<2;if(t.fire("dragend",n),c)t.fire("moveend");else{var l=this._lastPos.subtract(this._positions[0]),a=(this._lastTime-this._times[0])/1e3,f=u.easeLinearity,e=l.multiplyBy(f/a),o=e.distanceTo([0,0]),s=Math.min(u.inertiaMaxSpeed,o),v=e.multiplyBy(s/o),h=s/(u.inertiaDeceleration*f),i=v.multiplyBy(-h/2).round();i.x||i.y?(i=t._limitOffset(i,t.options.maxBounds),r.Util.requestAnimFrame(function(){t.panBy(i,{duration:h,easeLinearity:f,noMoveStart:!0,animate:!0})})):t.fire("moveend")}}});r.Map.addInitHook("addHandler","dragging",r.Map.Drag);r.Map.mergeOptions({doubleClickZoom:!0});r.Map.DoubleClickZoom=r.Handler.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(n){var t=this._map,i=t.getZoom(),r=t.options.zoomDelta,u=n.originalEvent.shiftKey?i-r:i+r;t.options.doubleClickZoom==="center"?t.setZoom(u):t.setZoomAround(n.containerPoint,u)}});r.Map.addInitHook("addHandler","doubleClickZoom",r.Map.DoubleClickZoom);r.Map.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});r.Map.ScrollWheelZoom=r.Handler.extend({addHooks:function(){r.DomEvent.on(this._map._container,"mousewheel",this._onWheelScroll,this);this._delta=0},removeHooks:function(){r.DomEvent.off(this._map._container,"mousewheel",this._onWheelScroll,this)},_onWheelScroll:function(n){var i=r.DomEvent.getWheelDelta(n),u=this._map.options.wheelDebounceTime,t;this._delta+=i;this._lastMousePos=this._map.mouseEventToContainerPoint(n);this._startTime||(this._startTime=+new Date);t=Math.max(u-(+new Date-this._startTime),0);clearTimeout(this._timer);this._timer=setTimeout(r.bind(this._performZoom,this),t);r.DomEvent.stop(n)},_performZoom:function(){var n=this._map,t=n.getZoom(),i=this._map.options.zoomSnap||0;n._stop();var e=this._delta/(this._map.options.wheelPxPerZoomLevel*4),u=4*Math.log(2/(1+Math.exp(-Math.abs(e))))/Math.LN2,f=i?Math.ceil(u/i)*i:u,r=n._limitZoom(t+(this._delta>0?f:-f))-t;(this._delta=0,this._startTime=null,r)&&(n.options.scrollWheelZoom==="center"?n.setZoom(t+r):n.setZoomAround(this._lastMousePos,t+r))}});r.Map.addInitHook("addHandler","scrollWheelZoom",r.Map.ScrollWheelZoom);r.extend(r.DomEvent,{_touchstart:r.Browser.msPointer?"MSPointerDown":r.Browser.pointer?"pointerdown":"touchstart",_touchend:r.Browser.msPointer?"MSPointerUp":r.Browser.pointer?"pointerup":"touchend",addDoubleTapListener:function(n,t,i){function s(n){var e,t,i;(e=r.Browser.pointer?r.DomEvent._pointersCount:n.touches.length,e>1)||(t=Date.now(),i=t-(f||t),u=n.touches?n.touches[0]:n,o=i>0&&i<=a,f=t)}function h(){if(o&&!u.cancelBubble){if(r.Browser.pointer){var i={},n;for(var e in u)n=u[e],i[e]=n&&n.bind?n.bind(u):n;u=i}u.type="dblclick";t(u);f=null}}var f,u,o=!1,a=250,e="_leaflet_",c=this._touchstart,l=this._touchend;return n[e+c+i]=s,n[e+l+i]=h,n[e+"dblclick"+i]=t,n.addEventListener(c,s,!1),n.addEventListener(l,h,!1),r.Browser.edge||n.addEventListener("dblclick",t,!1),this},removeDoubleTapListener:function(n,t){var i="_leaflet_",u=n[i+this._touchstart+t],f=n[i+this._touchend+t],e=n[i+"dblclick"+t];return n.removeEventListener(this._touchstart,u,!1),n.removeEventListener(this._touchend,f,!1),r.Browser.edge||n.removeEventListener("dblclick",e,!1),this}});r.extend(r.DomEvent,{POINTER_DOWN:r.Browser.msPointer?"MSPointerDown":"pointerdown",POINTER_MOVE:r.Browser.msPointer?"MSPointerMove":"pointermove",POINTER_UP:r.Browser.msPointer?"MSPointerUp":"pointerup",POINTER_CANCEL:r.Browser.msPointer?"MSPointerCancel":"pointercancel",TAG_WHITE_LIST:["INPUT","SELECT","OPTION"],_pointers:{},_pointersCount:0,addPointerListener:function(n,t,i,r){return t==="touchstart"?this._addPointerStart(n,i,r):t==="touchmove"?this._addPointerMove(n,i,r):t==="touchend"&&this._addPointerEnd(n,i,r),this},removePointerListener:function(n,t,i){var r=n["_leaflet_"+t+i];return t==="touchstart"?n.removeEventListener(this.POINTER_DOWN,r,!1):t==="touchmove"?n.removeEventListener(this.POINTER_MOVE,r,!1):t==="touchend"&&(n.removeEventListener(this.POINTER_UP,r,!1),n.removeEventListener(this.POINTER_CANCEL,r,!1)),this},_addPointerStart:function(n,i,u){var e=r.bind(function(n){if(n.pointerType!=="mouse"&&n.pointerType!==n.MSPOINTER_TYPE_MOUSE)if(this.TAG_WHITE_LIST.indexOf(n.target.tagName)<0)r.DomEvent.preventDefault(n);else return;this._handlePointer(n,i)},this),f;n["_leaflet_touchstart"+u]=e;n.addEventListener(this.POINTER_DOWN,e,!1);this._pointerDocListener||(f=r.bind(this._globalPointerUp,this),t.documentElement.addEventListener(this.POINTER_DOWN,r.bind(this._globalPointerDown,this),!0),t.documentElement.addEventListener(this.POINTER_MOVE,r.bind(this._globalPointerMove,this),!0),t.documentElement.addEventListener(this.POINTER_UP,f,!0),t.documentElement.addEventListener(this.POINTER_CANCEL,f,!0),this._pointerDocListener=!0)},_globalPointerDown:function(n){this._pointers[n.pointerId]=n;this._pointersCount++},_globalPointerMove:function(n){this._pointers[n.pointerId]&&(this._pointers[n.pointerId]=n)},_globalPointerUp:function(n){delete this._pointers[n.pointerId];this._pointersCount--},_handlePointer:function(n,t){n.touches=[];for(var i in this._pointers)n.touches.push(this._pointers[i]);n.changedTouches=[n];t(n)},_addPointerMove:function(n,t,i){var u=r.bind(function(n){(n.pointerType!==n.MSPOINTER_TYPE_MOUSE&&n.pointerType!=="mouse"||n.buttons!==0)&&this._handlePointer(n,t)},this);n["_leaflet_touchmove"+i]=u;n.addEventListener(this.POINTER_MOVE,u,!1)},_addPointerEnd:function(n,t,i){var u=r.bind(function(n){this._handlePointer(n,t)},this);n["_leaflet_touchend"+i]=u;n.addEventListener(this.POINTER_UP,u,!1);n.addEventListener(this.POINTER_CANCEL,u,!1)}});r.Map.mergeOptions({touchZoom:r.Browser.touch&&!r.Browser.android23,bounceAtZoomLimits:!0});r.Map.TouchZoom=r.Handler.extend({addHooks:function(){r.DomUtil.addClass(this._map._container,"leaflet-touch-zoom");r.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){r.DomUtil.removeClass(this._map._container,"leaflet-touch-zoom");r.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(n){var i=this._map,u,f;if(n.touches&&n.touches.length===2&&!i._animatingZoom&&!this._zooming){u=i.mouseEventToContainerPoint(n.touches[0]);f=i.mouseEventToContainerPoint(n.touches[1]);this._centerPoint=i.getSize()._divideBy(2);this._startLatLng=i.containerPointToLatLng(this._centerPoint);i.options.touchZoom!=="center"&&(this._pinchStartLatLng=i.containerPointToLatLng(u.add(f)._divideBy(2)));this._startDist=u.distanceTo(f);this._startZoom=i.getZoom();this._moved=!1;this._zooming=!0;i._stop();r.DomEvent.on(t,"touchmove",this._onTouchMove,this).on(t,"touchend",this._onTouchEnd,this);r.DomEvent.preventDefault(n)}},_onTouchMove:function(n){var u,o;if(n.touches&&n.touches.length===2&&this._zooming){var t=this._map,f=t.mouseEventToContainerPoint(n.touches[0]),e=t.mouseEventToContainerPoint(n.touches[1]),i=f.distanceTo(e)/this._startDist;if(this._zoom=t.getScaleZoom(i,this._startZoom),!t.options.bounceAtZoomLimits&&(this._zoom<t.getMinZoom()&&i<1||this._zoom>t.getMaxZoom()&&i>1)&&(this._zoom=t._limitZoom(this._zoom)),t.options.touchZoom==="center"){if(this._center=this._startLatLng,i===1)return}else{if(u=f._add(e)._divideBy(2)._subtract(this._centerPoint),i===1&&u.x===0&&u.y===0)return;this._center=t.unproject(t.project(this._pinchStartLatLng,this._zoom).subtract(u),this._zoom)}this._moved||(t._moveStart(!0),this._moved=!0);r.Util.cancelAnimFrame(this._animRequest);o=r.bind(t._move,t,this._center,this._zoom,{pinch:!0,round:!1});this._animRequest=r.Util.requestAnimFrame(o,this,!0);r.DomEvent.preventDefault(n)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1;r.Util.cancelAnimFrame(this._animRequest);r.DomEvent.off(t,"touchmove",this._onTouchMove).off(t,"touchend",this._onTouchEnd);this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});r.Map.addInitHook("addHandler","touchZoom",r.Map.TouchZoom);r.Map.mergeOptions({tap:!0,tapTolerance:15});r.Map.Tap=r.Handler.extend({addHooks:function(){r.DomEvent.on(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){r.DomEvent.off(this._map._container,"touchstart",this._onDown,this)},_onDown:function(n){if(n.touches){if(r.DomEvent.preventDefault(n),this._fireClick=!0,n.touches.length>1){this._fireClick=!1;clearTimeout(this._holdTimeout);return}var i=n.touches[0],u=i.target;this._startPos=this._newPos=new r.Point(i.clientX,i.clientY);u.tagName&&u.tagName.toLowerCase()==="a"&&r.DomUtil.addClass(u,"leaflet-active");this._holdTimeout=setTimeout(r.bind(function(){this._isTapValid()&&(this._fireClick=!1,this._onUp(),this._simulateEvent("contextmenu",i))},this),1e3);this._simulateEvent("mousedown",i);r.DomEvent.on(t,{touchmove:this._onMove,touchend:this._onUp},this)}},_onUp:function(n){if(clearTimeout(this._holdTimeout),r.DomEvent.off(t,{touchmove:this._onMove,touchend:this._onUp},this),this._fireClick&&n&&n.changedTouches){var u=n.changedTouches[0],i=u.target;i&&i.tagName&&i.tagName.toLowerCase()==="a"&&r.DomUtil.removeClass(i,"leaflet-active");this._simulateEvent("mouseup",u);this._isTapValid()&&this._simulateEvent("click",u)}},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_onMove:function(n){var t=n.touches[0];this._newPos=new r.Point(t.clientX,t.clientY);this._simulateEvent("mousemove",t)},_simulateEvent:function(i,r){var u=t.createEvent("MouseEvents");u._simulated=!0;r.target._simulatedClick=!0;u.initMouseEvent(i,!0,!0,n,1,r.screenX,r.screenY,r.clientX,r.clientY,!1,!1,!1,!1,0,null);r.target.dispatchEvent(u)}});r.Browser.touch&&!r.Browser.pointer&&r.Map.addInitHook("addHandler","tap",r.Map.Tap);r.Map.mergeOptions({boxZoom:!0});r.Map.BoxZoom=r.Handler.extend({initialize:function(n){this._map=n;this._container=n._container;this._pane=n._panes.overlayPane},addHooks:function(){r.DomEvent.on(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){r.DomEvent.off(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_resetState:function(){this._moved=!1},_onMouseDown:function(n){if(!n.shiftKey||n.which!==1&&n.button!==1)return!1;this._resetState();r.DomUtil.disableTextSelection();r.DomUtil.disableImageDrag();this._startPoint=this._map.mouseEventToContainerPoint(n);r.DomEvent.on(t,{contextmenu:r.DomEvent.stop,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(n){this._moved||(this._moved=!0,this._box=r.DomUtil.create("div","leaflet-zoom-box",this._container),r.DomUtil.addClass(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart"));this._point=this._map.mouseEventToContainerPoint(n);var t=new r.Bounds(this._point,this._startPoint),i=t.getSize();r.DomUtil.setPosition(this._box,t.min);this._box.style.width=i.x+"px";this._box.style.height=i.y+"px"},_finish:function(){this._moved&&(r.DomUtil.remove(this._box),r.DomUtil.removeClass(this._container,"leaflet-crosshair"));r.DomUtil.enableTextSelection();r.DomUtil.enableImageDrag();r.DomEvent.off(t,{contextmenu:r.DomEvent.stop,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(n){if((n.which===1||n.button===1)&&(this._finish(),this._moved)){setTimeout(r.bind(this._resetState,this),0);var t=new r.LatLngBounds(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(t).fire("boxzoomend",{boxZoomBounds:t})}},_onKeyDown:function(n){n.keyCode===27&&this._finish()}});r.Map.addInitHook("addHandler","boxZoom",r.Map.BoxZoom);r.Map.mergeOptions({keyboard:!0,keyboardPanDelta:80});r.Map.Keyboard=r.Handler.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,54,173]},initialize:function(n){this._map=n;this._setPanDelta(n.options.keyboardPanDelta);this._setZoomDelta(n.options.zoomDelta)},addHooks:function(){var n=this._map._container;n.tabIndex<=0&&(n.tabIndex="0");r.DomEvent.on(n,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this);this._map.on({focus:this._addHooks,blur:this._removeHooks},this)},removeHooks:function(){this._removeHooks();r.DomEvent.off(this._map._container,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this);this._map.off({focus:this._addHooks,blur:this._removeHooks},this)},_onMouseDown:function(){if(!this._focused){var i=t.body,r=t.documentElement,u=i.scrollTop||r.scrollTop,f=i.scrollLeft||r.scrollLeft;this._map._container.focus();n.scrollTo(f,u)}},_onFocus:function(){this._focused=!0;this._map.fire("focus")},_onBlur:function(){this._focused=!1;this._map.fire("blur")},_setPanDelta:function(n){for(var u=this._panKeys={},i=this.keyCodes,t=0,r=i.left.length;t<r;t++)u[i.left[t]]=[-1*n,0];for(t=0,r=i.right.length;t<r;t++)u[i.right[t]]=[n,0];for(t=0,r=i.down.length;t<r;t++)u[i.down[t]]=[0,n];for(t=0,r=i.up.length;t<r;t++)u[i.up[t]]=[0,-1*n]},_setZoomDelta:function(n){for(var u=this._zoomKeys={},i=this.keyCodes,t=0,r=i.zoomIn.length;t<r;t++)u[i.zoomIn[t]]=n;for(t=0,r=i.zoomOut.length;t<r;t++)u[i.zoomOut[t]]=-n},_addHooks:function(){r.DomEvent.on(t,"keydown",this._onKeyDown,this)},_removeHooks:function(){r.DomEvent.off(t,"keydown",this._onKeyDown,this)},_onKeyDown:function(n){if(!n.altKey&&!n.ctrlKey&&!n.metaKey){var i=n.keyCode,t=this._map,u;if(i in this._panKeys){if(t._panAnim&&t._panAnim._inProgress)return;u=this._panKeys[i];n.shiftKey&&(u=r.point(u).multiplyBy(3));t.panBy(u);t.options.maxBounds&&t.panInsideBounds(t.options.maxBounds)}else if(i in this._zoomKeys)t.setZoom(t.getZoom()+(n.shiftKey?3:1)*this._zoomKeys[i]);else if(i===27)t.closePopup();else return;r.DomEvent.stop(n)}}});r.Map.addInitHook("addHandler","keyboard",r.Map.Keyboard);r.Handler.MarkerDrag=r.Handler.extend({initialize:function(n){this._marker=n},addHooks:function(){var n=this._marker._icon;this._draggable||(this._draggable=new r.Draggable(n,n,!0));this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this).enable();r.DomUtil.addClass(n,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this).disable();this._marker._icon&&r.DomUtil.removeClass(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_onDragStart:function(){this._oldLatLng=this._marker.getLatLng();this._marker.closePopup().fire("movestart").fire("dragstart")},_onDrag:function(n){var t=this._marker,i=t._shadow,u=r.DomUtil.getPosition(t._icon),f=t._map.layerPointToLatLng(u);i&&r.DomUtil.setPosition(i,u);t._latlng=f;n.latlng=f;n.oldLatLng=this._oldLatLng;t.fire("move",n).fire("drag",n)},_onDragEnd:function(n){delete this._oldLatLng;this._marker.fire("moveend").fire("dragend",n)}});r.Control=r.Class.extend({options:{position:"topright"},initialize:function(n){r.setOptions(this,n)},getPosition:function(){return this.options.position},setPosition:function(n){var t=this._map;return t&&t.removeControl(this),this.options.position=n,t&&t.addControl(this),this},getContainer:function(){return this._container},addTo:function(n){this.remove();this._map=n;var t=this._container=this.onAdd(n),u=this.getPosition(),i=n._controlCorners[u];return r.DomUtil.addClass(t,"leaflet-control"),u.indexOf("bottom")!==-1?i.insertBefore(t,i.firstChild):i.appendChild(t),this},remove:function(){if(!this._map)return this;if(r.DomUtil.remove(this._container),this.onRemove)this.onRemove(this._map);return this._map=null,this},_refocusOnMap:function(n){this._map&&n&&n.screenX>0&&n.screenY>0&&this._map.getContainer().focus()}});r.control=function(n){return new r.Control(n)};r.Map.include({addControl:function(n){return n.addTo(this),this},removeControl:function(n){return n.remove(),this},_initControlPos:function(){function n(n,f){var e=t+n+" "+t+f;i[n+f]=r.DomUtil.create("div",e,u)}var i=this._controlCorners={},t="leaflet-",u=this._controlContainer=r.DomUtil.create("div",t+"control-container",this._container);n("top","left");n("top","right");n("bottom","left");n("bottom","right")},_clearControlPos:function(){r.DomUtil.remove(this._controlContainer)}});r.Control.Zoom=r.Control.extend({options:{position:"topleft",zoomInText:"+",zoomInTitle:"Zoom in",zoomOutText:"-",zoomOutTitle:"Zoom out"},onAdd:function(n){var i="leaflet-control-zoom",u=r.DomUtil.create("div",i+" leaflet-bar"),t=this.options;this._zoomInButton=this._createButton(t.zoomInText,t.zoomInTitle,i+"-in",u,this._zoomIn);this._zoomOutButton=this._createButton(t.zoomOutText,t.zoomOutTitle,i+"-out",u,this._zoomOut);this._updateDisabled();n.on("zoomend zoomlevelschange",this._updateDisabled,this);return u},onRemove:function(n){n.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(n){!this._disabled&&this._map._zoom<this._map.getMaxZoom()&&this._map.zoomIn(this._map.options.zoomDelta*(n.shiftKey?3:1))},_zoomOut:function(n){!this._disabled&&this._map._zoom>this._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(n.shiftKey?3:1))},_createButton:function(n,t,i,u,f){var e=r.DomUtil.create("a",i,u);e.innerHTML=n;e.href="#";e.title=t;e.setAttribute("role","button");e.setAttribute("aria-label",t);r.DomEvent.on(e,"mousedown dblclick",r.DomEvent.stopPropagation).on(e,"click",r.DomEvent.stop).on(e,"click",f,this).on(e,"click",this._refocusOnMap,this);return e},_updateDisabled:function(){var n=this._map,t="leaflet-disabled";r.DomUtil.removeClass(this._zoomInButton,t);r.DomUtil.removeClass(this._zoomOutButton,t);(this._disabled||n._zoom===n.getMinZoom())&&r.DomUtil.addClass(this._zoomOutButton,t);(this._disabled||n._zoom===n.getMaxZoom())&&r.DomUtil.addClass(this._zoomInButton,t)}});r.Map.mergeOptions({zoomControl:!0});r.Map.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new r.Control.Zoom,this.addControl(this.zoomControl))});r.control.zoom=function(n){return new r.Control.Zoom(n)};r.Control.Attribution=r.Control.extend({options:{position:"bottomright",prefix:'<a href="http://leafletjs.com" title="A JS library for interactive maps">Leaflet<\/a>'},initialize:function(n){r.setOptions(this,n);this._attributions={}},onAdd:function(n){n.attributionControl=this;this._container=r.DomUtil.create("div","leaflet-control-attribution");r.DomEvent&&r.DomEvent.disableClickPropagation(this._container);for(var t in n._layers)n._layers[t].getAttribution&&this.addAttribution(n._layers[t].getAttribution());return this._update(),this._container},setPrefix:function(n){return this.options.prefix=n,this._update(),this},addAttribution:function(n){return n?(this._attributions[n]||(this._attributions[n]=0),this._attributions[n]++,this._update(),this):this},removeAttribution:function(n){return n?(this._attributions[n]&&(this._attributions[n]--,this._update()),this):this},_update:function(){var n,i,t;if(this._map){n=[];for(i in this._attributions)this._attributions[i]&&n.push(i);t=[];this.options.prefix&&t.push(this.options.prefix);n.length&&t.push(n.join(", "));this._container.innerHTML=t.join(" | ")}}});r.Map.mergeOptions({attributionControl:!0});r.Map.addInitHook(function(){this.options.attributionControl&&(new r.Control.Attribution).addTo(this)});r.control.attribution=function(n){return new r.Control.Attribution(n)};r.Control.Scale=r.Control.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(n){var t="leaflet-control-scale",i=r.DomUtil.create("div",t),u=this.options;this._addScales(u,t+"-line",i);n.on(u.updateWhenIdle?"moveend":"move",this._update,this);return n.whenReady(this._update,this),i},onRemove:function(n){n.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(n,t,i){n.metric&&(this._mScale=r.DomUtil.create("div",t,i));n.imperial&&(this._iScale=r.DomUtil.create("div",t,i))},_update:function(){var n=this._map,t=n.getSize().y/2,i=n.distance(n.containerPointToLatLng([0,t]),n.containerPointToLatLng([this.options.maxWidth,t]));this._updateScales(i)},_updateScales:function(n){this.options.metric&&n&&this._updateMetric(n);this.options.imperial&&n&&this._updateImperial(n)},_updateMetric:function(n){var t=this._getRoundNum(n),i=t<1e3?t+" m":t/1e3+" km";this._updateScale(this._mScale,i,t/n)},_updateImperial:function(n){var t=n*3.2808399,i,r,u;t>5280?(i=t/5280,r=this._getRoundNum(i),this._updateScale(this._iScale,r+" mi",r/i)):(u=this._getRoundNum(t),this._updateScale(this._iScale,u+" ft",u/t))},_updateScale:function(n,t,i){n.style.width=Math.round(this.options.maxWidth*i)+"px";n.innerHTML=t},_getRoundNum:function(n){var i=Math.pow(10,(Math.floor(n)+"").length-1),t=n/i;return t=t>=10?10:t>=5?5:t>=3?3:t>=2?2:1,i*t}});r.control.scale=function(n){return new r.Control.Scale(n)};r.Control.Layers=r.Control.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(n,t,i,r){return i<r?-1:r<i?1:0}},initialize:function(n,t,i){r.setOptions(this,i);this._layers=[];this._lastZIndex=0;this._handlingClick=!1;for(var u in n)this._addLayer(n[u],u);for(u in t)this._addLayer(t[u],u,!0)},onAdd:function(n){this._initLayout();this._update();this._map=n;n.on("zoomend",this._checkDisabledLayers,this);return this._container},onRemove:function(){this._map.off("zoomend",this._checkDisabledLayers,this);for(var n=0;n<this._layers.length;n++)this._layers[n].layer.off("add remove",this._onLayerChange,this)},addBaseLayer:function(n,t){return this._addLayer(n,t),this._map?this._update():this},addOverlay:function(n,t){return this._addLayer(n,t,!0),this._map?this._update():this},removeLayer:function(n){n.off("add remove",this._onLayerChange,this);var t=this._getLayer(r.stamp(n));return t&&this._layers.splice(this._layers.indexOf(t),1),this._map?this._update():this},expand:function(){r.DomUtil.addClass(this._container,"leaflet-control-layers-expanded");this._form.style.height=null;var n=this._map.getSize().y-(this._container.offsetTop+50);return n<this._form.clientHeight?(r.DomUtil.addClass(this._form,"leaflet-control-layers-scrollbar"),this._form.style.height=n+"px"):r.DomUtil.removeClass(this._form,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return r.DomUtil.removeClass(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var n="leaflet-control-layers",t=this._container=r.DomUtil.create("div",n),i,u;if(t.setAttribute("aria-haspopup",!0),r.DomEvent.disableClickPropagation(t),r.Browser.touch||r.DomEvent.disableScrollPropagation(t),i=this._form=r.DomUtil.create("form",n+"-list"),!r.Browser.android)r.DomEvent.on(t,{mouseenter:this.expand,mouseleave:this.collapse},this);if(u=this._layersLink=r.DomUtil.create("a",n+"-toggle",t),u.href="#",u.title="Layers",r.Browser.touch)r.DomEvent.on(u,"click",r.DomEvent.stop).on(u,"click",this.expand,this);else r.DomEvent.on(u,"focus",this.expand,this);r.DomEvent.on(i,"click",function(){setTimeout(r.bind(this._onInputClick,this),0)},this);this._map.on("click",this.collapse,this);this.options.collapsed||this.expand();this._baseLayersList=r.DomUtil.create("div",n+"-base",i);this._separator=r.DomUtil.create("div",n+"-separator",i);this._overlaysList=r.DomUtil.create("div",n+"-overlays",i);t.appendChild(i)},_getLayer:function(n){for(var t=0;t<this._layers.length;t++)if(this._layers[t]&&r.stamp(this._layers[t].layer)===n)return this._layers[t]},_addLayer:function(n,t,i){n.on("add remove",this._onLayerChange,this);this._layers.push({layer:n,name:t,overlay:i});this.options.sortLayers&&this._layers.sort(r.bind(function(n,t){return this.options.sortFunction(n.layer,t.layer,n.name,t.name)},this));this.options.autoZIndex&&n.setZIndex&&(this._lastZIndex++,n.setZIndex(this._lastZIndex))},_update:function(){if(!this._container)return this;r.DomUtil.empty(this._baseLayersList);r.DomUtil.empty(this._overlaysList);for(var n,u,t,f=0,i=0;i<this._layers.length;i++)t=this._layers[i],this._addItem(t),u=u||t.overlay,n=n||!t.overlay,f+=t.overlay?0:1;return this.options.hideSingleBase&&(n=n&&f>1,this._baseLayersList.style.display=n?"":"none"),this._separator.style.display=u&&n?"":"none",this},_onLayerChange:function(n){this._handlingClick||this._update();var t=this._getLayer(r.stamp(n.target)),i=t.overlay?n.type==="add"?"overlayadd":"overlayremove":n.type==="add"?"baselayerchange":null;i&&this._map.fire(i,t)},_createRadioElement:function(n,i){var u='<input type="radio" class="leaflet-control-layers-selector" name="'+n+'"'+(i?' checked="checked"':"")+"/>",r=t.createElement("div");return r.innerHTML=u,r.firstChild},_addItem:function(n){var f=t.createElement("label"),o=this._map.hasLayer(n.layer),i,e,u,s;n.overlay?(i=t.createElement("input"),i.type="checkbox",i.className="leaflet-control-layers-selector",i.defaultChecked=o):i=this._createRadioElement("leaflet-base-layers",o);i.layerId=r.stamp(n.layer);r.DomEvent.on(i,"click",this._onInputClick,this);return e=t.createElement("span"),e.innerHTML=" "+n.name,u=t.createElement("div"),f.appendChild(u),u.appendChild(i),u.appendChild(e),s=n.overlay?this._overlaysList:this._baseLayersList,s.appendChild(f),this._checkDisabledLayers(),f},_onInputClick:function(){var e=this._form.getElementsByTagName("input"),t,i,r,u=[],f=[],n;for(this._handlingClick=!0,n=e.length-1;n>=0;n--)t=e[n],i=this._getLayer(t.layerId).layer,r=this._map.hasLayer(i),t.checked&&!r?u.push(i):!t.checked&&r&&f.push(i);for(n=0;n<f.length;n++)this._map.removeLayer(f[n]);for(n=0;n<u.length;n++)this._map.addLayer(u[n]);this._handlingClick=!1;this._refocusOnMap()},_checkDisabledLayers:function(){for(var u=this._form.getElementsByTagName("input"),t,n,f=this._map.getZoom(),r=u.length-1;r>=0;r--)t=u[r],n=this._getLayer(t.layerId).layer,t.disabled=n.options.minZoom!==i&&f<n.options.minZoom||n.options.maxZoom!==i&&f>n.options.maxZoom},_expand:function(){return this.expand()},_collapse:function(){return this.collapse()}});r.control.layers=function(n,t,i){return new r.Control.Layers(n,t,i)}}(window,document),function(){"use strict";function i(n,t){var r;for(var i in t)t.hasOwnProperty(i)&&(r=t[i],n=n.replace("{"+i+"}",r));return n}var n={t_currentYear:(new Date).getFullYear(),t_osloLat:[59.81691,59.81734,59.81813,59.82537,59.82484,59.82298,59.82343,59.82494,59.82588,59.8262,59.82367,59.82349,59.82954,59.83053,59.83929,59.85107,59.87719,59.87593,59.88371,59.88441,59.89462,59.90941,59.91071,59.91407,59.9147,59.91405,59.91468,59.91632,59.91732,59.91797,59.91771,59.91876,59.92173,59.92246,59.9235,59.92441,59.92518,59.92709,59.92786,59.92963,59.93123,59.93255,59.93459,59.93579,59.93925,59.9424,59.9428,59.94566,59.94784,59.95187,59.9523,59.95303,59.95354,59.95371,59.95626,59.95723,59.95856,59.96163,59.96267,59.96483,59.96634,59.97051,59.97432,59.97661,59.97698,59.97671,59.9777,59.97674,59.97686,59.97754,59.9786,59.98552,59.99223,59.99403,59.99639,59.99672,59.99462,59.99365,59.99552,59.99804,60.00064,60.00014,59.99932,59.99977,59.99991,59.99936,60.0085,60.01579,60.01726,60.02602,60.03843,60.05177,60.06503,60.07624,60.07728,60.08286,60.09214,60.09394,60.10068,60.10983,60.11678,60.1287,60.13162,60.13459,60.13518,60.13277,60.13353,60.1258,60.12586,60.12531,60.12519,60.12286,60.12117,60.1194,60.11991,60.11966,60.12019,60.12059,60.12154,60.12172,60.12365,60.12504,60.12573,60.12526,60.12326,60.12303,60.12161,60.12081,60.11833,60.11285,60.11218,60.1118,60.10609,60.10496,60.10103,60.09955,60.09917,60.0986,60.09856,60.09777,60.09268,60.08689,60.08659,60.08403,60.07893,60.07827,60.07714,60.07484,60.0706,60.06755,60.06689,60.0661,60.06575,60.06421,60.06467,60.06436,60.06515,60.06489,60.06429,60.05371,60.04309,60.04054,60.03783,60.03693,60.03563,60.03328,60.03026,60.02976,60.02912,60.02736,60.0211,60.01813,60.01788,60.01734,60.01791,60.02211,60.02327,60.02315,60.02148,60.01985,60.0178,60.00969,60.00846,60.0061,59.99799,59.99815,59.99714,59.99964,60.00179,59.99616,59.99552,59.99566,59.99491,59.99301,59.98677,59.98558,59.98442,59.98078,59.98053,59.98072,59.98023,59.98099,59.98398,59.98455,59.98372,59.97712,59.97705,59.96955,59.96552,59.96286,59.95484,59.9526,59.95321,59.94924,59.94803,59.94694,59.94778,59.94687,59.94598,59.94572,59.94318,59.9418,59.94116,59.93486,59.92653,59.92045,59.91937,59.91228,59.91162,59.91127,59.90041,59.89682,59.88496,59.87528,59.86989,59.86475,59.8601,59.85206,59.84493,59.83684,59.83631,59.83489,59.8317,59.83133,59.82693,59.82773,59.82776,59.82679,59.8271,59.82629,59.82609,59.8262,59.82548,59.82368,59.82204,59.82102,59.81815,59.81703,59.81575,59.81434,59.81216,59.81104,59.81204,59.81297,59.81306,59.81232,59.80946,59.81198,59.81529,59.81685,59.81616,59.81699,59.81691],t_osloLon:[10.83369,10.83169,10.81725,10.81244,10.8045,10.79843,10.7892,10.78261,10.78091,10.77675,10.77244,10.77156,10.76478,10.76156,10.744,10.73995,10.73097,10.68893,10.66064,10.65808,10.65387,10.64777,10.64253,10.63988,10.63553,10.63506,10.63304,10.63298,10.63427,10.63309,10.63123,10.63006,10.62936,10.62578,10.62532,10.62596,10.62746,10.62543,10.62708,10.62647,10.63107,10.63299,10.63402,10.63531,10.63161,10.63341,10.63289,10.63581,10.63561,10.63387,10.63304,10.63403,10.63353,10.63205,10.63083,10.63175,10.62995,10.62758,10.62357,10.62444,10.62051,10.61817,10.61395,10.61045,10.60385,10.6037,10.59622,10.59395,10.59165,10.59027,10.59025,10.57878,10.5657,10.55948,10.55692,10.55585,10.55218,10.54912,10.54526,10.54399,10.5338,10.52968,10.52841,10.52754,10.52266,10.51795,10.50366,10.49021,10.48916,10.50276,10.52201,10.54276,10.56337,10.58077,10.59731,10.59278,10.59184,10.59212,10.58836,10.57999,10.57278,10.59522,10.60081,10.61047,10.61906,10.64515,10.68032,10.69737,10.69842,10.69986,10.70447,10.70493,10.70385,10.70726,10.71477,10.71615,10.71703,10.71688,10.7198,10.72497,10.73165,10.73248,10.73712,10.74026,10.74418,10.74689,10.7483,10.75123,10.75232,10.76785,10.7684,10.76621,10.75711,10.75593,10.75475,10.75534,10.75762,10.75796,10.75916,10.76205,10.7671,10.77063,10.77233,10.77481,10.77796,10.77902,10.77864,10.78232,10.7847,10.78802,10.79385,10.79691,10.80157,10.80937,10.81045,10.81208,10.81561,10.81927,10.81976,10.81656,10.81803,10.81696,10.8181,10.81464,10.8128,10.81205,10.81316,10.8124,10.8134,10.812,10.81542,10.81921,10.82064,10.82139,10.82217,10.8235,10.82526,10.82693,10.82875,10.82921,10.83204,10.83314,10.83571,10.83704,10.83808,10.8391,10.84252,10.84311,10.84959,10.85821,10.86331,10.86429,10.86605,10.86714,10.87516,10.8754,10.88293,10.89337,10.90433,10.90591,10.9074,10.91267,10.91629,10.9182,10.92565,10.93057,10.93106,10.93751,10.93807,10.93705,10.94129,10.94334,10.94433,10.95138,10.94763,10.94608,10.94499,10.94244,10.94272,10.94206,10.94584,10.94306,10.94246,10.92912,10.92148,10.91913,10.91781,10.91573,10.91481,10.91521,10.91188,10.91142,10.90762,10.90988,10.90715,10.90934,10.91233,10.92155,10.92651,10.93119,10.93367,10.9352,10.9366,10.933,10.92716,10.92303,10.91703,10.91477,10.91326,10.91079,10.91094,10.90679,10.90105,10.89649,10.89677,10.8918,10.89157,10.88907,10.8876,10.88294,10.88188,10.87985,10.87885,10.87378,10.86889,10.86313,10.85584,10.8479,10.84604,10.84597,10.8373,10.83566,10.83369],t_norgeLat:[69.11,69.09,69.04,69.04,69.09,69.1,69.12,69.18,69.19,69.2,69.22,69.23,69.26,69.27,69.28,69.28,69.31,69.3,69.27,69.24,69.24,69.15,69.13,69.13,69.12,69.11,69.09,69.02,69.01,68.96,68.96,68.93,68.93,68.91,68.85,68.83,68.82,68.8,68.79,68.75,68.74,68.72,68.72,68.72,68.73,68.74,68.74,68.74,68.73,68.71,68.7,68.69,68.69,68.69,68.68,68.68,68.63,68.63,68.63,68.64,68.64,68.64,68.66,68.66,68.67,68.67,68.68,68.69,68.7,68.7,68.7,68.7,68.71,68.71,68.75,68.78,68.82,68.84,68.83,68.83,68.83,68.81,68.8,68.79,68.76,68.76,68.75,68.74,68.73,68.73,68.73,68.71,68.69,68.68,68.66,68.65,68.65,68.66,68.64,68.63,68.63,68.62,68.61,68.59,68.56,68.56,68.56,68.55,68.55,68.56,68.57,68.58,68.59,68.59,68.6,68.61,68.61,68.61,68.61,68.62,68.62,68.62,68.62,68.62,68.62,68.62,68.62,68.62,68.63,68.63,68.64,68.64,68.65,68.66,68.66,68.67,68.68,68.69,68.69,68.7,68.7,68.71,68.71,68.72,68.73,68.74,68.75,68.8,68.8,68.8,68.81,68.82,68.83,68.84,68.84,68.85,68.85,68.86,68.86,68.86,68.87,68.88,68.88,68.88,68.88,68.89,68.89,68.89,68.89,68.9,68.9,68.9,68.9,68.9,68.9,68.89,68.89,68.89,68.89,68.89,68.88,68.88,68.88,68.89,68.89,68.89,68.9,68.9,68.92,68.93,68.94,68.94,68.95,68.99,69,69.01,69.01,69.02,69.11,69.12,69.14,69.15,69.17,69.18,69.19,69.2,69.22,69.23,69.23,69.25,69.26,69.27,69.27,69.28,69.28,69.29,69.3,69.3,69.31,69.31,69.34,69.34,69.35,69.36,69.36,69.37,69.38,69.39,69.39,69.4,69.41,69.42,69.42,69.43,69.43,69.44,69.45,69.46,69.47,69.48,69.49,69.51,69.52,69.53,69.55,69.56,69.57,69.58,69.59,69.61,69.63,69.65,69.65,69.65,69.66,69.67,69.68,69.68,69.69,69.7,69.71,69.72,69.73,69.73,69.74,69.74,69.75,69.75,69.77,69.8,69.81,69.82,69.83,69.85,69.86,69.88,69.89,69.9,69.91,69.92,69.94,69.96,69.96,69.95,69.95,69.95,69.94,69.95,69.95,69.96,69.96,69.95,69.95,69.94,69.93,69.93,69.93,69.93,69.94,69.94,69.94,69.93,69.93,69.92,69.91,69.91,69.91,69.92,69.93,69.93,69.93,69.95,69.95,69.95,69.95,69.96,69.96,69.97,69.98,69.98,69.99,69.99,69.99,70,70.01,70.02,70.02,70.02,70.02,70.03,70.03,70.04,70.05,70.06,70.06,70.07,70.08,70.07,70.06,70.06,70.07,70.07,70.08,70.09,70.09,70.09,70.05,70.04,70.04,70,69.92,69.9,69.89,69.88,69.87,69.87,69.86,69.85,69.83,69.82,69.79,69.78,69.69,69.69,69.68,69.67,69.57,69.55,69.53,69.52,69.51,69.49,69.48,69.47,69.46,69.41,69.4,69.31,69.28,69.23,69.22,69.19,69.18,69.16,69.14,69.13,69.12,69.11,69.1,69.09,69.08,69.06,69.05,69.04,69.04,69.02,69.02,69.01,69.02,69.02,69.03,69.03,69.06,69.07,69.11,69.12,69.15,69.18,69.21,69.23,69.24,69.24,69.25,69.25,69.26,69.27,69.29,69.3,69.31,69.31,69.31,69.31,69.33,69.33,69.31,69.32,69.32,69.33,69.35,69.37,69.37,69.39,69.39,69.4,69.4,69.41,69.42,69.42,69.42,69.42,69.41,69.41,69.4,69.41,69.41,69.41,69.42,69.43,69.43,69.43,69.44,69.45,69.46,69.47,69.47,69.47,69.49,69.51,69.52,69.52,69.53,69.53,69.55,69.56,69.58,69.59,69.6,69.62,69.63,69.64,69.64,69.64,69.64,69.65,69.66,69.67,69.67,69.65,69.63,69.63,69.63,69.62,69.61,69.59,69.54,69.54,69.54,69.54,69.54,69.54,69.54,69.54,69.53,69.53,69.53,69.56,69.56,69.57,69.58,69.59,69.61,69.64,69.65,69.66,69.67,69.68,69.67,69.67,69.68,69.69,69.69,69.7,69.7,69.71,69.72,69.72,69.73,69.78,69.78,69.79,69.78,69.78,69.77,69.77,69.76,69.76,69.76,69.79,69.79,69.79,69.98,70.01,70.12,70.12,70.11,70.14,70.24,70.35,70.36,70.4,70.44,70.47,70.5,70.54,70.65,70.67,70.83,70.87,70.94,70.95,71.02,71.12,71.28,71.3,71.32,71.33,71.35,71.36,71.38,71.38,71.34,71.31,71.31,71.3,71.29,71.27,71.19,71.11,70.99,70.98,70.9,70.85,70.79,70.7,70.63,70.56,70.48,70.39,70.35,70.17,70.07,69.99,69.81,69.75,69.71,69.7,69.65,69.6,69.52,69.51,69.39,69.35,69.32,69.25,69.25,69.18,69.08,69.07,69,68.9,68.85,68.76,68.73,68.61,68.54,68.46,68.46,68.4,68.39,68.34,68.29,68.24,68.15,68.12,68.1,68.01,67.87,67.82,67.78,67.7,67.7,67.62,67.59,67.54,67.47,67.44,67.39,67.34,67.02,66.82,66.71,66.67,66.4,66.19,65.97,65.7,65.57,65.54,65.5,65.47,65.35,65.27,65.05,64.99,64.87,64.78,64.73,64.55,64.36,64.24,64.14,64.04,63.77,63.7,63.58,63.43,63.34,63.31,63.27,63.26,63.25,63.19,63.18,63.15,63.09,63.02,63,62.97,62.93,62.81,62.75,62.67,62.62,62.47,62.43,62.38,62.29,62.18,62.15,62.03,61.85,61.78,61.71,61.68,61.55,61.54,61.49,61.35,61.23,61.16,61.07,61,60.83,60.81,60.72,60.69,60.57,60.51,60.44,60.41,60.39,60.31,60.23,60.17,60.1,60.07,60.05,59.91,59.87,59.79,59.76,59.72,59.68,59.67,59.56,59.56,59.5,59.44,59.36,59.31,59.27,59.22,59.18,59.14,59.12,59.07,59.04,59,58.96,58.92,58.81,58.78,58.76,58.65,58.62,58.6,58.55,58.53,58.5,58.44,58.4,58.36,58.33,58.28,58.16,58.08,58.07,58.06,58.03,58.02,57.97,57.91,57.88,57.88,57.82,57.79,57.77,57.76,57.76,57.76,57.76,57.77,57.78,57.79,57.8,57.83,57.85,57.9,57.92,57.94,57.98,58.02,58.04,58.08,58.13,58.15,58.17,58.25,58.39,58.42,58.43,58.52,58.6,58.67,58.72,58.72,58.73,58.74,58.76,58.77,58.77,58.76,58.76,58.89,58.94,58.96,58.98,58.99,59.01,59.08,59.08,59.09,59.09,59.09,59.09,59.1,59.1,59.1,59.1,59.1,59.1,59.1,59.08,59.08,59.07,59.06,59.06,59.04,59.04,59.03,59.02,59.01,58.99,58.99,58.98,58.97,58.95,58.94,58.93,58.92,58.89,58.89,58.89,58.89,58.89,58.88,58.88,58.88,58.88,58.88,58.88,58.88,58.89,58.89,58.89,58.88,58.88,58.89,58.89,58.89,58.89,58.9,58.9,58.9,58.9,58.9,58.91,58.92,58.92,58.93,58.93,58.94,58.95,58.96,58.98,58.99,59.01,59.01,59.03,59.03,59.04,59.05,59.06,59.07,59.09,59.09,59.1,59.11,59.12,59.12,59.13,59.14,59.15,59.16,59.17,59.18,59.19,59.2,59.21,59.22,59.22,59.23,59.23,59.24,59.25,59.27,59.29,59.31,59.32,59.32,59.33,59.34,59.34,59.35,59.38,59.4,59.41,59.42,59.42,59.43,59.44,59.46,59.47,59.48,59.5,59.51,59.54,59.55,59.56,59.57,59.58,59.59,59.6,59.61,59.61,59.62,59.62,59.63,59.63,59.64,59.64,59.64,59.64,59.64,59.64,59.65,59.65,59.66,59.67,59.68,59.69,59.69,59.69,59.69,59.69,59.69,59.7,59.71,59.72,59.73,59.75,59.75,59.76,59.77,59.78,59.79,59.8,59.82,59.83,59.83,59.83,59.84,59.84,59.85,59.85,59.86,59.87,59.87,59.87,59.88,59.89,59.89,59.9,59.9,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.89,59.9,59.9,59.9,59.91,59.93,59.93,59.94,59.94,59.95,59.96,59.96,59.97,59.98,59.98,59.99,60,60.01,60.02,60.02,60.03,60.04,60.05,60.06,60.07,60.09,60.13,60.14,60.15,60.16,60.19,60.22,60.23,60.24,60.25,60.26,60.28,60.3,60.31,60.32,60.33,60.33,60.34,60.35,60.36,60.36,60.37,60.38,60.39,60.39,60.4,60.41,60.43,60.44,60.48,60.51,60.52,60.53,60.54,60.55,60.57,60.59,60.6,60.61,60.61,60.62,60.63,60.64,60.65,60.66,60.67,60.68,60.7,60.71,60.73,60.75,60.79,60.83,60.84,60.85,60.86,60.87,60.88,60.89,60.9,60.91,60.92,60.92,60.94,60.97,60.98,60.99,61,61.01,61.03,61.04,61.04,61.04,61.04,61.05,61.05,61.05,61.05,61.05,61.05,61.05,61.05,61.05,61.05,61.05,61.06,61.06,61.06,61.07,61.08,61.09,61.09,61.1,61.12,61.14,61.19,61.22,61.24,61.26,61.27,61.29,61.31,61.32,61.36,61.37,61.39,61.4,61.42,61.43,61.48,61.53,61.55,61.57,61.57,61.57,61.57,61.57,61.56,61.56,61.56,61.58,61.59,61.6,61.62,61.62,61.63,61.69,61.7,61.72,61.75,61.75,61.77,61.8,61.82,61.83,61.85,61.87,61.88,61.89,61.91,62,62.12,62.15,62.17,62.18,62.2,62.22,62.25,62.26,62.27,62.27,62.38,62.39,62.4,62.41,62.46,62.52,62.58,62.59,62.61,62.62,62.63,62.66,62.68,62.69,62.71,62.71,62.74,62.76,62.83,62.84,62.88,62.9,62.94,62.96,62.97,62.98,62.99,63,63,63.01,63.02,63.04,63.05,63.12,63.17,63.26,63.27,63.28,63.33,63.33,63.34,63.34,63.35,63.35,63.39,63.48,63.55,63.56,63.59,63.63,63.65,63.72,63.72,63.73,63.75,63.76,63.78,63.79,63.82,63.83,63.85,63.85,63.89,63.93,63.93,63.96,63.97,63.99,64,64,64.01,64.03,64.03,64.04,64.04,64.05,64.07,64.08,64.09,64.09,64.09,64.09,64.1,64.07,64.05,64.05,64.03,64.03,64.02,64.01,64.01,64.03,64.05,64.06,64.09,64.11,64.13,64.15,64.16,64.19,64.2,64.2,64.23,64.3,64.36,64.37,64.38,64.38,64.4,64.44,64.46,64.48,64.48,64.5,64.5,64.55,64.55,64.57,64.58,64.61,64.63,64.71,64.79,64.81,64.82,64.84,64.85,64.86,64.88,64.91,64.94,64.96,64.97,64.98,64.98,65,65.05,65.07,65.1,65.12,65.13,65.14,65.17,65.19,65.23,65.25,65.28,65.3,65.34,65.36,65.4,65.43,65.44,65.45,65.48,65.49,65.5,65.51,65.53,65.58,65.59,65.63,65.64,65.66,65.67,65.69,65.72,65.73,65.75,65.79,65.8,65.81,65.86,65.87,65.89,65.9,65.92,65.95,66.02,66.07,66.1,66.13,66.13,66.14,66.14,66.14,66.14,66.14,66.16,66.18,66.24,66.24,66.28,66.32,66.34,66.35,66.38,66.4,66.4,66.43,66.43,66.45,66.46,66.47,66.48,66.5,66.53,66.53,66.57,66.58,66.59,66.61,66.62,66.62,66.65,66.66,66.67,66.68,66.7,66.78,66.78,66.85,66.87,66.88,66.91,66.93,66.96,66.96,66.97,66.98,66.98,66.99,67.01,67.02,67.04,67.04,67.06,67.14,67.15,67.16,67.2,67.2,67.22,67.24,67.25,67.27,67.27,67.28,67.29,67.35,67.37,67.41,67.43,67.45,67.48,67.49,67.51,67.52,67.53,67.53,67.53,67.56,67.57,67.57,67.59,67.6,67.64,67.66,67.67,67.69,67.71,67.73,67.74,67.74,67.76,67.77,67.78,67.79,67.8,67.81,67.83,67.84,67.86,67.87,67.92,67.93,67.94,67.94,67.96,67.96,67.99,68,68.05,68.05,68.06,68.07,68.08,68.08,68.1,68.11,68.12,68.12,68.12,68.11,68.09,68.08,68.07,68.05,68.05,68.01,68.01,68,67.97,67.97,68.05,68.06,68.13,68.15,68.18,68.19,68.2,68.22,68.31,68.32,68.34,68.36,68.37,68.41,68.43,68.52,68.54,68.55,68.57,68.58,68.58,68.54,68.53,68.51,68.51,68.52,68.52,68.52,68.51,68.5,68.5,68.5,68.49,68.47,68.44,68.42,68.41,68.38,68.38,68.37,68.36,68.35,68.35,68.39,68.39,68.4,68.41,68.42,68.42,68.44,68.46,68.49,68.5,68.52,68.53,68.55,68.56,68.57,68.59,68.59,68.6,68.61,68.63,68.67,68.68,68.7,68.73,68.74,68.75,68.76,68.77,68.77,68.81,68.85,68.86,68.88,68.89,68.91,68.92,68.92,68.93,68.93,68.97,69,69,69.03,69.05,69.06,69.06,69.06,69.06,69.06,69.06,69.05,69.06,69.06,69.06,69.06,69.07,69.11,69.12,69.1,69.1],t_norgeLon:[20.78,20.84,21.06,21.07,21.13,21.13,21.07,21.03,21.03,21.03,21.03,21.05,21.11,21.16,21.18,21.22,21.29,21.38,21.65,21.69,21.7,21.83,21.87,21.88,21.89,21.9,21.95,22.08,22.09,22.16,22.17,22.18,22.19,22.2,22.3,22.34,22.34,22.35,22.35,22.36,22.37,22.37,22.38,22.41,22.44,22.49,22.52,22.53,22.57,22.7,22.73,22.8,23.02,23.04,23.06,23.07,23.16,23.17,23.2,23.21,23.22,23.24,23.31,23.32,23.34,23.37,23.39,23.44,23.51,23.55,23.59,23.64,23.64,23.67,23.72,23.75,23.77,23.88,23.93,23.96,24,24.03,24.05,24.15,24.14,24.15,24.19,24.22,24.24,24.27,24.31,24.47,24.62,24.62,24.67,24.71,24.72,24.73,24.78,24.8,24.79,24.8,24.81,24.83,24.85,24.86,24.87,24.9,24.91,24.91,24.91,24.91,24.91,24.92,24.92,24.92,24.93,24.94,24.95,24.98,24.99,25,25.01,25.04,25.05,25.06,25.07,25.08,25.08,25.09,25.12,25.13,25.13,25.12,25.13,25.12,25.11,25.11,25.12,25.11,25.12,25.12,25.14,25.14,25.13,25.13,25.13,25.16,25.17,25.18,25.21,25.23,25.24,25.25,25.26,25.27,25.29,25.3,25.31,25.32,25.36,25.38,25.39,25.4,25.41,25.41,25.42,25.43,25.45,25.46,25.47,25.48,25.49,25.51,25.52,25.52,25.53,25.54,25.55,25.57,25.58,25.59,25.61,25.61,25.63,25.64,25.65,25.66,25.68,25.69,25.69,25.7,25.71,25.74,25.76,25.77,25.78,25.79,25.74,25.75,25.76,25.76,25.74,25.73,25.72,25.71,25.72,25.73,25.72,25.72,25.73,25.75,25.74,25.75,25.76,25.75,25.76,25.75,25.76,25.75,25.76,25.78,25.79,25.79,25.81,25.82,25.82,25.84,25.85,25.84,25.83,25.83,25.81,25.82,25.81,25.82,25.83,25.84,25.85,25.87,25.86,25.87,25.89,25.88,25.86,25.88,25.92,25.96,25.97,25.99,25.98,25.97,25.95,25.93,25.92,25.91,25.92,25.94,25.95,25.97,25.99,26,26.05,26.1,26.13,26.14,26.16,26.17,26.2,26.26,26.26,26.28,26.31,26.37,26.4,26.43,26.43,26.42,26.45,26.47,26.47,26.68,26.69,26.7,26.71,26.72,26.72,26.73,26.74,26.79,26.85,26.86,26.85,26.86,26.86,26.87,26.88,26.91,26.93,26.94,26.96,26.98,27,27.01,27.02,27.04,27.06,27.1,27.15,27.16,27.17,27.24,27.28,27.29,27.3,27.3,27.29,27.29,27.28,27.29,27.3,27.34,27.36,27.38,27.4,27.45,27.46,27.47,27.53,27.53,27.54,27.54,27.56,27.56,27.57,27.61,27.67,27.71,27.74,27.75,27.76,27.77,27.89,27.91,27.95,27.96,27.98,27.98,27.99,28.01,28.16,28.27,28.3,28.34,28.34,28.35,28.35,28.36,28.42,28.43,28.62,28.63,29.13,29.14,29.14,29.14,29.25,29.27,29.29,29.3,29.32,29.33,29.34,29.32,29.31,29.22,29.2,29.01,28.94,28.83,28.83,28.83,28.83,28.82,28.82,28.81,28.81,28.8,28.82,28.83,28.86,28.93,28.95,28.97,29.01,29.03,29.04,29.04,29.05,29.06,29.08,29.1,29.16,29.19,29.24,29.26,29.28,29.32,29.32,29.33,29.33,29.31,29.31,29.3,29.31,29.31,29.31,29.32,29.35,29.4,29.43,29.45,29.49,29.5,29.55,29.57,29.58,29.62,29.67,29.71,29.72,29.76,29.77,29.79,29.81,29.82,29.84,29.87,29.89,29.92,29.93,29.94,29.95,29.97,29.98,29.99,30.02,30.04,30.05,30.06,30.07,30.09,30.12,30.12,30.13,30.14,30.15,30.14,30.15,30.16,30.18,30.2,30.2,30.19,30.19,30.18,30.16,30.16,30.16,30.16,30.15,30.14,30.11,30.11,30.12,30.13,30.15,30.23,30.3,30.31,30.32,30.37,30.36,30.42,30.51,30.52,30.54,30.62,30.67,30.68,30.72,30.73,30.72,30.75,30.82,30.93,30.94,30.94,30.95,30.95,30.95,30.95,30.94,30.93,30.93,30.94,30.94,30.95,30.95,30.94,30.93,30.91,30.9,30.89,30.88,30.89,30.9,30.84,30.83,30.81,30.8,30.79,30.77,30.76,30.72,30.71,30.69,30.79,30.83,30.82,31.11,31.2,31.51,31.52,31.52,31.59,31.64,31.75,31.76,31.76,31.75,31.71,31.66,31.57,31.22,31.14,30.61,30.45,30.05,30.03,29.57,29.16,28.47,28.34,27.98,27.77,27.06,26.68,25.96,25.6,24.92,24.63,24.34,23.99,23.77,23.67,23.25,22.85,22.3,22.24,21.91,21.7,21.17,20.48,19.88,19.38,18.82,18.29,18.18,17.8,17.61,17.44,17.16,17.05,16.9,16.81,16.57,16.25,15.79,15.75,15.29,15.15,15.02,14.79,14.78,14.62,14.37,14.34,14.19,13.95,13.84,13.74,13.7,13.49,13.39,13.26,13.23,13.01,13,12.8,12.67,12.59,12.47,12.42,12.39,12.28,12.16,12.13,11.99,11.71,11.7,11.48,11.41,11.36,11.31,11.3,11.31,11.35,11.66,11.86,11.63,11.57,11.3,11.08,10.95,10.8,10.67,10.64,10.61,10.58,10.45,10.36,10.15,10.08,10,9.8,9.7,9.32,8.94,8.62,8.36,8.11,7.65,7.53,7.36,7.11,6.97,6.92,6.86,6.84,6.8,6.62,6.6,6.5,6.34,6.13,6.06,5.98,5.89,5.64,5.51,5.34,5.25,4.94,4.89,4.81,4.68,4.58,4.55,4.44,4.28,4.22,4.17,4.15,4.13,4.13,4.13,4.11,4.1,4.09,4.09,4.09,4.18,4.19,4.24,4.26,4.33,4.36,4.4,4.42,4.43,4.47,4.51,4.52,4.55,4.55,4.56,4.6,4.62,4.64,4.65,4.66,4.67,4.67,4.61,4.6,4.57,4.53,4.48,4.46,4.45,4.47,4.5,4.55,4.6,4.72,4.8,4.89,4.96,5.01,5.05,5.07,5.08,5.14,5.16,5.18,5.22,5.25,5.28,5.34,5.4,5.47,5.52,5.61,5.87,6.04,6.07,6.08,6.15,6.16,6.27,6.39,6.48,6.49,6.77,6.93,7.1,7.16,7.26,7.47,7.59,7.69,7.77,7.84,7.88,8.01,8.09,8.3,8.37,8.46,8.54,8.63,8.68,8.75,8.85,8.9,8.94,9.07,9.3,9.36,9.37,9.53,9.67,9.79,9.97,9.99,10.01,10.06,10.15,10.29,10.36,10.58,10.59,10.64,10.92,10.98,11.07,11.09,11.12,11.15,11.21,11.24,11.26,11.28,11.3,11.31,11.32,11.33,11.34,11.35,11.36,11.37,11.38,11.39,11.39,11.39,11.4,11.41,11.42,11.42,11.43,11.44,11.46,11.45,11.46,11.46,11.46,11.46,11.46,11.45,11.45,11.46,11.47,11.48,11.49,11.5,11.51,11.52,11.53,11.54,11.55,11.56,11.55,11.56,11.57,11.57,11.58,11.58,11.59,11.61,11.62,11.62,11.63,11.64,11.65,11.66,11.66,11.66,11.67,11.67,11.68,11.69,11.69,11.7,11.7,11.71,11.71,11.72,11.72,11.73,11.74,11.75,11.76,11.76,11.78,11.79,11.79,11.78,11.77,11.78,11.79,11.79,11.79,11.79,11.79,11.79,11.8,11.8,11.8,11.8,11.81,11.82,11.83,11.84,11.84,11.84,11.83,11.83,11.84,11.83,11.83,11.83,11.82,11.82,11.8,11.79,11.79,11.78,11.77,11.77,11.77,11.77,11.77,11.76,11.75,11.74,11.72,11.72,11.71,11.71,11.7,11.7,11.71,11.71,11.72,11.72,11.73,11.74,11.75,11.76,11.77,11.79,11.82,11.83,11.84,11.86,11.87,11.88,11.88,11.89,11.9,11.91,11.92,11.93,11.94,11.95,11.95,11.94,11.94,11.94,11.94,11.95,11.95,11.94,11.95,11.94,11.94,11.9,11.9,11.88,11.87,11.86,11.85,11.86,11.87,11.89,11.89,11.91,11.92,11.92,11.93,11.94,11.98,11.99,12.02,12.03,12.04,12.05,12.07,12.08,12.11,12.13,12.15,12.16,12.17,12.18,12.19,12.2,12.21,12.22,12.24,12.25,12.26,12.28,12.31,12.32,12.34,12.35,12.36,12.37,12.38,12.38,12.39,12.41,12.43,12.44,12.45,12.46,12.47,12.48,12.5,12.52,12.52,12.53,12.53,12.54,12.53,12.52,12.52,12.52,12.52,12.51,12.5,12.5,12.5,12.5,12.52,12.54,12.55,12.56,12.57,12.58,12.58,12.59,12.6,12.6,12.61,12.62,12.62,12.62,12.62,12.61,12.61,12.6,12.59,12.57,12.55,12.53,12.53,12.52,12.52,12.52,12.52,12.52,12.51,12.5,12.48,12.46,12.43,12.41,12.4,12.37,12.35,12.35,12.34,12.34,12.34,12.34,12.33,12.33,12.33,12.32,12.31,12.29,12.28,12.26,12.26,12.25,12.23,12.32,12.37,12.38,12.4,12.41,12.44,12.45,12.47,12.49,12.54,12.6,12.61,12.64,12.65,12.66,12.67,12.67,12.68,12.69,12.69,12.7,12.7,12.71,12.71,12.71,12.71,12.79,12.81,12.83,12.84,12.84,12.85,12.85,12.86,12.88,12.86,12.84,12.82,12.79,12.78,12.71,12.64,12.6,12.58,12.55,12.52,12.49,12.47,12.47,12.46,12.43,12.39,12.39,12.36,12.34,12.33,12.3,12.2,12.18,12.14,12.14,12.15,12.15,12.16,12.17,12.17,12.18,12.18,12.19,12.19,12.19,12.22,12.27,12.28,12.28,12.29,12.29,12.3,12.31,12.32,12.32,12.31,12.23,12.22,12.22,12.21,12.17,12.13,12.08,12.07,12.06,12.06,12.07,12.09,12.1,12.1,12.11,12.12,12.13,12.14,12.11,12.11,12.09,12.08,12.13,12.18,12.18,12.2,12.21,12.22,12.23,12.22,12.22,12.2,12.19,12.13,12.08,12,11.98,12,12.05,12.06,12.06,12.07,12.08,12.07,12.12,12.22,12.18,12.18,12.15,12.24,12.27,12.34,12.35,12.35,12.38,12.4,12.42,12.44,12.48,12.5,12.52,12.51,12.57,12.62,12.63,12.66,12.69,12.74,12.75,12.76,12.77,12.84,12.86,12.88,12.89,12.92,13.04,13.09,13.15,13.16,13.17,13.2,13.2,13.5,13.65,13.66,13.81,13.83,13.92,13.92,13.97,13.99,14.01,14.03,14.06,14.07,14.1,14.11,14.13,14.16,14.16,14.14,14.13,14.13,14.12,14.12,14.12,14.13,14.13,14.12,14.12,14.09,14.06,13.95,13.92,13.78,13.76,13.7,13.66,13.69,13.7,13.8,13.9,13.92,13.93,13.96,13.98,13.99,14.01,14.06,14.09,14.11,14.13,14.14,14.15,14.17,14.26,14.28,14.32,14.35,14.35,14.36,14.37,14.37,14.39,14.4,14.46,14.52,14.52,14.51,14.51,14.51,14.51,14.51,14.51,14.51,14.51,14.51,14.52,14.52,14.53,14.53,14.53,14.54,14.54,14.54,14.57,14.58,14.59,14.62,14.62,14.63,14.61,14.6,14.6,14.59,14.59,14.58,14.56,14.54,14.53,14.52,14.65,14.83,14.85,14.95,15,15.03,15.08,15.14,15.36,15.37,15.5,15.49,15.48,15.47,15.45,15.44,15.43,15.42,15.41,15.4,15.4,15.39,15.38,15.42,15.49,15.5,15.59,15.61,15.63,15.65,15.66,15.67,15.71,15.72,15.73,15.75,15.78,15.88,15.89,15.98,16.01,16.02,16.06,16.11,16.16,16.17,16.2,16.23,16.24,16.26,16.3,16.32,16.41,16.4,16.4,16.41,16.41,16.41,16.42,16.41,16.4,16.36,16.35,16.33,16.32,16.31,16.3,16.22,16.19,16.14,16.11,16.12,16.15,16.15,16.17,16.17,16.38,16.4,16.43,16.46,16.47,16.49,16.5,16.52,16.56,16.58,16.59,16.61,16.61,16.62,16.63,16.64,16.65,16.65,16.66,16.66,16.67,16.68,16.69,16.7,16.71,16.72,16.75,16.77,16.81,16.85,16.92,16.93,16.99,17.03,17.15,17.16,17.17,17.19,17.21,17.22,17.25,17.27,17.28,17.29,17.3,17.33,17.41,17.48,17.52,17.63,17.64,17.76,17.78,17.82,17.9,17.91,17.99,18.01,18.08,18.09,18.13,18.15,18.16,18.16,18.14,18.13,18.13,18.13,18.12,18.11,18.11,18.13,18.13,18.21,18.33,18.38,18.42,18.52,18.56,18.62,18.68,18.95,18.98,18.99,19.04,19.08,19.09,19.1,19.14,19.29,19.44,19.54,19.59,19.76,19.78,19.82,19.92,19.96,19.97,20,20.02,20.05,20.08,20.09,20.12,20.17,20.22,20.27,20.21,20.1,20.08,20.01,19.98,20.01,20.06,20.07,20.09,20.11,20.14,20.21,20.22,20.23,20.26,20.27,20.28,20.29,20.3,20.31,20.35,20.35,20.35,20.34,20.35,20.35,20.35,20.34,20.34,20.33,20.25,20.2,20.18,20.13,20.09,20.07,20.08,20.11,20.29,20.31,20.4,20.41,20.44,20.47,20.55,20.56,20.59,20.69,20.72,20.77,20.78]},t=window.L;typeof module!="undefined"&&module.exports&&(t=require("leaflet"));t.TileLayer.Webatlas=t.TileLayer.extend({options:{url:"//tiles1881.webatlas.no/maptiles/tiles/{tileset}/wa_grid/{z}/{x}/{y}.{ext}?APITOKEN={apikey}",tileset:{vector:{tileset:"webatlas-standard-vektor",ext:"png"},aerial:{tileset:"webatlas-orto-newup",ext:"jpeg"},hybrid:{tileset:"webatlas-standard-hybrid",ext:"jpeg"},grey:{tileset:"webatlas-gray-vektor",ext:"png"},medium:{tileset:"webatlas-medium-vektor",ext:"png"},lite:{tileset:"webatlas-lite-vektor",ext:"png"}},mapType:"vector",maxZoom:20,minZoom:0},initialize:function(n){if(n=n||{},t.Util.setOptions(this,n),this.options.url=window.location.protocol==="https:"?"https:"+this.options.url:"http:"+this.options.url,!this.options.apikey)throw new Error("Missing API KEY!");this.options.url=i(this.options.url,{apikey:this.options.apikey});var r=this.options.mapType||t.TileLayer.Webatlas.Type.VECTOR;if(!this.options.tileset[r])throw new Error("Unknown map type!");this.options.url=i(this.options.url,this.options.tileset[r]);this.setUrl(this.options.url)},onAdd:function(n){this._map=n;this._attribution="";this._map.on("moveend",this._onMapMoved,this);this._onMapMoved();t.TileLayer.prototype.onAdd.call(this,n)},onRemove:function(n){n.off("moveend",this._onMapMoved,this);t.TileLayer.prototype.onRemove.call(this,n)},_onMapMoved:function(){var n=this._getCopyrightText();this._map.attributionControl||(this._map.attributionControl=t.control.attribution().addTo(this._map));this._map.attributionControl.removeAttribution(this._attribution);this._map.attributionControl.addAttribution(n);this._attribution=n},_getCopyrightText:function(){var i=this._map.getCenter(),r=this._map.getZoom(),t=["&copy; "+n.t_currentYear+" Norkart AS/Plan- og bygningsetaten, Oslo Kommune","&copy; "+n.t_currentYear+" Norkart AS/Geovekst og kommunene/OpenStreetMap/NASA, Meti","&copy; "+n.t_currentYear+" Norkart AS/Geovekst og kommunene/OpenStreetMap/NASA, Meti","&copy; "+n.t_currentYear+" Norkart AS/OpenStreetMap/EEA CLC2006"];if(r>=13){if(r<=14)try{if(this.t_containsPoint(i,n.t_norgeLat,n.t_norgeLon))return t[1]}catch(u){}else{try{if(this.t_containsPoint(i,n.t_osloLat,n.t_osloLon))return t[0]}catch(u){}try{if(this.t_containsPoint(i,n.t_norgeLat,n.t_norgeLon))return t[1]}catch(u){}}return t[3]}try{return this.t_containsPoint(i,n.t_norgeLat,n.t_norgeLon)?t[2]:t[3]}catch(u){}},t_containsPoint:function(n,t,i){for(var u=0,e=t.length,f=!1,r=0;r<e;r++)u++,u===e&&(u=0),(i[r]<n.lng&&i[u]>=n.lng||i[u]<n.lng&&i[r]>=n.lng)&&t[r]+(n.lng-i[r])/(i[u]-i[r])*(t[u]-t[r])<n.lat&&(f=!f);return f}});t.TileLayer.Webatlas.Type={VECTOR:"vector",AERIAL:"aerial",HYBRID:"hybrid",GREY:"grey",MEDIUM:"medium",LITE:"lite"};t.tileLayer.webatlas=function(n){return new t.TileLayer.Webatlas(n)}}();DM1881=DM1881||{};DM1881.GaLog=function(){function t(t){return t.reduce(function(t,i,r){return t[n.defaultColumns[r]]=i,t},{})}function i(t){t.hasOwnProperty(n.defaultColumns[0])&&(window.dataLayer=window.dataLayer||[],t.event=n.eventName,window.dataLayer.push(t))}var n={queryField:"[data-galog]",defaultColumns:["1881_category","1881_action","1881_label","1881_value"],eventName:"1881.click"},u=function(){var u=document.querySelectorAll(n.queryField),o=function(){i(t(this.dataset.galog.split("|")))},s=function(n){var r=this.dataset.galog+"|"+n.target.options[n.target.selectedIndex].innerHTML;i(t(r.split("|")))},r,e,f;if(u.length>0)for(r=0;r<u.length;r++)e=u[r].querySelectorAll("option"),f=e.length,typeof f=="undefined"||f<2?u[r].addEventListener("click",o):u[r].addEventListener("change",s)},f=function(){document.addEventListener("DOMContentLoaded",u)},r;return f(),r={},r.pushDataLayer=function(n){n.length<1||i(t(n))},r}()