if(!function(n,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=n.document?t(n,!0):function(n){if(!n.document)throw new Error("jQuery requires a window with a document");return t(n)}:t(n)}("undefined"!=typeof window?window:this,function(n,t){function ui(n){var t=n.length,r=i.type(n);return"function"===r||i.isWindow(n)?!1:1===n.nodeType&&t?!0:"array"===r||0===t||"number"==typeof t&&t>0&&t-1 in n}function fi(n,t,r){if(i.isFunction(t))return i.grep(n,function(n,i){return!!t.call(n,i,n)!==r});if(t.nodeType)return i.grep(n,function(n){return n===t!==r});if("string"==typeof t){if(ef.test(t))return i.filter(t,n,r);t=i.filter(t,n)}return i.grep(n,function(n){return et.call(t,n)>=0!==r})}function ur(n,t){while((n=n[t])&&1!==n.nodeType);return n}function of(n){var t=ei[n]={};return i.each(n.match(c)||[],function(n,i){t[i]=!0}),t}function ct(){u.removeEventListener("DOMContentLoaded",ct,!1);n.removeEventListener("load",ct,!1);i.ready()}function p(){Object.defineProperty(this.cache={},0,{get:function(){return{}}});this.expando=i.expando+Math.random()}function fr(n,t,r){var u;if(void 0===r&&1===n.nodeType)if(u="data-"+t.replace(hf,"-$1").toLowerCase(),r=n.getAttribute(u),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:sf.test(r)?i.parseJSON(r):r}catch(f){}e.set(n,t,r)}else r=void 0;return r}function at(){return!0}function g(){return!1}function hr(){try{return u.activeElement}catch(n){}}function vr(n,t){return i.nodeName(n,"table")&&i.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?n.getElementsByTagName("tbody")[0]||n.appendChild(n.ownerDocument.createElement("tbody")):n}function bf(n){return n.type=(null!==n.getAttribute("type"))+"/"+n.type,n}function kf(n){var t=pf.exec(n.type);return t?n.type=t[1]:n.removeAttribute("type"),n}function oi(n,t){for(var i=0,u=n.length;u>i;i++)r.set(n[i],"globalEval",!t||r.get(t[i],"globalEval"))}function yr(n,t){var u,c,f,s,h,l,a,o;if(1===t.nodeType){if(r.hasData(n)&&(s=r.access(n),h=r.set(t,s),o=s.events)){delete h.handle;h.events={};for(f in o)for(u=0,c=o[f].length;c>u;u++)i.event.add(t,f,o[f][u])}e.hasData(n)&&(l=e.access(n),a=i.extend({},l),e.set(t,a))}}function o(n,t){var r=n.getElementsByTagName?n.getElementsByTagName(t||"*"):n.querySelectorAll?n.querySelectorAll(t||"*"):[];return void 0===t||t&&i.nodeName(n,t)?i.merge([n],r):r}function df(n,t){var i=t.nodeName.toLowerCase();"input"===i&&er.test(n.type)?t.checked=n.checked:("input"===i||"textarea"===i)&&(t.defaultValue=n.defaultValue)}function pr(t,r){var f,u=i(r.createElement(t)).appendTo(r.body),e=n.getDefaultComputedStyle&&(f=n.getDefaultComputedStyle(u[0]))?f.display:i.css(u[0],"display");return u.detach(),e}function hi(n){var r=u,t=si[n];return t||(t=pr(n,r),"none"!==t&&t||(vt=(vt||i("<iframe frameborder='0' width='0' height='0'/>")).appendTo(r.documentElement),r=vt[0].contentDocument,r.write(),r.close(),t=pr(n,r),vt.detach()),si[n]=t),t}function rt(n,t,r){var e,o,s,u,f=n.style;return r=r||yt(n),r&&(u=r.getPropertyValue(t)||r[t]),r&&(""!==u||i.contains(n.ownerDocument,n)||(u=i.style(n,t)),ci.test(u)&&wr.test(t)&&(e=f.width,o=f.minWidth,s=f.maxWidth,f.minWidth=f.maxWidth=f.width=u,u=r.width,f.width=e,f.minWidth=o,f.maxWidth=s)),void 0!==u?u+"":u}function br(n,t){return{get:function(){return n()?void delete this.get:(this.get=t).apply(this,arguments)}}}function gr(n,t){if(t in n)return t;for(var r=t[0].toUpperCase()+t.slice(1),u=t,i=dr.length;i--;)if(t=dr[i]+r,t in n)return t;return u}function nu(n,t,i){var r=ne.exec(t);return r?Math.max(0,r[1]-(i||0))+(r[2]||"px"):t}function tu(n,t,r,u,f){for(var e=r===(u?"border":"content")?4:"width"===t?1:0,o=0;4>e;e+=2)"margin"===r&&(o+=i.css(n,r+w[e],!0,f)),u?("content"===r&&(o-=i.css(n,"padding"+w[e],!0,f)),"margin"!==r&&(o-=i.css(n,"border"+w[e]+"Width",!0,f))):(o+=i.css(n,"padding"+w[e],!0,f),"padding"!==r&&(o+=i.css(n,"border"+w[e]+"Width",!0,f)));return o}function iu(n,t,r){var o=!0,u="width"===t?n.offsetWidth:n.offsetHeight,e=yt(n),s="border-box"===i.css(n,"boxSizing",!1,e);if(0>=u||null==u){if(u=rt(n,t,e),(0>u||null==u)&&(u=n.style[t]),ci.test(u))return u;o=s&&(f.boxSizingReliable()||u===n.style[t]);u=parseFloat(u)||0}return u+tu(n,t,r||(s?"border":"content"),o,e)+"px"}function ru(n,t){for(var e,u,s,o=[],f=0,h=n.length;h>f;f++)u=n[f],u.style&&(o[f]=r.get(u,"olddisplay"),e=u.style.display,t?(o[f]||"none"!==e||(u.style.display=""),""===u.style.display&&it(u)&&(o[f]=r.access(u,"olddisplay",hi(u.nodeName)))):(s=it(u),"none"===e&&s||r.set(u,"olddisplay",s?e:i.css(u,"display"))));for(f=0;h>f;f++)u=n[f],u.style&&(t&&"none"!==u.style.display&&""!==u.style.display||(u.style.display=t?o[f]||"":"none"));return n}function s(n,t,i,r,u){return new s.prototype.init(n,t,i,r,u)}function fu(){return setTimeout(function(){nt=void 0}),nt=i.now()}function bt(n,t){var r,u=0,i={height:n};for(t=t?1:0;4>u;u+=2-t)r=w[u],i["margin"+r]=i["padding"+r]=n;return t&&(i.opacity=i.width=n),i}function eu(n,t,i){for(var u,f=(ut[t]||[]).concat(ut["*"]),r=0,e=f.length;e>r;r++)if(u=f[r].call(i,t,n))return u}function fe(n,t,u){var f,a,p,v,o,w,h,b,l=this,y={},s=n.style,c=n.nodeType&&it(n),e=r.get(n,"fxshow");u.queue||(o=i._queueHooks(n,"fx"),null==o.unqueued&&(o.unqueued=0,w=o.empty.fire,o.empty.fire=function(){o.unqueued||w()}),o.unqueued++,l.always(function(){l.always(function(){o.unqueued--;i.queue(n,"fx").length||o.empty.fire()})}));1===n.nodeType&&("height"in t||"width"in t)&&(u.overflow=[s.overflow,s.overflowX,s.overflowY],h=i.css(n,"display"),b="none"===h?r.get(n,"olddisplay")||hi(n.nodeName):h,"inline"===b&&"none"===i.css(n,"float")&&(s.display="inline-block"));u.overflow&&(s.overflow="hidden",l.always(function(){s.overflow=u.overflow[0];s.overflowX=u.overflow[1];s.overflowY=u.overflow[2]}));for(f in t)if(a=t[f],re.exec(a)){if(delete t[f],p=p||"toggle"===a,a===(c?"hide":"show")){if("show"!==a||!e||void 0===e[f])continue;c=!0}y[f]=e&&e[f]||i.style(n,f)}else h=void 0;if(i.isEmptyObject(y))"inline"===("none"===h?hi(n.nodeName):h)&&(s.display=h);else{e?"hidden"in e&&(c=e.hidden):e=r.access(n,"fxshow",{});p&&(e.hidden=!c);c?i(n).show():l.done(function(){i(n).hide()});l.done(function(){var t;r.remove(n,"fxshow");for(t in y)i.style(n,t,y[t])});for(f in y)v=eu(c?e[f]:0,f,l),f in e||(e[f]=v.start,c&&(v.end=v.start,v.start="width"===f||"height"===f?1:0))}}function ee(n,t){var r,f,e,u,o;for(r in n)if(f=i.camelCase(r),e=t[f],u=n[r],i.isArray(u)&&(e=u[1],u=n[r]=u[0]),r!==f&&(n[f]=u,delete n[r]),o=i.cssHooks[f],o&&"expand"in o){u=o.expand(u);delete n[f];for(r in u)r in n||(n[r]=u[r],t[r]=e)}else t[f]=e}function ou(n,t,r){var h,e,o=0,l=wt.length,f=i.Deferred().always(function(){delete c.elem}),c=function(){if(e)return!1;for(var s=nt||fu(),t=Math.max(0,u.startTime+u.duration-s),h=t/u.duration||0,i=1-h,r=0,o=u.tweens.length;o>r;r++)u.tweens[r].run(i);return f.notifyWith(n,[u,i,t]),1>i&&o?t:(f.resolveWith(n,[u]),!1)},u=f.promise({elem:n,props:i.extend({},t),opts:i.extend(!0,{specialEasing:{}},r),originalProperties:t,originalOptions:r,startTime:nt||fu(),duration:r.duration,tweens:[],createTween:function(t,r){var f=i.Tween(n,u.opts,t,r,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(f),f},stop:function(t){var i=0,r=t?u.tweens.length:0;if(e)return this;for(e=!0;r>i;i++)u.tweens[i].run(1);return t?f.resolveWith(n,[u,t]):f.rejectWith(n,[u,t]),this}}),s=u.props;for(ee(s,u.opts.specialEasing);l>o;o++)if(h=wt[o].call(u,n,s,u.opts))return h;return i.map(s,eu,u),i.isFunction(u.opts.start)&&u.opts.start.call(n,u),i.fx.timer(i.extend(c,{elem:n,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function pu(n){return function(t,r){"string"!=typeof t&&(r=t,t="*");var u,f=0,e=t.toLowerCase().match(c)||[];if(i.isFunction(r))while(u=e[f++])"+"===u[0]?(u=u.slice(1)||"*",(n[u]=n[u]||[]).unshift(r)):(n[u]=n[u]||[]).push(r)}}function wu(n,t,r,u){function e(s){var h;return f[s]=!0,i.each(n[s]||[],function(n,i){var s=i(t,r,u);return"string"!=typeof s||o||f[s]?o?!(h=s):void 0:(t.dataTypes.unshift(s),e(s),!1)}),h}var f={},o=n===li;return e(t.dataTypes[0])||!f["*"]&&e("*")}function ai(n,t){var r,u,f=i.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((f[r]?n:u||(u={}))[r]=t[r]);return u&&i.extend(!0,n,u),n}function ae(n,t,i){for(var e,u,f,o,s=n.contents,r=n.dataTypes;"*"===r[0];)r.shift(),void 0===e&&(e=n.mimeType||t.getResponseHeader("Content-Type"));if(e)for(u in s)if(s[u]&&s[u].test(e)){r.unshift(u);break}if(r[0]in i)f=r[0];else{for(u in i){if(!r[0]||n.converters[u+" "+r[0]]){f=u;break}o||(o=u)}f=f||o}if(f)return(f!==r[0]&&r.unshift(f),i[f])}function ve(n,t,i,r){var h,u,f,s,e,o={},c=n.dataTypes.slice();if(c[1])for(f in n.converters)o[f.toLowerCase()]=n.converters[f];for(u=c.shift();u;)if(n.responseFields[u]&&(i[n.responseFields[u]]=t),!e&&r&&n.dataFilter&&(t=n.dataFilter(t,n.dataType)),e=u,u=c.shift())if("*"===u)u=e;else if("*"!==e&&e!==u){if(f=o[e+" "+u]||o["* "+u],!f)for(h in o)if(s=h.split(" "),s[1]===u&&(f=o[e+" "+s[0]]||o["* "+s[0]])){f===!0?f=o[h]:o[h]!==!0&&(u=s[0],c.unshift(s[1]));break}if(f!==!0)if(f&&n.throws)t=f(t);else try{t=f(t)}catch(l){return{state:"parsererror",error:f?l:"No conversion from "+e+" to "+u}}}return{state:"success",data:t}}function vi(n,t,r,u){var f;if(i.isArray(t))i.each(t,function(t,i){r||pe.test(n)?u(n,i):vi(n+"["+("object"==typeof i?t:"")+"]",i,r,u)});else if(r||"object"!==i.type(t))u(n,t);else for(f in t)vi(n+"["+f+"]",t[f],r,u)}function ku(n){return i.isWindow(n)?n:9===n.nodeType&&n.defaultView}var k=[],a=k.slice,bi=k.concat,ii=k.push,et=k.indexOf,ot={},nf=ot.toString,ri=ot.hasOwnProperty,f={},u=n.document,ki="2.1.1",i=function(n,t){return new i.fn.init(n,t)},tf=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,rf=/^-ms-/,uf=/-([\da-z])/gi,ff=function(n,t){return t.toUpperCase()},y,st,nr,tr,ir,rr,c,ei,ht,l,d,vt,si,oe,su,tt,hu,kt,cu,dt,gt,yi,ti,pi,wi,du,gu;i.fn=i.prototype={jquery:ki,constructor:i,selector:"",length:0,toArray:function(){return a.call(this)},get:function(n){return null!=n?0>n?this[n+this.length]:this[n]:a.call(this)},pushStack:function(n){var t=i.merge(this.constructor(),n);return t.prevObject=this,t.context=this.context,t},each:function(n,t){return i.each(this,n,t)},map:function(n){return this.pushStack(i.map(this,function(t,i){return n.call(t,i,t)}))},slice:function(){return this.pushStack(a.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(n){var i=this.length,t=+n+(0>n?i:0);return this.pushStack(t>=0&&i>t?[this[t]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:ii,sort:k.sort,splice:k.splice};i.extend=i.fn.extend=function(){var e,f,r,t,o,s,n=arguments[0]||{},u=1,c=arguments.length,h=!1;for("boolean"==typeof n&&(h=n,n=arguments[u]||{},u++),"object"==typeof n||i.isFunction(n)||(n={}),u===c&&(n=this,u--);c>u;u++)if(null!=(e=arguments[u]))for(f in e)r=n[f],t=e[f],n!==t&&(h&&t&&(i.isPlainObject(t)||(o=i.isArray(t)))?(o?(o=!1,s=r&&i.isArray(r)?r:[]):s=r&&i.isPlainObject(r)?r:{},n[f]=i.extend(h,s,t)):void 0!==t&&(n[f]=t));return n};i.extend({expando:"jQuery"+(ki+Math.random()).replace(/\D/g,""),isReady:!0,error:function(n){throw new Error(n);},noop:function(){},isFunction:function(n){return"function"===i.type(n)},isArray:Array.isArray,isWindow:function(n){return null!=n&&n===n.window},isNumeric:function(n){return!i.isArray(n)&&n-parseFloat(n)>=0},isPlainObject:function(n){return"object"!==i.type(n)||n.nodeType||i.isWindow(n)?!1:n.constructor&&!ri.call(n.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(n){var t;for(t in n)return!1;return!0},type:function(n){return null==n?n+"":"object"==typeof n||"function"==typeof n?ot[nf.call(n)]||"object":typeof n},globalEval:function(n){var t,r=eval;n=i.trim(n);n&&(1===n.indexOf("use strict")?(t=u.createElement("script"),t.text=n,u.head.appendChild(t).parentNode.removeChild(t)):r(n))},camelCase:function(n){return n.replace(rf,"ms-").replace(uf,ff)},nodeName:function(n,t){return n.nodeName&&n.nodeName.toLowerCase()===t.toLowerCase()},each:function(n,t,i){var u,r=0,f=n.length,e=ui(n);if(i){if(e){for(;f>r;r++)if(u=t.apply(n[r],i),u===!1)break}else for(r in n)if(u=t.apply(n[r],i),u===!1)break}else if(e){for(;f>r;r++)if(u=t.call(n[r],r,n[r]),u===!1)break}else for(r in n)if(u=t.call(n[r],r,n[r]),u===!1)break;return n},trim:function(n){return null==n?"":(n+"").replace(tf,"")},makeArray:function(n,t){var r=t||[];return null!=n&&(ui(Object(n))?i.merge(r,"string"==typeof n?[n]:n):ii.call(r,n)),r},inArray:function(n,t,i){return null==t?-1:et.call(t,n,i)},merge:function(n,t){for(var u=+t.length,i=0,r=n.length;u>i;i++)n[r++]=t[i];return n.length=r,n},grep:function(n,t,i){for(var u,f=[],r=0,e=n.length,o=!i;e>r;r++)u=!t(n[r],r),u!==o&&f.push(n[r]);return f},map:function(n,t,i){var u,r=0,e=n.length,o=ui(n),f=[];if(o)for(;e>r;r++)u=t(n[r],r,i),null!=u&&f.push(u);else for(r in n)u=t(n[r],r,i),null!=u&&f.push(u);return bi.apply([],f)},guid:1,proxy:function(n,t){var u,f,r;return"string"==typeof t&&(u=n[t],t=n,n=u),i.isFunction(n)?(f=a.call(arguments,2),r=function(){return n.apply(t||this,f.concat(a.call(arguments)))},r.guid=n.guid=n.guid||i.guid++,r):void 0},now:Date.now,support:f});i.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(n,t){ot["[object "+t+"]"]=t.toLowerCase()});y=function(n){function r(n,t,i,r){var w,h,c,v,k,y,d,l,nt,g;if((t?t.ownerDocument||t:s)!==e&&p(t),t=t||e,i=i||[],!n||"string"!=typeof n)return i;if(1!==(v=t.nodeType)&&9!==v)return[];if(a&&!r){if(w=sr.exec(n))if(c=w[1]){if(9===v){if(h=t.getElementById(c),!h||!h.parentNode)return i;if(h.id===c)return i.push(h),i}else if(t.ownerDocument&&(h=t.ownerDocument.getElementById(c))&&ot(t,h)&&h.id===c)return i.push(h),i}else{if(w[2])return b.apply(i,t.getElementsByTagName(n)),i;if((c=w[3])&&u.getElementsByClassName&&t.getElementsByClassName)return b.apply(i,t.getElementsByClassName(c)),i}if(u.qsa&&(!o||!o.test(n))){if(l=d=f,nt=t,g=9===v&&n,1===v&&"object"!==t.nodeName.toLowerCase()){for(y=et(n),(d=t.getAttribute("id"))?l=d.replace(hr,"\\$&"):t.setAttribute("id",l),l="[id='"+l+"'] ",k=y.length;k--;)y[k]=l+yt(y[k]);nt=gt.test(n)&&ii(t.parentNode)||t;g=y.join(",")}if(g)try{return b.apply(i,nt.querySelectorAll(g)),i}catch(tt){}finally{d||t.removeAttribute("id")}}}return si(n.replace(at,"$1"),t,i,r)}function ni(){function n(r,u){return i.push(r+" ")>t.cacheLength&&delete n[i.shift()],n[r+" "]=u}var i=[];return n}function h(n){return n[f]=!0,n}function c(n){var t=e.createElement("div");try{return!!n(t)}catch(i){return!1}finally{t.parentNode&&t.parentNode.removeChild(t);t=null}}function ti(n,i){for(var u=n.split("|"),r=n.length;r--;)t.attrHandle[u[r]]=i}function wi(n,t){var i=t&&n,r=i&&1===n.nodeType&&1===t.nodeType&&(~t.sourceIndex||ai)-(~n.sourceIndex||ai);if(r)return r;if(i)while(i=i.nextSibling)if(i===t)return-1;return n?1:-1}function cr(n){return function(t){var i=t.nodeName.toLowerCase();return"input"===i&&t.type===n}}function lr(n){return function(t){var i=t.nodeName.toLowerCase();return("input"===i||"button"===i)&&t.type===n}}function tt(n){return h(function(t){return t=+t,h(function(i,r){for(var u,f=n([],i.length,t),e=f.length;e--;)i[u=f[e]]&&(i[u]=!(r[u]=i[u]))})})}function ii(n){return n&&typeof n.getElementsByTagName!==ut&&n}function bi(){}function yt(n){for(var t=0,r=n.length,i="";r>t;t++)i+=n[t].value;return i}function ri(n,t,i){var r=t.dir,u=i&&"parentNode"===r,e=ki++;return t.first?function(t,i,f){while(t=t[r])if(1===t.nodeType||u)return n(t,i,f)}:function(t,i,o){var s,h,c=[v,e];if(o){while(t=t[r])if((1===t.nodeType||u)&&n(t,i,o))return!0}else while(t=t[r])if(1===t.nodeType||u){if(h=t[f]||(t[f]={}),(s=h[r])&&s[0]===v&&s[1]===e)return c[2]=s[2];if(h[r]=c,c[2]=n(t,i,o))return!0}}}function ui(n){return n.length>1?function(t,i,r){for(var u=n.length;u--;)if(!n[u](t,i,r))return!1;return!0}:n[0]}function ar(n,t,i){for(var u=0,f=t.length;f>u;u++)r(n,t[u],i);return i}function pt(n,t,i,r,u){for(var e,o=[],f=0,s=n.length,h=null!=t;s>f;f++)(e=n[f])&&(!i||i(e,r,u))&&(o.push(e),h&&t.push(f));return o}function fi(n,t,i,r,u,e){return r&&!r[f]&&(r=fi(r)),u&&!u[f]&&(u=fi(u,e)),h(function(f,e,o,s){var l,c,a,p=[],y=[],w=e.length,k=f||ar(t||"*",o.nodeType?[o]:o,[]),v=!n||!f&&t?k:pt(k,p,n,o,s),h=i?u||(f?n:w||r)?[]:e:v;if(i&&i(v,h,o,s),r)for(l=pt(h,y),r(l,[],o,s),c=l.length;c--;)(a=l[c])&&(h[y[c]]=!(v[y[c]]=a));if(f){if(u||n){if(u){for(l=[],c=h.length;c--;)(a=h[c])&&l.push(v[c]=a);u(null,h=[],l,s)}for(c=h.length;c--;)(a=h[c])&&(l=u?nt.call(f,a):p[c])>-1&&(f[l]=!(e[l]=a))}}else h=pt(h===e?h.splice(w,h.length):h),u?u(null,e,h,s):b.apply(e,h)})}function ei(n){for(var s,u,r,o=n.length,h=t.relative[n[0].type],c=h||t.relative[" "],i=h?1:0,l=ri(function(n){return n===s},c,!0),a=ri(function(n){return nt.call(s,n)>-1},c,!0),e=[function(n,t,i){return!h&&(i||t!==ct)||((s=t).nodeType?l(n,t,i):a(n,t,i))}];o>i;i++)if(u=t.relative[n[i].type])e=[ri(ui(e),u)];else{if(u=t.filter[n[i].type].apply(null,n[i].matches),u[f]){for(r=++i;o>r;r++)if(t.relative[n[r].type])break;return fi(i>1&&ui(e),i>1&&yt(n.slice(0,i-1).concat({value:" "===n[i-2].type?"*":""})).replace(at,"$1"),u,r>i&&ei(n.slice(i,r)),o>r&&ei(n=n.slice(r)),o>r&&yt(n))}e.push(u)}return ui(e)}function vr(n,i){var u=i.length>0,f=n.length>0,o=function(o,s,h,c,l){var y,d,w,k=0,a="0",g=o&&[],p=[],nt=ct,tt=o||f&&t.find.TAG("*",l),it=v+=null==nt?1:Math.random()||.1,rt=tt.length;for(l&&(ct=s!==e&&s);a!==rt&&null!=(y=tt[a]);a++){if(f&&y){for(d=0;w=n[d++];)if(w(y,s,h)){c.push(y);break}l&&(v=it)}u&&((y=!w&&y)&&k--,o&&g.push(y))}if(k+=a,u&&a!==k){for(d=0;w=i[d++];)w(g,p,s,h);if(o){if(k>0)while(a--)g[a]||p[a]||(p[a]=gi.call(c));p=pt(p)}b.apply(c,p);l&&!o&&p.length>0&&k+i.length>1&&r.uniqueSort(c)}return l&&(v=it,ct=nt),g};return u?h(o):o}var it,u,t,ht,oi,et,wt,si,ct,y,rt,p,e,l,a,o,g,lt,ot,f="sizzle"+-new Date,s=n.document,v=0,ki=0,hi=ni(),ci=ni(),li=ni(),bt=function(n,t){return n===t&&(rt=!0),0},ut="undefined",ai=-2147483648,di={}.hasOwnProperty,w=[],gi=w.pop,nr=w.push,b=w.push,vi=w.slice,nt=w.indexOf||function(n){for(var t=0,i=this.length;i>t;t++)if(this[t]===n)return t;return-1},kt="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",i="[\\x20\\t\\r\\n\\f]",ft="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",yi=ft.replace("w","w#"),pi="\\["+i+"*("+ft+")(?:"+i+"*([*^$|!~]?=)"+i+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+yi+"))|)"+i+"*\\]",dt=":("+ft+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+pi+")*)|.*)\\)|)",at=new RegExp("^"+i+"+|((?:^|[^\\\\])(?:\\\\.)*)"+i+"+$","g"),tr=new RegExp("^"+i+"*,"+i+"*"),ir=new RegExp("^"+i+"*([>+~]|"+i+")"+i+"*"),rr=new RegExp("="+i+"*([^\\]'\"]*?)"+i+"*\\]","g"),ur=new RegExp(dt),fr=new RegExp("^"+yi+"$"),vt={ID:new RegExp("^#("+ft+")"),CLASS:new RegExp("^\\.("+ft+")"),TAG:new RegExp("^("+ft.replace("w","w*")+")"),ATTR:new RegExp("^"+pi),PSEUDO:new RegExp("^"+dt),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+i+"*(even|odd|(([+-]|)(\\d*)n|)"+i+"*(?:([+-]|)"+i+"*(\\d+)|))"+i+"*\\)|)","i"),bool:new RegExp("^(?:"+kt+")$","i"),needsContext:new RegExp("^"+i+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+i+"*((?:-\\d)?\\d*)"+i+"*\\)|)(?=[^-]|$)","i")},er=/^(?:input|select|textarea|button)$/i,or=/^h\d$/i,st=/^[^{]+\{\s*\[native \w/,sr=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,gt=/[+~]/,hr=/'|\\/g,k=new RegExp("\\\\([\\da-f]{1,6}"+i+"?|("+i+")|.)","ig"),d=function(n,t,i){var r="0x"+t-65536;return r!==r||i?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)};try{b.apply(w=vi.call(s.childNodes),s.childNodes);w[s.childNodes.length].nodeType}catch(yr){b={apply:w.length?function(n,t){nr.apply(n,vi.call(t))}:function(n,t){for(var i=n.length,r=0;n[i++]=t[r++];);n.length=i-1}}}u=r.support={};oi=r.isXML=function(n){var t=n&&(n.ownerDocument||n).documentElement;return t?"HTML"!==t.nodeName:!1};p=r.setDocument=function(n){var v,r=n?n.ownerDocument||n:s,h=r.defaultView;return r!==e&&9===r.nodeType&&r.documentElement?(e=r,l=r.documentElement,a=!oi(r),h&&h!==h.top&&(h.addEventListener?h.addEventListener("unload",function(){p()},!1):h.attachEvent&&h.attachEvent("onunload",function(){p()})),u.attributes=c(function(n){return n.className="i",!n.getAttribute("className")}),u.getElementsByTagName=c(function(n){return n.appendChild(r.createComment("")),!n.getElementsByTagName("*").length}),u.getElementsByClassName=st.test(r.getElementsByClassName)&&c(function(n){return n.innerHTML="<div class='a'><\/div><div class='a i'><\/div>",n.firstChild.className="i",2===n.getElementsByClassName("i").length}),u.getById=c(function(n){return l.appendChild(n).id=f,!r.getElementsByName||!r.getElementsByName(f).length}),u.getById?(t.find.ID=function(n,t){if(typeof t.getElementById!==ut&&a){var i=t.getElementById(n);return i&&i.parentNode?[i]:[]}},t.filter.ID=function(n){var t=n.replace(k,d);return function(n){return n.getAttribute("id")===t}}):(delete t.find.ID,t.filter.ID=function(n){var t=n.replace(k,d);return function(n){var i=typeof n.getAttributeNode!==ut&&n.getAttributeNode("id");return i&&i.value===t}}),t.find.TAG=u.getElementsByTagName?function(n,t){if(typeof t.getElementsByTagName!==ut)return t.getElementsByTagName(n)}:function(n,t){var i,r=[],f=0,u=t.getElementsByTagName(n);if("*"===n){while(i=u[f++])1===i.nodeType&&r.push(i);return r}return u},t.find.CLASS=u.getElementsByClassName&&function(n,t){if(typeof t.getElementsByClassName!==ut&&a)return t.getElementsByClassName(n)},g=[],o=[],(u.qsa=st.test(r.querySelectorAll))&&(c(function(n){n.innerHTML="<select msallowclip=''><option selected=''><\/option><\/select>";n.querySelectorAll("[msallowclip^='']").length&&o.push("[*^$]="+i+"*(?:''|\"\")");n.querySelectorAll("[selected]").length||o.push("\\["+i+"*(?:value|"+kt+")");n.querySelectorAll(":checked").length||o.push(":checked")}),c(function(n){var t=r.createElement("input");t.setAttribute("type","hidden");n.appendChild(t).setAttribute("name","D");n.querySelectorAll("[name=d]").length&&o.push("name"+i+"*[*^$|!~]?=");n.querySelectorAll(":enabled").length||o.push(":enabled",":disabled");n.querySelectorAll("*,:x");o.push(",.*:")})),(u.matchesSelector=st.test(lt=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&c(function(n){u.disconnectedMatch=lt.call(n,"div");lt.call(n,"[s!='']:x");g.push("!=",dt)}),o=o.length&&new RegExp(o.join("|")),g=g.length&&new RegExp(g.join("|")),v=st.test(l.compareDocumentPosition),ot=v||st.test(l.contains)?function(n,t){var r=9===n.nodeType?n.documentElement:n,i=t&&t.parentNode;return n===i||!(!i||1!==i.nodeType||!(r.contains?r.contains(i):n.compareDocumentPosition&&16&n.compareDocumentPosition(i)))}:function(n,t){if(t)while(t=t.parentNode)if(t===n)return!0;return!1},bt=v?function(n,t){if(n===t)return rt=!0,0;var i=!n.compareDocumentPosition-!t.compareDocumentPosition;return i?i:(i=(n.ownerDocument||n)===(t.ownerDocument||t)?n.compareDocumentPosition(t):1,1&i||!u.sortDetached&&t.compareDocumentPosition(n)===i?n===r||n.ownerDocument===s&&ot(s,n)?-1:t===r||t.ownerDocument===s&&ot(s,t)?1:y?nt.call(y,n)-nt.call(y,t):0:4&i?-1:1)}:function(n,t){if(n===t)return rt=!0,0;var i,u=0,o=n.parentNode,h=t.parentNode,f=[n],e=[t];if(!o||!h)return n===r?-1:t===r?1:o?-1:h?1:y?nt.call(y,n)-nt.call(y,t):0;if(o===h)return wi(n,t);for(i=n;i=i.parentNode;)f.unshift(i);for(i=t;i=i.parentNode;)e.unshift(i);while(f[u]===e[u])u++;return u?wi(f[u],e[u]):f[u]===s?-1:e[u]===s?1:0},r):e};r.matches=function(n,t){return r(n,null,null,t)};r.matchesSelector=function(n,t){if((n.ownerDocument||n)!==e&&p(n),t=t.replace(rr,"='$1']"),!(!u.matchesSelector||!a||g&&g.test(t)||o&&o.test(t)))try{var i=lt.call(n,t);if(i||u.disconnectedMatch||n.document&&11!==n.document.nodeType)return i}catch(f){}return r(t,e,null,[n]).length>0};r.contains=function(n,t){return(n.ownerDocument||n)!==e&&p(n),ot(n,t)};r.attr=function(n,i){(n.ownerDocument||n)!==e&&p(n);var f=t.attrHandle[i.toLowerCase()],r=f&&di.call(t.attrHandle,i.toLowerCase())?f(n,i,!a):void 0;return void 0!==r?r:u.attributes||!a?n.getAttribute(i):(r=n.getAttributeNode(i))&&r.specified?r.value:null};r.error=function(n){throw new Error("Syntax error, unrecognized expression: "+n);};r.uniqueSort=function(n){var r,f=[],t=0,i=0;if(rt=!u.detectDuplicates,y=!u.sortStable&&n.slice(0),n.sort(bt),rt){while(r=n[i++])r===n[i]&&(t=f.push(i));while(t--)n.splice(f[t],1)}return y=null,n};ht=r.getText=function(n){var r,i="",u=0,t=n.nodeType;if(t){if(1===t||9===t||11===t){if("string"==typeof n.textContent)return n.textContent;for(n=n.firstChild;n;n=n.nextSibling)i+=ht(n)}else if(3===t||4===t)return n.nodeValue}else while(r=n[u++])i+=ht(r);return i};t=r.selectors={cacheLength:50,createPseudo:h,match:vt,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(n){return n[1]=n[1].replace(k,d),n[3]=(n[3]||n[4]||n[5]||"").replace(k,d),"~="===n[2]&&(n[3]=" "+n[3]+" "),n.slice(0,4)},CHILD:function(n){return n[1]=n[1].toLowerCase(),"nth"===n[1].slice(0,3)?(n[3]||r.error(n[0]),n[4]=+(n[4]?n[5]+(n[6]||1):2*("even"===n[3]||"odd"===n[3])),n[5]=+(n[7]+n[8]||"odd"===n[3])):n[3]&&r.error(n[0]),n},PSEUDO:function(n){var i,t=!n[6]&&n[2];return vt.CHILD.test(n[0])?null:(n[3]?n[2]=n[4]||n[5]||"":t&&ur.test(t)&&(i=et(t,!0))&&(i=t.indexOf(")",t.length-i)-t.length)&&(n[0]=n[0].slice(0,i),n[2]=t.slice(0,i)),n.slice(0,3))}},filter:{TAG:function(n){var t=n.replace(k,d).toLowerCase();return"*"===n?function(){return!0}:function(n){return n.nodeName&&n.nodeName.toLowerCase()===t}},CLASS:function(n){var t=hi[n+" "];return t||(t=new RegExp("(^|"+i+")"+n+"("+i+"|$)"))&&hi(n,function(n){return t.test("string"==typeof n.className&&n.className||typeof n.getAttribute!==ut&&n.getAttribute("class")||"")})},ATTR:function(n,t,i){return function(u){var f=r.attr(u,n);return null==f?"!="===t:t?(f+="","="===t?f===i:"!="===t?f!==i:"^="===t?i&&0===f.indexOf(i):"*="===t?i&&f.indexOf(i)>-1:"$="===t?i&&f.slice(-i.length)===i:"~="===t?(" "+f+" ").indexOf(i)>-1:"|="===t?f===i||f.slice(0,i.length+1)===i+"-":!1):!0}},CHILD:function(n,t,i,r,u){var s="nth"!==n.slice(0,3),o="last"!==n.slice(-4),e="of-type"===t;return 1===r&&0===u?function(n){return!!n.parentNode}:function(t,i,h){var a,k,c,l,y,w,b=s!==o?"nextSibling":"previousSibling",p=t.parentNode,g=e&&t.nodeName.toLowerCase(),d=!h&&!e;if(p){if(s){while(b){for(c=t;c=c[b];)if(e?c.nodeName.toLowerCase()===g:1===c.nodeType)return!1;w=b="only"===n&&!w&&"nextSibling"}return!0}if(w=[o?p.firstChild:p.lastChild],o&&d){for(k=p[f]||(p[f]={}),a=k[n]||[],y=a[0]===v&&a[1],l=a[0]===v&&a[2],c=y&&p.childNodes[y];c=++y&&c&&c[b]||(l=y=0)||w.pop();)if(1===c.nodeType&&++l&&c===t){k[n]=[v,y,l];break}}else if(d&&(a=(t[f]||(t[f]={}))[n])&&a[0]===v)l=a[1];else while(c=++y&&c&&c[b]||(l=y=0)||w.pop())if((e?c.nodeName.toLowerCase()===g:1===c.nodeType)&&++l&&(d&&((c[f]||(c[f]={}))[n]=[v,l]),c===t))break;return l-=u,l===r||l%r==0&&l/r>=0}}},PSEUDO:function(n,i){var e,u=t.pseudos[n]||t.setFilters[n.toLowerCase()]||r.error("unsupported pseudo: "+n);return u[f]?u(i):u.length>1?(e=[n,n,"",i],t.setFilters.hasOwnProperty(n.toLowerCase())?h(function(n,t){for(var r,f=u(n,i),e=f.length;e--;)r=nt.call(n,f[e]),n[r]=!(t[r]=f[e])}):function(n){return u(n,0,e)}):u}},pseudos:{not:h(function(n){var i=[],r=[],t=wt(n.replace(at,"$1"));return t[f]?h(function(n,i,r,u){for(var e,o=t(n,null,u,[]),f=n.length;f--;)(e=o[f])&&(n[f]=!(i[f]=e))}):function(n,u,f){return i[0]=n,t(i,null,f,r),!r.pop()}}),has:h(function(n){return function(t){return r(n,t).length>0}}),contains:h(function(n){return function(t){return(t.textContent||t.innerText||ht(t)).indexOf(n)>-1}}),lang:h(function(n){return fr.test(n||"")||r.error("unsupported lang: "+n),n=n.replace(k,d).toLowerCase(),function(t){var i;do if(i=a?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return i=i.toLowerCase(),i===n||0===i.indexOf(n+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var i=n.location&&n.location.hash;return i&&i.slice(1)===t.id},root:function(n){return n===l},focus:function(n){return n===e.activeElement&&(!e.hasFocus||e.hasFocus())&&!!(n.type||n.href||~n.tabIndex)},enabled:function(n){return n.disabled===!1},disabled:function(n){return n.disabled===!0},checked:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&!!n.checked||"option"===t&&!!n.selected},selected:function(n){return n.parentNode&&n.parentNode.selectedIndex,n.selected===!0},empty:function(n){for(n=n.firstChild;n;n=n.nextSibling)if(n.nodeType<6)return!1;return!0},parent:function(n){return!t.pseudos.empty(n)},header:function(n){return or.test(n.nodeName)},input:function(n){return er.test(n.nodeName)},button:function(n){var t=n.nodeName.toLowerCase();return"input"===t&&"button"===n.type||"button"===t},text:function(n){var t;return"input"===n.nodeName.toLowerCase()&&"text"===n.type&&(null==(t=n.getAttribute("type"))||"text"===t.toLowerCase())},first:tt(function(){return[0]}),last:tt(function(n,t){return[t-1]}),eq:tt(function(n,t,i){return[0>i?i+t:i]}),even:tt(function(n,t){for(var i=0;t>i;i+=2)n.push(i);return n}),odd:tt(function(n,t){for(var i=1;t>i;i+=2)n.push(i);return n}),lt:tt(function(n,t,i){for(var r=0>i?i+t:i;--r>=0;)n.push(r);return n}),gt:tt(function(n,t,i){for(var r=0>i?i+t:i;++r<t;)n.push(r);return n})}};t.pseudos.nth=t.pseudos.eq;for(it in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})t.pseudos[it]=cr(it);for(it in{submit:!0,reset:!0})t.pseudos[it]=lr(it);return bi.prototype=t.filters=t.pseudos,t.setFilters=new bi,et=r.tokenize=function(n,i){var e,f,s,o,u,h,c,l=ci[n+" "];if(l)return i?0:l.slice(0);for(u=n,h=[],c=t.preFilter;u;){(!e||(f=tr.exec(u)))&&(f&&(u=u.slice(f[0].length)||u),h.push(s=[]));e=!1;(f=ir.exec(u))&&(e=f.shift(),s.push({value:e,type:f[0].replace(at," ")}),u=u.slice(e.length));for(o in t.filter)(f=vt[o].exec(u))&&(!c[o]||(f=c[o](f)))&&(e=f.shift(),s.push({value:e,type:o,matches:f}),u=u.slice(e.length));if(!e)break}return i?u.length:u?r.error(n):ci(n,h).slice(0)},wt=r.compile=function(n,t){var r,u=[],e=[],i=li[n+" "];if(!i){for(t||(t=et(n)),r=t.length;r--;)i=ei(t[r]),i[f]?u.push(i):e.push(i);i=li(n,vr(e,u));i.selector=n}return i},si=r.select=function(n,i,r,f){var s,e,o,l,v,c="function"==typeof n&&n,h=!f&&et(n=c.selector||n);if(r=r||[],1===h.length){if(e=h[0]=h[0].slice(0),e.length>2&&"ID"===(o=e[0]).type&&u.getById&&9===i.nodeType&&a&&t.relative[e[1].type]){if(i=(t.find.ID(o.matches[0].replace(k,d),i)||[])[0],!i)return r;c&&(i=i.parentNode);n=n.slice(e.shift().value.length)}for(s=vt.needsContext.test(n)?0:e.length;s--;){if(o=e[s],t.relative[l=o.type])break;if((v=t.find[l])&&(f=v(o.matches[0].replace(k,d),gt.test(e[0].type)&&ii(i.parentNode)||i))){if(e.splice(s,1),n=f.length&&yt(e),!n)return b.apply(r,f),r;break}}}return(c||wt(n,h))(f,i,!a,r,gt.test(n)&&ii(i.parentNode)||i),r},u.sortStable=f.split("").sort(bt).join("")===f,u.detectDuplicates=!!rt,p(),u.sortDetached=c(function(n){return 1&n.compareDocumentPosition(e.createElement("div"))}),c(function(n){return n.innerHTML="<a href='#'><\/a>","#"===n.firstChild.getAttribute("href")})||ti("type|href|height|width",function(n,t,i){if(!i)return n.getAttribute(t,"type"===t.toLowerCase()?1:2)}),u.attributes&&c(function(n){return n.innerHTML="<input/>",n.firstChild.setAttribute("value",""),""===n.firstChild.getAttribute("value")})||ti("value",function(n,t,i){if(!i&&"input"===n.nodeName.toLowerCase())return n.defaultValue}),c(function(n){return null==n.getAttribute("disabled")})||ti(kt,function(n,t,i){var r;if(!i)return n[t]===!0?t.toLowerCase():(r=n.getAttributeNode(t))&&r.specified?r.value:null}),r}(n);i.find=y;i.expr=y.selectors;i.expr[":"]=i.expr.pseudos;i.unique=y.uniqueSort;i.text=y.getText;i.isXMLDoc=y.isXML;i.contains=y.contains;var di=i.expr.match.needsContext,gi=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ef=/^.[^:#\[\.,]*$/;i.filter=function(n,t,r){var u=t[0];return r&&(n=":not("+n+")"),1===t.length&&1===u.nodeType?i.find.matchesSelector(u,n)?[u]:[]:i.find.matches(n,i.grep(t,function(n){return 1===n.nodeType}))};i.fn.extend({find:function(n){var t,u=this.length,r=[],f=this;if("string"!=typeof n)return this.pushStack(i(n).filter(function(){for(t=0;u>t;t++)if(i.contains(f[t],this))return!0}));for(t=0;u>t;t++)i.find(n,f[t],r);return r=this.pushStack(u>1?i.unique(r):r),r.selector=this.selector?this.selector+" "+n:n,r},filter:function(n){return this.pushStack(fi(this,n||[],!1))},not:function(n){return this.pushStack(fi(this,n||[],!0))},is:function(n){return!!fi(this,"string"==typeof n&&di.test(n)?i(n):n||[],!1).length}});nr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;tr=i.fn.init=function(n,t){var r,f;if(!n)return this;if("string"==typeof n){if(r="<"===n[0]&&">"===n[n.length-1]&&n.length>=3?[null,n,null]:nr.exec(n),!r||!r[1]&&t)return!t||t.jquery?(t||st).find(n):this.constructor(t).find(n);if(r[1]){if(t=t instanceof i?t[0]:t,i.merge(this,i.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:u,!0)),gi.test(r[1])&&i.isPlainObject(t))for(r in t)i.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return f=u.getElementById(r[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=u,this.selector=n,this}return n.nodeType?(this.context=this[0]=n,this.length=1,this):i.isFunction(n)?"undefined"!=typeof st.ready?st.ready(n):n(i):(void 0!==n.selector&&(this.selector=n.selector,this.context=n.context),i.makeArray(n,this))};tr.prototype=i.fn;st=i(u);ir=/^(?:parents|prev(?:Until|All))/;rr={children:!0,contents:!0,next:!0,prev:!0};i.extend({dir:function(n,t,r){for(var u=[],f=void 0!==r;(n=n[t])&&9!==n.nodeType;)if(1===n.nodeType){if(f&&i(n).is(r))break;u.push(n)}return u},sibling:function(n,t){for(var i=[];n;n=n.nextSibling)1===n.nodeType&&n!==t&&i.push(n);return i}});i.fn.extend({has:function(n){var t=i(n,this),r=t.length;return this.filter(function(){for(var n=0;r>n;n++)if(i.contains(this,t[n]))return!0})},closest:function(n,t){for(var r,f=0,o=this.length,u=[],e=di.test(n)||"string"!=typeof n?i(n,t||this.context):0;o>f;f++)for(r=this[f];r&&r!==t;r=r.parentNode)if(r.nodeType<11&&(e?e.index(r)>-1:1===r.nodeType&&i.find.matchesSelector(r,n))){u.push(r);break}return this.pushStack(u.length>1?i.unique(u):u)},index:function(n){return n?"string"==typeof n?et.call(i(n),this[0]):et.call(this,n.jquery?n[0]:n):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(n,t){return this.pushStack(i.unique(i.merge(this.get(),i(n,t))))},addBack:function(n){return this.add(null==n?this.prevObject:this.prevObject.filter(n))}});i.each({parent:function(n){var t=n.parentNode;return t&&11!==t.nodeType?t:null},parents:function(n){return i.dir(n,"parentNode")},parentsUntil:function(n,t,r){return i.dir(n,"parentNode",r)},next:function(n){return ur(n,"nextSibling")},prev:function(n){return ur(n,"previousSibling")},nextAll:function(n){return i.dir(n,"nextSibling")},prevAll:function(n){return i.dir(n,"previousSibling")},nextUntil:function(n,t,r){return i.dir(n,"nextSibling",r)},prevUntil:function(n,t,r){return i.dir(n,"previousSibling",r)},siblings:function(n){return i.sibling((n.parentNode||{}).firstChild,n)},children:function(n){return i.sibling(n.firstChild)},contents:function(n){return n.contentDocument||i.merge([],n.childNodes)}},function(n,t){i.fn[n]=function(r,u){var f=i.map(this,t,r);return"Until"!==n.slice(-5)&&(u=r),u&&"string"==typeof u&&(f=i.filter(u,f)),this.length>1&&(rr[n]||i.unique(f),ir.test(n)&&f.reverse()),this.pushStack(f)}});c=/\S+/g;ei={};i.Callbacks=function(n){n="string"==typeof n?ei[n]||of(n):i.extend({},n);var u,h,o,c,f,e,t=[],r=!n.once&&[],l=function(i){for(u=n.memory&&i,h=!0,e=c||0,c=0,f=t.length,o=!0;t&&f>e;e++)if(t[e].apply(i[0],i[1])===!1&&n.stopOnFalse){u=!1;break}o=!1;t&&(r?r.length&&l(r.shift()):u?t=[]:s.disable())},s={add:function(){if(t){var r=t.length;!function e(r){i.each(r,function(r,u){var f=i.type(u);"function"===f?n.unique&&s.has(u)||t.push(u):u&&u.length&&"string"!==f&&e(u)})}(arguments);o?f=t.length:u&&(c=r,l(u))}return this},remove:function(){return t&&i.each(arguments,function(n,r){for(var u;(u=i.inArray(r,t,u))>-1;)t.splice(u,1),o&&(f>=u&&f--,e>=u&&e--)}),this},has:function(n){return n?i.inArray(n,t)>-1:!(!t||!t.length)},empty:function(){return t=[],f=0,this},disable:function(){return t=r=u=void 0,this},disabled:function(){return!t},lock:function(){return r=void 0,u||s.disable(),this},locked:function(){return!r},fireWith:function(n,i){return!t||h&&!r||(i=i||[],i=[n,i.slice?i.slice():i],o?r.push(i):l(i)),this},fire:function(){return s.fireWith(this,arguments),this},fired:function(){return!!h}};return s};i.extend({Deferred:function(n){var u=[["resolve","done",i.Callbacks("once memory"),"resolved"],["reject","fail",i.Callbacks("once memory"),"rejected"],["notify","progress",i.Callbacks("memory")]],f="pending",r={state:function(){return f},always:function(){return t.done(arguments).fail(arguments),this},then:function(){var n=arguments;return i.Deferred(function(f){i.each(u,function(u,e){var o=i.isFunction(n[u])&&n[u];t[e[1]](function(){var n=o&&o.apply(this,arguments);n&&i.isFunction(n.promise)?n.promise().done(f.resolve).fail(f.reject).progress(f.notify):f[e[0]+"With"](this===r?f.promise():this,o?[n]:arguments)})});n=null}).promise()},promise:function(n){return null!=n?i.extend(n,r):r}},t={};return r.pipe=r.then,i.each(u,function(n,i){var e=i[2],o=i[3];r[i[1]]=e.add;o&&e.add(function(){f=o},u[1^n][2].disable,u[2][2].lock);t[i[0]]=function(){return t[i[0]+"With"](this===t?r:this,arguments),this};t[i[0]+"With"]=e.fireWith}),r.promise(t),n&&n.call(t,t),t},when:function(n){var t=0,u=a.call(arguments),r=u.length,e=1!==r||n&&i.isFunction(n.promise)?r:0,f=1===e?n:i.Deferred(),h=function(n,t,i){return function(r){t[n]=this;i[n]=arguments.length>1?a.call(arguments):r;i===o?f.notifyWith(t,i):--e||f.resolveWith(t,i)}},o,c,s;if(r>1)for(o=new Array(r),c=new Array(r),s=new Array(r);r>t;t++)u[t]&&i.isFunction(u[t].promise)?u[t].promise().done(h(t,s,u)).fail(f.reject).progress(h(t,c,o)):--e;return e||f.resolveWith(s,u),f.promise()}});i.fn.ready=function(n){return i.ready.promise().done(n),this};i.extend({isReady:!1,readyWait:1,holdReady:function(n){n?i.readyWait++:i.ready(!0)},ready:function(n){(n===!0?--i.readyWait:i.isReady)||(i.isReady=!0,n!==!0&&--i.readyWait>0||(ht.resolveWith(u,[i]),i.fn.triggerHandler&&(i(u).triggerHandler("ready"),i(u).off("ready"))))}});i.ready.promise=function(t){return ht||(ht=i.Deferred(),"complete"===u.readyState?setTimeout(i.ready):(u.addEventListener("DOMContentLoaded",ct,!1),n.addEventListener("load",ct,!1))),ht.promise(t)};i.ready.promise();l=i.access=function(n,t,r,u,f,e,o){var s=0,c=n.length,h=null==r;if("object"===i.type(r)){f=!0;for(s in r)i.access(n,t,s,r[s],!0,e,o)}else if(void 0!==u&&(f=!0,i.isFunction(u)||(o=!0),h&&(o?(t.call(n,u),t=null):(h=t,t=function(n,t,r){return h.call(i(n),r)})),t))for(;c>s;s++)t(n[s],r,o?u:u.call(n[s],s,t(n[s],r)));return f?n:h?t.call(n):c?t(n[0],r):e};i.acceptData=function(n){return 1===n.nodeType||9===n.nodeType||!+n.nodeType};p.uid=1;p.accepts=i.acceptData;p.prototype={key:function(n){if(!p.accepts(n))return 0;var r={},t=n[this.expando];if(!t){t=p.uid++;try{r[this.expando]={value:t};Object.defineProperties(n,r)}catch(u){r[this.expando]=t;i.extend(n,r)}}return this.cache[t]||(this.cache[t]={}),t},set:function(n,t,r){var f,e=this.key(n),u=this.cache[e];if("string"==typeof t)u[t]=r;else if(i.isEmptyObject(u))i.extend(this.cache[e],t);else for(f in t)u[f]=t[f];return u},get:function(n,t){var i=this.cache[this.key(n)];return void 0===t?i:i[t]},access:function(n,t,r){var u;return void 0===t||t&&"string"==typeof t&&void 0===r?(u=this.get(n,t),void 0!==u?u:this.get(n,i.camelCase(t))):(this.set(n,t,r),void 0!==r?r:t)},remove:function(n,t){var u,r,f,o=this.key(n),e=this.cache[o];if(void 0===t)this.cache[o]={};else for(i.isArray(t)?r=t.concat(t.map(i.camelCase)):(f=i.camelCase(t),(t in e)?r=[t,f]:(r=f,r=(r in e)?[r]:r.match(c)||[])),u=r.length;u--;)delete e[r[u]]},hasData:function(n){return!i.isEmptyObject(this.cache[n[this.expando]]||{})},discard:function(n){n[this.expando]&&delete this.cache[n[this.expando]]}};var r=new p,e=new p,sf=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,hf=/([A-Z])/g;i.extend({hasData:function(n){return e.hasData(n)||r.hasData(n)},data:function(n,t,i){return e.access(n,t,i)},removeData:function(n,t){e.remove(n,t)},_data:function(n,t,i){return r.access(n,t,i)},_removeData:function(n,t){r.remove(n,t)}});i.fn.extend({data:function(n,t){var o,f,s,u=this[0],h=u&&u.attributes;if(void 0===n){if(this.length&&(s=e.get(u),1===u.nodeType&&!r.get(u,"hasDataAttrs"))){for(o=h.length;o--;)h[o]&&(f=h[o].name,0===f.indexOf("data-")&&(f=i.camelCase(f.slice(5)),fr(u,f,s[f])));r.set(u,"hasDataAttrs",!0)}return s}return"object"==typeof n?this.each(function(){e.set(this,n)}):l(this,function(t){var r,f=i.camelCase(n);if(u&&void 0===t){if((r=e.get(u,n),void 0!==r)||(r=e.get(u,f),void 0!==r)||(r=fr(u,f,void 0),void 0!==r))return r}else this.each(function(){var i=e.get(this,f);e.set(this,f,t);-1!==n.indexOf("-")&&void 0!==i&&e.set(this,n,t)})},null,t,arguments.length>1,null,!0)},removeData:function(n){return this.each(function(){e.remove(this,n)})}});i.extend({queue:function(n,t,u){var f;if(n)return(t=(t||"fx")+"queue",f=r.get(n,t),u&&(!f||i.isArray(u)?f=r.access(n,t,i.makeArray(u)):f.push(u)),f||[])},dequeue:function(n,t){t=t||"fx";var r=i.queue(n,t),e=r.length,u=r.shift(),f=i._queueHooks(n,t),o=function(){i.dequeue(n,t)};"inprogress"===u&&(u=r.shift(),e--);u&&("fx"===t&&r.unshift("inprogress"),delete f.stop,u.call(n,o,f));!e&&f&&f.empty.fire()},_queueHooks:function(n,t){var u=t+"queueHooks";return r.get(n,u)||r.access(n,u,{empty:i.Callbacks("once memory").add(function(){r.remove(n,[t+"queue",u])})})}});i.fn.extend({queue:function(n,t){var r=2;return"string"!=typeof n&&(t=n,n="fx",r--),arguments.length<r?i.queue(this[0],n):void 0===t?this:this.each(function(){var r=i.queue(this,n,t);i._queueHooks(this,n);"fx"===n&&"inprogress"!==r[0]&&i.dequeue(this,n)})},dequeue:function(n){return this.each(function(){i.dequeue(this,n)})},clearQueue:function(n){return this.queue(n||"fx",[])},promise:function(n,t){var u,e=1,o=i.Deferred(),f=this,s=this.length,h=function(){--e||o.resolveWith(f,[f])};for("string"!=typeof n&&(t=n,n=void 0),n=n||"fx";s--;)u=r.get(f[s],n+"queueHooks"),u&&u.empty&&(e++,u.empty.add(h));return h(),o.promise(t)}});var lt=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,w=["Top","Right","Bottom","Left"],it=function(n,t){return n=t||n,"none"===i.css(n,"display")||!i.contains(n.ownerDocument,n)},er=/^(?:checkbox|radio)$/i;!function(){var i=u.createDocumentFragment(),n=i.appendChild(u.createElement("div")),t=u.createElement("input");t.setAttribute("type","radio");t.setAttribute("checked","checked");t.setAttribute("name","t");n.appendChild(t);f.checkClone=n.cloneNode(!0).cloneNode(!0).lastChild.checked;n.innerHTML="<textarea>x<\/textarea>";f.noCloneChecked=!!n.cloneNode(!0).lastChild.defaultValue}();d="undefined";f.focusinBubbles="onfocusin"in n;var cf=/^key/,lf=/^(?:mouse|pointer|contextmenu)|click/,or=/^(?:focusinfocus|focusoutblur)$/,sr=/^([^.]*)(?:\.(.+)|)$/;i.event={global:{},add:function(n,t,u,f,e){var v,y,w,p,b,h,s,l,o,k,g,a=r.get(n);if(a)for(u.handler&&(v=u,u=v.handler,e=v.selector),u.guid||(u.guid=i.guid++),(p=a.events)||(p=a.events={}),(y=a.handle)||(y=a.handle=function(t){if(typeof i!==d&&i.event.triggered!==t.type)return i.event.dispatch.apply(n,arguments)}),t=(t||"").match(c)||[""],b=t.length;b--;)w=sr.exec(t[b])||[],o=g=w[1],k=(w[2]||"").split(".").sort(),o&&(s=i.event.special[o]||{},o=(e?s.delegateType:s.bindType)||o,s=i.event.special[o]||{},h=i.extend({type:o,origType:g,data:f,handler:u,guid:u.guid,selector:e,needsContext:e&&i.expr.match.needsContext.test(e),namespace:k.join(".")},v),(l=p[o])||(l=p[o]=[],l.delegateCount=0,s.setup&&s.setup.call(n,f,k,y)!==!1||n.addEventListener&&n.addEventListener(o,y,!1)),s.add&&(s.add.call(n,h),h.handler.guid||(h.handler.guid=u.guid)),e?l.splice(l.delegateCount++,0,h):l.push(h),i.event.global[o]=!0)},remove:function(n,t,u,f,e){var p,k,h,v,w,s,l,a,o,b,d,y=r.hasData(n)&&r.get(n);if(y&&(v=y.events)){for(t=(t||"").match(c)||[""],w=t.length;w--;)if(h=sr.exec(t[w])||[],o=d=h[1],b=(h[2]||"").split(".").sort(),o){for(l=i.event.special[o]||{},o=(f?l.delegateType:l.bindType)||o,a=v[o]||[],h=h[2]&&new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"),k=p=a.length;p--;)s=a[p],!e&&d!==s.origType||u&&u.guid!==s.guid||h&&!h.test(s.namespace)||f&&f!==s.selector&&("**"!==f||!s.selector)||(a.splice(p,1),s.selector&&a.delegateCount--,l.remove&&l.remove.call(n,s));k&&!a.length&&(l.teardown&&l.teardown.call(n,b,y.handle)!==!1||i.removeEvent(n,o,y.handle),delete v[o])}else for(o in v)i.event.remove(n,o+t[w],u,f,!0);i.isEmptyObject(v)&&(delete y.handle,r.remove(n,"events"))}},trigger:function(t,f,e,o){var w,s,c,b,a,v,l,p=[e||u],h=ri.call(t,"type")?t.type:t,y=ri.call(t,"namespace")?t.namespace.split("."):[];if(s=c=e=e||u,3!==e.nodeType&&8!==e.nodeType&&!or.test(h+i.event.triggered)&&(h.indexOf(".")>=0&&(y=h.split("."),h=y.shift(),y.sort()),a=h.indexOf(":")<0&&"on"+h,t=t[i.expando]?t:new i.Event(h,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=y.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=e),f=null==f?[t]:i.makeArray(f,[t]),l=i.event.special[h]||{},o||!l.trigger||l.trigger.apply(e,f)!==!1)){if(!o&&!l.noBubble&&!i.isWindow(e)){for(b=l.delegateType||h,or.test(b+h)||(s=s.parentNode);s;s=s.parentNode)p.push(s),c=s;c===(e.ownerDocument||u)&&p.push(c.defaultView||c.parentWindow||n)}for(w=0;(s=p[w++])&&!t.isPropagationStopped();)t.type=w>1?b:l.bindType||h,v=(r.get(s,"events")||{})[t.type]&&r.get(s,"handle"),v&&v.apply(s,f),v=a&&s[a],v&&v.apply&&i.acceptData(s)&&(t.result=v.apply(s,f),t.result===!1&&t.preventDefault());return t.type=h,o||t.isDefaultPrevented()||l._default&&l._default.apply(p.pop(),f)!==!1||!i.acceptData(e)||a&&i.isFunction(e[h])&&!i.isWindow(e)&&(c=e[a],c&&(e[a]=null),i.event.triggered=h,e[h](),i.event.triggered=void 0,c&&(e[a]=c)),t.result}},dispatch:function(n){n=i.event.fix(n);var o,s,e,u,t,h=[],c=a.call(arguments),l=(r.get(this,"events")||{})[n.type]||[],f=i.event.special[n.type]||{};if(c[0]=n,n.delegateTarget=this,!f.preDispatch||f.preDispatch.call(this,n)!==!1){for(h=i.event.handlers.call(this,n,l),o=0;(u=h[o++])&&!n.isPropagationStopped();)for(n.currentTarget=u.elem,s=0;(t=u.handlers[s++])&&!n.isImmediatePropagationStopped();)(!n.namespace_re||n.namespace_re.test(t.namespace))&&(n.handleObj=t,n.data=t.data,e=((i.event.special[t.origType]||{}).handle||t.handler).apply(u.elem,c),void 0!==e&&(n.result=e)===!1&&(n.preventDefault(),n.stopPropagation()));return f.postDispatch&&f.postDispatch.call(this,n),n.result}},handlers:function(n,t){var e,u,f,o,h=[],s=t.delegateCount,r=n.target;if(s&&r.nodeType&&(!n.button||"click"!==n.type))for(;r!==this;r=r.parentNode||this)if(r.disabled!==!0||"click"!==n.type){for(u=[],e=0;s>e;e++)o=t[e],f=o.selector+" ",void 0===u[f]&&(u[f]=o.needsContext?i(f,this).index(r)>=0:i.find(f,this,null,[r]).length),u[f]&&u.push(o);u.length&&h.push({elem:r,handlers:u})}return s<t.length&&h.push({elem:this,handlers:t.slice(s)}),h},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(n,t){return null==n.which&&(n.which=null!=t.charCode?t.charCode:t.keyCode),n}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(n,t){var e,i,r,f=t.button;return null==n.pageX&&null!=t.clientX&&(e=n.target.ownerDocument||u,i=e.documentElement,r=e.body,n.pageX=t.clientX+(i&&i.scrollLeft||r&&r.scrollLeft||0)-(i&&i.clientLeft||r&&r.clientLeft||0),n.pageY=t.clientY+(i&&i.scrollTop||r&&r.scrollTop||0)-(i&&i.clientTop||r&&r.clientTop||0)),n.which||void 0===f||(n.which=1&f?1:2&f?3:4&f?2:0),n}},fix:function(n){if(n[i.expando])return n;var f,e,o,r=n.type,s=n,t=this.fixHooks[r];for(t||(this.fixHooks[r]=t=lf.test(r)?this.mouseHooks:cf.test(r)?this.keyHooks:{}),o=t.props?this.props.concat(t.props):this.props,n=new i.Event(s),f=o.length;f--;)e=o[f],n[e]=s[e];return n.target||(n.target=u),3===n.target.nodeType&&(n.target=n.target.parentNode),t.filter?t.filter(n,s):n},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==hr()&&this.focus)return(this.focus(),!1)},delegateType:"focusin"},blur:{trigger:function(){if(this===hr()&&this.blur)return(this.blur(),!1)},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&i.nodeName(this,"input"))return(this.click(),!1)},_default:function(n){return i.nodeName(n.target,"a")}},beforeunload:{postDispatch:function(n){void 0!==n.result&&n.originalEvent&&(n.originalEvent.returnValue=n.result)}}},simulate:function(n,t,r,u){var f=i.extend(new i.Event,r,{type:n,isSimulated:!0,originalEvent:{}});u?i.event.trigger(f,null,t):i.event.dispatch.call(t,f);f.isDefaultPrevented()&&r.preventDefault()}};i.removeEvent=function(n,t,i){n.removeEventListener&&n.removeEventListener(t,i,!1)};i.Event=function(n,t){return this instanceof i.Event?(n&&n.type?(this.originalEvent=n,this.type=n.type,this.isDefaultPrevented=n.defaultPrevented||void 0===n.defaultPrevented&&n.returnValue===!1?at:g):this.type=n,t&&i.extend(this,t),this.timeStamp=n&&n.timeStamp||i.now(),void(this[i.expando]=!0)):new i.Event(n,t)};i.Event.prototype={isDefaultPrevented:g,isPropagationStopped:g,isImmediatePropagationStopped:g,preventDefault:function(){var n=this.originalEvent;this.isDefaultPrevented=at;n&&n.preventDefault&&n.preventDefault()},stopPropagation:function(){var n=this.originalEvent;this.isPropagationStopped=at;n&&n.stopPropagation&&n.stopPropagation()},stopImmediatePropagation:function(){var n=this.originalEvent;this.isImmediatePropagationStopped=at;n&&n.stopImmediatePropagation&&n.stopImmediatePropagation();this.stopPropagation()}};i.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(n,t){i.event.special[n]={delegateType:t,bindType:t,handle:function(n){var u,f=this,r=n.relatedTarget,e=n.handleObj;return(!r||r!==f&&!i.contains(f,r))&&(n.type=e.origType,u=e.handler.apply(this,arguments),n.type=t),u}}});f.focusinBubbles||i.each({focus:"focusin",blur:"focusout"},function(n,t){var u=function(n){i.event.simulate(t,n.target,i.event.fix(n),!0)};i.event.special[t]={setup:function(){var i=this.ownerDocument||this,f=r.access(i,t);f||i.addEventListener(n,u,!0);r.access(i,t,(f||0)+1)},teardown:function(){var i=this.ownerDocument||this,f=r.access(i,t)-1;f?r.access(i,t,f):(i.removeEventListener(n,u,!0),r.remove(i,t))}}});i.fn.extend({on:function(n,t,r,u,f){var e,o;if("object"==typeof n){"string"!=typeof t&&(r=r||t,t=void 0);for(o in n)this.on(o,t,r,n[o],f);return this}if(null==r&&null==u?(u=t,r=t=void 0):null==u&&("string"==typeof t?(u=r,r=void 0):(u=r,r=t,t=void 0)),u===!1)u=g;else if(!u)return this;return 1===f&&(e=u,u=function(n){return i().off(n),e.apply(this,arguments)},u.guid=e.guid||(e.guid=i.guid++)),this.each(function(){i.event.add(this,n,u,r,t)})},one:function(n,t,i,r){return this.on(n,t,i,r,1)},off:function(n,t,r){var u,f;if(n&&n.preventDefault&&n.handleObj)return u=n.handleObj,i(n.delegateTarget).off(u.namespace?u.origType+"."+u.namespace:u.origType,u.selector,u.handler),this;if("object"==typeof n){for(f in n)this.off(f,t,n[f]);return this}return(t===!1||"function"==typeof t)&&(r=t,t=void 0),r===!1&&(r=g),this.each(function(){i.event.remove(this,n,r,t)})},trigger:function(n,t){return this.each(function(){i.event.trigger(n,t,this)})},triggerHandler:function(n,t){var r=this[0];if(r)return i.event.trigger(n,t,r,!0)}});var cr=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,lr=/<([\w:]+)/,af=/<|&#?\w+;/,vf=/<(?:script|style|link)/i,yf=/checked\s*(?:[^=]|=\s*.checked.)/i,ar=/^$|\/(?:java|ecma)script/i,pf=/^true\/(.*)/,wf=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,h={option:[1,"<select multiple='multiple'>","<\/select>"],thead:[1,"<table>","<\/table>"],col:[2,"<table><colgroup>","<\/colgroup><\/table>"],tr:[2,"<table><tbody>","<\/tbody><\/table>"],td:[3,"<table><tbody><tr>","<\/tr><\/tbody><\/table>"],_default:[0,"",""]};h.optgroup=h.option;h.tbody=h.tfoot=h.colgroup=h.caption=h.thead;h.th=h.td;i.extend({clone:function(n,t,r){var u,c,s,e,h=n.cloneNode(!0),l=i.contains(n.ownerDocument,n);if(!(f.noCloneChecked||1!==n.nodeType&&11!==n.nodeType||i.isXMLDoc(n)))for(e=o(h),s=o(n),u=0,c=s.length;c>u;u++)df(s[u],e[u]);if(t)if(r)for(s=s||o(n),e=e||o(h),u=0,c=s.length;c>u;u++)yr(s[u],e[u]);else yr(n,h);return e=o(h,"script"),e.length>0&&oi(e,!l&&o(n,"script")),h},buildFragment:function(n,t,r,u){for(var f,e,y,l,p,a,s=t.createDocumentFragment(),v=[],c=0,w=n.length;w>c;c++)if(f=n[c],f||0===f)if("object"===i.type(f))i.merge(v,f.nodeType?[f]:f);else if(af.test(f)){for(e=e||s.appendChild(t.createElement("div")),y=(lr.exec(f)||["",""])[1].toLowerCase(),l=h[y]||h._default,e.innerHTML=l[1]+f.replace(cr,"<$1><\/$2>")+l[2],a=l[0];a--;)e=e.lastChild;i.merge(v,e.childNodes);e=s.firstChild;e.textContent=""}else v.push(t.createTextNode(f));for(s.textContent="",c=0;f=v[c++];)if((!u||-1===i.inArray(f,u))&&(p=i.contains(f.ownerDocument,f),e=o(s.appendChild(f),"script"),p&&oi(e),r))for(a=0;f=e[a++];)ar.test(f.type||"")&&r.push(f);return s},cleanData:function(n){for(var f,t,o,u,h=i.event.special,s=0;void 0!==(t=n[s]);s++){if(i.acceptData(t)&&(u=t[r.expando],u&&(f=r.cache[u]))){if(f.events)for(o in f.events)h[o]?i.event.remove(t,o):i.removeEvent(t,o,f.handle);r.cache[u]&&delete r.cache[u]}delete e.cache[t[e.expando]]}}});i.fn.extend({text:function(n){return l(this,function(n){return void 0===n?i.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=n)})},null,n,arguments.length)},append:function(){return this.domManip(arguments,function(n){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=vr(this,n);t.appendChild(n)}})},prepend:function(){return this.domManip(arguments,function(n){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=vr(this,n);t.insertBefore(n,t.firstChild)}})},before:function(){return this.domManip(arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this)})},after:function(){return this.domManip(arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling)})},remove:function(n,t){for(var r,f=n?i.filter(n,this):this,u=0;null!=(r=f[u]);u++)t||1!==r.nodeType||i.cleanData(o(r)),r.parentNode&&(t&&i.contains(r.ownerDocument,r)&&oi(o(r,"script")),r.parentNode.removeChild(r));return this},empty:function(){for(var n,t=0;null!=(n=this[t]);t++)1===n.nodeType&&(i.cleanData(o(n,!1)),n.textContent="");return this},clone:function(n,t){return n=null==n?!1:n,t=null==t?n:t,this.map(function(){return i.clone(this,n,t)})},html:function(n){return l(this,function(n){var t=this[0]||{},r=0,u=this.length;if(void 0===n&&1===t.nodeType)return t.innerHTML;if("string"==typeof n&&!vf.test(n)&&!h[(lr.exec(n)||["",""])[1].toLowerCase()]){n=n.replace(cr,"<$1><\/$2>");try{for(;u>r;r++)t=this[r]||{},1===t.nodeType&&(i.cleanData(o(t,!1)),t.innerHTML=n);t=0}catch(f){}}t&&this.empty().append(n)},null,n,arguments.length)},replaceWith:function(){var n=arguments[0];return this.domManip(arguments,function(t){n=this.parentNode;i.cleanData(o(this));n&&n.replaceChild(t,this)}),n&&(n.length||n.nodeType)?this:this.remove()},detach:function(n){return this.remove(n,!0)},domManip:function(n,t){n=bi.apply([],n);var h,v,s,c,u,y,e=0,l=this.length,w=this,b=l-1,a=n[0],p=i.isFunction(a);if(p||l>1&&"string"==typeof a&&!f.checkClone&&yf.test(a))return this.each(function(i){var r=w.eq(i);p&&(n[0]=a.call(this,i,r.html()));r.domManip(n,t)});if(l&&(h=i.buildFragment(n,this[0].ownerDocument,!1,this),v=h.firstChild,1===h.childNodes.length&&(h=v),v)){for(s=i.map(o(h,"script"),bf),c=s.length;l>e;e++)u=h,e!==b&&(u=i.clone(u,!0,!0),c&&i.merge(s,o(u,"script"))),t.call(this[e],u,e);if(c)for(y=s[s.length-1].ownerDocument,i.map(s,kf),e=0;c>e;e++)u=s[e],ar.test(u.type||"")&&!r.access(u,"globalEval")&&i.contains(y,u)&&(u.src?i._evalUrl&&i._evalUrl(u.src):i.globalEval(u.textContent.replace(wf,"")))}return this}});i.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(n,t){i.fn[n]=function(n){for(var u,f=[],e=i(n),o=e.length-1,r=0;o>=r;r++)u=r===o?this:this.clone(!0),i(e[r])[t](u),ii.apply(f,u.get());return this.pushStack(f)}});si={};var wr=/^margin/,ci=new RegExp("^("+lt+")(?!px)[a-z%]+$","i"),yt=function(n){return n.ownerDocument.defaultView.getComputedStyle(n,null)};!function(){var s,o,e=u.documentElement,r=u.createElement("div"),t=u.createElement("div");if(t.style){t.style.backgroundClip="content-box";t.cloneNode(!0).style.backgroundClip="";f.clearCloneStyle="content-box"===t.style.backgroundClip;r.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute";r.appendChild(t);function h(){t.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute";t.innerHTML="";e.appendChild(r);var i=n.getComputedStyle(t,null);s="1%"!==i.top;o="4px"===i.width;e.removeChild(r)}n.getComputedStyle&&i.extend(f,{pixelPosition:function(){return h(),s},boxSizingReliable:function(){return null==o&&h(),o},reliableMarginRight:function(){var f,i=t.appendChild(u.createElement("div"));return i.style.cssText=t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",t.style.width="1px",e.appendChild(r),f=!parseFloat(n.getComputedStyle(i,null).marginRight),e.removeChild(r),f}})}}();i.swap=function(n,t,i,r){var f,u,e={};for(u in t)e[u]=n.style[u],n.style[u]=t[u];f=i.apply(n,r||[]);for(u in t)n.style[u]=e[u];return f};var gf=/^(none|table(?!-c[ea]).+)/,ne=new RegExp("^("+lt+")(.*)$","i"),te=new RegExp("^([+-])=("+lt+")","i"),ie={position:"absolute",visibility:"hidden",display:"block"},kr={letterSpacing:"0",fontWeight:"400"},dr=["Webkit","O","Moz","ms"];i.extend({cssHooks:{opacity:{get:function(n,t){if(t){var i=rt(n,"opacity");return""===i?"1":i}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(n,t,r,u){if(n&&3!==n.nodeType&&8!==n.nodeType&&n.style){var o,h,e,s=i.camelCase(t),c=n.style;return t=i.cssProps[s]||(i.cssProps[s]=gr(c,s)),e=i.cssHooks[t]||i.cssHooks[s],void 0===r?e&&"get"in e&&void 0!==(o=e.get(n,!1,u))?o:c[t]:(h=typeof r,"string"===h&&(o=te.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(i.css(n,t)),h="number"),null!=r&&r===r&&("number"!==h||i.cssNumber[s]||(r+="px"),f.clearCloneStyle||""!==r||0!==t.indexOf("background")||(c[t]="inherit"),e&&"set"in e&&void 0===(r=e.set(n,r,u))||(c[t]=r)),void 0)}},css:function(n,t,r,u){var f,s,e,o=i.camelCase(t);return t=i.cssProps[o]||(i.cssProps[o]=gr(n.style,o)),e=i.cssHooks[t]||i.cssHooks[o],e&&"get"in e&&(f=e.get(n,!0,r)),void 0===f&&(f=rt(n,t,u)),"normal"===f&&t in kr&&(f=kr[t]),""===r||r?(s=parseFloat(f),r===!0||i.isNumeric(s)?s||0:f):f}});i.each(["height","width"],function(n,t){i.cssHooks[t]={get:function(n,r,u){if(r)return gf.test(i.css(n,"display"))&&0===n.offsetWidth?i.swap(n,ie,function(){return iu(n,t,u)}):iu(n,t,u)},set:function(n,r,u){var f=u&&yt(n);return nu(n,r,u?tu(n,t,u,"border-box"===i.css(n,"boxSizing",!1,f),f):0)}}});i.cssHooks.marginRight=br(f.reliableMarginRight,function(n,t){if(t)return i.swap(n,{display:"inline-block"},rt,[n,"marginRight"])});i.each({margin:"",padding:"",border:"Width"},function(n,t){i.cssHooks[n+t]={expand:function(i){for(var r=0,f={},u="string"==typeof i?i.split(" "):[i];4>r;r++)f[n+w[r]+t]=u[r]||u[r-2]||u[0];return f}};wr.test(n)||(i.cssHooks[n+t].set=nu)});i.fn.extend({css:function(n,t){return l(this,function(n,t,r){var f,e,o={},u=0;if(i.isArray(t)){for(f=yt(n),e=t.length;e>u;u++)o[t[u]]=i.css(n,t[u],!1,f);return o}return void 0!==r?i.style(n,t,r):i.css(n,t)},n,t,arguments.length>1)},show:function(){return ru(this,!0)},hide:function(){return ru(this)},toggle:function(n){return"boolean"==typeof n?n?this.show():this.hide():this.each(function(){it(this)?i(this).show():i(this).hide()})}});i.Tween=s;s.prototype={constructor:s,init:function(n,t,r,u,f,e){this.elem=n;this.prop=r;this.easing=f||"swing";this.options=t;this.start=this.now=this.cur();this.end=u;this.unit=e||(i.cssNumber[r]?"":"px")},cur:function(){var n=s.propHooks[this.prop];return n&&n.get?n.get(this):s.propHooks._default.get(this)},run:function(n){var r,t=s.propHooks[this.prop];return this.pos=r=this.options.duration?i.easing[this.easing](n,this.options.duration*n,0,1,this.options.duration):n,this.now=(this.end-this.start)*r+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),t&&t.set?t.set(this):s.propHooks._default.set(this),this}};s.prototype.init.prototype=s.prototype;s.propHooks={_default:{get:function(n){var t;return null==n.elem[n.prop]||n.elem.style&&null!=n.elem.style[n.prop]?(t=i.css(n.elem,n.prop,""),t&&"auto"!==t?t:0):n.elem[n.prop]},set:function(n){i.fx.step[n.prop]?i.fx.step[n.prop](n):n.elem.style&&(null!=n.elem.style[i.cssProps[n.prop]]||i.cssHooks[n.prop])?i.style(n.elem,n.prop,n.now+n.unit):n.elem[n.prop]=n.now}}};s.propHooks.scrollTop=s.propHooks.scrollLeft={set:function(n){n.elem.nodeType&&n.elem.parentNode&&(n.elem[n.prop]=n.now)}};i.easing={linear:function(n){return n},swing:function(n){return.5-Math.cos(n*Math.PI)/2}};i.fx=s.prototype.init;i.fx.step={};var nt,pt,re=/^(?:toggle|show|hide)$/,uu=new RegExp("^(?:([+-])=|)("+lt+")([a-z%]*)$","i"),ue=/queueHooks$/,wt=[fe],ut={"*":[function(n,t){var f=this.createTween(n,t),s=f.cur(),r=uu.exec(t),e=r&&r[3]||(i.cssNumber[n]?"":"px"),u=(i.cssNumber[n]||"px"!==e&&+s)&&uu.exec(i.css(f.elem,n)),o=1,h=20;if(u&&u[3]!==e){e=e||u[3];r=r||[];u=+s||1;do o=o||".5",u/=o,i.style(f.elem,n,u+e);while(o!==(o=f.cur()/s)&&1!==o&&--h)}return r&&(u=f.start=+u||+s||0,f.unit=e,f.end=r[1]?u+(r[1]+1)*r[2]:+r[2]),f}]};i.Animation=i.extend(ou,{tweener:function(n,t){i.isFunction(n)?(t=n,n=["*"]):n=n.split(" ");for(var r,u=0,f=n.length;f>u;u++)r=n[u],ut[r]=ut[r]||[],ut[r].unshift(t)},prefilter:function(n,t){t?wt.unshift(n):wt.push(n)}});i.speed=function(n,t,r){var u=n&&"object"==typeof n?i.extend({},n):{complete:r||!r&&t||i.isFunction(n)&&n,duration:n,easing:r&&t||t&&!i.isFunction(t)&&t};return u.duration=i.fx.off?0:"number"==typeof u.duration?u.duration:u.duration in i.fx.speeds?i.fx.speeds[u.duration]:i.fx.speeds._default,(null==u.queue||u.queue===!0)&&(u.queue="fx"),u.old=u.complete,u.complete=function(){i.isFunction(u.old)&&u.old.call(this);u.queue&&i.dequeue(this,u.queue)},u};i.fn.extend({fadeTo:function(n,t,i,r){return this.filter(it).css("opacity",0).show().end().animate({opacity:t},n,i,r)},animate:function(n,t,u,f){var s=i.isEmptyObject(n),o=i.speed(t,u,f),e=function(){var t=ou(this,i.extend({},n),o);(s||r.get(this,"finish"))&&t.stop(!0)};return e.finish=e,s||o.queue===!1?this.each(e):this.queue(o.queue,e)},stop:function(n,t,u){var f=function(n){var t=n.stop;delete n.stop;t(u)};return"string"!=typeof n&&(u=t,t=n,n=void 0),t&&n!==!1&&this.queue(n||"fx",[]),this.each(function(){var s=!0,t=null!=n&&n+"queueHooks",o=i.timers,e=r.get(this);if(t)e[t]&&e[t].stop&&f(e[t]);else for(t in e)e[t]&&e[t].stop&&ue.test(t)&&f(e[t]);for(t=o.length;t--;)o[t].elem!==this||null!=n&&o[t].queue!==n||(o[t].anim.stop(u),s=!1,o.splice(t,1));(s||!u)&&i.dequeue(this,n)})},finish:function(n){return n!==!1&&(n=n||"fx"),this.each(function(){var t,e=r.get(this),u=e[n+"queue"],o=e[n+"queueHooks"],f=i.timers,s=u?u.length:0;for(e.finish=!0,i.queue(this,n,[]),o&&o.stop&&o.stop.call(this,!0),t=f.length;t--;)f[t].elem===this&&f[t].queue===n&&(f[t].anim.stop(!0),f.splice(t,1));for(t=0;s>t;t++)u[t]&&u[t].finish&&u[t].finish.call(this);delete e.finish})}});i.each(["toggle","show","hide"],function(n,t){var r=i.fn[t];i.fn[t]=function(n,i,u){return null==n||"boolean"==typeof n?r.apply(this,arguments):this.animate(bt(t,!0),n,i,u)}});i.each({slideDown:bt("show"),slideUp:bt("hide"),slideToggle:bt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(n,t){i.fn[n]=function(n,i,r){return this.animate(t,n,i,r)}});i.timers=[];i.fx.tick=function(){var r,n=0,t=i.timers;for(nt=i.now();n<t.length;n++)r=t[n],r()||t[n]!==r||t.splice(n--,1);t.length||i.fx.stop();nt=void 0};i.fx.timer=function(n){i.timers.push(n);n()?i.fx.start():i.timers.pop()};i.fx.interval=13;i.fx.start=function(){pt||(pt=setInterval(i.fx.tick,i.fx.interval))};i.fx.stop=function(){clearInterval(pt);pt=null};i.fx.speeds={slow:600,fast:200,_default:400};i.fn.delay=function(n,t){return n=i.fx?i.fx.speeds[n]||n:n,t=t||"fx",this.queue(t,function(t,i){var r=setTimeout(t,n);i.stop=function(){clearTimeout(r)}})},function(){var n=u.createElement("input"),t=u.createElement("select"),i=t.appendChild(u.createElement("option"));n.type="checkbox";f.checkOn=""!==n.value;f.optSelected=i.selected;t.disabled=!0;f.optDisabled=!i.disabled;n=u.createElement("input");n.value="t";n.type="radio";f.radioValue="t"===n.value}();tt=i.expr.attrHandle;i.fn.extend({attr:function(n,t){return l(this,i.attr,n,t,arguments.length>1)},removeAttr:function(n){return this.each(function(){i.removeAttr(this,n)})}});i.extend({attr:function(n,t,r){var u,f,e=n.nodeType;if(n&&3!==e&&8!==e&&2!==e)return typeof n.getAttribute===d?i.prop(n,t,r):(1===e&&i.isXMLDoc(n)||(t=t.toLowerCase(),u=i.attrHooks[t]||(i.expr.match.bool.test(t)?su:oe)),void 0===r?u&&"get"in u&&null!==(f=u.get(n,t))?f:(f=i.find.attr(n,t),null==f?void 0:f):null!==r?u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:(n.setAttribute(t,r+""),r):void i.removeAttr(n,t))},removeAttr:function(n,t){var r,u,e=0,f=t&&t.match(c);if(f&&1===n.nodeType)while(r=f[e++])u=i.propFix[r]||r,i.expr.match.bool.test(r)&&(n[u]=!1),n.removeAttribute(r)},attrHooks:{type:{set:function(n,t){if(!f.radioValue&&"radio"===t&&i.nodeName(n,"input")){var r=n.value;return n.setAttribute("type",t),r&&(n.value=r),t}}}}});su={set:function(n,t,r){return t===!1?i.removeAttr(n,r):n.setAttribute(r,r),r}};i.each(i.expr.match.bool.source.match(/\w+/g),function(n,t){var r=tt[t]||i.find.attr;tt[t]=function(n,t,i){var u,f;return i||(f=tt[t],tt[t]=u,u=null!=r(n,t,i)?t.toLowerCase():null,tt[t]=f),u}});hu=/^(?:input|select|textarea|button)$/i;i.fn.extend({prop:function(n,t){return l(this,i.prop,n,t,arguments.length>1)},removeProp:function(n){return this.each(function(){delete this[i.propFix[n]||n]})}});i.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(n,t,r){var f,u,o,e=n.nodeType;if(n&&3!==e&&8!==e&&2!==e)return o=1!==e||!i.isXMLDoc(n),o&&(t=i.propFix[t]||t,u=i.propHooks[t]),void 0!==r?u&&"set"in u&&void 0!==(f=u.set(n,r,t))?f:n[t]=r:u&&"get"in u&&null!==(f=u.get(n,t))?f:n[t]},propHooks:{tabIndex:{get:function(n){return n.hasAttribute("tabindex")||hu.test(n.nodeName)||n.href?n.tabIndex:-1}}}});f.optSelected||(i.propHooks.selected={get:function(n){var t=n.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}});i.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){i.propFix[this.toLowerCase()]=this});kt=/[\t\r\n\f]/g;i.fn.extend({addClass:function(n){var o,t,r,u,s,f,h="string"==typeof n&&n,e=0,l=this.length;if(i.isFunction(n))return this.each(function(t){i(this).addClass(n.call(this,t,this.className))});if(h)for(o=(n||"").match(c)||[];l>e;e++)if(t=this[e],r=1===t.nodeType&&(t.className?(" "+t.className+" ").replace(kt," "):" ")){for(s=0;u=o[s++];)r.indexOf(" "+u+" ")<0&&(r+=u+" ");f=i.trim(r);t.className!==f&&(t.className=f)}return this},removeClass:function(n){var o,t,r,u,s,f,h=0===arguments.length||"string"==typeof n&&n,e=0,l=this.length;if(i.isFunction(n))return this.each(function(t){i(this).removeClass(n.call(this,t,this.className))});if(h)for(o=(n||"").match(c)||[];l>e;e++)if(t=this[e],r=1===t.nodeType&&(t.className?(" "+t.className+" ").replace(kt," "):"")){for(s=0;u=o[s++];)while(r.indexOf(" "+u+" ")>=0)r=r.replace(" "+u+" "," ");f=n?i.trim(r):"";t.className!==f&&(t.className=f)}return this},toggleClass:function(n,t){var u=typeof n;return"boolean"==typeof t&&"string"===u?t?this.addClass(n):this.removeClass(n):this.each(i.isFunction(n)?function(r){i(this).toggleClass(n.call(this,r,this.className,t),t)}:function(){if("string"===u)for(var t,e=0,f=i(this),o=n.match(c)||[];t=o[e++];)f.hasClass(t)?f.removeClass(t):f.addClass(t);else(u===d||"boolean"===u)&&(this.className&&r.set(this,"__className__",this.className),this.className=this.className||n===!1?"":r.get(this,"__className__")||"")})},hasClass:function(n){for(var i=" "+n+" ",t=0,r=this.length;r>t;t++)if(1===this[t].nodeType&&(" "+this[t].className+" ").replace(kt," ").indexOf(i)>=0)return!0;return!1}});cu=/\r/g;i.fn.extend({val:function(n){var t,r,f,u=this[0];return arguments.length?(f=i.isFunction(n),this.each(function(r){var u;1===this.nodeType&&(u=f?n.call(this,r,i(this).val()):n,null==u?u="":"number"==typeof u?u+="":i.isArray(u)&&(u=i.map(u,function(n){return null==n?"":n+""})),t=i.valHooks[this.type]||i.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,u,"value")||(this.value=u))})):u?(t=i.valHooks[u.type]||i.valHooks[u.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(r=t.get(u,"value"))?r:(r=u.value,"string"==typeof r?r.replace(cu,""):null==r?"":r)):void 0}});i.extend({valHooks:{option:{get:function(n){var t=i.find.attr(n,"value");return null!=t?t:i.trim(i.text(n))}},select:{get:function(n){for(var o,t,s=n.options,r=n.selectedIndex,u="select-one"===n.type||0>r,h=u?null:[],c=u?r+1:s.length,e=0>r?c:u?r:0;c>e;e++)if(t=s[e],!(!t.selected&&e!==r||(f.optDisabled?t.disabled:null!==t.getAttribute("disabled"))||t.parentNode.disabled&&i.nodeName(t.parentNode,"optgroup"))){if(o=i(t).val(),u)return o;h.push(o)}return h},set:function(n,t){for(var u,r,f=n.options,e=i.makeArray(t),o=f.length;o--;)r=f[o],(r.selected=i.inArray(r.value,e)>=0)&&(u=!0);return u||(n.selectedIndex=-1),e}}}});i.each(["radio","checkbox"],function(){i.valHooks[this]={set:function(n,t){if(i.isArray(t))return n.checked=i.inArray(i(n).val(),t)>=0}};f.checkOn||(i.valHooks[this].get=function(n){return null===n.getAttribute("value")?"on":n.value})});i.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(n,t){i.fn[t]=function(n,i){return arguments.length>0?this.on(t,null,n,i):this.trigger(t)}});i.fn.extend({hover:function(n,t){return this.mouseenter(n).mouseleave(t||n)},bind:function(n,t,i){return this.on(n,null,t,i)},unbind:function(n,t){return this.off(n,null,t)},delegate:function(n,t,i,r){return this.on(t,n,i,r)},undelegate:function(n,t,i){return 1===arguments.length?this.off(n,"**"):this.off(t,n||"**",i)}});dt=i.now();gt=/\?/;i.parseJSON=function(n){return JSON.parse(n+"")};i.parseXML=function(n){var t,r;if(!n||"string"!=typeof n)return null;try{r=new DOMParser;t=r.parseFromString(n,"text/xml")}catch(u){t=void 0}return(!t||t.getElementsByTagName("parsererror").length)&&i.error("Invalid XML: "+n),t};var b,v,se=/#.*$/,lu=/([?&])_=[^&]*/,he=/^(.*?):[ \t]*([^\r\n]*)$/gm,ce=/^(?:GET|HEAD)$/,le=/^\/\//,au=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,vu={},li={},yu="*/".concat("*");try{v=location.href}catch(ge){v=u.createElement("a");v.href="";v=v.href}b=au.exec(v.toLowerCase())||[];i.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:v,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(b[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":yu,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":i.parseJSON,"text xml":i.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(n,t){return t?ai(ai(n,i.ajaxSettings),t):ai(i.ajaxSettings,n)},ajaxPrefilter:pu(vu),ajaxTransport:pu(li),ajax:function(n,t){function w(n,t,s,h){var v,it,b,y,w,c=t;2!==e&&(e=2,d&&clearTimeout(d),l=void 0,k=h||"",u.readyState=n>0?4:0,v=n>=200&&300>n||304===n,s&&(y=ae(r,u,s)),y=ve(r,y,u,v),v?(r.ifModified&&(w=u.getResponseHeader("Last-Modified"),w&&(i.lastModified[f]=w),w=u.getResponseHeader("etag"),w&&(i.etag[f]=w)),204===n||"HEAD"===r.type?c="nocontent":304===n?c="notmodified":(c=y.state,it=y.data,b=y.error,v=!b)):(b=c,(n||!c)&&(c="error",0>n&&(n=0))),u.status=n,u.statusText=(t||c)+"",v?nt.resolveWith(o,[it,c,u]):nt.rejectWith(o,[u,c,b]),u.statusCode(p),p=void 0,a&&g.trigger(v?"ajaxSuccess":"ajaxError",[u,r,v?it:b]),tt.fireWith(o,[u,c]),a&&(g.trigger("ajaxComplete",[u,r]),--i.active||i.event.trigger("ajaxStop")))}"object"==typeof n&&(t=n,n=void 0);t=t||{};var l,f,k,y,d,s,a,h,r=i.ajaxSetup({},t),o=r.context||r,g=r.context&&(o.nodeType||o.jquery)?i(o):i.event,nt=i.Deferred(),tt=i.Callbacks("once memory"),p=r.statusCode||{},it={},rt={},e=0,ut="canceled",u={readyState:0,getResponseHeader:function(n){var t;if(2===e){if(!y)for(y={};t=he.exec(k);)y[t[1].toLowerCase()]=t[2];t=y[n.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===e?k:null},setRequestHeader:function(n,t){var i=n.toLowerCase();return e||(n=rt[i]=rt[i]||n,it[n]=t),this},overrideMimeType:function(n){return e||(r.mimeType=n),this},statusCode:function(n){var t;if(n)if(2>e)for(t in n)p[t]=[p[t],n[t]];else u.always(n[u.status]);return this},abort:function(n){var t=n||ut;return l&&l.abort(t),w(0,t),this}};if(nt.promise(u).complete=tt.add,u.success=u.done,u.error=u.fail,r.url=((n||r.url||v)+"").replace(se,"").replace(le,b[1]+"//"),r.type=t.method||t.type||r.method||r.type,r.dataTypes=i.trim(r.dataType||"*").toLowerCase().match(c)||[""],null==r.crossDomain&&(s=au.exec(r.url.toLowerCase()),r.crossDomain=!(!s||s[1]===b[1]&&s[2]===b[2]&&(s[3]||("http:"===s[1]?"80":"443"))===(b[3]||("http:"===b[1]?"80":"443")))),r.data&&r.processData&&"string"!=typeof r.data&&(r.data=i.param(r.data,r.traditional)),wu(vu,r,t,u),2===e)return u;a=r.global;a&&0==i.active++&&i.event.trigger("ajaxStart");r.type=r.type.toUpperCase();r.hasContent=!ce.test(r.type);f=r.url;r.hasContent||(r.data&&(f=r.url+=(gt.test(f)?"&":"?")+r.data,delete r.data),r.cache===!1&&(r.url=lu.test(f)?f.replace(lu,"$1_="+dt++):f+(gt.test(f)?"&":"?")+"_="+dt++));r.ifModified&&(i.lastModified[f]&&u.setRequestHeader("If-Modified-Since",i.lastModified[f]),i.etag[f]&&u.setRequestHeader("If-None-Match",i.etag[f]));(r.data&&r.hasContent&&r.contentType!==!1||t.contentType)&&u.setRequestHeader("Content-Type",r.contentType);u.setRequestHeader("Accept",r.dataTypes[0]&&r.accepts[r.dataTypes[0]]?r.accepts[r.dataTypes[0]]+("*"!==r.dataTypes[0]?", "+yu+"; q=0.01":""):r.accepts["*"]);for(h in r.headers)u.setRequestHeader(h,r.headers[h]);if(r.beforeSend&&(r.beforeSend.call(o,u,r)===!1||2===e))return u.abort();ut="abort";for(h in{success:1,error:1,complete:1})u[h](r[h]);if(l=wu(li,r,t,u)){u.readyState=1;a&&g.trigger("ajaxSend",[u,r]);r.async&&r.timeout>0&&(d=setTimeout(function(){u.abort("timeout")},r.timeout));try{e=1;l.send(it,w)}catch(ft){if(!(2>e))throw ft;w(-1,ft)}}else w(-1,"No Transport");return u},getJSON:function(n,t,r){return i.get(n,t,r,"json")},getScript:function(n,t){return i.get(n,void 0,t,"script")}});i.each(["get","post"],function(n,t){i[t]=function(n,r,u,f){return i.isFunction(r)&&(f=f||u,u=r,r=void 0),i.ajax({url:n,type:t,dataType:f,data:r,success:u})}});i.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(n,t){i.fn[t]=function(n){return this.on(t,n)}});i._evalUrl=function(n){return i.ajax({url:n,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})};i.fn.extend({wrapAll:function(n){var t;return i.isFunction(n)?this.each(function(t){i(this).wrapAll(n.call(this,t))}):(this[0]&&(t=i(n,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var n=this;n.firstElementChild;)n=n.firstElementChild;return n}).append(this)),this)},wrapInner:function(n){return this.each(i.isFunction(n)?function(t){i(this).wrapInner(n.call(this,t))}:function(){var t=i(this),r=t.contents();r.length?r.wrapAll(n):t.append(n)})},wrap:function(n){var t=i.isFunction(n);return this.each(function(r){i(this).wrapAll(t?n.call(this,r):n)})},unwrap:function(){return this.parent().each(function(){i.nodeName(this,"body")||i(this).replaceWith(this.childNodes)}).end()}});i.expr.filters.hidden=function(n){return n.offsetWidth<=0&&n.offsetHeight<=0};i.expr.filters.visible=function(n){return!i.expr.filters.hidden(n)};var ye=/%20/g,pe=/\[\]$/,bu=/\r?\n/g,we=/^(?:submit|button|image|reset|file)$/i,be=/^(?:input|select|textarea|keygen)/i;i.param=function(n,t){var r,u=[],f=function(n,t){t=i.isFunction(t)?t():null==t?"":t;u[u.length]=encodeURIComponent(n)+"="+encodeURIComponent(t)};if(void 0===t&&(t=i.ajaxSettings&&i.ajaxSettings.traditional),i.isArray(n)||n.jquery&&!i.isPlainObject(n))i.each(n,function(){f(this.name,this.value)});else for(r in n)vi(r,n[r],t,f);return u.join("&").replace(ye,"+")};i.fn.extend({serialize:function(){return i.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var n=i.prop(this,"elements");return n?i.makeArray(n):this}).filter(function(){var n=this.type;return this.name&&!i(this).is(":disabled")&&be.test(this.nodeName)&&!we.test(n)&&(this.checked||!er.test(n))}).map(function(n,t){var r=i(this).val();return null==r?null:i.isArray(r)?i.map(r,function(n){return{name:t.name,value:n.replace(bu,"\r\n")}}):{name:t.name,value:r.replace(bu,"\r\n")}}).get()}});i.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(n){}};var ke=0,ni={},de={0:200,1223:204},ft=i.ajaxSettings.xhr();return n.ActiveXObject&&i(n).on("unload",function(){for(var n in ni)ni[n]()}),f.cors=!!ft&&"withCredentials"in ft,f.ajax=ft=!!ft,i.ajaxTransport(function(n){var t;if(f.cors||ft&&!n.crossDomain)return{send:function(i,r){var f,u=n.xhr(),e=++ke;if(u.open(n.type,n.url,n.async,n.username,n.password),n.xhrFields)for(f in n.xhrFields)u[f]=n.xhrFields[f];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType);n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(f in i)u.setRequestHeader(f,i[f]);t=function(n){return function(){t&&(delete ni[e],t=u.onload=u.onerror=null,"abort"===n?u.abort():"error"===n?r(u.status,u.statusText):r(de[u.status]||u.status,u.statusText,"string"==typeof u.responseText?{text:u.responseText}:void 0,u.getAllResponseHeaders()))}};u.onload=t();u.onerror=t("error");t=ni[e]=t("abort");try{u.send(n.hasContent&&n.data||null)}catch(o){if(t)throw o;}},abort:function(){t&&t()}}}),i.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(n){return i.globalEval(n),n}}}),i.ajaxPrefilter("script",function(n){void 0===n.cache&&(n.cache=!1);n.crossDomain&&(n.type="GET")}),i.ajaxTransport("script",function(n){if(n.crossDomain){var r,t;return{send:function(f,e){r=i("<script>").prop({async:!0,charset:n.scriptCharset,src:n.url}).on("load error",t=function(n){r.remove();t=null;n&&e("error"===n.type?404:200,n.type)});u.head.appendChild(r[0])},abort:function(){t&&t()}}}}),yi=[],ti=/(=)\?(?=&|$)|\?\?/,i.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var n=yi.pop()||i.expando+"_"+dt++;return this[n]=!0,n}}),i.ajaxPrefilter("json jsonp",function(t,r,u){var f,o,e,s=t.jsonp!==!1&&(ti.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&ti.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return(f=t.jsonpCallback=i.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(ti,"$1"+f):t.jsonp!==!1&&(t.url+=(gt.test(t.url)?"&":"?")+t.jsonp+"="+f),t.converters["script json"]=function(){return e||i.error(f+" was not called"),e[0]},t.dataTypes[0]="json",o=n[f],n[f]=function(){e=arguments},u.always(function(){n[f]=o;t[f]&&(t.jsonpCallback=r.jsonpCallback,yi.push(f));e&&i.isFunction(o)&&o(e[0]);e=o=void 0}),"script")}),i.parseHTML=function(n,t,r){if(!n||"string"!=typeof n)return null;"boolean"==typeof t&&(r=t,t=!1);t=t||u;var f=gi.exec(n),e=!r&&[];return f?[t.createElement(f[1])]:(f=i.buildFragment([n],t,e),e&&e.length&&i(e).remove(),i.merge([],f.childNodes))},pi=i.fn.load,i.fn.load=function(n,t,r){if("string"!=typeof n&&pi)return pi.apply(this,arguments);var u,o,s,f=this,e=n.indexOf(" ");return e>=0&&(u=i.trim(n.slice(e)),n=n.slice(0,e)),i.isFunction(t)?(r=t,t=void 0):t&&"object"==typeof t&&(o="POST"),f.length>0&&i.ajax({url:n,type:o,dataType:"html",data:t}).done(function(n){s=arguments;f.html(u?i("<div>").append(i.parseHTML(n)).find(u):n)}).complete(r&&function(n,t){f.each(r,s||[n.responseText,t,n])}),this},i.expr.filters.animated=function(n){return i.grep(i.timers,function(t){return n===t.elem}).length},wi=n.document.documentElement,i.offset={setOffset:function(n,t,r){var e,o,s,h,u,c,v,l=i.css(n,"position"),a=i(n),f={};"static"===l&&(n.style.position="relative");u=a.offset();s=i.css(n,"top");c=i.css(n,"left");v=("absolute"===l||"fixed"===l)&&(s+c).indexOf("auto")>-1;v?(e=a.position(),h=e.top,o=e.left):(h=parseFloat(s)||0,o=parseFloat(c)||0);i.isFunction(t)&&(t=t.call(n,r,u));null!=t.top&&(f.top=t.top-u.top+h);null!=t.left&&(f.left=t.left-u.left+o);"using"in t?t.using.call(n,f):a.css(f)}},i.fn.extend({offset:function(n){if(arguments.length)return void 0===n?this:this.each(function(t){i.offset.setOffset(this,n,t)});var r,f,t=this[0],u={top:0,left:0},e=t&&t.ownerDocument;if(e)return r=e.documentElement,i.contains(r,t)?(typeof t.getBoundingClientRect!==d&&(u=t.getBoundingClientRect()),f=ku(e),{top:u.top+f.pageYOffset-r.clientTop,left:u.left+f.pageXOffset-r.clientLeft}):u},position:function(){if(this[0]){var n,r,u=this[0],t={top:0,left:0};return"fixed"===i.css(u,"position")?r=u.getBoundingClientRect():(n=this.offsetParent(),r=this.offset(),i.nodeName(n[0],"html")||(t=n.offset()),t.top+=i.css(n[0],"borderTopWidth",!0),t.left+=i.css(n[0],"borderLeftWidth",!0)),{top:r.top-t.top-i.css(u,"marginTop",!0),left:r.left-t.left-i.css(u,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var n=this.offsetParent||wi;n&&!i.nodeName(n,"html")&&"static"===i.css(n,"position");)n=n.offsetParent;return n||wi})}}),i.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,r){var u="pageYOffset"===r;i.fn[t]=function(i){return l(this,function(t,i,f){var e=ku(t);return void 0===f?e?e[r]:t[i]:void(e?e.scrollTo(u?n.pageXOffset:f,u?f:n.pageYOffset):t[i]=f)},t,i,arguments.length,null)}}),i.each(["top","left"],function(n,t){i.cssHooks[t]=br(f.pixelPosition,function(n,r){if(r)return(r=rt(n,t),ci.test(r)?i(n).position()[t]+"px":r)})}),i.each({Height:"height",Width:"width"},function(n,t){i.each({padding:"inner"+n,content:t,"":"outer"+n},function(r,u){i.fn[u]=function(u,f){var e=arguments.length&&(r||"boolean"!=typeof u),o=r||(u===!0||f===!0?"margin":"border");return l(this,function(t,r,u){var f;return i.isWindow(t)?t.document.documentElement["client"+n]:9===t.nodeType?(f=t.documentElement,Math.max(t.body["scroll"+n],f["scroll"+n],t.body["offset"+n],f["offset"+n],f["client"+n])):void 0===u?i.css(t,r,o):i.style(t,r,u,o)},t,e?u:void 0,e,null)}})}),i.fn.size=function(){return this.length},i.fn.andSelf=i.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return i}),du=n.jQuery,gu=n.$,i.noConflict=function(t){return n.$===i&&(n.$=gu),t&&n.jQuery===i&&(n.jQuery=du),i},typeof t===d&&(n.jQuery=n.$=i),i}),window.Modernizr=function(n,t,i){function a(n){c.cssText=n}function vt(n,t){return a(y.join(n+";")+(t||""))}function h(n,t){return typeof n===t}function v(n,t){return!!~(""+n).indexOf(t)}function lt(n,t){var u,r;for(u in n)if(r=n[u],!v(r,"-")&&c[r]!==i)return t=="pfx"?r:!0;return!1}function yt(n,t,r){var f,u;for(f in n)if(u=t[n[f]],u!==i)return r===!1?n[f]:h(u,"function")?u.bind(r||t):u;return!1}function f(n,t,i){var r=n.charAt(0).toUpperCase()+n.slice(1),u=(n+" "+ot.join(r+" ")+r).split(" ");return h(t,"string")||h(t,"undefined")?lt(u,t):(u=(n+" "+st.join(r+" ")+r).split(" "),yt(u,t,i))}function pt(){u.input=function(i){for(var r=0,u=i.length;r<u;r++)w[i[r]]=!!(i[r]in o);return w.list&&(w.list=!!(t.createElement("datalist")&&n.HTMLDataListElement)),w}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));u.inputtypes=function(n){for(var u=0,r,f,e,h=n.length;u<h;u++)o.setAttribute("type",f=n[u]),r=o.type!=="text",r&&(o.value=g,o.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&o.style.WebkitAppearance!==i?(s.appendChild(o),e=t.defaultView,r=e.getComputedStyle&&e.getComputedStyle(o,null).WebkitAppearance!=="textfield"&&o.offsetHeight!==0,s.removeChild(o)):/^(search|tel)$/.test(f)||(r=/^(url|email)$/.test(f)?o.checkValidity&&o.checkValidity()===!1:o.value!=g)),ht[n[u]]=!!r;return ht}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var u={},d=!0,s=t.documentElement,e="modernizr",ut=t.createElement(e),c=ut.style,o=t.createElement("input"),g=":)",ft={}.toString,y=" -webkit- -moz- -o- -ms- ".split(" "),et="Webkit Moz O ms",ot=et.split(" "),st=et.toLowerCase().split(" "),p={svg:"http://www.w3.org/2000/svg"},r={},ht={},w={},nt=[],tt=nt.slice,b,l=function(n,i,r,u){var l,a,c,v,f=t.createElement("div"),h=t.body,o=h||t.createElement("body");if(parseInt(r,10))while(r--)c=t.createElement("div"),c.id=u?u[r]:e+(r+1),f.appendChild(c);return l=["&#173;",'<style id="s',e,'">',n,"<\/style>"].join(""),f.id=e,(h?f:o).innerHTML+=l,o.appendChild(f),h||(o.style.background="",o.style.overflow="hidden",v=s.style.overflow,s.style.overflow="hidden",s.appendChild(o)),a=i(f,n),h?f.parentNode.removeChild(f):(o.parentNode.removeChild(o),s.style.overflow=v),!!a},at=function(t){var i=n.matchMedia||n.msMatchMedia,r;return i?i(t).matches:(l("@media "+t+" { #"+e+" { position: absolute; } }",function(t){r=(n.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position=="absolute"}),r)},ct=function(){function r(r,u){u=u||t.createElement(n[r]||"div");r="on"+r;var f=r in u;return f||(u.setAttribute||(u=t.createElement("div")),u.setAttribute&&u.removeAttribute&&(u.setAttribute(r,""),f=h(u[r],"function"),h(u[r],"undefined")||(u[r]=i),u.removeAttribute(r))),u=null,f}var n={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return r}(),it={}.hasOwnProperty,rt,k;rt=h(it,"undefined")||h(it.call,"undefined")?function(n,t){return t in n&&h(n.constructor.prototype[t],"undefined")}:function(n,t){return it.call(n,t)};Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,i,r;if(typeof t!="function")throw new TypeError;return i=tt.call(arguments,1),r=function(){var f,e,u;return this instanceof r?(f=function(){},f.prototype=t.prototype,e=new f,u=t.apply(e,i.concat(tt.call(arguments))),Object(u)===u)?u:e:t.apply(n,i.concat(tt.call(arguments)))},r});r.flexbox=function(){return f("flexWrap")};r.flexboxlegacy=function(){return f("boxDirection")};r.canvas=function(){var n=t.createElement("canvas");return!!(n.getContext&&n.getContext("2d"))};r.canvastext=function(){return!!(u.canvas&&h(t.createElement("canvas").getContext("2d").fillText,"function"))};r.webgl=function(){return!!n.WebGLRenderingContext};r.touch=function(){var i;return"ontouchstart"in n||n.DocumentTouch&&t instanceof DocumentTouch?i=!0:l(["@media (",y.join("touch-enabled),("),e,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(n){i=n.offsetTop===9}),i};r.geolocation=function(){return"geolocation"in navigator};r.postmessage=function(){return!!n.postMessage};r.websqldatabase=function(){return!!n.openDatabase};r.indexedDB=function(){return!!f("indexedDB",n)};r.hashchange=function(){return ct("hashchange",n)&&(t.documentMode===i||t.documentMode>7)};r.history=function(){return!!(n.history&&history.pushState)};r.draganddrop=function(){var n=t.createElement("div");return"draggable"in n||"ondragstart"in n&&"ondrop"in n};r.websockets=function(){return"WebSocket"in n||"MozWebSocket"in n};r.rgba=function(){return a("background-color:rgba(150,255,150,.5)"),v(c.backgroundColor,"rgba")};r.hsla=function(){return a("background-color:hsla(120,40%,100%,.5)"),v(c.backgroundColor,"rgba")||v(c.backgroundColor,"hsla")};r.multiplebgs=function(){return a("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(c.background)};r.backgroundsize=function(){return f("backgroundSize")};r.borderimage=function(){return f("borderImage")};r.borderradius=function(){return f("borderRadius")};r.boxshadow=function(){return f("boxShadow")};r.textshadow=function(){return t.createElement("div").style.textShadow===""};r.opacity=function(){return vt("opacity:.55"),/^0.55$/.test(c.opacity)};r.cssanimations=function(){return f("animationName")};r.csscolumns=function(){return f("columnCount")};r.cssgradients=function(){var n="background-image:";return a((n+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+n)+y.join("linear-gradient(left top,#9f9, white);"+n)).slice(0,-n.length)),v(c.backgroundImage,"gradient")};r.cssreflections=function(){return f("boxReflect")};r.csstransforms=function(){return!!f("transform")};r.csstransforms3d=function(){var n=!!f("perspective");return n&&"webkitPerspective"in s.style&&l("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t){n=t.offsetLeft===9&&t.offsetHeight===3}),n};r.csstransitions=function(){return f("transition")};r.fontface=function(){var n;return l('@font-face {font-family:"font";src:url("https://")}',function(i,r){var f=t.getElementById("smodernizr"),u=f.sheet||f.styleSheet,e=u?u.cssRules&&u.cssRules[0]?u.cssRules[0].cssText:u.cssText||"":"";n=/src/i.test(e)&&e.indexOf(r.split(" ")[0])===0}),n};r.generatedcontent=function(){var n;return l(["#",e,"{font:0/0 a}#",e,':after{content:"',g,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){n=t.offsetHeight>=3}),n};r.video=function(){var i=t.createElement("video"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=i.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=i.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(r){}return n};r.audio=function(){var i=t.createElement("audio"),n=!1;try{(n=!!i.canPlayType)&&(n=new Boolean(n),n.ogg=i.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=i.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=i.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(i.canPlayType("audio/x-m4a;")||i.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(r){}return n};r.localstorage=function(){try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch(n){return!1}};r.sessionstorage=function(){try{return sessionStorage.setItem(e,e),sessionStorage.removeItem(e),!0}catch(n){return!1}};r.webworkers=function(){return!!n.Worker};r.applicationcache=function(){return!!n.applicationCache};r.svg=function(){return!!t.createElementNS&&!!t.createElementNS(p.svg,"svg").createSVGRect};r.inlinesvg=function(){var n=t.createElement("div");return n.innerHTML="<svg/>",(n.firstChild&&n.firstChild.namespaceURI)==p.svg};r.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(ft.call(t.createElementNS(p.svg,"animate")))};r.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(ft.call(t.createElementNS(p.svg,"clipPath")))};for(k in r)rt(r,k)&&(b=k.toLowerCase(),u[b]=r[k](),nt.push((u[b]?"":"no-")+b));return u.input||pt(),u.addTest=function(n,t){if(typeof n=="object")for(var r in n)rt(n,r)&&u.addTest(r,n[r]);else{if(n=n.toLowerCase(),u[n]!==i)return u;t=typeof t=="function"?t():t;typeof d!="undefined"&&d&&(s.className+=" "+(t?"":"no-")+n);u[n]=t}return u},a(""),ut=o=null,function(n,t){function p(n,t){var i=n.createElement("p"),r=n.getElementsByTagName("head")[0]||n.documentElement;return i.innerHTML="x<style>"+t+"<\/style>",r.insertBefore(i.lastChild,r.firstChild)}function c(){var n=r.elements;return typeof n=="string"?n.split(" "):n}function o(n){var t=h[n[s]];return t||(t={},e++,n[s]=e,h[e]=t),t}function l(n,r,u){if(r||(r=t),i)return r.createElement(n);u||(u=o(r));var f;return f=u.cache[n]?u.cache[n].cloneNode():y.test(n)?(u.cache[n]=u.createElem(n)).cloneNode():u.createElem(n),f.canHaveChildren&&!v.test(n)?u.frag.appendChild(f):f}function w(n,r){if(n||(n=t),i)return n.createDocumentFragment();r=r||o(n);for(var f=r.frag.cloneNode(),u=0,e=c(),s=e.length;u<s;u++)f.createElement(e[u]);return f}function b(n,t){t.cache||(t.cache={},t.createElem=n.createElement,t.createFrag=n.createDocumentFragment,t.frag=t.createFrag());n.createElement=function(i){return r.shivMethods?l(i,n,t):t.createElem(i)};n.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+c().join().replace(/\w+/g,function(n){return t.createElem(n),t.frag.createElement(n),'c("'+n+'")'})+");return n}")(r,t.frag)}function a(n){n||(n=t);var u=o(n);return!r.shivCSS||f||u.hasCSS||(u.hasCSS=!!p(n,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),i||b(n,u),n}var u=n.html5||{},v=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,y=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,s="_html5shiv",e=0,h={},i,r;(function(){try{var n=t.createElement("a");n.innerHTML="<xyz><\/xyz>";f="hidden"in n;i=n.childNodes.length==1||function(){t.createElement("a");var n=t.createDocumentFragment();return typeof n.cloneNode=="undefined"||typeof n.createDocumentFragment=="undefined"||typeof n.createElement=="undefined"}()}catch(r){f=!0;i=!0}})();r={elements:u.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:u.shivCSS!==!1,supportsUnknownElements:i,shivMethods:u.shivMethods!==!1,type:"default",shivDocument:a,createElement:l,createDocumentFragment:w};n.html5=r;a(t)}(this,t),u._version="2.6.2",u._prefixes=y,u._domPrefixes=st,u._cssomPrefixes=ot,u.mq=at,u.hasEvent=ct,u.testProp=function(n){return lt([n])},u.testAllProps=f,u.testStyles=l,u.prefixed=function(n,t,i){return t?f(n,t,i):f(n,"pfx")},s.className=s.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(d?" js "+nt.join(" "):""),u}(this,this.document),function(n,t){typeof exports=="object"&&typeof module!="undefined"?module.exports=t():typeof define=="function"&&define.amd?define(t):n.ES6Promise=t()}(this,function(){"use strict";function pt(n){return typeof n=="function"||typeof n=="object"&&n!==null}function ut(n){return typeof n=="function"}function wt(n){b=n}function bt(n){r=n}function gt(){return function(){return process.nextTick(e)}}function ni(){return typeof w!="undefined"?function(){w(e)}:k()}function ti(){var n=0,i=new ht(e),t=document.createTextNode("");return i.observe(t,{characterData:!0}),function(){t.data=n=++n%2}}function ii(){var n=new MessageChannel;return n.port1.onmessage=e,function(){return n.port2.postMessage(0)}}function k(){var n=setTimeout;return function(){return n(e,1)}}function e(){for(var t,i,n=0;n<f;n+=2)t=u[n],i=u[n+1],t(i),u[n]=undefined,u[n+1]=undefined;f=0}function ri(){try{var t=require,n=t("vertx");return w=n.runOnLoop||n.runOnContext,ni()}catch(i){return k()}}function g(n,t){var e=arguments,f=this,i=new this.constructor(o),u;return i[c]===undefined&&yt(i),u=f._state,u?function(){var n=e[u-1];r(function(){return vt(u,i,n,f._result)})}():tt(f,i,n,t),i}function nt(n){var i=this,t;return n&&typeof n=="object"&&n.constructor===i?n:(t=new i(o),a(t,n),t)}function o(){}function ui(){return new TypeError("You cannot resolve a promise with itself")}function fi(){return new TypeError("A promises callback cannot return that same promise.")}function ct(n){try{return n.then}catch(t){return y.error=t,y}}function ei(n,t,i,r){try{n.call(t,i,r)}catch(u){return u}}function oi(n,u,f){r(function(n){var r=!1,e=ei(f,u,function(t){r||(r=!0,u!==t?a(n,t):i(n,t))},function(i){r||(r=!0,t(n,i))},"Settle: "+(n._label||" unknown promise"));!r&&e&&(r=!0,t(n,e))},n)}function si(n,r){r._state===l?i(n,r._result):r._state===h?t(n,r._result):tt(r,undefined,function(t){return a(n,t)},function(i){return t(n,i)})}function lt(n,r,u){r.constructor===n.constructor&&u===g&&r.constructor.resolve===nt?si(n,r):u===y?t(n,y.error):u===undefined?i(n,r):ut(u)?oi(n,r,u):i(n,r)}function a(n,r){n===r?t(n,ui()):pt(r)?lt(n,r,ct(r)):i(n,r)}function hi(n){n._onerror&&n._onerror(n._result);it(n)}function i(n,t){n._state===s&&(n._result=t,n._state=l,n._subscribers.length!==0&&r(it,n))}function t(n,t){n._state===s&&(n._state=h,n._result=t,r(hi,n))}function tt(n,t,i,u){var f=n._subscribers,e=f.length;n._onerror=null;f[e]=t;f[e+l]=i;f[e+h]=u;e===0&&n._state&&r(it,n)}function it(n){var i=n._subscribers,f=n._state,t;if(i.length!==0){var r=undefined,u=undefined,e=n._result;for(t=0;t<i.length;t+=3)r=i[t],u=i[t+f],r?vt(f,r,u,e):u(e);n._subscribers.length=0}}function at(){this.error=null}function ci(n,t){try{return n(t)}catch(i){return p.error=i,p}}function vt(n,r,u,f){var c=ut(u),e=undefined,v=undefined,o=undefined,y=undefined;if(c){if(e=ci(u,f),e===p?(y=!0,v=e.error,e=null):o=!0,r===e){t(r,fi());return}}else e=f,o=!0;r._state!==s||(c&&o?a(r,e):y?t(r,v):n===l?i(r,e):n===h&&t(r,e))}function li(n,i){try{i(function(t){a(n,t)},function(i){t(n,i)})}catch(r){t(n,r)}}function ai(){return rt++}function yt(n){n[c]=rt++;n._state=undefined;n._result=undefined;n._subscribers=[]}function v(n,r){this._instanceConstructor=n;this.promise=new n(o);this.promise[c]||yt(this.promise);et(r)?(this._input=r,this.length=r.length,this._remaining=r.length,this._result=new Array(this.length),this.length===0?i(this.promise,this._result):(this.length=this.length||0,this._enumerate(),this._remaining===0&&i(this.promise,this._result))):t(this.promise,vi())}function vi(){return new Error("Array Methods must be provided an Array")}function yi(n){return new v(this,n).promise}function pi(n){var t=this;return et(n)?new t(function(i,r){for(var f=n.length,u=0;u<f;u++)t.resolve(n[u]).then(i,r)}):new t(function(n,t){return t(new TypeError("You must pass an array to race."))})}function wi(n){var r=this,i=new r(o);return t(i,n),i}function bi(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor");}function ki(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");}function n(t){this[c]=ai();this._result=this._state=undefined;this._subscribers=[];o!==t&&(typeof t!="function"&&bi(),this instanceof n?li(this,t):ki())}function di(){var t=undefined,i,r;if(typeof global!="undefined")t=global;else if(typeof self!="undefined")t=self;else try{t=Function("return this")()}catch(u){throw new Error("polyfill failed because global object is unavailable in this environment");}if(i=t.Promise,i){r=null;try{r=Object.prototype.toString.call(i.resolve())}catch(u){}if(r==="[object Promise]"&&!i.cast)return}t.Promise=n}var ft=undefined,u,d,c,p,rt;ft=Array.isArray?Array.isArray:function(n){return Object.prototype.toString.call(n)==="[object Array]"};var et=ft,f=0,w=undefined,b=undefined,r=function(n,t){u[f]=n;u[f+1]=t;f+=2;f===2&&(b?b(e):d())};var ot=typeof window!="undefined"?window:undefined,st=ot||{},ht=st.MutationObserver||st.WebKitMutationObserver,kt=typeof self=="undefined"&&typeof process!="undefined"&&{}.toString.call(process)==="[object process]",dt=typeof Uint8ClampedArray!="undefined"&&typeof importScripts!="undefined"&&typeof MessageChannel!="undefined";u=new Array(1e3);d=undefined;d=kt?gt():ht?ti():dt?ii():ot===undefined&&typeof require=="function"?ri():k();c=Math.random().toString(36).substring(16);var s=void 0,l=1,h=2,y=new at;return p=new at,rt=0,v.prototype._enumerate=function(){for(var t=this.length,i=this._input,n=0;this._state===s&&n<t;n++)this._eachEntry(i[n],n)},v.prototype._eachEntry=function(t,i){var r=this._instanceConstructor,e=r.resolve,u,f;e===nt?(u=ct(t),u===g&&t._state!==s?this._settledAt(t._state,i,t._result):typeof u!="function"?(this._remaining--,this._result[i]=t):r===n?(f=new r(o),lt(f,t,u),this._willSettleAt(f,i)):this._willSettleAt(new r(function(n){return n(t)}),i)):this._willSettleAt(e(t),i)},v.prototype._settledAt=function(n,r,u){var f=this.promise;f._state===s&&(this._remaining--,n===h?t(f,u):this._result[r]=u);this._remaining===0&&i(f,this._result)},v.prototype._willSettleAt=function(n,t){var i=this;tt(n,undefined,function(n){return i._settledAt(l,t,n)},function(n){return i._settledAt(h,t,n)})},n.all=yi,n.race=pi,n.resolve=nt,n.reject=wi,n._setScheduler=wt,n._setAsap=bt,n._asap=r,n.prototype={constructor:n,then:g,"catch":function(n){return this.then(null,n)}},n.polyfill=di,n.Promise=n,n}),ES6Promise.polyfill(),function(n,t,i){function v(t,i){var u,f;if(n.isArray(t)){for(u=t.length-1;u>=0;u--)f=t[u],n.type(f)==="string"&&r.transports[f]||(i.log("Invalid transport: "+f+", removing it from the transports list."),t.splice(u,1));t.length===0&&(i.log("No transports remain within the specified transport array."),t=null)}else if(r.transports[t]||t==="auto"){if(t==="auto"&&r._.ieVersion<=8)return["longPolling"]}else i.log("Invalid transport: "+t.toString()+"."),t=null;return t}function y(n){return n==="http:"?80:n==="https:"?443:void 0}function h(n,t){return t.match(/:\d+$/)?t:t+":"+y(n)}function p(t,i){var u=this,r=[];u.tryBuffer=function(i){return t.state===n.signalR.connectionState.connecting?(r.push(i),!0):!1};u.drain=function(){if(t.state===n.signalR.connectionState.connected)while(r.length>0)i(r.shift())};u.clear=function(){r=[]}}var f={nojQuery:"jQuery was not found. Please ensure jQuery is referenced before the SignalR client JavaScript file.",noTransportOnInit:"No transport could be initialized successfully. Try specifying a different transport or none at all for auto initialization.",errorOnNegotiate:"Error during negotiation request.",stoppedWhileLoading:"The connection was stopped during page load.",stoppedWhileNegotiating:"The connection was stopped during the negotiate request.",errorParsingNegotiateResponse:"Error parsing negotiate response.",errorDuringStartRequest:"Error during start request. Stopping the connection.",stoppedDuringStartRequest:"The connection was stopped during the start request.",errorParsingStartResponse:"Error parsing start response: '{0}'. Stopping the connection.",invalidStartResponse:"Invalid start response: '{0}'. Stopping the connection.",protocolIncompatible:"You are using a version of the client that isn't compatible with the server. Client version {0}, server version {1}.",sendFailed:"Send failed.",parseFailed:"Failed at parsing response: {0}",longPollFailed:"Long polling request failed.",eventSourceFailedToConnect:"EventSource failed to connect.",eventSourceError:"Error raised by EventSource",webSocketClosed:"WebSocket closed.",pingServerFailedInvalidResponse:"Invalid ping response when pinging server: '{0}'.",pingServerFailed:"Failed to ping server.",pingServerFailedStatusCode:"Failed to ping server.  Server responded with status code {0}, stopping the connection.",pingServerFailedParse:"Failed to parse ping server response, stopping the connection.",noConnectionTransport:"Connection is in an invalid state, there is no transport active.",webSocketsInvalidState:"The Web Socket transport is in an invalid state, transitioning into reconnecting.",reconnectTimeout:"Couldn't reconnect within the configured timeout of {0} ms, disconnecting.",reconnectWindowTimeout:"The client has been inactive since {0} and it has exceeded the inactivity timeout of {1} ms. Stopping the connection."};if(typeof n!="function")throw new Error(f.nojQuery);var r,c,o=t.document.readyState==="complete",e=n(t),l="__Negotiate Aborted__",u={onStart:"onStart",onStarting:"onStarting",onReceived:"onReceived",onError:"onError",onConnectionSlow:"onConnectionSlow",onReconnecting:"onReconnecting",onReconnect:"onReconnect",onStateChanged:"onStateChanged",onDisconnect:"onDisconnect"},w=function(n,i){if(i!==!1){var r;typeof t.console!="undefined"&&(r="["+(new Date).toTimeString()+"] SignalR: "+n,t.console.debug?t.console.debug(r):t.console.log&&t.console.log(r))}},s=function(t,i,r){return i===t.state?(t.state=r,n(t).triggerHandler(u.onStateChanged,[{oldState:i,newState:r}]),!0):!1},b=function(n){return n.state===r.connectionState.disconnected},a=function(n){return n._.keepAliveData.activated&&n.transport.supportsKeepAlive(n)},k=function(i){var f,e;i._.configuredStopReconnectingTimeout||(e=function(t){var i=r._.format(r.resources.reconnectTimeout,t.disconnectTimeout);t.log(i);n(t).triggerHandler(u.onError,[r._.error(i,"TimeoutException")]);t.stop(!1,!1)},i.reconnecting(function(){var n=this;n.state===r.connectionState.reconnecting&&(f=t.setTimeout(function(){e(n)},n.disconnectTimeout))}),i.stateChanged(function(n){n.oldState===r.connectionState.reconnecting&&t.clearTimeout(f)}),i._.configuredStopReconnectingTimeout=!0)};if(r=function(n,t,i){return new r.fn.init(n,t,i)},r._={defaultContentType:"application/x-www-form-urlencoded; charset=UTF-8",ieVersion:function(){var i,n;return t.navigator.appName==="Microsoft Internet Explorer"&&(n=/MSIE ([0-9]+\.[0-9]+)/.exec(t.navigator.userAgent),n&&(i=t.parseFloat(n[1]))),i}(),error:function(n,t,i){var r=new Error(n);return r.source=t,typeof i!="undefined"&&(r.context=i),r},transportError:function(n,t,r,u){var f=this.error(n,r,u);return f.transport=t?t.name:i,f},format:function(){for(var t=arguments[0],n=0;n<arguments.length-1;n++)t=t.replace("{"+n+"}",arguments[n+1]);return t},firefoxMajorVersion:function(n){var t=n.match(/Firefox\/(\d+)/);return!t||!t.length||t.length<2?0:parseInt(t[1],10)},configurePingInterval:function(i){var f=i._.config,e=function(t){n(i).triggerHandler(u.onError,[t])};f&&!i._.pingIntervalId&&f.pingInterval&&(i._.pingIntervalId=t.setInterval(function(){r.transports._logic.pingServer(i).fail(e)},f.pingInterval))}},r.events=u,r.resources=f,r.ajaxDefaults={processData:!0,timeout:null,async:!0,global:!1,cache:!1},r.changeState=s,r.isDisconnecting=b,r.connectionState={connecting:0,connected:1,reconnecting:2,disconnected:4},r.hub={start:function(){throw new Error("SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/js'><\/script>.");}},typeof e.on=="function")e.on("load",function(){o=!0});else e.load(function(){o=!0});r.fn=r.prototype={init:function(t,i,r){var f=n(this);this.url=t;this.qs=i;this.lastError=null;this._={keepAliveData:{},connectingMessageBuffer:new p(this,function(n){f.triggerHandler(u.onReceived,[n])}),lastMessageAt:(new Date).getTime(),lastActiveAt:(new Date).getTime(),beatInterval:5e3,beatHandle:null,totalTransportConnectTimeout:0};typeof r=="boolean"&&(this.logging=r)},_parseResponse:function(n){var t=this;return n?typeof n=="string"?t.json.parse(n):n:n},_originalJson:t.JSON,json:t.JSON,isCrossDomain:function(i,r){var u;return(i=n.trim(i),r=r||t.location,i.indexOf("http")!==0)?!1:(u=t.document.createElement("a"),u.href=i,u.protocol+h(u.protocol,u.host)!==r.protocol+h(r.protocol,r.host))},ajaxDataType:"text",contentType:"application/json; charset=UTF-8",logging:!1,state:r.connectionState.disconnected,clientProtocol:"1.5",reconnectDelay:2e3,transportConnectTimeout:0,disconnectTimeout:3e4,reconnectWindow:3e4,keepAliveWarnAt:2/3,start:function(i,h){var c=this,y={pingInterval:3e5,waitForPageLoad:!0,transport:"auto",jsonp:!1},d,p=c._deferral||n.Deferred(),w=t.document.createElement("a"),b,g;if(c.lastError=null,c._deferral=p,!c.json)throw new Error("SignalR: No JSON parser found. Please ensure json2.js is referenced before the SignalR.js file if you need to support clients without native JSON parsing support, e.g. IE<8.");if(n.type(i)==="function"?h=i:n.type(i)==="object"&&(n.extend(y,i),n.type(y.callback)==="function"&&(h=y.callback)),y.transport=v(y.transport,c),!y.transport)throw new Error("SignalR: Invalid transport(s) specified, aborting start.");return(c._.config=y,!o&&y.waitForPageLoad===!0)?(c._.deferredStartHandler=function(){c.start(i,h)},e.bind("load",c._.deferredStartHandler),p.promise()):c.state===r.connectionState.connecting?p.promise():s(c,r.connectionState.disconnected,r.connectionState.connecting)===!1?(p.resolve(c),p.promise()):(k(c),w.href=c.url,w.protocol&&w.protocol!==":"?(c.protocol=w.protocol,c.host=w.host):(c.protocol=t.document.location.protocol,c.host=w.host||t.document.location.host),c.baseUrl=c.protocol+"//"+c.host,c.wsProtocol=c.protocol==="https:"?"wss://":"ws://",y.transport==="auto"&&y.jsonp===!0&&(y.transport="longPolling"),c.url.indexOf("//")===0&&(c.url=t.location.protocol+c.url,c.log("Protocol relative URL detected, normalizing it to '"+c.url+"'.")),this.isCrossDomain(c.url)&&(c.log("Auto detected cross domain url."),y.transport==="auto"&&(y.transport=["webSockets","serverSentEvents","longPolling"]),typeof y.withCredentials=="undefined"&&(y.withCredentials=!0),y.jsonp||(y.jsonp=!n.support.cors,y.jsonp&&c.log("Using jsonp because this browser doesn't support CORS.")),c.contentType=r._.defaultContentType),c.withCredentials=y.withCredentials,c.ajaxDataType=y.jsonp?"jsonp":"text",n(c).bind(u.onStart,function(){n.type(h)==="function"&&h.call(c);p.resolve(c)}),c._.initHandler=r.transports._logic.initHandler(c),d=function(i,o){var l=r._.error(f.noTransportOnInit);if(o=o||0,o>=i.length){o===0?c.log("No transports supported by the server were selected."):o===1?c.log("No fallback transports were selected."):c.log("Fallback transports exhausted.");n(c).triggerHandler(u.onError,[l]);p.reject(l);c.stop();return}if(c.state!==r.connectionState.disconnected){var y=i[o],h=r.transports[y],v=function(){d(i,o+1)};c.transport=h;try{c._.initHandler.start(h,function(){var i=r._.firefoxMajorVersion(t.navigator.userAgent)>=11,f=!!c.withCredentials&&i;c.log("The start request succeeded. Transitioning to the connected state.");a(c)&&r.transports._logic.monitorKeepAlive(c);r.transports._logic.startHeartbeat(c);r._.configurePingInterval(c);s(c,r.connectionState.connecting,r.connectionState.connected)||c.log("WARNING! The connection was not in the connecting state.");c._.connectingMessageBuffer.drain();n(c).triggerHandler(u.onStart);e.bind("unload",function(){c.log("Window unloading, stopping the connection.");c.stop(f)});i&&e.bind("beforeunload",function(){t.setTimeout(function(){c.stop(f)},0)})},v)}catch(w){c.log(h.name+" transport threw '"+w.message+"' when attempting to start.");v()}}},b=c.url+"/negotiate",g=function(t,i){var e=r._.error(f.errorOnNegotiate,t,i._.negotiateRequest);n(i).triggerHandler(u.onError,e);p.reject(e);i.stop()},n(c).triggerHandler(u.onStarting),b=r.transports._logic.prepareQueryString(c,b),c.log("Negotiating with '"+b+"'."),c._.negotiateRequest=r.transports._logic.ajax(c,{url:b,error:function(n,t){t!==l?g(n,c):p.reject(r._.error(f.stoppedWhileNegotiating,null,c._.negotiateRequest))},success:function(t){var i,e,h,o=[],s=[];try{i=c._parseResponse(t)}catch(l){g(r._.error(f.errorParsingNegotiateResponse,l),c);return}if(e=c._.keepAliveData,c.appRelativeUrl=i.Url,c.id=i.ConnectionId,c.token=i.ConnectionToken,c.webSocketServerUrl=i.WebSocketServerUrl,c._.pollTimeout=i.ConnectionTimeout*1e3+1e4,c.disconnectTimeout=i.DisconnectTimeout*1e3,c._.totalTransportConnectTimeout=c.transportConnectTimeout+i.TransportConnectTimeout*1e3,i.KeepAliveTimeout?(e.activated=!0,e.timeout=i.KeepAliveTimeout*1e3,e.timeoutWarning=e.timeout*c.keepAliveWarnAt,c._.beatInterval=(e.timeout-e.timeoutWarning)/3):e.activated=!1,c.reconnectWindow=c.disconnectTimeout+(e.timeout||0),!i.ProtocolVersion||i.ProtocolVersion!==c.clientProtocol){h=r._.error(r._.format(f.protocolIncompatible,c.clientProtocol,i.ProtocolVersion));n(c).triggerHandler(u.onError,[h]);p.reject(h);return}n.each(r.transports,function(n){if(n.indexOf("_")===0||n==="webSockets"&&!i.TryWebSockets)return!0;s.push(n)});n.isArray(y.transport)?n.each(y.transport,function(t,i){n.inArray(i,s)>=0&&o.push(i)}):y.transport==="auto"?o=s:n.inArray(y.transport,s)>=0&&o.push(y.transport);d(o)}}),p.promise())},starting:function(t){var i=this;return n(i).bind(u.onStarting,function(){t.call(i)}),i},send:function(n){var t=this;if(t.state===r.connectionState.disconnected)throw new Error("SignalR: Connection must be started before data can be sent. Call .start() before .send()");if(t.state===r.connectionState.connecting)throw new Error("SignalR: Connection has not been fully initialized. Use .start().done() or .start().fail() to run logic after the connection has started.");return t.transport.send(t,n),t},received:function(t){var i=this;return n(i).bind(u.onReceived,function(n,r){t.call(i,r)}),i},stateChanged:function(t){var i=this;return n(i).bind(u.onStateChanged,function(n,r){t.call(i,r)}),i},error:function(t){var i=this;return n(i).bind(u.onError,function(n,r,u){i.lastError=r;t.call(i,r,u)}),i},disconnected:function(t){var i=this;return n(i).bind(u.onDisconnect,function(){t.call(i)}),i},connectionSlow:function(t){var i=this;return n(i).bind(u.onConnectionSlow,function(){t.call(i)}),i},reconnecting:function(t){var i=this;return n(i).bind(u.onReconnecting,function(){t.call(i)}),i},reconnected:function(t){var i=this;return n(i).bind(u.onReconnect,function(){t.call(i)}),i},stop:function(i,h){var c=this,v=c._deferral;if(c._.deferredStartHandler&&e.unbind("load",c._.deferredStartHandler),delete c._.config,delete c._.deferredStartHandler,!o&&(!c._.config||c._.config.waitForPageLoad===!0)){c.log("Stopping connection prior to negotiate.");v&&v.reject(r._.error(f.stoppedWhileLoading));return}if(c.state!==r.connectionState.disconnected)return c.log("Stopping connection."),t.clearTimeout(c._.beatHandle),t.clearInterval(c._.pingIntervalId),c.transport&&(c.transport.stop(c),h!==!1&&c.transport.abort(c,i),a(c)&&r.transports._logic.stopMonitoringKeepAlive(c),c.transport=null),c._.negotiateRequest&&(c._.negotiateRequest.abort(l),delete c._.negotiateRequest),c._.initHandler&&c._.initHandler.stop(),delete c._deferral,delete c.messageId,delete c.groupsToken,delete c.id,delete c._.pingIntervalId,delete c._.lastMessageAt,delete c._.lastActiveAt,c._.connectingMessageBuffer.clear(),s(c,c.state,r.connectionState.disconnected),n(c).triggerHandler(u.onDisconnect),c},log:function(n){w(n,this.logging)}};r.fn.init.prototype=r.fn;r.noConflict=function(){return n.connection===r&&(n.connection=c),r};n.connection&&(c=n.connection);n.connection=n.signalR=r}(window.jQuery,window),function(n,t,i){function o(n){n._.keepAliveData.monitoring&&c(n);u.markActive(n)&&(n._.beatHandle=t.setTimeout(function(){o(n)},n._.beatInterval))}function c(t){var i=t._.keepAliveData,u;t.state===r.connectionState.connected&&(u=(new Date).getTime()-t._.lastMessageAt,u>=i.timeout?(t.log("Keep alive timed out.  Notifying transport that connection has been lost."),t.transport.lostConnection(t)):u>=i.timeoutWarning?i.userNotified||(t.log("Keep alive has been missed, connection may be dead/slow."),n(t).triggerHandler(f.onConnectionSlow),i.userNotified=!0):i.userNotified=!1)}function e(n,t){var i=n.url+t;return n.transport&&(i+="?transport="+n.transport.name),u.prepareQueryString(n,i)}function s(n){this.connection=n;this.startRequested=!1;this.startCompleted=!1;this.connectionStopped=!1}var r=n.signalR,f=n.signalR.events,l=n.signalR.changeState,h="__Start Aborted__",u;r.transports={};s.prototype={start:function(n,r,u){var f=this,e=f.connection,o=!1;if(f.startRequested||f.connectionStopped){e.log("WARNING! "+n.name+" transport cannot be started. Initialization ongoing or completed.");return}e.log(n.name+" transport starting.");n.start(e,function(){o||f.initReceived(n,r)},function(t){return o||(o=!0,f.transportFailed(n,t,u)),!f.startCompleted||f.connectionStopped});f.transportTimeoutHandle=t.setTimeout(function(){o||(o=!0,e.log(n.name+" transport timed out when trying to connect."),f.transportFailed(n,i,u))},e._.totalTransportConnectTimeout)},stop:function(){this.connectionStopped=!0;t.clearTimeout(this.transportTimeoutHandle);r.transports._logic.tryAbortStartRequest(this.connection)},initReceived:function(n,i){var u=this,f=u.connection;if(u.startRequested){f.log("WARNING! The client received multiple init messages.");return}u.connectionStopped||(u.startRequested=!0,t.clearTimeout(u.transportTimeoutHandle),f.log(n.name+" transport connected. Initiating start request."),r.transports._logic.ajaxStart(f,function(){u.startCompleted=!0;i()}))},transportFailed:function(i,u,e){var o=this.connection,h=o._deferral,s;this.connectionStopped||(t.clearTimeout(this.transportTimeoutHandle),this.startRequested?this.startCompleted||(s=r._.error(r.resources.errorDuringStartRequest,u),o.log(i.name+" transport failed during the start request. Stopping the connection."),n(o).triggerHandler(f.onError,[s]),h&&h.reject(s),o.stop()):(i.stop(o),o.log(i.name+" transport failed to connect. Attempting to fall back."),e()))}};u=r.transports._logic={ajax:function(t,i){return n.ajax(n.extend(!0,{},n.signalR.ajaxDefaults,{type:"GET",data:{},xhrFields:{withCredentials:t.withCredentials},contentType:t.contentType,dataType:t.ajaxDataType},i))},pingServer:function(t){var e,f,i=n.Deferred();return t.transport?(e=t.url+"/ping",e=u.addQs(e,t.qs),f=u.ajax(t,{url:e,success:function(n){var u;try{u=t._parseResponse(n)}catch(e){i.reject(r._.transportError(r.resources.pingServerFailedParse,t.transport,e,f));t.stop();return}u.Response==="pong"?i.resolve():i.reject(r._.transportError(r._.format(r.resources.pingServerFailedInvalidResponse,n),t.transport,null,f))},error:function(n){n.status===401||n.status===403?(i.reject(r._.transportError(r._.format(r.resources.pingServerFailedStatusCode,n.status),t.transport,n,f)),t.stop()):i.reject(r._.transportError(r.resources.pingServerFailed,t.transport,n,f))}})):i.reject(r._.transportError(r.resources.noConnectionTransport,t.transport)),i.promise()},prepareQueryString:function(n,i){var r;return r=u.addQs(i,"clientProtocol="+n.clientProtocol),r=u.addQs(r,n.qs),n.token&&(r+="&connectionToken="+t.encodeURIComponent(n.token)),n.data&&(r+="&connectionData="+t.encodeURIComponent(n.data)),r},addQs:function(t,i){var r=t.indexOf("?")!==-1?"&":"?",u;if(!i)return t;if(typeof i=="object")return t+r+n.param(i);if(typeof i=="string")return u=i.charAt(0),(u==="?"||u==="&")&&(r=""),t+r+i;throw new Error("Query string property must be either a string or object.");},getUrl:function(n,i,r,f,e){var h=i==="webSockets"?"":n.baseUrl,o=h+n.appRelativeUrl,s="transport="+i;return!e&&n.groupsToken&&(s+="&groupsToken="+t.encodeURIComponent(n.groupsToken)),r?(o+=f?"/poll":"/reconnect",!e&&n.messageId&&(s+="&messageId="+t.encodeURIComponent(n.messageId))):o+="/connect",o+="?"+s,o=u.prepareQueryString(n,o),e||(o+="&tid="+Math.floor(Math.random()*11)),o},maximizePersistentResponse:function(n){return{MessageId:n.C,Messages:n.M,Initialized:typeof n.S!="undefined"?!0:!1,ShouldReconnect:typeof n.T!="undefined"?!0:!1,LongPollDelay:n.L,GroupsToken:n.G}},updateGroups:function(n,t){t&&(n.groupsToken=t)},stringifySend:function(n,t){return typeof t=="string"||typeof t=="undefined"||t===null?t:n.json.stringify(t)},ajaxSend:function(t,i){var h=u.stringifySend(t,i),c=e(t,"/send"),o,s=function(t,u){n(u).triggerHandler(f.onError,[r._.transportError(r.resources.sendFailed,u.transport,t,o),i])};return o=u.ajax(t,{url:c,type:t.ajaxDataType==="jsonp"?"GET":"POST",contentType:r._.defaultContentType,data:{data:h},success:function(n){var i;if(n){try{i=t._parseResponse(n)}catch(r){s(r,t);t.stop();return}u.triggerReceived(t,i)}},error:function(n,i){i!=="abort"&&i!=="parsererror"&&s(n,t)}})},ajaxAbort:function(n,t){if(typeof n.transport!="undefined"){t=typeof t=="undefined"?!0:t;var i=e(n,"/abort");u.ajax(n,{url:i,async:t,timeout:1e3,type:"POST"});n.log("Fired ajax abort async = "+t+".")}},ajaxStart:function(t,i){var s=function(n){var i=t._deferral;i&&i.reject(n)},o=function(i){t.log("The start request failed. Stopping the connection.");n(t).triggerHandler(f.onError,[i]);s(i);t.stop()};t._.startRequest=u.ajax(t,{url:e(t,"/start"),success:function(n,u,f){var e;try{e=t._parseResponse(n)}catch(s){o(r._.error(r._.format(r.resources.errorParsingStartResponse,n),s,f));return}e.Response==="started"?i():o(r._.error(r._.format(r.resources.invalidStartResponse,n),null,f))},error:function(n,i,u){i!==h?o(r._.error(r.resources.errorDuringStartRequest,u,n)):(t.log("The start request aborted because connection.stop() was called."),s(r._.error(r.resources.stoppedDuringStartRequest,null,n)))}})},tryAbortStartRequest:function(n){n._.startRequest&&(n._.startRequest.abort(h),delete n._.startRequest)},tryInitialize:function(n,t,i){t.Initialized&&i?i():t.Initialized&&n.log("WARNING! The client received an init message after reconnecting.")},triggerReceived:function(t,i){t._.connectingMessageBuffer.tryBuffer(i)||n(t).triggerHandler(f.onReceived,[i])},processMessages:function(t,i,r){var f;u.markLastMessage(t);i&&(f=u.maximizePersistentResponse(i),u.updateGroups(t,f.GroupsToken),f.MessageId&&(t.messageId=f.MessageId),f.Messages&&(n.each(f.Messages,function(n,i){u.triggerReceived(t,i)}),u.tryInitialize(t,f,r)))},monitorKeepAlive:function(t){var i=t._.keepAliveData;i.monitoring?t.log("Tried to monitor keep alive but it's already being monitored."):(i.monitoring=!0,u.markLastMessage(t),t._.keepAliveData.reconnectKeepAliveUpdate=function(){u.markLastMessage(t)},n(t).bind(f.onReconnect,t._.keepAliveData.reconnectKeepAliveUpdate),t.log("Now monitoring keep alive with a warning timeout of "+i.timeoutWarning+", keep alive timeout of "+i.timeout+" and disconnecting timeout of "+t.disconnectTimeout))},stopMonitoringKeepAlive:function(t){var i=t._.keepAliveData;i.monitoring&&(i.monitoring=!1,n(t).unbind(f.onReconnect,t._.keepAliveData.reconnectKeepAliveUpdate),t._.keepAliveData={},t.log("Stopping the monitoring of the keep alive."))},startHeartbeat:function(n){n._.lastActiveAt=(new Date).getTime();o(n)},markLastMessage:function(n){n._.lastMessageAt=(new Date).getTime()},markActive:function(n){return u.verifyLastActive(n)?(n._.lastActiveAt=(new Date).getTime(),!0):!1},isConnectedOrReconnecting:function(n){return n.state===r.connectionState.connected||n.state===r.connectionState.reconnecting},ensureReconnectingState:function(t){return l(t,r.connectionState.connected,r.connectionState.reconnecting)===!0&&n(t).triggerHandler(f.onReconnecting),t.state===r.connectionState.reconnecting},clearReconnectTimeout:function(n){n&&n._.reconnectTimeout&&(t.clearTimeout(n._.reconnectTimeout),delete n._.reconnectTimeout)},verifyLastActive:function(t){if((new Date).getTime()-t._.lastActiveAt>=t.reconnectWindow){var i=r._.format(r.resources.reconnectWindowTimeout,new Date(t._.lastActiveAt),t.reconnectWindow);return t.log(i),n(t).triggerHandler(f.onError,[r._.error(i,"TimeoutException")]),t.stop(!1,!1),!1}return!0},reconnect:function(n,i){var f=r.transports[i];if(u.isConnectedOrReconnecting(n)&&!n._.reconnectTimeout){if(!u.verifyLastActive(n))return;n._.reconnectTimeout=t.setTimeout(function(){u.verifyLastActive(n)&&(f.stop(n),u.ensureReconnectingState(n)&&(n.log(i+" reconnecting."),f.start(n)))},n.reconnectDelay)}},handleParseFailure:function(t,i,u,e,o){var s=r._.transportError(r._.format(r.resources.parseFailed,i),t.transport,u,o);e&&e(s)?t.log("Failed to parse server response while attempting to connect."):(n(t).triggerHandler(f.onError,[s]),t.stop())},initHandler:function(n){return new s(n)},foreverFrame:{count:0,connections:{}}}}(window.jQuery,window),function(n,t){var r=n.signalR,u=n.signalR.events,f=n.signalR.changeState,i=r.transports._logic;r.transports.webSockets={name:"webSockets",supportsKeepAlive:function(){return!0},send:function(t,f){var e=i.stringifySend(t,f);try{t.socket.send(e)}catch(o){n(t).triggerHandler(u.onError,[r._.transportError(r.resources.webSocketsInvalidState,t.transport,o,t.socket),f])}},start:function(e,o,s){var h,c=!1,l=this,a=!o,v=n(e);if(!t.WebSocket){s();return}e.socket||(h=e.webSocketServerUrl?e.webSocketServerUrl:e.wsProtocol+e.host,h+=i.getUrl(e,this.name,a),e.log("Connecting to websocket endpoint '"+h+"'."),e.socket=new t.WebSocket(h),e.socket.onopen=function(){c=!0;e.log("Websocket opened.");i.clearReconnectTimeout(e);f(e,r.connectionState.reconnecting,r.connectionState.connected)===!0&&v.triggerHandler(u.onReconnect)},e.socket.onclose=function(t){var i;this===e.socket&&(c&&typeof t.wasClean!="undefined"&&t.wasClean===!1?(i=r._.transportError(r.resources.webSocketClosed,e.transport,t),e.log("Unclean disconnect from websocket: "+(t.reason||"[no reason given]."))):e.log("Websocket closed."),s&&s(i)||(i&&n(e).triggerHandler(u.onError,[i]),l.reconnect(e)))},e.socket.onmessage=function(t){var r;try{r=e._parseResponse(t.data)}catch(u){i.handleParseFailure(e,t.data,u,s,t);return}r&&(n.isEmptyObject(r)||r.M?i.processMessages(e,r,o):i.triggerReceived(e,r))})},reconnect:function(n){i.reconnect(n,this.name)},lostConnection:function(n){this.reconnect(n)},stop:function(n){i.clearReconnectTimeout(n);n.socket&&(n.log("Closing the Websocket."),n.socket.close(),n.socket=null)},abort:function(n,t){i.ajaxAbort(n,t)}}}(window.jQuery,window),function(n,t){var i=n.signalR,u=n.signalR.events,e=n.signalR.changeState,r=i.transports._logic,f=function(n){t.clearTimeout(n._.reconnectAttemptTimeoutHandle);delete n._.reconnectAttemptTimeoutHandle};i.transports.serverSentEvents={name:"serverSentEvents",supportsKeepAlive:function(){return!0},timeOut:3e3,start:function(o,s,h){var c=this,l=!1,a=n(o),v=!s,y;if(o.eventSource&&(o.log("The connection already has an event source. Stopping it."),o.stop()),!t.EventSource){h&&(o.log("This browser doesn't support SSE."),h());return}y=r.getUrl(o,this.name,v);try{o.log("Attempting to connect to SSE endpoint '"+y+"'.");o.eventSource=new t.EventSource(y,{withCredentials:o.withCredentials})}catch(p){o.log("EventSource failed trying to connect with error "+p.Message+".");h?h():(a.triggerHandler(u.onError,[i._.transportError(i.resources.eventSourceFailedToConnect,o.transport,p)]),v&&c.reconnect(o));return}v&&(o._.reconnectAttemptTimeoutHandle=t.setTimeout(function(){l===!1&&o.eventSource.readyState!==t.EventSource.OPEN&&c.reconnect(o)},c.timeOut));o.eventSource.addEventListener("open",function(){o.log("EventSource connected.");f(o);r.clearReconnectTimeout(o);l===!1&&(l=!0,e(o,i.connectionState.reconnecting,i.connectionState.connected)===!0&&a.triggerHandler(u.onReconnect))},!1);o.eventSource.addEventListener("message",function(n){var t;if(n.data!=="initialized"){try{t=o._parseResponse(n.data)}catch(i){r.handleParseFailure(o,n.data,i,h,n);return}r.processMessages(o,t,s)}},!1);o.eventSource.addEventListener("error",function(n){var r=i._.transportError(i.resources.eventSourceError,o.transport,n);this===o.eventSource&&(h&&h(r)||(o.log("EventSource readyState: "+o.eventSource.readyState+"."),n.eventPhase===t.EventSource.CLOSED?(o.log("EventSource reconnecting due to the server connection ending."),c.reconnect(o)):(o.log("EventSource error."),a.triggerHandler(u.onError,[r]))))},!1)},reconnect:function(n){r.reconnect(n,this.name)},lostConnection:function(n){this.reconnect(n)},send:function(n,t){r.ajaxSend(n,t)},stop:function(n){f(n);r.clearReconnectTimeout(n);n&&n.eventSource&&(n.log("EventSource calling close()."),n.eventSource.close(),n.eventSource=null,delete n.eventSource)},abort:function(n,t){r.ajaxAbort(n,t)}}}(window.jQuery,window),function(n,t){var r=n.signalR,e=n.signalR.events,o=n.signalR.changeState,i=r.transports._logic,u=function(){var n=t.document.createElement("iframe");return n.setAttribute("style","position:absolute;top:0;left:0;width:0;height:0;visibility:hidden;"),n},f=function(){var i=null,f=1e3,n=0;return{prevent:function(){r._.ieVersion<=8&&(n===0&&(i=t.setInterval(function(){var n=u();t.document.body.appendChild(n);t.document.body.removeChild(n);n=null},f)),n++)},cancel:function(){n===1&&t.clearInterval(i);n>0&&n--}}}();r.transports.foreverFrame={name:"foreverFrame",supportsKeepAlive:function(){return!0},iframeClearThreshold:50,start:function(n,r,e){var l=this,s=i.foreverFrame.count+=1,h,o=u(),c=function(){n.log("Forever frame iframe finished loading and is no longer receiving messages.");e&&e()||l.reconnect(n)};if(t.EventSource){e&&(n.log("Forever Frame is not supported by SignalR on browsers with SSE support."),e());return}o.setAttribute("data-signalr-connection-id",n.id);f.prevent();h=i.getUrl(n,this.name);h+="&frameId="+s;t.document.documentElement.appendChild(o);n.log("Binding to iframe's load event.");o.addEventListener?o.addEventListener("load",c,!1):o.attachEvent&&o.attachEvent("onload",c);o.src=h;i.foreverFrame.connections[s]=n;n.frame=o;n.frameId=s;r&&(n.onSuccess=function(){n.log("Iframe transport started.");r()})},reconnect:function(n){var r=this;i.isConnectedOrReconnecting(n)&&i.verifyLastActive(n)&&t.setTimeout(function(){if(i.verifyLastActive(n)&&n.frame&&i.ensureReconnectingState(n)){var u=n.frame,t=i.getUrl(n,r.name,!0)+"&frameId="+n.frameId;n.log("Updating iframe src to '"+t+"'.");u.src=t}},n.reconnectDelay)},lostConnection:function(n){this.reconnect(n)},send:function(n,t){i.ajaxSend(n,t)},receive:function(t,u){var f,e,o;if(t.json!==t._originalJson&&(u=t._originalJson.stringify(u)),o=t._parseResponse(u),i.processMessages(t,o,t.onSuccess),t.state===n.signalR.connectionState.connected&&(t.frameMessageCount=(t.frameMessageCount||0)+1,t.frameMessageCount>r.transports.foreverFrame.iframeClearThreshold&&(t.frameMessageCount=0,f=t.frame.contentWindow||t.frame.contentDocument,f&&f.document&&f.document.body)))for(e=f.document.body;e.firstChild;)e.removeChild(e.firstChild)},stop:function(n){var r=null;if(f.cancel(),n.frame){if(n.frame.stop)n.frame.stop();else try{r=n.frame.contentWindow||n.frame.contentDocument;r.document&&r.document.execCommand&&r.document.execCommand("Stop")}catch(u){n.log("Error occurred when stopping foreverFrame transport. Message = "+u.message+".")}n.frame.parentNode===t.document.body&&t.document.body.removeChild(n.frame);delete i.foreverFrame.connections[n.frameId];n.frame=null;n.frameId=null;delete n.frame;delete n.frameId;delete n.onSuccess;delete n.frameMessageCount;n.log("Stopping forever frame.")}},abort:function(n,t){i.ajaxAbort(n,t)},getConnection:function(n){return i.foreverFrame.connections[n]},started:function(t){o(t,r.connectionState.reconnecting,r.connectionState.connected)===!0&&n(t).triggerHandler(e.onReconnect)}}}(window.jQuery,window),function(n,t){var r=n.signalR,u=n.signalR.events,e=n.signalR.changeState,f=n.signalR.isDisconnecting,i=r.transports._logic;r.transports.longPolling={name:"longPolling",supportsKeepAlive:function(){return!1},reconnectDelay:3e3,start:function(o,s,h){var a=this,v=function(){v=n.noop;o.log("LongPolling connected.");s?s():o.log("WARNING! The client received an init message after reconnecting.")},y=function(n){return h(n)?(o.log("LongPolling failed to connect."),!0):!1},c=o._,l=0,p=function(i){t.clearTimeout(c.reconnectTimeoutId);c.reconnectTimeoutId=null;e(i,r.connectionState.reconnecting,r.connectionState.connected)===!0&&(i.log("Raising the reconnect event"),n(i).triggerHandler(u.onReconnect))},w=36e5;o.pollXhr&&(o.log("Polling xhr requests already exists, aborting."),o.stop());o.messageId=null;c.reconnectTimeoutId=null;c.pollTimeoutId=t.setTimeout(function(){(function e(s,h){var g=s.messageId,nt=g===null,k=!nt,tt=!h,d=i.getUrl(s,a.name,k,tt,!0),b={};(s.messageId&&(b.messageId=s.messageId),s.groupsToken&&(b.groupsToken=s.groupsToken),f(s)!==!0)&&(o.log("Opening long polling request to '"+d+"'."),s.pollXhr=i.ajax(o,{xhrFields:{onprogress:function(){i.markLastMessage(o)}},url:d,type:"POST",contentType:r._.defaultContentType,data:b,timeout:o._.pollTimeout,success:function(r){var h,w=0,u,a;o.log("Long poll complete.");l=0;try{h=o._parseResponse(r)}catch(b){i.handleParseFailure(s,r,b,y,s.pollXhr);return}(c.reconnectTimeoutId!==null&&p(s),h&&(u=i.maximizePersistentResponse(h)),i.processMessages(s,h,v),u&&n.type(u.LongPollDelay)==="number"&&(w=u.LongPollDelay),f(s)!==!0)&&(a=u&&u.ShouldReconnect,!a||i.ensureReconnectingState(s))&&(w>0?c.pollTimeoutId=t.setTimeout(function(){e(s,a)},w):e(s,a))},error:function(f,h){var v=r._.transportError(r.resources.longPollFailed,o.transport,f,s.pollXhr);if(t.clearTimeout(c.reconnectTimeoutId),c.reconnectTimeoutId=null,h==="abort"){o.log("Aborted xhr request.");return}if(!y(v)){if(l++,o.state!==r.connectionState.reconnecting&&(o.log("An error occurred using longPolling. Status = "+h+".  Response = "+f.responseText+"."),n(s).triggerHandler(u.onError,[v])),(o.state===r.connectionState.connected||o.state===r.connectionState.reconnecting)&&!i.verifyLastActive(o))return;if(!i.ensureReconnectingState(s))return;c.pollTimeoutId=t.setTimeout(function(){e(s,!0)},a.reconnectDelay)}}}),k&&h===!0&&(c.reconnectTimeoutId=t.setTimeout(function(){p(s)},Math.min(1e3*(Math.pow(2,l)-1),w))))})(o)},250)},lostConnection:function(n){n.pollXhr&&n.pollXhr.abort("lostConnection")},send:function(n,t){i.ajaxSend(n,t)},stop:function(n){t.clearTimeout(n._.pollTimeoutId);t.clearTimeout(n._.reconnectTimeoutId);delete n._.pollTimeoutId;delete n._.reconnectTimeoutId;n.pollXhr&&(n.pollXhr.abort(),n.pollXhr=null,delete n.pollXhr)},abort:function(n,t){i.ajaxAbort(n,t)}}}(window.jQuery,window),function(n){function r(n){return n+s}function e(n,t,i){for(var f=n.length,u=[],r=0;r<f;r+=1)n.hasOwnProperty(r)&&(u[r]=t.call(i,n[r],r,n));return u}function o(t){return n.isFunction(t)?null:n.type(t)==="undefined"?null:t}function u(n){for(var t in n)if(n.hasOwnProperty(t))return!0;return!1}function f(n,t){var i=n._.invocationCallbacks,r,f;u(i)&&n.log("Clearing hub invocation callbacks with error: "+t+".");n._.invocationCallbackId=0;delete n._.invocationCallbacks;n._.invocationCallbacks={};for(f in i)r=i[f],r.method.call(r.scope,{E:t})}function i(n,t){return new i.fn.init(n,t)}function t(i,r){var u={qs:null,logging:!1,useDefaultPath:!0};return n.extend(u,r),(!i||u.useDefaultPath)&&(i=(i||"")+"/signalr"),new t.fn.init(i,u)}var s=".hubProxy",h=n.signalR;i.fn=i.prototype={init:function(n,t){this.state={};this.connection=n;this.hubName=t;this._={callbackMap:{}}},constructor:i,hasSubscriptions:function(){return u(this._.callbackMap)},on:function(t,i){var u=this,f=u._.callbackMap;return t=t.toLowerCase(),f[t]||(f[t]={}),f[t][i]=function(n,t){i.apply(u,t)},n(u).bind(r(t),f[t][i]),u},off:function(t,i){var e=this,o=e._.callbackMap,f;return t=t.toLowerCase(),f=o[t],f&&(f[i]?(n(e).unbind(r(t),f[i]),delete f[i],u(f)||delete o[t]):i||(n(e).unbind(r(t)),delete o[t])),e},invoke:function(t){var i=this,r=i.connection,s=n.makeArray(arguments).slice(1),c=e(s,o),f={H:i.hubName,M:t,A:c,I:r._.invocationCallbackId},u=n.Deferred(),l=function(f){var e=i._maximizeHubResponse(f),s,o;n.extend(i.state,e.State);e.Progress?u.notifyWith?u.notifyWith(i,[e.Progress.Data]):r._.progressjQueryVersionLogged||(r.log("A hub method invocation progress update was received but the version of jQuery in use ("+n.prototype.jquery+") does not support progress updates. Upgrade to jQuery 1.7+ to receive progress notifications."),r._.progressjQueryVersionLogged=!0):e.Error?(e.StackTrace&&r.log(e.Error+"\n"+e.StackTrace+"."),s=e.IsHubException?"HubException":"Exception",o=h._.error(e.Error,s),o.data=e.ErrorData,r.log(i.hubName+"."+t+" failed to execute. Error: "+o.message),u.rejectWith(i,[o])):(r.log("Invoked "+i.hubName+"."+t),u.resolveWith(i,[e.Result]))};return r._.invocationCallbacks[r._.invocationCallbackId.toString()]={scope:i,method:l},r._.invocationCallbackId+=1,n.isEmptyObject(i.state)||(f.S=i.state),r.log("Invoking "+i.hubName+"."+t),r.send(f),u.promise()},_maximizeHubResponse:function(n){return{State:n.S,Result:n.R,Progress:n.P?{Id:n.P.I,Data:n.P.D}:null,Id:n.I,IsHubException:n.H,Error:n.E,StackTrace:n.T,ErrorData:n.D}}};i.fn.init.prototype=i.fn;t.fn=t.prototype=n.connection();t.fn.init=function(t,i){var e={qs:null,logging:!1,useDefaultPath:!0},u=this;n.extend(e,i);n.signalR.fn.init.call(u,t,e.qs,e.logging);u.proxies={};u._.invocationCallbackId=0;u._.invocationCallbacks={};u.received(function(t){var f,o,e,i,s,h;t&&(typeof t.P!="undefined"?(e=t.P.I.toString(),i=u._.invocationCallbacks[e],i&&i.method.call(i.scope,t)):typeof t.I!="undefined"?(e=t.I.toString(),i=u._.invocationCallbacks[e],i&&(u._.invocationCallbacks[e]=null,delete u._.invocationCallbacks[e],i.method.call(i.scope,t))):(f=this._maximizeClientHubInvocation(t),u.log("Triggering client hub event '"+f.Method+"' on hub '"+f.Hub+"'."),s=f.Hub.toLowerCase(),h=f.Method.toLowerCase(),o=this.proxies[s],n.extend(o.state,f.State),n(o).triggerHandler(r(h),[f.Args])))});u.error(function(n,t){var i,r;t&&(i=t.I,r=u._.invocationCallbacks[i],r&&(u._.invocationCallbacks[i]=null,delete u._.invocationCallbacks[i],r.method.call(r.scope,{E:n})))});u.reconnecting(function(){u.transport&&u.transport.name==="webSockets"&&f(u,"Connection started reconnecting before invocation result was received.")});u.disconnected(function(){f(u,"Connection was disconnected before invocation result was received.")})};t.fn._maximizeClientHubInvocation=function(n){return{Hub:n.H,Method:n.M,Args:n.A,State:n.S}};t.fn._registerSubscribedHubs=function(){var t=this;t._subscribedToHubs||(t._subscribedToHubs=!0,t.starting(function(){var i=[];n.each(t.proxies,function(n){this.hasSubscriptions()&&(i.push({name:n}),t.log("Client subscribed to hub '"+n+"'."))});i.length===0&&t.log("No hubs have been subscribed to.  The client will not receive data from hubs.  To fix, declare at least one client side function prior to connection start for each hub you wish to subscribe to.");t.data=t.json.stringify(i)}))};t.fn.createHubProxy=function(n){n=n.toLowerCase();var t=this.proxies[n];return t||(t=i(this,n),this.proxies[n]=t),this._registerSubscribedHubs(),t};t.fn.init.prototype=t.fn;n.hubConnection=t}(window.jQuery,window),function(n){n.signalR.version="2.2.1"}(window.jQuery),!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):n.moment=t()}(this,function(){"use strict";function t(){return we.apply(null,arguments)}function bo(n){we=n}function tt(n){return n instanceof Array||"[object Array]"===Object.prototype.toString.call(n)}function si(n){return null!=n&&"[object Object]"===Object.prototype.toString.call(n)}function ko(n){var t;for(t in n)return!1;return!0}function p(n){return void 0===n}function dt(n){return"number"==typeof n||"[object Number]"===Object.prototype.toString.call(n)}function bi(n){return n instanceof Date||"[object Date]"===Object.prototype.toString.call(n)}function rf(n,t){for(var r=[],i=0;i<n.length;++i)r.push(t(n[i],i));return r}function l(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function vt(n,t){for(var i in t)l(t,i)&&(n[i]=t[i]);return l(t,"toString")&&(n.toString=t.toString),l(t,"valueOf")&&(n.valueOf=t.valueOf),n}function ut(n,t,i,r){return te(n,t,i,r,!0).utc()}function go(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function u(n){return null==n._pf&&(n._pf=go()),n._pf}function yr(n){if(null==n._isValid){var t=u(n),r=oy.call(t.parsedDateParts,function(n){return null!=n}),i=!isNaN(n._d.getTime())&&t.overflow<0&&!t.empty&&!t.invalidMonth&&!t.invalidWeekday&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&r);if(n._strict&&(i=i&&0===t.charsLeftOver&&0===t.unusedTokens.length&&void 0===t.bigHour),null!=Object.isFrozen&&Object.isFrozen(n))return i;n._isValid=i}return n._isValid}function ki(n){var t=ut(NaN);return null!=n?vt(u(t),n):u(t).userInvalidated=!0,t}function pr(n,t){var i,r,f;if(p(t._isAMomentObject)||(n._isAMomentObject=t._isAMomentObject),p(t._i)||(n._i=t._i),p(t._f)||(n._f=t._f),p(t._l)||(n._l=t._l),p(t._strict)||(n._strict=t._strict),p(t._tzm)||(n._tzm=t._tzm),p(t._isUTC)||(n._isUTC=t._isUTC),p(t._offset)||(n._offset=t._offset),p(t._pf)||(n._pf=u(t)),p(t._locale)||(n._locale=t._locale),lu.length>0)for(i=0;i<lu.length;i++)r=lu[i],f=t[r],p(f)||(n[r]=f);return n}function hi(n){pr(this,n);this._d=new Date(null!=n._d?n._d.getTime():NaN);this.isValid()||(this._d=new Date(NaN));au===!1&&(au=!0,t.updateOffset(this),au=!1)}function yt(n){return n instanceof hi||null!=n&&null!=n._isAMomentObject}function d(n){return n<0?Math.ceil(n)||0:Math.floor(n)}function f(n){var t=+n,i=0;return 0!==t&&isFinite(t)&&(i=d(t)),i}function uf(n,t,i){for(var e=Math.min(n.length,t.length),o=Math.abs(n.length-t.length),u=0,r=0;r<e;r++)(i&&n[r]!==t[r]||!i&&f(n[r])!==f(t[r]))&&u++;return u+o}function ff(n){t.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+n)}function g(n,i){var r=!0;return vt(function(){var u,e,f,o;if(null!=t.deprecationHandler&&t.deprecationHandler(null,n),r){for(e=[],f=0;f<arguments.length;f++){if(u="","object"==typeof arguments[f]){u+="\n["+f+"] ";for(o in arguments[0])u+=o+": "+arguments[0][o]+", ";u=u.slice(0,-2)}else u=arguments[f];e.push(u)}ff(n+"\nArguments: "+Array.prototype.slice.call(e).join("")+"\n"+(new Error).stack);r=!1}return i.apply(this,arguments)},i)}function ef(n,i){null!=t.deprecationHandler&&t.deprecationHandler(n,i);ke[n]||(ff(i),ke[n]=!0)}function ft(n){return n instanceof Function||"[object Function]"===Object.prototype.toString.call(n)}function ns(n){var t,i;for(i in n)t=n[i],ft(t)?this[i]=t:this["_"+i]=t;this._config=n;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function of(n,t){var i,r=vt({},n);for(i in t)l(t,i)&&(si(n[i])&&si(t[i])?(r[i]={},vt(r[i],n[i]),vt(r[i],t[i])):null!=t[i]?r[i]=t[i]:delete r[i]);for(i in n)l(n,i)&&!l(t,i)&&si(n[i])&&(r[i]=vt({},r[i]));return r}function wr(n){null!=n&&this.set(n)}function ts(n,t,i){var r=this._calendar[n]||this._calendar.sameElse;return ft(r)?r.call(t,i):r}function is(n){var t=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return t||!i?t:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,function(n){return n.slice(1)}),this._longDateFormat[n])}function rs(){return this._invalidDate}function us(n){return this._ordinal.replace("%d",n)}function fs(n,t,i,r){var u=this._relativeTime[i];return ft(u)?u(n,t,i,r):u.replace(/%d/i,n)}function es(n,t){var i=this._relativeTime[n>0?"future":"past"];return ft(i)?i(t):i.replace(/%s/i,t)}function w(n,t){var i=n.toLowerCase();vi[i]=vi[i+"s"]=vi[t]=n}function nt(n){if("string"==typeof n)return vi[n]||vi[n.toLowerCase()]}function br(n){var i,t,r={};for(t in n)l(n,t)&&(i=nt(t),i&&(r[i]=n[t]));return r}function b(n,t){no[n]=t}function os(n){var t=[],i;for(i in n)t.push({unit:i,priority:no[i]});return t.sort(function(n,t){return n.priority-t.priority}),t}function ui(n,i){return function(r){return null!=r?(sf(this,n,r),t.updateOffset(this,i),this):di(this,n)}}function di(n,t){return n.isValid()?n._d["get"+(n._isUTC?"UTC":"")+t]():NaN}function sf(n,t,i){n.isValid()&&n._d["set"+(n._isUTC?"UTC":"")+t](i)}function ss(n){return n=nt(n),ft(this[n])?this[n]():this}function hs(n,t){if("object"==typeof n){n=br(n);for(var r=os(n),i=0;i<r.length;i++)this[r[i].unit](n[r[i].unit])}else if(n=nt(n),ft(this[n]))return this[n](t);return this}function ht(n,t,i){var r=""+Math.abs(n),u=t-r.length,f=n>=0;return(f?i?"+":"":"-")+Math.pow(10,Math.max(0,u)).toString().substr(1)+r}function r(n,t,i,r){var u=r;"string"==typeof r&&(u=function(){return this[r]()});n&&(oi[n]=u);t&&(oi[t[0]]=function(){return ht(u.apply(this,arguments),t[1],t[2])});i&&(oi[i]=function(){return this.localeData().ordinal(u.apply(this,arguments),n)})}function cs(n){return n.match(/\[[\s\S]/)?n.replace(/^\[|\]$/g,""):n.replace(/\\/g,"")}function ls(n){for(var t=n.match(to),i=0,r=t.length;i<r;i++)t[i]=oi[t[i]]?oi[t[i]]:cs(t[i]);return function(i){for(var f="",u=0;u<r;u++)f+=ft(t[u])?t[u].call(i,n):t[u];return f}}function kr(n,t){return n.isValid()?(t=hf(t,n.localeData()),vu[t]=vu[t]||ls(t),vu[t](n)):n.localeData().invalidDate()}function hf(n,t){function r(n){return t.longDateFormat(n)||n}var i=5;for(er.lastIndex=0;i>=0&&er.test(n);)n=n.replace(er,r),er.lastIndex=0,i-=1;return n}function i(n,t,i){wu[n]=ft(t)?t:function(n){return n&&i?i:t}}function as(n,t){return l(wu,n)?wu[n](t._strict,t._locale):new RegExp(vs(n))}function vs(n){return gt(n.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(n,t,i,r,u){return t||i||r||u}))}function gt(n){return n.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function s(n,t){var i,r=t;for("string"==typeof n&&(n=[n]),dt(t)&&(r=function(n,i){i[t]=f(n)}),i=0;i<n.length;i++)bu[n[i]]=r}function ci(n,t){s(n,function(n,i,r,u){r._w=r._w||{};t(n,r._w,r,u)})}function ys(n,t,i){null!=t&&l(bu,n)&&bu[n](t,i._a,i,n)}function dr(n,t){return new Date(Date.UTC(n,t+1,0)).getUTCDate()}function ps(n,t){return n?tt(this._months)?this._months[n.month()]:this._months[(this._months.isFormat||eo).test(t)?"format":"standalone"][n.month()]:tt(this._months)?this._months:this._months.standalone}function ws(n,t){return n?tt(this._monthsShort)?this._monthsShort[n.month()]:this._monthsShort[eo.test(t)?"format":"standalone"][n.month()]:tt(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function bs(n,t,i){var u,r,e,f=n.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],u=0;u<12;++u)e=ut([2e3,u]),this._shortMonthsParse[u]=this.monthsShort(e,"").toLocaleLowerCase(),this._longMonthsParse[u]=this.months(e,"").toLocaleLowerCase();return i?"MMM"===t?(r=y.call(this._shortMonthsParse,f),r!==-1?r:null):(r=y.call(this._longMonthsParse,f),r!==-1?r:null):"MMM"===t?(r=y.call(this._shortMonthsParse,f),r!==-1?r:(r=y.call(this._longMonthsParse,f),r!==-1?r:null)):(r=y.call(this._longMonthsParse,f),r!==-1?r:(r=y.call(this._shortMonthsParse,f),r!==-1?r:null))}function ks(n,t,i){var r,u,f;if(this._monthsParseExact)return bs.call(this,n,t,i);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;r<12;r++)if((u=ut([2e3,r]),i&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(u,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(u,"").replace(".","")+"$","i")),i||this._monthsParse[r]||(f="^"+this.months(u,"")+"|^"+this.monthsShort(u,""),this._monthsParse[r]=new RegExp(f.replace(".",""),"i")),i&&"MMMM"===t&&this._longMonthsParse[r].test(n))||i&&"MMM"===t&&this._shortMonthsParse[r].test(n)||!i&&this._monthsParse[r].test(n))return r}function cf(n,t){var i;if(!n.isValid())return n;if("string"==typeof t)if(/^\d+$/.test(t))t=f(t);else if(t=n.localeData().monthsParse(t),!dt(t))return n;return i=Math.min(n.date(),dr(n.year(),t)),n._d["set"+(n._isUTC?"UTC":"")+"Month"](t,i),n}function lf(n){return null!=n?(cf(this,n),t.updateOffset(this,!0),this):di(this,"Month")}function ds(){return dr(this.year(),this.month())}function gs(n){return this._monthsParseExact?(l(this,"_monthsRegex")||af.call(this),n?this._monthsShortStrictRegex:this._monthsShortRegex):(l(this,"_monthsShortRegex")||(this._monthsShortRegex=yy),this._monthsShortStrictRegex&&n?this._monthsShortStrictRegex:this._monthsShortRegex)}function nh(n){return this._monthsParseExact?(l(this,"_monthsRegex")||af.call(this),n?this._monthsStrictRegex:this._monthsRegex):(l(this,"_monthsRegex")||(this._monthsRegex=py),this._monthsStrictRegex&&n?this._monthsStrictRegex:this._monthsRegex)}function af(){function f(n,t){return t.length-n.length}for(var i,r=[],u=[],t=[],n=0;n<12;n++)i=ut([2e3,n]),r.push(this.monthsShort(i,"")),u.push(this.months(i,"")),t.push(this.months(i,"")),t.push(this.monthsShort(i,""));for(r.sort(f),u.sort(f),t.sort(f),n=0;n<12;n++)r[n]=gt(r[n]),u[n]=gt(u[n]);for(n=0;n<24;n++)t[n]=gt(t[n]);this._monthsRegex=new RegExp("^("+t.join("|")+")","i");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp("^("+u.join("|")+")","i");this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function li(n){return vf(n)?366:365}function vf(n){return n%4==0&&n%100!=0||n%400==0}function th(){return vf(this.year())}function ih(n,t,i,r,u,f,e){var o=new Date(n,t,i,r,u,f,e);return n<100&&n>=0&&isFinite(o.getFullYear())&&o.setFullYear(n),o}function gi(n){var t=new Date(Date.UTC.apply(null,arguments));return n<100&&n>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(n),t}function nr(n,t,i){var r=7+t-i,u=(7+gi(n,0,r).getUTCDay()-t)%7;return-u+r-1}function yf(n,t,i,r,u){var f,o,s=(7+i-r)%7,h=nr(n,r,u),e=1+7*(t-1)+s+h;return e<=0?(f=n-1,o=li(f)+e):e>li(n)?(f=n+1,o=e-li(n)):(f=n,o=e),{year:f,dayOfYear:o}}function ai(n,t,i){var f,r,e=nr(n.year(),t,i),u=Math.floor((n.dayOfYear()-e-1)/7)+1;return u<1?(r=n.year()-1,f=u+ni(r,t,i)):u>ni(n.year(),t,i)?(f=u-ni(n.year(),t,i),r=n.year()+1):(r=n.year(),f=u),{week:f,year:r}}function ni(n,t,i){var r=nr(n,t,i),u=nr(n+1,t,i);return(li(n)-r+u)/7}function rh(n){return ai(n,this._week.dow,this._week.doy).week}function uh(){return this._week.dow}function fh(){return this._week.doy}function eh(n){var t=this.localeData().week(this);return null==n?t:this.add(7*(n-t),"d")}function oh(n){var t=ai(this,1,4).week;return null==n?t:this.add(7*(n-t),"d")}function sh(n,t){return"string"!=typeof n?n:isNaN(n)?(n=t.weekdaysParse(n),"number"==typeof n?n:null):parseInt(n,10)}function hh(n,t){return"string"==typeof n?t.weekdaysParse(n)%7||7:isNaN(n)?null:n}function ch(n,t){return n?tt(this._weekdays)?this._weekdays[n.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][n.day()]:tt(this._weekdays)?this._weekdays:this._weekdays.standalone}function lh(n){return n?this._weekdaysShort[n.day()]:this._weekdaysShort}function ah(n){return n?this._weekdaysMin[n.day()]:this._weekdaysMin}function vh(n,t,i){var f,r,e,u=n.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],f=0;f<7;++f)e=ut([2e3,1]).day(f),this._minWeekdaysParse[f]=this.weekdaysMin(e,"").toLocaleLowerCase(),this._shortWeekdaysParse[f]=this.weekdaysShort(e,"").toLocaleLowerCase(),this._weekdaysParse[f]=this.weekdays(e,"").toLocaleLowerCase();return i?"dddd"===t?(r=y.call(this._weekdaysParse,u),r!==-1?r:null):"ddd"===t?(r=y.call(this._shortWeekdaysParse,u),r!==-1?r:null):(r=y.call(this._minWeekdaysParse,u),r!==-1?r:null):"dddd"===t?(r=y.call(this._weekdaysParse,u),r!==-1?r:(r=y.call(this._shortWeekdaysParse,u),r!==-1?r:(r=y.call(this._minWeekdaysParse,u),r!==-1?r:null))):"ddd"===t?(r=y.call(this._shortWeekdaysParse,u),r!==-1?r:(r=y.call(this._weekdaysParse,u),r!==-1?r:(r=y.call(this._minWeekdaysParse,u),r!==-1?r:null))):(r=y.call(this._minWeekdaysParse,u),r!==-1?r:(r=y.call(this._weekdaysParse,u),r!==-1?r:(r=y.call(this._shortWeekdaysParse,u),r!==-1?r:null)))}function yh(n,t,i){var r,u,f;if(this._weekdaysParseExact)return vh.call(this,n,t,i);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++)if((u=ut([2e3,1]).day(r),i&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(u,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(u,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(u,"").replace(".",".?")+"$","i")),this._weekdaysParse[r]||(f="^"+this.weekdays(u,"")+"|^"+this.weekdaysShort(u,"")+"|^"+this.weekdaysMin(u,""),this._weekdaysParse[r]=new RegExp(f.replace(".",""),"i")),i&&"dddd"===t&&this._fullWeekdaysParse[r].test(n))||i&&"ddd"===t&&this._shortWeekdaysParse[r].test(n)||i&&"dd"===t&&this._minWeekdaysParse[r].test(n)||!i&&this._weekdaysParse[r].test(n))return r}function ph(n){if(!this.isValid())return null!=n?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=n?(n=sh(n,this.localeData()),this.add(n-t,"d")):t}function wh(n){if(!this.isValid())return null!=n?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==n?t:this.add(n-t,"d")}function bh(n){if(!this.isValid())return null!=n?this:NaN;if(null!=n){var t=hh(n,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function kh(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||gr.call(this),n?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,"_weekdaysRegex")||(this._weekdaysRegex=dy),this._weekdaysStrictRegex&&n?this._weekdaysStrictRegex:this._weekdaysRegex)}function dh(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||gr.call(this),n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=gy),this._weekdaysShortStrictRegex&&n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function gh(n){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||gr.call(this),n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=np),this._weekdaysMinStrictRegex&&n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function gr(){function u(n,t){return t.length-n.length}for(var f,e,o,s,h=[],i=[],r=[],t=[],n=0;n<7;n++)f=ut([2e3,1]).day(n),e=this.weekdaysMin(f,""),o=this.weekdaysShort(f,""),s=this.weekdays(f,""),h.push(e),i.push(o),r.push(s),t.push(e),t.push(o),t.push(s);for(h.sort(u),i.sort(u),r.sort(u),t.sort(u),n=0;n<7;n++)i[n]=gt(i[n]),r[n]=gt(r[n]),t[n]=gt(t[n]);this._weekdaysRegex=new RegExp("^("+t.join("|")+")","i");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp("^("+r.join("|")+")","i");this._weekdaysShortStrictRegex=new RegExp("^("+i.join("|")+")","i");this._weekdaysMinStrictRegex=new RegExp("^("+h.join("|")+")","i")}function nu(){return this.hours()%12||12}function nc(){return this.hours()||24}function pf(n,t){r(n,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function wf(n,t){return t._meridiemParse}function tc(n){return"p"===(n+"").toLowerCase().charAt(0)}function ic(n,t,i){return n>11?i?"pm":"PM":i?"am":"AM"}function bf(n){return n?n.toLowerCase().replace("_","-"):n}function rc(n){for(var i,t,f,r,u=0;u<n.length;){for(r=bf(n[u]).split("-"),i=r.length,t=bf(n[u+1]),t=t?t.split("-"):null;i>0;){if(f=kf(r.slice(0,i).join("-")))return f;if(t&&t.length>=i&&uf(r,t,!0)>=i-1)break;i--}u++}return null}function kf(n){var t=null;if(!a[n]&&"undefined"!=typeof module&&module&&module.exports)try{t=ar._abbr;require("./locale/"+n);fi(t)}catch(n){}return a[n]}function fi(n,t){var i;return n&&(i=p(t)?pt(n):tu(n,t),i&&(ar=i)),ar._abbr}function tu(n,t){if(null!==t){var i=so;if(t.abbr=n,null!=a[n])ef("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=a[n]._config;else if(null!=t.parentLocale){if(null==a[t.parentLocale])return pi[t.parentLocale]||(pi[t.parentLocale]=[]),pi[t.parentLocale].push({name:n,config:t}),null;i=a[t.parentLocale]._config}return a[n]=new wr(of(i,t)),pi[n]&&pi[n].forEach(function(n){tu(n.name,n.config)}),fi(n),a[n]}return delete a[n],null}function uc(n,t){if(null!=t){var i,r=so;null!=a[n]&&(r=a[n]._config);t=of(r,t);i=new wr(t);i.parentLocale=a[n];a[n]=i;fi(n)}else null!=a[n]&&(null!=a[n].parentLocale?a[n]=a[n].parentLocale:null!=a[n]&&delete a[n]);return a[n]}function pt(n){var t;if(n&&n._locale&&n._locale._abbr&&(n=n._locale._abbr),!n)return ar;if(!tt(n)){if(t=kf(n))return t;n=[n]}return rc(n)}function fc(){return sy(a)}function iu(n){var i,t=n._a;return t&&u(n).overflow===-2&&(i=t[ct]<0||t[ct]>11?ct:t[ot]<1||t[ot]>dr(t[it],t[ct])?ot:t[v]<0||t[v]>24||24===t[v]&&(0!==t[rt]||0!==t[lt]||0!==t[ri])?v:t[rt]<0||t[rt]>59?rt:t[lt]<0||t[lt]>59?lt:t[ri]<0||t[ri]>999?ri:-1,u(n)._overflowDayOfYear&&(i<it||i>ot)&&(i=ot),u(n)._overflowWeeks&&i===-1&&(i=cy),u(n)._overflowWeekday&&i===-1&&(i=ly),u(n).overflow=i),n}function df(n){var t,r,o,e,f,s,h=n._i,i=ip.exec(h)||rp.exec(h);if(i){for(u(n).iso=!0,t=0,r=vr.length;t<r;t++)if(vr[t][1].exec(i[1])){e=vr[t][0];o=vr[t][2]!==!1;break}if(null==e)return void(n._isValid=!1);if(i[3]){for(t=0,r=du.length;t<r;t++)if(du[t][1].exec(i[3])){f=(i[2]||" ")+du[t][0];break}if(null==f)return void(n._isValid=!1)}if(!o&&null!=f)return void(n._isValid=!1);if(i[4]){if(!up.exec(i[4]))return void(n._isValid=!1);s="Z"}n._f=e+(f||"")+(s||"");tr(n)}else n._isValid=!1}function gf(n){var f,t,e,o,s,h,i,r,c={" GMT":" +0000"," EDT":" -0400"," EST":" -0500"," CDT":" -0500"," CST":" -0600"," MDT":" -0600"," MST":" -0700"," PDT":" -0700"," PST":" -0800"},l,a;if(f=n._i.replace(/\([^\)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s|\s$/g,""),t=ep.exec(f)){if((e=t[1]?"ddd"+(5===t[1].length?", ":" "):"",o="D MMM "+(t[2].length>10?"YYYY ":"YY "),s="HH:mm"+(t[4]?":ss":""),t[1])&&(l=new Date(t[2]),a=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][l.getDay()],t[1].substr(0,3)!==a))return u(n).weekdayMismatch=!0,void(n._isValid=!1);switch(t[5].length){case 2:0===r?i=" +0000":(r="YXWVUTSRQPONZABCDEFGHIKLM".indexOf(t[5][1].toUpperCase())-12,i=(r<0?" -":" +")+(""+r).replace(/^-?/,"0").match(/..$/)[0]+"00");break;case 4:i=c[t[5]];break;default:i=c[" GMT"]}t[5]=i;n._i=t.splice(1).join("");h=" ZZ";n._f=e+o+s+h;tr(n);u(n).rfc2822=!0}else n._isValid=!1}function ec(n){var i=fp.exec(n._i);return null!==i?void(n._d=new Date(+i[1])):(df(n),void(n._isValid===!1&&(delete n._isValid,gf(n),n._isValid===!1&&(delete n._isValid,t.createFromInputFallback(n)))))}function ei(n,t,i){return null!=n?n:null!=t?t:i}function oc(n){var i=new Date(t.now());return n._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function ru(n){var t,i,r,f,e=[];if(!n._d){for(r=oc(n),n._w&&null==n._a[ot]&&null==n._a[ct]&&sc(n),null!=n._dayOfYear&&(f=ei(n._a[it],r[it]),(n._dayOfYear>li(f)||0===n._dayOfYear)&&(u(n)._overflowDayOfYear=!0),i=gi(f,0,n._dayOfYear),n._a[ct]=i.getUTCMonth(),n._a[ot]=i.getUTCDate()),t=0;t<3&&null==n._a[t];++t)n._a[t]=e[t]=r[t];for(;t<7;t++)n._a[t]=e[t]=null==n._a[t]?2===t?1:0:n._a[t];24===n._a[v]&&0===n._a[rt]&&0===n._a[lt]&&0===n._a[ri]&&(n._nextDay=!0,n._a[v]=0);n._d=(n._useUTC?gi:ih).apply(null,e);null!=n._tzm&&n._d.setUTCMinutes(n._d.getUTCMinutes()-n._tzm);n._nextDay&&(n._a[v]=24)}}function sc(n){var t,o,f,i,r,e,h,s,l;(t=n._w,null!=t.GG||null!=t.W||null!=t.E)?(r=1,e=4,o=ei(t.GG,n._a[it],ai(c(),1,4).year),f=ei(t.W,1),i=ei(t.E,1),(i<1||i>7)&&(s=!0)):(r=n._locale._week.dow,e=n._locale._week.doy,l=ai(c(),r,e),o=ei(t.gg,n._a[it],l.year),f=ei(t.w,l.week),null!=t.d?(i=t.d,(i<0||i>6)&&(s=!0)):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(s=!0)):i=r);f<1||f>ni(o,r,e)?u(n)._overflowWeeks=!0:null!=s?u(n)._overflowWeekday=!0:(h=yf(o,f,i,r,e),n._a[it]=h.year,n._dayOfYear=h.dayOfYear)}function tr(n){if(n._f===t.ISO_8601)return void df(n);if(n._f===t.RFC_2822)return void gf(n);n._a=[];u(n).empty=!0;for(var i,f,s,r=""+n._i,c=r.length,h=0,o=hf(n._f,n._locale).match(to)||[],e=0;e<o.length;e++)f=o[e],i=(r.match(as(f,n))||[])[0],i&&(s=r.substr(0,r.indexOf(i)),s.length>0&&u(n).unusedInput.push(s),r=r.slice(r.indexOf(i)+i.length),h+=i.length),oi[f]?(i?u(n).empty=!1:u(n).unusedTokens.push(f),ys(f,i,n)):n._strict&&!i&&u(n).unusedTokens.push(f);u(n).charsLeftOver=c-h;r.length>0&&u(n).unusedInput.push(r);n._a[v]<=12&&u(n).bigHour===!0&&n._a[v]>0&&(u(n).bigHour=void 0);u(n).parsedDateParts=n._a.slice(0);u(n).meridiem=n._meridiem;n._a[v]=hc(n._locale,n._a[v],n._meridiem);ru(n);iu(n)}function hc(n,t,i){var r;return null==i?t:null!=n.meridiemHour?n.meridiemHour(t,i):null!=n.isPM?(r=n.isPM(i),r&&t<12&&(t+=12),r||12!==t||(t=0),t):t}function cc(n){var t,e,f,r,i;if(0===n._f.length)return u(n).invalidFormat=!0,void(n._d=new Date(NaN));for(r=0;r<n._f.length;r++)i=0,t=pr({},n),null!=n._useUTC&&(t._useUTC=n._useUTC),t._f=n._f[r],tr(t),yr(t)&&(i+=u(t).charsLeftOver,i+=10*u(t).unusedTokens.length,u(t).score=i,(null==f||i<f)&&(f=i,e=t));vt(n,e||t)}function lc(n){if(!n._d){var t=br(n._i);n._a=rf([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(n){return n&&parseInt(n,10)});ru(n)}}function ac(n){var t=new hi(iu(ne(n)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function ne(n){var t=n._i,i=n._f;return n._locale=n._locale||pt(n._l),null===t||void 0===i&&""===t?ki({nullInput:!0}):("string"==typeof t&&(n._i=t=n._locale.preparse(t)),yt(t)?new hi(iu(t)):(bi(t)?n._d=t:tt(i)?cc(n):i?tr(n):vc(n),yr(n)||(n._d=null),n))}function vc(n){var i=n._i;p(i)?n._d=new Date(t.now()):bi(i)?n._d=new Date(i.valueOf()):"string"==typeof i?ec(n):tt(i)?(n._a=rf(i.slice(0),function(n){return parseInt(n,10)}),ru(n)):si(i)?lc(n):dt(i)?n._d=new Date(i):t.createFromInputFallback(n)}function te(n,t,i,r,u){var f={};return i!==!0&&i!==!1||(r=i,i=void 0),(si(n)&&ko(n)||tt(n)&&0===n.length)&&(n=void 0),f._isAMomentObject=!0,f._useUTC=f._isUTC=u,f._l=i,f._i=n,f._f=t,f._strict=r,ac(f)}function c(n,t,i,r){return te(n,t,i,r,!1)}function ie(n,t){var r,i;if(1===t.length&&tt(t[0])&&(t=t[0]),!t.length)return c();for(r=t[0],i=1;i<t.length;++i)t[i].isValid()&&!t[i][n](r)||(r=t[i]);return r}function yc(){var n=[].slice.call(arguments,0);return ie("isBefore",n)}function pc(){var n=[].slice.call(arguments,0);return ie("isAfter",n)}function wc(n){var i,r,t;for(i in n)if(wi.indexOf(i)===-1||null!=n[i]&&isNaN(n[i]))return!1;for(r=!1,t=0;t<wi.length;++t)if(n[wi[t]]){if(r)return!1;parseFloat(n[wi[t]])!==f(n[wi[t]])&&(r=!0)}return!0}function bc(){return this._isValid}function kc(){return et(NaN)}function ir(n){var t=br(n),i=t.year||0,r=t.quarter||0,u=t.month||0,f=t.week||0,e=t.day||0,o=t.hour||0,s=t.minute||0,h=t.second||0,c=t.millisecond||0;this._isValid=wc(t);this._milliseconds=+c+1e3*h+6e4*s+36e5*o;this._days=+e+7*f;this._months=+u+3*r+12*i;this._data={};this._locale=pt();this._bubble()}function uu(n){return n instanceof ir}function fu(n){return n<0?Math.round(-1*n)*-1:Math.round(n)}function re(n,t){r(n,0,0,function(){var n=this.utcOffset(),i="+";return n<0&&(n=-n,i="-"),i+ht(~~(n/60),2)+t+ht(~~n%60,2)})}function eu(n,t){var i=(t||"").match(n);if(null===i)return null;var e=i[i.length-1]||[],r=(e+"").match(ho)||["-",0,0],u=+(60*r[1])+f(r[2]);return 0===u?0:"+"===r[0]?u:-u}function ou(n,i){var r,u;return i._isUTC?(r=i.clone(),u=(yt(n)||bi(n)?n.valueOf():c(n).valueOf())-r.valueOf(),r._d.setTime(r._d.valueOf()+u),t.updateOffset(r,!1),r):c(n).local()}function su(n){return 15*-Math.round(n._d.getTimezoneOffset()/15)}function dc(n,i,r){var u,f=this._offset||0;if(!this.isValid())return null!=n?this:NaN;if(null!=n){if("string"==typeof n){if(n=eu(lr,n),null===n)return this}else Math.abs(n)<16&&!r&&(n=60*n);return!this._isUTC&&i&&(u=su(this)),this._offset=n,this._isUTC=!0,null!=u&&this.add(u,"m"),f!==n&&(!i||this._changeInProgress?oe(this,et(n-f,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?f:su(this)}function gc(n,t){return null!=n?("string"!=typeof n&&(n=-n),this.utcOffset(n,t),this):-this.utcOffset()}function nl(n){return this.utcOffset(0,n)}function tl(n){return this._isUTC&&(this.utcOffset(0,n),this._isUTC=!1,n&&this.subtract(su(this),"m")),this}function il(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var n=eu(hy,this._i);null!=n?this.utcOffset(n):this.utcOffset(0,!0)}return this}function rl(n){return!!this.isValid()&&(n=n?c(n).utcOffset():0,(this.utcOffset()-n)%60==0)}function ul(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function fl(){var n,t;return p(this._isDSTShifted)?(n={},(pr(n,this),n=ne(n),n._a)?(t=n._isUTC?ut(n._a):c(n._a),this._isDSTShifted=this.isValid()&&uf(n._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted):this._isDSTShifted}function el(){return!!this.isValid()&&!this._isUTC}function ol(){return!!this.isValid()&&this._isUTC}function ue(){return!!this.isValid()&&this._isUTC&&0===this._offset}function et(n,t){var u,e,o,i=n,r=null;return uu(n)?i={ms:n._milliseconds,d:n._days,M:n._months}:dt(n)?(i={},t?i[t]=n:i.milliseconds=n):(r=co.exec(n))?(u="-"===r[1]?-1:1,i={y:0,d:f(r[ot])*u,h:f(r[v])*u,m:f(r[rt])*u,s:f(r[lt])*u,ms:f(fu(1e3*r[ri]))*u}):(r=lo.exec(n))?(u="-"===r[1]?-1:1,i={y:ti(r[2],u),M:ti(r[3],u),w:ti(r[4],u),d:ti(r[5],u),h:ti(r[6],u),m:ti(r[7],u),s:ti(r[8],u)}):null==i?i={}:"object"==typeof i&&("from"in i||"to"in i)&&(o=sl(c(i.from),c(i.to)),i={},i.ms=o.milliseconds,i.M=o.months),e=new ir(i),uu(n)&&l(n,"_locale")&&(e._locale=n._locale),e}function ti(n,t){var i=n&&parseFloat(n.replace(",","."));return(isNaN(i)?0:i)*t}function fe(n,t){var i={milliseconds:0,months:0};return i.months=t.month()-n.month()+12*(t.year()-n.year()),n.clone().add(i.months,"M").isAfter(t)&&--i.months,i.milliseconds=+t-+n.clone().add(i.months,"M"),i}function sl(n,t){var i;return n.isValid()&&t.isValid()?(t=ou(t,n),n.isBefore(t)?i=fe(n,t):(i=fe(t,n),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function ee(n,t){return function(i,r){var u,f;return null===r||isNaN(+r)||(ef(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),f=i,i=r,r=f),i="string"==typeof i?+i:i,u=et(i,r),oe(this,u,n),this}}function oe(n,i,r,u){var o=i._milliseconds,f=fu(i._days),e=fu(i._months);n.isValid()&&(u=null==u||u,o&&n._d.setTime(n._d.valueOf()+o*r),f&&sf(n,"Date",di(n,"Date")+f*r),e&&cf(n,di(n,"Month")+e*r),u&&t.updateOffset(n,f||e))}function hl(n,t){var i=n.diff(t,"days",!0);return i<-6?"sameElse":i<-1?"lastWeek":i<0?"lastDay":i<1?"sameDay":i<2?"nextDay":i<7?"nextWeek":"sameElse"}function cl(n,i){var u=n||c(),f=ou(u,this).startOf("day"),r=t.calendarFormat(this,f)||"sameElse",e=i&&(ft(i[r])?i[r].call(this,u):i[r]);return this.format(e||this.localeData().calendar(r,this,c(u)))}function ll(){return new hi(this)}function al(n,t){var i=yt(n)?n:c(n);return!(!this.isValid()||!i.isValid())&&(t=nt(p(t)?"millisecond":t),"millisecond"===t?this.valueOf()>i.valueOf():i.valueOf()<this.clone().startOf(t).valueOf())}function vl(n,t){var i=yt(n)?n:c(n);return!(!this.isValid()||!i.isValid())&&(t=nt(p(t)?"millisecond":t),"millisecond"===t?this.valueOf()<i.valueOf():this.clone().endOf(t).valueOf()<i.valueOf())}function yl(n,t,i,r){return r=r||"()",("("===r[0]?this.isAfter(n,i):!this.isBefore(n,i))&&(")"===r[1]?this.isBefore(t,i):!this.isAfter(t,i))}function pl(n,t){var i,r=yt(n)?n:c(n);return!(!this.isValid()||!r.isValid())&&(t=nt(t||"millisecond"),"millisecond"===t?this.valueOf()===r.valueOf():(i=r.valueOf(),this.clone().startOf(t).valueOf()<=i&&i<=this.clone().endOf(t).valueOf()))}function wl(n,t){return this.isSame(n,t)||this.isAfter(n,t)}function bl(n,t){return this.isSame(n,t)||this.isBefore(n,t)}function kl(n,t,i){var f,e,r,u;return this.isValid()?(f=ou(n,this),f.isValid()?(e=6e4*(f.utcOffset()-this.utcOffset()),t=nt(t),"year"===t||"month"===t||"quarter"===t?(u=dl(this,f),"quarter"===t?u/=3:"year"===t&&(u/=12)):(r=this-f,u="second"===t?r/1e3:"minute"===t?r/6e4:"hour"===t?r/36e5:"day"===t?(r-e)/864e5:"week"===t?(r-e)/6048e5:r),i?u:d(u)):NaN):NaN}function dl(n,t){var r,f,u=12*(t.year()-n.year())+(t.month()-n.month()),i=n.clone().add(u,"months");return t-i<0?(r=n.clone().add(u-1,"months"),f=(t-i)/(i-r)):(r=n.clone().add(u+1,"months"),f=(t-i)/(r-i)),-(u+f)||0}function gl(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function na(){if(!this.isValid())return null;var n=this.clone().utc();return n.year()<0||n.year()>9999?kr(n,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):ft(Date.prototype.toISOString)?this.toDate().toISOString():kr(n,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}function ta(){var n,t;if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";n="moment";t="";this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",t="Z");var i="["+n+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",u=t+'[")]';return this.format(i+r+"-MM-DD[T]HH:mm:ss.SSS"+u)}function ia(n){n||(n=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var i=kr(this,n);return this.localeData().postformat(i)}function ra(n,t){return this.isValid()&&(yt(n)&&n.isValid()||c(n).isValid())?et({to:this,from:n}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ua(n){return this.from(c(),n)}function fa(n,t){return this.isValid()&&(yt(n)&&n.isValid()||c(n).isValid())?et({from:this,to:n}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ea(n){return this.to(c(),n)}function se(n){var t;return void 0===n?this._locale._abbr:(t=pt(n),null!=t&&(this._locale=t),this)}function he(){return this._locale}function oa(n){switch(n=nt(n)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":case"date":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===n&&this.weekday(0),"isoWeek"===n&&this.isoWeekday(1),"quarter"===n&&this.month(3*Math.floor(this.month()/3)),this}function sa(n){return n=nt(n),void 0===n||"millisecond"===n?this:("date"===n&&(n="day"),this.startOf(n).add(1,"isoWeek"===n?"week":n).subtract(1,"ms"))}function ha(){return this._d.valueOf()-6e4*(this._offset||0)}function ca(){return Math.floor(this.valueOf()/1e3)}function la(){return new Date(this.valueOf())}function aa(){var n=this;return[n.year(),n.month(),n.date(),n.hour(),n.minute(),n.second(),n.millisecond()]}function va(){var n=this;return{years:n.year(),months:n.month(),date:n.date(),hours:n.hours(),minutes:n.minutes(),seconds:n.seconds(),milliseconds:n.milliseconds()}}function ya(){return this.isValid()?this.toISOString():null}function pa(){return yr(this)}function wa(){return vt({},u(this))}function ba(){return u(this).overflow}function ka(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function rr(n,t){r(0,[n,n.length],0,t)}function da(n){return ce.call(this,n,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function ga(n){return ce.call(this,n,this.isoWeek(),this.isoWeekday(),1,4)}function nv(){return ni(this.year(),1,4)}function tv(){var n=this.localeData()._week;return ni(this.year(),n.dow,n.doy)}function ce(n,t,i,r,u){var f;return null==n?ai(this,r,u).year:(f=ni(n,r,u),t>f&&(t=f),iv.call(this,n,t,i,r,u))}function iv(n,t,i,r,u){var e=yf(n,t,i,r,u),f=gi(e.year,0,e.dayOfYear);return this.year(f.getUTCFullYear()),this.month(f.getUTCMonth()),this.date(f.getUTCDate()),this}function rv(n){return null==n?Math.ceil((this.month()+1)/3):this.month(3*(n-1)+this.month()%3)}function uv(n){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==n?t:this.add(n-t,"d")}function fv(n,t){t[ri]=f(1e3*("0."+n))}function ev(){return this._isUTC?"UTC":""}function ov(){return this._isUTC?"Coordinated Universal Time":""}function sv(n){return c(1e3*n)}function hv(){return c.apply(null,arguments).parseZone()}function le(n){return n}function ur(n,t,i,r){var u=pt(),f=ut().set(r,t);return u[i](f,n)}function ae(n,t,i){if(dt(n)&&(t=n,n=void 0),n=n||"",null!=t)return ur(n,t,i,"month");for(var u=[],r=0;r<12;r++)u[r]=ur(n,r,i,"month");return u}function hu(n,t,i,r){var o,f,u,e;if("boolean"==typeof n?(dt(t)&&(i=t,t=void 0),t=t||""):(t=n,i=t,n=!1,dt(t)&&(i=t,t=void 0),t=t||""),o=pt(),f=n?o._week.dow:0,null!=i)return ur(t,(i+f)%7,r,"day");for(e=[],u=0;u<7;u++)e[u]=ur(t,(u+f)%7,r,"day");return e}function cv(n,t){return ae(n,t,"months")}function lv(n,t){return ae(n,t,"monthsShort")}function av(n,t,i){return hu(n,t,i,"weekdays")}function vv(n,t,i){return hu(n,t,i,"weekdaysShort")}function yv(n,t,i){return hu(n,t,i,"weekdaysMin")}function pv(){var n=this._data;return this._milliseconds=at(this._milliseconds),this._days=at(this._days),this._months=at(this._months),n.milliseconds=at(n.milliseconds),n.seconds=at(n.seconds),n.minutes=at(n.minutes),n.hours=at(n.hours),n.months=at(n.months),n.years=at(n.years),this}function ve(n,t,i,r){var u=et(t,i);return n._milliseconds+=r*u._milliseconds,n._days+=r*u._days,n._months+=r*u._months,n._bubble()}function wv(n,t){return ve(this,n,t,1)}function bv(n,t){return ve(this,n,t,-1)}function ye(n){return n<0?Math.floor(n):Math.ceil(n)}function kv(){var u,f,e,s,o,r=this._milliseconds,n=this._days,t=this._months,i=this._data;return r>=0&&n>=0&&t>=0||r<=0&&n<=0&&t<=0||(r+=864e5*ye(cu(t)+n),n=0,t=0),i.milliseconds=r%1e3,u=d(r/1e3),i.seconds=u%60,f=d(u/60),i.minutes=f%60,e=d(f/60),i.hours=e%24,n+=d(e/24),o=d(pe(n)),t+=o,n-=ye(cu(o)),s=d(t/12),t%=12,i.days=n,i.months=t,i.years=s,this}function pe(n){return 4800*n/146097}function cu(n){return 146097*n/4800}function dv(n){if(!this.isValid())return NaN;var t,r,i=this._milliseconds;if(n=nt(n),"month"===n||"year"===n)return t=this._days+i/864e5,r=this._months+pe(t),"month"===n?r:r/12;switch(t=this._days+Math.round(cu(this._months)),n){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return 24*t+i/36e5;case"minute":return 1440*t+i/6e4;case"second":return 86400*t+i/1e3;case"millisecond":return Math.floor(864e5*t)+i;default:throw new Error("Unknown unit "+n);}}function gv(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*f(this._months/12):NaN}function wt(n){return function(){return this.as(n)}}function ny(n){return n=nt(n),this.isValid()?this[n+"s"]():NaN}function ii(n){return function(){return this.isValid()?this._data[n]:NaN}}function ty(){return d(this.days()/7)}function iy(n,t,i,r,u){return u.relativeTime(t||1,!!i,n,r)}function ry(n,t,i){var r=et(n).abs(),u=kt(r.as("s")),e=kt(r.as("m")),o=kt(r.as("h")),s=kt(r.as("d")),h=kt(r.as("M")),c=kt(r.as("y")),f=u<=st.ss&&["s",u]||u<st.s&&["ss",u]||e<=1&&["m"]||e<st.m&&["mm",e]||o<=1&&["h"]||o<st.h&&["hh",o]||s<=1&&["d"]||s<st.d&&["dd",s]||h<=1&&["M"]||h<st.M&&["MM",h]||c<=1&&["y"]||["yy",c];return f[2]=t,f[3]=+n>0,f[4]=i,iy.apply(null,f)}function uy(n){return void 0===n?kt:"function"==typeof n&&(kt=n,!0)}function fy(n,t){return void 0!==st[n]&&(void 0===t?st[n]:(st[n]=t,"s"===n&&(st.ss=t-1),!0))}function ey(n){if(!this.isValid())return this.localeData().invalidDate();var t=this.localeData(),i=ry(this,!n,t);return n&&(i=t.pastFuture(+this,i)),t.postformat(i)}function fr(){if(!this.isValid())return this.localeData().invalidDate();var n,e,o,t=tf(this._milliseconds)/1e3,a=tf(this._days),i=tf(this._months);n=d(t/60);e=d(n/60);t%=60;n%=60;o=d(i/12);i%=12;var s=o,h=i,c=a,r=e,u=n,f=t,l=this.asSeconds();return l?(l<0?"-":"")+"P"+(s?s+"Y":"")+(h?h+"M":"")+(c?c+"D":"")+(r||u||f?"T":"")+(r?r+"H":"")+(u?u+"M":"")+(f?f+"S":""):"P0D"}var we,be,de,y,ku,oo,ho,co,lo,ao,vo,gu,nf,yo,po,bt,wo,n,o;be=Array.prototype.some?Array.prototype.some:function(n){for(var i=Object(this),r=i.length>>>0,t=0;t<r;t++)if(t in i&&n.call(this,i[t],t,i))return!0;return!1};var oy=be,lu=t.momentProperties=[],au=!1,ke={};t.suppressDeprecationWarnings=!1;t.deprecationHandler=null;de=Object.keys?Object.keys:function(n){var t,i=[];for(t in n)l(n,t)&&i.push(t);return i};var ge,sy=de,vi={},no={},to=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,er=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,vu={},oi={},io=/\d/,k=/\d\d/,ro=/\d{3}/,yu=/\d{4}/,or=/[+-]?\d{6}/,h=/\d\d?/,uo=/\d\d\d\d?/,fo=/\d\d\d\d\d\d?/,sr=/\d{1,3}/,pu=/\d{1,4}/,hr=/[+-]?\d{1,6}/,cr=/[+-]?\d+/,hy=/Z|[+-]\d\d:?\d\d/gi,lr=/Z|[+-]\d\d(?::?\d\d)?/gi,yi=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,wu={},bu={},it=0,ct=1,ot=2,v=3,rt=4,lt=5,ri=6,cy=7,ly=8;ge=Array.prototype.indexOf?Array.prototype.indexOf:function(n){for(var t=0;t<this.length;++t)if(this[t]===n)return t;return-1};y=ge;r("M",["MM",2],"Mo",function(){return this.month()+1});r("MMM",0,0,function(n){return this.localeData().monthsShort(this,n)});r("MMMM",0,0,function(n){return this.localeData().months(this,n)});w("month","M");b("month",8);i("M",h);i("MM",h,k);i("MMM",function(n,t){return t.monthsShortRegex(n)});i("MMMM",function(n,t){return t.monthsRegex(n)});s(["M","MM"],function(n,t){t[ct]=f(n)-1});s(["MMM","MMMM"],function(n,t,i,r){var f=i._locale.monthsParse(n,r,i._strict);null!=f?t[ct]=f:u(i).invalidMonth=n});var eo=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ay="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),vy="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),yy=yi,py=yi;r("Y",0,0,function(){var n=this.year();return n<=9999?""+n:"+"+n});r(0,["YY",2],0,function(){return this.year()%100});r(0,["YYYY",4],0,"year");r(0,["YYYYY",5],0,"year");r(0,["YYYYYY",6,!0],0,"year");w("year","y");b("year",1);i("Y",cr);i("YY",h,k);i("YYYY",pu,yu);i("YYYYY",hr,or);i("YYYYYY",hr,or);s(["YYYYY","YYYYYY"],it);s("YYYY",function(n,i){i[it]=2===n.length?t.parseTwoDigitYear(n):f(n)});s("YY",function(n,i){i[it]=t.parseTwoDigitYear(n)});s("Y",function(n,t){t[it]=parseInt(n,10)});t.parseTwoDigitYear=function(n){return f(n)+(f(n)>68?1900:2e3)};ku=ui("FullYear",!0);r("w",["ww",2],"wo","week");r("W",["WW",2],"Wo","isoWeek");w("week","w");w("isoWeek","W");b("week",5);b("isoWeek",5);i("w",h);i("ww",h,k);i("W",h);i("WW",h,k);ci(["w","ww","W","WW"],function(n,t,i,r){t[r.substr(0,1)]=f(n)});oo={dow:0,doy:6};r("d",0,"do","day");r("dd",0,0,function(n){return this.localeData().weekdaysMin(this,n)});r("ddd",0,0,function(n){return this.localeData().weekdaysShort(this,n)});r("dddd",0,0,function(n){return this.localeData().weekdays(this,n)});r("e",0,0,"weekday");r("E",0,0,"isoWeekday");w("day","d");w("weekday","e");w("isoWeekday","E");b("day",11);b("weekday",11);b("isoWeekday",11);i("d",h);i("e",h);i("E",h);i("dd",function(n,t){return t.weekdaysMinRegex(n)});i("ddd",function(n,t){return t.weekdaysShortRegex(n)});i("dddd",function(n,t){return t.weekdaysRegex(n)});ci(["dd","ddd","dddd"],function(n,t,i,r){var f=i._locale.weekdaysParse(n,r,i._strict);null!=f?t.d=f:u(i).invalidWeekday=n});ci(["d","e","E"],function(n,t,i,r){t[r]=f(n)});var wy="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),by="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),ky="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),dy=yi,gy=yi,np=yi;r("H",["HH",2],0,"hour");r("h",["hh",2],0,nu);r("k",["kk",2],0,nc);r("hmm",0,0,function(){return""+nu.apply(this)+ht(this.minutes(),2)});r("hmmss",0,0,function(){return""+nu.apply(this)+ht(this.minutes(),2)+ht(this.seconds(),2)});r("Hmm",0,0,function(){return""+this.hours()+ht(this.minutes(),2)});r("Hmmss",0,0,function(){return""+this.hours()+ht(this.minutes(),2)+ht(this.seconds(),2)});pf("a",!0);pf("A",!1);w("hour","h");b("hour",13);i("a",wf);i("A",wf);i("H",h);i("h",h);i("k",h);i("HH",h,k);i("hh",h,k);i("kk",h,k);i("hmm",uo);i("hmmss",fo);i("Hmm",uo);i("Hmmss",fo);s(["H","HH"],v);s(["k","kk"],function(n,t){var i=f(n);t[v]=24===i?0:i});s(["a","A"],function(n,t,i){i._isPm=i._locale.isPM(n);i._meridiem=n});s(["h","hh"],function(n,t,i){t[v]=f(n);u(i).bigHour=!0});s("hmm",function(n,t,i){var r=n.length-2;t[v]=f(n.substr(0,r));t[rt]=f(n.substr(r));u(i).bigHour=!0});s("hmmss",function(n,t,i){var r=n.length-4,e=n.length-2;t[v]=f(n.substr(0,r));t[rt]=f(n.substr(r,2));t[lt]=f(n.substr(e));u(i).bigHour=!0});s("Hmm",function(n,t){var i=n.length-2;t[v]=f(n.substr(0,i));t[rt]=f(n.substr(i))});s("Hmmss",function(n,t){var i=n.length-4,r=n.length-2;t[v]=f(n.substr(0,i));t[rt]=f(n.substr(i,2));t[lt]=f(n.substr(r))});var ar,tp=ui("Hours",!0),so={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:ay,monthsShort:vy,week:oo,weekdays:wy,weekdaysMin:ky,weekdaysShort:by,meridiemParse:/[ap]\.?m?\.?/i},a={},pi={},ip=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,rp=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,up=/Z|[+-]\d\d(?::?\d\d)?/,vr=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],du=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],fp=/^\/?Date\((\-?\d+)/i,ep=/^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/;t.createFromInputFallback=g("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(n){n._d=new Date(n._i+(n._useUTC?" UTC":""))});t.ISO_8601=function(){};t.RFC_2822=function(){};var op=g("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var n=c.apply(null,arguments);return this.isValid()&&n.isValid()?n<this?this:n:ki()}),sp=g("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var n=c.apply(null,arguments);return this.isValid()&&n.isValid()?n>this?this:n:ki()}),hp=function(){return Date.now?Date.now():+new Date},wi=["year","quarter","month","week","day","hour","minute","second","millisecond"];for(re("Z",":"),re("ZZ",""),i("Z",lr),i("ZZ",lr),s(["Z","ZZ"],function(n,t,i){i._useUTC=!0;i._tzm=eu(lr,n)}),ho=/([\+\-]|\d\d)/gi,t.updateOffset=function(){},co=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,lo=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/,et.fn=ir.prototype,et.invalid=kc,ao=ee(1,"add"),vo=ee(-1,"subtract"),t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",t.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]",gu=g("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(n){return void 0===n?this.localeData():this.locale(n)}),r(0,["gg",2],0,function(){return this.weekYear()%100}),r(0,["GG",2],0,function(){return this.isoWeekYear()%100}),rr("gggg","weekYear"),rr("ggggg","weekYear"),rr("GGGG","isoWeekYear"),rr("GGGGG","isoWeekYear"),w("weekYear","gg"),w("isoWeekYear","GG"),b("weekYear",1),b("isoWeekYear",1),i("G",cr),i("g",cr),i("GG",h,k),i("gg",h,k),i("GGGG",pu,yu),i("gggg",pu,yu),i("GGGGG",hr,or),i("ggggg",hr,or),ci(["gggg","ggggg","GGGG","GGGGG"],function(n,t,i,r){t[r.substr(0,2)]=f(n)}),ci(["gg","GG"],function(n,i,r,u){i[u]=t.parseTwoDigitYear(n)}),r("Q",0,"Qo","quarter"),w("quarter","Q"),b("quarter",7),i("Q",io),s("Q",function(n,t){t[ct]=3*(f(n)-1)}),r("D",["DD",2],"Do","date"),w("date","D"),b("date",9),i("D",h),i("DD",h,k),i("Do",function(n,t){return n?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),s(["D","DD"],ot),s("Do",function(n,t){t[ot]=f(n.match(h)[0],10)}),nf=ui("Date",!0),r("DDD",["DDDD",3],"DDDo","dayOfYear"),w("dayOfYear","DDD"),b("dayOfYear",4),i("DDD",sr),i("DDDD",ro),s(["DDD","DDDD"],function(n,t,i){i._dayOfYear=f(n)}),r("m",["mm",2],0,"minute"),w("minute","m"),b("minute",14),i("m",h),i("mm",h,k),s(["m","mm"],rt),yo=ui("Minutes",!1),r("s",["ss",2],0,"second"),w("second","s"),b("second",15),i("s",h),i("ss",h,k),s(["s","ss"],lt),po=ui("Seconds",!1),r("S",0,0,function(){return~~(this.millisecond()/100)}),r(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),r(0,["SSS",3],0,"millisecond"),r(0,["SSSS",4],0,function(){return 10*this.millisecond()}),r(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),r(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),r(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),r(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),r(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),w("millisecond","ms"),b("millisecond",16),i("S",sr,io),i("SS",sr,k),i("SSS",sr,ro),bt="SSSS";bt.length<=9;bt+="S")i(bt,/\d+/);for(bt="S";bt.length<=9;bt+="S")s(bt,fv);wo=ui("Milliseconds",!1);r("z",0,0,"zoneAbbr");r("zz",0,0,"zoneName");n=hi.prototype;n.add=ao;n.calendar=cl;n.clone=ll;n.diff=kl;n.endOf=sa;n.format=ia;n.from=ra;n.fromNow=ua;n.to=fa;n.toNow=ea;n.get=ss;n.invalidAt=ba;n.isAfter=al;n.isBefore=vl;n.isBetween=yl;n.isSame=pl;n.isSameOrAfter=wl;n.isSameOrBefore=bl;n.isValid=pa;n.lang=gu;n.locale=se;n.localeData=he;n.max=sp;n.min=op;n.parsingFlags=wa;n.set=hs;n.startOf=oa;n.subtract=vo;n.toArray=aa;n.toObject=va;n.toDate=la;n.toISOString=na;n.inspect=ta;n.toJSON=ya;n.toString=gl;n.unix=ca;n.valueOf=ha;n.creationData=ka;n.year=ku;n.isLeapYear=th;n.weekYear=da;n.isoWeekYear=ga;n.quarter=n.quarters=rv;n.month=lf;n.daysInMonth=ds;n.week=n.weeks=eh;n.isoWeek=n.isoWeeks=oh;n.weeksInYear=tv;n.isoWeeksInYear=nv;n.date=nf;n.day=n.days=ph;n.weekday=wh;n.isoWeekday=bh;n.dayOfYear=uv;n.hour=n.hours=tp;n.minute=n.minutes=yo;n.second=n.seconds=po;n.millisecond=n.milliseconds=wo;n.utcOffset=dc;n.utc=nl;n.local=tl;n.parseZone=il;n.hasAlignedHourOffset=rl;n.isDST=ul;n.isLocal=el;n.isUtcOffset=ol;n.isUtc=ue;n.isUTC=ue;n.zoneAbbr=ev;n.zoneName=ov;n.dates=g("dates accessor is deprecated. Use date instead.",nf);n.months=g("months accessor is deprecated. Use month instead",lf);n.years=g("years accessor is deprecated. Use year instead",ku);n.zone=g("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",gc);n.isDSTShifted=g("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",fl);o=wr.prototype;o.calendar=ts;o.longDateFormat=is;o.invalidDate=rs;o.ordinal=us;o.preparse=le;o.postformat=le;o.relativeTime=fs;o.pastFuture=es;o.set=ns;o.months=ps;o.monthsShort=ws;o.monthsParse=ks;o.monthsRegex=nh;o.monthsShortRegex=gs;o.week=rh;o.firstDayOfYear=fh;o.firstDayOfWeek=uh;o.weekdays=ch;o.weekdaysMin=ah;o.weekdaysShort=lh;o.weekdaysParse=yh;o.weekdaysRegex=kh;o.weekdaysShortRegex=dh;o.weekdaysMinRegex=gh;o.isPM=tc;o.meridiem=ic;fi("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(n){var t=n%10,i=1===f(n%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return n+i}});t.lang=g("moment.lang is deprecated. Use moment.locale instead.",fi);t.langData=g("moment.langData is deprecated. Use moment.localeData instead.",pt);var at=Math.abs,cp=wt("ms"),lp=wt("s"),ap=wt("m"),vp=wt("h"),yp=wt("d"),pp=wt("w"),wp=wt("M"),bp=wt("y"),kp=ii("milliseconds"),dp=ii("seconds"),gp=ii("minutes"),nw=ii("hours"),tw=ii("days"),iw=ii("months"),rw=ii("years"),kt=Math.round,st={ss:44,s:45,m:45,h:22,d:26,M:11},tf=Math.abs,e=ir.prototype;return e.isValid=bc,e.abs=pv,e.add=wv,e.subtract=bv,e.as=dv,e.asMilliseconds=cp,e.asSeconds=lp,e.asMinutes=ap,e.asHours=vp,e.asDays=yp,e.asWeeks=pp,e.asMonths=wp,e.asYears=bp,e.valueOf=gv,e._bubble=kv,e.get=ny,e.milliseconds=kp,e.seconds=dp,e.minutes=gp,e.hours=nw,e.days=tw,e.weeks=ty,e.months=iw,e.years=rw,e.humanize=ey,e.toISOString=fr,e.toString=fr,e.toJSON=fr,e.locale=se,e.localeData=he,e.toIsoString=g("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",fr),e.lang=gu,r("X",0,0,"unix"),r("x",0,0,"valueOf"),i("x",cr),i("X",/[+-]?\d+(\.\d{1,3})?/),s("X",function(n,t,i){i._d=new Date(1e3*parseFloat(n,10))}),s("x",function(n,t,i){i._d=new Date(f(n))}),t.version="2.18.1",bo(c),t.fn=n,t.min=yc,t.max=pc,t.now=hp,t.utc=ut,t.unix=sv,t.months=cv,t.isDate=bi,t.locale=fi,t.invalid=ki,t.duration=et,t.isMoment=yt,t.weekdays=av,t.parseZone=hv,t.localeData=pt,t.isDuration=uu,t.monthsShort=lv,t.weekdaysMin=yv,t.defineLocale=tu,t.updateLocale=uc,t.locales=fc,t.weekdaysShort=vv,t.normalizeUnits=nt,t.relativeTimeRounding=uy,t.relativeTimeThreshold=fy,t.calendarFormat=hl,t.prototype=n,t}),"undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(n){"use strict";var t=n.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||1==t[0]&&9==t[1]&&t[2]<1||t[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4");}(jQuery);+function(n){"use strict";function t(){var i=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},n;for(n in t)if(void 0!==i.style[n])return{end:t[n]};return!1}n.fn.emulateTransitionEnd=function(t){var i=!1,u=this,r;n(this).one("bsTransitionEnd",function(){i=!0});return r=function(){i||n(u).trigger(n.support.transition.end)},setTimeout(r,t),this};n(function(){n.support.transition=t();n.support.transition&&(n.event.special.bsTransitionEnd={bindType:n.support.transition.end,delegateType:n.support.transition.end,handle:function(t){if(n(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}})})}(jQuery);+function(n){"use strict";function u(i){return this.each(function(){var r=n(this),u=r.data("bs.alert");u||r.data("bs.alert",u=new t(this));"string"==typeof i&&u[i].call(r)})}var i='[data-dismiss="alert"]',t=function(t){n(t).on("click",i,this.close)},r;t.VERSION="3.3.7";t.TRANSITION_DURATION=150;t.prototype.close=function(i){function e(){r.detach().trigger("closed.bs.alert").remove()}var f=n(this),u=f.attr("data-target"),r;u||(u=f.attr("href"),u=u&&u.replace(/.*(?=#[^\s]*$)/,""));r=n("#"===u?[]:u);i&&i.preventDefault();r.length||(r=f.closest(".alert"));r.trigger(i=n.Event("close.bs.alert"));i.isDefaultPrevented()||(r.removeClass("in"),n.support.transition&&r.hasClass("fade")?r.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e())};r=n.fn.alert;n.fn.alert=u;n.fn.alert.Constructor=t;n.fn.alert.noConflict=function(){return n.fn.alert=r,this};n(document).on("click.bs.alert.data-api",i,t.prototype.close)}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.button"),f="object"==typeof i&&i;r||u.data("bs.button",r=new t(this,f));"toggle"==i?r.toggle():i&&r.setState(i)})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.isLoading=!1},r;t.VERSION="3.3.7";t.DEFAULTS={loadingText:"loading..."};t.prototype.setState=function(t){var i="disabled",r=this.$element,f=r.is("input")?"val":"html",u=r.data();t+="Text";null==u.resetText&&r.data("resetText",r[f]());setTimeout(n.proxy(function(){r[f](null==u[t]?this.options[t]:u[t]);"loadingText"==t?(this.isLoading=!0,r.addClass(i).attr(i,i).prop(i,!0)):this.isLoading&&(this.isLoading=!1,r.removeClass(i).removeAttr(i).prop(i,!1))},this),0)};t.prototype.toggle=function(){var t=!0,i=this.$element.closest('[data-toggle="buttons"]'),n;i.length?(n=this.$element.find("input"),"radio"==n.prop("type")?(n.prop("checked")&&(t=!1),i.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==n.prop("type")&&(n.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),n.prop("checked",this.$element.hasClass("active")),t&&n.trigger("change")):(this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active"))};r=n.fn.button;n.fn.button=i;n.fn.button.Constructor=t;n.fn.button.noConflict=function(){return n.fn.button=r,this};n(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(t){var r=n(t.target).closest(".btn");i.call(r,"toggle");n(t.target).is('input[type="radio"], input[type="checkbox"]')||(t.preventDefault(),r.is("input,button")?r.trigger("focus"):r.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(t){n(t.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(t.type))})}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.carousel"),f=n.extend({},t.DEFAULTS,u.data(),"object"==typeof i&&i),e="string"==typeof i?i:f.slide;r||u.data("bs.carousel",r=new t(this,f));"number"==typeof i?r.to(i):e?r[e]():f.interval&&r.pause().cycle()})}var t=function(t,i){this.$element=n(t);this.$indicators=this.$element.find(".carousel-indicators");this.options=i;this.paused=null;this.sliding=null;this.interval=null;this.$active=null;this.$items=null;this.options.keyboard&&this.$element.on("keydown.bs.carousel",n.proxy(this.keydown,this));"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",n.proxy(this.pause,this)).on("mouseleave.bs.carousel",n.proxy(this.cycle,this))},u,r;t.VERSION="3.3.7";t.TRANSITION_DURATION=600;t.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0};t.prototype.keydown=function(n){if(!/input|textarea/i.test(n.target.tagName)){switch(n.which){case 37:this.prev();break;case 39:this.next();break;default:return}n.preventDefault()}};t.prototype.cycle=function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(n.proxy(this.next,this),this.options.interval)),this};t.prototype.getItemIndex=function(n){return this.$items=n.parent().children(".item"),this.$items.index(n||this.$active)};t.prototype.getItemForDirection=function(n,t){var i=this.getItemIndex(t),f="prev"==n&&0===i||"next"==n&&i==this.$items.length-1,r,u;return f&&!this.options.wrap?t:(r="prev"==n?-1:1,u=(i+r)%this.$items.length,this.$items.eq(u))};t.prototype.to=function(n){var i=this,t=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(n>this.$items.length-1||n<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){i.to(n)}):t==n?this.pause().cycle():this.slide(n>t?"next":"prev",this.$items.eq(n))};t.prototype.pause=function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&n.support.transition&&(this.$element.trigger(n.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this};t.prototype.next=function(){if(!this.sliding)return this.slide("next")};t.prototype.prev=function(){if(!this.sliding)return this.slide("prev")};t.prototype.slide=function(i,r){var e=this.$element.find(".item.active"),u=r||this.getItemForDirection(i,e),l=this.interval,f="next"==i?"left":"right",a=this,o,s,h,c;return u.hasClass("active")?this.sliding=!1:(o=u[0],s=n.Event("slide.bs.carousel",{relatedTarget:o,direction:f}),(this.$element.trigger(s),!s.isDefaultPrevented())?((this.sliding=!0,l&&this.pause(),this.$indicators.length)&&(this.$indicators.find(".active").removeClass("active"),h=n(this.$indicators.children()[this.getItemIndex(u)]),h&&h.addClass("active")),c=n.Event("slid.bs.carousel",{relatedTarget:o,direction:f}),n.support.transition&&this.$element.hasClass("slide")?(u.addClass(i),u[0].offsetWidth,e.addClass(f),u.addClass(f),e.one("bsTransitionEnd",function(){u.removeClass([i,f].join(" ")).addClass("active");e.removeClass(["active",f].join(" "));a.sliding=!1;setTimeout(function(){a.$element.trigger(c)},0)}).emulateTransitionEnd(t.TRANSITION_DURATION)):(e.removeClass("active"),u.addClass("active"),this.sliding=!1,this.$element.trigger(c)),l&&this.cycle(),this):void 0)};u=n.fn.carousel;n.fn.carousel=i;n.fn.carousel.Constructor=t;n.fn.carousel.noConflict=function(){return n.fn.carousel=u,this};r=function(t){var o,r=n(this),u=n(r.attr("data-target")||(o=r.attr("href"))&&o.replace(/.*(?=#[^\s]+$)/,"")),e,f;u.hasClass("carousel")&&(e=n.extend({},u.data(),r.data()),f=r.attr("data-slide-to"),f&&(e.interval=!1),i.call(u,e),f&&u.data("bs.carousel").to(f),t.preventDefault())};n(document).on("click.bs.carousel.data-api","[data-slide]",r).on("click.bs.carousel.data-api","[data-slide-to]",r);n(window).on("load",function(){n('[data-ride="carousel"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery);+function(n){"use strict";function r(t){var i,r=t.attr("data-target")||(i=t.attr("href"))&&i.replace(/.*(?=#[^\s]+$)/,"");return n(r)}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.collapse"),f=n.extend({},t.DEFAULTS,u.data(),"object"==typeof i&&i);!r&&f.toggle&&/show|hide/.test(i)&&(f.toggle=!1);r||u.data("bs.collapse",r=new t(this,f));"string"==typeof i&&r[i]()})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.$trigger=n('[data-toggle="collapse"][href="#'+i.id+'"],[data-toggle="collapse"][data-target="#'+i.id+'"]');this.transitioning=null;this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger);this.options.toggle&&this.toggle()},u;t.VERSION="3.3.7";t.TRANSITION_DURATION=350;t.DEFAULTS={toggle:!0};t.prototype.dimension=function(){var n=this.$element.hasClass("width");return n?"width":"height"};t.prototype.show=function(){var f,r,e,u,o,s;if(!this.transitioning&&!this.$element.hasClass("in")&&(r=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing"),!(r&&r.length&&(f=r.data("bs.collapse"),f&&f.transitioning))&&(e=n.Event("show.bs.collapse"),this.$element.trigger(e),!e.isDefaultPrevented()))){if(r&&r.length&&(i.call(r,"hide"),f||r.data("bs.collapse",null)),u=this.dimension(),this.$element.removeClass("collapse").addClass("collapsing")[u](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1,o=function(){this.$element.removeClass("collapsing").addClass("collapse in")[u]("");this.transitioning=0;this.$element.trigger("shown.bs.collapse")},!n.support.transition)return o.call(this);s=n.camelCase(["scroll",u].join("-"));this.$element.one("bsTransitionEnd",n.proxy(o,this)).emulateTransitionEnd(t.TRANSITION_DURATION)[u](this.$element[0][s])}};t.prototype.hide=function(){var r,i,u;if(!this.transitioning&&this.$element.hasClass("in")&&(r=n.Event("hide.bs.collapse"),this.$element.trigger(r),!r.isDefaultPrevented()))return i=this.dimension(),this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1,u=function(){this.transitioning=0;this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")},n.support.transition?void this.$element[i](0).one("bsTransitionEnd",n.proxy(u,this)).emulateTransitionEnd(t.TRANSITION_DURATION):u.call(this)};t.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};t.prototype.getParent=function(){return n(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(n.proxy(function(t,i){var u=n(i);this.addAriaAndCollapsedClass(r(u),u)},this)).end()};t.prototype.addAriaAndCollapsedClass=function(n,t){var i=n.hasClass("in");n.attr("aria-expanded",i);t.toggleClass("collapsed",!i).attr("aria-expanded",i)};u=n.fn.collapse;n.fn.collapse=i;n.fn.collapse.Constructor=t;n.fn.collapse.noConflict=function(){return n.fn.collapse=u,this};n(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(t){var u=n(this);u.attr("data-target")||t.preventDefault();var f=r(u),e=f.data("bs.collapse"),o=e?"toggle":u.data();i.call(f,o)})}(jQuery);+function(n){"use strict";function r(t){var i=t.attr("data-target"),r;return i||(i=t.attr("href"),i=i&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,"")),r=i&&n(i),r&&r.length?r:t.parent()}function u(t){t&&3===t.which||(n(o).remove(),n(i).each(function(){var u=n(this),i=r(u),f={relatedTarget:this};i.hasClass("open")&&(t&&"click"==t.type&&/input|textarea/i.test(t.target.tagName)&&n.contains(i[0],t.target)||(i.trigger(t=n.Event("hide.bs.dropdown",f)),t.isDefaultPrevented()||(u.attr("aria-expanded","false"),i.removeClass("open").trigger(n.Event("hidden.bs.dropdown",f)))))}))}function e(i){return this.each(function(){var r=n(this),u=r.data("bs.dropdown");u||r.data("bs.dropdown",u=new t(this));"string"==typeof i&&u[i].call(r)})}var o=".dropdown-backdrop",i='[data-toggle="dropdown"]',t=function(t){n(t).on("click.bs.dropdown",this.toggle)},f;t.VERSION="3.3.7";t.prototype.toggle=function(t){var f=n(this),i,o,e;if(!f.is(".disabled, :disabled")){if(i=r(f),o=i.hasClass("open"),u(),!o){if("ontouchstart"in document.documentElement&&!i.closest(".navbar-nav").length&&n(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(n(this)).on("click",u),e={relatedTarget:this},i.trigger(t=n.Event("show.bs.dropdown",e)),t.isDefaultPrevented())return;f.trigger("focus").attr("aria-expanded","true");i.toggleClass("open").trigger(n.Event("shown.bs.dropdown",e))}return!1}};t.prototype.keydown=function(t){var e,o,s,h,f,u;if(/(38|40|27|32)/.test(t.which)&&!/input|textarea/i.test(t.target.tagName)&&(e=n(this),t.preventDefault(),t.stopPropagation(),!e.is(".disabled, :disabled"))){if(o=r(e),s=o.hasClass("open"),!s&&27!=t.which||s&&27==t.which)return 27==t.which&&o.find(i).trigger("focus"),e.trigger("click");h=" li:not(.disabled):visible a";f=o.find(".dropdown-menu"+h);f.length&&(u=f.index(t.target),38==t.which&&u>0&&u--,40==t.which&&u<f.length-1&&u++,~u||(u=0),f.eq(u).trigger("focus"))}};f=n.fn.dropdown;n.fn.dropdown=e;n.fn.dropdown.Constructor=t;n.fn.dropdown.noConflict=function(){return n.fn.dropdown=f,this};n(document).on("click.bs.dropdown.data-api",u).on("click.bs.dropdown.data-api",".dropdown form",function(n){n.stopPropagation()}).on("click.bs.dropdown.data-api",i,t.prototype.toggle).on("keydown.bs.dropdown.data-api",i,t.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",t.prototype.keydown)}(jQuery);+function(n){"use strict";function i(i,r){return this.each(function(){var f=n(this),u=f.data("bs.modal"),e=n.extend({},t.DEFAULTS,f.data(),"object"==typeof i&&i);u||f.data("bs.modal",u=new t(this,e));"string"==typeof i?u[i](r):e.show&&u.show(r)})}var t=function(t,i){this.options=i;this.$body=n(document.body);this.$element=n(t);this.$dialog=this.$element.find(".modal-dialog");this.$backdrop=null;this.isShown=null;this.originalBodyPad=null;this.scrollbarWidth=0;this.ignoreBackdropClick=!1;this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,n.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))},r;t.VERSION="3.3.7";t.TRANSITION_DURATION=300;t.BACKDROP_TRANSITION_DURATION=150;t.DEFAULTS={backdrop:!0,keyboard:!0,show:!0};t.prototype.toggle=function(n){return this.isShown?this.hide():this.show(n)};t.prototype.show=function(i){var r=this,u=n.Event("show.bs.modal",{relatedTarget:i});this.$element.trigger(u);this.isShown||u.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',n.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){r.$element.one("mouseup.dismiss.bs.modal",function(t){n(t.target).is(r.$element)&&(r.ignoreBackdropClick=!0)})}),this.backdrop(function(){var f=n.support.transition&&r.$element.hasClass("fade"),u;r.$element.parent().length||r.$element.appendTo(r.$body);r.$element.show().scrollTop(0);r.adjustDialog();f&&r.$element[0].offsetWidth;r.$element.addClass("in");r.enforceFocus();u=n.Event("shown.bs.modal",{relatedTarget:i});f?r.$dialog.one("bsTransitionEnd",function(){r.$element.trigger("focus").trigger(u)}).emulateTransitionEnd(t.TRANSITION_DURATION):r.$element.trigger("focus").trigger(u)}))};t.prototype.hide=function(i){i&&i.preventDefault();i=n.Event("hide.bs.modal");this.$element.trigger(i);this.isShown&&!i.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),n(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),n.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",n.proxy(this.hideModal,this)).emulateTransitionEnd(t.TRANSITION_DURATION):this.hideModal())};t.prototype.enforceFocus=function(){n(document).off("focusin.bs.modal").on("focusin.bs.modal",n.proxy(function(n){document===n.target||this.$element[0]===n.target||this.$element.has(n.target).length||this.$element.trigger("focus")},this))};t.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",n.proxy(function(n){27==n.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")};t.prototype.resize=function(){this.isShown?n(window).on("resize.bs.modal",n.proxy(this.handleUpdate,this)):n(window).off("resize.bs.modal")};t.prototype.hideModal=function(){var n=this;this.$element.hide();this.backdrop(function(){n.$body.removeClass("modal-open");n.resetAdjustments();n.resetScrollbar();n.$element.trigger("hidden.bs.modal")})};t.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove();this.$backdrop=null};t.prototype.backdrop=function(i){var e=this,f=this.$element.hasClass("fade")?"fade":"",r,u;if(this.isShown&&this.options.backdrop){if(r=n.support.transition&&f,this.$backdrop=n(document.createElement("div")).addClass("modal-backdrop "+f).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",n.proxy(function(n){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(n.target===n.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),r&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!i)return;r?this.$backdrop.one("bsTransitionEnd",i).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):i()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),u=function(){e.removeBackdrop();i&&i()},n.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",u).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):u()):i&&i()};t.prototype.handleUpdate=function(){this.adjustDialog()};t.prototype.adjustDialog=function(){var n=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&n?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!n?this.scrollbarWidth:""})};t.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})};t.prototype.checkScrollbar=function(){var n=window.innerWidth,t;n||(t=document.documentElement.getBoundingClientRect(),n=t.right-Math.abs(t.left));this.bodyIsOverflowing=document.body.clientWidth<n;this.scrollbarWidth=this.measureScrollbar()};t.prototype.setScrollbar=function(){var n=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"";this.bodyIsOverflowing&&this.$body.css("padding-right",n+this.scrollbarWidth)};t.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)};t.prototype.measureScrollbar=function(){var n=document.createElement("div"),t;return n.className="modal-scrollbar-measure",this.$body.append(n),t=n.offsetWidth-n.clientWidth,this.$body[0].removeChild(n),t};r=n.fn.modal;n.fn.modal=i;n.fn.modal.Constructor=t;n.fn.modal.noConflict=function(){return n.fn.modal=r,this};n(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(t){var r=n(this),f=r.attr("href"),u=n(r.attr("data-target")||f&&f.replace(/.*(?=#[^\s]+$)/,"")),e=u.data("bs.modal")?"toggle":n.extend({remote:!/#/.test(f)&&f},u.data(),r.data());r.is("a")&&t.preventDefault();u.one("show.bs.modal",function(n){n.isDefaultPrevented()||u.one("hidden.bs.modal",function(){r.is(":visible")&&r.trigger("focus")})});i.call(u,e,this)})}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.tooltip"),f="object"==typeof i&&i;!r&&/destroy|hide/.test(i)||(r||u.data("bs.tooltip",r=new t(this,f)),"string"==typeof i&&r[i]())})}var t=function(n,t){this.type=null;this.options=null;this.enabled=null;this.timeout=null;this.hoverState=null;this.$element=null;this.inState=null;this.init("tooltip",n,t)},i;t.VERSION="3.3.7";t.TRANSITION_DURATION=150;t.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"><\/div><div class="tooltip-inner"><\/div><\/div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}};t.prototype.init=function(t,i,r){var f,e,u,o,s;if(this.enabled=!0,this.type=t,this.$element=n(i),this.options=this.getOptions(r),this.$viewport=this.options.viewport&&n(n.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(f=this.options.trigger.split(" "),e=f.length;e--;)if(u=f[e],"click"==u)this.$element.on("click."+this.type,this.options.selector,n.proxy(this.toggle,this));else"manual"!=u&&(o="hover"==u?"mouseenter":"focusin",s="hover"==u?"mouseleave":"focusout",this.$element.on(o+"."+this.type,this.options.selector,n.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,n.proxy(this.leave,this)));this.options.selector?this._options=n.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()};t.prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.getOptions=function(t){return t=n.extend({},this.getDefaults(),this.$element.data(),t),t.delay&&"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),t};t.prototype.getDelegateOptions=function(){var t={},i=this.getDefaults();return this._options&&n.each(this._options,function(n,r){i[n]!=r&&(t[n]=r)}),t};t.prototype.enter=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);return i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState["focusin"==t.type?"focus":"hover"]=!0),i.tip().hasClass("in")||"in"==i.hoverState?void(i.hoverState="in"):(clearTimeout(i.timeout),i.hoverState="in",i.options.delay&&i.options.delay.show?void(i.timeout=setTimeout(function(){"in"==i.hoverState&&i.show()},i.options.delay.show)):i.show())};t.prototype.isInStateTrue=function(){for(var n in this.inState)if(this.inState[n])return!0;return!1};t.prototype.leave=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState["focusout"==t.type?"focus":"hover"]=!1),!i.isInStateTrue())return clearTimeout(i.timeout),i.hoverState="out",i.options.delay&&i.options.delay.hide?void(i.timeout=setTimeout(function(){"out"==i.hoverState&&i.hide()},i.options.delay.hide)):i.hide()};t.prototype.show=function(){var c=n.Event("show.bs."+this.type),l,p,e,w,h;if(this.hasContent()&&this.enabled){if(this.$element.trigger(c),l=n.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]),c.isDefaultPrevented()||!l)return;var u=this,r=this.tip(),a=this.getUID(this.type);this.setContent();r.attr("id",a);this.$element.attr("aria-describedby",a);this.options.animation&&r.addClass("fade");var i="function"==typeof this.options.placement?this.options.placement.call(this,r[0],this.$element[0]):this.options.placement,v=/\s?auto?\s?/i,y=v.test(i);y&&(i=i.replace(v,"")||"top");r.detach().css({top:0,left:0,display:"block"}).addClass(i).data("bs."+this.type,this);this.options.container?r.appendTo(this.options.container):r.insertAfter(this.$element);this.$element.trigger("inserted.bs."+this.type);var f=this.getPosition(),o=r[0].offsetWidth,s=r[0].offsetHeight;y&&(p=i,e=this.getPosition(this.$viewport),i="bottom"==i&&f.bottom+s>e.bottom?"top":"top"==i&&f.top-s<e.top?"bottom":"right"==i&&f.right+o>e.width?"left":"left"==i&&f.left-o<e.left?"right":i,r.removeClass(p).addClass(i));w=this.getCalculatedOffset(i,f,o,s);this.applyPlacement(w,i);h=function(){var n=u.hoverState;u.$element.trigger("shown.bs."+u.type);u.hoverState=null;"out"==n&&u.leave(u)};n.support.transition&&this.$tip.hasClass("fade")?r.one("bsTransitionEnd",h).emulateTransitionEnd(t.TRANSITION_DURATION):h()}};t.prototype.applyPlacement=function(t,i){var r=this.tip(),l=r[0].offsetWidth,e=r[0].offsetHeight,o=parseInt(r.css("margin-top"),10),s=parseInt(r.css("margin-left"),10),h,f,u;isNaN(o)&&(o=0);isNaN(s)&&(s=0);t.top+=o;t.left+=s;n.offset.setOffset(r[0],n.extend({using:function(n){r.css({top:Math.round(n.top),left:Math.round(n.left)})}},t),0);r.addClass("in");h=r[0].offsetWidth;f=r[0].offsetHeight;"top"==i&&f!=e&&(t.top=t.top+e-f);u=this.getViewportAdjustedDelta(i,t,h,f);u.left?t.left+=u.left:t.top+=u.top;var c=/top|bottom/.test(i),a=c?2*u.left-l+h:2*u.top-e+f,v=c?"offsetWidth":"offsetHeight";r.offset(t);this.replaceArrow(a,r[0][v],c)};t.prototype.replaceArrow=function(n,t,i){this.arrow().css(i?"left":"top",50*(1-n/t)+"%").css(i?"top":"left","")};t.prototype.setContent=function(){var n=this.tip(),t=this.getTitle();n.find(".tooltip-inner")[this.options.html?"html":"text"](t);n.removeClass("fade in top bottom left right")};t.prototype.hide=function(i){function f(){"in"!=r.hoverState&&u.detach();r.$element&&r.$element.removeAttr("aria-describedby").trigger("hidden.bs."+r.type);i&&i()}var r=this,u=n(this.$tip),e=n.Event("hide.bs."+this.type);if(this.$element.trigger(e),!e.isDefaultPrevented())return u.removeClass("in"),n.support.transition&&u.hasClass("fade")?u.one("bsTransitionEnd",f).emulateTransitionEnd(t.TRANSITION_DURATION):f(),this.hoverState=null,this};t.prototype.fixTitle=function(){var n=this.$element;(n.attr("title")||"string"!=typeof n.attr("data-original-title"))&&n.attr("data-original-title",n.attr("title")||"").attr("title","")};t.prototype.hasContent=function(){return this.getTitle()};t.prototype.getPosition=function(t){t=t||this.$element;var r=t[0],u="BODY"==r.tagName,i=r.getBoundingClientRect();null==i.width&&(i=n.extend({},i,{width:i.right-i.left,height:i.bottom-i.top}));var f=window.SVGElement&&r instanceof window.SVGElement,e=u?{top:0,left:0}:f?null:t.offset(),o={scroll:u?document.documentElement.scrollTop||document.body.scrollTop:t.scrollTop()},s=u?{width:n(window).width(),height:n(window).height()}:null;return n.extend({},i,o,s,e)};t.prototype.getCalculatedOffset=function(n,t,i,r){return"bottom"==n?{top:t.top+t.height,left:t.left+t.width/2-i/2}:"top"==n?{top:t.top-r,left:t.left+t.width/2-i/2}:"left"==n?{top:t.top+t.height/2-r/2,left:t.left-i}:{top:t.top+t.height/2-r/2,left:t.left+t.width}};t.prototype.getViewportAdjustedDelta=function(n,t,i,r){var f={top:0,left:0},e,u,o,s,h,c;return this.$viewport?(e=this.options.viewport&&this.options.viewport.padding||0,u=this.getPosition(this.$viewport),/right|left/.test(n)?(o=t.top-e-u.scroll,s=t.top+e-u.scroll+r,o<u.top?f.top=u.top-o:s>u.top+u.height&&(f.top=u.top+u.height-s)):(h=t.left-e,c=t.left+e+i,h<u.left?f.left=u.left-h:c>u.right&&(f.left=u.left+u.width-c)),f):f};t.prototype.getTitle=function(){var t=this.$element,n=this.options;return t.attr("data-original-title")||("function"==typeof n.title?n.title.call(t[0]):n.title)};t.prototype.getUID=function(n){do n+=~~(1e6*Math.random());while(document.getElementById(n));return n};t.prototype.tip=function(){if(!this.$tip&&(this.$tip=n(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")};t.prototype.enable=function(){this.enabled=!0};t.prototype.disable=function(){this.enabled=!1};t.prototype.toggleEnabled=function(){this.enabled=!this.enabled};t.prototype.toggle=function(t){var i=this;t&&(i=n(t.currentTarget).data("bs."+this.type),i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)));t?(i.inState.click=!i.inState.click,i.isInStateTrue()?i.enter(i):i.leave(i)):i.tip().hasClass("in")?i.leave(i):i.enter(i)};t.prototype.destroy=function(){var n=this;clearTimeout(this.timeout);this.hide(function(){n.$element.off("."+n.type).removeData("bs."+n.type);n.$tip&&n.$tip.detach();n.$tip=null;n.$arrow=null;n.$viewport=null;n.$element=null})};i=n.fn.tooltip;n.fn.tooltip=r;n.fn.tooltip.Constructor=t;n.fn.tooltip.noConflict=function(){return n.fn.tooltip=i,this}}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.popover"),f="object"==typeof i&&i;!r&&/destroy|hide/.test(i)||(r||u.data("bs.popover",r=new t(this,f)),"string"==typeof i&&r[i]())})}var t=function(n,t){this.init("popover",n,t)},i;if(!n.fn.tooltip)throw new Error("Popover requires tooltip.js");t.VERSION="3.3.7";t.DEFAULTS=n.extend({},n.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"><\/div><h3 class="popover-title"><\/h3><div class="popover-content"><\/div><\/div>'});t.prototype=n.extend({},n.fn.tooltip.Constructor.prototype);t.prototype.constructor=t;t.prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.setContent=function(){var n=this.tip(),i=this.getTitle(),t=this.getContent();n.find(".popover-title")[this.options.html?"html":"text"](i);n.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof t?"html":"append":"text"](t);n.removeClass("fade top bottom left right in");n.find(".popover-title").html()||n.find(".popover-title").hide()};t.prototype.hasContent=function(){return this.getTitle()||this.getContent()};t.prototype.getContent=function(){var t=this.$element,n=this.options;return t.attr("data-content")||("function"==typeof n.content?n.content.call(t[0]):n.content)};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};i=n.fn.popover;n.fn.popover=r;n.fn.popover.Constructor=t;n.fn.popover.noConflict=function(){return n.fn.popover=i,this}}(jQuery);+function(n){"use strict";function t(i,r){this.$body=n(document.body);this.$scrollElement=n(n(i).is(document.body)?window:i);this.options=n.extend({},t.DEFAULTS,r);this.selector=(this.options.target||"")+" .nav li > a";this.offsets=[];this.targets=[];this.activeTarget=null;this.scrollHeight=0;this.$scrollElement.on("scroll.bs.scrollspy",n.proxy(this.process,this));this.refresh();this.process()}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.scrollspy"),f="object"==typeof i&&i;r||u.data("bs.scrollspy",r=new t(this,f));"string"==typeof i&&r[i]()})}t.VERSION="3.3.7";t.DEFAULTS={offset:10};t.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)};t.prototype.refresh=function(){var t=this,i="offset",r=0;this.offsets=[];this.targets=[];this.scrollHeight=this.getScrollHeight();n.isWindow(this.$scrollElement[0])||(i="position",r=this.$scrollElement.scrollTop());this.$body.find(this.selector).map(function(){var f=n(this),u=f.data("target")||f.attr("href"),t=/^#./.test(u)&&n(u);return t&&t.length&&t.is(":visible")&&[[t[i]().top+r,u]]||null}).sort(function(n,t){return n[0]-t[0]}).each(function(){t.offsets.push(this[0]);t.targets.push(this[1])})};t.prototype.process=function(){var n,i=this.$scrollElement.scrollTop()+this.options.offset,f=this.getScrollHeight(),e=this.options.offset+f-this.$scrollElement.height(),t=this.offsets,r=this.targets,u=this.activeTarget;if(this.scrollHeight!=f&&this.refresh(),i>=e)return u!=(n=r[r.length-1])&&this.activate(n);if(u&&i<t[0])return this.activeTarget=null,this.clear();for(n=t.length;n--;)u!=r[n]&&i>=t[n]&&(void 0===t[n+1]||i<t[n+1])&&this.activate(r[n])};t.prototype.activate=function(t){this.activeTarget=t;this.clear();var r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',i=n(r).parents("li").addClass("active");i.parent(".dropdown-menu").length&&(i=i.closest("li.dropdown").addClass("active"));i.trigger("activate.bs.scrollspy")};t.prototype.clear=function(){n(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var r=n.fn.scrollspy;n.fn.scrollspy=i;n.fn.scrollspy.Constructor=t;n.fn.scrollspy.noConflict=function(){return n.fn.scrollspy=r,this};n(window).on("load.bs.scrollspy.data-api",function(){n('[data-spy="scroll"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.tab");r||u.data("bs.tab",r=new t(this));"string"==typeof i&&r[i]()})}var t=function(t){this.element=n(t)},u,i;t.VERSION="3.3.7";t.TRANSITION_DURATION=150;t.prototype.show=function(){var t=this.element,f=t.closest("ul:not(.dropdown-menu)"),i=t.data("target"),u;if(i||(i=t.attr("href"),i=i&&i.replace(/.*(?=#[^\s]*$)/,"")),!t.parent("li").hasClass("active")){var r=f.find(".active:last a"),e=n.Event("hide.bs.tab",{relatedTarget:t[0]}),o=n.Event("show.bs.tab",{relatedTarget:r[0]});(r.trigger(e),t.trigger(o),o.isDefaultPrevented()||e.isDefaultPrevented())||(u=n(i),this.activate(t.closest("li"),f),this.activate(u,u.parent(),function(){r.trigger({type:"hidden.bs.tab",relatedTarget:t[0]});t.trigger({type:"shown.bs.tab",relatedTarget:r[0]})}))}};t.prototype.activate=function(i,r,u){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1);i.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0);o?(i[0].offsetWidth,i.addClass("in")):i.removeClass("fade");i.parent(".dropdown-menu").length&&i.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0);u&&u()}var f=r.find("> .active"),o=u&&n.support.transition&&(f.length&&f.hasClass("fade")||!!r.find("> .fade").length);f.length&&o?f.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e();f.removeClass("in")};u=n.fn.tab;n.fn.tab=r;n.fn.tab.Constructor=t;n.fn.tab.noConflict=function(){return n.fn.tab=u,this};i=function(t){t.preventDefault();r.call(n(this),"show")};n(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',i).on("click.bs.tab.data-api",'[data-toggle="pill"]',i)}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.affix"),f="object"==typeof i&&i;r||u.data("bs.affix",r=new t(this,f));"string"==typeof i&&r[i]()})}var t=function(i,r){this.options=n.extend({},t.DEFAULTS,r);this.$target=n(this.options.target).on("scroll.bs.affix.data-api",n.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",n.proxy(this.checkPositionWithEventLoop,this));this.$element=n(i);this.affixed=null;this.unpin=null;this.pinnedOffset=null;this.checkPosition()},r;t.VERSION="3.3.7";t.RESET="affix affix-top affix-bottom";t.DEFAULTS={offset:0,target:window};t.prototype.getState=function(n,t,i,r){var u=this.$target.scrollTop(),f=this.$element.offset(),e=this.$target.height();if(null!=i&&"top"==this.affixed)return u<i&&"top";if("bottom"==this.affixed)return null!=i?!(u+this.unpin<=f.top)&&"bottom":!(u+e<=n-r)&&"bottom";var o=null==this.affixed,s=o?u:f.top,h=o?e:t;return null!=i&&u<=i?"top":null!=r&&s+h>=n-r&&"bottom"};t.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(t.RESET).addClass("affix");var n=this.$target.scrollTop(),i=this.$element.offset();return this.pinnedOffset=i.top-n};t.prototype.checkPositionWithEventLoop=function(){setTimeout(n.proxy(this.checkPosition,this),1)};t.prototype.checkPosition=function(){var i,e,o;if(this.$element.is(":visible")){var s=this.$element.height(),r=this.options.offset,f=r.top,u=r.bottom,h=Math.max(n(document).height(),n(document.body).height());if("object"!=typeof r&&(u=f=r),"function"==typeof f&&(f=r.top(this.$element)),"function"==typeof u&&(u=r.bottom(this.$element)),i=this.getState(h,s,f,u),this.affixed!=i){if(null!=this.unpin&&this.$element.css("top",""),e="affix"+(i?"-"+i:""),o=n.Event(e+".bs.affix"),this.$element.trigger(o),o.isDefaultPrevented())return;this.affixed=i;this.unpin="bottom"==i?this.getPinnedOffset():null;this.$element.removeClass(t.RESET).addClass(e).trigger(e.replace("affix","affixed")+".bs.affix")}"bottom"==i&&this.$element.offset({top:h-s-u})}};r=n.fn.affix;n.fn.affix=i;n.fn.affix.Constructor=t;n.fn.affix.noConflict=function(){return n.fn.affix=r,this};n(window).on("load",function(){n('[data-spy="affix"]').each(function(){var r=n(this),t=r.data();t.offset=t.offset||{};null!=t.offsetBottom&&(t.offset.bottom=t.offsetBottom);null!=t.offsetTop&&(t.offset.top=t.offsetTop);i.call(r,t)})})}(jQuery);window.matchMedia=window.matchMedia||function(n){var u,i=n.documentElement,f=i.firstElementChild||i.firstChild,r=n.createElement("body"),t=n.createElement("div");return t.id="mq-test-1",t.style.cssText="position:absolute;top:-100em",r.style.background="none",r.appendChild(t),function(n){return t.innerHTML='&shy;<style media="'+n+'"> #mq-test-1 { width: 42px; }<\/style>',i.insertBefore(r,f),u=t.offsetWidth==42,i.removeChild(r),{matches:u,media:n}}}(document),function(n){function d(){a(!0)}if(n.respond={},respond.update=function(){},respond.mediaQueriesSupported=n.matchMedia&&n.matchMedia("only all").matches,!respond.mediaQueriesSupported){var t=n.document,i=t.documentElement,e=[],u=[],r=[],o={},v=30,f=t.getElementsByTagName("head")[0]||i,g=t.getElementsByTagName("base")[0],s=f.getElementsByTagName("link"),h=[],y=function(){for(var f=s,c=f.length,r=0,t,i,u,e;r<c;r++)t=f[r],i=t.href,u=t.media,e=t.rel&&t.rel.toLowerCase()==="stylesheet",!i||!e||o[i]||(t.styleSheet&&t.styleSheet.rawCssText?(w(t.styleSheet.rawCssText,i,u),o[i]=!0):(/^([a-zA-Z:]*\/\/)/.test(i)||g)&&i.replace(RegExp.$1,"").split("/")[0]!==n.location.host||h.push({href:i,media:u}));p()},p=function(){if(h.length){var n=h.shift();nt(n.href,function(t){w(t,n.href,n.media);o[n.href]=!0;p()})}},w=function(n,t,i){var o=n.match(/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi),s=o&&o.length||0,t=t.substring(0,t.lastIndexOf("/")),v=function(n){return n.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+t+"$2$3")},y=!s&&i,h=0,f,c,r,l,p;for(t.length&&(t+="/"),y&&(s=1);h<s;h++)for(f=0,y?(c=i,u.push(v(n))):(c=o[h].match(/@media *([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1,u.push(RegExp.$2&&v(RegExp.$2))),l=c.split(","),p=l.length;f<p;f++)r=l[f],e.push({media:r.split("(")[0].match(/(only\s+)?([a-zA-Z]+)\s?/)&&RegExp.$2||"all",rules:u.length-1,hasquery:r.indexOf("(")>-1,minw:r.match(/\(min\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:r.match(/\(max\-width:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||"")});a()},c,b,k=function(){var u,r=t.createElement("div"),n=t.body,f=!1;return r.style.cssText="position:absolute;font-size:1em;width:1em",n||(n=f=t.createElement("body"),n.style.background="none"),n.appendChild(r),i.insertBefore(n,i.firstChild),u=r.offsetWidth,f?i.removeChild(n):n.removeChild(r),l=parseFloat(u)},l,a=function(n){var nt="clientWidth",tt=i[nt],it=t.compatMode==="CSS1Compat"&&tt||t.body[nt]||tt,d={},ot=s[s.length-1],rt=(new Date).getTime(),o,h,g;if(n&&c&&rt-c<v){clearTimeout(b);b=setTimeout(a,v);return}c=rt;for(o in e){var y=e[o],p=y.minw,w=y.maxw,ut=p===null,ft=w===null,et="em";!p||(p=parseFloat(p)*(p.indexOf(et)>-1?l||k():1));!w||(w=parseFloat(w)*(w.indexOf(et)>-1?l||k():1));y.hasquery&&(ut&&ft||!(ut||it>=p)||!(ft||it<=w))||(d[y.media]||(d[y.media]=[]),d[y.media].push(u[y.rules]))}for(o in r)r[o]&&r[o].parentNode===f&&f.removeChild(r[o]);for(o in d)h=t.createElement("style"),g=d[o].join("\n"),h.type="text/css",h.media=o,f.insertBefore(h,ot.nextSibling),h.styleSheet?h.styleSheet.cssText=g:h.appendChild(t.createTextNode(g)),r.push(h)},nt=function(n,t){var i=tt();i&&(i.open("GET",n,!0),i.onreadystatechange=function(){i.readyState==4&&(i.status==200||i.status==304)&&t(i.responseText)},i.readyState!=4)&&i.send(null)},tt=function(){var n=!1;try{n=new XMLHttpRequest}catch(t){n=new ActiveXObject("Microsoft.XMLHTTP")}return function(){return n}}();y();respond.update=y;n.addEventListener?n.addEventListener("resize",d,!1):n.attachEvent&&n.attachEvent("onresize",d)}}(this),function(n){"use strict";function l(n){return function(){for(var i=arguments[0],u,t,r="["+(n?n+":":"")+i+"] http://errors.angularjs.org/1.5.8/"+(n?n+"/":"")+i,i=1;i<arguments.length;i++)r=r+(1==i?"?":"&")+"p"+(i-1)+"=",u=encodeURIComponent,t=arguments[i],t="function"==typeof t?t.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof t?"undefined":"string"!=typeof t?JSON.stringify(t):t,r+=u(t);return Error(r)}}function kt(n){if(null==n||ur(n))return!1;if(c(n)||h(n)||e&&n instanceof e)return!0;var t="length"in Object(n)&&n.length;return w(t)&&(0<=t&&(t-1 in n||n instanceof Array)||"function"==typeof n.item)}function t(n,i,r){var u,e,o;if(n)if(f(n))for(u in n)"prototype"==u||"length"==u||"name"==u||n.hasOwnProperty&&!n.hasOwnProperty(u)||i.call(r,n[u],u,n);else if(c(n)||kt(n))for(o="object"!=typeof n,u=0,e=n.length;u<e;u++)(o||u in n)&&i.call(r,n[u],u,n);else if(n.forEach&&n.forEach!==t)n.forEach(i,r,n);else if(we(n))for(u in n)i.call(r,n[u],u,n);else if("function"==typeof n.hasOwnProperty)for(u in n)n.hasOwnProperty(u)&&i.call(r,n[u],u,n);else for(u in n)wt.call(n,u)&&i.call(r,n[u],u,n);return n}function ve(n,t,i){for(var r=Object.keys(n).sort(),u=0;u<r.length;u++)t.call(i,n[r[u]],r[u]);return r}function ye(n){return function(t,i){n(i,t)}}function bc(){return++ku}function of(n,t,i){for(var e,u,r,l=n.$$hashKey,o=0,v=t.length;o<v;++o)if(e=t[o],s(e)||f(e))for(var a=Object.keys(e),h=0,y=a.length;h<y;h++)u=a[h],r=e[u],i&&s(r)?et(r)?n[u]=new Date(r.valueOf()):rr(r)?n[u]=new RegExp(r):r.nodeName?n[u]=r.cloneNode(!0):hf(r)?n[u]=r.clone():(s(n[u])||(n[u]=c(r)?[]:{}),of(n[u],[r],!0)):n[u]=r;return l?n.$$hashKey=l:delete n.$$hashKey,n}function a(n){return of(n,bt.call(arguments,1),!1)}function kc(n){return of(n,bt.call(arguments,1),!0)}function tt(n){return parseInt(n,10)}function sf(n,t){return a(Object.create(n),t)}function o(){}function ir(n){return n}function ft(n){return function(){return n}}function pe(n){return f(n.toString)&&n.toString!==rt}function r(n){return"undefined"==typeof n}function u(n){return"undefined"!=typeof n}function s(n){return null!==n&&"object"==typeof n}function we(n){return null!==n&&"object"==typeof n&&!oh(n)}function h(n){return"string"==typeof n}function w(n){return"number"==typeof n}function et(n){return"[object Date]"===rt.call(n)}function f(n){return"function"==typeof n}function rr(n){return"[object RegExp]"===rt.call(n)}function ur(n){return n&&n.window===n}function fr(n){return n&&n.$evalAsync&&n.$watch}function ui(n){return"boolean"==typeof n}function dc(n){return n&&w(n.length)&&bv.test(rt.call(n))}function hf(n){return!(!n||!(n.nodeName||n.prop&&n.attr&&n.find))}function gc(n){var i={},t;for(n=n.split(","),t=0;t<n.length;t++)i[n[t]]=!0;return i}function at(n){return v(n.nodeName||n[0]&&n[0].nodeName)}function er(n,t){var i=n.indexOf(t);return 0<=i&&n.splice(i,1),i}function dt(n,i){function o(n,t){var u=t.$$hashKey,i,f;if(c(n))for(i=0,f=n.length;i<f;i++)t.push(r(n[i]));else if(we(n))for(i in n)t[i]=r(n[i]);else if(n&&"function"==typeof n.hasOwnProperty)for(i in n)n.hasOwnProperty(i)&&(t[i]=r(n[i]));else for(i in n)wt.call(n,i)&&(t[i]=r(n[i]));return u?t.$$hashKey=u:delete t.$$hashKey,t}function r(n){var t,i;if(!s(n))return n;if(t=u.indexOf(n),-1!==t)return e[t];if(ur(n)||fr(n))throw hi("cpws");return t=!1,i=h(n),void 0===i&&(i=c(n)?[]:Object.create(oh(n)),t=!0),u.push(n),e.push(i),t?o(n,i):i}function h(n){switch(rt.call(n)){case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Float32Array]":case"[object Float64Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return new n.constructor(r(n.buffer),n.byteOffset,n.length);case"[object ArrayBuffer]":if(!n.slice){var t=new ArrayBuffer(n.byteLength);return new Uint8Array(t).set(new Uint8Array(n)),t}return n.slice(0);case"[object Boolean]":case"[object Number]":case"[object String]":case"[object Date]":return new n.constructor(n.valueOf());case"[object RegExp]":return t=new RegExp(n.source,n.toString().match(/[^\/]*$/)[0]),t.lastIndex=n.lastIndex,t;case"[object Blob]":return new n.constructor([n],{type:n.type})}if(f(n.cloneNode))return n.cloneNode(!0)}var u=[],e=[];if(i){if(dc(i)||"[object ArrayBuffer]"===rt.call(i))throw hi("cpta");if(n===i)throw hi("cpi");return c(i)?i.length=0:t(i,function(n,t){"$$hashKey"!==t&&delete i[t]}),u.push(n),e.push(i),o(n,i)}return r(n)}function ot(n,t){if(n===t)return!0;if(null===n||null===t)return!1;if(n!==n&&t!==t)return!0;var r=typeof n,i;if(r==typeof t&&"object"==r)if(c(n)){if(!c(t))return!1;if((r=n.length)==t.length){for(i=0;i<r;i++)if(!ot(n[i],t[i]))return!1;return!0}}else{if(et(n))return et(t)?ot(n.getTime(),t.getTime()):!1;if(rr(n))return rr(t)?n.toString()==t.toString():!1;if(fr(n)||fr(t)||ur(n)||ur(t)||c(t)||et(t)||rr(t))return!1;r=y();for(i in n)if("$"!==i.charAt(0)&&!f(n[i])){if(!ot(n[i],t[i]))return!1;r[i]=!0}for(i in t)if(!(i in r)&&"$"!==i.charAt(0)&&u(t[i])&&!f(t[i]))return!1;return!0}return!1}function or(n,t,i){return n.concat(bt.call(t,i))}function sr(n,t){var i=2<arguments.length?bt.call(arguments,2):[];return!f(t)||t instanceof RegExp?t:i.length?function(){return arguments.length?t.apply(n,or(i,arguments,0)):t.apply(n,i)}:function(){return arguments.length?t.apply(n,arguments):t.call(n)}}function nl(t,i){var r=i;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?r=void 0:ur(i)?r="$WINDOW":i&&n.document===i?r="$DOCUMENT":fr(i)&&(r="$SCOPE"),r}function hr(n,t){if(!r(n))return w(t)||(t=t?2:null),JSON.stringify(n,nl,t)}function be(n){return h(n)?JSON.parse(n):n}function ke(n,t){n=n.replace(kv,"");var i=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(i)?t:i}function cf(n,t,i){i=i?-1:1;var r=n.getTimezoneOffset();return t=ke(t,r),i*=t-r,n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+i),n}function vt(n){n=e(n).clone();try{n.empty()}catch(i){}var t=e("<div>").append(n).html();try{return n[0].nodeType===di?v(t):t.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(n,t){return"<"+v(t)})}catch(r){return v(t)}}function de(n){try{return decodeURIComponent(n)}catch(t){}}function ge(n){var i={};return t((n||"").split("&"),function(n){var f,t,r;n&&(t=n=n.replace(/\+/g,"%20"),f=n.indexOf("="),-1!==f&&(t=n.substring(0,f),r=n.substring(f+1)),t=de(t),u(t)&&(r=u(r)?de(r):!0,wt.call(i,t)?c(i[t])?i[t].push(r):i[t]=[i[t],r]:i[t]=r))}),i}function lf(n){var i=[];return t(n,function(n,r){c(n)?t(n,function(n){i.push(ht(r,!0)+(!0===n?"":"="+ht(n,!0)))}):i.push(ht(r,!0)+(!0===n?"":"="+ht(n,!0)))}),i.length?i.join("&"):""}function tu(n){return ht(n,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ht(n,t){return encodeURIComponent(n).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,t?"%20":"+")}function tl(n,t){for(var i,u=ki.length,r=0;r<u;++r)if(i=ki[r]+t,h(i=n.getAttribute(i)))return i;return null}function il(n,i){var r,u,f={};t(ki,function(t){t+="app";!r&&n.hasAttribute&&n.hasAttribute(t)&&(r=n,u=n.getAttribute(t))});t(ki,function(t){t+="app";var i;!r&&(i=n.querySelector("["+t.replace(":","\\:")+"]"))&&(r=i,u=i.getAttribute(t))});r&&(f.strictDi=null!==tl(r,"strict-di"),i(r,u?[u]:[],f))}function no(i,r,u){s(u)||(u={});u=a({strictDi:!1},u);var o=function(){if(i=e(i),i.injector()){var t=i[0]===n.document?"document":vt(i);throw hi("btstrpd",t.replace(/</,"&lt;").replace(/>/,"&gt;"));}return r=r||[],r.unshift(["$provide",function(n){n.value("$rootElement",i)}]),u.debugInfoEnabled&&r.push(["$compileProvider",function(n){n.debugInfoEnabled(!0)}]),r.unshift("ng"),t=ar(r,u.strictDi),t.invoke(["$rootScope","$rootElement","$compile","$injector",function(n,t,i,r){n.$apply(function(){t.data("$injector",r);i(t)(n)})}]),t},h=/^NG_ENABLE_DEBUG_INFO!/,c=/^NG_DEFER_BOOTSTRAP!/;if(n&&h.test(n.name)&&(u.debugInfoEnabled=!0,n.name=n.name.replace(h,"")),n&&!c.test(n.name))return o();n.name=n.name.replace(c,"");ut.resumeBootstrap=function(n){return t(n,function(n){r.push(n)}),o()};f(ut.resumeDeferredBootstrap)&&ut.resumeDeferredBootstrap()}function rl(){n.name="NG_ENABLE_DEBUG_INFO!"+n.name;n.location.reload()}function ul(n){if(n=ut.element(n).injector(),!n)throw hi("test");return n.get("$$testability")}function to(n,t){return t=t||"_",n.replace(dv,function(n,i){return(i?t:"")+n.toLowerCase()})}function fl(){var i,t;hh||(t=du(),(ii=r(t)?n.jQuery:t?n[t]:void 0)&&ii.fn.on?(e=ii,a(ii.fn,{scope:nr.scope,isolateScope:nr.isolateScope,controller:nr.controller,injector:nr.injector,inheritedData:nr.inheritedData}),i=ii.cleanData,ii.cleanData=function(n){for(var r,u=0,t;null!=(t=n[u]);u++)(r=ii._data(t,"events"))&&r.$destroy&&ii(t).triggerHandler("$destroy");i(n)}):e=b,ut.element=e,hh=!0)}function iu(n,t,i){if(!n)throw hi("areq",t||"?",i||"required");return n}function vi(n,t,i){return i&&c(n)&&(n=n[n.length-1]),iu(f(n),t,"not a function, got "+(n&&"object"==typeof n?n.constructor.name||"Object":typeof n)),n}function yi(n,t){if("hasOwnProperty"===n)throw hi("badname",t);}function io(n,t,i){if(!t)return n;t=t.split(".");for(var u,e=n,o=t.length,r=0;r<o;r++)u=t[r],n&&(n=(e=n)[u]);return!i&&f(n)?sr(e,n):n}function ru(n){for(var t=n[0],u=n[n.length-1],i,r=1;t!==u&&(t=t.nextSibling);r++)(i||n[r]!==t)&&(i||(i=e(bt.call(n,0,r))),i.push(t));return i||n}function y(){return Object.create(null)}function el(n){function t(n,t,i){return n[t]||(n[t]=i())}var i=l("$injector"),r=l("ng");return n=t(n,"angular",Object),n.$$minErr=n.$$minErr||l,t(n,"module",function(){var n={};return function(u,e,o){if("hasOwnProperty"===u)throw r("badname","module");return e&&n.hasOwnProperty(u)&&(n[u]=null),t(n,u,function(){function t(n,t,i,u){return u||(u=r),function(){return u[i||"push"]([n,t,arguments]),s}}function n(n,t){return function(i,e){return e&&f(e)&&(e.$$moduleName=u),r.push([n,t,arguments]),s}}if(!e)throw i("nomod",u);var r=[],h=[],c=[],l=t("$injector","invoke","push",h),s={_invokeQueue:r,_configBlocks:h,_runBlocks:c,requires:e,name:u,provider:n("$provide","provider"),factory:n("$provide","factory"),service:n("$provide","service"),value:t("$provide","value"),constant:t("$provide","constant","unshift"),decorator:n("$provide","decorator"),animation:n("$animateProvider","register"),filter:n("$filterProvider","register"),controller:n("$controllerProvider","register"),directive:n("$compileProvider","directive"),component:n("$compileProvider","component"),config:l,run:function(n){return c.push(n),this}};return o&&l(o),s})}})}function st(n,t){if(c(n)){t=t||[];for(var i=0,r=n.length;i<r;i++)t[i]=n[i]}else if(s(n))for(i in t=t||{},n)("$"!==i.charAt(0)||"$"!==i.charAt(1))&&(t[i]=n[i]);return t||n}function ol(i){a(i,{bootstrap:no,copy:dt,extend:a,merge:kc,equals:ot,element:e,forEach:t,injector:ar,noop:o,bind:sr,toJson:hr,fromJson:be,identity:ir,isUndefined:r,isDefined:u,isString:h,isFunction:f,isObject:s,isNumber:w,isElement:hf,isArray:c,version:gv,isDate:et,lowercase:v,uppercase:bu,callbacks:{$$counter:0},getTestability:ul,$$minErr:l,$$csp:ci,reloadWithDebugInfo:rl});ue=el(n);ue("ng",["ngLocale"],["$provide",function(n){n.provider({$$sanitizeUri:da});n.provider("$compile",ao).directive({a:tc,input:hc,textarea:hc,form:pp,script:yb,select:bb,style:db,option:kb,ngBind:iw,ngBindHtml:uw,ngBindTemplate:rw,ngClass:ew,ngClassEven:sw,ngClassOdd:ow,ngCloak:hw,ngController:cw,ngForm:wp,ngHide:ob,ngIf:aw,ngInclude:vw,ngInit:pw,ngNonBindable:nb,ngPluralize:ub,ngRepeat:fb,ngShow:eb,ngStyle:sb,ngSwitch:hb,ngSwitchWhen:cb,ngSwitchDefault:lb,ngOptions:rb,ngTransclude:vb,ngModel:kw,ngList:ww,ngChange:fw,pattern:yc,ngPattern:yc,required:vc,ngRequired:vc,minlength:wc,ngMinlength:wc,maxlength:pc,ngMaxlength:pc,ngValue:tw,ngModelOptions:gw}).directive({ngInclude:yw}).directive(kr).directive(cc);n.provider({$anchorScroll:yl,$animate:yy,$animateCss:by,$$animateJs:ay,$$animateQueue:vy,$$AnimateRunner:wy,$$animateAsyncRun:py,$browser:bl,$cacheFactory:kl,$controller:gl,$document:na,$exceptionHandler:ta,$filter:ps,$$forceReflow:dy,$interpolate:sa,$interval:ha,$http:ua,$httpParamSerializer:ia,$httpParamSerializerJQLike:ra,$httpBackend:ea,$xhrFactory:fa,$jsonpCallbacks:rp,$location:ca,$log:la,$parse:ya,$rootScope:ka,$q:pa,$$q:wa,$sce:tv,$sceDelegate:nv,$sniffer:iv,$templateCache:dl,$templateRequest:rv,$$testability:uv,$timeout:fv,$window:ev,$$rAF:ba,$$jqLite:al,$$HashMap:ey,$$cookieReader:ov})}])}function cr(n){return n.replace(ny,function(n,t,i,r){return r?i.toUpperCase():i}).replace(ty,"Moz$1")}function ro(n){return n=n.nodeType,1===n||!n||9===n}function uo(n,i){var u,r,f=i.createDocumentFragment(),e=[];if(ee.test(n)){for(u=f.appendChild(i.createElement("div")),r=(ry.exec(n)||["",""])[1].toLowerCase(),r=ct[r]||ct._default,u.innerHTML=r[1]+n.replace(uy,"<$1><\/$2>")+r[2],r=r[0];r--;)u=u.lastChild;e=or(e,u.childNodes);u=f.firstChild;u.textContent=""}else e.push(i.createTextNode(n));return f.textContent="",f.innerHTML="",t(e,function(n){f.appendChild(n)}),f}function fo(n,t){var i=n.parentNode;i&&i.replaceChild(t,n);t.appendChild(n)}function b(t){var i,r;if(t instanceof b)return t;if(h(t)&&(t=p(t),i=!0),!(this instanceof b)){if(i&&"<"!=t.charAt(0))throw fe("nosel");return new b(t)}i&&(i=n.document,t=(r=iy.exec(t))?[i.createElement(r[1])]:(r=uo(t,i))?r.childNodes:[]);oo(this,t)}function af(n){return n.cloneNode(!0)}function uu(n,t){if(t||lr(n),n.querySelectorAll)for(var r=n.querySelectorAll("*"),i=0,u=r.length;i<u;i++)lr(r[i])}function eo(n,i,r,f){var e,o,s;if(u(f))throw fe("offargs");if(e=(f=fu(n))&&f.events,o=f&&f.handle,o)if(i)s=function(t){var i=e[t];u(r)&&er(i||[],r);u(r)&&i&&0<i.length||(n.removeEventListener(t,o,!1),delete e[t])},t(i.split(" "),function(n){s(n);gu[n]&&s(gu[n])});else for(i in e)"$destroy"!==i&&n.removeEventListener(i,o,!1),delete e[i]}function lr(n,t){var r=n.ng339,i=r&&gi[r];i&&(t?delete i.data[t]:(i.handle&&(i.events.$destroy&&i.handle({},"$destroy"),eo(n)),delete gi[r],n.ng339=void 0))}function fu(n,t){var i=n.ng339,i=i&&gi[i];return t&&!i&&(n.ng339=i=++ch,i=gi[i]={events:{},data:{},handle:void 0}),i}function vf(n,t,i){if(ro(n)){var r=u(i),f=!r&&t&&!s(t),e=!t;if(n=(n=fu(n,!f))&&n.data,r)n[t]=i;else{if(e)return n;if(f)return n&&n[t];a(n,t)}}}function eu(n,t){return n.getAttribute?-1<(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+t+" "):!1}function ou(n,i){i&&n.setAttribute&&t(i.split(" "),function(t){n.setAttribute("class",p((" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+p(t)+" "," ")))})}function su(n,i){if(i&&n.setAttribute){var r=(" "+(n.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");t(i.split(" "),function(n){n=p(n);-1===r.indexOf(" "+n+" ")&&(r+=n+" ")});n.setAttribute("class",p(r))}}function oo(n,t){var i,r;if(t)if(t.nodeType)n[n.length++]=t;else if(i=t.length,"number"==typeof i&&t.window!==t){if(i)for(r=0;r<i;r++)n[n.length++]=t[r]}else n[n.length++]=t}function so(n,t){return hu(n,"$"+(t||"ngController")+"Controller")}function hu(n,t,i){for(9==n.nodeType&&(n=n.documentElement),t=c(t)?t:[t];n;){for(var r=0,f=t.length;r<f;r++)if(u(i=e.data(n,t[r])))return i;n=n.parentNode||11===n.nodeType&&n.host}}function ho(n){for(uu(n,!0);n.firstChild;)n.removeChild(n.firstChild)}function cu(n,t){t||uu(n);var i=n.parentNode;i&&i.removeChild(n)}function sl(t,i){if(i=i||n,"complete"===i.document.readyState)i.setTimeout(t);else e(i).on("load",t)}function co(n,t){var i=nf[t.toLowerCase()];return i&&oe[at(n)]&&i}function hl(n,t){var i=function(i,u){var f,e,s,h,o;if(i.isDefaultPrevented=function(){return i.defaultPrevented},f=t[u||i.type],e=f?f.length:0,e)for(r(i.immediatePropagationStopped)&&(s=i.stopImmediatePropagation,i.stopImmediatePropagation=function(){i.immediatePropagationStopped=!0;i.stopPropagation&&i.stopPropagation();s&&s.call(i)}),i.isImmediatePropagationStopped=function(){return!0===i.immediatePropagationStopped},h=f.specialHandlerWrapper||cl,1<e&&(f=st(f)),o=0;o<e;o++)i.isImmediatePropagationStopped()||h(n,i,f[o])};return i.elem=n,i}function cl(n,t,i){i.call(n,t)}function ll(n,t,i){var r=t.relatedTarget;r&&(r===n||fy.call(n,r))||i.call(n,t)}function al(){this.$get=function(){return a(b,{hasClass:function(n,t){return n.attr&&(n=n[0]),eu(n,t)},addClass:function(n,t){return n.attr&&(n=n[0]),su(n,t)},removeClass:function(n,t){return n.attr&&(n=n[0]),ou(n,t)}})}}function fi(n,t){var i=n&&n.$$hashKey;return i?("function"==typeof i&&(i=n.$$hashKey()),i):(i=typeof n,"function"==i||"object"==i&&null!==n?n.$$hashKey=i+":"+(t||bc)():i+":"+n)}function pi(n,i){if(i){var r=0;this.nextUid=function(){return++r}}t(n,this.put,this)}function lo(n){return n=(Function.prototype.toString.call(n)+" ").replace(ly,""),n.match(oy)||n.match(sy)}function vl(n){return(n=lo(n))?"function("+(n[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function ar(n,i){function l(n){return function(i,r){if(s(i))t(i,ye(n));else return n(i,r)}}function w(n,t){if(yi(n,"service"),(f(t)||c(t))&&(t=o.instantiate(t)),!t.$get)throw li("pget",n);return e[n+"Provider"]=t}function tt(n,t){return function(){var i=u.invoke(t,this);if(r(i))throw li("undef",n);return i}}function v(n,t,i){return w(n,{$get:!1!==i?tt(n,t):t})}function b(n){iu(r(n)||c(n),"modulesToLoad","not an array");var i=[],u;return t(n,function(n){function r(n){for(var i,r,t=0,u=n.length;t<u;t++)i=n[t],r=o.get(i[0]),r[i[1]].apply(r,i[2])}if(!d.get(n)){d.put(n,!0);try{h(n)?(u=ue(n),i=i.concat(b(u.requires)).concat(u._runBlocks),r(u._invokeQueue),r(u._configBlocks)):f(n)?i.push(o.invoke(n)):c(n)?i.push(o.invoke(n)):vi(n,"module")}catch(t){throw c(n)&&(n=n[n.length-1]),t.message&&t.stack&&-1==t.stack.indexOf(t.message)&&(t=t.message+"\n"+t.stack),li("modulerr",n,t.stack||t.message||t);}}}),i}function k(n,t){function r(i,r){if(n.hasOwnProperty(i)){if(n[i]===y)throw li("cdep",i+" <- "+a.join(" <- "));return n[i]}try{return a.unshift(i),n[i]=y,n[i]=t(i,r)}catch(u){throw n[i]===y&&delete n[i],u;}finally{a.shift()}}function u(n,t,u){var o=[],e,s,f;for(n=ar.$$annotate(n,i,u),e=0,s=n.length;e<s;e++){if(f=n[e],"string"!=typeof f)throw li("itkn",f);o.push(t&&t.hasOwnProperty(f)?t[f]:r(f,u))}return o}return{invoke:function(n,t,i,r){return"string"==typeof i&&(r=i,i=null),i=u(n,i,r),c(n)&&(n=n[n.length-1]),r=11>=ti?!1:"function"==typeof n&&/^(?:class\b|constructor\()/.test(Function.prototype.toString.call(n)+" "),r?(i.unshift(null),new(Function.prototype.bind.apply(n,i))):n.apply(t,i)},instantiate:function(n,t,i){var r=c(n)?n[n.length-1]:n;return n=u(n,t,i),n.unshift(null),new(Function.prototype.bind.apply(r,n))},get:r,annotate:ar.$$annotate,has:function(t){return e.hasOwnProperty(t+"Provider")||n.hasOwnProperty(t)}}}var nt,u;i=!0===i;var y={},a=[],d=new pi([],!0),e={$provide:{provider:l(w),factory:l(v),service:l(function(n,t){return v(n,["$injector",function(n){return n.instantiate(t)}])}),value:l(function(n,t){return v(n,ft(t),!1)}),constant:l(function(n,t){yi(n,"constant");e[n]=t;g[n]=t}),decorator:function(n,t){var i=o.get(n+"Provider"),r=i.$get;i.$get=function(){var n=u.invoke(r,i);return u.invoke(t,null,{$delegate:n})}}}},o=e.$injector=k(e,function(n,t){ut.isString(t)&&a.push(t);throw li("unpr",a.join(" <- "));}),g={},p=k(g,function(n,t){var i=o.get(n+"Provider",t);return u.invoke(i.$get,i,void 0,n)}),u=p;return e.$injectorProvider={$get:ft(p)},nt=b(n),u=p.get("$injector"),u.strictDi=i,t(nt,function(n){n&&u.invoke(n)}),u}function yl(){var n=!0;this.disableAutoScrolling=function(){n=!1};this.$get=["$window","$location","$rootScope",function(t,i,r){function s(n){var t=null;return Array.prototype.some.call(n,function(n){if("a"===at(n))return t=n,!0}),t}function u(n){if(n){n.scrollIntoView();var i;i=e.yOffset;f(i)?i=i():hf(i)?(i=i[0],i="fixed"!==t.getComputedStyle(i).position?0:i.getBoundingClientRect().bottom):w(i)||(i=0);i&&(n=n.getBoundingClientRect().top,t.scrollBy(0,n-i))}else t.scrollTo(0,0)}function e(n){n=h(n)?n:i.hash();var t;n?(t=o.getElementById(n))?u(t):(t=s(o.getElementsByName(n)))?u(t):"top"===n&&u(null):u(null)}var o=t.document;return n&&r.$watch(function(){return i.hash()},function(n,t){n===t&&""===n||sl(function(){r.$evalAsync(e)})}),e}]}function vr(n,t){return!n&&!t?"":n?t?(c(n)&&(n=n.join(" ")),c(t)&&(t=t.join(" ")),n+" "+t):n:t}function pl(n){h(n)&&(n=n.split(" "));var i=y();return t(n,function(n){n.length&&(i[n]=!0)}),i}function ei(n){return s(n)?n:{}}function wl(n,i,u,f){function k(n){try{n.apply(null,bt.call(arguments,1))}finally{if(l--,0===l)for(;b.length;)try{b.pop()()}catch(t){u.error(t)}}}function d(){y=null;g();tt()}function g(){h=st();h=r(h)?null:h;ot(h,nt)&&(h=nt);nt=h}function tt(){(v!==s.url()||a!==h)&&(v=s.url(),a=h,t(it,function(n){n(s.url(),h)}))}var s=this,c=n.location,p=n.history,ut=n.setTimeout,ft=n.clearTimeout,w={},l,b;s.isMock=!1;l=0;b=[];s.$$completeOutstandingRequest=k;s.$$incOutstandingRequestCount=function(){l++};s.notifyWhenNoOutstandingRequests=function(n){0===l?n():b.push(n)};var h,a,v=c.href,et=i.find("base"),y=null,st=f.history?function(){try{return p.state}catch(n){}}:o;g();a=h;s.url=function(t,i,u){var o,e;return(r(u)&&(u=null),c!==n.location&&(c=n.location),p!==n.history&&(p=n.history),t)?(o=a===u,v===t&&(!f.history||o))?s:(e=v&&oi(v)===oi(t),v=t,a=u,!f.history||e&&o?(e||(y=t),i?c.replace(t):e?(i=c,u=t.indexOf("#"),u=-1===u?"":t.substr(u),i.hash=u):c.href=t,c.href!==t&&(y=t)):(p[i?"replaceState":"pushState"](u,"",t),g(),a=h),y&&(y=t),s):y||c.href.replace(/%27/g,"'")};s.state=function(){return h};var it=[],rt=!1,nt=null;s.onUrlChange=function(t){if(!rt){if(f.history)e(n).on("popstate",d);e(n).on("hashchange",d);rt=!0}return it.push(t),t};s.$$applicationDestroyed=function(){e(n).off("hashchange popstate",d)};s.$$checkUrlChange=tt;s.baseHref=function(){var n=et.attr("href");return n?n.replace(/^(https?\:)?\/\/[^\/]*/,""):""};s.defer=function(n,t){var i;return l++,i=ut(function(){delete w[i];k(n)},t||0),w[i]=!0,i};s.defer.cancel=function(n){return w[n]?(delete w[n],ft(n),k(o),!0):!1}}function bl(){this.$get=["$window","$log","$sniffer","$document",function(n,t,i,r){return new wl(n,r,t,i)}]}function kl(){this.$get=function(){function i(t,i){function v(n){n!=o&&(u?u==n&&(u=n.n):u=n,c(n.n,n.p),c(n,o),o=n,o.n=null)}function c(n,t){n!=t&&(n&&(n.p=t),t&&(t.n=n))}if(t in n)throw l("$cacheFactory")("iid",t);var s=0,p=a({},i,{id:t}),f=y(),h=i&&i.capacity||Number.MAX_VALUE,e=y(),o=null,u=null;return n[t]={put:function(n,t){if(!r(t)){if(h<Number.MAX_VALUE){var i=e[n]||(e[n]={key:n});v(i)}return n in f||s++,f[n]=t,s>h&&this.remove(u.key),t}},get:function(n){if(h<Number.MAX_VALUE){var t=e[n];if(!t)return;v(t)}return f[n]},remove:function(n){if(h<Number.MAX_VALUE){var t=e[n];if(!t)return;t==o&&(o=t.p);t==u&&(u=t.n);c(t.n,t.p);delete e[n]}n in f&&(delete f[n],s--)},removeAll:function(){f=y();s=0;e=y();o=u=null},destroy:function(){e=p=f=null;delete n[t]},info:function(){return a({},p,{size:s})}}}var n={};return i.info=function(){var i={};return t(n,function(n,t){i[t]=n.info()}),i},i.get=function(t){return n[t]},i}}function dl(){this.$get=["$cacheFactory",function(n){return n("templates")}]}function ao(i,l){function d(n,i,r){var f=/^\s*([@&<]|=(\*?))(\??)\s*(\w*)\s*$/,u=y();return t(n,function(n,t){if(n in nt)u[t]=nt[n];else{var e=n.match(f);if(!e)throw g("iscp",i,t,n,r?"controller bindings definition":"isolate scope definition");u[t]={mode:e[1][0],collection:"*"===e[2],optional:"?"===e[3],attrName:e[4]||t};e[4]&&(nt[n]=u[t])}}),u}function it(n){var t=n.charAt(0);if(!t||t!==v(t))throw g("baddir",n);if(n!==n.trim())throw g("baddir",n);}function ut(n){var i=n.require||n.controller&&n.name;return!c(i)&&s(i)&&t(i,function(n,t){var r=n.match(tt);n.substring(r[0].length)||(i[t]=r[0]+t)}),i}var b={},et=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,st=/(([\w\-]+)(?:\:([^;]+))?;?)/,ht=gc("ngSrc,ngSrcset,src,srcset"),tt=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,ct=/^(on[a-z]+|formaction)$/,nt=y(),w,k;this.directive=function lt(n,r){return yi(n,"directive"),h(n)?(it(n),iu(r,"directiveFactory"),b.hasOwnProperty(n)||(b[n]=[],i.factory(n+"Directive",["$injector","$exceptionHandler",function(i,r){var u=[];return t(b[n],function(t,e){try{var o=i.invoke(t);f(o)?o={compile:ft(o)}:!o.compile&&o.link&&(o.compile=ft(o.link));o.priority=o.priority||0;o.index=e;o.name=o.name||n;o.require=ut(o);o.restrict=o.restrict||"EA";o.$$moduleName=t.$$moduleName;u.push(o)}catch(s){r(s)}}),u}])),b[n].push(r)):t(n,ye(lt)),this};this.component=function(n,i){function r(n){function r(t){return f(t)||c(t)?function(i,r){return n.invoke(t,this,{$element:i,$attrs:r})}:t}var o=i.template||i.templateUrl?i.template:"",e={controller:u,controllerAs:po(i.controller)||i.controllerAs||"$ctrl",template:r(o),templateUrl:r(i.templateUrl),transclude:i.transclude,scope:{},bindToController:i.bindings||{},restrict:"E",require:i.require};return t(i,function(n,t){"$"===t.charAt(0)&&(e[t]=n)}),e}var u=i.controller||function(){};return t(i,function(n,t){"$"===t.charAt(0)&&(r[t]=n,f(u)&&(u[t]=n))}),r.$inject=["$injector"],this.directive(n,r)};this.aHrefSanitizationWhitelist=function(n){return u(n)?(l.aHrefSanitizationWhitelist(n),this):l.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(n){return u(n)?(l.imgSrcSanitizationWhitelist(n),this):l.imgSrcSanitizationWhitelist()};w=!0;this.debugInfoEnabled=function(n){return u(n)?(w=n,this):w};k=10;this.onChangesTtl=function(n){return arguments.length?(k=n,this):k};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate","$$sanitizeUri",function(i,l,nt,it,ut,ft,lt,pt,kt,dt){function ar(){try{if(!--or)throw ni=void 0,g("infchng",k);lt.$apply(function(){for(var n=[],t=0,i=ni.length;t<i;++t)try{ni[t]()}catch(r){n.push(r)}if(ni=void 0,n.length)throw n;})}finally{or++}}function si(n,t){if(t)for(var u=Object.keys(t),r,i=0,f=u.length;i<f;i++)r=u[i],this[r]=t[r];else this.$attr={};this.$$element=n}function vr(n,t,i){ur.innerHTML="<span "+t+">";t=ur.firstChild.attributes;var r=t[0];t.removeNamedItem(r.name);r.value=i;n.attributes.setNamedItem(r)}function hi(n,t){try{n.addClass(t)}catch(i){}}function gt(t,i,r,u,f){var h,c,o;t instanceof e||(t=e(t));for(var s=0,l=t.length;s<l;s++)h=t[s],h.nodeType===di&&h.nodeValue.match(/\S+/)&&fo(h,t[s]=n.document.createElement("span"));return c=ci(t,i,t,r,u,f),gt.$$addScopeClass(t),o=null,function(n,i,r){var u,s,h;if(iu(n,"scope"),f&&f.needsNewScope&&(n=n.$parent.$new()),r=r||{},u=r.parentBoundTranscludeFn,s=r.transcludeControllers,r=r.futureParentElement,u&&u.$$boundTransclude&&(u=u.$$boundTransclude),o||(o=(r=r&&r[0])?"foreignobject"!==at(r)&&rt.call(r).match(/SVG/)?"svg":"html":"html"),r="html"!==o?e(vi(o,e("<div>").append(t).html())):i?nr.clone.call(t):t,s)for(h in s)r.data("$"+h+"Controller",s[h].instance);return gt.$$addScopeInfo(r,n),i&&i(r,n),c&&c(n,r,r,u),r}}function ci(n,t,i,r,u,f){function y(n,i,r,u){var s,h,c,f,v,y,l;if(a)for(l=Array(i.length),f=0;f<o.length;f+=3)s=o[f],l[s]=i[s];else l=i;for(f=0,v=o.length;f<v;)h=l[o[f++]],i=o[f++],s=o[f++],i?(i.scope?(c=n.$new(),gt.$$addScopeInfo(e(h),c)):c=n,y=i.transcludeOnThisElement?ri(n,i.transclude,u):!i.templateOnThisElement&&u?u:!u&&t?ri(n,t):null,i(s,c,h,r,y)):s&&s(n,h.childNodes,void 0,u)}for(var o=[],s,c,l,v,a,h=0;h<n.length;h++)s=new si,c=li(n[h],[],s,0===h?r:void 0,u),(f=c.length?bi(c,n[h],s,t,i,null,[],[],f):null)&&f.scope&&gt.$$addScopeClass(s.$$element),s=f&&f.terminal||!(l=n[h].childNodes)||!l.length?null:ci(l,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:t),(f||s)&&(o.push(h,f,s),v=!0,a=a||f),f=null;return v?y:null}function ri(n,t,i){function u(r,u,f,e,o){return r||(r=n.$new(!1,o),r.$$transcluded=!0),t(r,u,{parentBoundTranscludeFn:i,transcludeControllers:f,futureParentElement:e})}var f=u.$$slots=y(),r;for(r in t.$$slots)f[r]=t.$$slots[r]?ri(n,t.$$slots[r],i):null;return u}function li(n,t,i,r,u){var o=i.$attr,y,w;switch(n.nodeType){case 1:ei(t,yt(at(n)),"E",r,u);for(var f,e,c,l,a=n.attributes,v=0,b=a&&a.length;v<b;v++)y=!1,w=!1,f=a[v],e=f.name,c=p(f.value),f=yt(e),(l=ru.test(f))&&(e=e.replace(ah,"").substr(8).replace(/_(.)/g,function(n,t){return t.toUpperCase()})),(f=f.match(uu))&&wr(f[1])&&(y=e,w=e.substr(0,e.length-5)+"end",e=e.substr(0,e.length-6)),f=yt(e.toLowerCase()),o[f]=e,(l||!i.hasOwnProperty(f))&&(i[f]=c,co(n,f)&&(i[f]=!0)),nu(n,t,c,f,l),ei(t,f,"A",r,u,y,w);if(o=n.className,s(o)&&(o=o.animVal),h(o)&&""!==o)for(;n=st.exec(o);)f=yt(n[2]),ei(t,f,"C",r,u)&&(i[f]=p(n[3])),o=o.substr(n.index+n[0].length);break;case di:if(11===ti)for(;n.parentNode&&n.nextSibling&&n.nextSibling.nodeType===di;)n.nodeValue+=n.nextSibling.nodeValue,n.parentNode.removeChild(n.nextSibling);dr(t,n.nodeValue);break;case 8:yr(n,t,i,r,u)}return t.sort(kr),t}function yr(n,t,i,r,u){var f,e;try{f=et.exec(n.nodeValue);f&&(e=yt(f[1]),ei(t,e,"M",r,u)&&(i[e]=p(f[2])))}catch(o){}}function pi(n,t,i){var r=[],u=0;if(t&&n.hasAttribute&&n.hasAttribute(t)){do{if(!n)throw g("uterdir",t,i);1==n.nodeType&&(n.hasAttribute(t)&&u++,n.hasAttribute(i)&&u--);r.push(n);n=n.nextSibling}while(0<u)}else r.push(n);return e(r)}function wi(n,t,i){return function(r,u,f,e,o){return u=pi(u[0],t,i),n(r,u,f,e,o)}}function ai(n,t,i,r,u,f){var e;return n?gt(t,i,r,u,f):function(){return e||(e=gt(t,i,r,u,f),t=i=f=null),e.apply(this,arguments)}}function bi(n,i,u,o,h,l,v,w,b){function ur(n,t,i,r){n&&(i&&(n=wi(n,i,r)),n.require=k.require,n.directiveName=ot,(d===k||k.$$isolateScope)&&(n=tr(n,{isolateScope:!0})),v.push(n));t&&(i&&(t=wi(t,i,r)),t.require=k.require,t.directiveName=ot,(d===k||k.$$isolateScope)&&(t=tr(t,{isolateScope:!0})),w.push(t))}function lt(n,o,h,l,y){function at(n,t,i,u){var e,f;if(fr(n)||(u=i,i=t,t=n,n=void 0),ri&&(e=rt),i||(i=ri?b.parent():b),u){if(f=y.$$slots[u],f)return f(n,t,e,i,ht);if(r(f))throw g("noslot",u,vt(b));}else return y(n,t,e,i,ht)}var k,tt,p,it,ft,rt,ot,b,ct,lt,ht;i===h?(l=u,b=u.$$element):(b=e(h),l=new si(b,u));ft=o;d?it=o.$new(!0):ut&&(ft=o.$parent);y&&(ot=at,ot.$$boundTransclude=y,ot.isSlotFilled=function(n){return!!y.$$slots[n]});et&&(rt=pr(b,l,ot,et,it,o,d));d&&(gt.$$addScopeInfo(b,it,!0,!(st&&(st===d||st===d.$$originalDirective))),gt.$$addScopeClass(b,!0),it.$$isolateBindings=d.$$isolateBindings,tt=yi(o,l,it,it.$$isolateBindings,d),tt.removeWatches&&it.$on("$destroy",tt.removeWatches));for(k in rt)tt=et[k],p=rt[k],ct=tt.$$bindings.bindToController,p.bindingInfo=p.identifier&&ct?yi(ft,l,p.instance,ct,tt):{},lt=p(),lt!==p.instance&&(p.instance=lt,b.data("$"+tt.name+"Controller",lt),p.bindingInfo.removeWatches&&p.bindingInfo.removeWatches(),p.bindingInfo=yi(ft,l,p.instance,ct,tt));for(t(et,function(n,t){var i=n.require;n.bindToController&&!c(i)&&s(i)&&a(rt[t].instance,fi(t,i,b,rt))}),t(rt,function(n){var t=n.instance;if(f(t.$onChanges))try{t.$onChanges(n.bindingInfo.initialChanges)}catch(i){nt(i)}if(f(t.$onInit))try{t.$onInit()}catch(r){nt(r)}f(t.$doCheck)&&(ft.$watch(function(){t.$doCheck()}),t.$doCheck());f(t.$onDestroy)&&ft.$on("$destroy",function(){t.$onDestroy()})}),k=0,tt=v.length;k<tt;k++)p=v[k],rr(p,p.isolateScope?it:o,b,l,p.require&&fi(p.directiveName,p.require,b,rt),ot);for(ht=o,d&&(d.template||null===d.templateUrl)&&(ht=it),n&&n(ht,h.childNodes,void 0,y),k=w.length-1;0<=k;k--)p=w[k],rr(p,p.isolateScope?it:o,b,l,p.require&&fi(p.directiveName,p.require,b,rt),ot);t(rt,function(n){n=n.instance;f(n.$postLink)&&n.$postLink()})}var ni,ei,ft,ir,hi,ci,er,bi;b=b||{};for(var dt=-Number.MAX_VALUE,ut=b.newScopeDirective,et=b.controllerDirectives,d=b.newIsolateScopeDirective,st=b.templateDirective,ti=b.nonTlbTranscludeDirective,di=!1,nr=!1,ri=b.hasElementTranscludeDirective,tt=u.$$element=e(i),k,ot,rt,pt=o,wt,ht=!1,ui=!1,it,ct=0,kt=n.length;ct<kt;ct++){if(k=n[ct],ni=k.$$start,ei=k.$$end,ni&&(tt=pi(i,ni,ei)),rt=void 0,dt>k.priority)break;if((it=k.scope)&&(k.templateUrl||(s(it)?(ii("new/isolated scope",d||ut,k,tt),d=k):ii("new/isolated scope",d,k,tt)),ut=ut||k),ot=k.name,!ht&&(k.replace&&(k.templateUrl||k.template)||k.transclude&&!k.$$tlb)){for(it=ct+1;ht=n[it++];)if(ht.transclude&&!ht.$$tlb||ht.replace&&(ht.templateUrl||ht.template)){ui=!0;break}ht=!0}if(!k.templateUrl&&k.controller&&(it=k.controller,et=et||y(),ii("'"+ot+"' controller",et[ot],k,tt),et[ot]=k),it=k.transclude)if(di=!0,k.$$tlb||(ii("transclusion",ti,k,tt),ti=k),"element"==it)ri=!0,dt=k.priority,rt=tt,tt=u.$$element=e(gt.$$createComment(ot,u[ot])),i=tt[0],oi(h,bt.call(rt,0),i),rt[0].$$parentNode=rt[0].parentNode,pt=ai(ui,rt,o,dt,l&&l.name,{nonTlbTranscludeDirective:ti});else{if(ft=y(),rt=e(af(i)).contents(),s(it)){rt=[];ir=y();hi=y();t(it,function(n,t){var i="?"===n.charAt(0);n=i?n.substring(1):n;ir[n]=t;ft[t]=null;hi[t]=i});t(tt.contents(),function(n){var t=ir[yt(at(n))];t?(hi[t]=!0,ft[t]=ft[t]||[],ft[t].push(n)):rt.push(n)});t(hi,function(n,t){if(!n)throw g("reqslot",t);});for(ci in ft)ft[ci]&&(ft[ci]=ai(ui,ft[ci],o))}tt.empty();pt=ai(ui,rt,o,void 0,void 0,{needsNewScope:k.$$isolateScope||k.$$newScope});pt.$$slots=ft}if(k.template)if(nr=!0,ii("template",st,k,tt),st=k,it=f(k.template)?k.template(tt,u):k.template,it=lr(it),k.replace){if(l=k,rt=ee.test(it)?yo(vi(k.templateNamespace,p(it))):[],i=rt[0],1!=rt.length||1!==i.nodeType)throw g("tplrt",ot,"");oi(h,tt,i);kt={$attr:{}};it=li(i,[],kt);er=n.splice(ct+1,n.length-(ct+1));(d||ut)&&ki(it,d,ut);n=n.concat(it).concat(er);gi(u,kt);kt=n.length}else tt.html(it);if(k.templateUrl)nr=!0,ii("template",st,k,tt),st=k,k.replace&&(l=k),lt=br(n.splice(ct,n.length-ct),tt,u,h,di&&pt,v,w,{controllerDirectives:et,newScopeDirective:ut!==k&&ut,newIsolateScopeDirective:d,templateDirective:st,nonTlbTranscludeDirective:ti}),kt=n.length;else if(k.compile)try{wt=k.compile(tt,u,pt);bi=k.$$originalDirective||k;f(wt)?ur(null,sr(bi,wt),ni,ei):wt&&ur(sr(bi,wt.pre),sr(bi,wt.post),ni,ei)}catch(or){nt(or,vt(tt))}k.terminal&&(lt.terminal=!0,dt=Math.max(dt,k.priority))}return lt.scope=ut&&!0===ut.scope,lt.transcludeOnThisElement=di,lt.templateOnThisElement=nr,lt.transclude=pt,b.hasElementTranscludeDirective=ri,lt}function fi(n,i,r,u){var f,o,e,l;if(h(i)){if(e=i.match(tt),i=i.substring(e[0].length),o=e[1]||e[3],e="?"===e[2],"^^"===o?r=r.parent():f=(f=u&&u[i])&&f.instance,f||(l="$"+i+"Controller",f=o?r.inheritedData(l):r.data(l)),!f&&!e)throw g("ctreq",i,n);}else if(c(i))for(f=[],o=0,e=i.length;o<e;o++)f[o]=fi(n,i[o],r,u);else s(i)&&(f={},t(i,function(t,i){f[i]=fi(n,t,r,u)}));return f||null}function pr(n,t,i,r,u,f,e){var c=y(),l;for(l in r){var o=r[l],s={$scope:o===e||o.$$isolateScope?u:f,$element:n,$attrs:t,$transclude:i},h=o.controller;"@"==h&&(h=t[o.name]);s=ft(h,s,!0,o.controllerAs);c[o.name]=s;n.data("$"+o.name+"Controller",s.instance)}return c}function ki(n,t,i){for(var r=0,u=n.length;r<u;r++)n[r]=sf(n[r],{$$isolateScope:t,$$newScope:i})}function ei(n,t,u,f,e,o,h){var c,y,k,p,tt,w;if(t===e)return null;if(e=null,b.hasOwnProperty(t))for(t=i.get(t+"Directive"),y=0,k=t.length;y<k;y++)try{if(c=t[y],(r(f)||f>c.priority)&&-1!=c.restrict.indexOf(u)){if(o&&(c=sf(c,{$$start:o,$$end:h})),!c.$$bindings){var it=c,l=c,v=c.name,a={isolateScope:null,bindToController:null};if(s(l.scope)&&(!0===l.bindToController?(a.bindToController=d(l.scope,v,!0),a.isolateScope={}):a.isolateScope=d(l.scope,v,!1)),s(l.bindToController)&&(a.bindToController=d(l.bindToController,v,!0)),s(a.bindToController)){if(p=l.controller,tt=l.controllerAs,!p)throw g("noctrl",v);if(!po(p,tt))throw g("noident",v);}w=it.$$bindings=a;s(w.isolateScope)&&(c.$$isolateBindings=w.isolateScope)}n.push(c);e=c}}catch(rt){nt(rt)}return e}function wr(n){if(b.hasOwnProperty(n))for(var r=i.get(n+"Directive"),t=0,u=r.length;t<u;t++)if(n=r[t],n.multiElement)return!0;return!1}function gi(n,i){var r=i.$attr,u=n.$attr;t(n,function(t,u){"$"!=u.charAt(0)&&(i[u]&&i[u]!==t&&(t+=("style"===u?";":" ")+i[u]),n.$set(u,t,!0,r[u]))});t(i,function(t,i){n.hasOwnProperty(i)||"$"===i.charAt(0)||(n[i]=t,"class"!==i&&"style"!==i&&(u[i]=r[i]))})}function br(n,i,r,u,o,h,c,l){var v=[],y,w,b=i[0],a=n.shift(),d=sf(a,{templateUrl:null,transclude:null,replace:null,$$originalDirective:a}),k=f(a.templateUrl)?a.templateUrl(i,r):a.templateUrl,nt=a.templateNamespace;return i.empty(),it(k).then(function(f){var tt,rt,it,ft;if(f=lr(f),a.replace){if(f=ee.test(f)?yo(vi(nt,p(f))):[],tt=f[0],1!=f.length||1!==tt.nodeType)throw g("tplrt",a.name,k);f={$attr:{}};oi(u,i,tt);it=li(tt,[],f);s(a.scope)&&ki(it,!0);n=it.concat(n);gi(r,f)}else tt=b,i.html(f);for(n.unshift(d),y=bi(n,tt,r,o,i,a,h,c,l),t(u,function(n,t){n==tt&&(u[t]=i[0])}),w=ci(i[0].childNodes,o);v.length;){f=v.shift();rt=v.shift();var et=v.shift(),ut=v.shift(),it=i[0];f.$$destroyed||(rt!==b&&(ft=rt.className,l.hasElementTranscludeDirective&&a.replace||(it=af(tt)),oi(et,e(rt),it),hi(e(it),ft)),rt=y.transcludeOnThisElement?ri(f,y.transclude,ut):ut,y(w,f,it,u,rt))}v=null}),function(n,t,i,r,u){n=u;t.$$destroyed||(v?v.push(t,i,r,n):(y.transcludeOnThisElement&&(n=ri(t,y.transclude,u)),y(w,t,i,r,n)))}}function kr(n,t){var i=t.priority-n.priority;return 0!==i?i:n.name!==t.name?n.name<t.name?-1:1:n.index-t.index}function ii(n,t,i,r){function u(n){return n?" (module: "+n+")":""}if(t)throw g("multidir",t.name,u(t.$$moduleName),i.name,u(i.$$moduleName),n,vt(r));}function dr(n,t){var i=l(t,!0);i&&n.push({priority:0,compile:function(n){n=n.parent();var t=!!n.length;return t&&gt.$$addBindingClass(n),function(n,r){var u=r.parent();t||gt.$$addBindingClass(u);gt.$$addBindingInfo(u,i.expressions);n.$watch(i,function(n){r[0].nodeValue=n})}}})}function vi(t,i){t=v(t||"html");switch(t){case"svg":case"math":var r=n.document.createElement("div");return r.innerHTML="<"+t+">"+i+"<\/"+t+">",r.childNodes[0].childNodes;default:return i}}function gr(n,t){if("srcdoc"==t)return pt.HTML;var i=at(n);if("xlinkHref"==t||"form"==i&&"action"==t||"img"!=i&&("src"==t||"ngSrc"==t))return pt.RESOURCE_URL}function nu(n,t,i,r,u){var e=gr(n,r),f;if(u=ht[r]||u,f=l(i,!0,e,u),f){if("multiple"===r&&"select"===at(n))throw g("selmulti",vt(n));t.push({priority:100,compile:function(){return{pre:function(n,t,o){if(t=o.$$observers||(o.$$observers=y()),ct.test(r))throw g("nodomevents");var s=o[r];s!==i&&(f=s&&l(s,!0,e,u),i=s);f&&(o[r]=f(n),(t[r]||(t[r]=[])).$$inter=!0,(o.$$observers&&o.$$observers[r].$$scope||n).$watch(f,function(n,t){"class"===r&&n!=t?o.$updateClass(n,t):o.$set(r,n)}))}}}})}}function oi(t,i,r){var f=i[0],s=i.length,c=f.parentNode,u,o,h;if(t)for(u=0,o=t.length;u<o;u++)if(t[u]==f){for(t[u++]=r,o=u+s-1,h=t.length;u<h;u++,o++)o<h?t[u]=t[o]:delete t[u];t.length-=s-1;t.context===f&&(t.context=r);break}for(c&&c.replaceChild(r,f),t=n.document.createDocumentFragment(),u=0;u<s;u++)t.appendChild(i[u]);for(e.hasData(f)&&(e.data(r,e.data(f)),e(f).off("$destroy")),e.cleanData(t.querySelectorAll("*")),u=1;u<s;u++)delete i[u];i[0]=r;i.length=1}function tr(n,t){return a(function(){return n.apply(null,arguments)},n,t)}function rr(n,t,i,r,u,f){try{n(t,i,r,u,f)}catch(e){nt(e,vt(i))}}function yi(n,i,r,u,e){function v(t,i,u){f(r.$onChanges)&&i!==u&&(ni||(n.$$postDigest(ar),ni=[]),s||(s={},ni.push(y)),s[t]&&(u=s[t].previousValue),s[t]=new lu(u,i))}function y(){r.$onChanges(s);s=void 0}var c=[],a={},s;return t(u,function(t,u){var f=t.attrName,s=t.optional,p,y,k,w,b;switch(t.mode){case"@":s||wt.call(i,f)||(r[u]=i[f]=void 0);i.$observe(f,function(n){(h(n)||ui(n))&&(v(u,n,r[u]),r[u]=n)});i.$$observers[f].$$scope=n;p=i[f];h(p)?r[u]=l(p)(n):ui(p)&&(r[u]=p);a[u]=new lu(he,r[u]);break;case"=":if(!wt.call(i,f)){if(s)break;i[f]=void 0}if(s&&!i[f])break;y=ut(i[f]);w=y.literal?ot:function(n,t){return n===t||n!==n&&t!==t};k=y.assign||function(){p=r[u]=y(n);throw g("nonassign",i[f],f,e.name);};p=r[u]=y(n);s=function(t){return w(t,r[u])||(w(t,p)?k(n,t=r[u]):r[u]=t),p=t};s.$stateful=!0;s=t.collection?n.$watchCollection(i[f],s):n.$watch(ut(i[f],s),null,y.literal);c.push(s);break;case"<":if(!wt.call(i,f)){if(s)break;i[f]=void 0}if(s&&!i[f])break;y=ut(i[f]);b=r[u]=y(n);a[u]=new lu(he,r[u]);s=n.$watch(y,function(n,t){if(t===n){if(t===b)return;t=b}v(u,n,t);r[u]=n},y.literal);c.push(s);break;case"&":if(y=i.hasOwnProperty(f)?ut(i[f]):o,y===o&&s)break;r[u]=function(t){return y(n,t)}}}),{initialChanges:a,removeWatches:c.length&&function(){for(var n=0,t=c.length;n<t;++n)c[n]()}}}var tu=/^\w/,ur=n.document.createElement("div"),or=k,ni;si.prototype={$normalize:yt,$addClass:function(n){n&&0<n.length&&kt.addClass(this.$$element,n)},$removeClass:function(n){n&&0<n.length&&kt.removeClass(this.$$element,n)},$updateClass:function(n,t){var i=vo(n,t);i&&i.length&&kt.addClass(this.$$element,i);(i=vo(t,n))&&i.length&&kt.removeClass(this.$$element,i)},$set:function(n,i,f,e){var s=co(this.$$element[0],n),o=se[n],l=n;if(s?(this.$$element.prop(n,i),e=s):o&&(this[o]=i,l=o),this[n]=i,e?this.$attr[n]=e:(e=this.$attr[n])||(this.$attr[n]=e=to(n,"-")),s=at(this.$$element),"a"===s&&("href"===n||"xlinkHref"===n)||"img"===s&&"src"===n)this[n]=i=dt(i,"src"===n);else if("img"===s&&"srcset"===n&&u(i)){for(var s="",o=p(i),h=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,h=/\s/.test(o)?h:/(,)/,o=o.split(h),h=Math.floor(o.length/2),c=0;c<h;c++)var a=2*c,s=s+dt(p(o[a]),!0),s=s+(" "+p(o[a+1]));o=p(o[2*c]).split(/\s/);s+=dt(p(o[0]),!0);2===o.length&&(s+=" "+p(o[1]));this[n]=i=s}!1!==f&&(null===i||r(i)?this.$$element.removeAttr(e):tu.test(e)?this.$$element.attr(e,i):vr(this.$$element[0],e,i));(n=this.$$observers)&&t(n[l],function(n){try{n(i)}catch(t){nt(t)}})},$observe:function(n,t){var i=this,f=i.$$observers||(i.$$observers=y()),u=f[n]||(f[n]=[]);return u.push(t),lt.$evalAsync(function(){u.$$inter||!i.hasOwnProperty(n)||r(i[n])||t(i[n])}),function(){er(u,t)}}};var hr=l.startSymbol(),cr=l.endSymbol(),lr="{{"==hr&&"}}"==cr?ir:function(n){return n.replace(/\{\{/g,hr).replace(/}}/g,cr)},ru=/^ngAttr[A-Z]/,uu=/^(.+)Start$/;return gt.$$addBindingInfo=w?function(n,t){var i=n.data("$binding")||[];c(t)?i=i.concat(t):i.push(t);n.data("$binding",i)}:o,gt.$$addBindingClass=w?function(n){hi(n,"ng-binding")}:o,gt.$$addScopeInfo=w?function(n,t,i,r){n.data(i?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope",t)}:o,gt.$$addScopeClass=w?function(n,t){hi(n,t?"ng-isolate-scope":"ng-scope")}:o,gt.$$createComment=function(t,i){var r="";return w&&(r=" "+(t||"")+": ",i&&(r+=i+" ")),n.document.createComment(r)},gt}]}function lu(n,t){this.previousValue=n;this.currentValue=t}function yt(n){return cr(n.replace(ah,""))}function vo(n,t){var r="",e=n.split(/\s+/),o=t.split(/\s+/),u=0,f,i;n:for(;u<e.length;u++){for(f=e[u],i=0;i<o.length;i++)if(f==o[i])continue n;r+=(0<r.length?" ":"")+f}return r}function yo(n){n=e(n);var t=n.length;if(1>=t)return n;for(;t--;)8===n[t].nodeType&&pv.call(n,t,1);return n}function po(n,t){if(t&&h(t))return t;if(h(n)){var i=vh.exec(n);if(i)return i[3]}}function gl(){var n={},t=!1;this.has=function(t){return n.hasOwnProperty(t)};this.register=function(t,i){yi(t,"controller");s(t)?a(n,t):n[t]=i};this.allowGlobals=function(){t=!0};this.$get=["$injector","$window",function(i,r){function u(n,t,i,r){if(!n||!s(n.$scope))throw l("$controller")("noscp",r,t);n.$scope[t]=i}return function(e,o,l,v){var y,p,w;if(l=!0===l,v&&h(v)&&(w=v),h(e)){if(v=e.match(vh),!v)throw ky("ctrlfmt",e);p=v[1];w=w||v[3];e=n.hasOwnProperty(p)?n[p]:io(o.$scope,p,!0)||(t?io(r,p,!0):void 0);vi(e,p,!0)}return l?(l=(c(e)?e[e.length-1]:e).prototype,y=Object.create(l||null),w&&u(o,w,y,p||e.name),a(function(){var n=i.invoke(e,y,o,p);return n!==y&&(s(n)||f(n))&&(y=n,w&&u(o,w,y,p||e.name)),y},{instance:y,identifier:w})):(y=i.instantiate(e,o,p),w&&u(o,w,y,p||e.name),y)}}]}function na(){this.$get=["$window",function(n){return e(n.document)}]}function ta(){this.$get=["$log",function(n){return function(){n.error.apply(n,arguments)}}]}function yf(n){return s(n)?et(n)?n.toISOString():hr(n):n}function ia(){this.$get=function(){return function(n){if(!n)return"";var i=[];return ve(n,function(n,u){null===n||r(n)||(c(n)?t(n,function(n){i.push(ht(u)+"="+ht(yf(n)))}):i.push(ht(u)+"="+ht(yf(n))))}),i.join("&")}}}function ra(){this.$get=function(){return function(n){function i(n,f,e){null===n||r(n)||(c(n)?t(n,function(n,t){i(n,f+"["+(s(n)?t:"")+"]")}):s(n)&&!et(n)?ve(n,function(n,t){i(n,f+(e?"":"[")+t+(e?"":"]"))}):u.push(ht(f)+"="+ht(yf(n))))}if(!n)return"";var u=[];return i(n,"",!0),u.join("&")}}}function pf(n,t){var r,i;return h(n)&&(r=n.replace(tp,"").trim(),r&&(i=t("Content-Type"),(i=i&&0===i.indexOf(yh))||(i=(i=r.match(gy))&&np[i[0]].test(r)),i&&(n=be(r)))),n}function wo(n){var i=y(),r;return h(n)?t(n.split("\n"),function(n){r=n.indexOf(":");var t=v(p(n.substr(0,r)));n=p(n.substr(r+1));t&&(i[t]=i[t]?i[t]+", "+n:n)}):s(n)&&t(n,function(n,t){var r=v(t),u=p(n);r&&(i[r]=i[r]?i[r]+", "+u:u)}),i}function bo(n){var t;return function(i){return t||(t=wo(n)),i?(i=t[v(i)],void 0===i&&(i=null),i):t}}function ko(n,i,r,u){return f(u)?u(n,i,r):(t(u,function(t){n=t(n,i,r)}),n)}function ua(){var n=this.defaults={transformResponse:[pf],transformRequest:[function(n){return s(n)&&"[object File]"!==rt.call(n)&&"[object Blob]"!==rt.call(n)&&"[object FormData]"!==rt.call(n)?hr(n):n}],headers:{common:{Accept:"application/json, text/plain, */*"},post:st(ce),put:st(ce),patch:st(ce)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},i=!1,e,o;this.useApplyAsync=function(n){return u(n)?(i=!!n,this):i};e=!0;this.useLegacyPromiseExtensions=function(n){return u(n)?(e=!!n,this):e};o=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(y,p,w,b,k,d){function g(i){function c(n,t){for(var u,f,i=0,r=t.length;i<r;)u=t[i++],f=t[i++],n=n.then(u,f);return t.length=0,n}function b(n,i){var r,u={};return t(n,function(n,t){f(n)?(r=n(i),null!=r&&(u[t]=r)):u[t]=n}),u}function y(n){var t=a({},n);return t.data=ko(n.data,n.headers,n.status,o.transformResponse),n=n.status,200<=n&&300>n?t:k.reject(t)}var o;if(!s(i))throw l("$http")("badreq",i);if(!h(i.url))throw l("$http")("badreq",i.url);o=a({method:"get",transformRequest:n.transformRequest,transformResponse:n.transformResponse,paramSerializer:n.paramSerializer},i);o.headers=function(t){var i=n.headers,u=a({},t.headers),r,f,e,i=a({},i.common,i[v(t.method)]);n:for(r in i){f=v(r);for(e in u)if(v(e)===f)continue n;u[r]=i[r]}return b(u,st(t))}(i);o.method=bu(o.method);o.paramSerializer=h(o.paramSerializer)?d.get(o.paramSerializer):o.paramSerializer;var p=[],w=[],u=k.when(o);return t(nt,function(n){(n.request||n.requestError)&&p.unshift(n.request,n.requestError);(n.response||n.responseError)&&w.push(n.response,n.responseError)}),u=c(u,p),u=u.then(function(i){var u=i.headers,f=ko(i.data,bo(u),void 0,i.transformRequest);return r(f)&&t(u,function(n,t){"content-type"===v(t)&&delete u[t]}),r(i.withCredentials)&&!r(n.withCredentials)&&(i.withCredentials=n.withCredentials),tt(i,f).then(y,y)}),u=c(u,w),e?(u.success=function(n){return vi(n,"fn"),u.then(function(t){n(t.data,t.status,t.headers,o)}),u},u.error=function(n){return vi(n,"fn"),u.then(null,function(t){n(t.data,t.status,t.headers,o)}),u}):(u.success=ph("success"),u.error=ph("error")),u}function tt(e,o){function nt(n){if(n){var r={};return t(n,function(n,t){r[t]=function(t){function r(){n(t)}i?b.$applyAsync(r):b.$$phase?r():b.$apply(r)}}),r}}function et(n,t,r,u){function f(){v(t,n,r,u)}l&&(200<=n&&300>n?l.put(a,[n,t,wo(r),u]):l.remove(a));i?b.$applyAsync(f):(f(),b.$$phase||b.$apply())}function v(n,t,i,r){t=-1<=t?t:0;(200<=t&&300>t?w.resolve:w.reject)({data:n,status:t,headers:bo(i),config:e,statusText:r})}function tt(n){v(n.data,n.status,st(n.headers()),n.statusText)}function ut(){var n=g.pendingRequests.indexOf(e);-1!==n&&g.pendingRequests.splice(n,1)}var w=k.defer(),d=w.promise,l,h,ft=e.headers,a=it(e.url,e.paramSerializer(e.params));return g.pendingRequests.push(e),d.then(ut,ut),(e.cache||n.cache)&&!1!==e.cache&&("GET"===e.method||"JSONP"===e.method)&&(l=s(e.cache)?e.cache:s(n.cache)?n.cache:rt),l&&(h=l.get(a),u(h)?h&&f(h.then)?h.then(tt,tt):c(h)?v(h[1],h[0],st(h[2]),h[3]):v(h,200,{},"OK"):l.put(a,d)),r(h)&&((h=vs(e.url)?p()[e.xsrfCookieName||n.xsrfCookieName]:void 0)&&(ft[e.xsrfHeaderName||n.xsrfHeaderName]=h),y(e.method,a,o,et,ft,e.timeout,e.withCredentials,e.responseType,nt(e.eventHandlers),nt(e.uploadEventHandlers))),d}function it(n,t){return 0<t.length&&(n+=(-1==n.indexOf("?")?"?":"&")+t),n}var rt=w("$http"),nt;return n.paramSerializer=h(n.paramSerializer)?d.get(n.paramSerializer):n.paramSerializer,nt=[],t(o,function(n){nt.unshift(h(n)?d.get(n):d.invoke(n))}),g.pendingRequests=[],function(){t(arguments,function(n){g[n]=function(t,i){return g(a({},i||{},{method:n,url:t}))}})}("get","delete","head","jsonp"),function(){t(arguments,function(n){g[n]=function(t,i,r){return g(a({},r||{},{method:n,url:t,data:i}))}})}("post","put","patch"),g.defaults=n,g}]}function fa(){this.$get=function(){return function(){return new n.XMLHttpRequest}}}function ea(){this.$get=["$browser","$jsonpCallbacks","$document","$xhrFactory",function(n,t,i,r){return oa(n,r,n.defer,t,i[0])}]}function oa(n,i,e,s,h){function c(n,t,i){n=n.replace("JSON_CALLBACK",t);var r=h.createElement("script"),u=null;return r.type="text/javascript",r.src=n,r.async=!0,u=function(n){r.removeEventListener("load",u,!1);r.removeEventListener("error",u,!1);h.body.removeChild(r);r=null;var f=-1,e="unknown";n&&("load"!==n.type||s.wasCalled(t)||(n={type:"error"}),e=n.type,f="error"===n.type?404:200);i&&i(f,e)},r.addEventListener("load",u,!1),r.addEventListener("error",u,!1),h.body.appendChild(r),u}return function(h,l,a,y,p,w,b,k,d,g){function ft(){it&&it();nt&&nt.abort()}function rt(t,i,r,f,s){u(ut)&&e.cancel(ut);it=nt=null;t(i,r,f,s);n.$$completeOutstandingRequest(o)}var tt,it,nt,ut;if(n.$$incOutstandingRequestCount(),l=l||n.url(),"jsonp"===v(h))tt=s.createCallback(l),it=c(l,tt,function(n,t){var i=200===n&&s.getResponse(tt);rt(y,n,i,"",t);s.removeCallback(tt)});else{if(nt=i(h,l),nt.open(h,l,!0),t(p,function(n,t){u(n)&&nt.setRequestHeader(t,n)}),nt.onload=function(){var i=nt.statusText||"",t="response"in nt?nt.response:nt.responseText,n=1223===nt.status?204:nt.status;0===n&&(n=t?200:"file"==ni(l).protocol?404:0);rt(y,n,t,nt.getAllResponseHeaders(),i)},h=function(){rt(y,-1,null,null,"")},nt.onerror=h,nt.onabort=h,t(d,function(n,t){nt.addEventListener(t,n)}),t(g,function(n,t){nt.upload.addEventListener(t,n)}),b&&(nt.withCredentials=!0),k)try{nt.responseType=k}catch(et){if("json"!==k)throw et;}nt.send(r(a)?null:a)}0<w?ut=e(ft,w):w&&f(w.then)&&w.then(ft)}}function sa(){var n="{{",t="}}";this.startSymbol=function(t){return t?(n=t,this):n};this.endSymbol=function(n){return n?(t=n,this):t};this.$get=["$parse","$exceptionHandler","$sce",function(i,e,o){function c(n){return"\\\\\\"+n}function s(i){return i.replace(p,n).replace(w,t)}function v(n,t,i,r){var u;return u=n.$watch(function(n){return u(),r(n)},t,i)}function h(h,c,p,w){function et(n){var i,t;try{if(i=n,n=p?o.getTrusted(p,i):o.valueOf(i),w&&!u(n))t=n;else if(null==n)t="";else{switch(typeof n){case"string":break;case"number":n=""+n;break;default:n=hr(n)}t=n}return t}catch(r){e(ai.interr(h,r))}}var k,d,rt,ut;if(!h.length||-1===h.indexOf(n))return c||(c=s(h),k=ft(c),k.exp=h,k.expressions=[],k.$$watchDelegate=v),k;w=!!w;var g,tt,b=0,nt=[],it=[];for(k=h.length,d=[],rt=[];b<k;)if(-1!=(g=h.indexOf(n,b))&&-1!=(tt=h.indexOf(t,g+l)))b!==g&&d.push(s(h.substring(b,g))),b=h.substring(g+l,tt),nt.push(b),it.push(i(b,et)),b=tt+y,rt.push(d.length),d.push("");else{b!==k&&d.push(s(h.substring(b)));break}return p&&1<d.length&&ai.throwNoconcat(h),!c||nt.length?(ut=function(n){for(var t=0,i=nt.length;t<i;t++){if(w&&r(n[t]))return;d[rt[t]]=n[t]}return d.join("")},a(function(n){var t=0,i=nt.length,r=Array(i);try{for(;t<i;t++)r[t]=it[t](n);return ut(r)}catch(u){e(ai.interr(h,u))}},{exp:h,expressions:nt,$$watchDelegate:function(n,t){var i;return n.$watchGroup(it,function(r,u){var e=ut(r);f(t)&&t.call(this,e,r!==u?i:e,n);i=e})}})):void 0}var l=n.length,y=t.length,p=new RegExp(n.replace(/./g,c),"g"),w=new RegExp(t.replace(/./g,c),"g");return h.startSymbol=function(){return n},h.endSymbol=function(){return t},h}]}function ha(){this.$get=["$rootScope","$window","$q","$$q","$browser",function(n,t,i,r,f){function o(o,s,h,c){function p(){w?o.apply(null,b):o(a)}var w=4<arguments.length,b=w?bt.call(arguments,4):[],k=t.setInterval,d=t.clearInterval,a=0,y=u(c)&&!c,v=(y?r:i).defer(),l=v.promise;return h=u(h)?h:0,l.$$intervalId=k(function(){y?f.defer(p):n.$evalAsync(p);v.notify(a++);0<h&&a>=h&&(v.resolve(a),d(l.$$intervalId),delete e[l.$$intervalId]);y||n.$apply()},s),e[l.$$intervalId]=v,l}var e={};return o.cancel=function(n){return n&&n.$$intervalId in e?(e[n.$$intervalId].reject("canceled"),t.clearInterval(n.$$intervalId),delete e[n.$$intervalId],!0):!1},o}]}function wf(n){n=n.split("/");for(var t=n.length;t--;)n[t]=tu(n[t]);return n.join("/")}function go(n,t){var i=ni(n);t.$$protocol=i.protocol;t.$$host=i.hostname;t.$$port=tt(i.port)||fp[i.protocol]||null}function ns(n,t){var r="/"!==n.charAt(0),i;r&&(n="/"+n);i=ni(n);t.$$path=decodeURIComponent(r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname);t.$$search=ge(i.search);t.$$hash=decodeURIComponent(i.hash);t.$$path&&"/"!=t.$$path.charAt(0)&&(t.$$path="/"+t.$$path)}function pt(n,t){if(0===t.lastIndexOf(n,0))return t.substr(n.length)}function oi(n){var t=n.indexOf("#");return-1==t?n:n.substr(0,t)}function yr(n){return n.replace(/(#.+)|#$/,"$1")}function bf(n,t,i){this.$$html5=!0;i=i||"";go(n,this);this.$$parse=function(n){var i=pt(t,n);if(!h(i))throw tf("ipthprfx",n,t);ns(i,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var n=lf(this.$$search),i=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=wf(this.$$path)+(n?"?"+n:"")+i;this.$$absUrl=t+this.$$url.substr(1)};this.$$parseLinkUrl=function(r,f){if(f&&"#"===f[0])return this.hash(f.slice(1)),!0;var e,o;return u(e=pt(n,r))?(o=e,o=u(e=pt(i,e))?t+(pt("/",e)||e):n+o):u(e=pt(t,r))?o=t+e:t==r+"/"&&(o=t),o&&this.$$parse(o),!!o}}function kf(n,t,i){go(n,this);this.$$parse=function(u){var e=pt(n,u)||pt(t,u),f,o;r(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",r(e)&&(n=u,this.replace())):(f=pt(i,e),r(f)&&(f=e));ns(f,this);u=this.$$path;e=n;o=/^\/[A-Z]:(\/.*)/;0===f.lastIndexOf(e,0)&&(f=f.replace(e,""));o.exec(f)||(u=(f=o.exec(u))?f[1]:u);this.$$path=u;this.$$compose()};this.$$compose=function(){var t=lf(this.$$search),r=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=wf(this.$$path)+(t?"?"+t:"")+r;this.$$absUrl=n+(this.$$url?i+this.$$url:"")};this.$$parseLinkUrl=function(t){return oi(n)==oi(t)?(this.$$parse(t),!0):!1}}function ts(n,t,i){this.$$html5=!0;kf.apply(this,arguments);this.$$parseLinkUrl=function(r,u){if(u&&"#"===u[0])return this.hash(u.slice(1)),!0;var f,e;return n==oi(r)?f=r:(e=pt(t,r))?f=n+i+e:t===r+"/"&&(f=t),f&&this.$$parse(f),!!f};this.$$compose=function(){var t=lf(this.$$search),r=this.$$hash?"#"+tu(this.$$hash):"";this.$$url=wf(this.$$path)+(t?"?"+t:"")+r;this.$$absUrl=n+i+this.$$url}}function au(n){return function(){return this[n]}}function is(n,t){return function(i){return r(i)?this[n]:(this[n]=t(i),this.$$compose(),this)}}function ca(){var t="",n={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(n){return u(n)?(t=n,this):t};this.html5Mode=function(t){return ui(t)?(n.enabled=t,this):s(t)?(ui(t.enabled)&&(n.enabled=t.enabled),ui(t.requireBase)&&(n.requireBase=t.requireBase),ui(t.rewriteLinks)&&(n.rewriteLinks=t.rewriteLinks),this):n};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(i,u,f,o,h){function w(n,t,i){var r=c.url(),f=c.$$state;try{u.url(n,t,i);c.$$state=u.state()}catch(e){throw c.url(r),c.$$state=f,e;}}function b(n,t){i.$broadcast("$locationChangeSuccess",c.absUrl(),n,c.$$state,t)}var c,a,l,v,p,k,y;if(a=u.baseHref(),l=u.url(),n.enabled){if(!a&&n.requireBase)throw tf("nobase");v=l.substring(0,l.indexOf("/",l.indexOf("//")+2))+(a||"/");a=f.history?bf:ts}else v=oi(l),a=kf;p=v.substr(0,oi(v).lastIndexOf("/")+1);c=new a(v,p,"#"+t);c.$$parseLinkUrl(l,l);c.$$state=u.state();k=/^\s*(javascript|mailto):/i;o.on("click",function(t){var r,f,l;if(n.rewriteLinks&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&2!=t.which&&2!=t.button){for(r=e(t.target);"a"!==at(r[0]);)if(r[0]===o[0]||!(r=r.parent())[0])return;f=r.prop("href");l=r.attr("href")||r.attr("xlink:href");s(f)&&"[object SVGAnimatedString]"===f.toString()&&(f=ni(f.animVal).href);k.test(f)||!f||r.attr("target")||t.isDefaultPrevented()||!c.$$parseLinkUrl(f,l)||(t.preventDefault(),c.absUrl()!=u.url()&&(i.$apply(),h.angular["ff-684208-preventDefault"]=!0))}});yr(c.absUrl())!=yr(l)&&u.url(c.absUrl(),!0);y=!0;u.onUrlChange(function(n,t){r(pt(p,n))?h.location.href=n:(i.$evalAsync(function(){var r=c.absUrl(),u=c.$$state,f;n=yr(n);c.$$parse(n);c.$$state=t;f=i.$broadcast("$locationChangeStart",n,r,t,u).defaultPrevented;c.absUrl()===n&&(f?(c.$$parse(r),c.$$state=u,w(r,!1,u)):(y=!1,b(r,u)))}),i.$$phase||i.$digest())});return i.$watch(function(){var t=yr(u.url()),e=yr(c.absUrl()),n=u.state(),o=c.$$replace,r=t!==e||c.$$html5&&f.history&&n!==c.$$state;(y||r)&&(y=!1,i.$evalAsync(function(){var u=c.absUrl(),f=i.$broadcast("$locationChangeStart",u,t,c.$$state,n).defaultPrevented;c.absUrl()===u&&(f?(c.$$parse(t),c.$$state=n):(r&&w(u,o,n===c.$$state?null:c.$$state),b(t,n)))}));c.$$replace=!1}),c}]}function la(){var n=!0,i=this;this.debugEnabled=function(t){return u(t)?(n=t,this):n};this.$get=["$window",function(r){function f(n){return n instanceof Error&&(n.stack?n=n.message&&-1===n.stack.indexOf(n.message)?"Error: "+n.message+"\n"+n.stack:n.stack:n.sourceURL&&(n=n.message+"\n"+n.sourceURL+":"+n.line)),n}function u(n){var i=r.console||{},u=i[n]||i.log||o;n=!1;try{n=!!u.apply}catch(e){}return n?function(){var n=[];return t(arguments,function(t){n.push(f(t))}),u.apply(i,n)}:function(n,t){u(n,null==t?"":t)}}return{log:u("log"),info:u("info"),warn:u("warn"),error:u("error"),debug:function(){var t=u("debug");return function(){n&&t.apply(i,arguments)}}()}}]}function wi(n,t){if("__defineGetter__"===n||"__defineSetter__"===n||"__lookupGetter__"===n||"__lookupSetter__"===n||"__proto__"===n)throw it("isecfld",t);return n}function aa(n){return n+""}function gt(n,t){if(n){if(n.constructor===n)throw it("isecfn",t);if(n.window===n)throw it("isecwindow",t);if(n.children&&(n.nodeName||n.prop&&n.attr&&n.find))throw it("isecdom",t);if(n===Object)throw it("isecobj",t);}return n}function rs(n,t){if(n){if(n.constructor===n)throw it("isecfn",t);if(n===op||n===sp||n===hp)throw it("isecff",t);}}function vu(n,t){if(n&&(n===0..constructor||n===(!1).constructor||n==="".constructor||n==={}.constructor||n===[].constructor||n===Function.constructor))throw it("isecaf",t);}function va(n,t){return"undefined"!=typeof n?n:t}function us(n,t){return"undefined"==typeof n?t:"undefined"==typeof t?n:n+t}function k(n,r){var u,f;switch(n.type){case i.Program:u=!0;t(n.body,function(n){k(n.expression,r);u=u&&n.expression.constant});n.constant=u;break;case i.Literal:n.constant=!0;n.toWatch=[];break;case i.UnaryExpression:k(n.argument,r);n.constant=n.argument.constant;n.toWatch=n.argument.toWatch;break;case i.BinaryExpression:k(n.left,r);k(n.right,r);n.constant=n.left.constant&&n.right.constant;n.toWatch=n.left.toWatch.concat(n.right.toWatch);break;case i.LogicalExpression:k(n.left,r);k(n.right,r);n.constant=n.left.constant&&n.right.constant;n.toWatch=n.constant?[]:[n];break;case i.ConditionalExpression:k(n.test,r);k(n.alternate,r);k(n.consequent,r);n.constant=n.test.constant&&n.alternate.constant&&n.consequent.constant;n.toWatch=n.constant?[]:[n];break;case i.Identifier:n.constant=!1;n.toWatch=[n];break;case i.MemberExpression:k(n.object,r);n.computed&&k(n.property,r);n.constant=n.object.constant&&(!n.computed||n.property.constant);n.toWatch=[n];break;case i.CallExpression:u=n.filter?!r(n.callee.name).$stateful:!1;f=[];t(n.arguments,function(n){k(n,r);u=u&&n.constant;n.constant||f.push.apply(f,n.toWatch)});n.constant=u;n.toWatch=n.filter&&!r(n.callee.name).$stateful?f:[n];break;case i.AssignmentExpression:k(n.left,r);k(n.right,r);n.constant=n.left.constant&&n.right.constant;n.toWatch=[n];break;case i.ArrayExpression:u=!0;f=[];t(n.elements,function(n){k(n,r);u=u&&n.constant;n.constant||f.push.apply(f,n.toWatch)});n.constant=u;n.toWatch=f;break;case i.ObjectExpression:u=!0;f=[];t(n.properties,function(n){k(n.value,r);u=u&&n.value.constant&&!n.computed;n.value.constant||f.push.apply(f,n.value.toWatch)});n.constant=u;n.toWatch=f;break;case i.ThisExpression:n.constant=!1;n.toWatch=[];break;case i.LocalsExpression:n.constant=!1;n.toWatch=[]}}function fs(n){if(1==n.length){n=n[0].expression;var t=n.toWatch;return 1!==t.length?t:t[0]!==n?t:void 0}}function es(n){return n.type===i.Identifier||n.type===i.MemberExpression}function os(n){if(1===n.body.length&&es(n.body[0].expression))return{type:i.AssignmentExpression,left:n.body[0].expression,right:{type:i.NGValueParameter},operator:"="}}function ss(n){return 0===n.body.length||1===n.body.length&&(n.body[0].expression.type===i.Literal||n.body[0].expression.type===i.ArrayExpression||n.body[0].expression.type===i.ObjectExpression)}function hs(n,t){this.astBuilder=n;this.$filter=t}function cs(n,t){this.astBuilder=n;this.$filter=t}function yu(n){return"constructor"==n}function df(n){return f(n.valueOf)?n.valueOf():cp.call(n)}function ya(){var e=y(),s=y(),r={"true":!0,"false":!1,"null":null,undefined:void 0},n,i;this.addLiteral=function(n,t){r[n]=t};this.setIdentifierFns=function(t,r){return n=t,i=r,this};this.$get=["$filter",function(h){function p(n,t,i){var r,l,u,f,p;i=i||c;switch(typeof n){case"string":return u=n=n.trim(),f=i?s:e,r=f[u],r||(":"===n.charAt(0)&&":"===n.charAt(1)&&(l=!0,n=n.substring(2)),r=i?nt:g,p=new uf(r),r=new ff(p,h,r).parse(n),r.constant?r.$$watchDelegate=d:l?r.$$watchDelegate=r.literal?b:w:r.inputs&&(r.$$watchDelegate=v),i&&(r=a(r)),f[u]=r),y(r,t);case"function":return y(n,t);default:return y(o,t)}}function a(n){function t(t,i,r,u){var f=c;c=!0;try{return n(t,i,r,u)}finally{c=f}}if(!n)return n;t.$$watchDelegate=n.$$watchDelegate;t.assign=a(n.assign);t.constant=n.constant;t.literal=n.literal;for(var i=0;n.inputs&&i<n.inputs.length;++i)n.inputs[i]=a(n.inputs[i]);return t.inputs=n.inputs,t}function l(n,t){return null==n||null==t?n===t:"object"==typeof n&&(n=df(n),"object"==typeof n)?!1:n===t||n!==n&&t!==t}function v(n,t,i,r,u){var f=r.inputs,e,s;if(1===f.length)return s=l,f=f[0],n.$watch(function(n){var t=f(n);return l(t,s)||(e=r(n,void 0,void 0,[t]),s=t&&df(t)),e},t,i,u);for(var h=[],c=[],o=0,a=f.length;o<a;o++)h[o]=l,c[o]=null;return n.$watch(function(n){for(var i,u=!1,t=0,o=f.length;t<o;t++)i=f[t](n),(u||(u=!l(i,h[t])))&&(c[t]=i,h[t]=i&&df(i));return u&&(e=r(n,void 0,void 0,c)),e},t,i,u)}function w(n,t,i,r){var e,o;return e=n.$watch(function(n){return r(n)},function(n,i,r){o=n;f(t)&&t.apply(this,arguments);u(n)&&r.$$postDigest(function(){u(o)&&e()})},i)}function b(n,i,r,e){function o(n){var i=!0;return t(n,function(n){u(n)||(i=!1)}),i}var s,h;return s=n.$watch(function(n){return e(n)},function(n,t,r){h=n;f(i)&&i.call(this,n,t,r);o(n)&&r.$$postDigest(function(){o(h)&&s()})},r)}function d(n,t,i,r){var u;return u=n.$watch(function(n){return u(),r(n)},t,i)}function y(n,t){if(!t)return n;var i=n.$$watchDelegate,r=!1,i=i!==b&&i!==w?function(i,u,f,e){return f=r&&e?e[0]:n(i,u,f,e),t(f,i,u)}:function(i,r,f,e){return f=n(i,r,f,e),i=t(f,i,r),u(f)?i:f};return n.$$watchDelegate&&n.$$watchDelegate!==v?i.$$watchDelegate=n.$$watchDelegate:t.$stateful||(i.$$watchDelegate=v,r=!n.inputs,i.inputs=n.inputs?n.inputs:[n]),i}var k=ci().noUnsafeEval,g={csp:k,expensiveChecks:!1,literals:dt(r),isIdentifierStart:f(n)&&n,isIdentifierContinue:f(i)&&i},nt={csp:k,expensiveChecks:!0,literals:dt(r),isIdentifierStart:f(n)&&n,isIdentifierContinue:f(i)&&i},c=!1;return p.$$runningExpensiveChecks=function(){return c},p}]}function pa(){this.$get=["$rootScope","$exceptionHandler",function(n,t){return ls(function(t){n.$evalAsync(t)},t)}]}function wa(){this.$get=["$browser","$exceptionHandler",function(n,t){return ls(function(t){n.defer(t)},t)}]}function ls(n,i){function y(){this.$$state={status:0}}function o(n,t){return function(i){t.call(n,i)}}function p(t){!t.processScheduled&&t.pending&&(t.processScheduled=!0,n(function(){var e,n,u,r,o;for(u=t.pending,t.processScheduled=!1,t.pending=void 0,r=0,o=u.length;r<o;++r){n=u[r][0];e=u[r][t.status];try{f(e)?n.resolve(e(t.value)):1===t.status?n.resolve(t.value):n.reject(t.value)}catch(s){n.reject(s);i(s)}}}))}function u(){this.promise=new y}var w=l("$q",TypeError),b=function(){var n=new u;return n.resolve=o(n,n.resolve),n.reject=o(n,n.reject),n.notify=o(n,n.notify),n};a(y.prototype,{then:function(n,t,i){if(r(n)&&r(t)&&r(i))return this;var f=new u;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([f,n,t,i]),0<this.$$state.status&&p(this.$$state),f.promise},"catch":function(n){return this.then(null,n)},"finally":function(n,t){return this.then(function(t){return k(t,!0,n)},function(t){return k(t,!1,n)},t)}});a(u.prototype,{resolve:function(n){this.promise.$$state.status||(n===this.promise?this.$$reject(w("qcycle",n)):this.$$resolve(n))},$$resolve:function(n){function c(n){t||(t=!0,e.$$resolve(n))}function u(n){t||(t=!0,e.$$reject(n))}var r,e=this,t=!1;try{(s(n)||f(n))&&(r=n&&n.then);f(r)?(this.promise.$$state.status=-1,r.call(n,c,u,o(this,this.notify))):(this.promise.$$state.value=n,this.promise.$$state.status=1,p(this.promise.$$state))}catch(h){u(h);i(h)}},reject:function(n){this.promise.$$state.status||this.$$reject(n)},$$reject:function(n){this.promise.$$state.value=n;this.promise.$$state.status=2;p(this.promise.$$state)},notify:function(t){var r=this.promise.$$state.pending;0>=this.promise.$$state.status&&r&&r.length&&n(function(){for(var u,e,n=0,o=r.length;n<o;n++){e=r[n][0];u=r[n][3];try{e.notify(f(u)?u(t):t)}catch(s){i(s)}}})}});var h=function(n,t){var i=new u;return t?i.resolve(n):i.reject(n),i.promise},k=function(n,t,i){var r=null;try{f(i)&&(r=i())}catch(u){return h(u,!1)}return r&&f(r.then)?r.then(function(){return h(n,t)},function(n){return h(n,!1)}):h(n,t)},v=function(n,t,i,r){var f=new u;return f.resolve(n),f.promise.then(t,i,r)},e=function(n){if(!f(n))throw w("norslvr",n);var t=new u;return n(function(n){t.resolve(n)},function(n){t.reject(n)}),t.promise};return e.prototype=y.prototype,e.defer=b,e.reject=function(n){var t=new u;return t.reject(n),t.promise},e.when=v,e.resolve=v,e.all=function(n){var r=new u,f=0,i=c(n)?[]:{};return t(n,function(n,t){f++;v(n).then(function(n){i.hasOwnProperty(t)||(i[t]=n,--f||r.resolve(i))},function(n){i.hasOwnProperty(t)||r.reject(n)})}),0===f&&r.resolve(i),r.promise},e.race=function(n){var i=b();return t(n,function(n){v(n).then(i.resolve,i.reject)}),i.promise},e}function ba(){this.$get=["$window","$timeout",function(n,t){var i=n.requestAnimationFrame||n.webkitRequestAnimationFrame,f=n.cancelAnimationFrame||n.webkitCancelAnimationFrame||n.webkitCancelRequestAnimationFrame,r=!!i,u=r?function(n){var t=i(n);return function(){f(t)}}:function(n){var i=t(n,16.66,!1);return function(){t.cancel(i)}};return u.supported=r,u}]}function ka(){function h(n){function t(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++ku;this.$$ChildScope=null}return t.prototype=n,t}var u=10,e=l("$rootScope"),n=null,i=null;this.digestTtl=function(n){return arguments.length&&(u=n),u};this.$get=["$exceptionHandler","$parse","$browser",function(c,l,a){function ut(n){n.currentScope.$$destroyed=!0}function b(n){9===ti&&(n.$$childHead&&b(n.$$childHead),n.$$nextSibling&&b(n.$$nextSibling));n.$parent=n.$$nextSibling=n.$$prevSibling=n.$$childHead=n.$$childTail=n.$root=n.$$watchers=null}function p(){this.$id=++ku;this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=!1;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$$isolateBindings=null}function nt(n){if(v.$$phase)throw e("inprog",v.$$phase);v.$$phase=n}function k(n,t){do n.$$watchersCount+=t;while(n=n.$parent)}function tt(n,t,i){do n.$$listenerCount[i]-=t,0===n.$$listenerCount[i]&&delete n.$$listenerCount[i];while(n=n.$parent)}function it(){}function rt(){for(;d.length;)try{d.shift()()}catch(n){c(n)}i=null}function ft(){null===i&&(i=a.defer(function(){v.$apply(rt)}))}p.prototype={constructor:p,$new:function(n,t){var i;return t=t||this,n?(i=new p,i.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=h(this)),i=new this.$$ChildScope),i.$parent=t,i.$$prevSibling=t.$$childTail,t.$$childHead?(t.$$childTail.$$nextSibling=i,t.$$childTail=i):t.$$childHead=t.$$childTail=i,(n||t!=this)&&i.$on("$destroy",ut),i},$watch:function(t,i,r,u){var e=l(t);if(e.$$watchDelegate)return e.$$watchDelegate(this,i,r,e,t);var h=this,s=h.$$watchers,c={fn:i,last:it,get:e,exp:u||t,eq:!!r};return n=null,f(i)||(c.fn=o),s||(s=h.$$watchers=[]),s.unshift(c),k(this,1),function(){0<=er(s,c)&&k(h,-1);n=null}},$watchGroup:function(n,i){function c(){o=!1;h?(h=!1,i(r,r,u)):i(r,f,u)}var f=Array(n.length),r=Array(n.length),e=[],u=this,o=!1,h=!0,s;return n.length?1===n.length?this.$watch(n[0],function(n,t,u){r[0]=n;f[0]=t;i(r,n===t?r:f,u)}):(t(n,function(n,t){var i=u.$watch(n,function(n,i){r[t]=n;f[t]=i;o||(o=!0,u.$evalAsync(c))});e.push(i)}),function(){for(;e.length;)e.shift()()}):(s=!0,u.$evalAsync(function(){s&&i(r,r,u)}),function(){s=!1})},$watchCollection:function(n,t){function h(n){i=n;var t,c,o,h;if(!r(i)){if(s(i))if(kt(i))for(u!==a&&(u=a,e=u.length=0,f++),n=i.length,e!==n&&(f++,u.length=e=n),t=0;t<n;t++)h=u[t],o=i[t],c=h!==h&&o!==o,c||h===o||(f++,u[t]=o);else{u!==v&&(u=v={},e=0,f++);n=0;for(t in i)wt.call(i,t)&&(n++,o=i[t],h=u[t],t in u?(c=h!==h&&o!==o,c||h===o||(f++,u[t]=o)):(e++,u[t]=o,f++));if(e>n)for(t in f++,u)wt.call(i,t)||(e--,delete u[t])}else u!==i&&(u=i,f++);return f}}h.$stateful=!0;var c=this,i,u,o,p=1<t.length,f=0,w=l(n,h),a=[],v={},y=!0,e=0;return this.$watch(w,function(){if(y?(y=!1,t(i,i,c)):t(i,o,c),p)if(s(i))if(kt(i)){o=Array(i.length);for(var n=0;n<i.length;n++)o[n]=i[n]}else for(n in o={},i)wt.call(i,n)&&(o[n]=i[n]);else o=i})},$digest:function(){var t,s,h,ut,ft,o,d,l,tt=u,r,p=[],b,k;nt("$digest");a.$$checkUrlChange();this===v&&null!==i&&(a.defer.cancel(i),rt());n=null;do{for(l=!1,r=this,o=0;o<y.length;o++){try{k=y[o];k.scope.$eval(k.expression,k.locals)}catch(et){c(et)}n=null}y.length=0;n:do{if(o=r.$$watchers)for(d=o.length;d--;)try{if(t=o[d])if(ft=t.get,(s=ft(r))===(h=t.last)||(t.eq?ot(s,h):"number"==typeof s&&"number"==typeof h&&isNaN(s)&&isNaN(h))){if(t===n){l=!1;break n}}else l=!0,n=t,t.last=t.eq?dt(s,null):s,ut=t.fn,ut(s,h===it?s:h,r),5>tt&&(b=4-tt,p[b]||(p[b]=[]),p[b].push({msg:f(t.exp)?"fn: "+(t.exp.name||t.exp.toString()):t.exp,newVal:s,oldVal:h}))}catch(st){c(st)}if(!(o=r.$$watchersCount&&r.$$childHead||r!==this&&r.$$nextSibling))for(;r!==this&&!(o=r.$$nextSibling);)r=r.$parent}while(r=o);if((l||y.length)&&!tt--)throw v.$$phase=null,e("infdig",u,p);}while(l||y.length);for(v.$$phase=null;g<w.length;)try{w[g++]()}catch(ht){c(ht)}w.length=g=0},$destroy:function(){var n,t;if(!this.$$destroyed){n=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===v&&a.$$applicationDestroyed();k(this,-this.$$watchersCount);for(t in this.$$listenerCount)tt(this,this.$$listenerCount[t],t);n&&n.$$childHead==this&&(n.$$childHead=this.$$nextSibling);n&&n.$$childTail==this&&(n.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=o;this.$on=this.$watch=this.$watchGroup=function(){return o};this.$$listeners={};this.$$nextSibling=null;b(this)}},$eval:function(n,t){return l(n)(this,t)},$evalAsync:function(n,t){v.$$phase||y.length||a.defer(function(){y.length&&v.$digest()});y.push({scope:this,expression:l(n),locals:t})},$$postDigest:function(n){w.push(n)},$apply:function(n){try{nt("$apply");try{return this.$eval(n)}finally{v.$$phase=null}}catch(i){c(i)}finally{try{v.$digest()}catch(t){throw c(t),t;}}},$applyAsync:function(n){function t(){i.$eval(n)}var i=this;n&&d.push(t);n=l(n);ft()},$on:function(n,t){var r=this.$$listeners[n],i,u;r||(this.$$listeners[n]=r=[]);r.push(t);i=this;do i.$$listenerCount[n]||(i.$$listenerCount[n]=0),i.$$listenerCount[n]++;while(i=i.$parent);return u=this,function(){var i=r.indexOf(t);-1!==i&&(r[i]=null,tt(u,1,n))}},$emit:function(n){var o=[],u,r=this,e=!1,t={name:n,targetScope:r,stopPropagation:function(){e=!0},preventDefault:function(){t.defaultPrevented=!0},defaultPrevented:!1},s=or([t],arguments,1),i,f;do{for(u=r.$$listeners[n]||o,t.currentScope=r,i=0,f=u.length;i<f;i++)if(u[i])try{u[i].apply(null,s)}catch(h){c(h)}else u.splice(i,1),i--,f--;if(e)return t.currentScope=null,t;r=r.$parent}while(r);return t.currentScope=null,t},$broadcast:function(n){var t=this,i=this,u={name:n,targetScope:this,preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},e,r,f;if(!this.$$listenerCount[n])return u;for(e=or([u],arguments,1);t=i;){for(u.currentScope=t,i=t.$$listeners[n]||[],r=0,f=i.length;r<f;r++)if(i[r])try{i[r].apply(null,e)}catch(o){c(o)}else i.splice(r,1),r--,f--;if(!(i=t.$$listenerCount[n]&&t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(i=t.$$nextSibling);)t=t.$parent}return u.currentScope=null,u}};var v=new p,y=v.$$asyncQueue=[],w=v.$$postDigestQueue=[],d=v.$$applyAsyncQueue=[],g=0;return v}]}function da(){var n=/^\s*(https?|ftp|mailto|tel|file):/,t=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(t){return u(t)?(n=t,this):n};this.imgSrcSanitizationWhitelist=function(n){return u(n)?(t=n,this):t};this.$get=function(){return function(i,r){var f=r?t:n,u;return u=ni(i).href,""===u||u.match(f)?i:"unsafe:"+u}}}function ga(n){if("self"===n)return n;if(h(n)){if(-1<n.indexOf("***"))throw ri("iwcard",n);return n=sh(n).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+n+"$")}if(rr(n))return new RegExp("^"+n.source+"$");throw ri("imatcher");}function as(n){var i=[];return u(n)&&t(n,function(n){i.push(ga(n))}),i}function nv(){this.SCE_CONTEXTS=lt;var n=["self"],t=[];this.resourceUrlWhitelist=function(t){return arguments.length&&(n=as(t)),n};this.resourceUrlBlacklist=function(n){return arguments.length&&(t=as(n)),t};this.$get=["$injector",function(i){function o(n,t){return"self"===n?vs(t):!!n.exec(t.href)}function f(n){var t=function(n){this.$$unwrapTrustedValue=function(){return n}};return n&&(t.prototype=new n),t.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}var s=function(){throw ri("unsafe");},e,u;return i.has("$sanitize")&&(s=i.get("$sanitize")),e=f(),u={},u[lt.HTML]=f(e),u[lt.CSS]=f(e),u[lt.URL]=f(e),u[lt.JS]=f(e),u[lt.RESOURCE_URL]=f(u[lt.URL]),{trustAs:function(n,t){var i=u.hasOwnProperty(n)?u[n]:null;if(!i)throw ri("icontext",n,t);if(null===t||r(t)||""===t)return t;if("string"!=typeof t)throw ri("itype",n);return new i(t)},getTrusted:function(i,f){var h,e,l,c;if(null===f||r(f)||""===f)return f;if(h=u.hasOwnProperty(i)?u[i]:null,h&&f instanceof h)return f.$$unwrapTrustedValue();if(i===lt.RESOURCE_URL){for(h=ni(f.toString()),c=!1,e=0,l=n.length;e<l;e++)if(o(n[e],h)){c=!0;break}if(c)for(e=0,l=t.length;e<l;e++)if(o(t[e],h)){c=!1;break}if(c)return f;throw ri("insecurl",f.toString());}if(i===lt.HTML)return s(f);throw ri("unsafe");},valueOf:function(n){return n instanceof e?n.$$unwrapTrustedValue():n}}}]}function tv(){var n=!0;this.enabled=function(t){return arguments.length&&(n=!!t),n};this.$get=["$parse","$sceDelegate",function(i,r){var u;if(n&&8>ti)throw ri("iequirks");u=st(lt);u.isEnabled=function(){return n};u.trustAs=r.trustAs;u.getTrusted=r.getTrusted;u.valueOf=r.valueOf;n||(u.trustAs=u.getTrusted=function(n,t){return t},u.valueOf=ir);u.parseAs=function(n,t){var r=i(t);return r.literal&&r.constant?r:i(t,function(t){return u.getTrusted(n,t)})};var f=u.parseAs,e=u.getTrusted,o=u.trustAs;return t(lt,function(n,t){var i=v(t);u[cr("parse_as_"+i)]=function(t){return f(n,t)};u[cr("get_trusted_"+i)]=function(t){return e(n,t)};u[cr("trust_as_"+i)]=function(t){return o(n,t)}}),u}]}function iv(){this.$get=["$window","$document",function(n,t){var o={},a=!(n.chrome&&n.chrome.app&&n.chrome.app.runtime)&&n.history&&n.history.pushState,s=tt((/android (\d+)/.exec(v((n.navigator||{}).userAgent))||[])[1]),y=/Boxee/i.test((n.navigator||{}).userAgent),c=t[0]||{},i,u=c.body&&c.body.style,f=!1,e=!1,l;if(u){for(l in u)if(f=/^(Moz|webkit|ms)(?=[A-Z])/.exec(l)){i=f[0];i=i[0].toUpperCase()+i.substr(1);break}i||(i="WebkitOpacity"in u&&"webkit");f=!!("transition"in u||i+"Transition"in u);e=!!("animation"in u||i+"Animation"in u);!s||f&&e||(f=h(u.webkitTransition),e=h(u.webkitAnimation))}return{history:!(!a||4>s||y),hasEvent:function(n){if("input"===n&&11>=ti)return!1;if(r(o[n])){var t=c.createElement("div");o[n]="on"+n in t}return o[n]},csp:ci(),vendorPrefix:i,transitions:f,animations:e,android:s}}]}function rv(){var n;this.httpOptions=function(t){return t?(n=t,this):n};this.$get=["$templateCache","$http","$q","$sce",function(t,i,u,f){function e(o,s){e.totalPendingRequests++;(!h(o)||r(t.get(o)))&&(o=f.getTrustedResourceUrl(o));var l=i.defaults&&i.defaults.transformResponse;return c(l)?l=l.filter(function(n){return n!==pf}):l===pf&&(l=null),i.get(o,a({cache:t,transformResponse:l},n))["finally"](function(){e.totalPendingRequests--}).then(function(n){return t.put(o,n.data),n.data},function(n){if(!s)throw lp("tpload",o,n.status,n.statusText);return u.reject(n)})}return e.totalPendingRequests=0,e}]}function uv(){this.$get=["$rootScope","$browser","$location",function(n,i,r){return{findBindings:function(n,i,r){n=n.getElementsByClassName("ng-binding");var u=[];return t(n,function(n){var f=ut.element(n).data("$binding");f&&t(f,function(t){r?new RegExp("(^|\\s)"+sh(i)+"(\\s|\\||$)").test(t)&&u.push(n):-1!=t.indexOf(i)&&u.push(n)})}),u},findModels:function(n,t,i){for(var f,u=["ng-","data-ng-","ng\\:"],r=0;r<u.length;++r)if(f=n.querySelectorAll("["+u[r]+"model"+(i?"=":"*=")+'"'+t+'"]'),f.length)return f},getLocation:function(){return r.url()},setLocation:function(t){t!==r.url()&&(r.url(t),n.$digest())},whenStable:function(n){i.notifyWhenNoOutstandingRequests(n)}}}]}function fv(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(n,t,i,r,e){function h(h,c,l){f(h)||(l=c,c=h,h=o);var w=bt.call(arguments,3),p=u(l)&&!l,a=(p?r:i).defer(),v=a.promise,y;return y=t.defer(function(){try{a.resolve(h.apply(null,w))}catch(t){a.reject(t);e(t)}finally{delete s[v.$$timeoutId]}p||n.$apply()},c),v.$$timeoutId=y,s[y]=a,v}var s={};return h.cancel=function(n){return n&&n.$$timeoutId in s?(s[n.$$timeoutId].reject("canceled"),delete s[n.$$timeoutId],t.defer.cancel(n.$$timeoutId)):!1},h}]}function ni(n){return ti&&(nt.setAttribute("href",n),n=nt.href),nt.setAttribute("href",n),{href:nt.href,protocol:nt.protocol?nt.protocol.replace(/:$/,""):"",host:nt.host,search:nt.search?nt.search.replace(/^\?/,""):"",hash:nt.hash?nt.hash.replace(/^#/,""):"",hostname:nt.hostname,port:nt.port,pathname:"/"===nt.pathname.charAt(0)?nt.pathname:"/"+nt.pathname}}function vs(n){return n=h(n)?ni(n):n,n.protocol===bh.protocol&&n.host===bh.host}function ev(){this.$get=ft(n)}function ys(n){function u(n){try{return decodeURIComponent(n)}catch(t){return n}}var f=n[0]||{},t={},i="";return function(){var n,e,o,s,h;if(n=f.cookie||"",n!==i)for(i=n,n=i.split("; "),t={},o=0;o<n.length;o++)e=n[o],s=e.indexOf("="),0<s&&(h=u(e.substring(0,s)),r(t[h])&&(t[h]=u(e.substring(s+1))));return t}}function ov(){this.$get=ys}function ps(n){function i(r,u){if(s(r)){var f={};return t(r,function(n,t){f[t]=i(t,n)}),f}return n.factory(r+"Filter",u)}this.register=i;this.$get=["$injector",function(n){return function(t){return n.get(t+"Filter")}}];i("currency",ws);i("date",nh);i("filter",sv);i("json",av);i("limitTo",vv);i("lowercase",gh);i("number",bs);i("orderBy",th);i("uppercase",nc)}function sv(){return function(n,t,i,r){if(!kt(n)){if(null==n)return n;throw l("filter")("notarray",n);}r=r||"$";var u;switch(gf(t)){case"function":break;case"boolean":case"null":case"number":case"string":u=!0;case"object":t=hv(t,i,r,u);break;default:return n}return Array.prototype.filter.call(n,t)}}function hv(n,t,i,u){var e=s(n)&&i in n;return!0===t?t=ot:f(t)||(t=function(n,t){return r(n)?!1:null===n||null===t?n===t:s(t)||s(n)&&!pe(n)?!1:(n=v(""+n),t=v(""+t),-1!==n.indexOf(t))}),function(r){return e&&!s(r)?si(r,n[i],t,i,!1):si(r,n,t,i,u)}}function si(n,t,i,u,e,o){var h=gf(n),l=gf(t),s;if("string"===l&&"!"===t.charAt(0))return!si(n,t.substring(1),i,u,e);if(c(n))return n.some(function(n){return si(n,t,i,u,e)});switch(h){case"object":if(e){for(s in n)if("$"!==s.charAt(0)&&si(n[s],t,i,u,!0))return!0;return o?!1:si(n,t,i,u,!1)}if("object"===l){for(s in t)if(o=t[s],!f(o)&&!r(o)&&(h=s===u,!si(h?n:n[s],o,i,u,h,h)))return!1;return!0}return i(n,t);case"function":return!1;default:return i(n,t)}}function gf(n){return null===n?"null":typeof n}function ws(n){var t=n.NUMBER_FORMATS;return function(n,i,u){return r(i)&&(i=t.CURRENCY_SYM),r(u)&&(u=t.PATTERNS[1].maxFrac),null==n?n:ks(n,t.PATTERNS[1],t.GROUP_SEP,t.DECIMAL_SEP,u).replace(/\u00A4/g,i)}}function bs(n){var t=n.NUMBER_FORMATS;return function(n,i){return null==n?n:ks(n,t.PATTERNS[0],t.GROUP_SEP,t.DECIMAL_SEP,i)}}function cv(n){var e=0,r,t,i,f,u;for(-1<(t=n.indexOf(dh))&&(n=n.replace(dh,"")),0<(i=n.search(/e/i))?(0>t&&(t=i),t+=+n.slice(i+1),n=n.substring(0,i)):0>t&&(t=n.length),i=0;n.charAt(i)==le;i++);if(i==(u=n.length))r=[0],t=1;else{for(u--;n.charAt(u)==le;)u--;for(t-=i,r=[],f=0;i<=u;i++,f++)r[f]=+n.charAt(i)}return t>kh&&(r=r.splice(0,kh-1),e=t-1,t=1),{d:r,e:e,i:t}}function lv(n,t,i,u){var f=n.d,o=f.length-n.i,e;if(t=r(t)?Math.min(Math.max(i,o),u):+t,i=t+n.i,u=f[i],0<i)for(f.splice(Math.max(n.i,i)),e=i;e<f.length;e++)f[e]=0;else for(o=Math.max(0,o),n.i=1,f.length=Math.max(1,i=t+1),f[0]=0,e=1;e<i;e++)f[e]=0;if(5<=u)if(0>i-1){for(u=0;u>i;u--)f.unshift(0),n.i++;f.unshift(1);n.i++}else f[i-1]++;for(;o<Math.max(0,t);o++)f.push(0);(t=f.reduceRight(function(n,t,i,r){return t+=n,r[i]=t%10,Math.floor(t/10)},0))&&(f.unshift(t),n.i++)}function ks(n,t,i,r,u){if(!h(n)&&!w(n)||isNaN(n))return"";var s=!isFinite(n),o=!1,e=Math.abs(n)+"",f="";if(s)f="∞";else{for(o=cv(e),lv(o,u,t.minFrac,t.maxFrac),f=o.d,e=o.i,u=o.e,s=[],o=f.reduce(function(n,t){return n&&!t},!0);0>e;)f.unshift(0),e++;for(0<e?s=f.splice(e,f.length):(s=f,f=[0]),e=[],f.length>=t.lgSize&&e.unshift(f.splice(-t.lgSize,f.length).join(""));f.length>t.gSize;)e.unshift(f.splice(-t.gSize,f.length).join(""));f.length&&e.unshift(f.join(""));f=e.join(i);s.length&&(f+=r+s.join(""));u&&(f+="e+"+u)}return 0>n&&!o?t.negPre+f+t.negSuf:t.posPre+f+t.posSuf}function pu(n,t,i,r){var u="";for((0>n||r&&0>=n)&&(r?n=-n+1:(n=-n,u="-")),n=""+n;n.length<t;)n=le+n;return i&&(n=n.substr(n.length-t)),u+n}function d(n,t,i,r,u){return i=i||0,function(f){return f=f["get"+n](),(0<i||f>-i)&&(f+=i),0===f&&-12==i&&(f=12),pu(f,t,r,u)}}function pr(n,t,i){return function(r,u){var f=r["get"+n](),e=bu((i?"STANDALONE":"")+(t?"SHORT":"")+n);return u[e][f]}}function ds(n){var t=new Date(n,0,1).getDay();return new Date(n,0,(4>=t?5:12)-t)}function gs(n){return function(t){var i=ds(t.getFullYear());return t=+new Date(t.getFullYear(),t.getMonth(),t.getDate()+(4-t.getDay()))-+i,t=1+Math.round(t/6048e5),pu(t,n)}}function ne(n,t){return 0>=n.getFullYear()?t.ERAS[0]:t.ERAS[1]}function nh(n){function i(n){var t;if(t=n.match(r)){n=new Date(0);var i=0,u=0,f=t[8]?n.setUTCFullYear:n.setFullYear,e=t[8]?n.setUTCHours:n.setHours;t[9]&&(i=tt(t[9]+t[10]),u=tt(t[9]+t[11]));f.call(n,tt(t[1]),tt(t[2])-1,tt(t[3]));i=tt(t[4]||0)-i;u=tt(t[5]||0)-u;f=tt(t[6]||0);t=Math.round(1e3*parseFloat("0."+(t[7]||0)));e.call(n,i,u,f,t)}return n}var r=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(r,u,f){var c="",e=[],s,l,o;if(u=u||"mediumDate",u=n.DATETIME_FORMATS[u]||u,h(r)&&(r=yp.test(r)?tt(r):i(r)),w(r)&&(r=new Date(r)),!et(r)||!isFinite(r.getTime()))return r;for(;u;)(l=vp.exec(u))?(e=or(e,l,1),u=e.pop()):(e.push(u),u=null);return o=r.getTimezoneOffset(),f&&(o=ke(f,o),r=cf(r,f,!0)),t(e,function(t){s=ap[t];c+=s?s(r,n.DATETIME_FORMATS,o):"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),c}}function av(){return function(n,t){return r(t)&&(t=2),hr(n,t)}}function vv(){return function(n,t,i){return(t=Infinity===Math.abs(Number(t))?Number(t):tt(t),isNaN(t))?n:(w(n)&&(n=n.toString()),!kt(n))?n:(i=!i||isNaN(i)?0:tt(i),i=0>i?Math.max(0,n.length+i):i,0<=t?te(n,i,i+t):0===i?te(n,t,n.length):te(n,Math.max(0,i+t),i))}}function te(n,t,i){return h(n)?n.slice(t,i):bt.call(n,t,i)}function th(n){function i(t){return t.map(function(t){var r=1,i=ir,u;return f(t)?i=t:h(t)&&(("+"==t.charAt(0)||"-"==t.charAt(0))&&(r="-"==t.charAt(0)?-1:1,t=t.substring(1)),""!==t&&(i=n(t),i.constant)&&(u=i(),i=function(n){return n[u]})),{get:i,descending:r}})}function t(n){switch(typeof n){case"number":case"boolean":case"string":return!0;default:return!1}}function r(n,t){var f=0,u=n.type,i=t.type,r;return u===i?(i=n.value,r=t.value,"string"===u?(i=i.toLowerCase(),r=r.toLowerCase()):"object"===u&&(s(i)&&(i=n.index),s(r)&&(r=t.index)),i!==r&&(f=i<r?-1:1)):f=u<i?-1:1,f}return function(n,u,e,o){if(null==n)return n;if(!kt(n))throw l("orderBy")("notarray",n);c(u)||(u=[u]);0===u.length&&(u=["+"]);var s=i(u),h=e?-1:1,a=f(o)?o:r;return n=Array.prototype.map.call(n,function(n,i){return{value:n,tieBreaker:{value:i,type:"number",index:i},predicateValues:s.map(function(r){var u=r.get(n);if(r=typeof u,null===u)r="string",u="null";else if("object"===r)n:{if(f(u.valueOf)&&(u=u.valueOf(),t(u)))break n;pe(u)&&(u=u.toString(),t(u))}return{value:u,type:r,index:i}})}}),n.sort(function(n,t){for(var r,i=0,u=s.length;i<u;i++)if(r=a(n.predicateValues[i],t.predicateValues[i]),r)return r*s[i].descending*h;return a(n.tieBreaker,t.tieBreaker)*h}),n.map(function(n){return n.value})}}function bi(n){return f(n)&&(n={link:n}),n.restrict=n.restrict||"AC",ft(n)}function ih(n,i,r,u,f){var e=this,o=[];e.$error={};e.$$success={};e.$pending=void 0;e.$name=f(i.name||i.ngForm||"")(r);e.$dirty=!1;e.$pristine=!0;e.$valid=!0;e.$invalid=!1;e.$submitted=!1;e.$$parentForm=dr;e.$rollbackViewValue=function(){t(o,function(n){n.$rollbackViewValue()})};e.$commitViewValue=function(){t(o,function(n){n.$commitViewValue()})};e.$addControl=function(n){yi(n.$name,"input");o.push(n);n.$name&&(e[n.$name]=n);n.$$parentForm=e};e.$$renameControl=function(n,t){var i=n.$name;e[i]===n&&delete e[i];e[t]=n;n.$name=t};e.$removeControl=function(n){n.$name&&e[n.$name]===n&&delete e[n.$name];t(e.$pending,function(t,i){e.$setValidity(i,null,n)});t(e.$error,function(t,i){e.$setValidity(i,null,n)});t(e.$$success,function(t,i){e.$setValidity(i,null,n)});er(o,n);n.$$parentForm=dr};fh({ctrl:this,$element:n,set:function(n,t,i){var r=n[t];r?-1===r.indexOf(i)&&r.push(i):n[t]=[i]},unset:function(n,t,i){var r=n[t];r&&(er(r,i),0===r.length&&delete n[t])},$animate:u});e.$setDirty=function(){u.removeClass(n,tr);u.addClass(n,ef);e.$dirty=!0;e.$pristine=!1;e.$$parentForm.$setDirty()};e.$setPristine=function(){u.setClass(n,tr,ef+" ng-submitted");e.$dirty=!1;e.$pristine=!0;e.$submitted=!1;t(o,function(n){n.$setPristine()})};e.$setUntouched=function(){t(o,function(n){n.$setUntouched()})};e.$setSubmitted=function(){u.addClass(n,"ng-submitted");e.$submitted=!0;e.$$parentForm.$setSubmitted()}}function ie(n){n.$formatters.push(function(t){return n.$isEmpty(t)?t:t.toString()})}function wr(n,t,i,r,u,f){var h=v(t[0].type),s,e,o,c;if(!u.android){s=!1;t.on("compositionstart",function(){s=!0});t.on("compositionend",function(){s=!1;o()})}if(o=function(n){if(e&&(f.defer.cancel(e),e=null),!s){var u=t.val();n=n&&n.type;"password"===h||i.ngTrim&&"false"===i.ngTrim||(u=p(u));(r.$viewValue!==u||""===u&&r.$$hasNativeValidators)&&r.$setViewValue(u,n)}},u.hasEvent("input"))t.on("input",o);else{c=function(n,t,i){e||(e=f.defer(function(){e=null;t&&t.value===i||o(n)}))};t.on("keydown",function(n){var t=n.keyCode;91===t||15<t&&19>t||37<=t&&40>=t||c(n,this,this.value)});if(u.hasEvent("paste"))t.on("paste cut",c)}t.on("change",o);if(oc[h]&&r.$$hasNativeValidators&&h===i.type)t.on("keydown wheel mousedown",function(n){if(!e){var t=this.validity,i=t.badInput,r=t.typeMismatch;e=f.defer(function(){e=null;t.badInput===i&&t.typeMismatch===r||o(n)})}});r.$render=function(){var n=r.$isEmpty(r.$viewValue)?"":r.$viewValue;t.val()!==n&&t.val(n)}}function wu(n,i){return function(r,u){var e,f;if(et(r))return r;if(h(r)){if('"'==r.charAt(0)&&'"'==r.charAt(r.length-1)&&(r=r.substring(1,r.length-1)),bp.test(r))return new Date(r);if(n.lastIndex=0,e=n.exec(r))return e.shift(),f=u?{yyyy:u.getFullYear(),MM:u.getMonth()+1,dd:u.getDate(),HH:u.getHours(),mm:u.getMinutes(),ss:u.getSeconds(),sss:u.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},t(e,function(n,t){t<i.length&&(f[i[t]]=+n)}),new Date(f.yyyy,f.MM-1,f.dd,f.HH,f.mm,f.ss||0,1e3*f.sss||0)}return NaN}}function br(n,t,i,f){return function(e,o,s,h,c,l,a){function p(n){return n&&!(n.getTime&&n.getTime()!==n.getTime())}function k(n){return u(n)&&!et(n)?i(n)||void 0:n}var v,y,w,b;rh(e,o,s,h);wr(e,o,s,h,c,l);v=h&&h.$options&&h.$options.timezone;h.$$parserName=n;h.$parsers.push(function(n){return h.$isEmpty(n)?null:t.test(n)?(n=i(n,y),v&&(n=cf(n,v)),n):void 0});h.$formatters.push(function(n){if(n&&!et(n))throw nu("datefmt",n);return p(n)?((y=n)&&v&&(y=cf(y,v,!0)),a("date")(n,f,v)):(y=null,"")});(u(s.min)||s.ngMin)&&(h.$validators.min=function(n){return!p(n)||r(w)||i(n)>=w},s.$observe("min",function(n){w=k(n);h.$validate()}));(u(s.max)||s.ngMax)&&(h.$validators.max=function(n){return!p(n)||r(b)||i(n)<=b},s.$observe("max",function(n){b=k(n);h.$validate()}))}}function rh(n,t,i,r){(r.$$hasNativeValidators=s(t[0].validity))&&r.$parsers.push(function(n){var i=t.prop("validity")||{};if(!i.badInput&&!i.typeMismatch)return n})}function uh(n,t,i,r,f){if(u(r)){if(n=n(r),!n.constant)throw nu("constexpr",i,r);return n(t)}return f}function re(n,i){return n="ngClass"+n,["$animate",function(r){function f(n,t){var f=[],r=0,u,i;n:for(;r<n.length;r++){for(u=n[r],i=0;i<t.length;i++)if(u==t[i])continue n;f.push(u)}return f}function u(n){var i=[];return c(n)?(t(n,function(n){i=i.concat(u(n))}),i):h(n)?n.split(" "):s(n)?(t(n,function(n,t){n&&(i=i.concat(t.split(" ")))}),i):n}return{restrict:"AC",link:function(e,o,s){function a(n){n=h(n,1);s.$addClass(n)}function h(n,i){var r=o.data("$classCounts")||y(),u=[];return t(n,function(n){(0<i||r[n])&&(r[n]=(r[n]||0)+i,r[n]===+(0<i)&&u.push(n))}),o.data("$classCounts",r),u.join(" ")}function p(n,t){var i=f(t,n),u=f(n,t),i=h(i,1),u=h(u,-1);i&&i.length&&r.addClass(o,i);u&&u.length&&r.removeClass(o,u)}function v(n){var t,r;(!0===i||(e.$index&1)===i)&&(t=u(n||[]),l?ot(n,l)||(r=u(l),p(r,t)):a(t));l=c(n)?n.map(function(n){return st(n)}):st(n)}var l;e.$watch(s[n],v,!0);s.$observe("class",function(){v(e.$eval(s[n]))});"ngClass"!==n&&e.$watch("$index",function(t,r){var f=t&1,o;f!==(r&1)&&(o=u(e.$eval(s[n])),f===i?a(o):(f=h(o,-1),s.$removeClass(f)))})}}}]}function fh(n){function f(n,t){t&&!i[n]?(h.addClass(o,n),i[n]=!0):!t&&i[n]&&(h.removeClass(o,n),i[n]=!1)}function e(n,t){n=n?"-"+to(n,"-"):"";f(gr+n,!0===t);f(lc+n,!1===t)}var t=n.ctrl,o=n.$element,i={},s=n.set,u=n.unset,h=n.$animate;i[lc]=!(i[gr]=o.hasClass(gr));t.$setValidity=function(n,i,o){r(i)?(t.$pending||(t.$pending={}),s(t.$pending,n,o)):(t.$pending&&u(t.$pending,n,o),eh(t.$pending)&&(t.$pending=void 0));ui(i)?i?(u(t.$error,n,o),s(t.$$success,n,o)):(s(t.$error,n,o),u(t.$$success,n,o)):(u(t.$error,n,o),u(t.$$success,n,o));t.$pending?(f(ac,!0),t.$valid=t.$invalid=void 0,e("",null)):(f(ac,!1),t.$valid=eh(t.$error),t.$invalid=!t.$valid,e("",t.$valid));i=t.$pending&&t.$pending[n]?void 0:t.$error[n]?!1:t.$$success[n]?!0:null;e(n,i);t.$$parentForm.$setValidity(n,i,t)}}function eh(n){if(n)for(var t in n)if(n.hasOwnProperty(t))return!1;return!0}var yv=/^\/(.+)\/([a-z]*)$/,wt=Object.prototype.hasOwnProperty,v=function(n){return h(n)?n.toLowerCase():n},bu=function(n){return h(n)?n.toUpperCase():n},ti,e,ii,bt=[].slice,pv=[].splice,wv=[].push,rt=Object.prototype.toString,oh=Object.getPrototypeOf,hi=l("ng"),ut=n.angular||(n.angular={}),ue,ku=0,gi,ch,oe,se,wh,uf,i,ff,gh,nc,tc,kr,dr;ti=n.document.documentMode;o.$inject=[];ir.$inject=[];var c=Array.isArray,bv=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array\]$/,p=function(n){return h(n)?n.trim():n},sh=function(n){return n.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")},ci=function(){var i,t;if(!u(ci.rules))if(i=n.document.querySelector("[ng-csp]")||n.document.querySelector("[data-ng-csp]"),i)t=i.getAttribute("ng-csp")||i.getAttribute("data-ng-csp"),ci.rules={noUnsafeEval:!t||-1!==t.indexOf("no-unsafe-eval"),noInlineStyle:!t||-1!==t.indexOf("no-inline-style")};else{i=ci;try{new Function("");t=!1}catch(r){t=!0}i.rules={noUnsafeEval:t,noInlineStyle:!1}}return ci.rules},du=function(){if(u(du.name_))return du.name_;for(var r,e=ki.length,i,f,t=0;t<e;++t)if(i=ki[t],r=n.document.querySelector("["+i.replace(":","\\:")+"jq]")){f=r.getAttribute(i+"jq");break}return du.name_=f},kv=/:/g,ki=["ng-","data-ng-","ng:","x-ng-"],dv=/[A-Z]/g,hh=!1,di=3,gv={full:"1.5.8",major:1,minor:5,dot:8,codeName:"arbitrary-fallbacks"};b.expando="ng339";gi=b.cache={};ch=1;b._data=function(n){return this.cache[n[this.expando]]||{}};var ny=/([\:\-\_]+(.))/g,ty=/^moz([A-Z])/,gu={mouseleave:"mouseout",mouseenter:"mouseover"},fe=l("jqLite"),iy=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,ee=/<|&#?\w+;/,ry=/<([\w:-]+)/,uy=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ct={option:[1,'<select multiple="multiple">',"<\/select>"],thead:[1,"<table>","<\/table>"],col:[2,"<table><colgroup>","<\/colgroup><\/table>"],tr:[2,"<table><tbody>","<\/tbody><\/table>"],td:[3,"<table><tbody><tr>","<\/tr><\/tbody><\/table>"],_default:[0,"",""]};ct.optgroup=ct.option;ct.tbody=ct.tfoot=ct.colgroup=ct.caption=ct.thead;ct.th=ct.td;var fy=n.Node.prototype.contains||function(n){return!!(this.compareDocumentPosition(n)&16)},nr=b.prototype={ready:function(t){function i(){r||(r=!0,t())}var r=!1;"complete"===n.document.readyState?n.setTimeout(i):(this.on("DOMContentLoaded",i),b(n).on("load",i))},toString:function(){var n=[];return t(this,function(t){n.push(""+t)}),"["+n.join(", ")+"]"},eq:function(n){return 0<=n?e(this[n]):e(this[this.length+n])},length:0,push:wv,sort:[].sort,splice:[].splice},nf={};t("multiple selected checked disabled readOnly required open".split(" "),function(n){nf[v(n)]=n});oe={};t("input select option textarea button form details".split(" "),function(n){oe[n]=!0});se={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};t({data:vf,removeData:lr,hasData:function(n){for(var t in gi[n.ng339])return!0;return!1},cleanData:function(n){for(var t=0,i=n.length;t<i;t++)lr(n[t])}},function(n,t){b[t]=n});t({data:vf,inheritedData:hu,scope:function(n){return e.data(n,"$scope")||hu(n.parentNode||n,["$isolateScope","$scope"])},isolateScope:function(n){return e.data(n,"$isolateScope")||e.data(n,"$isolateScopeNoTemplate")},controller:so,injector:function(n){return hu(n,"$injector")},removeAttr:function(n,t){n.removeAttribute(t)},hasClass:eu,css:function(n,t,i){if(t=cr(t),u(i))n.style[t]=i;else return n.style[t]},attr:function(n,t,i){var r=n.nodeType;if(r!==di&&2!==r&&8!==r)if(r=v(t),nf[r])if(u(i))i?(n[t]=!0,n.setAttribute(t,r)):(n[t]=!1,n.removeAttribute(r));else return n[t]||(n.attributes.getNamedItem(t)||o).specified?r:void 0;else if(u(i))n.setAttribute(t,i);else if(n.getAttribute)return n=n.getAttribute(t,2),null===n?void 0:n},prop:function(n,t,i){if(u(i))n[t]=i;else return n[t]},text:function(){function n(n,t){if(r(t)){var i=n.nodeType;return 1===i||i===di?n.textContent:""}n.textContent=t}return n.$dv="",n}(),val:function(n,i){if(r(i)){if(n.multiple&&"select"===at(n)){var u=[];return t(n.options,function(n){n.selected&&u.push(n.value||n.text)}),0===u.length?null:u}return n.value}n.value=i},html:function(n,t){if(r(t))return n.innerHTML;uu(n,!0);n.innerHTML=t},empty:ho},function(n,t){b.prototype[t]=function(t,i){var u,f,e=this.length,o;if(n!==ho&&r(2==n.length&&n!==eu&&n!==so?t:i)){if(s(t)){for(u=0;u<e;u++)if(n===vf)n(this[u],t);else for(f in t)n(this[u],f,t[f]);return this}for(u=n.$dv,e=r(u)?Math.min(e,1):e,f=0;f<e;f++)o=n(this[f],t,i),u=u?u+o:o;return u}for(u=0;u<e;u++)n(this[u],t,i);return this}});t({removeData:lr,on:function(n,t,i,r){var f,e,s,o;if(u(r))throw fe("onargs");if(ro(n))for(r=fu(n,!0),f=r.events,e=r.handle,e||(e=r.handle=hl(n,f)),r=0<=t.indexOf(" ")?t.split(" "):[t],s=r.length,o=function(t,r,u){var o=f[t];o||(o=f[t]=[],o.specialHandlerWrapper=r,"$destroy"===t||u||n.addEventListener(t,e,!1));o.push(i)};s--;)t=r[s],gu[t]?(o(gu[t],ll),o(t,void 0,!0)):o(t)},off:eo,one:function(n,t,i){n=e(n);n.on(t,function r(){n.off(t,i);n.off(t,r)});n.on(t,i)},replaceWith:function(n,i){var r,u=n.parentNode;uu(n);t(new b(i),function(t){r?u.insertBefore(t,r.nextSibling):u.replaceChild(t,n);r=t})},children:function(n){var i=[];return t(n.childNodes,function(n){1===n.nodeType&&i.push(n)}),i},contents:function(n){return n.contentDocument||n.childNodes||[]},append:function(n,t){var i=n.nodeType,r;if(1===i||11===i)for(t=new b(t),i=0,r=t.length;i<r;i++)n.appendChild(t[i])},prepend:function(n,i){if(1===n.nodeType){var r=n.firstChild;t(new b(i),function(t){n.insertBefore(t,r)})}},wrap:function(n,t){fo(n,e(t).eq(0).clone()[0])},remove:cu,detach:function(n){cu(n,!0)},after:function(n,t){var u=n,e=n.parentNode,i,f,r;for(t=new b(t),i=0,f=t.length;i<f;i++)r=t[i],e.insertBefore(r,u.nextSibling),u=r},addClass:su,removeClass:ou,toggleClass:function(n,i,u){i&&t(i.split(" "),function(t){var i=u;r(i)&&(i=!eu(n,t));(i?su:ou)(n,t)})},parent:function(n){return(n=n.parentNode)&&11!==n.nodeType?n:null},next:function(n){return n.nextElementSibling},find:function(n,t){return n.getElementsByTagName?n.getElementsByTagName(t):[]},clone:af,triggerHandler:function(n,i,r){var u,e,s=i.type||i,f=fu(n);(f=(f=f&&f.events)&&f[s])&&(u={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:o,type:s,target:n},i.type&&(u=a(u,i)),i=st(f),e=r?[u].concat(r):[u],t(i,function(t){u.isImmediatePropagationStopped()||t.apply(n,e)}))}},function(n,t){b.prototype[t]=function(t,i,f){for(var o,s=0,h=this.length;s<h;s++)r(o)?(o=n(this[s],t,i,f),u(o)&&(o=e(o))):oo(o,n(this[s],t,i,f));return u(o)?o:this};b.prototype.bind=b.prototype.on;b.prototype.unbind=b.prototype.off});pi.prototype={put:function(n,t){this[fi(n,this.nextUid)]=t},get:function(n){return this[fi(n,this.nextUid)]},remove:function(n){var t=this[n=fi(n,this.nextUid)];return delete this[n],t}};var ey=[function(){this.$get=[function(){return pi}]}],oy=/^([^\(]+?)=>/,sy=/^[^\(]*\(\s*([^\)]*)\)/m,hy=/,/,cy=/^\s*(_?)(\S+?)\1\s*$/,ly=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,li=l("$injector");ar.$$annotate=function(n,i,r){var u;if("function"==typeof n){if(!(u=n.$inject)){if(u=[],n.length){if(i)throw h(r)&&r||(r=n.name||vl(n)),li("strictdi",r);i=lo(n);t(i[1].split(hy),function(n){n.replace(cy,function(n,t,i){u.push(i)})})}n.$inject=u}}else c(n)?(i=n.length-1,vi(n[i],"fn"),u=n.slice(0,i)):vi(n,"fn",!0);return u};var lh=l("$animate"),ay=function(){this.$get=o},vy=function(){var n=new pi,i=[];this.$get=["$$AnimateRunner","$rootScope",function(r,u){function f(n,i,r){var u=!1;return i&&(i=h(i)?i.split(" "):c(i)?i:[],t(i,function(t){t&&(u=!0,n[t]=r)})),u}function e(){t(i,function(i){var f=n.get(i);if(f){var e=pl(i.attr("class")),r="",u="";t(f,function(n,t){n!==!!e[t]&&(n?r+=(r.length?" ":"")+t:u+=(u.length?" ":"")+t)});t(i,function(n){r&&su(n,r);u&&ou(n,u)});n.remove(i)}});i.length=0}return{enabled:o,on:o,off:o,pin:o,push:function(t,o,s,h){return h&&h(),s=s||{},s.from&&t.css(s.from),s.to&&t.css(s.to),(s.addClass||s.removeClass)&&(o=s.addClass,h=s.removeClass,s=n.get(t)||{},o=f(s,o,!0),h=f(s,h,!1),o||h)&&(n.put(t,s),i.push(t),1===i.length&&u.$$postDigest(e)),t=new r,t.complete(),t}}}]},yy=["$provide",function(n){var t=this;this.$$registeredAnimations=Object.create(null);this.register=function(i,r){if(i&&"."!==i.charAt(0))throw lh("notcsel",i);var u=i+"-animation";t.$$registeredAnimations[i.substr(1)]=u;n.factory(u,r)};this.classNameFilter=function(n){if(1===arguments.length&&(this.$$classNameFilter=n instanceof RegExp?n:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw lh("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(n){function t(n,t,i){var r,u;if(i){n:{for(r=0;r<i.length;r++)if(u=i[r],1===u.nodeType){r=u;break n}r=void 0}!r||r.parentNode||r.previousElementSibling||(i=null)}i?i.after(n):t.prepend(n)}return{on:n.on,off:n.off,pin:n.pin,enabled:n.enabled,cancel:function(n){n.end&&n.end()},enter:function(i,r,u,f){return r=r&&e(r),u=u&&e(u),r=r||u.parent(),t(i,r,u),n.push(i,"enter",ei(f))},move:function(i,r,u,f){return r=r&&e(r),u=u&&e(u),r=r||u.parent(),t(i,r,u),n.push(i,"move",ei(f))},leave:function(t,i){return n.push(t,"leave",ei(i),function(){t.remove()})},addClass:function(t,i,r){return r=ei(r),r.addClass=vr(r.addclass,i),n.push(t,"addClass",r)},removeClass:function(t,i,r){return r=ei(r),r.removeClass=vr(r.removeClass,i),n.push(t,"removeClass",r)},setClass:function(t,i,r,u){return u=ei(u),u.addClass=vr(u.addClass,i),u.removeClass=vr(u.removeClass,r),n.push(t,"setClass",u)},animate:function(t,i,r,u,f){return f=ei(f),f.from=f.from?a(f.from,i):i,f.to=f.to?a(f.to,r):r,f.tempClasses=vr(f.tempClasses,u||"ng-inline-animate"),n.push(t,"animate",f)}}}]}],py=function(){this.$get=["$$rAF",function(n){function i(i){t.push(i);1<t.length||n(function(){for(var n=0;n<t.length;n++)t[n]();t=[]})}var t=[];return function(){var n=!1;return i(function(){n=!0}),function(t){n?t():i(t)}}}]},wy=function(){this.$get=["$q","$sniffer","$$animateAsyncRun","$document","$timeout",function(n,i,r,u,f){function e(n){this.setHost(n);var t=r();this._doneCallbacks=[];this._tick=function(n){var i=u[0];i&&i.hidden?f(n,0,!1):t(n)};this._state=0}return e.chain=function(n,t){function r(){i===n.length?t(!0):n[i](function(n){!1===n?t(!1):(i++,r())})}var i=0;r()},e.all=function(n,i){function u(t){r=r&&t;++f===n.length&&i(r)}var f=0,r=!0;t(n,function(n){n.done(u)})},e.prototype={setHost:function(n){this.host=n||{}},done:function(n){2===this._state?n():this._doneCallbacks.push(n)},progress:o,getPromise:function(){if(!this.promise){var t=this;this.promise=n(function(n,i){t.done(function(t){!1===t?i():n()})})}return this.promise},then:function(n,t){return this.getPromise().then(n,t)},"catch":function(n){return this.getPromise()["catch"](n)},"finally":function(n){return this.getPromise()["finally"](n)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end();this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(n){var t=this;0===t._state&&(t._state=1,t._tick(function(){t._resolve(n)}))},_resolve:function(n){2!==this._state&&(t(this._doneCallbacks,function(t){t(n)}),this._doneCallbacks.length=0,this._state=2)}},e}]},by=function(){this.$get=["$$rAF","$q","$$AnimateRunner",function(n,t,i){return function(t,r){function e(){return n(function(){u.addClass&&(t.addClass(u.addClass),u.addClass=null);u.removeClass&&(t.removeClass(u.removeClass),u.removeClass=null);u.to&&(t.css(u.to),u.to=null);o||f.complete();o=!0}),f}var u=r||{},o,f;return u.$$prepared||(u=dt(u)),u.cleanupStyles&&(u.from=u.to=null),u.from&&(t.css(u.from),u.from=null),f=new i,{start:e,end:e}}}]},g=l("$compile"),he=new function(){};ao.$inject=["$provide","$$sanitizeUriProvider"];lu.prototype.isFirstChange=function(){return this.previousValue===he};var ah=/^((?:x|data)[\:\-_])/i,ky=l("$controller"),vh=/^(\S+)(\s+as\s+([\w$]+))?$/,dy=function(){this.$get=["$document",function(n){return function(t){return t?!t.nodeType&&t instanceof e&&(t=t[0]):t=n[0].body,t.offsetWidth+1}}]},yh="application/json",ce={"Content-Type":yh+";charset=utf-8"},gy=/^\[|^\{(?!\{)/,np={"[":/]$/,"{":/}$/},tp=/^\)\]\}',?\n/,ip=l("$http"),ph=function(n){return function(){throw ip("legacy",n);}},ai=ut.$interpolateMinErr=l("$interpolate");ai.throwNoconcat=function(n){throw ai("noconcat",n);};ai.interr=function(n,t){return ai("interr",n,t.toString())};var rp=function(){this.$get=["$window",function(n){function r(n){var t=function(n){t.data=n;t.called=!0};return t.id=n,t}var i=n.angular.callbacks,t={};return{createCallback:function(n){n="_"+(i.$$counter++).toString(36);var u="angular.callbacks."+n,f=r(n);return t[u]=i[n]=f,u},wasCalled:function(n){return t[n].called},getResponse:function(n){return t[n].data},removeCallback:function(n){delete i[t[n].id];delete t[n]}}}]},up=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,fp={http:80,https:443,ftp:21},tf=l("$location"),ep={$$absUrl:"",$$html5:!1,$$replace:!1,absUrl:au("$$absUrl"),url:function(n){if(r(n))return this.$$url;var t=up.exec(n);return(t[1]||""===n)&&this.path(decodeURIComponent(t[1])),(t[2]||t[1]||""===n)&&this.search(t[3]||""),this.hash(t[5]||""),this},protocol:au("$$protocol"),host:au("$$host"),port:au("$$port"),path:is("$$path",function(n){return n=null!==n?n.toString():"","/"==n.charAt(0)?n:"/"+n}),search:function(n,i){switch(arguments.length){case 0:return this.$$search;case 1:if(h(n)||w(n))n=n.toString(),this.$$search=ge(n);else if(s(n))n=dt(n,{}),t(n,function(t,i){null==t&&delete n[i]}),this.$$search=n;else throw tf("isrcharg");break;default:r(i)||null===i?delete this.$$search[n]:this.$$search[n]=i}return this.$$compose(),this},hash:is("$$hash",function(n){return null!==n?n.toString():""}),replace:function(){return this.$$replace=!0,this}};t([ts,kf,bf],function(n){n.prototype=Object.create(ep);n.prototype.state=function(t){if(!arguments.length)return this.$$state;if(n!==bf||!this.$$html5)throw tf("nostate");return this.$$state=r(t)?null:t,this}});var it=l("$parse"),op=Function.prototype.call,sp=Function.prototype.apply,hp=Function.prototype.bind,rf=y();t("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(n){rf[n]=!0});wh={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'};uf=function(n){this.options=n};uf.prototype={constructor:uf,lex:function(n){for(this.text=n,this.index=0,this.tokens=[];this.index<this.text.length;)if(n=this.text.charAt(this.index),'"'===n||"'"===n)this.readString(n);else if(this.isNumber(n)||"."===n&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(n,"(){}[].,;:?"))this.tokens.push({index:this.index,text:n}),this.index++;else if(this.isWhitespace(n))this.index++;else{var t=n+this.peek(),i=t+this.peek(2),r=rf[t],u=rf[i];rf[n]||r||u?(n=u?i:r?t:n,this.tokens.push({index:this.index,text:n,operator:!0}),this.index+=n.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(n,t){return-1!==t.indexOf(n)},peek:function(n){return n=n||1,this.index+n<this.text.length?this.text.charAt(this.index+n):!1},isNumber:function(n){return"0"<=n&&"9">=n&&"string"==typeof n},isWhitespace:function(n){return" "===n||"\r"===n||"\t"===n||"\n"===n||"\v"===n||" "===n},isIdentifierStart:function(n){return this.options.isIdentifierStart?this.options.isIdentifierStart(n,this.codePointAt(n)):this.isValidIdentifierStart(n)},isValidIdentifierStart:function(n){return"a"<=n&&"z">=n||"A"<=n&&"Z">=n||"_"===n||"$"===n},isIdentifierContinue:function(n){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(n,this.codePointAt(n)):this.isValidIdentifierContinue(n)},isValidIdentifierContinue:function(n,t){return this.isValidIdentifierStart(n,t)||this.isNumber(n)},codePointAt:function(n){return 1===n.length?n.charCodeAt(0):(n.charCodeAt(0)<<10)+n.charCodeAt(1)-56613888},peekMultichar:function(){var n=this.text.charAt(this.index),t=this.peek(),i,r;return t?(i=n.charCodeAt(0),r=t.charCodeAt(0),55296<=i&&56319>=i&&56320<=r&&57343>=r?n+t:n):n},isExpOperator:function(n){return"-"===n||"+"===n||this.isNumber(n)},throwError:function(n,t,i){i=i||this.index;t=u(t)?"s "+t+"-"+this.index+" ["+this.text.substring(t,i)+"]":" "+i;throw it("lexerr",n,t,this.text);},readNumber:function(){for(var t,i,n="",r=this.index;this.index<this.text.length;){if(t=v(this.text.charAt(this.index)),"."==t||this.isNumber(t))n+=t;else if(i=this.peek(),"e"==t&&this.isExpOperator(i))n+=t;else if(this.isExpOperator(t)&&i&&this.isNumber(i)&&"e"==n.charAt(n.length-1))n+=t;else if(!this.isExpOperator(t)||i&&this.isNumber(i)||"e"!=n.charAt(n.length-1))break;else this.throwError("Invalid exponent");this.index++}this.tokens.push({index:r,text:n,constant:!0,value:Number(n)})},readIdent:function(){var t=this.index,n;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){if(n=this.peekMultichar(),!this.isIdentifierContinue(n))break;this.index+=n.length}this.tokens.push({index:t,text:this.text.slice(t,this.index),identifier:!0})},readString:function(n){var f=this.index,t,u;this.index++;for(var r="",u=n,i=!1;this.index<this.text.length;){if(t=this.text.charAt(this.index),u=u+t,i)"u"===t?(i=this.text.substring(this.index+1,this.index+5),i.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+i+"]"),this.index+=4,r+=String.fromCharCode(parseInt(i,16))):r+=wh[t]||t,i=!1;else if("\\"===t)i=!0;else{if(t===n){this.index++;this.tokens.push({index:f,text:u,constant:!0,value:r});return}r+=t}this.index++}this.throwError("Unterminated quote",f)}};i=function(n,t){this.lexer=n;this.options=t};i.Program="Program";i.ExpressionStatement="ExpressionStatement";i.AssignmentExpression="AssignmentExpression";i.ConditionalExpression="ConditionalExpression";i.LogicalExpression="LogicalExpression";i.BinaryExpression="BinaryExpression";i.UnaryExpression="UnaryExpression";i.CallExpression="CallExpression";i.MemberExpression="MemberExpression";i.Identifier="Identifier";i.Literal="Literal";i.ArrayExpression="ArrayExpression";i.Property="Property";i.ObjectExpression="ObjectExpression";i.ThisExpression="ThisExpression";i.LocalsExpression="LocalsExpression";i.NGValueParameter="NGValueParameter";i.prototype={ast:function(n){return this.text=n,this.tokens=this.lexer.lex(n),n=this.program(),0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),n},program:function(){for(var n=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&n.push(this.expressionStatement()),!this.expect(";"))return{type:i.Program,body:n}},expressionStatement:function(){return{type:i.ExpressionStatement,expression:this.filterChain()}},filterChain:function(){for(var n=this.expression();this.expect("|");)n=this.filter(n);return n},expression:function(){return this.assignment()},assignment:function(){var n=this.ternary();return this.expect("=")&&(n={type:i.AssignmentExpression,left:n,right:this.assignment(),operator:"="}),n},ternary:function(){var n=this.logicalOR(),t,r;return this.expect("?")&&(t=this.expression(),this.consume(":"))?(r=this.expression(),{type:i.ConditionalExpression,test:n,alternate:t,consequent:r}):n},logicalOR:function(){for(var n=this.logicalAND();this.expect("||");)n={type:i.LogicalExpression,operator:"||",left:n,right:this.logicalAND()};return n},logicalAND:function(){for(var n=this.equality();this.expect("&&");)n={type:i.LogicalExpression,operator:"&&",left:n,right:this.equality()};return n},equality:function(){for(var n=this.relational(),t;t=this.expect("==","!=","===","!==");)n={type:i.BinaryExpression,operator:t.text,left:n,right:this.relational()};return n},relational:function(){for(var n=this.additive(),t;t=this.expect("<",">","<=",">=");)n={type:i.BinaryExpression,operator:t.text,left:n,right:this.additive()};return n},additive:function(){for(var n=this.multiplicative(),t;t=this.expect("+","-");)n={type:i.BinaryExpression,operator:t.text,left:n,right:this.multiplicative()};return n},multiplicative:function(){for(var n=this.unary(),t;t=this.expect("*","/","%");)n={type:i.BinaryExpression,operator:t.text,left:n,right:this.unary()};return n},unary:function(){var n;return(n=this.expect("+","-","!"))?{type:i.UnaryExpression,operator:n.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var n,t;for(this.expect("(")?(n=this.filterChain(),this.consume(")")):this.expect("[")?n=this.arrayDeclaration():this.expect("{")?n=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?n=dt(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?n={type:i.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?n=this.identifier():this.peek().constant?n=this.constant():this.throwError("not a primary expression",this.peek());t=this.expect("(","[",".");)"("===t.text?(n={type:i.CallExpression,callee:n,arguments:this.parseArguments()},this.consume(")")):"["===t.text?(n={type:i.MemberExpression,object:n,property:this.expression(),computed:!0},this.consume("]")):"."===t.text?n={type:i.MemberExpression,object:n,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return n},filter:function(n){n=[n];for(var t={type:i.CallExpression,callee:this.identifier(),arguments:n,filter:!0};this.expect(":");)n.push(this.expression());return t},parseArguments:function(){var n=[];if(")"!==this.peekToken().text)do n.push(this.filterChain());while(this.expect(","));return n},identifier:function(){var n=this.consume();return n.identifier||this.throwError("is not a valid identifier",n),{type:i.Identifier,name:n.text}},constant:function(){return{type:i.Literal,value:this.consume().value}},arrayDeclaration:function(){var n=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;n.push(this.expression())}while(this.expect(","));return this.consume("]"),{type:i.ArrayExpression,elements:n}},object:function(){var t=[],n;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;n={type:i.Property,kind:"init"};this.peek().constant?(n.key=this.constant(),n.computed=!1,this.consume(":"),n.value=this.expression()):this.peek().identifier?(n.key=this.identifier(),n.computed=!1,this.peek(":")?(this.consume(":"),n.value=this.expression()):n.value=n.key):this.peek("[")?(this.consume("["),n.key=this.expression(),this.consume("]"),n.computed=!0,this.consume(":"),n.value=this.expression()):this.throwError("invalid key",this.peek());t.push(n)}while(this.expect(","));return this.consume("}"),{type:i.ObjectExpression,properties:t}},throwError:function(n,t){throw it("syntax",t.text,n,t.index+1,this.text,this.text.substring(t.index));},consume:function(n){if(0===this.tokens.length)throw it("ueoe",this.text);var t=this.expect(n);return t||this.throwError("is unexpected, expecting ["+n+"]",this.peek()),t},peekToken:function(){if(0===this.tokens.length)throw it("ueoe",this.text);return this.tokens[0]},peek:function(n,t,i,r){return this.peekAhead(0,n,t,i,r)},peekAhead:function(n,t,i,r,u){if(this.tokens.length>n){n=this.tokens[n];var f=n.text;if(f===t||f===i||f===r||f===u||!(t||i||r||u))return n}return!1},expect:function(n,t,i,r){return(n=this.peek(n,t,i,r))?(this.tokens.shift(),n):!1},selfReferential:{"this":{type:i.ThisExpression},$locals:{type:i.LocalsExpression}}};hs.prototype={compile:function(n,i){var u=this,f=this.astBuilder.ast(n),r,e;return this.state={nextId:0,filters:{},expensiveChecks:i,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},k(f,u.$filter),r="",this.stage="assign",(e=os(f))&&(this.state.computing="assign",r=this.nextId(),this.recurse(e,r),this.return_(r),r="fn.assign="+this.generateFunction("assign","s,v,l")),e=fs(f.body),u.stage="inputs",t(e,function(n,t){var i="fn"+t,r;u.state[i]={vars:[],body:[],own:{}};u.state.computing=i;r=u.nextId();u.recurse(n,r);u.return_(r);u.state.inputs.push(i);n.watchId=t}),this.state.computing="fn",this.stage="main",this.recurse(f),r='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+r+this.watchFns()+"return fn;",r=new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined","plus","text",r)(this.$filter,wi,gt,rs,aa,vu,va,us,n),this.state=this.stage=void 0,r.literal=ss(f),r.constant=f.constant,r},USE:"use",STRICT:"strict",watchFns:function(){var n=[],i=this.state.inputs,r=this;return t(i,function(t){n.push("var "+t+"="+r.generateFunction(t,"s"))}),i.length&&n.push("fn.inputs=["+i.join(",")+"];"),n.join("")},generateFunction:function(n,t){return"function("+t+"){"+this.varsPrefix(n)+this.body(n)+"};"},filterPrefix:function(){var n=[],i=this;return t(this.state.filters,function(t,r){n.push(t+"=$filter("+i.escape(r)+")")}),n.length?"var "+n.join(",")+";":""},varsPrefix:function(n){return this.state[n].vars.length?"var "+this.state[n].vars.join(",")+";":""},body:function(n){return this.state[n].body.join("")},recurse:function(n,r,f,e,s,h){var l,v,c=this,y,a,p;if(e=e||o,!h&&u(n.watchId))r=r||this.nextId(),this.if_("i",this.lazyAssign(r,this.computedMember("i",n.watchId)),this.lazyRecurse(n,r,f,e,s,!0));else switch(n.type){case i.Program:t(n.body,function(t,i){c.recurse(t.expression,void 0,void 0,function(n){v=n});i!==n.body.length-1?c.current().body.push(v,";"):c.return_(v)});break;case i.Literal:a=this.escape(n.value);this.assign(r,a);e(a);break;case i.UnaryExpression:this.recurse(n.argument,void 0,void 0,function(n){v=n});a=n.operator+"("+this.ifDefined(v,0)+")";this.assign(r,a);e(a);break;case i.BinaryExpression:this.recurse(n.left,void 0,void 0,function(n){l=n});this.recurse(n.right,void 0,void 0,function(n){v=n});a="+"===n.operator?this.plus(l,v):"-"===n.operator?this.ifDefined(l,0)+n.operator+this.ifDefined(v,0):"("+l+")"+n.operator+"("+v+")";this.assign(r,a);e(a);break;case i.LogicalExpression:r=r||this.nextId();c.recurse(n.left,r);c.if_("&&"===n.operator?r:c.not(r),c.lazyRecurse(n.right,r));e(r);break;case i.ConditionalExpression:r=r||this.nextId();c.recurse(n.test,r);c.if_(r,c.lazyRecurse(n.alternate,r),c.lazyRecurse(n.consequent,r));e(r);break;case i.Identifier:r=r||this.nextId();f&&(f.context="inputs"===c.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",n.name)+"?l:s"),f.computed=!1,f.name=n.name);wi(n.name);c.if_("inputs"===c.stage||c.not(c.getHasOwnProperty("l",n.name)),function(){c.if_("inputs"===c.stage||"s",function(){s&&1!==s&&c.if_(c.not(c.nonComputedMember("s",n.name)),c.lazyAssign(c.nonComputedMember("s",n.name),"{}"));c.assign(r,c.nonComputedMember("s",n.name))})},r&&c.lazyAssign(r,c.nonComputedMember("l",n.name)));(c.state.expensiveChecks||yu(n.name))&&c.addEnsureSafeObject(r);e(r);break;case i.MemberExpression:l=f&&(f.context=this.nextId())||this.nextId();r=r||this.nextId();c.recurse(n.object,l,void 0,function(){c.if_(c.notNull(l),function(){s&&1!==s&&c.addEnsureSafeAssignContext(l);n.computed?(v=c.nextId(),c.recurse(n.property,v),c.getStringValue(v),c.addEnsureSafeMemberName(v),s&&1!==s&&c.if_(c.not(c.computedMember(l,v)),c.lazyAssign(c.computedMember(l,v),"{}")),a=c.ensureSafeObject(c.computedMember(l,v)),c.assign(r,a),f&&(f.computed=!0,f.name=v)):(wi(n.property.name),s&&1!==s&&c.if_(c.not(c.nonComputedMember(l,n.property.name)),c.lazyAssign(c.nonComputedMember(l,n.property.name),"{}")),a=c.nonComputedMember(l,n.property.name),(c.state.expensiveChecks||yu(n.property.name))&&(a=c.ensureSafeObject(a)),c.assign(r,a),f&&(f.computed=!1,f.name=n.property.name))},function(){c.assign(r,"undefined")});e(r)},!!s);break;case i.CallExpression:r=r||this.nextId();n.filter?(v=c.filter(n.callee.name),y=[],t(n.arguments,function(n){var t=c.nextId();c.recurse(n,t);y.push(t)}),a=v+"("+y.join(",")+")",c.assign(r,a),e(r)):(v=c.nextId(),l={},y=[],c.recurse(n.callee,v,l,function(){c.if_(c.notNull(v),function(){c.addEnsureSafeFunction(v);t(n.arguments,function(n){c.recurse(n,c.nextId(),void 0,function(n){y.push(c.ensureSafeObject(n))})});l.name?(c.state.expensiveChecks||c.addEnsureSafeObject(l.context),a=c.member(l.context,l.name,l.computed)+"("+y.join(",")+")"):a=v+"("+y.join(",")+")";a=c.ensureSafeObject(a);c.assign(r,a)},function(){c.assign(r,"undefined")});e(r)}));break;case i.AssignmentExpression:if(v=this.nextId(),l={},!es(n.left))throw it("lval");this.recurse(n.left,void 0,l,function(){c.if_(c.notNull(l.context),function(){c.recurse(n.right,v);c.addEnsureSafeObject(c.member(l.context,l.name,l.computed));c.addEnsureSafeAssignContext(l.context);a=c.member(l.context,l.name,l.computed)+n.operator+v;c.assign(r,a);e(r||a)})},1);break;case i.ArrayExpression:y=[];t(n.elements,function(n){c.recurse(n,c.nextId(),void 0,function(n){y.push(n)})});a="["+y.join(",")+"]";this.assign(r,a);e(a);break;case i.ObjectExpression:y=[];p=!1;t(n.properties,function(n){n.computed&&(p=!0)});p?(r=r||this.nextId(),this.assign(r,"{}"),t(n.properties,function(n){n.computed?(l=c.nextId(),c.recurse(n.key,l)):l=n.key.type===i.Identifier?n.key.name:""+n.key.value;v=c.nextId();c.recurse(n.value,v);c.assign(c.member(r,l,n.computed),v)})):(t(n.properties,function(t){c.recurse(t.value,n.constant?void 0:c.nextId(),void 0,function(n){y.push(c.escape(t.key.type===i.Identifier?t.key.name:""+t.key.value)+":"+n)})}),a="{"+y.join(",")+"}",this.assign(r,a));e(r||a);break;case i.ThisExpression:this.assign(r,"s");e("s");break;case i.LocalsExpression:this.assign(r,"l");e("l");break;case i.NGValueParameter:this.assign(r,"v");e("v")}},getHasOwnProperty:function(n,t){var i=n+"."+t,r=this.current().own;return r.hasOwnProperty(i)||(r[i]=this.nextId(!1,n+"&&("+this.escape(t)+" in "+n+")")),r[i]},assign:function(n,t){if(n)return this.current().body.push(n,"=",t,";"),n},filter:function(n){return this.state.filters.hasOwnProperty(n)||(this.state.filters[n]=this.nextId(!0)),this.state.filters[n]},ifDefined:function(n,t){return"ifDefined("+n+","+this.escape(t)+")"},plus:function(n,t){return"plus("+n+","+t+")"},return_:function(n){this.current().body.push("return ",n,";")},if_:function(n,t,i){if(!0===n)t();else{var r=this.current().body;r.push("if(",n,"){");t();r.push("}");i&&(r.push("else{"),i(),r.push("}"))}},not:function(n){return"!("+n+")"},notNull:function(n){return n+"!=null"},nonComputedMember:function(n,t){return/[$_a-zA-Z][$_a-zA-Z0-9]*/.test(t)?n+"."+t:n+'["'+t.replace(/[^$_a-zA-Z0-9]/g,this.stringEscapeFn)+'"]'},computedMember:function(n,t){return n+"["+t+"]"},member:function(n,t,i){return i?this.computedMember(n,t):this.nonComputedMember(n,t)},addEnsureSafeObject:function(n){this.current().body.push(this.ensureSafeObject(n),";")},addEnsureSafeMemberName:function(n){this.current().body.push(this.ensureSafeMemberName(n),";")},addEnsureSafeFunction:function(n){this.current().body.push(this.ensureSafeFunction(n),";")},addEnsureSafeAssignContext:function(n){this.current().body.push(this.ensureSafeAssignContext(n),";")},ensureSafeObject:function(n){return"ensureSafeObject("+n+",text)"},ensureSafeMemberName:function(n){return"ensureSafeMemberName("+n+",text)"},ensureSafeFunction:function(n){return"ensureSafeFunction("+n+",text)"},getStringValue:function(n){this.assign(n,"getStringValue("+n+")")},ensureSafeAssignContext:function(n){return"ensureSafeAssignContext("+n+",text)"},lazyRecurse:function(n,t,i,r,u,f){var e=this;return function(){e.recurse(n,t,i,r,u,f)}},lazyAssign:function(n,t){var i=this;return function(){i.assign(n,t)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(n){return"\\u"+("0000"+n.charCodeAt(0).toString(16)).slice(-4)},escape:function(n){if(h(n))return"'"+n.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(w(n))return n.toString();if(!0===n)return"true";if(!1===n)return"false";if(null===n)return"null";if("undefined"==typeof n)return"undefined";throw it("esc");},nextId:function(n,t){var i="v"+this.state.nextId++;return n||this.current().vars.push(i+(t?"="+t:"")),i},current:function(){return this.state[this.state.computing]}};cs.prototype={compile:function(n,i){var s=this,u=this.astBuilder.ast(n),r,h,f,e;return this.expression=n,this.expensiveChecks=i,k(u,s.$filter),(r=os(u))&&(h=this.recurse(r)),r=fs(u.body),r&&(f=[],t(r,function(n,t){var i=s.recurse(n);n.input=i;f.push(i);n.watchId=t})),e=[],t(u.body,function(n){e.push(s.recurse(n.expression))}),r=0===u.body.length?o:1===u.body.length?e[0]:function(n,i){var r;return t(e,function(t){r=t(n,i)}),r},h&&(r.assign=function(n,t,i){return h(n,i,t)}),f&&(r.inputs=f),r.literal=ss(u),r.constant=u.constant,r},recurse:function(n,r,u){var s,o,e=this,f;if(n.input)return this.inputs(n.input,n.watchId);switch(n.type){case i.Literal:return this.value(n.value,r);case i.UnaryExpression:return o=this.recurse(n.argument),this["unary"+n.operator](o,r);case i.BinaryExpression:return s=this.recurse(n.left),o=this.recurse(n.right),this["binary"+n.operator](s,o,r);case i.LogicalExpression:return s=this.recurse(n.left),o=this.recurse(n.right),this["binary"+n.operator](s,o,r);case i.ConditionalExpression:return this["ternary?:"](this.recurse(n.test),this.recurse(n.alternate),this.recurse(n.consequent),r);case i.Identifier:return wi(n.name,e.expression),e.identifier(n.name,e.expensiveChecks||yu(n.name),r,u,e.expression);case i.MemberExpression:return s=this.recurse(n.object,!1,!!u),n.computed||(wi(n.property.name,e.expression),o=n.property.name),n.computed&&(o=this.recurse(n.property)),n.computed?this.computedMember(s,o,r,u,e.expression):this.nonComputedMember(s,o,e.expensiveChecks,r,u,e.expression);case i.CallExpression:return f=[],t(n.arguments,function(n){f.push(e.recurse(n))}),n.filter&&(o=this.$filter(n.callee.name)),n.filter||(o=this.recurse(n.callee,!0)),n.filter?function(n,t,i,u){for(var s=[],e=0;e<f.length;++e)s.push(f[e](n,t,i,u));return n=o.apply(void 0,s,u),r?{context:void 0,name:void 0,value:n}:n}:function(n,t,i,u){var h=o(n,t,i,u),s,c;if(null!=h.value){for(gt(h.context,e.expression),rs(h.value,e.expression),s=[],c=0;c<f.length;++c)s.push(gt(f[c](n,t,i,u),e.expression));s=gt(h.value.apply(h.context,s),e.expression)}return r?{value:s}:s};case i.AssignmentExpression:return s=this.recurse(n.left,!0,1),o=this.recurse(n.right),function(n,t,i,u){var f=s(n,t,i,u);return n=o(n,t,i,u),gt(f.value,e.expression),vu(f.context),f.context[f.name]=n,r?{value:n}:n};case i.ArrayExpression:return f=[],t(n.elements,function(n){f.push(e.recurse(n))}),function(n,t,i,u){for(var e=[],o=0;o<f.length;++o)e.push(f[o](n,t,i,u));return r?{value:e}:e};case i.ObjectExpression:return f=[],t(n.properties,function(n){n.computed?f.push({key:e.recurse(n.key),computed:!0,value:e.recurse(n.value)}):f.push({key:n.key.type===i.Identifier?n.key.name:""+n.key.value,computed:!1,value:e.recurse(n.value)})}),function(n,t,i,u){for(var o={},e=0;e<f.length;++e)f[e].computed?o[f[e].key(n,t,i,u)]=f[e].value(n,t,i,u):o[f[e].key]=f[e].value(n,t,i,u);return r?{value:o}:o};case i.ThisExpression:return function(n){return r?{value:n}:n};case i.LocalsExpression:return function(n,t){return r?{value:t}:t};case i.NGValueParameter:return function(n,t,i){return r?{value:i}:i}}},"unary+":function(n,t){return function(i,r,f,e){return i=n(i,r,f,e),i=u(i)?+i:0,t?{value:i}:i}},"unary-":function(n,t){return function(i,r,f,e){return i=n(i,r,f,e),i=u(i)?-i:0,t?{value:i}:i}},"unary!":function(n,t){return function(i,r,u,f){return i=!n(i,r,u,f),t?{value:i}:i}},"binary+":function(n,t,i){return function(r,u,f,e){var o=n(r,u,f,e);return r=t(r,u,f,e),o=us(o,r),i?{value:o}:o}},"binary-":function(n,t,i){return function(r,f,e,o){var s=n(r,f,e,o);return r=t(r,f,e,o),s=(u(s)?s:0)-(u(r)?r:0),i?{value:s}:s}},"binary*":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)*t(r,u,f,e),i?{value:r}:r}},"binary/":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)/t(r,u,f,e),i?{value:r}:r}},"binary%":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)%t(r,u,f,e),i?{value:r}:r}},"binary===":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)===t(r,u,f,e),i?{value:r}:r}},"binary!==":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)!==t(r,u,f,e),i?{value:r}:r}},"binary==":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)==t(r,u,f,e),i?{value:r}:r}},"binary!=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)!=t(r,u,f,e),i?{value:r}:r}},"binary<":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)<t(r,u,f,e),i?{value:r}:r}},"binary>":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)>t(r,u,f,e),i?{value:r}:r}},"binary<=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)<=t(r,u,f,e),i?{value:r}:r}},"binary>=":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)>=t(r,u,f,e),i?{value:r}:r}},"binary&&":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)&&t(r,u,f,e),i?{value:r}:r}},"binary||":function(n,t,i){return function(r,u,f,e){return r=n(r,u,f,e)||t(r,u,f,e),i?{value:r}:r}},"ternary?:":function(n,t,i,r){return function(u,f,e,o){return u=n(u,f,e,o)?t(u,f,e,o):i(u,f,e,o),r?{value:u}:u}},value:function(n,t){return function(){return t?{context:void 0,name:void 0,value:n}:n}},identifier:function(n,t,i,r,u){return function(f,e){return f=e&&n in e?e:f,r&&1!==r&&f&&!f[n]&&(f[n]={}),e=f?f[n]:void 0,t&&gt(e,u),i?{context:f,name:n,value:e}:e}},computedMember:function(n,t,i,r,u){return function(f,e,o,s){var h=n(f,e,o,s),c,l;return null!=h&&(c=t(f,e,o,s),c+="",wi(c,u),r&&1!==r&&(vu(h),h&&!h[c]&&(h[c]={})),l=h[c],gt(l,u)),i?{context:h,name:c,value:l}:l}},nonComputedMember:function(n,t,i,r,u,f){return function(e,o,s,h){return e=n(e,o,s,h),u&&1!==u&&(vu(e),e&&!e[t]&&(e[t]={})),o=null!=e?e[t]:void 0,(i||yu(t))&&gt(o,f),r?{context:e,name:t,value:o}:o}},inputs:function(n,t){return function(i,r,u,f){return f?f[t]:n(i,r,u)}}};ff=function(n,t,r){this.lexer=n;this.$filter=t;this.options=r;this.ast=new i(n,r);this.astCompiler=r.csp?new cs(this.ast,t):new hs(this.ast,t)};ff.prototype={constructor:ff,parse:function(n){return this.astCompiler.compile(n,this.options.expensiveChecks)}};var cp=Object.prototype.valueOf,ri=l("$sce"),lt={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},lp=l("$compile"),nt=n.document.createElement("a"),bh=ni(n.location.href);ys.$inject=["$document"];ps.$inject=["$provide"];var kh=22,dh=".",le="0";ws.$inject=["$locale"];bs.$inject=["$locale"];var ap={yyyy:d("FullYear",4,0,!1,!0),yy:d("FullYear",2,0,!0,!0),y:d("FullYear",1,0,!1,!0),MMMM:pr("Month"),MMM:pr("Month",!0),MM:d("Month",2,1),M:d("Month",1,1),LLLL:pr("Month",!1,!0),dd:d("Date",2),d:d("Date",1),HH:d("Hours",2),H:d("Hours",1),hh:d("Hours",2,-12),h:d("Hours",1,-12),mm:d("Minutes",2),m:d("Minutes",1),ss:d("Seconds",2),s:d("Seconds",1),sss:d("Milliseconds",3),EEEE:pr("Day"),EEE:pr("Day",!0),a:function(n,t){return 12>n.getHours()?t.AMPMS[0]:t.AMPMS[1]},Z:function(n,t,i){return n=-1*i,(0<=n?"+":"")+(pu(Math[0<n?"floor":"ceil"](n/60),2)+pu(Math.abs(n%60),2))},ww:gs(2),w:gs(1),G:ne,GG:ne,GGG:ne,GGGG:function(n,t){return 0>=n.getFullYear()?t.ERANAMES[0]:t.ERANAMES[1]}},vp=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,yp=/^\-?\d+$/;nh.$inject=["$locale"];gh=ft(v);nc=ft(bu);th.$inject=["$parse"];tc=ft({restrict:"E",compile:function(n,t){if(!t.href&&!t.xlinkHref)return function(n,t){if("a"===t[0].nodeName.toLowerCase()){var i="[object SVGAnimatedString]"===rt.call(t.prop("href"))?"xlink:href":"href";t.on("click",function(n){t.attr(i)||n.preventDefault()})}}}});kr={};t(nf,function(n,t){function r(n,r,u){n.$watch(u[i],function(n){u.$set(t,!!n)})}if("multiple"!=n){var i=yt("ng-"+t),u=r;"checked"===n&&(u=function(n,t,u){u.ngModel!==u[i]&&r(n,t,u)});kr[i]=function(){return{restrict:"A",priority:100,link:u}}}});t(se,function(n,t){kr[t]=function(){return{priority:100,link:function(n,i,r){if("ngPattern"===t&&"/"==r.ngPattern.charAt(0)&&(i=r.ngPattern.match(yv))){r.$set("ngPattern",new RegExp(i[1],i[2]));return}n.$watch(r[t],function(n){r.$set(t,n)})}}}});t(["src","srcset","href"],function(n){var t=yt("ng-"+n);kr[t]=function(){return{priority:99,link:function(i,r,u){var e=n,f=n;"href"===n&&"[object SVGAnimatedString]"===rt.call(r.prop("href"))&&(f="xlinkHref",u.$attr[f]="xlink:href",e=null);u.$observe(t,function(t){t?(u.$set(f,t),ti&&e&&r.prop(e,u[f])):"href"===n&&u.$set(f,null)})}}}});dr={$addControl:o,$$renameControl:function(n,t){n.$name=t},$removeControl:o,$setValidity:o,$setDirty:o,$setPristine:o,$setSubmitted:o};ih.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var ic=function(n){return["$timeout","$parse",function(t,i){function r(n){return""===n?i('this[""]').assign:i(n).assign||o}return{name:"form",restrict:n?"EAC":"E",require:["form","^^?form"],controller:ih,compile:function(i,u){i.addClass(tr).addClass(gr);var f=u.name?"name":n&&u.ngForm?"ngForm":!1;return{pre:function(n,i,u,e){var s=e[0],c,h;if(!("action"in u)){c=function(t){n.$apply(function(){s.$commitViewValue();s.$setSubmitted()});t.preventDefault()};i[0].addEventListener("submit",c,!1);i.on("$destroy",function(){t(function(){i[0].removeEventListener("submit",c,!1)},0,!1)})}(e[1]||s.$$parentForm).$addControl(s);h=f?r(s.$name):o;f&&(h(n,s),u.$observe(f,function(t){s.$name!==t&&(h(n,void 0),s.$$parentForm.$$renameControl(s,t),h=r(s.$name),h(n,s))}));i.on("$destroy",function(){s.$$parentForm.$removeControl(s);h(n,void 0);a(s,dr)})}}}}}]},pp=ic(),wp=ic(!0),bp=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,kp=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,dp=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,gp=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,rc=/^(\d{4,})-(\d{2})-(\d{2})$/,uc=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,ae=/^(\d{4,})-W(\d\d)$/,fc=/^(\d{4,})-(\d\d)$/,ec=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,oc=y();t(["date","datetime-local","month","time","week"],function(n){oc[n]=!0});var sc={text:function(n,t,i,r,u,f){wr(n,t,i,r,u,f);ie(r)},date:br("date",rc,wu(rc,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":br("datetimelocal",uc,wu(uc,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:br("time",ec,wu(ec,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:br("week",ae,function(n,t){var i;if(et(n))return n;if(h(n)&&(ae.lastIndex=0,i=ae.exec(n),i)){var u=+i[1],r=+i[2],f=i=0,e=0,o=0,s=ds(u),r=7*(r-1);return t&&(i=t.getHours(),f=t.getMinutes(),e=t.getSeconds(),o=t.getMilliseconds()),new Date(u,0,s.getDate()+r,i,f,e,o)}return NaN},"yyyy-Www"),month:br("month",fc,wu(fc,["yyyy","MM"]),"yyyy-MM"),number:function(n,t,i,f,e,o){var s,h;rh(n,t,i,f);wr(n,t,i,f,e,o);f.$$parserName="number";f.$parsers.push(function(n){return f.$isEmpty(n)?null:gp.test(n)?parseFloat(n):void 0});f.$formatters.push(function(n){if(!f.$isEmpty(n)){if(!w(n))throw nu("numfmt",n);n=n.toString()}return n});(u(i.min)||i.ngMin)&&(f.$validators.min=function(n){return f.$isEmpty(n)||r(s)||n>=s},i.$observe("min",function(n){u(n)&&!w(n)&&(n=parseFloat(n));s=w(n)&&!isNaN(n)?n:void 0;f.$validate()}));(u(i.max)||i.ngMax)&&(f.$validators.max=function(n){return f.$isEmpty(n)||r(h)||n<=h},i.$observe("max",function(n){u(n)&&!w(n)&&(n=parseFloat(n));h=w(n)&&!isNaN(n)?n:void 0;f.$validate()}))},url:function(n,t,i,r,u,f){wr(n,t,i,r,u,f);ie(r);r.$$parserName="url";r.$validators.url=function(n,t){var i=n||t;return r.$isEmpty(i)||kp.test(i)}},email:function(n,t,i,r,u,f){wr(n,t,i,r,u,f);ie(r);r.$$parserName="email";r.$validators.email=function(n,t){var i=n||t;return r.$isEmpty(i)||dp.test(i)}},radio:function(n,t,i,u){r(i.name)&&t.attr("name",++ku);t.on("click",function(n){t[0].checked&&u.$setViewValue(i.value,n&&n.type)});u.$render=function(){t[0].checked=i.value==u.$viewValue};i.$observe("value",u.$render)},checkbox:function(n,t,i,r,u,f,e,o){var s=uh(o,n,"ngTrueValue",i.ngTrueValue,!0),h=uh(o,n,"ngFalseValue",i.ngFalseValue,!1);t.on("click",function(n){r.$setViewValue(t[0].checked,n&&n.type)});r.$render=function(){t[0].checked=r.$viewValue};r.$isEmpty=function(n){return!1===n};r.$formatters.push(function(n){return ot(n,s)});r.$parsers.push(function(n){return n?s:h})},hidden:o,button:o,submit:o,reset:o,file:o},hc=["$browser","$sniffer","$filter","$parse",function(n,t,i,r){return{restrict:"E",require:["?ngModel"],link:{pre:function(u,f,e,o){o[0]&&(sc[v(e.type)]||sc.text)(u,f,e,o[0],t,n,i,r)}}}}],nw=/^(true|false|\d+)$/,tw=function(){return{restrict:"A",priority:100,compile:function(n,t){return nw.test(t.ngValue)?function(n,t,i){i.$set("value",n.$eval(i.ngValue))}:function(n,t,i){n.$watch(i.ngValue,function(n){i.$set("value",n)})}}}},iw=["$compile",function(n){return{restrict:"AC",compile:function(t){return n.$$addBindingClass(t),function(t,i,u){n.$$addBindingInfo(i,u.ngBind);i=i[0];t.$watch(u.ngBind,function(n){i.textContent=r(n)?"":n})}}}}],rw=["$interpolate","$compile",function(n,t){return{compile:function(i){return t.$$addBindingClass(i),function(i,u,f){i=n(u.attr(f.$attr.ngBindTemplate));t.$$addBindingInfo(u,i.expressions);u=u[0];f.$observe("ngBindTemplate",function(n){u.textContent=r(n)?"":n})}}}}],uw=["$sce","$parse","$compile",function(n,t,i){return{restrict:"A",compile:function(r,u){var f=t(u.ngBindHtml),e=t(u.ngBindHtml,function(t){return n.valueOf(t)});return i.$$addBindingClass(r),function(t,r,u){i.$$addBindingInfo(r,u.ngBindHtml);t.$watch(e,function(){var i=f(t);r.html(n.getTrustedHtml(i)||"")})}}}}],fw=ft({restrict:"A",require:"ngModel",link:function(n,t,i,r){r.$viewChangeListeners.push(function(){n.$eval(i.ngChange)})}}),ew=re("",!0),ow=re("Odd",0),sw=re("Even",1),hw=bi({compile:function(n,t){t.$set("ngCloak",void 0);n.removeClass("ng-cloak")}}),cw=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],cc={},lw={blur:!0,focus:!0};t("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(n){var t=yt("ng-"+n);cc[t]=["$parse","$rootScope",function(i,r){return{restrict:"A",compile:function(u,f){var e=i(f[t],null,!0);return function(t,i){i.on(n,function(i){var u=function(){e(t,{$event:i})};lw[n]&&r.$$phase?t.$evalAsync(u):t.$apply(u)})}}}}]});var aw=["$animate","$compile",function(n,t){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(i,r,u,f,e){var h,s,o;i.$watch(u.ngIf,function(i){i?s||e(function(i,f){s=f;i[i.length++]=t.$$createComment("end ngIf",u.ngIf);h={clone:i};n.enter(i,r.parent(),r)}):(o&&(o.remove(),o=null),s&&(s.$destroy(),s=null),h&&(o=ru(h.clone),n.leave(o).then(function(){o=null}),h=null))})}}}],vw=["$templateRequest","$anchorScroll","$animate",function(n,t,i){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ut.noop,compile:function(r,f){var o=f.ngInclude||f.src,s=f.onload||"",e=f.autoscroll;return function(r,f,h,c,l){var p=0,a,v,y,w=function(){v&&(v.remove(),v=null);a&&(a.$destroy(),a=null);y&&(i.leave(y).then(function(){v=null}),v=y,y=null)};r.$watch(o,function(o){var v=function(){u(e)&&(!e||r.$eval(e))&&t()},h=++p;o?(n(o,!0).then(function(n){if(!r.$$destroyed&&h===p){var t=r.$new();c.template=n;n=l(t,function(n){w();i.enter(n,null,f).then(v)});a=t;y=n;a.$emit("$includeContentLoaded",o);r.$eval(s)}},function(){r.$$destroyed||h!==p||(w(),r.$emit("$includeContentError",o))}),r.$emit("$includeContentRequested",o)):(w(),c.template=null)})}}}}],yw=["$compile",function(t){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(i,r,u,f){rt.call(r[0]).match(/SVG/)?(r.empty(),t(uo(f.template,n.document).childNodes)(i,function(n){r.append(n)},{futureParentElement:r})):(r.html(f.template),t(r.contents())(i))}}}],pw=bi({priority:450,compile:function(){return{pre:function(n,t,i){n.$eval(i.ngInit)}}}}),ww=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(n,i,u,f){var e=i.attr(u.$attr.ngList)||", ",o="false"!==u.ngTrim,s=o?p(e):e;f.$parsers.push(function(n){if(!r(n)){var i=[];return n&&t(n.split(s),function(n){n&&i.push(o?p(n):n)}),i}});f.$formatters.push(function(n){if(c(n))return n.join(e)});f.$isEmpty=function(n){return!n||!n.length}}}},gr="ng-valid",lc="ng-invalid",tr="ng-pristine",ef="ng-dirty",ac="ng-pending",nu=l("ngModel"),bw=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(n,i,e,s,h,c,l,a,v,y){var d;this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=void 0;this.$validators={};this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=void 0;this.$name=y(e.name||"",!1)(n);this.$$parentForm=dr;var k=h(e.ngModel),tt=k.assign,nt=k,it=tt,g=null,b,p=this;this.$$setOptions=function(n){if((p.$options=n)&&n.getterSetter){var t=h(e.ngModel+"()"),i=h(e.ngModel+"($$$p)");nt=function(n){var i=k(n);return f(i)&&(i=t(n)),i};it=function(n,t){f(k(n))?i(n,{$$$p:t}):tt(n,t)}}else if(!k.assign)throw nu("nonassign",e.ngModel,vt(s));};this.$render=o;this.$isEmpty=function(n){return r(n)||""===n||null===n||n!==n};this.$$updateEmptyClasses=function(n){p.$isEmpty(n)?(c.removeClass(s,"ng-not-empty"),c.addClass(s,"ng-empty")):(c.removeClass(s,"ng-empty"),c.addClass(s,"ng-not-empty"))};d=0;fh({ctrl:this,$element:s,set:function(n,t){n[t]=!0},unset:function(n,t){delete n[t]},$animate:c});this.$setPristine=function(){p.$dirty=!1;p.$pristine=!0;c.removeClass(s,ef);c.addClass(s,tr)};this.$setDirty=function(){p.$dirty=!0;p.$pristine=!1;c.removeClass(s,tr);c.addClass(s,ef);p.$$parentForm.$setDirty()};this.$setUntouched=function(){p.$touched=!1;p.$untouched=!0;c.setClass(s,"ng-untouched","ng-touched")};this.$setTouched=function(){p.$touched=!0;p.$untouched=!1;c.setClass(s,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){l.cancel(g);p.$viewValue=p.$$lastCommittedViewValue;p.$render()};this.$validate=function(){if(!w(p.$modelValue)||!isNaN(p.$modelValue)){var n=p.$$rawModelValue,t=p.$valid,i=p.$modelValue,r=p.$options&&p.$options.allowInvalid;p.$$runValidators(n,p.$$lastCommittedViewValue,function(u){r||t===u||(p.$modelValue=u?n:void 0,p.$modelValue!==i&&p.$$writeModelToScope())})}};this.$$runValidators=function(n,i,u){function c(){var r=!0;return t(p.$validators,function(t,u){var f=t(n,i);r=r&&f;e(u,f)}),r?!0:(t(p.$asyncValidators,function(n,t){e(t,null)}),!1)}function l(){var r=[],u=!0;t(p.$asyncValidators,function(t,o){var s=t(n,i);if(!s||!f(s.then))throw nu("nopromise",s);e(o,void 0);r.push(s.then(function(){e(o,!0)},function(){u=!1;e(o,!1)}))});r.length?v.all(r).then(function(){s(u)},o):s(!0)}function e(n,t){h===d&&p.$setValidity(n,t)}function s(n){h===d&&u(n)}d++;var h=d;(function(){var n=p.$$parserName||"parse";if(r(b))e(n,null);else return b||(t(p.$validators,function(n,t){e(t,null)}),t(p.$asyncValidators,function(n,t){e(t,null)})),e(n,b),b;return!0})()?c()?l():s(!1):s(!1)};this.$commitViewValue=function(){var n=p.$viewValue;l.cancel(g);(p.$$lastCommittedViewValue!==n||""===n&&p.$$hasNativeValidators)&&(p.$$updateEmptyClasses(n),p.$$lastCommittedViewValue=n,p.$pristine&&this.$setDirty(),this.$$parseAndValidate())};this.$$parseAndValidate=function(){var t=p.$$lastCommittedViewValue,i,u,f;if(b=r(t)?void 0:!0)for(i=0;i<p.$parsers.length;i++)if(t=p.$parsers[i](t),r(t)){b=!1;break}w(p.$modelValue)&&isNaN(p.$modelValue)&&(p.$modelValue=nt(n));u=p.$modelValue;f=p.$options&&p.$options.allowInvalid;p.$$rawModelValue=t;f&&(p.$modelValue=t,p.$modelValue!==u&&p.$$writeModelToScope());p.$$runValidators(t,p.$$lastCommittedViewValue,function(n){f||(p.$modelValue=n?t:void 0,p.$modelValue!==u&&p.$$writeModelToScope())})};this.$$writeModelToScope=function(){it(n,p.$modelValue);t(p.$viewChangeListeners,function(n){try{n()}catch(t){i(t)}})};this.$setViewValue=function(n,t){p.$viewValue=n;p.$options&&!p.$options.updateOnDefault||p.$$debounceViewValueCommit(t)};this.$$debounceViewValueCommit=function(t){var r=0,i=p.$options;i&&u(i.debounce)&&(i=i.debounce,w(i)?r=i:w(i[t])?r=i[t]:w(i["default"])&&(r=i["default"]));l.cancel(g);r?g=l(function(){p.$commitViewValue()},r):a.$$phase?p.$commitViewValue():n.$apply(function(){p.$commitViewValue()})};n.$watch(function(){var t=nt(n);if(t!==p.$modelValue&&(p.$modelValue===p.$modelValue||t===t)){p.$modelValue=p.$$rawModelValue=t;b=void 0;for(var r=p.$formatters,u=r.length,i=t;u--;)i=r[u](i);p.$viewValue!==i&&(p.$$updateEmptyClasses(i),p.$viewValue=p.$$lastCommittedViewValue=i,p.$render(),p.$$runValidators(t,i,o))}return t})}],kw=["$rootScope",function(n){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:bw,priority:1,compile:function(t){return t.addClass(tr).addClass("ng-untouched").addClass(gr),{pre:function(n,t,i,r){var u=r[0];t=r[1]||u.$$parentForm;u.$$setOptions(r[2]&&r[2].$options);t.$addControl(u);i.$observe("name",function(n){u.$name!==n&&u.$$parentForm.$$renameControl(u,n)});n.$on("$destroy",function(){u.$$parentForm.$removeControl(u)})},post:function(t,i,r,u){var f=u[0];if(f.$options&&f.$options.updateOn)i.on(f.$options.updateOn,function(n){f.$$debounceViewValueCommit(n&&n.type)});i.on("blur",function(){f.$touched||(n.$$phase?t.$evalAsync(f.$setTouched):t.$apply(f.$setTouched))})}}}}}],dw=/(\s+|^)default(\s+|$)/,gw=function(){return{restrict:"A",controller:["$scope","$attrs",function(n,t){var i=this;this.$options=dt(n.$eval(t.ngModelOptions));u(this.$options.updateOn)?(this.$options.updateOnDefault=!1,this.$options.updateOn=p(this.$options.updateOn.replace(dw,function(){return i.$options.updateOnDefault=!0," "}))):this.$options.updateOnDefault=!0}]}},nb=bi({terminal:!0,priority:1e3}),tb=l("ngOptions"),ib=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,rb=["$compile","$document","$parse",function(i,r,f){function h(n,t,i){function w(n,t,i,r,u){this.selectValue=n;this.viewValue=t;this.label=i;this.group=r;this.disabled=u}function l(n){var t,i;if(!s&&kt(n))t=n;else{t=[];for(i in n)n.hasOwnProperty(i)&&"$"!==i.charAt(0)&&t.push(i)}return t}var r=n.match(ib),o,s,u;if(!r)throw tb("iexp",n,vt(t));o=r[5]||r[7];s=r[6];n=/ as /.test(r[0])&&r[1];u=r[9];t=f(r[2]?r[1]:o);var b=n&&f(n)||t,k=u&&f(u),h=u?function(n,t){return k(i,t)}:function(n){return fi(n)},a=function(n,t){return h(n,c(n,t))},v=f(r[2]||r[1]),d=f(r[3]||""),y=f(r[4]||""),p=f(r[8]),e={},c=s?function(n,t){return e[s]=t,e[o]=n,e}:function(n){return e[o]=n,e};return{trackBy:u,getTrackByValue:a,getWatchables:f(p,function(n){var f=[];n=n||[];for(var o=l(n),s=o.length,e=0;e<s;e++){var t=n===o?e:o[e],u=n[t],t=c(u,t),u=h(u,t);f.push(u);(r[2]||r[1])&&(u=v(i,t),f.push(u));r[4]&&(t=y(i,t),f.push(t))}return f}),getOptions:function(){for(var k=[],e={},o=p(i)||[],s=l(o),g=s.length,f=0;f<g;f++){var t=o===s?f:s[f],n=c(o[t],t),r=b(i,n),t=h(r,n),nt=v(i,n),tt=d(i,n),n=y(i,n),r=new w(t,r,nt,tt,n);k.push(r);e[t]=r}return{items:k,selectValueMap:e,getOptionFromViewValue:function(n){return e[a(n)]},getViewValueFromOption:function(n){return u?ut.copy(n.viewValue):n.viewValue}}}}}var s=n.document.createElement("option"),l=n.document.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(n,t,i,r){r[0].registerOption=o},post:function(n,f,o,a){function ut(n,t){n.element=t;t.disabled=n.disabled;n.label!==t.label&&(t.label=n.label,t.textContent=n.label);n.value!==t.value&&(t.value=n.selectValue)}function tt(){var i=y&&d.readValue(),n,t,r;if(y)for(n=y.items.length-1;0<=n;n--)t=y.items[n],u(t.group)?cu(t.element.parentNode):cu(t.element);y=k.getOptions();r={};w&&f.prepend(v);y.items.forEach(function(n){var t,i;u(n.group)?(t=r[n.group],t||(t=l.cloneNode(!1),nt.appendChild(t),t.label=null===n.group?"null":n.group,r[n.group]=t),i=s.cloneNode(!1)):(t=nt,i=s.cloneNode(!1));t.appendChild(i);ut(n,i)});f[0].appendChild(nt);p.$render();p.$isEmpty(i)||(n=d.readValue(),(k.trackBy||it?ot(i,n):i===n)||(p.$setViewValue(n),p.$render()))}var d=a[0],p=a[1],it=o.multiple,v,g,rt,w,b,y,k,nt;for(a=0,g=f.children(),rt=g.length;a<rt;a++)if(""===g[a].value){v=g.eq(a);break}w=!!v;b=e(s.cloneNode(!1));b.val("?");k=h(o.ngOptions,f,n);nt=r[0].createDocumentFragment();it?(p.$isEmpty=function(n){return!n||0===n.length},d.writeValue=function(n){y.items.forEach(function(n){n.element.selected=!1});n&&n.forEach(function(n){(n=y.getOptionFromViewValue(n))&&(n.element.selected=!0)})},d.readValue=function(){var i=f.val()||[],n=[];return t(i,function(t){(t=y.selectValueMap[t])&&!t.disabled&&n.push(y.getViewValueFromOption(t))}),n},k.trackBy&&n.$watchCollection(function(){if(c(p.$viewValue))return p.$viewValue.map(function(n){return k.getTrackByValue(n)})},function(){p.$render()})):(d.writeValue=function(n){var t=y.getOptionFromViewValue(n);t?(f[0].value!==t.selectValue&&(b.remove(),w||v.remove(),f[0].value=t.selectValue,t.element.selected=!0),t.element.setAttribute("selected","selected")):null===n||w?(b.remove(),w||f.prepend(v),f.val(""),v.prop("selected",!0),v.attr("selected",!0)):(w||v.remove(),f.prepend(b),f.val("?"),b.prop("selected",!0),b.attr("selected",!0))},d.readValue=function(){var n=y.selectValueMap[f.val()];return n&&!n.disabled?(w||v.remove(),b.remove(),y.getViewValueFromOption(n)):null},k.trackBy&&n.$watch(function(){return k.getTrackByValue(p.$viewValue)},function(){p.$render()}));w?(v.remove(),i(v)(n),v.removeClass("ng-scope")):v=e(s.cloneNode(!1));f.empty();tt();n.$watchCollection(k.getWatchables,tt)}}}}],ub=["$locale","$interpolate","$log",function(n,i,u){var f=/{}/g,e=/^when(Minus)?(.+)$/;return{link:function(s,h,c){function p(n){h.text(n||"")}var b=c.count,k=c.$attr.when&&h.attr(c.$attr.when),d=c.offset||0,a=s.$eval(k)||{},g={},nt=i.startSymbol(),tt=i.endSymbol(),it=nt+b+"-"+d+tt,y=ut.noop,l;t(c,function(n,t){var i=e.exec(t);i&&(i=(i[1]?"-":"")+v(i[2]),a[i]=h.attr(c.$attr[t]))});t(a,function(n,t){g[t]=i(n.replace(f,it))});s.$watch(b,function(t){var i=parseFloat(t),f=isNaN(i);f||i in a||(i=n.pluralCat(i-d));i===l||f&&w(l)&&isNaN(l)||(y(),f=g[i],r(f)?(null!=t&&u.debug("ngPluralize: no rule defined for '"+i+"' in "+k),y=o,p()):y=s.$watch(f,p),l=i)})}}}],fb=["$parse","$animate","$compile",function(n,i,r){var u=l("ngRepeat"),f=function(n,t,i,r,u,f,e){n[i]=r;u&&(n[u]=f);n.$index=t;n.$first=0===t;n.$last=t===e-1;n.$middle=!(n.$first||n.$last);n.$odd=!(n.$even=0==(t&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(e,o){var a=o.ngRepeat,nt=r.$$createComment("end ngRepeat",a),s=a.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/),v,c,p,w,d,g,l;if(!s)throw u("iexp",a);var b=s[1],tt=s[2],h=s[3],k=s[4],s=b.match(/^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/);if(!s)throw u("iidexp",b);if(v=s[3]||s[1],c=s[2],h&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(h)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(h)))throw u("badident",h);return l={$id:fi},k?p=n(k):(d=function(n,t){return fi(t)},g=function(n){return n}),function(n,r,e,o,s){p&&(w=function(t,i,r){return c&&(l[c]=t),l[v]=i,l.$index=r,p(n,l)});var b=y();n.$watchCollection(tt,function(e){var o,et,ot=r[0],tt,st=y(),ut,rt,ft,p,it,l,k;if(h&&(n[h]=e),kt(e))it=e,et=w||d;else for(k in et=w||g,it=[],e)wt.call(e,k)&&"$"!==k.charAt(0)&&it.push(k);for(ut=it.length,k=Array(ut),o=0;o<ut;o++)if(rt=e===it?o:it[o],ft=e[rt],p=et(rt,ft,o),b[p])l=b[p],delete b[p],st[p]=l,k[o]=l;else{if(st[p])throw t(k,function(n){n&&n.scope&&(b[n.id]=n)}),u("dupes",a,p,ft);k[o]={id:p,scope:void 0,clone:void 0};st[p]=!0}for(tt in b){if(l=b[tt],p=ru(l.clone),i.leave(p),p[0].parentNode)for(o=0,et=p.length;o<et;o++)p[o].$$NG_REMOVED=!0;l.scope.$destroy()}for(o=0;o<ut;o++)if(rt=e===it?o:it[o],ft=e[rt],l=k[o],l.scope){tt=ot;do tt=tt.nextSibling;while(tt&&tt.$$NG_REMOVED);l.clone[0]!=tt&&i.move(ru(l.clone),null,ot);ot=l.clone[l.clone.length-1];f(l.scope,o,v,ft,c,rt,ut)}else s(function(n,t){l.scope=t;var r=nt.cloneNode(!1);n[n.length++]=r;i.enter(n,null,ot);ot=r;l.clone=n;st[l.id]=l;f(l.scope,o,v,ft,c,rt,ut)});b=st})}}}}],eb=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngShow,function(t){n[t?"removeClass":"addClass"](i,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],ob=["$animate",function(n){return{restrict:"A",multiElement:!0,link:function(t,i,r){t.$watch(r.ngHide,function(t){n[t?"addClass":"removeClass"](i,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],sb=bi(function(n,i,r){n.$watch(r.ngStyle,function(n,r){r&&n!==r&&t(r,function(n,t){i.css(t,"")});n&&i.css(n)},!0)}),hb=["$animate","$compile",function(n,i){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(r,u,f,e){var c=[],h=[],o=[],s=[],l=function(n,t){return function(){n.splice(t,1)}};r.$watch(f.ngSwitch||f.on,function(r){for(var a,u=0,f=o.length;u<f;++u)n.cancel(o[u]);for(u=o.length=0,f=s.length;u<f;++u)a=ru(h[u].clone),s[u].$destroy(),(o[u]=n.leave(a)).then(l(o,u));h.length=0;s.length=0;(c=e.cases["!"+r]||e.cases["?"])&&t(c,function(t){t.transclude(function(r,u){s.push(u);var f=t.element;r[r.length++]=i.$$createComment("end ngSwitchWhen");h.push({clone:r});n.enter(r,f.parent(),f)})})})}}}],cb=bi({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(n,t,i,r,u){r.cases["!"+i.ngSwitchWhen]=r.cases["!"+i.ngSwitchWhen]||[];r.cases["!"+i.ngSwitchWhen].push({transclude:u,element:t})}}),lb=bi({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(n,t,i,r,u){r.cases["?"]=r.cases["?"]||[];r.cases["?"].push({transclude:u,element:t})}}),ab=l("ngTransclude"),vb=["$compile",function(n){return{restrict:"EAC",terminal:!0,compile:function(t){var i=n(t.contents());return t.empty(),function(n,t,r,u,f){function e(){i(n,function(n){t.append(n)})}if(!f)throw ab("orphan",vt(t));r.ngTransclude===r.$attr.ngTransclude&&(r.ngTransclude="");r=r.ngTransclude||r.ngTranscludeSlot;f(function(n,i){n.length?t.append(n):(e(),i.$destroy())},null,r);r&&!f.isSlotFilled(r)&&e()}}}}],yb=["$templateCache",function(n){return{restrict:"E",terminal:!0,compile:function(t,i){"text/ng-template"==i.type&&n.put(i.id,t[0].text)}}}],pb={$setViewValue:o,$render:o},wb=["$element","$scope",function(t,i){var r=this,f=new pi;r.ngModelCtrl=pb;r.unknownOption=e(n.document.createElement("option"));r.renderUnknownOption=function(n){n="? "+fi(n)+" ?";r.unknownOption.val(n);t.prepend(r.unknownOption);t.val(n)};i.$on("$destroy",function(){r.renderUnknownOption=o});r.removeUnknownOption=function(){r.unknownOption.parent()&&r.unknownOption.remove()};r.readValue=function(){return r.removeUnknownOption(),t.val()};r.writeValue=function(n){r.hasOption(n)?(r.removeUnknownOption(),t.val(n),""===n&&r.emptyOption.prop("selected",!0)):null==n&&r.emptyOption?(r.removeUnknownOption(),t.val("")):r.renderUnknownOption(n)};r.addOption=function(n,t){if(8!==t[0].nodeType){yi(n,'"option value"');""===n&&(r.emptyOption=t);var i=f.get(n)||0;f.put(n,i+1);r.ngModelCtrl.$render();t[0].hasAttribute("selected")&&(t[0].selected=!0)}};r.removeOption=function(n){var t=f.get(n);t&&(1===t?(f.remove(n),""===n&&(r.emptyOption=void 0)):f.put(n,t-1))};r.hasOption=function(n){return!!f.get(n)};r.registerOption=function(n,t,i,f,e){if(f){var o;i.$observe("value",function(n){u(o)&&r.removeOption(o);o=n;r.addOption(n,t)})}else e?n.$watch(e,function(n,u){i.$set("value",n);u!==n&&r.removeOption(u);r.addOption(n,t)}):r.addOption(i.value,t);t.on("$destroy",function(){r.removeOption(i.value);r.ngModelCtrl.$render()})}}],bb=function(){return{restrict:"E",require:["select","?ngModel"],controller:wb,priority:1,link:{pre:function(n,i,r,f){var e=f[1],o,h,s;if(e){o=f[0];o.ngModelCtrl=e;i.on("change",function(){n.$apply(function(){e.$setViewValue(o.readValue())})});r.multiple&&(o.readValue=function(){var n=[];return t(i.find("option"),function(t){t.selected&&n.push(t.value)}),n},o.writeValue=function(n){var r=new pi(n);t(i.find("option"),function(n){n.selected=u(r.get(n.value))})},s=NaN,n.$watch(function(){s!==e.$viewValue||ot(h,e.$viewValue)||(h=st(e.$viewValue),e.$render());s=e.$viewValue}),e.$isEmpty=function(n){return!n||0===n.length})}},post:function(n,t,i,r){var u=r[1],f;u&&(f=r[0],u.$render=function(){f.writeValue(u.$viewValue)})}}}},kb=["$interpolate",function(n){return{restrict:"E",priority:100,compile:function(t,i){var f,r;return u(i.value)?f=n(i.value,!0):(r=n(t.text(),!0),r||i.$set("value",t.text())),function(n,t,i){var u=t.parent();(u=u.data("$selectController")||u.parent().data("$selectController"))&&u.registerOption(n,t,i,f,r)}}}}],db=ft({restrict:"E",terminal:!1}),vc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){r&&(i.required=!0,r.$validators.required=function(n,t){return!i.required||!r.$isEmpty(t)},i.$observe("required",function(){r.$validate()}))}}},yc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,u){if(u){var f,e=i.ngPattern||i.pattern;i.$observe("pattern",function(n){if(h(n)&&0<n.length&&(n=new RegExp("^"+n+"$")),n&&!n.test)throw l("ngPattern")("noregexp",e,n,vt(t));f=n||void 0;u.$validate()});u.$validators.pattern=function(n,t){return u.$isEmpty(t)||r(f)||f.test(t)}}}}},pc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=-1;i.$observe("maxlength",function(n){n=tt(n);u=isNaN(n)?-1:n;r.$validate()});r.$validators.maxlength=function(n,t){return 0>u||r.$isEmpty(t)||t.length<=u}}}}},wc=function(){return{restrict:"A",require:"?ngModel",link:function(n,t,i,r){if(r){var u=0;i.$observe("minlength",function(n){u=tt(n)||0;r.$validate()});r.$validators.minlength=function(n,t){return r.$isEmpty(t)||t.length>=u}}}}};n.angular.bootstrap?n.console&&console.log("WARNING: Tried to load angular more than once."):(fl(),ol(ut),ut.module("ngLocale",[],["$provide",function(n){function t(n){n+="";var t=n.indexOf(".");return-1==t?0:n.length-t-1}n.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a",short:"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-¤",negSuf:"",posPre:"¤",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(n,i){var u=n|0,r=i;return void 0===r&&(r=Math.min(t(n),3)),Math.pow(10,r),1==u&&0==r?"one":"other"}})}]),e(n.document).ready(function(){il(n.document,no)}))}(window);window.angular.$$csp().noInlineStyle||window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}<\/style>'),function(n,t,i){"use strict";function p(n){var i=[];return l(i,t.noop).chars(n),i.join("")}function u(n,i){for(var f={},u=n.split(","),r=0;r<u.length;r++)f[i?t.lowercase(u[r]):u[r]]=!0;return f}function w(n,t){var u,f;null===n||n===i?n="":"string"!=typeof n&&(n=""+n);r.innerHTML=n;u=5;do{if(0===u)throw a("uinput");u--;11>=document.documentMode&&o(r);n=r.innerHTML;r.innerHTML=n}while(n!==r.innerHTML);for(u=r.firstChild;u;){switch(u.nodeType){case 1:t.start(u.nodeName.toLowerCase(),b(u.attributes));break;case 3:t.chars(u.textContent)}if(!(f=u.firstChild)&&(1==u.nodeType&&t.end(u.nodeName.toLowerCase()),f=u.nextSibling,!f))for(;null==f;){if(u=u.parentNode,u===r)break;f=u.nextSibling;1==u.nodeType&&t.end(u.nodeName.toLowerCase())}u=f}for(;u=r.firstChild;)r.removeChild(u)}function b(n){for(var i,r={},t=0,u=n.length;t<u;t++)i=n[t],r[i.name]=i.value;return r}function c(n){return n.replace(/&/g,"&amp;").replace(k,function(n){var t=n.charCodeAt(0);return n=n.charCodeAt(1),"&#"+(1024*(t-55296)+(n-56320)+65536)+";"}).replace(d,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function l(n,i){var u=!1,r=t.bind(n,n.push);return{start:function(n,f){n=t.lowercase(n);!u&&nt[n]&&(u=n);u||!0!==h[n]||(r("<"),r(n),t.forEach(f,function(u,f){var e=t.lowercase(f),o="img"===n&&"src"===e||"background"===e;!0===tt[e]&&(!0!==y[e]||i(u,o))&&(r(" "),r(f),r('="'),r(c(u)),r('"'))}),r(">"))},end:function(n){n=t.lowercase(n);u||!0!==h[n]||!0===v[n]||(r("<\/"),r(n),r(">"));n==u&&(u=!1)},chars:function(n){u||r(c(n))}}}function o(n){var r,u;if(n.nodeType===Node.ELEMENT_NODE)for(var t=n.attributes,i=0,f=t.length;i<f;i++)r=t[i],u=r.name.toLowerCase(),("xmlns:ns1"===u||0===u.indexOf("ns1:"))&&(n.removeAttributeNode(r),i--,f--);(t=n.firstChild)&&o(t);(t=n.nextSibling)&&o(t)}var a=t.$$minErr("$sanitize"),k=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,d=/([^\#-~ |!])/g,v=u("area,br,col,hr,img,wbr"),e=u("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),f=u("rp,rt"),s=t.extend({},f,e),e=t.extend({},e,u("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,section,table,ul")),f=t.extend({},f,u("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),g=u("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan"),nt=u("script,style"),h=t.extend({},v,e,f,s),y=u("background,cite,href,longdesc,src,xlink:href"),s=u("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width"),f=u("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan",!0),tt=t.extend({},y,f,s),r;(function(n){if(n.document&&n.document.implementation)n=n.document.implementation.createHTMLDocument("inert");else throw a("noinert");var t=(n.documentElement||n.getDocumentElement()).getElementsByTagName("body");1===t.length?r=t[0]:(t=n.createElement("html"),r=n.createElement("body"),t.appendChild(r),n.appendChild(t))})(n);t.module("ngSanitize",[]).provider("$sanitize",function(){var n=!1;this.$get=["$$sanitizeUri",function(i){return n&&t.extend(h,g),function(n){var t=[];return w(n,l(t,function(n,t){return!/^unsafe:/.test(i(n,t))})),t.join("")}}];this.enableSvg=function(i){return t.isDefined(i)?(n=i,this):n}});t.module("ngSanitize").filter("linky",["$sanitize",function(n){var i=/((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i,r=/^mailto:/i,u=t.$$minErr("linky"),f=t.isString;return function(e,o,s){function a(n){n&&h.push(p(n))}function y(n,i){var r;if(h.push("<a "),t.isFunction(s)&&(s=s(n)),t.isObject(s))for(r in s)h.push(r+'="'+s[r]+'" ');else s={};!t.isDefined(o)||"target"in s||h.push('target="',o,'" ');h.push('href="',n.replace(/"/g,"&quot;"),'">');a(i);h.push("<\/a>")}if(null==e||""===e)return e;if(!f(e))throw u("notstring",e);for(var c=e,h=[],l,v;e=c.match(i);)l=e[0],e[2]||e[4]||(l=(e[3]?"http://":"mailto:")+l),v=e.index,a(c.substr(0,v)),y(l,e[0].replace(r,"")),c=c.substring(v+e[0].length);return a(c),n(h.join(""))}}])}(window,window.angular),function(n,t){"use strict";function r(){return["$animate",function(n){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link:function(t,i,r,f,e){var h=i[0],c,a=r.ngMessage||r.when,s,o,l;r=r.ngMessageExp||r.whenExp;s=function(n){c=n?u(n)?n:n.split(/[\s,]+/):null;f.reRender()};r?(s(t.$eval(r)),t.$watchCollection(r,s)):s(a);f.register(h,l={test:function(n){var t=c;if(t)return u(t)?0<=t.indexOf(n):t.hasOwnProperty(n)},attach:function(){o||e(t,function(t){n.enter(t,null,i);o=t;var r=o.$$attachId=f.getAttachId();o.on("$destroy",function(){o&&o.$$attachId===r&&(f.deregister(h),l.detach())})})},detach:function(){if(o){var t=o;o=null;n.leave(t)}}})}}}]}var u=t.isArray,i=t.forEach,f=t.isString,e=t.element;t.module("ngMessages",[]).directive("ngMessages",["$animate",function(n){function t(n,t){return f(t)&&0===t.length||r(n.$eval(t))}function r(n){return f(n)?n.length:!!n}return{require:"ngMessages",restrict:"AE",controller:["$element","$scope","$attrs",function(u,f,e){function l(n,t){for(var u,i=t,r=[];i&&i!==n;){if(u=i.$$ngMessageNode,u&&u.length)return s[u];i.childNodes.length&&-1==r.indexOf(i)?(r.push(i),i=i.childNodes[i.childNodes.length-1]):i.previousSibling?i=i.previousSibling:(i=i.parentNode,r.push(i))}}var o=this,a=0,v=0,s,h,c;this.getAttachId=function(){return v++};s=this.messages={};this.render=function(s){var a,v;s=s||{};h=!1;c=s;for(var k=t(f,e.ngMessagesMultiple)||t(f,e.multiple),y=[],p={},l=o.head,w=!1,b=0;null!=l;)b++,a=l.message,v=!1,w||i(s,function(n,t){!v&&r(n)&&a.test(t)&&!p[t]&&(v=p[t]=!0,a.attach())}),v?w=!k:y.push(a),l=l.next;i(y,function(n){n.detach()});y.length!==b?n.setClass(u,"ng-active","ng-inactive"):n.setClass(u,"ng-inactive","ng-active")};f.$watchCollection(e.ngMessages||e["for"],o.render);u.on("$destroy",function(){i(s,function(n){n.message.detach()})});this.reRender=function(){h||(h=!0,f.$evalAsync(function(){h&&c&&o.render(c)}))};this.register=function(n,t){var f=a.toString(),r,i;s[f]={message:t};r=u[0];i=s[f];o.head?(r=l(r,n))?(i.next=r.next,r.next=i):(i.next=o.head,o.head=i):o.head=i;n.$$ngMessageNode=f;a++;o.reRender()};this.deregister=function(n){var i=n.$$ngMessageNode,t;delete n.$$ngMessageNode;t=s[i];(n=l(u[0],n))?n.next=t.next:o.head=t.next;delete s[i];o.reRender()}}]}}]).directive("ngMessagesInclude",["$templateRequest","$document","$compile",function(n,t,i){return{restrict:"AE",require:"^^ngMessages",link:function(r,u,f){var o=f.ngMessagesInclude||f.src;n(o).then(function(n){i(n)(r,function(n){u.after(n);n=i.$$createComment?i.$$createComment("ngMessagesInclude",o):t[0].createComment(" ngMessagesInclude: "+o+" ");n=e(n);u.after(n);u.remove()})})}}}]).directive("ngMessage",r()).directive("ngMessageExp",r())}(window,window.angular),function(n,t){"use strict";var i="BUTTON A INPUT TEXTAREA SELECT DETAILS SUMMARY".split(" "),r=function(n,t){if(-1!==t.indexOf(n[0].nodeName))return!0};t.module("ngAria",["ng"]).provider("$aria",function(){function i(t,i,u,f){return function(e,o,s){var h=s.$normalize(i);!n[h]||r(o,u)||s[h]||e.$watch(s[t],function(n){n=f?!n:!!n;o.attr(i,n)})}}var n={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeypress:!0,bindRoleForClick:!0};this.config=function(i){n=t.extend(n,i)};this.$get=function(){return{config:function(t){return n[t]},$$watchExpr:i}}}).directive("ngShow",["$aria",function(n){return n.$$watchExpr("ngShow","aria-hidden",[],!0)}]).directive("ngHide",["$aria",function(n){return n.$$watchExpr("ngHide","aria-hidden",[],!1)}]).directive("ngValue",["$aria",function(n){return n.$$watchExpr("ngValue","aria-checked",i,!1)}]).directive("ngChecked",["$aria",function(n){return n.$$watchExpr("ngChecked","aria-checked",i,!1)}]).directive("ngReadonly",["$aria",function(n){return n.$$watchExpr("ngReadonly","aria-readonly",i,!1)}]).directive("ngRequired",["$aria",function(n){return n.$$watchExpr("ngRequired","aria-required",i,!1)}]).directive("ngModel",["$aria",function(n){function t(t,u,f,e){return n.config(u)&&!f.attr(t)&&(e||!r(f,i))}function u(n,t){return!t.attr("role")&&t.attr("type")===n&&"INPUT"!==t[0].nodeName}function f(n){var i=n.type,t=n.role;return"checkbox"===(i||t)||"menuitemcheckbox"===t?"checkbox":"radio"===(i||t)||"menuitemradio"===t?"radio":"range"===i||"progressbar"===t||"slider"===t?"range":""}return{restrict:"A",require:"ngModel",priority:200,compile:function(i,r){var e=f(r,i);return{pre:function(n,t,i,r){"checkbox"===e&&(r.$isEmpty=function(n){return!1===n})},post:function(i,r,f,o){function s(){return o.$modelValue}function c(){r.attr("aria-checked",f.value==o.$viewValue)}function l(){r.attr("aria-checked",!o.$isEmpty(o.$viewValue))}var h=t("tabindex","tabindex",r,!1);switch(e){case"radio":case"checkbox":u(e,r)&&r.attr("role",e);t("aria-checked","ariaChecked",r,!1)&&i.$watch(s,"radio"===e?c:l);h&&r.attr("tabindex",0);break;case"range":if(u(e,r)&&r.attr("role","slider"),n.config("ariaValue")){var a=!r.attr("aria-valuemin")&&(f.hasOwnProperty("min")||f.hasOwnProperty("ngMin")),v=!r.attr("aria-valuemax")&&(f.hasOwnProperty("max")||f.hasOwnProperty("ngMax")),y=!r.attr("aria-valuenow");a&&f.$observe("min",function(n){r.attr("aria-valuemin",n)});v&&f.$observe("max",function(n){r.attr("aria-valuemax",n)});y&&i.$watch(s,function(n){r.attr("aria-valuenow",n)})}h&&r.attr("tabindex",0)}!f.hasOwnProperty("ngRequired")&&o.$validators.required&&t("aria-required","ariaRequired",r,!1)&&f.$observe("required",function(){r.attr("aria-required",!!f.required)});t("aria-invalid","ariaInvalid",r,!0)&&i.$watch(function(){return o.$invalid},function(n){r.attr("aria-invalid",!!n)})}}}}}]).directive("ngDisabled",["$aria",function(n){return n.$$watchExpr("ngDisabled","aria-disabled",i,!1)}]).directive("ngMessages",function(){return{restrict:"A",require:"?ngMessages",link:function(n,t){t.attr("aria-live")||t.attr("aria-live","assertive")}}}).directive("ngClick",["$aria","$parse",function(n,t){return{restrict:"A",compile:function(u,f){var e=t(f.ngClick,null,!0);return function(t,u,f){if(!r(u,i)&&(n.config("bindRoleForClick")&&!u.attr("role")&&u.attr("role","button"),n.config("tabindex")&&!u.attr("tabindex")&&u.attr("tabindex",0),n.config("bindKeypress")&&!f.ngKeypress))u.on("keypress",function(n){function r(){e(t,{$event:n})}var i=n.which||n.keyCode;32!==i&&13!==i||t.$apply(r)})}}}}]).directive("ngDblclick",["$aria",function(n){return function(t,u){!n.config("tabindex")||u.attr("tabindex")||r(u,i)||u.attr("tabindex",0)}}])}(window,window.angular),function(n,t){"use strict";function ht(n,t,i){if(!n)throw ei("areq",t||"?",i||"required");return n}function ct(n,t){return!n&&!t?"":n?t?(h(n)&&(n=n.join(" ")),h(t)&&(t=t.join(" ")),n+" "+t):n:t}function gt(n){var t={};return n&&(n.to||n.from)&&(t.to=n.to,t.from=n.from),t}function o(n,t,r){var u="";return n=h(n)?n:n&&a(n)&&n.length?n.split(/\s+/):[],i(n,function(n,i){n&&0<n.length&&(u+=0<i?" ":"",u+=r?t+n:n+t)}),u}function ni(n){if(n instanceof f)switch(n.length){case 0:return[];case 1:if(1===n[0].nodeType)return n;break;default:return f(tt(n))}if(1===n.nodeType)return f(n)}function tt(n){var t,i;if(!n[0])return n;for(t=0;t<n.length;t++)if(i=n[t],1==i.nodeType)return i}function ti(n,t,r){i(t,function(t){n.addClass(t,r)})}function ii(n,t,r){i(t,function(t){n.removeClass(t,r)})}function v(n){return function(t,i){i.addClass&&(ti(n,t,i.addClass),i.addClass=null);i.removeClass&&(ii(n,t,i.removeClass),i.removeClass=null)}}function b(n){if(n=n||{},!n.$$prepared){var t=n.domOperation||u;n.domOperation=function(){n.$$domOperationFired=!0;t();t=u};n.$$prepared=!0}return n}function l(n,t){lt(n,t);at(n,t)}function lt(n,t){t.from&&(n.css(t.from),t.from=null)}function at(n,t){t.to&&(n.css(t.to),t.to=null)}function y(n,t,i){var r=t.options||{},f,e;return i=i.options||{},f=(r.addClass||"")+" "+(i.addClass||""),e=(r.removeClass||"")+" "+(i.removeClass||""),n=ri(n.attr("class"),f,e),i.preparationClasses&&(r.preparationClasses=d(i.preparationClasses,r.preparationClasses),delete i.preparationClasses),f=r.domOperation!==u?r.domOperation:null,kt(r,i),f&&(r.domOperation=f),r.addClass=n.addClass?n.addClass:null,r.removeClass=n.removeClass?n.removeClass:null,t.addClass=r.addClass,t.removeClass=r.removeClass,r}function ri(n,t,r){function e(n){a(n)&&(n=n.split(" "));var t={};return i(n,function(n){n.length&&(t[n]=!0)}),t}var f={},u;return n=e(n),t=e(t),i(t,function(n,t){f[t]=1}),r=e(r),i(r,function(n,t){f[t]=1===f[t]?null:-1}),u={addClass:"",removeClass:""},i(f,function(t,i){var r,f;1===t?(r="addClass",f=!n[i]):-1===t&&(r="removeClass",f=n[i]);f&&(u[r].length&&(u[r]+=" "),u[r]+=i)}),u}function r(n){return n instanceof t.element?n[0]:n}function ui(n,t,i){var r="";t&&(r=o(t,"ng-",!0));i.addClass&&(r=d(r,o(i.addClass,"-add")));i.removeClass&&(r=d(r,o(i.removeClass,"-remove")));r.length&&(i.preparationClasses=r,n.addClass(r))}function k(n,t){var i=t?"-"+t+"s":"";return p(n,[w,i]),[w,i]}function it(n,t){var i=t?"paused":"",r=s+"PlayState";return p(n,[r,i]),[r,i]}function p(n,t){n.style[t[0]]=t[1]}function d(n,t){return n?t?n+" "+t:n:t}function vt(n,t,r){var u=Object.create(null),f=n.getComputedStyle(t)||{};return i(r,function(n,t){var i=f[n],r;i&&(r=i.charAt(0),("-"===r||"+"===r||0<=r)&&(i=fi(i)),0===i&&(i=null),u[t]=i)}),u}function fi(n){var t=0;return n=n.split(/\s*,\s*/),i(n,function(n){"s"==n.charAt(n.length-1)&&(n=n.substring(0,n.length-1));n=parseFloat(n)||0;t=t?Math.max(n,t):n}),t}function rt(n){return 0===n||null!=n}function yt(n,t){var i=e,r=n+"s";return t?i+="Duration":r+=" linear all",[i,r]}function pt(){var n=Object.create(null);return{flush:function(){n=Object.create(null)},count:function(t){return(t=n[t])?t.total:0},get:function(t){return(t=n[t])&&t.value},put:function(t,i){n[t]?n[t].total++:n[t]={total:1,value:i}}}}function wt(n,t,r){i(r,function(i){n[i]=g(n[i])?n[i]:t.style.getPropertyValue(i)})}var u=t.noop,bt=t.copy,kt=t.extend,f=t.element,i=t.forEach,h=t.isArray,a=t.isString,ut=t.isObject,c=t.isUndefined,g=t.isDefined,dt=t.isFunction,ft=t.isElement,e,et,s,ot;c(n.ontransitionend)&&g(n.onwebkittransitionend)?(e="WebkitTransition",et="webkitTransitionEnd transitionend"):(e="transition",et="transitionend");c(n.onanimationend)&&g(n.onwebkitanimationend)?(s="WebkitAnimation",ot="webkitAnimationEnd animationend"):(s="animation",ot="animationend");var nt=s+"Delay",st=s+"Duration",w=e+"Delay";n=e+"Duration";var ei=t.$$minErr("ng"),oi={transitionDuration:n,transitionDelay:w,transitionProperty:e+"Property",animationDuration:st,animationDelay:nt,animationIterationCount:s+"IterationCount"},si={transitionDuration:n,transitionDelay:w,animationDuration:st,animationDelay:nt};t.module("ngAnimate",[]).directive("ngAnimateSwap",["$animate","$rootScope",function(n){return{restrict:"A",transclude:"element",terminal:!0,priority:600,link:function(t,i,r,u,f){var o,e;t.$watchCollection(r.ngAnimateSwap||r["for"],function(r){o&&n.leave(o);e&&(e.$destroy(),e=null);(r||0===r)&&(e=t.$new(),f(e,function(t){o=t;n.enter(t,null,i)}))})}}}]).directive("ngAnimateChildren",["$interpolate",function(n){return{link:function(i,r,u){function e(n){r.data("$$ngAnimateChildren","on"===n||"true"===n)}var f=u.ngAnimateChildren;t.isString(f)&&0===f.length?r.data("$$ngAnimateChildren",!0):(e(n(f)(i)),u.$observe("ngAnimateChildren",e))}}}]).factory("$$rAFScheduler",["$$rAF",function(n){function r(n){i=i.concat(n);u()}function u(){if(i.length){for(var f=i.shift(),r=0;r<f.length;r++)f[r]();t||n(function(){t||u()})}}var i,t;return i=r.queue=[],r.waitUntilQuiet=function(i){t&&t();t=n(function(){t=null;i();u()})},r}]).provider("$$animateQueue",["$animateProvider",function(n){function s(n){if(!n)return null;n=n.split(" ");var t=Object.create(null);return i(n,function(n){t[n]=!0}),t}function o(n,t){if(n&&t){var i=s(t);return n.split(" ").some(function(n){return i[n]})}}function e(n,i,r,u){return t[n].some(function(n){return n(i,r,u)})}function u(n,t){var i=0<(n.addClass||"").length,r=0<(n.removeClass||"").length;return t?i&&r:i||r}var t=this.rules={skip:[],cancel:[],join:[]};t.join.push(function(n,t){return!t.structural&&u(t)});t.skip.push(function(n,t){return!t.structural&&!u(t)});t.skip.push(function(n,t,i){return"leave"==i.event&&t.structural});t.skip.push(function(n,t,i){return i.structural&&2===i.state&&!t.structural});t.cancel.push(function(n,t,i){return i.structural&&t.structural});t.cancel.push(function(n,t,i){return 2===i.state&&t.structural});t.cancel.push(function(n,t,i){if(i.structural)return!1;n=t.addClass;t=t.removeClass;var r=i.addClass;return i=i.removeClass,c(n)&&c(t)||c(r)&&c(i)?!1:o(n,i)||o(t,r)});this.$get=["$$rAF","$rootScope","$rootElement","$document","$$HashMap","$$animation","$$AnimateRunner","$templateRequest","$$jqLite","$$forceReflow",function(t,o,s,p,w,k,d,nt,it){function dt(){var n=!1;return function(t){n?t():o.$$postDigest(function(){n=!0;t()})}}function gt(n,t,u){var e=r(t),o=r(n),f=[];return(n=et[u])&&i(n,function(n){pt.call(n.node,e)?f.push(n.callback):"leave"===u&&pt.call(n.node,o)&&f.push(n.callback)}),f}function ti(n,f,s){function ht(r,u,f,e){ct(function(){var r=gt(et,n,u);r.length&&t(function(){i(r,function(t){t(n,f,e)})})});r.progress(u,f,e)}function tt(t){var r=n,i=c;i.preparationClasses&&(r.removeClass(i.preparationClasses),i.preparationClasses=null);i.activeClasses&&(r.removeClass(i.activeClasses),i.activeClasses=null);yt(n,c);l(n,c);c.domOperation();w.complete(!t)}var c=bt(s),g,et,it,v,nt,ft;(n=ni(n))&&(g=r(n),et=n.parent());var c=b(c),w=new d,ct=dt();if((h(c.addClass)&&(c.addClass=c.addClass.join(" ")),c.addClass&&!a(c.addClass)&&(c.addClass=null),h(c.removeClass)&&(c.removeClass=c.removeClass.join(" ")),c.removeClass&&!a(c.removeClass)&&(c.removeClass=null),c.from&&!ut(c.from)&&(c.from=null),c.to&&!ut(c.to)&&(c.to=null),!g)||(s=[g.className,c.addClass,c.removeClass].join(" "),!ei(s))||(it=0<=["enter","move","leave"].indexOf(f),v=!st||p[0].hidden||ot.get(g),s=!v&&rt.get(g)||{},nt=!!s.state,v||nt&&1==s.state||(v=!ri(n,et,f)),v))return tt(),w;if(it&&ii(n),v={structural:it,element:n,event:f,addClass:c.addClass,removeClass:c.removeClass,close:tt,options:c,runner:w},nt){if(e("skip",n,v,s))return 2===s.state?(tt(),w):(y(n,s,v),s.runner);if(e("cancel",n,v,s))if(2===s.state)s.runner.end();else if(s.structural)s.close();else return y(n,s,v),s.runner;else if(e("join",n,v,s))if(2===s.state)y(n,v,{});else return ui(n,it?f:null,c),f=v.event=s.event,c=y(n,s,v),s.runner}else y(n,v,{});return((nt=v.structural)||(nt="animate"===v.event&&0<Object.keys(v.options.to||{}).length||u(v)),!nt)?(tt(),lt(n),w):(ft=(s.counter||0)+1,v.counter=ft,at(n,1,v),o.$$postDigest(function(){var t=rt.get(g),i=!t,t=t||{},e=0<(n.parent()||[]).length&&("animate"===t.event||t.structural||u(t));i||t.counter!==ft||!e?(i&&(yt(n,c),l(n,c)),(i||it&&t.event!==f)&&(c.domOperation(),w.end()),e||lt(n)):(f=!t.structural&&u(t,!0)?"setClass":t.event,at(n,2),t=k(n,f,t.options),t.done(function(t){tt(!t);(t=rt.get(g))&&t.counter===ft&&lt(r(n));ht(w,f,"close",{})}),w.setHost(t),ht(w,f,"start",{}))}),w)}function ii(n){n=r(n).querySelectorAll("[data-ng-animate]");i(n,function(n){var i=parseInt(n.getAttribute("data-ng-animate")),t=rt.get(n);if(t)switch(i){case 2:t.runner.end();case 1:rt.remove(n)}})}function lt(n){n=r(n);n.removeAttribute("data-ng-animate");rt.remove(n)}function ct(n,t){return r(n)===r(t)}function ri(n,t,i){var a;i=f(p[0].body);var o=ct(n,i)||"HTML"===n[0].nodeName,u=ct(n,s),h=!1,e,l=ot.get(r(n));for((n=f.data(n[0],"$ngAnimatePin"))&&(t=n),t=r(t);t;){if(u||(u=ct(t,s)),1!==t.nodeType)break;if(n=rt.get(t)||{},!h){if(a=ot.get(t),!0===a&&!1!==l){l=!0;break}else!1===a&&(l=!1);h=n.structural}if((c(e)||!0===e)&&(n=f.data(t,"$$ngAnimateChildren"),g(n)&&(e=n)),h&&!1===e)break;if(o||(o=ct(t,i)),o&&u)break;if(!u&&(n=f.data(t,"$ngAnimatePin"))){t=r(n);continue}t=t.parentNode}return(!h||e)&&!0!==l&&u&&o}function at(n,t,i){i=i||{};i.state=t;n=r(n);n.setAttribute("data-ng-animate",t);i=(t=rt.get(n))?kt(t,i):i;rt.put(n,i)}var rt=new w,ot=new w,st=null,fi=o.$watch(function(){return 0===nt.totalPendingRequests},function(n){n&&(fi(),o.$$postDigest(function(){o.$$postDigest(function(){null===st&&(st=!0)})}))}),et={},vt=n.classNameFilter(),ei=vt?function(n){return vt.test(n)}:function(){return!0},yt=v(it),pt=Node.prototype.contains||function(n){return this===n||!!(this.compareDocumentPosition(n)&16)},wt={on:function(n,t,i){var r=tt(t);et[n]=et[n]||[];et[n].push({node:r,callback:i});f(t).on("$destroy",function(){wt.off(n,t,i)})},off:function(n,t,i){function u(n,t,i){var r=tt(t);return n.filter(function(n){return!(n.node===r&&(!i||n.callback===i))})}var r=et[n];r&&(et[n]=1===arguments.length?null:u(r,t,i))},pin:function(n,t){ht(ft(n),"element","not an element");ht(ft(t),"parentElement","not an element");n.data("$ngAnimatePin",t)},push:function(n,t,i,r){return i=i||{},i.domOperation=r,ti(n,t,i)},enabled:function(n,t){var u=arguments.length,i,f;return 0===u?t=!!st:ft(n)?(i=r(n),f=ot.get(i),1===u?t=!f:ot.put(i,!t)):t=st=!!n,t}};return wt}]}]).provider("$$animation",["$animateProvider",function(){function n(n){return n.data("$$animationRunner")}var t=this.drivers=[];this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$HashMap","$$rAFScheduler",function(u,e,o,s,h,c){function y(n){function u(n){var e,t,i;if(n.processed)return n;for(n.processed=!0,e=n.domNode,t=e.parentNode,r.put(e,n);t;){if(i=r.get(t)){i.processed||(i=u(i));break}t=t.parentNode}return(i||f).children.push(n),n}for(var f={children:[]},r=new h,i,t=0;t<n.length;t++)i=n[t],r.put(i.domNode,n[t]={domNode:i.domNode,fn:i.fn,children:[]});for(t=0;t<n.length;t++)u(n[t]);return function(n){for(var f=[],r=[],u,i,e,t=0;t<n.children.length;t++)r.push(n.children[t]);for(n=r.length,u=0,i=[],t=0;t<r.length;t++)e=r[t],0>=n&&(n=u,u=0,f.push(i),i=[]),i.push(e.fn),e.children.forEach(function(n){u++;r.push(n)}),n--;return i.length&&f.push(i),f}(f)}var a=[],p=v(u);return function(h,v,w){function ut(n){n=n.hasAttribute("ng-animate-ref")?[n]:n.querySelectorAll("[ng-animate-ref]");var t=[];return i(n,function(n){var i=n.getAttribute("ng-animate-ref");i&&i.length&&t.push(n)}),t}function ft(n){var t=[],u={},o,e;return i(n,function(n,e){var o=r(n.element),h=0<=["enter","move"].indexOf(n.event),o=n.structural?ut(o):[],s;o.length?(s=h?"to":"from",i(o,function(n){var t=n.getAttribute("ng-animate-ref");u[t]=u[t]||{};u[t][s]={animationID:e,element:f(n)}})):t.push(n)}),o={},e={},i(u,function(i){var r=i.from,u=i.to,c;if(r&&u){var f=n[r.animationID],s=n[u.animationID],h=r.animationID.toString();e[h]||(c=e[h]={structural:!0,beforeStart:function(){f.beforeStart();s.beforeStart()},close:function(){f.close();s.close()},classes:et(f.classes,s.classes),from:f,to:s,anchors:[]},c.classes.length?t.push(c):(t.push(f),t.push(s)));e[h].anchors.push({out:r.element,"in":u.element})}else r=r?r.animationID:u.animationID,u=r.toString(),o[u]||(o[u]=!0,t.push(n[r]))}),t}function et(n,t){var f,i,r,u;for(n=n.split(" "),t=t.split(" "),f=[],i=0;i<n.length;i++)if(r=n[i],"ng-"!==r.substring(0,3))for(u=0;u<t.length;u++)if(r===t[u]){f.push(r);break}return f.join(" ")}function ot(n){for(var i,r=t.length-1;0<=r;r--)if(i=t[r],o.has(i)&&(i=o.get(i)(n)))return i}function st(t,i){t.from&&t.to?(n(t.from.element).setHost(i),n(t.to.element).setHost(i)):n(t.element).setHost(i)}function rt(){var t=n(h);!t||"leave"===v&&w.$$domOperationFired||t.end()}function nt(n){h.off("$destroy",rt);h.removeData("$$animationRunner");p(h,w);l(h,w);w.domOperation();k&&u.removeClass(h,k);h.removeClass("ng-animate");d.complete(!n)}var tt,d,it,k,g;if(w=b(w),tt=0<=["enter","move","leave"].indexOf(v),d=new s({end:function(){nt()},cancel:function(){nt(!0)}}),!t.length)return nt(),d;h.data("$$animationRunner",d);it=ct(h.attr("class"),ct(w.addClass,w.removeClass));k=w.tempClasses;k&&(it+=" "+k,w.tempClasses=null);tt&&(g="ng-"+v+"-prepare",u.addClass(h,g));a.push({element:h,classes:it,event:v,structural:tt,options:w,beforeStart:function(){h.addClass("ng-animate");k&&u.addClass(h,k);g&&(u.removeClass(h,g),g=null)},close:nt});h.on("$destroy",rt);return 1<a.length?d:(e.$$postDigest(function(){var u=[],f,t;i(a,function(t){n(t.element)?u.push(t):t.close()});a.length=0;f=ft(u);t=[];i(f,function(i){t.push({domNode:r(i.from?i.from.element:i.element),fn:function(){var t,r,u;i.beforeStart();r=i.close;n(i.anchors?i.from.element||i.to.element:i.element)&&(u=ot(i),u&&(t=u.start));t?(t=t(),t.done(function(n){r(!n)}),st(i,t)):r()}})});c(y(t))}),d)}}]}]).provider("$animateCss",["$animateProvider",function(){var n=pt(),t=pt();this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$$forceReflow","$sniffer","$$rAFScheduler","$$animateQueue",function(f,c,a,y,d,g,tt,ut){function ct(n,t){var i=n.parentNode;return(i.$$ngAnimateParentKey||(i.$$ngAnimateParentKey=++ni))+"-"+n.getAttribute("class")+"-"+t}function dt(i,r,u,e){var s;return 0<n.count(u)&&(s=t.get(u),s||(r=o(r,"-stagger"),c.addClass(i,r),s=vt(f,i,e),s.animationDuration=Math.max(s.animationDuration,0),s.transitionDuration=Math.max(s.transitionDuration,0),c.removeClass(i,r),t.put(u,s))),s||{}}function pt(i){ft.push(i);tt.waitUntilQuiet(function(){n.flush();t.flush();for(var r=d(),i=0;i<ft.length;i++)ft[i](r);ft.length=0})}function kt(t,i,r){return i=n.get(r),i||(i=vt(f,t,oi),"infinite"===i.animationIterationCount&&(i.animationIterationCount=1)),n.put(r,i),t=i,r=t.animationDelay,i=t.transitionDelay,t.maxDelay=r&&i?Math.max(r,i):r||i,t.maxDuration=Math.max(t.animationDuration*t.animationIterationCount,t.transitionDuration),t}var ht=v(c),ni=0,ft=[];return function(t,f){function ki(){ii()}function or(){ii(!0)}function ii(n){if(!(wi||rr&&ei)){wi=!0;ei=!1;v.$$skipPreparationClasses||c.removeClass(t,ci);c.removeClass(t,cr);it(tt,!1);k(tt,!1);i(ni,function(n){tt.style[n[0]]=""});ht(t,v);l(t,v);Object.keys(pi).length&&i(pi,function(n,t){n?tt.style.setProperty(t,n):tt.style.removeProperty(t)});v.onDone&&v.onDone();oi&&oi.length&&t.off(oi.join(" "),hr);var r=t.data("$$animateCss");r&&(y.cancel(r[0].timer),t.removeData("$$animateCss"));li&&li.complete(!n)}}function sr(n){d.blockTransition&&k(tt,n);d.blockKeyframeAnimation&&it(tt,!!n)}function di(){return li=new a({end:ki,cancel:or}),pt(u),ii(),{$$willAnimate:!1,start:function(){return li},end:ki}}function hr(n){n.stopPropagation();var t=n.originalEvent||n;n=t.$manualTimeStamp||Date.now();t=parseFloat(t.elapsedTime.toFixed(3));Math.max(n-fr,0)>=tr&&t>=ti&&(rr=!0,ii())}function lr(){function n(){var r,u,n,o,h;if(!wi){if(sr(!1),i(ni,function(n){tt.style[n[0]]=n[1]}),ht(t,v),c.addClass(t,cr),d.recalculateTimingStyles){if(bi=tt.className+" "+ci,yi=ct(tt,bi),ft=kt(tt,bi,yi),ui=ft.maxDelay,ai=Math.max(ui,0),ti=ft.maxDuration,0===ti){ii();return}d.hasTransitions=0<ft.transitionDuration;d.hasAnimations=0<ft.animationDuration}if(d.applyAnimationDelay&&(ui="boolean"!=typeof v.delay&&rt(v.delay)?parseFloat(v.delay):ui,ai=Math.max(ui,0),ft.animationDelay=ui,fi=[nt,ui+"s"],ni.push(fi),tt.style[fi[0]]=fi[1]),tr=1e3*ai,ur=1e3*ti,v.easing&&(n=v.easing,d.hasTransitions&&(r=e+"TimingFunction",ni.push([r,n]),tt.style[r]=n),d.hasAnimations&&(r=s+"TimingFunction",ni.push([r,n]),tt.style[r]=n)),ft.transitionDuration&&oi.push(et),ft.animationDuration&&oi.push(ot),fr=Date.now(),u=tr+1.5*ur,r=fr+u,n=t.data("$$animateCss")||[],o=!0,n.length&&(h=n[0],(o=r>h.expectedEndTime)?y.cancel(h.timer):n.push(ii)),o&&(u=y(f,u,!1),n[0]={timer:u,expectedEndTime:r},n.push(ii),t.data("$$animateCss",n)),oi.length)t.on(oi.join(" "),hr);v.to&&(v.cleanupStyles&&wt(pi,tt,Object.keys(v.to)),at(t,v))}}function f(){var i=t.data("$$animateCss"),n;if(i){for(n=1;n<i.length;n++)i[n]();t.removeData("$$animateCss")}}if(!wi)if(tt.parentNode){var r=function(n){if(rr)ei&&n&&(ei=!1,ii());else if(ei=!n,ft.animationDuration)if(n=it(tt,ei),ei)ni.push(n);else{var t=ni,i=t.indexOf(n);0<=n&&t.splice(i,1)}},u=0<ir&&(ft.transitionDuration&&0===ri.transitionDuration||ft.animationDuration&&0===ri.animationDuration)&&Math.max(ri.animationDelay,ri.transitionDelay);u?y(n,Math.floor(u*ir*1e3),!1):n();nr.resume=function(){r(!0)};nr.pause=function(){r(!1)}}else ii()}var v=f||{},pi,tt,yi,ri,ir,ft,ui,d,fi;if(v.$$prepared||(v=b(bt(v))),pi={},tt=r(t),!tt||!tt.parentNode||!ut.enabled())return di();var ni=[],gi=t.attr("class"),vt=gt(v),wi,ei,rr,li,nr,ai,tr,ti,ur,fr,oi=[];if(0===v.duration||!g.animations&&!g.transitions)return di();var vi=v.event&&h(v.event)?v.event.join(" "):v.event,er="",hi="";vi&&v.structural?er=o(vi,"ng-",!0):vi&&(er=vi);v.addClass&&(hi+=o(v.addClass,"-add"));v.removeClass&&(hi.length&&(hi+=" "),hi+=o(v.removeClass,"-remove"));v.applyClassesEarly&&hi.length&&ht(t,v);var ci=[er,hi].join(" ").trim(),bi=gi+" "+ci,cr=o(ci,"-active"),gi=vt.to&&0<Object.keys(vt.to).length;return(0<(v.keyframeStyle||"").length||gi||ci)?(0<v.stagger?(vt=parseFloat(v.stagger),ri={transitionDelay:vt,animationDelay:vt,transitionDuration:0,animationDuration:0}):(yi=ct(tt,bi),ri=dt(tt,ci,yi,si)),v.$$skipPreparationClasses||c.addClass(t,ci),v.transitionStyle&&(vt=[e,v.transitionStyle],p(tt,vt),ni.push(vt)),0<=v.duration&&(vt=0<tt.style[e].length,vt=yt(v.duration,vt),p(tt,vt),ni.push(vt)),v.keyframeStyle&&(vt=[s,v.keyframeStyle],p(tt,vt),ni.push(vt)),ir=ri?0<=v.staggerIndex?v.staggerIndex:n.count(yi):0,(vi=0===ir)&&!v.skipBlocking&&k(tt,9999),ft=kt(tt,bi,yi),ui=ft.maxDelay,ai=Math.max(ui,0),ti=ft.maxDuration,d={},d.hasTransitions=0<ft.transitionDuration,d.hasAnimations=0<ft.animationDuration,d.hasTransitionAll=d.hasTransitions&&"all"==ft.transitionProperty,d.applyTransitionDuration=gi&&(d.hasTransitions&&!d.hasTransitionAll||d.hasAnimations&&!d.hasTransitions),d.applyAnimationDuration=v.duration&&d.hasAnimations,d.applyTransitionDelay=rt(v.delay)&&(d.applyTransitionDuration||d.hasTransitions),d.applyAnimationDelay=rt(v.delay)&&d.hasAnimations,d.recalculateTimingStyles=0<hi.length,(d.applyTransitionDuration||d.applyAnimationDuration)&&(ti=v.duration?parseFloat(v.duration):ti,d.applyTransitionDuration&&(d.hasTransitions=!0,ft.transitionDuration=ti,vt=0<tt.style[e+"Property"].length,ni.push(yt(ti,vt))),d.applyAnimationDuration&&(d.hasAnimations=!0,ft.animationDuration=ti,ni.push([st,ti+"s"]))),0===ti&&!d.recalculateTimingStyles)?di():(null!=v.delay&&("boolean"!=typeof v.delay&&(fi=parseFloat(v.delay),ai=Math.max(fi,0)),d.applyTransitionDelay&&ni.push([w,fi+"s"]),d.applyAnimationDelay&&ni.push([nt,fi+"s"])),null==v.duration&&0<ft.transitionDuration&&(d.recalculateTimingStyles=d.recalculateTimingStyles||vi),tr=1e3*ai,ur=1e3*ti,v.skipBlocking||(d.blockTransition=0<ft.transitionDuration,d.blockKeyframeAnimation=0<ft.animationDuration&&0<ri.animationDelay&&0===ri.animationDuration),v.from&&(v.cleanupStyles&&wt(pi,tt,Object.keys(v.from)),lt(t,v)),d.blockTransition||d.blockKeyframeAnimation?sr(ti):v.skipBlocking||k(tt,!1),{$$willAnimate:!0,end:ki,start:function(){if(!wi)return nr={end:ki,cancel:or,resume:null,pause:null},li=new a(nr),pt(lr),li}}):di()}}]}]).provider("$$animateCssDriver",["$$animationProvider",function(n){n.drivers.push("$$animateCssDriver");this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$sniffer","$$jqLite","$document",function(n,t,e,o,s,h,c){function p(n){return n.replace(/\bng-\S+\b/g,"")}function w(n,t){return a(n)&&(n=n.split(" ")),a(t)&&(t=t.split(" ")),n.filter(function(n){return-1===t.indexOf(n)}).join(" ")}function k(t,u,o){function a(n){var t={},u=r(n).getBoundingClientRect();return i(["width","height","top","left"],function(n){var i=u[n];switch(n){case"top":i+=l.scrollTop;break;case"left":i+=l.scrollLeft}t[n]=Math.floor(i)+"px"}),t}function v(){var t=p(o.attr("class")||""),i=w(t,y),t=w(y,t),i=n(s,{to:a(o),addClass:"ng-anchor-in "+i,removeClass:"ng-anchor-out "+t,delay:!0});return i.$$willAnimate?i:null}function c(){s.remove();u.removeClass("ng-animate-shim");o.removeClass("ng-animate-shim")}var s=f(r(u).cloneNode(!0)),y=p(s.attr("class")||""),h,k;return(u.addClass("ng-animate-shim"),o.addClass("ng-animate-shim"),s.addClass("ng-anchor"),b.append(s),t=function(){var t=n(s,{addClass:"ng-anchor-out",delay:!0,from:a(u)});return t.$$willAnimate?t:null}(),!t&&(h=v(),!h))?c():(k=t||h,{start:function(){function i(){n&&n.end()}var t,n=k.start();return n.done(function(){if(n=null,!h&&(h=v()))return n=h.start(),n.done(function(){n=null;c();t.complete()}),n;c();t.complete()}),t=new e({end:i,cancel:i})}})}function g(n,t,r,f){var o=y(n,u),s=y(t,u),h=[];return i(f,function(n){(n=k(r,n.out,n["in"]))&&h.push(n)}),o||s||0!==h.length?{start:function(){function r(){i(n,function(n){n.end()})}var n=[],t;return o&&n.push(o.start()),s&&n.push(s.start()),i(h,function(t){n.push(t.start())}),t=new e({end:r,cancel:r}),e.all(n,function(n){t.complete(n)}),t}}:void 0}function y(t){var r=t.element,i=t.options||{};return t.structural&&(i.event=t.event,i.structural=!0,i.applyClassesEarly=!0,"leave"===t.event&&(i.onDone=i.domOperation)),i.preparationClasses&&(i.event=d(i.event,i.preparationClasses)),t=n(r,i),t.$$willAnimate?t:null}var l,b;return!s.animations&&!s.transitions?u:(l=c[0].body,t=r(o),b=f(t.parentNode&&11===t.parentNode.nodeType||l.contains(t)?t:l),v(h),function(n){return n.from&&n.to?g(n.from,n.to,n.classes,n.anchors):y(n)})}]}]).provider("$$animateJs",["$animateProvider",function(n){this.$get=["$injector","$$AnimateRunner","$$jqLite",function(t,r,f){function e(i){var r,f;i=h(i)?i:i.split(" ");for(var e=[],o={},u=0;u<i.length;u++)r=i[u],f=n.$$registeredAnimations[r],f&&!o[r]&&(e.push(t.get(f)),o[r]=!0);return e}var o=v(f);return function(n,t,f,s){function a(){s.domOperation();o(n,s)}function it(n,t,i,f,e){switch(i){case"animate":t=[t,f.from,f.to,e];break;case"setClass":t=[t,nt,tt,e];break;case"addClass":t=[t,nt,e];break;case"removeClass":t=[t,tt,e];break;default:t=[t,e]}if(t.push(f),n=n.apply(n,t))if(dt(n.start)&&(n=n.start()),n instanceof r)n.done(e);else if(dt(n))return n;return u}function c(n,t,f,e,o){var s=[];return i(e,function(i){var e=i[o];e&&s.push(function(){var i,s,h=!1,o=function(n){h||(h=!0,(s||u)(n),i.complete(!n))};return i=new r({end:function(){o()},cancel:function(){o(!0)}}),s=it(e,n,t,f,function(n){o(!1===n)}),i})}),s}function g(n,t,u,f,e){var o=c(n,t,u,f,e),s,h;return 0===o.length&&("beforeSetClass"===e?(s=c(n,"removeClass",u,f,"beforeRemoveClass"),h=c(n,"addClass",u,f,"beforeAddClass")):"setClass"===e&&(s=c(n,"removeClass",u,f,"removeClass"),h=c(n,"addClass",u,f,"addClass")),s&&(o=o.concat(s)),h&&(o=o.concat(h))),0!==o.length?function(n){var t=[];return o.length&&i(o,function(n){t.push(n())}),t.length?r.all(t,n):n(),function(n){i(t,function(t){n?t.cancel():t.end()})}}:void 0}var v=!1,k,d,h;3===arguments.length&&ut(f)&&(s=f,f=null);s=b(s);f||(f=n.attr("class")||"",s.addClass&&(f+=" "+s.addClass),s.removeClass&&(f+=" "+s.removeClass));var nt=s.addClass,tt=s.removeClass,w=e(f),y,p;return w.length&&("leave"==t?(d="leave",k="afterLeave"):(d="before"+t.charAt(0).toUpperCase()+t.substr(1),k=t),"enter"!==t&&"move"!==t&&(y=g(n,t,s,w,d)),p=g(n,t,s,w,k)),y||p?{$$willAnimate:!0,end:function(){return h?h.end():(v=!0,a(),l(n,s),h=new r,h.complete(!0)),h},start:function(){function f(t){v=!0;a();l(n,s);h.complete(t)}if(h)return h;h=new r;var i,t=[];return y&&t.push(function(n){i=y(n)}),t.length?t.push(function(n){a();n(!0)}):a(),p&&t.push(function(n){i=p(n)}),h.setHost({end:function(){v||((i||u)(void 0),f(void 0))},cancel:function(){v||((i||u)(!0),f(!0))}}),r.chain(t,f),h}}:void 0}}]}]).provider("$$animateJsDriver",["$$animationProvider",function(n){n.drivers.push("$$animateJsDriver");this.$get=["$$animateJs","$$AnimateRunner",function(n,t){function r(t){return n(t.element,t.event,t.classes,t.options)}return function(n){if(n.from&&n.to){var u=r(n.from),f=r(n.to);if(u||f)return{start:function(){function r(){return function(){i(n,function(n){n.end()})}}var n=[],e;return u&&n.push(u.start()),f&&n.push(f.start()),t.all(n,function(n){e.complete(n)}),e=new t({end:r(),cancel:r()})}}}else return r(n)}}]}])}(window,window.angular);"undefined"!=typeof module&&"undefined"!=typeof exports&&module.exports===exports&&(module.exports="ui.router"),function(n,t,i){"use strict";function w(n,t){return u(new(u(function(){},{prototype:n})),t)}function d(n){return e(arguments,function(t){t!==n&&e(t,function(t,i){n.hasOwnProperty(i)||(n[i]=t)})}),n}function ui(n,t){var r=[],i;for(i in n.path){if(n.path[i]!==t.path[i])break;r.push(n.path[i])}return r}function p(n){if(Object.keys)return Object.keys(n);var t=[];return e(n,function(n,i){t.push(i)}),t}function h(n,t){if(Array.prototype.indexOf)return n.indexOf(t,Number(arguments[2])||0);var r=n.length>>>0,i=Number(arguments[2])||0;for(i=0>i?Math.ceil(i):Math.floor(i),0>i&&(i+=r);r>i;i++)if(i in n&&n[i]===t)return i;return-1}function ft(n,t,i,r){var f,o=ui(i,r),c={},l=[],s,e;for(s in o)if(o[s]&&o[s].params&&(f=p(o[s].params),f.length))for(e in f)h(l,f[e])>=0||(l.push(f[e]),c[f[e]]=n[f[e]]);return u({},c,t)}function g(n,t,i){var f,r,u;if(!i){i=[];for(f in n)i.push(f)}for(r=0;r<i.length;r++)if(u=i[r],n[u]!=t[u])return!1;return!0}function b(n,t){var i={};return e(n,function(n){i[n]=t[n]}),i}function et(n){var t={},i=Array.prototype.concat.apply(Array.prototype,Array.prototype.slice.call(arguments,1));return e(i,function(i){i in n&&(t[i]=n[i])}),t}function k(n){var i={},r=Array.prototype.concat.apply(Array.prototype,Array.prototype.slice.call(arguments,1)),t;for(t in n)-1==h(r,t)&&(i[t]=n[t]);return i}function nt(n,t){var r=a(n),i=r?[]:{};return e(n,function(n,u){t(n,u)&&(i[r?i.length:u]=n)}),i}function y(n,t){var i=a(n)?[]:{};return e(n,function(n,r){i[r]=t(n,r)}),i}function ot(n,t){var c=1,l=2,o={},a=[],v=o,y=u(n.when(o),{$$promises:o,$$values:o});this.study=function(o){function tt(n,i){if(g[i]!==l){if(b.push(i),g[i]===c)throw b.splice(0,h(b,i)),new Error("Cyclic dependency: "+b.join(" -> "));if(g[i]=c,f(n))w.push(i,[function(){return t.get(n)}],a);else{var r=t.annotate(n);e(r,function(n){n!==i&&o.hasOwnProperty(n)&&tt(o[n],n)});w.push(i,n,r)}b.pop();g[i]=l}}function it(n){return s(n)&&n.then&&n.$$promises}if(!s(o))throw new Error("'invocables' must be an object");var nt=p(o||{}),w=[],b=[],g={};return e(o,tt),o=b=g=null,function(f,o,h){function p(){--et||(rt||d(l,o.$$values),c.$$values=l,c.$$promises=c.$$promises||!0,delete c.$$inheritedValues,tt.resolve(l))}function g(n){c.$$failure=n;tt.reject(n)}function ft(i,u,o){function a(n){s.reject(n);g(n)}function y(){if(!r(c.$$failure))try{s.resolve(t.invoke(u,h,l));s.promise.then(function(n){l[i]=n;p()},a)}catch(n){a(n)}}var s=n.defer(),v=0;e(o,function(n){b.hasOwnProperty(n)&&!f.hasOwnProperty(n)&&(v++,b[n].then(function(t){l[n]=t;--v||y()},a))});v||y();b[i]=s.promise}var a,ut;if(it(f)&&h===i&&(h=o,o=f,f=null),f){if(!s(f))throw new Error("'locals' must be an object");}else f=v;if(o){if(!it(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()");}else o=y;var tt=n.defer(),c=tt.promise,b=c.$$promises={},l=u({},f),et=1+w.length/3,rt=!1;if(r(o.$$failure))return g(o.$$failure),c;for(o.$$inheritedValues&&d(l,k(o.$$inheritedValues,nt)),u(b,o.$$promises),o.$$values?(rt=d(l,k(o.$$values,nt)),c.$$inheritedValues=k(o.$$values,nt),p()):(o.$$inheritedValues&&(c.$$inheritedValues=k(o.$$inheritedValues,nt)),o.then(p,g)),a=0,ut=w.length;ut>a;a+=3)f.hasOwnProperty(w[a])?p():ft(w[a],w[a+1],w[a+2]);return c}};this.resolve=function(n,t,i,r){return this.study(n)(t,i,r)}}function st(n,t,i){this.fromConfig=function(n,t,i){return r(n.template)?this.fromString(n.template,t):r(n.templateUrl)?this.fromUrl(n.templateUrl,t):r(n.templateProvider)?this.fromProvider(n.templateProvider,t,i):null};this.fromString=function(n,t){return c(n)?n(t):n};this.fromUrl=function(i,r){return c(i)&&(i=i(r)),null==i?null:n.get(i,{cache:t,headers:{Accept:"text/html"}}).then(function(n){return n.data})};this.fromProvider=function(n,t,r){return i.invoke(n,null,r||{params:t})}}function v(n,t,r){function d(t,i,r,u){if(it.push(t),tt[t])return tt[t];if(!/^\w+([-.]+\w+)*(?:\[\])?$/.test(t))throw new Error("Invalid parameter name '"+t+"' in pattern '"+n+"'");if(b[t])throw new Error("Duplicate parameter name '"+t+"' in pattern '"+n+"'");return b[t]=new l.Param(t,i,r,u),b[t]}function g(n,t,i,r){var u=["",""],f=n.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!t)return f;switch(i){case!1:u=["(",")"+(r?"?":"")];break;case!0:f=f.replace(/\/$/,"");u=["(?:/(",")|/)?"];break;default:u=["("+i+"|",")?"]}return f+u[0]+t+u[1]}function nt(r,u){var e,f,s,h,c;return e=r[2]||r[3],c=t.params[e],s=n.substring(o,r.index),f=u?r[4]:r[4]||("*"==r[1]?".*":null),f&&(h=l.type(f)||w(l.type("string"),{pattern:new RegExp(f,t.caseInsensitive?"i":i)})),{id:e,regexp:f,segment:s,type:h,cfg:c}}var f,h,e,c,k;t=u({params:{}},s(t)?t:{});var a,v=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,rt=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,y="^",o=0,p=this.segments=[],tt=r?r.params:{},b=this.params=r?r.params.$$new():new l.ParamSet,it=[];for(this.source=n;(a=v.exec(n))&&(f=nt(a,!1),!(f.segment.indexOf("?")>=0));)h=d(f.id,f.type,f.cfg,"path"),y+=g(f.segment,h.type.pattern.source,h.squash,h.isOptional),p.push(f.segment),o=v.lastIndex;if(e=n.substring(o),c=e.indexOf("?"),c>=0){if(k=this.sourceSearch=e.substring(c),e=e.substring(0,c),this.sourcePath=n.substring(0,o+c),k.length>0)for(o=0;a=rt.exec(k);)f=nt(a,!0),h=d(f.id,f.type,f.cfg,"search"),o=v.lastIndex}else this.sourcePath=n,this.sourceSearch="";y+=g(e)+(t.strict===!1?"/?":"")+"$";p.push(e);this.regexp=new RegExp(y,t.caseInsensitive?"i":i);this.prefix=p[0];this.$$paramNames=it}function o(n){u(this,n)}function ht(){function rt(n){return null!=n?n.toString().replace(/~/g,"~~").replace(/\//g,"~2F"):n}function st(n){return null!=n?n.toString().replace(/~2F/g,"/").replace(/~~/g,"~"):n}function ct(){return{strict:g,caseInsensitive:d}}function ut(n){return c(n)||a(n)&&c(n[n.length-1])}function ft(){for(;it.length;){var i=it.shift();if(i.pattern)throw new Error("You cannot override a type's .pattern at runtime.");t.extend(n[i.name],b.invoke(i.def))}}function k(n){u(this,n||{})}l=this;var b,d=!1,g=!0,tt=!1,n={},et=!0,it=[],ot={string:{encode:rt,decode:st,is:function(n){return null==n||!r(n)||"string"==typeof n},pattern:/[^\/]*/},int:{encode:rt,decode:function(n){return parseInt(n,10)},is:function(n){return r(n)&&this.decode(n.toString())===n},pattern:/\d+/},bool:{encode:function(n){return n?1:0},decode:function(n){return 0!==parseInt(n,10)},is:function(n){return n===!0||n===!1},pattern:/0|1/},date:{encode:function(n){return this.is(n)?[n.getFullYear(),("0"+(n.getMonth()+1)).slice(-2),("0"+n.getDate()).slice(-2)].join("-"):i},decode:function(n){if(this.is(n))return n;var t=this.capture.exec(n);return t?new Date(t[1],t[2]-1,t[3]):i},is:function(n){return n instanceof Date&&!isNaN(n.valueOf())},equals:function(n,t){return this.is(n)&&this.is(t)&&n.toISOString()===t.toISOString()},pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/},json:{encode:t.toJson,decode:t.fromJson,is:t.isObject,equals:t.equals,pattern:/[^\/]*/},any:{encode:t.identity,decode:t.identity,equals:t.equals,pattern:/.*/}};ht.$$getDefaultValue=function(n){if(!ut(n.value))return n.value;if(!b)throw new Error("Injectable functions cannot be called at configuration time");return b.invoke(n.value)};this.caseInsensitive=function(n){return r(n)&&(d=n),d};this.strictMode=function(n){return r(n)&&(g=n),g};this.defaultSquashPolicy=function(n){if(!r(n))return tt;if(n!==!0&&n!==!1&&!f(n))throw new Error("Invalid squash policy: "+n+". Valid policies: false, true, arbitrary-string");return tt=n,n};this.compile=function(n,t){return new v(n,u(ct(),t))};this.isMatcher=function(n){if(!s(n))return!1;var t=!0;return e(v.prototype,function(i,u){c(i)&&(t=t&&r(n[u])&&c(n[u]))}),t};this.type=function(t,i,f){if(!r(i))return n[t];if(n.hasOwnProperty(t))throw new Error("A type named '"+t+"' has already been defined.");return n[t]=new o(u({name:t},i)),f&&(it.push({name:t,def:f}),et||ft()),this};e(ot,function(t,i){n[i]=new o(u({name:i},t))});n=w(n,{});this.$get=["$injector",function(t){return b=t,et=!1,ft(),e(ot,function(t,i){n[i]||(n[i]=new o(t))}),this}];this.Param=function(e,c,l,v){function it(n){var t=s(n)?p(n):[],i=-1===h(t,"value")&&-1===h(t,"type")&&-1===h(t,"squash")&&-1===h(t,"array");return i&&(n={value:n}),n.$$fn=ut(n.value)?n.value:function(){return n.value},n}function rt(i,r,u){if(i.type&&r)throw new Error("Param '"+e+"' has two type configurations.");return r?r:i.type?t.isString(i.type)?n[i.type]:i.type instanceof o?i.type:new o(i.type):"config"===u?n.any:n.string}function ft(){var n={array:"search"===v?"auto":!1},t=e.match(/\[\]$/)?{array:!0}:{};return u(n,t,l).array}function et(n,t){var i=n.squash;if(!t||i===!1)return!1;if(!r(i)||null==i)return tt;if(i===!0||f(i))return i;throw new Error("Invalid squash policy: '"+i+"'. Valid policies: false, true, or arbitrary string");}function ot(n,t,r,u){var e,o,s=[{from:"",to:r||t?i:""},{from:null,to:r||t?i:""}];return e=a(n.replace)?n.replace:[],f(u)&&e.push({from:u,to:i}),o=y(e,function(n){return n.from}),nt(s,function(n){return-1===h(o,n.from)}).concat(e)}function st(){if(!b)throw new Error("Injectable functions cannot be called at configuration time");var n=b.invoke(l.$$fn);if(null!==n&&n!==i&&!k.type.is(n))throw new Error("Default value ("+n+") for parameter '"+k.id+"' is not an instance of Type ("+k.type.name+")");return n}function ht(n){function t(n){return function(t){return t.from===n}}function i(n){var i=y(nt(k.replace,t(n)),function(n){return n.to});return i.length?i[0]:n}return n=i(n),r(n)?k.type.$normalize(n):st()}function ct(){return"{Param:"+e+" "+c+" squash: '"+g+"' optional: "+d+"}"}var k=this,w;l=it(l);c=rt(l,c,v);w=ft();c=w?c.$asArray(w,"search"===v):c;"string"!==c.name||w||"path"!==v||l.value!==i||(l.value="");var d=l.value!==i,g=et(l,d),lt=ot(l,w,d,g);u(this,{id:e,type:c,location:v,array:w,squash:g,replace:lt,isOptional:d,value:ht,dynamic:i,config:l,toString:ct})};k.prototype={$$new:function(){return w(this,u(new k,{$$parent:this}))},$$keys:function(){for(var t=[],i=[],n=this,r=p(k.prototype);n;)i.push(n),n=n.$$parent;return i.reverse(),e(i,function(n){e(p(n),function(n){-1===h(t,n)&&-1===h(r,n)&&t.push(n)})}),t},$$values:function(n){var t={},i=this;return e(i.$$keys(),function(r){t[r]=i[r].value(n&&n[r])}),t},$$equals:function(n,t){var i=!0,r=this;return e(r.$$keys(),function(u){var f=n&&n[u],e=t&&t[u];r[u].type.equals(f,e)||(i=!1)}),i},$$validates:function(n){for(var r,f,e,o,s=this.$$keys(),u=0;u<s.length&&(r=this[s[u]],f=n[s[u]],f!==i&&null!==f||!r.isOptional);u++)if((e=r.type.$normalize(f),!r.type.is(e))||(o=r.type.encode(e),t.isString(o)&&!r.type.pattern.exec(o)))return!1;return!0},$$parent:i};this.ParamSet=k}function ct(n,e){function p(n){var t=/^\^((?:\\[^a-zA-Z0-9]|[^\\\[\]\^$*+?.()|{}]+)*)/.exec(n.source);return null!=t?t[1].replace(/\\(.)/g,"$1"):""}function w(n,t){return n.replace(/\$(\$|\d{1,2})/,function(n,i){return t["$"===i?0:Number(i)]})}function h(n,t,i){if(!i)return!1;var u=n.invoke(t,t,{$match:i});return r(u)?u:!0}function l(r,u,e,h,c){function k(n,t,i){return"/"===a?n:t?a.slice(0,-1)+n:i?a.slice(1)+n:n}function w(n){function u(n){var t=n(e,r);return t?(f(t)&&r.replace().url(t),!0):!1}if(!n||!n.defaultPrevented){l&&r.url()===l;l=i;for(var h=o.length,t=0;h>t;t++)if(u(o[t]))return;s&&u(s)}}function b(){return v=v||u.$on("$locationChangeSuccess",w)}var l,a=h.baseHref(),p=r.url();return y||b(),{sync:function(){w()},listen:function(){return b()},update:function(n){return n?void(p=r.url()):void(r.url()!==p&&(r.url(p),r.replace()))},push:function(n,t,u){var f=n.format(t||{});null!==f&&t&&t["#"]&&(f+="#"+t["#"]);r.url(f);l=u&&u.$$avoidResync?r.url():i;u&&u.replace&&r.replace()},href:function(i,u,f){var o,e,h,s;return i.validates(u)?(o=n.html5Mode(),t.isObject(o)&&(o=o.enabled),o=o&&c.history,e=i.format(u),f=f||{},o||null===e||(e="#"+n.hashPrefix()+e),null!==e&&u&&u["#"]&&(e+="#"+u["#"]),e=k(e,o,f.absolute),!f.absolute||!e)?e:(h=!o&&e?"/":"",s=r.port(),s=80===s||443===s?"":":"+s,[r.protocol(),"://",r.host(),s,h,e].join("")):null}}}var v,o=[],s=null,y=!1;this.rule=function(n){if(!c(n))throw new Error("'rule' must be a function");return o.push(n),this};this.otherwise=function(n){if(f(n)){var t=n;n=function(){return t}}else if(!c(n))throw new Error("'rule' must be a function");return s=n,this};this.when=function(n,t){var i,r=f(t),l,o,s;if(f(n)&&(n=e.compile(n)),!r&&!c(t)&&!a(t))throw new Error("invalid 'handler' in when()");l={matcher:function(n,t){return r&&(i=e.compile(t),t=["$match",function(n){return i.format(n)}]),u(function(i,r){return h(i,t,n.exec(r.path(),r.search()))},{prefix:f(n.prefix)?n.prefix:""})},regex:function(n,t){if(n.global||n.sticky)throw new Error("when() RegExp must not be global or sticky");return r&&(i=t,t=["$match",function(n){return w(i,n)}]),u(function(i,r){return h(i,t,n.exec(r.path()))},{prefix:p(n)})}};o={matcher:e.isMatcher(n),regex:n instanceof RegExp};for(s in o)if(o[s])return this.rule(l[s](n,t));throw new Error("invalid 'what' in when()");};this.deferIntercept=function(n){n===i&&(n=!0);y=n};this.$get=l;l.$inject=["$location","$rootScope","$injector","$browser","$sniffer"]}function lt(n,o){function ht(n){return 0===n.indexOf(".")||0===n.indexOf("^")}function k(n,t){var s;if(!n)return i;var h=f(n),u=h?n:n.name,c=ht(u);if(c){if(!t)throw new Error("No reference point given for path '"+u+"'");t=k(t);for(var r=u.split("."),e=0,l=r.length,o=t;l>e;e++)if(""!==r[e]||0!==e){if("^"!==r[e])break;if(!o.parent)throw new Error("Path '"+u+"' not valid for state '"+t.name+"'");o=o.parent}else o=t;r=r.slice(e).join(".");u=o.name+(o.name&&r?".":"")+r}return s=tt[u],!s||!h&&(h||s!==n&&s.self!==n)?i:s}function ct(n,t){rt[n]||(rt[n]=[]);rt[n].push(t)}function lt(n){for(var t=rt[n]||[];t.length;)ut(t.shift())}function ut(t){var i,u,r;if(t=w(t,{self:t,resolve:t.resolve||{},toString:function(){return this.name}}),i=t.name,!f(i)||i.indexOf("@")>=0)throw new Error("State must have a valid name");if(tt.hasOwnProperty(i))throw new Error("State '"+i+"' is already defined");if(u=-1!==i.indexOf(".")?i.substring(0,i.lastIndexOf(".")):f(t.parent)?t.parent:s(t.parent)&&f(t.parent.name)?t.parent.name:"",u&&!tt[u])return ct(u,t.self);for(r in d)c(d[r])&&(t[r]=d[r](t,d.$delegates[r]));return tt[i]=t,!t[st]&&t.url&&n.when(t.url,["$match","$stateParams",function(n,i){v.$current.navigable==t&&g(n,i)||v.transitionTo(t,n,{inherit:!0,location:!1})}]),lt(i),t}function at(n){return n.indexOf("*")>-1}function vt(n){for(var t=n.split("."),i=v.$current.name.split("."),r=0,u=t.length;u>r;r++)"*"===t[r]&&(i[r]="*");return"**"===t[0]&&(i=i.slice(h(i,t[1])),i.unshift("**")),"**"===t[t.length-1]&&(i.splice(h(i,t[t.length-2])+1,Number.MAX_VALUE),i.push("**")),t.length!=i.length?!1:i.join("")===t.join("")}function yt(n,t){return f(n)&&!r(t)?d[n]:c(t)&&f(n)?(d[n]&&!d.$delegates[n]&&(d.$delegates[n]=d[n]),d[n]=t,this):this}function pt(n,t){return s(n)?t=n:t.name=n,ut(t),this}function ot(n,o,h,l,d,rt,ut){function ct(t,i,r,u){var e=n.$broadcast("$stateNotFound",t,i,r),f;return e.defaultPrevented?(ut.update(),ot):e.retry?u.$retry?(ut.update(),ht):(f=v.transition=o.when(e.retry),f.then(function(){return f!==v.transition?et:(t.options.$retry=!0,v.transitionTo(t.to,t.toParams,t.options))},function(){return ot}),ut.update(),f):null}function lt(n,i,r,u,f,s){function p(){var i=[];return e(n.views,function(r,u){var e=r.resolve&&r.resolve!==n.resolve?r.resolve:{};e.$template=[function(){return h.load(u,{view:r,locals:f.globals,params:y,notify:s.notify})||""}];i.push(d.resolve(e,f.globals,f.resolve,n).then(function(i){if(c(r.controllerProvider)||a(r.controllerProvider)){var o=t.extend({},e,f.globals);i.$$controller=l.invoke(r.controllerProvider,null,o)}else i.$$controller=r.controller;i.$$state=n;i.$$controllerAs=r.controllerAs;f[u]=i}))}),o.all(i).then(function(){return f.globals})}var y=r?i:b(n.params.$$keys(),i),w={$stateParams:y},v;return f.resolve=d.resolve(n.resolve,w,f.resolve,n),v=[f.resolve.then(function(n){f.globals=n})],u&&v.push(u),o.all(v).then(p).then(function(){return f})}var et=o.reject(new Error("transition superseded")),yt=o.reject(new Error("transition prevented")),ot=o.reject(new Error("transition aborted")),ht=o.reject(new Error("transition failed"));return nt.locals={resolve:null,globals:{$stateParams:{}}},v={params:{},current:nt.self,$current:nt,transition:null},v.reload=function(n){return v.transitionTo(v.current,rt,{reload:n||!0,inherit:!1,notify:!0})},v.go=function(n,t,i){return v.transitionTo(n,t,u({inherit:!0,relative:v.$current},i))},v.transitionTo=function(t,i,e){var ot,dt,gt,bt,at,kt;i=i||{};e=u({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},e||{});var ni,y=v.$current,p=v.params,tt=y.path,a=k(t,e.relative),vt=i["#"];if(!r(a)){if(ot={to:t,toParams:i,options:e},dt=ct(ot,y.self,p,e),dt)return dt;if(t=ot.to,i=ot.toParams,e=ot.options,a=k(t,e.relative),!r(a)){if(!e.relative)throw new Error("No such state '"+t+"'");throw new Error("Could not resolve '"+t+"' from state '"+e.relative+"'");}}if(a[st])throw new Error("Cannot transition to abstract state '"+t+"'");if(e.inherit&&(i=ft(rt,i||{},v.$current,a)),!a.params.$$validates(i))return ht;i=a.params.$$values(i);t=a;var d=t.path,c=0,h=d[c],g=nt.locals,pt=[];if(e.reload){if(f(e.reload)||s(e.reload)){if(s(e.reload)&&!e.reload.name)throw new Error("Invalid reload state object");if(gt=e.reload===!0?tt[0]:k(e.reload),e.reload&&!gt)throw new Error("No such reload state '"+(f(e.reload)?e.reload:e.reload.name)+"'");for(;h&&h===tt[c]&&h!==gt;)g=pt[c]=h.locals,c++,h=d[c]}}else for(;h&&h===tt[c]&&h.ownParams.$$equals(i,p);)g=pt[c]=h.locals,c++,h=d[c];if(wt(t,i,y,p,g,e))return vt&&(i["#"]=vt),v.params=i,it(v.params,rt),it(b(t.params.$$keys(),rt),t.locals.globals.$stateParams),e.location&&t.navigable&&t.navigable.url&&(ut.push(t.navigable.url,i,{$$avoidResync:!0,replace:"replace"===e.location}),ut.update(!0)),v.transition=null,o.when(v.current);if(i=b(t.params.$$keys(),i||{}),vt&&(i["#"]=vt),e.notify&&n.$broadcast("$stateChangeStart",t.self,i,y.self,p,e).defaultPrevented)return n.$broadcast("$stateChangeCancel",t.self,i,y.self,p),null==v.transition&&ut.update(),yt;for(bt=o.when(g),at=c;at<d.length;at++,h=d[at])g=pt[at]=w(g),bt=lt(h,i,h===t,bt,g,e);return kt=v.transition=bt.then(function(){var r,u,f;if(v.transition!==kt)return et;for(r=tt.length-1;r>=c;r--)f=tt[r],f.self.onExit&&l.invoke(f.self.onExit,f.self,f.locals.globals),f.locals=null;for(r=c;r<d.length;r++)u=d[r],u.locals=pt[r],u.self.onEnter&&l.invoke(u.self.onEnter,u.self,u.locals.globals);return v.transition!==kt?et:(v.$current=t,v.current=t.self,v.params=i,it(v.params,rt),v.transition=null,e.location&&t.navigable&&ut.push(t.navigable.url,t.navigable.locals.globals.$stateParams,{$$avoidResync:!0,replace:"replace"===e.location}),e.notify&&n.$broadcast("$stateChangeSuccess",t.self,i,y.self,p),ut.update(!0),v.current)},function(r){return v.transition!==kt?et:(v.transition=null,ni=n.$broadcast("$stateChangeError",t.self,i,y.self,p,r),ni.defaultPrevented||ut.update(),o.reject(r))})},v.is=function(n,t,f){f=u({relative:v.$current},f||{});var e=k(n,f.relative);return r(e)?v.$current!==e?!1:t?g(e.params.$$values(t),rt):!0:i},v.includes=function(n,t,e){if(e=u({relative:v.$current},e||{}),f(n)&&at(n)){if(!vt(n))return!1;n=v.$current.name}var o=k(n,e.relative);return r(o)?r(v.$current.includes[o.name])?t?g(o.params.$$values(t),rt,p(t)):!0:!1:i},v.href=function(n,t,f){var e,o;return(f=u({lossy:!0,inherit:!0,absolute:!1,relative:v.$current},f||{}),e=k(n,f.relative),!r(e))?null:(f.inherit&&(t=ft(rt,t||{},v.$current,e)),o=e&&f.lossy?e.navigable:e,o&&o.url!==i&&null!==o.url?ut.href(o.url,b(e.params.$$keys().concat("#"),t||{}),{absolute:f.absolute}):null)},v.get=function(n,t){if(0===arguments.length)return y(p(tt),function(n){return tt[n].self});var i=k(n,t||v.$current);return i&&i.self?i.self:null},v}function wt(n,t,i,r,u,f){function e(n,t,i){function r(t){return"search"!=n.params[t].location}var u=n.params.$$keys().filter(r),f=et.apply({},[n.params].concat(u)),e=new l.ParamSet(f);return e.$$equals(t,i)}if(!f.reload&&n===i&&(u===i.locals||n.self.reloadOnSearch===!1&&e(i,r,t)))return!0}var nt,v,tt={},rt={},st="abstract",d={parent:function(n){if(r(n.parent)&&n.parent)return k(n.parent);var t=/^(.+)\.[^.]+$/.exec(n.name);return t?k(t[1]):nt},data:function(n){return n.parent&&n.parent.data&&(n.data=n.self.data=w(n.parent.data,n.data)),n.data},url:function(n){var t=n.url,i={params:n.params||{}};if(f(t))return"^"==t.charAt(0)?o.compile(t.substring(1),i):(n.parent.navigable||nt).url.concat(t,i);if(!t||o.isMatcher(t))return t;throw new Error("Invalid url '"+t+"' in state '"+n+"'");},navigable:function(n){return n.url?n:n.parent?n.parent.navigable:null},ownParams:function(n){var t=n.url&&n.url.params||new l.ParamSet;return e(n.params||{},function(n,i){t[i]||(t[i]=new l.Param(i,null,n,"config"))}),t},params:function(n){var t=et(n.ownParams,n.ownParams.$$keys());return n.parent&&n.parent.params?u(n.parent.params.$$new(),t):new l.ParamSet},views:function(n){var t={};return e(r(n.views)?n.views:{"":n},function(i,r){r.indexOf("@")<0&&(r+="@"+n.parent.name);t[r]=i}),t},path:function(n){return n.parent?n.parent.path.concat(n):[]},includes:function(n){var t=n.parent?u({},n.parent.includes):{};return t[n.name]=!0,t},$delegates:{}};nt=ut({name:"",url:"^",views:null,abstract:!0});nt.navigable=null;this.decorator=yt;this.state=pt;this.$get=ot;ot.$inject=["$rootScope","$q","$view","$injector","$resolve","$stateParams","$urlRouter","$location","$urlMatcherFactory"]}function at(){function n(n,t){return{load:function(n,i){var r;return i=u({template:null,controller:null,view:null,locals:null,notify:!0,async:!0,params:{}},i),i.view&&(r=t.fromConfig(i.view,i.params,i.locals)),r}}}this.$get=n;n.$inject=["$rootScope","$templateFactory"]}function fi(){var n=!1;this.useAnchorScroll=function(){n=!0};this.$get=["$anchorScroll","$timeout",function(t,i){return n?t:function(n){return i(function(){n[0].scrollIntoView()},0,!1)}}]}function vt(n,i,r,u){function s(){return i.has?function(n){return i.has(n)?i.get(n):null}:function(n){try{return i.get(n)}catch(t){return null}}}function h(n,i){function o(n){return 1===rt&&ut>=4?!!f.enabled(n):1===rt&&ut>=2?!!f.enabled():!!e}var r={enter:function(n,t,i){t.after(n);i()},leave:function(n,t){n.remove();t()}},u;return n.noanimation?r:f?{enter:function(n,i,u){o(n)?t.version.minor>2?f.enter(n,null,i).then(u):f.enter(n,null,i,u):r.enter(n,i,u)},leave:function(n,i){o(n)?t.version.minor>2?f.leave(n).then(i):f.leave(n,i):r.leave(n,i)}}:e?(u=e&&e(i,n),{enter:function(n,t,i){u.enter(n,null,t);i()},leave:function(n,t){u.leave(n);t()}}):r}var o=s(),e=o("$animator"),f=o("$animate");return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(i,f,e){return function(i,f,o){function w(){function t(){i&&i.remove();n&&n.$destroy()}var i=l,n=s;n&&(n._willBeDestroyed=!0);c?(p.leave(c,function(){t();l=null}),l=c):(t(),l=null);c=null;s=null}function v(h){var v,l=pt(i,o,f,u),d=l&&n.$current&&n.$current.locals[l],k;(h||d!==y)&&!i._willBeDestroyed&&(v=i.$new(),y=n.$current.locals[l],v.$emit("$viewContentLoading",l),k=e(v,function(n){p.enter(n,f,function(){s&&s.$emit("$viewContentAnimationEnded");(t.isDefined(a)&&!a||i.$eval(a))&&r(n)});w()}),c=k,s=v,s.$emit("$viewContentLoaded",l),s.$eval(b))}var l,c,s,y,b=o.onload||"",a=o.autoscroll,p=h(o,i);i.$on("$stateChangeSuccess",function(){v(!1)});v(!0)}}}}function yt(n,t,i,r){return{restrict:"ECA",priority:-400,compile:function(u){var f=u.html();return function(u,e,o){var c=i.$current,l=pt(u,o,e,r),s=c&&c.locals[l],a,h;s&&(e.data("$uiView",{name:l,state:s.$$state}),e.html(s.$template?s.$template:f),a=n(e.contents()),s.$$controller&&(s.$scope=u,s.$element=e,h=t(s.$$controller,s),s.$$controllerAs&&(u[s.$$controllerAs]=h),e.data("$ngControllerController",h),e.children().data("$ngControllerController",h)),a(u))}}}}function pt(n,t,i,r){var u=r(t.uiView||t.name||"")(n),f=i.inheritedData("$uiView");return u.indexOf("@")>=0?u:u+"@"+(f?f.state.name:"")}function wt(n,t){var i,r=n.match(/^\s*({[^}]*})\s*$/);if(r&&(n=t+"("+r[1]+")"),i=n.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/),!i||4!==i.length)throw new Error("Invalid state ref '"+n+"'");return{state:i[1],paramExpr:i[3]||null}}function bt(n){var t=n.parent().inheritedData("$uiView");if(t&&t.state&&t.state.name)return t.state}function kt(n){var i="[object SVGAnimatedString]"===Object.prototype.toString.call(n.prop("href")),t="FORM"===n[0].nodeName;return{attr:t?"action":i?"xlink:href":"href",isAnchor:"A"===n.prop("tagName").toUpperCase(),clickable:!t}}function dt(n,t,i,r,u){return function(f){var h=f.which||f.button,e=u(),o,s;h>1||f.ctrlKey||f.metaKey||f.shiftKey||n.attr("target")||(o=i(function(){t.go(e.state,e.params,e.options)}),f.preventDefault(),s=r.isAnchor&&!e.href?1:0,f.preventDefault=function(){s--<=0&&i.cancel(o)})}}function ei(n,t){return{relative:bt(n)||t.$current,inherit:!0}}function gt(n,i){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(r,f,e,o){var h=wt(e.uiSref,n.current.name),s={state:h.state,href:null,params:null},c=kt(f),a=o[1]||o[0],l;s.options=u(ei(f,n),e.uiSrefOpts?r.$eval(e.uiSrefOpts):{});l=function(i){i&&(s.params=t.copy(i));s.href=n.href(h.state,s.params,s.options);a&&a.$$addStateInfo(h.state,s.params);null!==s.href&&e.$set(c.attr,s.href)};h.paramExpr&&(r.$watch(h.paramExpr,function(n){n!==s.params&&l(n)},!0),s.params=t.copy(r.$eval(h.paramExpr)));l();c.clickable&&f.bind("click",dt(f,n,i,c,function(){return s}))}}}function ni(n,t){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(i,r,u,f){function s(t){e.state=t[0];e.params=t[1];e.options=t[2];e.href=n.href(e.state,e.params,e.options);h&&h.$$addStateInfo(e.state,e.params);e.href&&u.$set(o.attr,e.href)}var o=kt(r),h=f[1]||f[0],l=[u.uiState,u.uiStateParams||null,u.uiStateOpts||null],c="["+l.map(function(n){return n||"null"}).join(", ")+"]",e={state:null,params:null,options:null,href:null};i.$watch(c,s,!0);s(i.$eval(c));o.clickable&&r.bind("click",dt(r,n,t,o,function(){return e}))}}}function tt(n,t,i){return{restrict:"A",controller:["$scope","$element","$attrs","$timeout",function(t,r,u,o){function y(t,i,u){var e=n.get(t,bt(r)),f=b(t,i);h.push({state:e||{name:t},params:i,hash:f});v[f]=u}function b(n,i){if(!f(n))throw new Error("state should be a string");return s(i)?n+ri(i):(i=t.$eval(i),s(i)?n+ri(i):n)}function l(){for(var n=0;n<h.length;n++)k(h[n].state,h[n].params)?p(r,v[h[n].hash]):w(r,v[h[n].hash]),d(h[n].state,h[n].params)?p(r,a):w(r,a)}function p(n,t){o(function(){n.addClass(t)})}function w(n,t){n.removeClass(t)}function k(t,i){return n.includes(t.name,i)}function d(t,i){return n.is(t.name,i)}var a,c,h=[],v={};a=i(u.uiSrefActiveEq||"",!1)(t);try{c=t.$eval(u.uiSrefActive)}catch(g){}c=c||i(u.uiSrefActive||"",!1)(t);s(c)&&e(c,function(i,r){if(f(i)){var u=wt(i,n.current.name);y(u.state,t.$eval(u.paramExpr),r)}});this.$$addStateInfo=function(n,t){s(c)&&h.length>0||(y(n,t,c),l())};t.$on("$stateChangeSuccess",l);l()}]}}function ti(n){var t=function(t,i){return n.is(t,i)};return t.$stateful=!0,t}function ii(n){var t=function(t,i,r){return n.includes(t,i,r)};return t.$stateful=!0,t}var r=t.isDefined,c=t.isFunction,f=t.isString,s=t.isObject,a=t.isArray,e=t.forEach,u=t.extend,it=t.copy,ri=t.toJson,l,rt,ut;t.module("ui.router.util",["ng"]);t.module("ui.router.router",["ui.router.util"]);t.module("ui.router.state",["ui.router.router","ui.router.util"]);t.module("ui.router",["ui.router.state"]);t.module("ui.router.compat",["ui.router"]);ot.$inject=["$q","$injector"];t.module("ui.router.util").service("$resolve",ot);st.$inject=["$http","$templateCache","$injector"];t.module("ui.router.util").service("$templateFactory",st);v.prototype.concat=function(n,t){var i={caseInsensitive:l.caseInsensitive(),strict:l.strictMode(),squash:l.defaultSquashPolicy()};return new v(this.sourcePath+n+this.sourceSearch,u(i,t),this)};v.prototype.toString=function(){return this.source};v.prototype.exec=function(n,t){function a(n){function t(n){return n.split("").reverse().join("")}function i(n){return n.replace(/\\-/g,"-")}var r=t(n).split(/-(?!\\)/),u=y(r,t);return y(u,i).reverse()}var h=this.regexp.exec(n),u,i;if(!h)return null;t=t||{};var o,f,e,c=this.parameters(),v=c.length,l=this.segments.length-1,s={};if(l!==h.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");for(o=0;l>o;o++){for(e=c[o],u=this.params[e],i=h[o+1],f=0;f<u.replace.length;f++)u.replace[f].from===i&&(i=u.replace[f].to);i&&u.array===!0&&(i=a(i));r(i)&&(i=u.type.decode(i));s[e]=u.value(i)}for(;v>o;o++){for(e=c[o],s[e]=this.params[e].value(t[e]),u=this.params[e],i=t[e],f=0;f<u.replace.length;f++)u.replace[f].from===i&&(i=u.replace[f].to);r(i)&&(i=u.type.decode(i));s[e]=u.value(i)}return s};v.prototype.parameters=function(n){return r(n)?this.params[n]||null:this.$$paramNames};v.prototype.validates=function(n){return this.params.$$validates(n)};v.prototype.format=function(n){function d(n){return encodeURIComponent(n).replace(/-/g,function(n){return"%5C%"+n.charCodeAt(0).toString(16).toUpperCase()})}var s,b,k;n=n||{};var h=this.segments,c=this.parameters(),g=this.params;if(!this.validates(n))return null;for(var l=!1,v=h.length-1,nt=c.length,i=h[0],r=0;nt>r;r++){var tt=v>r,o=c[r],u=g[o],p=u.value(n[o]),w=u.isOptional&&u.type.equals(u.value(),p),e=w?u.squash:!1,t=u.type.encode(p);if(tt)s=h[r+1],b=r+1===v,e===!1?(null!=t&&(i+=a(t)?y(t,d).join("-"):encodeURIComponent(t)),i+=s):e===!0?(k=i.match(/\/$/)?/\/?(.*)/:/(.*)/,i+=s.match(k)[1]):f(e)&&(i+=e+s),b&&u.squash===!0&&"/"===i.slice(-1)&&(i=i.slice(0,-1));else{if(null==t||w&&e!==!1)continue;if(a(t)||(t=[t]),0===t.length)continue;t=y(t,encodeURIComponent).join("&"+o+"=");i+=(l?"&":"?")+(o+"="+t);l=!0}}return i};o.prototype.is=function(){return!0};o.prototype.encode=function(n){return n};o.prototype.decode=function(n){return n};o.prototype.equals=function(n,t){return n==t};o.prototype.$subPattern=function(){var n=this.pattern.toString();return n.substr(1,n.length-2)};o.prototype.pattern=/.*/;o.prototype.toString=function(){return"{Type:"+this.name+"}"};o.prototype.$normalize=function(n){return this.is(n)?n:this.decode(n)};o.prototype.$asArray=function(n,t){function u(n,t){function u(n,t){return function(){return n[t].apply(n,arguments)}}function e(n){return a(n)?n:r(n)?[n]:[]}function o(n){switch(n.length){case 0:return i;case 1:return"auto"===t?n[0]:n;default:return n}}function s(n){return!n}function f(n,t){return function(i){if(a(i)&&0===i.length)return i;i=e(i);var r=y(i,n);return t===!0?0===nt(r,s).length:o(r)}}function h(n){return function(t,i){var u=e(t),f=e(i),r;if(u.length!==f.length)return!1;for(r=0;r<u.length;r++)if(!n(u[r],f[r]))return!1;return!0}}this.encode=f(u(n,"encode"));this.decode=f(u(n,"decode"));this.is=f(u(n,"is"),!0);this.equals=h(u(n,"equals"));this.pattern=n.pattern;this.$normalize=f(u(n,"$normalize"));this.name=n.name;this.$arrayMode=t}if(!n)return this;if("auto"===n&&!t)throw new Error("'auto' array mode is for query parameters only");return new u(this,n)};t.module("ui.router.util").provider("$urlMatcherFactory",ht);t.module("ui.router.util").run(["$urlMatcherFactory",function(){}]);ct.$inject=["$locationProvider","$urlMatcherFactoryProvider"];t.module("ui.router.router").provider("$urlRouter",ct);lt.$inject=["$urlRouterProvider","$urlMatcherFactoryProvider"];t.module("ui.router.state").factory("$stateParams",function(){return{}}).provider("$state",lt);at.$inject=[];t.module("ui.router.state").provider("$view",at);t.module("ui.router.state").provider("$uiViewScroll",fi);rt=t.version.major;ut=t.version.minor;vt.$inject=["$state","$injector","$uiViewScroll","$interpolate"];yt.$inject=["$compile","$controller","$state","$interpolate"];t.module("ui.router.state").directive("uiView",vt);t.module("ui.router.state").directive("uiView",yt);gt.$inject=["$state","$timeout"];ni.$inject=["$state","$timeout"];tt.$inject=["$state","$stateParams","$interpolate"];t.module("ui.router.state").directive("uiSref",gt).directive("uiSrefActive",tt).directive("uiSrefActiveEq",tt).directive("uiState",ni);ti.$inject=["$state"];ii.$inject=["$state"];t.module("ui.router.state").filter("isState",ti).filter("includedByState",ii)}(window,window.angular);!function(n){function r(t){try{n.module(t)}catch(i){return!1}return!0}function u(n,t,i){function u(){n.$on("$locationChangeStart",function(n){t.$_blockLocationChange&&t.state().blockCount>0&&n.preventDefault()});n.$on("$locationChangeSuccess",function(){t.$_blockLocationChange=i.blockBrowserNavigation})}if(i.blockBrowserNavigation)if(r("ngRoute"))var f=n.$on("$viewContentLoaded",function(){f();u()});else u()}var t=n.module("blockUI",[]),i;t.config(["$provide","$httpProvider",function(n,t){n.decorator("$exceptionHandler",["$delegate","$injector",function(n,t){var i,r;return function(u,f){if(r=r||t.get("blockUIConfig"),r.resetOnException)try{i=i||t.get("blockUI");i.instances.reset()}catch(e){console.log("$exceptionHandler",u)}n(u,f)}}]);t.interceptors.push("blockUIHttpInterceptor")}]);t.run(["$document","blockUIConfig","$templateCache",function(n,t,i){t.autoInjectBodyBlock&&n.find("body").attr("block-ui","main");t.template&&(t.templateUrl="$$block-ui-template$$",i.put(t.templateUrl,t.template))}]);t.config(["$provide",function(n){n.decorator("$location",i)}]);i=["$delegate","blockUI","blockUIConfig",function(t,i,r){function u(n){var r=t[n];t[n]=function(){var n=r.apply(t,arguments);return n===t&&(i.$_blockLocationChange=!1),n}}if(r.blockBrowserNavigation){i.$_blockLocationChange=!0;n.forEach(["url","path","search","hash","state"],u)}return t}];t.directive("blockUiContainer",["blockUIConfig","blockUiContainerLinkFn",function(n,t){return{scope:!0,restrict:"A",templateUrl:n.templateUrl,compile:function(){return t}}}]).factory("blockUiContainerLinkFn",["blockUI","blockUIUtils",function(){return function(n,t){var i=t.inheritedData("block-ui");if(!i)throw new Error("No parent block-ui service instance located.");n.state=i.state()}}]);t.directive("blockUi",["blockUiCompileFn",function(n){return{scope:!0,restrict:"A",compile:n}}]).factory("blockUiCompileFn",["blockUiPreLinkFn",function(n){return function(t){return t.append('<div block-ui-container class="block-ui-container"><\/div>'),{pre:n}}}]).factory("blockUiPreLinkFn",["blockUI","blockUIUtils","blockUIConfig",function(n,t,i){return function(r,f,e){var s,o,h,c,l;f.hasClass("block-ui")||f.addClass(i.cssClass);e.$observe("blockUiMessageClass",function(n){r.$_blockUiMessageClass=n});s=e.blockUi||"_"+r.$id;o=n.instances.get(s);"main"===s?u(r,o,i):(h=f.inheritedData("block-ui"),h&&(o._parent=h));r.$on("$destroy",function(){o.release()});o.addRef();r.$_blockUiState=o.state();r.$watch("$_blockUiState.blocking",function(n){f.attr("aria-busy",!!n);f.toggleClass("block-ui-visible",!!n)});r.$watch("$_blockUiState.blockCount > 0",function(n){f.toggleClass("block-ui-active",!!n)});c=e.blockUiPattern;c&&(l=t.buildRegExp(c),o.pattern(l));f.data("block-ui",o)}}]);t.constant("blockUIConfig",{templateUrl:"angular-block-ui/angular-block-ui.ng.html",delay:250,message:"Loading ...",autoBlock:!0,resetOnException:!0,requestFilter:n.noop,autoInjectBodyBlock:!0,cssClass:"block-ui block-ui-anim-fade",blockBrowserNavigation:!1});t.factory("blockUIHttpInterceptor",["$q","$injector","blockUIConfig","$templateCache",function(n,t,i,r){function f(){u=u||t.get("blockUI")}function e(n){i.autoBlock&&n&&!n.$_noBlock&&n.$_blocks&&(f(),n.$_blocks.stop())}function o(t){try{e(t.config)}catch(i){console.log("httpRequestError",i)}return n.reject(t)}var u;return{request:function(n){if(i.autoBlock&&("GET"!=n.method||!r.get(n.url))){var t=i.requestFilter(n);t===!1?n.$_noBlock=!0:(f(),n.$_blocks=u.instances.locate(n),n.$_blocks.start(t))}return n},requestError:o,response:function(n){return n&&e(n.config),n},responseError:o}}]);t.factory("blockUI",["blockUIConfig","$timeout","blockUIUtils","$document",function(t,i,r,u){function s(f){var l,s=this,c={id:f,blockCount:0,message:t.message,blocking:!1},a=[];this._id=f;this._refs=0;this.start=function(f){function a(){l=null;c.blocking=!0}f=f||{};n.isString(f)?f={message:f}:n.forEach(h,function(n){if(f[n])throw new Error("The property "+n+" is reserved for the block state.");});n.extend(c,f);c.message=c.blockCount>0?f.message||c.message||t.message:f.message||t.message;c.blockCount++;var e=n.element(u[0].activeElement);e.length&&r.isElementInBlockScope(e,s)&&(s._restoreFocus=e[0],i(function(){s._restoreFocus&&s._restoreFocus!==o[0]&&s._restoreFocus.blur()}));l||0===t.delay?0===t.delay&&a():l=i(a,t.delay)};this._cancelStartTimeout=function(){l&&(i.cancel(l),l=null)};this.stop=function(){c.blockCount=Math.max(0,--c.blockCount);0===c.blockCount&&s.reset(!0)};this.isBlocking=function(){return c.blocking};this.message=function(n){c.message=n};this.pattern=function(n){return void 0!==n&&(s._pattern=n),s._pattern};this.reset=function(t){if(s._cancelStartTimeout(),c.blockCount=0,c.blocking=!1,s._restoreFocus&&(!u[0].activeElement||u[0].activeElement===o[0])){try{s._restoreFocus.focus()}catch(r){!function(){var n=s._restoreFocus;i(function(){if(n)try{n.focus()}catch(t){}},100)}()}s._restoreFocus=null}try{t&&n.forEach(a,function(n){n()})}finally{a.length=0}};this.done=function(n){a.push(n)};this.state=function(){return c};this.addRef=function(){s._refs+=1};this.release=function(){--s._refs<=0&&e.instances._destroy(s)}}var o=u.find("body"),h=["id","blockCount","blocking"],f=[],e;return f.get=function(n){if(!isNaN(n))throw new Error("BlockUI id cannot be a number");var t=f[n];return t||(t=f[n]=new s(n),f.push(t)),t},f._destroy=function(t){if(n.isString(t)&&(t=f[t]),t){t.reset();var i=r.indexOf(f,t);f.splice(i,1);delete f[t.state().id]}},f.locate=function(n){var t=[],i,u,o;for(r.forEachFnHook(t,"start"),r.forEachFnHook(t,"stop"),i=f.length;i--;)u=f[i],o=u._pattern,o&&o.test(n.url)&&t.push(u);return 0===t.length&&t.push(e),t},r.forEachFnHook(f,"reset"),e=f.get("main"),e.addRef(),e.instances=f,e}]);t.factory("blockUIUtils",function(){var i=n.element,t={buildRegExp:function(n){var t=n.match(/^\/(.*)\/([gim]*)$/);if(!t)throw Error("Incorrect regular expression format: "+n);return new RegExp(t[1],t[2])},forEachFn:function(n,t,i){for(var u,r=n.length;r--;)u=n[r],u[t].apply(u,i)},forEachFnHook:function(n,i){n[i]=function(){t.forEachFn(this,i,arguments)}},isElementInBlockScope:function(n,t){for(var i=n.inheritedData("block-ui");i;){if(i===t)return!0;i=i._parent}return!1},findElement:function(n,r,u){var f=null,e,o;if(r(n))f=n;else for(e=u?n.parent():n.children(),o=e.length;!f&&o--;)f=t.findElement(i(e[o]),r,u);return f},indexOf:function(n,t,i){for(var r=i||0,u=n.length;u>r;r++)if(n[r]===t)return r;return-1}};return t});n.module("blockUI").run(["$templateCache",function(n){n.put("angular-block-ui/angular-block-ui.ng.html",'<div class="block-ui-overlay"><\/div><div class="block-ui-message-container" aria-live="assertive" aria-atomic="true"><div class="block-ui-message" ng-class="$_blockUiMessageClass">{{ state.message }}<\/div><\/div>')}])}(angular);!function(){"use strict";function n(n,t,i,r,u,f,e){function p(n){if(1!==arguments.length||n)if(n)c(n.toastId);else for(var t=0;t<o.length;t++)c(o[t].toastId)}function w(n,t,i){var r=h().iconClasses.error;return l(r,n,t,i)}function b(n,t,i){var r=h().iconClasses.info;return l(r,n,t,i)}function k(n,t,i){var r=h().iconClasses.success;return l(r,n,t,i)}function d(n,t,i){var r=h().iconClasses.warning;return l(r,n,t,i)}function c(t,i){function u(n){for(var t=0;t<o.length;t++)if(o[t].toastId===n)return o[t]}function h(){return!o.length}var r=u(t);r&&!r.deleting&&(r.deleting=!0,r.isOpened=!1,n.leave(r.el).then(function(){var t,n;r.scope.options.onHidden&&r.scope.options.onHidden(i);r.scope.$destroy();t=o.indexOf(r);delete v[r.scope.message];o.splice(t,1);n=f.maxOpened;n&&o.length>=n&&o[n-1].open.resolve();h()&&(s.remove(),s=null,a=e.defer())}))}function l(n,t,i,r){return angular.isObject(i)&&(r=i,i=null),nt({iconClass:n,message:t,optionsOverride:r,title:i})}function h(){return angular.extend({},f)}function g(t){if(s)return a.promise;s=angular.element("<div><\/div>");s.attr("id",t.containerId);s.addClass(t.positionClass);s.css({"pointer-events":"auto"});var i=angular.element(document.querySelector(t.target));if(!i||!i.length)throw"Target for toasts doesn't exist";return n.enter(s,i).then(function(){a.resolve()}),a.promise}function nt(i){function w(){return f.autoDismiss&&f.maxOpened&&o.length>f.maxOpened}function b(n,t,i){i.allowHtml?(n.scope.allowHtml=!0,n.scope.title=u.trustAsHtml(t.title),n.scope.message=u.trustAsHtml(t.message)):(n.scope.title=t.title,n.scope.message=t.message);n.scope.toastType=n.iconClass;n.scope.toastId=n.toastId;n.scope.extraData=i.extraData;n.scope.options={extendedTimeOut:i.extendedTimeOut,messageClass:i.messageClass,onHidden:i.onHidden,onShown:i.onShown,onTap:i.onTap,progressBar:i.progressBar,tapToDismiss:i.tapToDismiss,timeOut:i.timeOut,titleClass:i.titleClass,toastClass:i.toastClass};i.closeButton&&(n.scope.options.closeHtml=i.closeHtml)}function k(){function t(n){for(var i=["containerId","iconClasses","maxOpened","newestOnTop","positionClass","preventDuplicates","preventOpenDuplicates","templates"],t=0,r=i.length;r>t;t++)delete n[i[t]];return n}var n={toastId:tt++,isOpened:!1,scope:r.$new(),open:e.defer()};return n.iconClass=i.iconClass,i.optionsOverride&&(angular.extend(f,t(i.optionsOverride)),n.iconClass=i.optionsOverride.iconClass||n.iconClass),b(n,i,f),n.el=d(n.scope),n}function d(n){var i=angular.element("<div toast><\/div>"),r=t.get("$compile");return r(i)(n)}function nt(){return f.maxOpened&&o.length<=f.maxOpened||!f.maxOpened}function it(){var n=f.preventDuplicates&&i.message===y,t=f.preventOpenDuplicates&&v[i.message];return n||t?!0:(y=i.message,v[i.message]=!0,!1)}var f=h(),l;if(!it()){if(l=k(),o.push(l),w())for(var p=o.slice(0,o.length-f.maxOpened),a=0,rt=p.length;rt>a;a++)c(p[a].toastId);return nt()&&l.open.resolve(),l.open.promise.then(function(){g(f).then(function(){if(l.isOpened=!0,f.newestOnTop)n.enter(l.el,s).then(function(){l.scope.init()});else{var t=s[0].lastChild?angular.element(s[0].lastChild):null;n.enter(l.el,s,t).then(function(){l.scope.init()})}})}),l}}var s,tt=0,o=[],y="",v={},a=e.defer();return{clear:p,error:w,info:b,remove:c,success:k,warning:d}}angular.module("toastr",[]).factory("toastr",n);n.$inject=["$animate","$injector","$document","$rootScope","$sce","toastrConfig","$q"]}(),function(){"use strict";angular.module("toastr").constant("toastrConfig",{allowHtml:!1,autoDismiss:!1,closeButton:!1,closeHtml:"<button>&times;<\/button>",containerId:"toast-container",extendedTimeOut:1e3,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},maxOpened:0,messageClass:"toast-message",newestOnTop:!0,onHidden:null,onShown:null,onTap:null,positionClass:"toast-top-right",preventDuplicates:!1,preventOpenDuplicates:!1,progressBar:!1,tapToDismiss:!0,target:"body",templates:{toast:"directives/toast/toast.html",progressbar:"directives/progressbar/progressbar.html"},timeOut:5e3,titleClass:"toast-title",toastClass:"toast"})}(),function(){"use strict";function n(n){function t(n,t,i,r){function o(){var n=(e-(new Date).getTime())/f*100;t.css("width",n+"%")}var u,f,e;r.progressBar=n;n.start=function(n){u&&clearInterval(u);f=parseFloat(n);e=(new Date).getTime()+f;u=setInterval(o,10)};n.stop=function(){u&&clearInterval(u)};n.$on("$destroy",function(){clearInterval(u)})}return{replace:!0,require:"^toast",templateUrl:function(){return n.templates.progressbar},link:t}}angular.module("toastr").directive("progressBar",n);n.$inject=["toastrConfig"]}(),function(){"use strict";function n(){this.progressBar=null;this.startProgressBar=function(n){this.progressBar&&this.progressBar.start(n)};this.stopProgressBar=function(){this.progressBar&&this.progressBar.stop()}}angular.module("toastr").controller("ToastController",n)}(),function(){"use strict";function n(n,t,i,r){function u(i,u,f,e){function h(n){return e.startProgressBar(n),t(function(){e.stopProgressBar();r.remove(i.toastId)},n,1)}function l(){i.progressBar=!1;e.stopProgressBar()}function a(){return i.options.closeHtml}var s,o,c;(i.toastClass=i.options.toastClass,i.titleClass=i.options.titleClass,i.messageClass=i.options.messageClass,i.progressBar=i.options.progressBar,a())&&(o=angular.element(i.options.closeHtml),c=n.get("$compile"),o.addClass("toast-close-button"),o.attr("ng-click","close(true, $event)"),c(o)(i),u.prepend(o));i.init=function(){i.options.timeOut&&(s=h(i.options.timeOut));i.options.onShown&&i.options.onShown()};u.on("mouseenter",function(){l();s&&t.cancel(s)});i.tapToast=function(){angular.isFunction(i.options.onTap)&&i.options.onTap();i.options.tapToDismiss&&i.close(!0)};i.close=function(n,t){t&&angular.isFunction(t.stopPropagation)&&t.stopPropagation();r.remove(i.toastId,n)};u.on("mouseleave",function(){(0!==i.options.timeOut||0!==i.options.extendedTimeOut)&&(i.$apply(function(){i.progressBar=i.options.progressBar}),s=h(i.options.extendedTimeOut))})}return{replace:!0,templateUrl:function(){return i.templates.toast},controller:"ToastController",link:u}}angular.module("toastr").directive("toast",n);n.$inject=["$injector","$interval","toastrConfig","toastr"]}();angular.module("toastr").run(["$templateCache",function(n){n.put("directives/progressbar/progressbar.html",'<div class="toast-progress"><\/div>\n');n.put("directives/toast/toast.html",'<div class="{{toastClass}} {{toastType}}" ng-click="tapToast()">\n  <div ng-switch on="allowHtml">\n    <div ng-switch-default ng-if="title" class="{{titleClass}}" aria-label="{{title}}">{{title}}<\/div>\n    <div ng-switch-default class="{{messageClass}}" aria-label="{{message}}">{{message}}<\/div>\n    <div ng-switch-when="true" ng-if="title" class="{{titleClass}}" ng-bind-html="title"><\/div>\n    <div ng-switch-when="true" class="{{messageClass}}" ng-bind-html="message"><\/div>\n  <\/div>\n  <progress-bar ng-if="progressBar"><\/progress-bar>\n<\/div>\n')}]);angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.isClass","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.debounce","ui.bootstrap.dropdown","ui.bootstrap.stackedMap","ui.bootstrap.modal","ui.bootstrap.paging","ui.bootstrap.pager","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]);angular.module("ui.bootstrap.tpls",["uib/template/accordion/accordion-group.html","uib/template/accordion/accordion.html","uib/template/alert/alert.html","uib/template/carousel/carousel.html","uib/template/carousel/slide.html","uib/template/datepicker/datepicker.html","uib/template/datepicker/day.html","uib/template/datepicker/month.html","uib/template/datepicker/popup.html","uib/template/datepicker/year.html","uib/template/modal/backdrop.html","uib/template/modal/window.html","uib/template/pager/pager.html","uib/template/pagination/pagination.html","uib/template/tooltip/tooltip-html-popup.html","uib/template/tooltip/tooltip-popup.html","uib/template/tooltip/tooltip-template-popup.html","uib/template/popover/popover-html.html","uib/template/popover/popover-template.html","uib/template/popover/popover.html","uib/template/progressbar/bar.html","uib/template/progressbar/progress.html","uib/template/progressbar/progressbar.html","uib/template/rating/rating.html","uib/template/tabs/tab.html","uib/template/tabs/tabset.html","uib/template/timepicker/timepicker.html","uib/template/typeahead/typeahead-match.html","uib/template/typeahead/typeahead-popup.html"]);angular.module("ui.bootstrap.collapse",[]).directive("uibCollapse",["$animate","$q","$parse","$injector",function(n,t,i,r){var u=r.has("$animateCss")?r.get("$animateCss"):null;return{link:function(r,f,e){function h(){f.hasClass("collapse")&&f.hasClass("in")||t.resolve(l(r)).then(function(){f.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1);u?u(f,{addClass:"in",easing:"ease",to:{height:f[0].scrollHeight+"px"}}).start()["finally"](s):n.addClass(f,"in",{to:{height:f[0].scrollHeight+"px"}}).then(s)})}function s(){f.removeClass("collapsing").addClass("collapse").css({height:"auto"});a(r)}function c(){return f.hasClass("collapse")||f.hasClass("in")?void t.resolve(v(r)).then(function(){f.css({height:f[0].scrollHeight+"px"}).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0);u?u(f,{removeClass:"in",to:{height:"0"}}).start()["finally"](o):n.removeClass(f,"in",{to:{height:"0"}}).then(o)}):o()}function o(){f.css({height:"0"});f.removeClass("collapsing").addClass("collapse");y(r)}var l=i(e.expanding),a=i(e.expanded),v=i(e.collapsing),y=i(e.collapsed);r.$eval(e.uibCollapse)||f.addClass("in").addClass("collapse").attr("aria-expanded",!0).attr("aria-hidden",!1).css({height:"auto"});r.$watch(e.uibCollapse,function(n){n?c():h()})}}}]);angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("uibAccordionConfig",{closeOthers:!0}).controller("UibAccordionController",["$scope","$attrs","uibAccordionConfig",function(n,t,i){this.groups=[];this.closeOthers=function(r){var u=angular.isDefined(t.closeOthers)?n.$eval(t.closeOthers):i.closeOthers;u&&angular.forEach(this.groups,function(n){n!==r&&(n.isOpen=!1)})};this.addGroup=function(n){var t=this;this.groups.push(n);n.$on("$destroy",function(){t.removeGroup(n)})};this.removeGroup=function(n){var t=this.groups.indexOf(n);-1!==t&&this.groups.splice(t,1)}}]).directive("uibAccordion",function(){return{controller:"UibAccordionController",controllerAs:"accordion",transclude:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/accordion/accordion.html"}}}).directive("uibAccordionGroup",function(){return{require:"^uibAccordion",transclude:!0,replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/accordion/accordion-group.html"},scope:{heading:"@",panelClass:"@?",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(n){this.heading=n}},link:function(n,t,i,r){r.addGroup(n);n.openClass=i.openClass||"panel-open";n.panelClass=i.panelClass||"panel-default";n.$watch("isOpen",function(i){t.toggleClass(n.openClass,!!i);i&&r.closeOthers(n)});n.toggleOpen=function(t){n.isDisabled||t&&32!==t.which||(n.isOpen=!n.isOpen)};var u="accordiongroup-"+n.$id+"-"+Math.floor(1e4*Math.random());n.headingId=u+"-tab";n.panelId=u+"-panel"}}}).directive("uibAccordionHeading",function(){return{transclude:!0,template:"",replace:!0,require:"^uibAccordionGroup",link:function(n,t,i,r,u){r.setHeading(u(n,angular.noop))}}}).directive("uibAccordionTransclude",function(){return{require:"^uibAccordionGroup",link:function(n,t,i,r){n.$watch(function(){return r[i.uibAccordionTransclude]},function(n){if(n){var i=angular.element(t[0].querySelector("[uib-accordion-header]"));i.html("");i.append(n)}})}}});angular.module("ui.bootstrap.alert",[]).controller("UibAlertController",["$scope","$attrs","$interpolate","$timeout",function(n,t,i,r){n.closeable=!!t.close;var u=angular.isDefined(t.dismissOnTimeout)?i(t.dismissOnTimeout)(n.$parent):null;u&&r(function(){n.close()},parseInt(u,10))}]).directive("uibAlert",function(){return{controller:"UibAlertController",controllerAs:"alert",templateUrl:function(n,t){return t.templateUrl||"uib/template/alert/alert.html"},transclude:!0,replace:!0,scope:{type:"@",close:"&"}}});angular.module("ui.bootstrap.buttons",[]).constant("uibButtonConfig",{activeClass:"active",toggleEvent:"click"}).controller("UibButtonsController",["uibButtonConfig",function(n){this.activeClass=n.activeClass||"active";this.toggleEvent=n.toggleEvent||"click"}]).directive("uibBtnRadio",["$parse",function(n){return{require:["uibBtnRadio","ngModel"],controller:"UibButtonsController",controllerAs:"buttons",link:function(t,i,r,u){var e=u[0],f=u[1],o=n(r.uibUncheckable);i.find("input").css({display:"none"});f.$render=function(){i.toggleClass(e.activeClass,angular.equals(f.$modelValue,t.$eval(r.uibBtnRadio)))};i.on(e.toggleEvent,function(){if(!r.disabled){var n=i.hasClass(e.activeClass);(!n||angular.isDefined(r.uncheckable))&&t.$apply(function(){f.$setViewValue(n?null:t.$eval(r.uibBtnRadio));f.$render()})}});r.uibUncheckable&&t.$watch(o,function(n){r.$set("uncheckable",n?"":void 0)})}}}]).directive("uibBtnCheckbox",function(){return{require:["uibBtnCheckbox","ngModel"],controller:"UibButtonsController",controllerAs:"button",link:function(n,t,i,r){function e(){return o(i.btnCheckboxTrue,!0)}function s(){return o(i.btnCheckboxFalse,!1)}function o(t,i){return angular.isDefined(t)?n.$eval(t):i}var f=r[0],u=r[1];t.find("input").css({display:"none"});u.$render=function(){t.toggleClass(f.activeClass,angular.equals(u.$modelValue,e()))};t.on(f.toggleEvent,function(){i.disabled||n.$apply(function(){u.$setViewValue(t.hasClass(f.activeClass)?s():e());u.$render()})})}}});angular.module("ui.bootstrap.carousel",[]).controller("UibCarouselController",["$scope","$element","$interval","$timeout","$animate",function(n,t,i,r,u){function a(){for(;s.length;)s.shift()}function h(n){for(var t=0;t<f.length;t++)f[t].slide.active=t===n}function w(i,r,c){if(!k){if(angular.extend(i,{direction:c}),angular.extend(f[o].slide||{},{direction:c}),u.enabled(t)&&!n.$currentTransition&&f[r].element&&e.slides.length>1){f[r].element.data(b,i.direction);var l=e.getCurrentIndex();angular.isNumber(l)&&f[l].element&&f[l].element.data(b,i.direction);n.$currentTransition=!0;u.on("addClass",f[r].element,function(t,i){if("close"===i&&(n.$currentTransition=null,u.off("addClass",t),s.length)){var r=s.pop().slide,f=r.index,o=f>e.getCurrentIndex()?"next":"prev";a();w(r,f,o)}})}n.active=i.index;o=i.index;h(r);p()}}function v(n){for(var t=0;t<f.length;t++)if(f[t].slide===n)return t}function y(){c&&(i.cancel(c),c=null)}function d(t){t.length||(n.$currentTransition=null,a())}function p(){y();var t=+n.interval;!isNaN(t)&&t>0&&(c=i(g,t))}function g(){var t=+n.interval;l&&!isNaN(t)&&t>0&&f.length?n.next():n.pause()}var c,l,e=this,f=e.slides=n.slides=[],b="uib-slideDirection",o=n.active,s=[],k=!1;e.addSlide=function(t,i){f.push({slide:t,element:i});f.sort(function(n,t){return+n.slide.index>+t.slide.index});(t.index===n.active||1===f.length&&!angular.isNumber(n.active))&&(n.$currentTransition&&(n.$currentTransition=null),o=t.index,n.active=t.index,h(o),e.select(f[v(t)]),1===f.length&&n.play())};e.getCurrentIndex=function(){for(var n=0;n<f.length;n++)if(f[n].slide.index===o)return n};e.next=n.next=function(){var t=(e.getCurrentIndex()+1)%f.length;return 0===t&&n.noWrap()?void n.pause():e.select(f[t],"next")};e.prev=n.prev=function(){var t=e.getCurrentIndex()-1<0?f.length-1:e.getCurrentIndex()-1;return n.noWrap()&&t===f.length-1?void n.pause():e.select(f[t],"prev")};e.removeSlide=function(t){var i=v(t),r=s.indexOf(f[i]);-1!==r&&s.splice(r,1);f.splice(i,1);f.length>0&&o===i?i>=f.length?(o=f.length-1,n.active=o,h(o),e.select(f[f.length-1])):(o=i,n.active=o,h(o),e.select(f[i])):o>i&&(o--,n.active=o);0===f.length&&(o=null,n.active=null,a())};e.select=n.select=function(t,i){var r=v(t.slide);void 0===i&&(i=r>e.getCurrentIndex()?"next":"prev");t.slide.index===o||n.$currentTransition?t&&t.slide.index!==o&&n.$currentTransition&&s.push(f[r]):w(t.slide,r,i)};n.indexOfSlide=function(n){return+n.slide.index};n.isActive=function(t){return n.active===t.slide.index};n.pause=function(){n.noPause||(l=!1,y())};n.play=function(){l||(l=!0,p())};n.$on("$destroy",function(){k=!0;y()});n.$watch("noTransition",function(n){u.enabled(t,!n)});n.$watch("interval",p);n.$watchCollection("slides",d);n.$watch("active",function(n){var t,i;if(angular.isNumber(n)&&o!==n){for(t=0;t<f.length;t++)if(f[t].slide.index===n){n=t;break}i=f[n];i&&(o=n,h(n),e.select(f[n]))}})}]).directive("uibCarousel",function(){return{transclude:!0,replace:!0,controller:"UibCarouselController",controllerAs:"carousel",templateUrl:function(n,t){return t.templateUrl||"uib/template/carousel/carousel.html"},scope:{active:"=",interval:"=",noTransition:"=",noPause:"=",noWrap:"&"}}}).directive("uibSlide",function(){return{require:"^uibCarousel",transclude:!0,replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/carousel/slide.html"},scope:{actual:"=?",index:"=?"},link:function(n,t,i,r){r.addSlide(n,t);n.$on("$destroy",function(){r.removeSlide(n)})}}}).animation(".item",["$animateCss",function(n){function t(n,t,i){n.removeClass(t);i&&i()}var i="uib-slideDirection";return{beforeAddClass:function(r,u,f){if("active"===u){var s=!1,e=r.data(i),o="next"===e?"left":"right",h=t.bind(this,r,o+" "+e,f);return r.addClass(e),n(r,{addClass:o}).start().done(h),function(){s=!0}}f()},beforeRemoveClass:function(r,u,f){if("active"===u){var o=!1,s=r.data(i),e="next"===s?"left":"right",h=t.bind(this,r,e,f);return n(r,{addClass:e}).start().done(h),function(){o=!0}}f()}}}]);angular.module("ui.bootstrap.dateparser",[]).service("uibDateParser",["$log","$locale","dateFilter","orderByFilter",function(n,t,i,r){function e(n,t){var e=[],u=n.split(""),o=n.indexOf("'"),f,i;if(o>-1){for(f=!1,n=n.split(""),i=o;i<n.length;i++)f?("'"===n[i]&&(i+1<n.length&&"'"===n[i+1]?(n[i+1]="$",u[i+1]=""):(u[i]="",f=!1)),n[i]="$"):"'"===n[i]&&(n[i]="$",u[i]="",f=!0);n=n.join("")}return angular.forEach(c,function(i){var r=n.indexOf(i.key),f,o;if(r>-1){for(n=n.split(""),u[r]="("+i.regex+")",n[r]="$",f=r+1,o=r+i.key.length;o>f;f++)u[f]="",n[f]="$";n=n.join("");e.push({index:r,key:i.key,apply:i[t],matcher:i.regex})}}),{regex:new RegExp("^"+u.join("")+"$"),map:r(e,"index")}}function l(n,t,i){return 1>i?!1:1===t&&i>28?29===i&&(n%4==0&&n%100!=0||n%400==0):3===t||5===t||8===t||10===t?31>i:!0}function o(n){return parseInt(n,10)}function a(n,t){return n&&t?u(n,t):n}function v(n,t){return n&&t?u(n,t,!0):n}function s(n,t){var i=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(i)?t:i}function h(n,t){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+t),n}function u(n,t,i){i=i?-1:1;var r=s(t,n.getTimezoneOffset());return h(n,i*(r-n.getTimezoneOffset()))}var f,c,y=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.init=function(){f=t.id;this.parsers={};this.formatters={};c=[{key:"yyyy",regex:"\\d{4}",apply:function(n){this.year=+n},formatter:function(n){var t=new Date;return t.setFullYear(Math.abs(n.getFullYear())),i(t,"yyyy")}},{key:"yy",regex:"\\d{2}",apply:function(n){this.year=+n+2e3},formatter:function(n){var t=new Date;return t.setFullYear(Math.abs(n.getFullYear())),i(t,"yy")}},{key:"y",regex:"\\d{1,4}",apply:function(n){this.year=+n},formatter:function(n){var t=new Date;return t.setFullYear(Math.abs(n.getFullYear())),i(t,"y")}},{key:"M!",regex:"0?[1-9]|1[0-2]",apply:function(n){this.month=n-1},formatter:function(n){var t=n.getMonth();return/^[0-9]$/.test(t)?i(n,"MM"):i(n,"M")}},{key:"MMMM",regex:t.DATETIME_FORMATS.MONTH.join("|"),apply:function(n){this.month=t.DATETIME_FORMATS.MONTH.indexOf(n)},formatter:function(n){return i(n,"MMMM")}},{key:"MMM",regex:t.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(n){this.month=t.DATETIME_FORMATS.SHORTMONTH.indexOf(n)},formatter:function(n){return i(n,"MMM")}},{key:"MM",regex:"0[1-9]|1[0-2]",apply:function(n){this.month=n-1},formatter:function(n){return i(n,"MM")}},{key:"M",regex:"[1-9]|1[0-2]",apply:function(n){this.month=n-1},formatter:function(n){return i(n,"M")}},{key:"d!",regex:"[0-2]?[0-9]{1}|3[0-1]{1}",apply:function(n){this.date=+n},formatter:function(n){var t=n.getDate();return/^[1-9]$/.test(t)?i(n,"dd"):i(n,"d")}},{key:"dd",regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(n){this.date=+n},formatter:function(n){return i(n,"dd")}},{key:"d",regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(n){this.date=+n},formatter:function(n){return i(n,"d")}},{key:"EEEE",regex:t.DATETIME_FORMATS.DAY.join("|"),formatter:function(n){return i(n,"EEEE")}},{key:"EEE",regex:t.DATETIME_FORMATS.SHORTDAY.join("|"),formatter:function(n){return i(n,"EEE")}},{key:"HH",regex:"(?:0|1)[0-9]|2[0-3]",apply:function(n){this.hours=+n},formatter:function(n){return i(n,"HH")}},{key:"hh",regex:"0[0-9]|1[0-2]",apply:function(n){this.hours=+n},formatter:function(n){return i(n,"hh")}},{key:"H",regex:"1?[0-9]|2[0-3]",apply:function(n){this.hours=+n},formatter:function(n){return i(n,"H")}},{key:"h",regex:"[0-9]|1[0-2]",apply:function(n){this.hours=+n},formatter:function(n){return i(n,"h")}},{key:"mm",regex:"[0-5][0-9]",apply:function(n){this.minutes=+n},formatter:function(n){return i(n,"mm")}},{key:"m",regex:"[0-9]|[1-5][0-9]",apply:function(n){this.minutes=+n},formatter:function(n){return i(n,"m")}},{key:"sss",regex:"[0-9][0-9][0-9]",apply:function(n){this.milliseconds=+n},formatter:function(n){return i(n,"sss")}},{key:"ss",regex:"[0-5][0-9]",apply:function(n){this.seconds=+n},formatter:function(n){return i(n,"ss")}},{key:"s",regex:"[0-9]|[1-5][0-9]",apply:function(n){this.seconds=+n},formatter:function(n){return i(n,"s")}},{key:"a",regex:t.DATETIME_FORMATS.AMPMS.join("|"),apply:function(n){12===this.hours&&(this.hours=0);"PM"===n&&(this.hours+=12)},formatter:function(n){return i(n,"a")}},{key:"Z",regex:"[+-]\\d{4}",apply:function(n){var t=n.match(/([+-])(\d{2})(\d{2})/),i=t[1],r=t[2],u=t[3];this.hours+=o(i+r);this.minutes+=o(i+u)},formatter:function(n){return i(n,"Z")}},{key:"ww",regex:"[0-4][0-9]|5[0-3]",formatter:function(n){return i(n,"ww")}},{key:"w",regex:"[0-9]|[1-4][0-9]|5[0-3]",formatter:function(n){return i(n,"w")}},{key:"GGGG",regex:t.DATETIME_FORMATS.ERANAMES.join("|").replace(/\s/g,"\\s"),formatter:function(n){return i(n,"GGGG")}},{key:"GGG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(n){return i(n,"GGG")}},{key:"GG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(n){return i(n,"GG")}},{key:"G",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(n){return i(n,"G")}}]};this.init();this.filter=function(n,i){if(!angular.isDate(n)||isNaN(n)||!i)return"";i=t.DATETIME_FORMATS[i]||i;t.id!==f&&this.init();this.formatters[i]||(this.formatters[i]=e(i,"formatter"));var o=this.formatters[i],u=o.map,r=i;return u.reduce(function(t,i,f){var e=r.match(new RegExp("(.*)"+i.key)),o;return e&&angular.isString(e[1])&&(t+=e[1],r=r.replace(e[1]+i.key,"")),o=f===u.length-1?r:"",i.apply?t+i.apply.call(null,n)+o:t+o},"")};this.parse=function(i,r,u){var o,s,h,k,v,p,w;if(!angular.isString(i)||!r)return i;r=t.DATETIME_FORMATS[r]||r;r=r.replace(y,"\\$&");t.id!==f&&this.init();this.parsers[r]||(this.parsers[r]=e(r,"apply"));var b=this.parsers[r],d=b.regex,g=b.map,c=i.match(d),a=!1;if(c&&c.length){for(angular.isDate(u)&&!isNaN(u.getTime())?o={year:u.getFullYear(),month:u.getMonth(),date:u.getDate(),hours:u.getHours(),minutes:u.getMinutes(),seconds:u.getSeconds(),milliseconds:u.getMilliseconds()}:(u&&n.warn("dateparser:","baseDate is not a valid date"),o={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0}),h=1,k=c.length;k>h;h++)v=g[h-1],"Z"===v.matcher&&(a=!0),v.apply&&v.apply.call(o,c[h]);return p=a?Date.prototype.setUTCFullYear:Date.prototype.setFullYear,w=a?Date.prototype.setUTCHours:Date.prototype.setHours,l(o.year,o.month,o.date)&&(!angular.isDate(u)||isNaN(u.getTime())||a?(s=new Date(0),p.call(s,o.year,o.month,o.date),w.call(s,o.hours||0,o.minutes||0,o.seconds||0,o.milliseconds||0)):(s=new Date(u),p.call(s,o.year,o.month,o.date),w.call(s,o.hours,o.minutes,o.seconds,o.milliseconds))),s}};this.toTimezone=a;this.fromTimezone=v;this.timezoneToOffset=s;this.addDateMinutes=h;this.convertTimezoneToLocal=u}]);angular.module("ui.bootstrap.isClass",[]).directive("uibIsClass",["$animate",function(n){var t=/^\s*([\s\S]+?)\s+on\s+([\s\S]+?)\s*$/,i=/^\s*([\s\S]+?)\s+for\s+([\s\S]+?)\s*$/;return{restrict:"A",compile:function(r,u){function h(n,t){f.push(n);o.push({scope:n,element:t});y.forEach(function(t){c(t,n)});n.$on("$destroy",l)}function c(t,r){var h=t.match(i),c=r.$eval(h[1]),f=h[2],u=e[t],s;u||(s=function(t){var i=null;o.some(function(n){var r=n.scope.$eval(a);if(r===t)return(i=n,!0)});u.lastActivated!==i&&(u.lastActivated&&n.removeClass(u.lastActivated.element,c),i&&n.addClass(i.element,c),u.lastActivated=i)},e[t]=u={lastActivated:null,scope:r,watchFn:s,compareWithExp:f,watcher:r.$watch(f,s)});u.watchFn(r.$eval(f))}function l(n){var i=n.targetScope,r=f.indexOf(i),t;(f.splice(r,1),o.splice(r,1),f.length)?(t=f[0],angular.forEach(e,function(n){n.scope===i&&(n.watcher=t.$watch(n.compareWithExp,n.watchFn),n.scope=t)})):e={}}var f=[],o=[],e={},s=u.uibIsClass.match(t),a=s[2],v=s[1],y=v.split(",");return h}}}]);angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(n,t){var r,u={normal:/(auto|scroll)/,hidden:/(auto|scroll|hidden)/},i={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/};return{getRawNode:function(n){return n.nodeName?n:n[0]||n},parseStyle:function(n){return n=parseFloat(n),isFinite(n)?n:0},offsetParent:function(i){function u(n){return"static"===(t.getComputedStyle(n).position||"static")}i=this.getRawNode(i);for(var r=i.offsetParent||n[0].documentElement;r&&r!==n[0].documentElement&&u(r);)r=r.offsetParent;return r||n[0].documentElement},scrollbarWidth:function(){if(angular.isUndefined(r)){var t=angular.element('<div class="uib-position-scrollbar-measure"><\/div>');n.find("body").append(t);r=t[0].offsetWidth-t[0].clientWidth;r=isFinite(r)?r:0;t.remove()}return r},isScrollable:function(n,i){n=this.getRawNode(n);var f=i?u.hidden:u.normal,r=t.getComputedStyle(n);return f.test(r.overflow+r.overflowY+r.overflowX)},scrollParent:function(i,r){var e;i=this.getRawNode(i);var c=r?u.hidden:u.normal,o=n[0].documentElement,h=t.getComputedStyle(i),s="absolute"===h.position,f=i.parentElement||o;if(f===o||"fixed"===h.position)return o;for(;f.parentElement&&f!==o;){if(e=t.getComputedStyle(f),s&&"static"!==e.position&&(s=!1),!s&&c.test(e.overflow+e.overflowY+e.overflowX))break;f=f.parentElement}return f},position:function(i,r){var u,o,f,e;return i=this.getRawNode(i),u=this.offset(i),r&&(o=t.getComputedStyle(i),u.top-=this.parseStyle(o.marginTop),u.left-=this.parseStyle(o.marginLeft)),f=this.offsetParent(i),e={top:0,left:0},f!==n[0].documentElement&&(e=this.offset(f),e.top+=f.clientTop-f.scrollTop,e.left+=f.clientLeft-f.scrollLeft),{width:Math.round(angular.isNumber(u.width)?u.width:i.offsetWidth),height:Math.round(angular.isNumber(u.height)?u.height:i.offsetHeight),top:Math.round(u.top-e.top),left:Math.round(u.left-e.left)}},offset:function(i){i=this.getRawNode(i);var r=i.getBoundingClientRect();return{width:Math.round(angular.isNumber(r.width)?r.width:i.offsetWidth),height:Math.round(angular.isNumber(r.height)?r.height:i.offsetHeight),top:Math.round(r.top+(t.pageYOffset||n[0].documentElement.scrollTop)),left:Math.round(r.left+(t.pageXOffset||n[0].documentElement.scrollLeft))}},viewportOffset:function(i,r,u){var o;i=this.getRawNode(i);u=u!==!1?!0:!1;var s=i.getBoundingClientRect(),f={top:0,left:0,bottom:0,right:0},e=r?n[0].documentElement:this.scrollParent(i),h=e.getBoundingClientRect();return(f.top=h.top+e.clientTop,f.left=h.left+e.clientLeft,e===n[0].documentElement&&(f.top+=t.pageYOffset,f.left+=t.pageXOffset),f.bottom=f.top+e.clientHeight,f.right=f.left+e.clientWidth,u)&&(o=t.getComputedStyle(e),f.top+=this.parseStyle(o.paddingTop),f.bottom-=this.parseStyle(o.paddingBottom),f.left+=this.parseStyle(o.paddingLeft),f.right-=this.parseStyle(o.paddingRight)),{top:Math.round(s.top-f.top),bottom:Math.round(f.bottom-s.bottom),left:Math.round(s.left-f.left),right:Math.round(f.right-s.right)}},parsePlacement:function(n){var t=i.auto.test(n);return t&&(n=n.replace(i.auto,"")),n=n.split("-"),n[0]=n[0]||"top",i.primary.test(n[0])||(n[0]="top"),n[1]=n[1]||"center",i.secondary.test(n[1])||(n[1]="center"),n[2]=t?!0:!1,n},positionElements:function(n,r,u,f){var c,l,e,h,v,y;if(n=this.getRawNode(n),r=this.getRawNode(r),c=angular.isDefined(r.offsetWidth)?r.offsetWidth:r.prop("offsetWidth"),l=angular.isDefined(r.offsetHeight)?r.offsetHeight:r.prop("offsetHeight"),u=this.parsePlacement(u),e=f?this.offset(n):this.position(n),h={top:0,left:0,placement:""},u[2]){var o=this.viewportOffset(n,f),a=t.getComputedStyle(r),s={width:c+Math.round(Math.abs(this.parseStyle(a.marginLeft)+this.parseStyle(a.marginRight))),height:l+Math.round(Math.abs(this.parseStyle(a.marginTop)+this.parseStyle(a.marginBottom)))};(u[0]="top"===u[0]&&s.height>o.top&&s.height<=o.bottom?"bottom":"bottom"===u[0]&&s.height>o.bottom&&s.height<=o.top?"top":"left"===u[0]&&s.width>o.left&&s.width<=o.right?"right":"right"===u[0]&&s.width>o.right&&s.width<=o.left?"left":u[0],u[1]="top"===u[1]&&s.height-e.height>o.bottom&&s.height-e.height<=o.top?"bottom":"bottom"===u[1]&&s.height-e.height>o.top&&s.height-e.height<=o.bottom?"top":"left"===u[1]&&s.width-e.width>o.right&&s.width-e.width<=o.left?"right":"right"===u[1]&&s.width-e.width>o.left&&s.width-e.width<=o.right?"left":u[1],"center"===u[1])&&(i.vertical.test(u[0])?(v=e.width/2-c/2,o.left+v<0&&s.width-e.width<=o.right?u[1]="left":o.right+v<0&&s.width-e.width<=o.left&&(u[1]="right")):(y=e.height/2-s.height/2,o.top+y<0&&s.height-e.height<=o.bottom?u[1]="top":o.bottom+y<0&&s.height-e.height<=o.top&&(u[1]="bottom")))}switch(u[0]){case"top":h.top=e.top-l;break;case"bottom":h.top=e.top+e.height;break;case"left":h.left=e.left-c;break;case"right":h.left=e.left+e.width}switch(u[1]){case"top":h.top=e.top;break;case"bottom":h.top=e.top+e.height-l;break;case"left":h.left=e.left;break;case"right":h.left=e.left+e.width-c;break;case"center":i.vertical.test(u[0])?h.left=e.left+e.width/2-c/2:h.top=e.top+e.height/2-l/2}return h.top=Math.round(h.top),h.left=Math.round(h.left),h.placement="center"===u[1]?u[0]:u[0]+"-"+u[1],h},positionArrow:function(n,r){var o,f,e,u,c;if(n=this.getRawNode(n),o=n.querySelector(".tooltip-inner, .popover-inner"),o&&(f=angular.element(o).hasClass("tooltip-inner"),e=f?n.querySelector(".tooltip-arrow"):n.querySelector(".arrow"),e)){if(u={top:"",bottom:"",left:"",right:""},r=this.parsePlacement(r),"center"===r[1])return void angular.element(e).css(u);var l="border-"+r[0]+"-width",s=t.getComputedStyle(e)[l],h="border-";h+=i.vertical.test(r[0])?r[0]+"-"+r[1]:r[1]+"-"+r[0];h+="-radius";c=t.getComputedStyle(f?o:n)[h];switch(r[0]){case"top":u.bottom=f?"0":"-"+s;break;case"bottom":u.top=f?"0":"-"+s;break;case"left":u.right=f?"0":"-"+s;break;case"right":u.left=f?"0":"-"+s}u[r[1]]=c;angular.element(e).css(u)}}}}]);angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.isClass","ui.bootstrap.position"]).value("$datepickerSuppressError",!1).value("uibDatepickerAttributeWarning",!0).constant("uibDatepickerConfig",{datepickerMode:"day",formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",maxDate:null,maxMode:"year",minDate:null,minMode:"day",ngModelOptions:{},shortcutPropagation:!1,showWeeks:!0,yearColumns:5,yearRows:4}).controller("UibDatepickerController",["$scope","$attrs","$parse","$interpolate","$locale","$log","dateFilter","uibDatepickerConfig","$datepickerSuppressError","uibDatepickerAttributeWarning","uibDateParser",function(n,t,i,r,u,f,e,o,s,h,c){function w(t){n.datepickerMode=t;b&&(n.datepickerOptions.datepickerMode=t)}var l=this,a={$setViewValue:angular.noop},v={},y=[],b=!!t.datepickerOptions,p,k;(this.modes=["day","month","year"],b)?["customClass","dateDisabled","datepickerMode","formatDay","formatDayHeader","formatDayTitle","formatMonth","formatMonthTitle","formatYear","initDate","maxDate","maxMode","minDate","minMode","showWeeks","shortcutPropagation","startingDay","yearColumns","yearRows"].forEach(function(t){switch(t){case"customClass":case"dateDisabled":n[t]=n.datepickerOptions[t]||angular.noop;break;case"datepickerMode":n.datepickerMode=angular.isDefined(n.datepickerOptions.datepickerMode)?n.datepickerOptions.datepickerMode:o.datepickerMode;break;case"formatDay":case"formatDayHeader":case"formatDayTitle":case"formatMonth":case"formatMonthTitle":case"formatYear":l[t]=angular.isDefined(n.datepickerOptions[t])?r(n.datepickerOptions[t])(n.$parent):o[t];break;case"showWeeks":case"shortcutPropagation":case"yearColumns":case"yearRows":l[t]=angular.isDefined(n.datepickerOptions[t])?n.datepickerOptions[t]:o[t];break;case"startingDay":l.startingDay=angular.isDefined(n.datepickerOptions.startingDay)?n.datepickerOptions.startingDay:angular.isNumber(o.startingDay)?o.startingDay:(u.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7;break;case"maxDate":case"minDate":n.datepickerOptions[t]?n.$watch(function(){return n.datepickerOptions[t]},function(n){l[t]=n?angular.isDate(n)?c.fromTimezone(new Date(n),v.timezone):new Date(e(n,"medium")):null;l.refreshView()}):l[t]=o[t]?c.fromTimezone(new Date(o[t]),v.timezone):null;break;case"maxMode":case"minMode":n.datepickerOptions[t]?n.$watch(function(){return n.datepickerOptions[t]},function(i){l[t]=n[t]=angular.isDefined(i)?i:datepickerOptions[t];("minMode"===t&&l.modes.indexOf(n.datepickerOptions.datepickerMode)<l.modes.indexOf(l[t])||"maxMode"===t&&l.modes.indexOf(n.datepickerOptions.datepickerMode)>l.modes.indexOf(l[t]))&&(n.datepickerMode=l[t],n.datepickerOptions.datepickerMode=l[t])}):l[t]=n[t]=o[t]||null;break;case"initDate":n.datepickerOptions.initDate?(l.activeDate=c.fromTimezone(n.datepickerOptions.initDate,v.timezone)||new Date,n.$watch(function(){return n.datepickerOptions.initDate},function(n){n&&(a.$isEmpty(a.$modelValue)||a.$invalid)&&(l.activeDate=c.fromTimezone(n,v.timezone),l.refreshView())})):l.activeDate=new Date}}):((angular.forEach(["formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle"],function(i){l[i]=angular.isDefined(t[i])?r(t[i])(n.$parent):o[i];angular.isDefined(t[i])&&h&&f.warn("uib-datepicker "+i+" attribute usage is deprecated, use datepicker-options attribute instead")}),angular.forEach(["showWeeks","yearRows","yearColumns","shortcutPropagation"],function(i){l[i]=angular.isDefined(t[i])?n.$parent.$eval(t[i]):o[i];angular.isDefined(t[i])&&h&&f.warn("uib-datepicker "+i+" attribute usage is deprecated, use datepicker-options attribute instead")}),angular.forEach(["dateDisabled","customClass"],function(n){angular.isDefined(t[n])&&h&&f.warn("uib-datepicker "+n+" attribute usage is deprecated, use datepicker-options attribute instead")}),angular.isDefined(t.startingDay)?(h&&f.warn("uib-datepicker startingDay attribute usage is deprecated, use datepicker-options attribute instead"),l.startingDay=n.$parent.$eval(t.startingDay)):l.startingDay=angular.isNumber(o.startingDay)?o.startingDay:(u.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7,angular.forEach(["minDate","maxDate"],function(i){t[i]?(h&&f.warn("uib-datepicker "+i+" attribute usage is deprecated, use datepicker-options attribute instead"),y.push(n.$parent.$watch(t[i],function(n){l[i]=n?angular.isDate(n)?c.fromTimezone(new Date(n),v.timezone):new Date(e(n,"medium")):null;l.refreshView()}))):l[i]=o[i]?c.fromTimezone(new Date(o[i]),v.timezone):null}),angular.forEach(["minMode","maxMode"],function(i){t[i]?(h&&f.warn("uib-datepicker "+i+" attribute usage is deprecated, use datepicker-options attribute instead"),y.push(n.$parent.$watch(t[i],function(r){l[i]=n[i]=angular.isDefined(r)?r:t[i];("minMode"===i&&l.modes.indexOf(n.datepickerMode)<l.modes.indexOf(l[i])||"maxMode"===i&&l.modes.indexOf(n.datepickerMode)>l.modes.indexOf(l[i]))&&(n.datepickerMode=l[i])}))):l[i]=n[i]=o[i]||null}),angular.isDefined(t.initDate))?(h&&f.warn("uib-datepicker initDate attribute usage is deprecated, use datepicker-options attribute instead"),p=c.fromTimezone(n.$parent.$eval(t.initDate),v.timezone),this.activeDate=isNaN(p)?new Date:p,y.push(n.$parent.$watch(t.initDate,function(n){n&&(a.$isEmpty(a.$modelValue)||a.$invalid)&&(n=c.fromTimezone(n,v.timezone),l.activeDate=isNaN(n)?new Date:n,l.refreshView())}))):this.activeDate=new Date,t.datepickerMode&&h&&f.warn("uib-datepicker datepickerMode attribute usage is deprecated, use datepicker-options attribute instead"),n.datepickerMode=n.datepickerMode||o.datepickerMode);n.uniqueId="datepicker-"+n.$id+"-"+Math.floor(1e4*Math.random());n.disabled=angular.isDefined(t.disabled)||!1;angular.isDefined(t.ngDisabled)&&y.push(n.$parent.$watch(t.ngDisabled,function(t){n.disabled=t;l.refreshView()}));n.isActive=function(t){return 0===l.compare(t.date,l.activeDate)?(n.activeDateId=t.uid,!0):!1};this.init=function(n){a=n;v=n.$options||o.ngModelOptions;this.activeDate=a.$modelValue?c.fromTimezone(new Date(a.$modelValue),v.timezone):c.fromTimezone(new Date,v.timezone);a.$render=function(){l.render()}};this.render=function(){if(a.$viewValue){var n=new Date(a.$viewValue),t=!isNaN(n);t?this.activeDate=c.fromTimezone(n,v.timezone):s||f.error('Datepicker directive: "ng-model" value must be a Date object')}this.refreshView()};this.refreshView=function(){if(this.element){n.selectedDt=null;this._refreshView();n.activeDt&&(n.activeDateId=n.activeDt.uid);var t=a.$viewValue?new Date(a.$viewValue):null;t=c.fromTimezone(t,v.timezone);a.$setValidity("dateDisabled",!t||this.element&&!this.isDisabled(t))}};this.createDateObject=function(t,i){var r=a.$viewValue?new Date(a.$viewValue):null,f,e,u;return r=c.fromTimezone(r,v.timezone),f=new Date,f=c.fromTimezone(f,v.timezone),e=this.compare(t,f),u={date:t,label:c.filter(t,i),selected:r&&0===this.compare(t,r),disabled:this.isDisabled(t),past:0>e,current:0===e,future:e>0,customClass:this.customClass(t)||null},r&&0===this.compare(t,r)&&(n.selectedDt=u),l.activeDate&&0===this.compare(u.date,l.activeDate)&&(n.activeDt=u),u};this.isDisabled=function(t){return n.disabled||this.minDate&&this.compare(t,this.minDate)<0||this.maxDate&&this.compare(t,this.maxDate)>0||n.dateDisabled&&n.dateDisabled({date:t,mode:n.datepickerMode})};this.customClass=function(t){return n.customClass({date:t,mode:n.datepickerMode})};this.split=function(n,t){for(var i=[];n.length>0;)i.push(n.splice(0,t));return i};n.select=function(t){if(n.datepickerMode===l.minMode){var i=a.$viewValue?c.fromTimezone(new Date(a.$viewValue),v.timezone):new Date(0,0,0,0,0,0,0);i.setFullYear(t.getFullYear(),t.getMonth(),t.getDate());i=c.toTimezone(i,v.timezone);a.$setViewValue(i);a.$render()}else l.activeDate=t,w(l.modes[l.modes.indexOf(n.datepickerMode)-1]),n.$emit("uib:datepicker.mode")};n.move=function(n){var t=l.activeDate.getFullYear()+n*(l.step.years||0),i=l.activeDate.getMonth()+n*(l.step.months||0);l.activeDate.setFullYear(t,i,1);l.refreshView()};n.toggleMode=function(t){t=t||1;n.datepickerMode===l.maxMode&&1===t||n.datepickerMode===l.minMode&&-1===t||(w(l.modes[l.modes.indexOf(n.datepickerMode)+t]),n.$emit("uib:datepicker.mode"))};n.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};k=function(){l.element[0].focus()};n.$on("uib:datepicker.focus",k);n.keydown=function(t){var i=n.keys[t.which];if(i&&!t.shiftKey&&!t.altKey&&!n.disabled)if(t.preventDefault(),l.shortcutPropagation||t.stopPropagation(),"enter"===i||"space"===i){if(l.isDisabled(l.activeDate))return;n.select(l.activeDate)}else!t.ctrlKey||"up"!==i&&"down"!==i?(l.handleKeyDown(i,t),l.refreshView()):n.toggleMode("up"===i?1:-1)};n.$on("$destroy",function(){for(;y.length;)y.shift()()})}]).controller("UibDaypickerController",["$scope","$element","dateFilter",function(n,t,i){function r(n,t){return 1!==t||n%4!=0||n%100==0&&n%400!=0?f[t]:29}function u(n){var t=new Date(n),i;return t.setDate(t.getDate()+4-(t.getDay()||7)),i=t.getTime(),t.setMonth(0),t.setDate(1),Math.floor(Math.round((i-t)/864e5)/7)+1}var f=[31,28,31,30,31,30,31,31,30,31,30,31];this.step={months:1};this.element=t;this.init=function(t){angular.extend(t,this);n.showWeeks=t.showWeeks;t.refreshView()};this.getDates=function(n,t){for(var r,u=new Array(t),i=new Date(n),f=0;t>f;)r=new Date(i),u[f++]=r,i.setDate(i.getDate()+1);return u};this._refreshView=function(){var a=this.activeDate.getFullYear(),h=this.activeDate.getMonth(),e=new Date(this.activeDate),t,r,f;e.setFullYear(a,h,1);var o=this.startingDay-e.getDay(),c=o>0?7-o:-o,l=new Date(e);for(c>0&&l.setDate(-c+1),t=this.getDates(l,42),r=0;42>r;r++)t[r]=angular.extend(this.createDateObject(t[r],this.formatDay),{secondary:t[r].getMonth()!==h,uid:n.uniqueId+"-"+r});for(n.labels=new Array(7),f=0;7>f;f++)n.labels[f]={abbr:i(t[f].date,this.formatDayHeader),full:i(t[f].date,"EEEE")};if(n.title=i(this.activeDate,this.formatDayTitle),n.rows=this.split(t,7),n.showWeeks){n.weekNumbers=[];for(var v=(11-this.startingDay)%7,y=n.rows.length,s=0;y>s;s++)n.weekNumbers.push(u(n.rows[s][v].date))}};this.compare=function(n,t){var i=new Date(n.getFullYear(),n.getMonth(),n.getDate()),r=new Date(t.getFullYear(),t.getMonth(),t.getDate());return i.setFullYear(n.getFullYear()),r.setFullYear(t.getFullYear()),i-r};this.handleKeyDown=function(n){var t=this.activeDate.getDate(),i;"left"===n?t-=1:"up"===n?t-=7:"right"===n?t+=1:"down"===n?t+=7:"pageup"===n||"pagedown"===n?(i=this.activeDate.getMonth()+("pageup"===n?-1:1),this.activeDate.setMonth(i,1),t=Math.min(r(this.activeDate.getFullYear(),this.activeDate.getMonth()),t)):"home"===n?t=1:"end"===n&&(t=r(this.activeDate.getFullYear(),this.activeDate.getMonth()));this.activeDate.setDate(t)}}]).controller("UibMonthpickerController",["$scope","$element","dateFilter",function(n,t,i){this.step={years:1};this.element=t;this.init=function(n){angular.extend(n,this);n.refreshView()};this._refreshView=function(){for(var r,u=new Array(12),f=this.activeDate.getFullYear(),t=0;12>t;t++)r=new Date(this.activeDate),r.setFullYear(f,t,1),u[t]=angular.extend(this.createDateObject(r,this.formatMonth),{uid:n.uniqueId+"-"+t});n.title=i(this.activeDate,this.formatMonthTitle);n.rows=this.split(u,3)};this.compare=function(n,t){var i=new Date(n.getFullYear(),n.getMonth()),r=new Date(t.getFullYear(),t.getMonth());return i.setFullYear(n.getFullYear()),r.setFullYear(t.getFullYear()),i-r};this.handleKeyDown=function(n){var t=this.activeDate.getMonth(),i;"left"===n?t-=1:"up"===n?t-=3:"right"===n?t+=1:"down"===n?t+=3:"pageup"===n||"pagedown"===n?(i=this.activeDate.getFullYear()+("pageup"===n?-1:1),this.activeDate.setFullYear(i)):"home"===n?t=0:"end"===n&&(t=11);this.activeDate.setMonth(t)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(n,t){function u(n){return parseInt((n-1)/i,10)*i+1}var r,i;this.element=t;this.yearpickerInit=function(){r=this.yearColumns;i=this.yearRows*r;this.step={years:i}};this._refreshView=function(){for(var e,f=new Array(i),t=0,o=u(this.activeDate.getFullYear());i>t;t++)e=new Date(this.activeDate),e.setFullYear(o+t,0,1),f[t]=angular.extend(this.createDateObject(e,this.formatYear),{uid:n.uniqueId+"-"+t});n.title=[f[0].label,f[i-1].label].join(" - ");n.rows=this.split(f,r);n.columns=r};this.compare=function(n,t){return n.getFullYear()-t.getFullYear()};this.handleKeyDown=function(n){var t=this.activeDate.getFullYear();"left"===n?t-=1:"up"===n?t-=r:"right"===n?t+=1:"down"===n?t+=r:"pageup"===n||"pagedown"===n?t+=("pageup"===n?-1:1)*i:"home"===n?t=u(this.activeDate.getFullYear()):"end"===n&&(t=u(this.activeDate.getFullYear())+i-1);this.activeDate.setFullYear(t)}}]).directive("uibDatepicker",function(){return{replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/datepicker/datepicker.html"},scope:{datepickerMode:"=?",datepickerOptions:"=?",dateDisabled:"&",customClass:"&",shortcutPropagation:"&?"},require:["uibDatepicker","^ngModel"],controller:"UibDatepickerController",controllerAs:"datepicker",link:function(n,t,i,r){var u=r[0],f=r[1];u.init(f)}}}).directive("uibDaypicker",function(){return{replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/datepicker/day.html"},require:["^uibDatepicker","uibDaypicker"],controller:"UibDaypickerController",link:function(n,t,i,r){var u=r[0],f=r[1];f.init(u)}}}).directive("uibMonthpicker",function(){return{replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/datepicker/month.html"},require:["^uibDatepicker","uibMonthpicker"],controller:"UibMonthpickerController",link:function(n,t,i,r){var u=r[0],f=r[1];f.init(u)}}}).directive("uibYearpicker",function(){return{replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/datepicker/year.html"},require:["^uibDatepicker","uibYearpicker"],controller:"UibYearpickerController",link:function(n,t,i,r){var u=r[0];angular.extend(u,r[1]);u.yearpickerInit();u.refreshView()}}}).value("uibDatepickerPopupAttributeWarning",!0).constant("uibDatepickerPopupConfig",{altInputFormats:[],appendToBody:!1,clearText:"Clear",closeOnDateSelection:!0,closeText:"Done",currentText:"Today",datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"uib/template/datepicker/popup.html",datepickerTemplateUrl:"uib/template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},onOpenFocus:!0,showButtonBar:!0,placement:"auto bottom-left"}).controller("UibDatepickerPopupController",["$scope","$element","$attrs","$compile","$log","$parse","$window","$document","$rootScope","$uibPosition","dateFilter","uibDateParser","uibDatepickerPopupConfig","$timeout","uibDatepickerConfig","uibDatepickerPopupAttributeWarning",function(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y,p){function ot(n){return n.replace(/([A-Z])/g,function(n){return"-"+n.toLowerCase()})}function st(t){var i=l.parse(t,k,n.date),r;if(isNaN(i))for(r=0;r<ct.length;r++)if(i=l.parse(t,ct[r],n.date),!isNaN(i))return i;return i}function wt(n){if(angular.isNumber(n)&&(n=new Date(n)),!n)return null;if(angular.isDate(n)&&!isNaN(n))return n;if(angular.isString(n)){var t=st(n);if(!isNaN(t))return l.toTimezone(t,nt.timezone)}if(w.$options&&w.$options.allowInvalid)return n}function bt(n,t){var r=n||t;return i.ngRequired||r?(angular.isNumber(r)&&(r=new Date(r)),r?angular.isDate(r)&&!isNaN(r)?!0:angular.isString(r)?!isNaN(st(t)):!1:!0):!0}function ht(i){if(n.isOpen||!n.disabled){var r=tt[0],u=t[0].contains(i.target),f=void 0!==r.contains&&r.contains(i.target);!n.isOpen||u||f||n.$apply(function(){n.isOpen=!1})}}function lt(i){27===i.which&&n.isOpen?(i.preventDefault(),i.stopPropagation(),n.$apply(function(){n.isOpen=!1}),t[0].focus()):40!==i.which||n.isOpen||(i.preventDefault(),i.stopPropagation(),n.$apply(function(){n.isOpen=!0}))}function g(){if(n.isOpen){var r=angular.element(tt[0].querySelector(".uib-datepicker-popup")),f=i.popupPlacement?i.popupPlacement:a.placement,u=h.positionElements(t,r,f,ut);r.css({top:u.top+"px",left:u.left+"px"});r.hasClass("uib-position-measure")&&r.removeClass("uib-position-measure")}}var k,at,ut,vt,yt,pt,rt,b,d,w,nt,tt,ct,it={},ft=!1,et=[];n.watchData={};this.init=function(h){if(w=h,nt=h.$options||y.ngModelOptions,at=angular.isDefined(i.closeOnDateSelection)?n.$parent.$eval(i.closeOnDateSelection):a.closeOnDateSelection,ut=angular.isDefined(i.datepickerAppendToBody)?n.$parent.$eval(i.datepickerAppendToBody):a.appendToBody,vt=angular.isDefined(i.onOpenFocus)?n.$parent.$eval(i.onOpenFocus):a.onOpenFocus,yt=angular.isDefined(i.datepickerPopupTemplateUrl)?i.datepickerPopupTemplateUrl:a.datepickerPopupTemplateUrl,pt=angular.isDefined(i.datepickerTemplateUrl)?i.datepickerTemplateUrl:a.datepickerTemplateUrl,ct=angular.isDefined(i.altInputFormats)?n.$parent.$eval(i.altInputFormats):a.altInputFormats,n.showButtonBar=angular.isDefined(i.showButtonBar)?n.$parent.$eval(i.showButtonBar):a.showButtonBar,a.html5Types[i.type]?(k=a.html5Types[i.type],ft=!0):(k=i.uibDatepickerPopup||a.datepickerPopup,i.$observe("uibDatepickerPopup",function(n){var t=n||a.datepickerPopup;if(t!==k&&(k=t,w.$modelValue=null,!k))throw new Error("uibDatepickerPopup must have a date format specified.");})),!k)throw new Error("uibDatepickerPopup must have a date format specified.");if(ft&&i.uibDatepickerPopup)throw new Error("HTML5 date input types do not support custom formats.");rt=angular.element("<div uib-datepicker-popup-wrap><div uib-datepicker><\/div><\/div>");n.ngModelOptions=angular.copy(nt);n.ngModelOptions.timezone=null;n.ngModelOptions.updateOnDefault===!0&&(n.ngModelOptions.updateOn=n.ngModelOptions.updateOn?n.ngModelOptions.updateOn+" default":"default");rt.attr({"ng-model":"date","ng-model-options":"ngModelOptions","ng-change":"dateSelection(date)","template-url":yt});b=angular.element(rt.children()[0]);b.attr("template-url",pt);ft&&"month"===i.type&&(b.attr("datepicker-mode",'"month"'),b.attr("min-mode","month"));n.datepickerOptions&&b.attr("datepicker-options","datepickerOptions");angular.forEach(["minMode","maxMode","datepickerMode","shortcutPropagation"],function(t){var r,e,o;i[t]&&(p&&u.warn("uib-datepicker settings via uib-datepicker-popup attributes are deprecated and will be removed in UI Bootstrap 1.3, use datepicker-options attribute instead"),r=f(i[t]),e={get:function(){return r(n.$parent)}},(b.attr(ot(t),"watchData."+t),"datepickerMode"===t)&&(o=r.assign,e.set=function(t){o(n.$parent,t)}),Object.defineProperty(n.watchData,t,e))});angular.forEach(["minDate","maxDate","initDate"],function(t){if(i[t]){p&&u.warn("uib-datepicker settings via uib-datepicker-popup attributes are deprecated and will be removed in UI Bootstrap 1.3, use datepicker-options attribute instead");var r=f(i[t]);et.push(n.$parent.$watch(r,function(i){if("minDate"===t||"maxDate"===t)it[t]=null===i?null:angular.isDate(i)?l.fromTimezone(new Date(i),nt.timezone):new Date(c(i,"medium")),n.watchData[t]=null===i?null:it[t];else{var r=i?new Date(i):new Date;n.watchData[t]=l.fromTimezone(r,nt.timezone)}}));b.attr(ot(t),"watchData."+t)}});i.dateDisabled&&(p&&u.warn("uib-datepicker settings via uib-datepicker-popup attributes are deprecated and will be removed in UI Bootstrap 1.3, use datepicker-options attribute instead"),b.attr("date-disabled","dateDisabled({ date: date, mode: mode })"));angular.forEach(["formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","showWeeks","startingDay","yearRows","yearColumns"],function(n){angular.isDefined(i[n])&&(p&&u.warn("uib-datepicker settings via uib-datepicker-popup attributes are deprecated and will be removed in UI Bootstrap 1.3, use datepicker-options attribute instead"),b.attr(ot(n),i[n]))});i.customClass&&(p&&u.warn("uib-datepicker settings via uib-datepicker-popup attributes are deprecated and will be removed in UI Bootstrap 1.3, use datepicker-options attribute instead"),b.attr("custom-class","customClass({ date: date, mode: mode })"));ft?w.$formatters.push(function(t){return n.date=l.fromTimezone(t,nt.timezone),t}):(w.$$parserName="date",w.$validators.date=bt,w.$parsers.unshift(wt),w.$formatters.push(function(t){return w.$isEmpty(t)?(n.date=t,t):(n.date=l.fromTimezone(t,nt.timezone),angular.isNumber(n.date)&&(n.date=new Date(n.date)),l.filter(n.date,k))}));w.$viewChangeListeners.push(function(){n.date=st(w.$viewValue)});t.on("keydown",lt);tt=r(rt)(n);rt.remove();ut?o.find("body").append(tt):t.after(tt);n.$on("$destroy",function(){for(n.isOpen===!0&&(s.$$phase||n.$apply(function(){n.isOpen=!1})),tt.remove(),t.off("keydown",lt),o.off("click",ht),d&&d.off("scroll",g),angular.element(e).off("resize",g);et.length;)et.shift()()})};n.getText=function(t){return n[t+"Text"]||a[t+"Text"]};n.isDisabled=function(t){return"today"===t&&(t=l.fromTimezone(new Date,nt.timezone)),n.datepickerOptions?n.datepickerOptions&&n.datepickerOptions.minDate&&n.compare(t,n.datepickerOptions.minDate)<0||n.datepickerOptions.maxDate&&n.compare(t,n.datepickerOptions.maxDate)>0:n.watchData.minDate&&n.compare(t,it.minDate)<0||n.watchData.maxDate&&n.compare(t,it.maxDate)>0};n.compare=function(n,t){return new Date(n.getFullYear(),n.getMonth(),n.getDate())-new Date(t.getFullYear(),t.getMonth(),t.getDate())};n.dateSelection=function(i){angular.isDefined(i)&&(n.date=i);var r=n.date?l.filter(n.date,k):null;t.val(r);w.$setViewValue(r);at&&(n.isOpen=!1,t[0].focus())};n.keydown=function(i){27===i.which&&(i.stopPropagation(),n.isOpen=!1,t[0].focus())};n.select=function(t,i){if(i.stopPropagation(),"today"===t){var r=new Date;angular.isDate(n.date)?(t=new Date(n.date),t.setFullYear(r.getFullYear(),r.getMonth(),r.getDate())):t=new Date(r.setHours(0,0,0,0))}n.dateSelection(t)};n.close=function(i){i.stopPropagation();n.isOpen=!1;t[0].focus()};n.disabled=angular.isDefined(i.disabled)||!1;i.ngDisabled&&et.push(n.$parent.$watch(f(i.ngDisabled),function(t){n.disabled=t}));n.$watch("isOpen",function(r){r?n.disabled?n.isOpen=!1:v(function(){g();vt&&n.$broadcast("uib:datepicker.focus");o.on("click",ht);var r=i.popupPlacement?i.popupPlacement:a.placement;ut||h.parsePlacement(r)[2]?(d=d||angular.element(h.scrollParent(t)),d&&d.on("scroll",g)):d=null;angular.element(e).on("resize",g)},0,!1):(o.off("click",ht),d&&d.off("scroll",g),angular.element(e).off("resize",g))});n.$on("uib:datepicker.mode",function(){v(g,0,!1)})}]).directive("uibDatepickerPopup",function(){return{require:["ngModel","uibDatepickerPopup"],controller:"UibDatepickerPopupController",scope:{datepickerOptions:"=?",isOpen:"=?",currentText:"@",clearText:"@",closeText:"@",dateDisabled:"&",customClass:"&"},link:function(n,t,i,r){var u=r[0],f=r[1];f.init(u)}}}).directive("uibDatepickerPopupWrap",function(){return{replace:!0,transclude:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/datepicker/popup.html"}}});angular.module("ui.bootstrap.debounce",[]).factory("$$debounce",["$timeout",function(n){return function(t,i){var r;return function(){var u=this,f=Array.prototype.slice.call(arguments);r&&n.cancel(r);r=n(function(){t.apply(u,f)},i)}}}]);angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("uibDropdownConfig",{appendToOpenClass:"uib-dropdown-open",openClass:"open"}).service("uibDropdownService",["$document","$rootScope",function(n,t){var i=null,r,u;this.open=function(t){i||(n.on("click",r),n.on("keydown",u));i&&i!==t&&(i.isOpen=!1);i=t};this.close=function(t){i===t&&(i=null,n.off("click",r),n.off("keydown",u))};r=function(n){var r,u;!i||n&&"disabled"===i.getAutoClose()||n&&3===n.which||(r=i.getToggleElement(),n&&r&&r[0].contains(n.target)||(u=i.getDropdownElement(),n&&"outsideClick"===i.getAutoClose()&&u&&u[0].contains(n.target)||(i.isOpen=!1,t.$$phase||i.$apply())))};u=function(n){27===n.which?(i.focusToggleElement(),r()):i.isKeynavEnabled()&&-1!==[38,40].indexOf(n.which)&&i.isOpen&&(n.preventDefault(),n.stopPropagation(),i.focusDropdownEntry(n.which))}}]).controller("UibDropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest",function(n,t,i,r,u,f,e,o,s,h,c){var p,w,l=this,a=n.$new(),k=u.appendToOpenClass,d=u.openClass,y=angular.noop,nt=i.onToggle?r(i.onToggle):angular.noop,b=!1,v=null,g=!1,tt=s.find("body");t.addClass("dropdown");this.init=function(){if(i.isOpen&&(w=r(i.isOpen),y=w.assign,n.$watch(w,function(n){a.isOpen=!!n})),angular.isDefined(i.dropdownAppendTo)){var u=r(i.dropdownAppendTo)(a);u&&(v=angular.element(u))}b=angular.isDefined(i.dropdownAppendToBody);g=angular.isDefined(i.keyboardNav);b&&!v&&(v=tt);v&&l.dropdownMenu&&(v.append(l.dropdownMenu),t.on("$destroy",function(){l.dropdownMenu.remove()}))};this.toggle=function(n){return a.isOpen=arguments.length?!!n:!a.isOpen,angular.isFunction(y)&&y(a,a.isOpen),a.isOpen};this.isOpen=function(){return a.isOpen};a.getToggleElement=function(){return l.toggleElement};a.getAutoClose=function(){return i.autoClose||"always"};a.getElement=function(){return t};a.isKeynavEnabled=function(){return g};a.focusDropdownEntry=function(n){var i=l.dropdownMenu?angular.element(l.dropdownMenu).find("a"):t.find("ul").eq(0).find("a");switch(n){case 40:l.selectedOption=angular.isNumber(l.selectedOption)?l.selectedOption===i.length-1?l.selectedOption:l.selectedOption+1:0;break;case 38:l.selectedOption=angular.isNumber(l.selectedOption)?0===l.selectedOption?0:l.selectedOption-1:i.length-1}i[l.selectedOption].focus()};a.getDropdownElement=function(){return l.dropdownMenu};a.focusToggleElement=function(){l.toggleElement&&l.toggleElement[0].focus()};a.$watch("isOpen",function(i,r){var u,g,s,w,tt,rt,it;v&&l.dropdownMenu&&(s=o.positionElements(t,l.dropdownMenu,"bottom-left",!0),(u={top:s.top+"px",display:i?"block":"none"},g=l.dropdownMenu.hasClass("dropdown-menu-right"),g?(u.left="auto",u.right=window.innerWidth-(s.left+t.prop("offsetWidth"))+"px"):(u.left=s.left+"px",u.right="auto"),b)||(w=o.offset(v),u.top=s.top-w.top+"px",g?u.right=window.innerWidth-(s.left-w.left+t.prop("offsetWidth"))+"px":u.left=s.left-w.left+"px"),l.dropdownMenu.css(u));tt=v?v:t;rt=tt.hasClass(v?k:d);(rt===!i&&e[i?"addClass":"removeClass"](tt,v?k:d).then(function(){angular.isDefined(i)&&i!==r&&nt(n,{open:!!i})}),i)?(l.dropdownMenuTemplateUrl&&c(l.dropdownMenuTemplateUrl).then(function(n){p=a.$new();h(n.trim())(p,function(n){var t=n;l.dropdownMenu.replaceWith(t);l.dropdownMenu=t})}),a.focusToggleElement(),f.open(a)):(l.dropdownMenuTemplateUrl&&(p&&p.$destroy(),it=angular.element('<ul class="dropdown-menu"><\/ul>'),l.dropdownMenu.replaceWith(it),l.dropdownMenu=it),f.close(a),l.selectedOption=null);angular.isFunction(y)&&y(n,i)});n.$on("$locationChangeSuccess",function(){"disabled"!==a.getAutoClose()&&(a.isOpen=!1)})}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(n,t,i,r){r.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"A",require:"?^uibDropdown",link:function(n,t,i,r){if(r&&!angular.isDefined(i.dropdownNested)){t.addClass("dropdown-menu");var u=i.templateUrl;u&&(r.dropdownMenuTemplateUrl=u);r.dropdownMenu||(r.dropdownMenu=t)}}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(n,t,i,r){if(r){t.addClass("dropdown-toggle");r.toggleElement=t;var u=function(u){u.preventDefault();t.hasClass("disabled")||i.disabled||n.$apply(function(){r.toggle()})};t.bind("click",u);t.attr({"aria-haspopup":!0,"aria-expanded":!1});n.$watch(r.isOpen,function(n){t.attr("aria-expanded",!!n)});n.$on("$destroy",function(){t.unbind("click",u)})}}}});angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var n=[];return{add:function(t,i){n.push({key:t,value:i})},get:function(t){for(var i=0;i<n.length;i++)if(t===n[i].key)return n[i]},keys:function(){for(var i=[],t=0;t<n.length;t++)i.push(n[t].key);return i},top:function(){return n[n.length-1]},remove:function(t){for(var r=-1,i=0;i<n.length;i++)if(t===n[i].key){r=i;break}return n.splice(r,1)[0]},removeTop:function(){return n.splice(n.length-1,1)[0]},length:function(){return n.length}}}}});angular.module("ui.bootstrap.modal",["ui.bootstrap.stackedMap"]).factory("$$multiMap",function(){return{createNew:function(){var n={};return{entries:function(){return Object.keys(n).map(function(t){return{key:t,value:n[t]}})},get:function(t){return n[t]},hasKey:function(t){return!!n[t]},keys:function(){return Object.keys(n)},put:function(t,i){n[t]||(n[t]=[]);n[t].push(i)},remove:function(t,i){var r=n[t],u;r&&(u=r.indexOf(i),-1!==u&&r.splice(u,1),r.length||delete n[t])}}}}}).provider("$uibResolve",function(){var n=this;this.resolver=null;this.setResolver=function(n){this.resolver=n};this.$get=["$injector","$q",function(t,i){var r=n.resolver?t.get(n.resolver):null;return{resolve:function(n,u,f,e){if(r)return r.resolve(n,u,f,e);var o=[];return angular.forEach(n,function(n){angular.isFunction(n)||angular.isArray(n)?o.push(i.resolve(t.invoke(n))):angular.isString(n)?o.push(i.resolve(t.get(n))):o.push(i.resolve(n))}),i.all(o).then(function(t){var i={},r=0;return angular.forEach(n,function(n,u){i[u]=t[r++]}),i})}}}]}).directive("uibModalBackdrop",["$animate","$injector","$uibModalStack",function(n,t,i){function r(t,r,u){u.modalInClass&&(n.addClass(r,u.modalInClass),t.$on(i.NOW_CLOSING_EVENT,function(i,f){var e=f();t.modalOptions.animation?n.removeClass(r,u.modalInClass).then(e):e()}))}return{replace:!0,templateUrl:"uib/template/modal/backdrop.html",compile:function(n,t){return n.addClass(t.backdropClass),r}}}]).directive("uibModalWindow",["$uibModalStack","$q","$animateCss","$document",function(n,t,i,r){return{scope:{index:"@"},replace:!0,transclude:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/modal/window.html"},link:function(u,f,e){f.addClass(e.windowClass||"");f.addClass(e.windowTopClass||"");u.size=e.size;u.close=function(t){var i=n.getTop();i&&i.value.backdrop&&"static"!==i.value.backdrop&&t.target===t.currentTarget&&(t.preventDefault(),t.stopPropagation(),n.dismiss(i.key,"backdrop click"))};f.on("click",u.close);u.$isRendered=!0;var o=t.defer();e.$observe("modalRender",function(n){"true"===n&&o.resolve()});o.promise.then(function(){var o=null;e.modalInClass&&(o=i(f,{addClass:e.modalInClass}).start(),u.$on(n.NOW_CLOSING_EVENT,function(n,t){var r=t();i(f,{removeClass:e.modalInClass}).start().then(r)}));t.when(o).then(function(){var i=n.getTop(),t;(i&&n.modalRendered(i.key),r[0].activeElement&&f[0].contains(r[0].activeElement))||(t=f[0].querySelector("[autofocus]"),t?t.focus():f[0].focus())})})}}}]).directive("uibModalAnimationClass",function(){return{compile:function(n,t){t.modalAnimation&&n.addClass(t.uibModalAnimationClass)}}}).directive("uibModalTransclude",function(){return{link:function(n,t,i,r,u){u(n.$parent,function(n){t.empty();t.append(n)})}}}).factory("$uibModalStack",["$animate","$animateCss","$document","$compile","$rootScope","$q","$$multiMap","$$stackedMap",function(n,t,i,r,u,f,e,o){function g(n){return!!(n.offsetWidth||n.offsetHeight||n.getClientRects().length)}function a(){for(var t=-1,i=h.keys(),n=0;n<i.length;n++)h.get(i[n]).value.backdrop&&(t=n);return t}function y(n,t){var i=h.get(n).value,r=i.appendTo;h.remove(n);w(i.modalDomEl,i.modalScope,function(){var t=i.openedClass||d;v.remove(t,n);r.toggleClass(t,v.hasKey(t));p(!0)},i.closedDeferred);nt();t&&t.focus?t.focus():r.focus&&r.focus()}function p(n){var t;h.length()>0&&(t=h.top().value,t.modalDomEl.toggleClass(t.windowTopClass||"",n))}function nt(){if(c&&-1===a()){var n=l;w(c,l,function(){n=null});c=void 0;l=void 0}}function w(t,i,r,u){function o(){o.done||(o.done=!0,n.leave(t).then(function(){t.remove();u&&u.resolve()}),i.$destroy(),r&&r())}var e,h=null,c=function(){return e||(e=f.defer(),h=e.promise),function(){e.resolve()}};return i.$broadcast(s.NOW_CLOSING_EVENT,c),f.when(h).then(o)}function b(n){var t,i,r;if(n.isDefaultPrevented())return n;if(t=h.top(),t)switch(n.which){case 27:t.value.keyboard&&(n.preventDefault(),u.$apply(function(){s.dismiss(t.key,"escape key press")}));break;case 9:i=s.loadFocusElementList(t);r=!1;n.shiftKey?(s.isFocusInFirstItem(n,i)||s.isModalFocused(n,t))&&(r=s.focusLastFocusableElement(i)):s.isFocusInLastItem(n,i)&&(r=s.focusFirstFocusableElement(i));r&&(n.preventDefault(),n.stopPropagation())}}function k(n,t,i){return!n.value.modalScope.$broadcast("modal.closing",t,i).defaultPrevented}var c,l,d="modal-open",h=o.createNew(),v=e.createNew(),s={NOW_CLOSING_EVENT:"modal.stack.now-closing"},tt="a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]";return u.$watch(a,function(n){l&&(l.index=n)}),i.on("keydown",b),u.$on("$destroy",function(){i.off("keydown",b)}),s.open=function(t,f){var w=i[0].activeElement,y=f.openedClass||d,e,s,o;if(p(!1),h.add(t,{deferred:f.deferred,renderDeferred:f.renderDeferred,closedDeferred:f.closedDeferred,modalScope:f.scope,backdrop:f.backdrop,keyboard:f.keyboard,openedClass:f.openedClass,windowTopClass:f.windowTopClass,animation:f.animation,appendTo:f.appendTo}),v.put(y,t),e=f.appendTo,s=a(),!e.length)throw new Error("appendTo element not found. Make sure that the element passed is in DOM.");s>=0&&!c&&(l=u.$new(!0),l.modalOptions=f,l.index=s,c=angular.element('<div uib-modal-backdrop="modal-backdrop"><\/div>'),c.attr("backdrop-class",f.backdropClass),f.animation&&c.attr("modal-animation","true"),r(c)(l),n.enter(c,e));o=angular.element('<div uib-modal-window="modal-window"><\/div>');o.attr({"template-url":f.windowTemplateUrl,"window-class":f.windowClass,"window-top-class":f.windowTopClass,size:f.size,index:h.length()-1,animate:"animate"}).html(f.content);f.animation&&o.attr("modal-animation","true");n.enter(r(o)(f.scope),e).then(function(){f.scope.$$uibDestructionScheduled||n.addClass(e,y)});h.top().value.modalDomEl=o;h.top().value.modalOpener=w},s.close=function(n,t){var i=h.get(n);return i&&k(i,t,!0)?(i.value.modalScope.$$uibDestructionScheduled=!0,i.value.deferred.resolve(t),y(n,i.value.modalOpener),!0):!i},s.dismiss=function(n,t){var i=h.get(n);return i&&k(i,t,!1)?(i.value.modalScope.$$uibDestructionScheduled=!0,i.value.deferred.reject(t),y(n,i.value.modalOpener),!0):!i},s.dismissAll=function(n){for(var t=this.getTop();t&&this.dismiss(t.key,n);)t=this.getTop()},s.getTop=function(){return h.top()},s.modalRendered=function(n){var t=h.get(n);t&&t.value.renderDeferred.resolve()},s.focusFirstFocusableElement=function(n){return n.length>0?(n[0].focus(),!0):!1},s.focusLastFocusableElement=function(n){return n.length>0?(n[n.length-1].focus(),!0):!1},s.isModalFocused=function(n,t){if(n&&t){var i=t.value.modalDomEl;if(i&&i.length)return(n.target||n.srcElement)===i[0]}return!1},s.isFocusInFirstItem=function(n,t){return t.length>0?(n.target||n.srcElement)===t[0]:!1},s.isFocusInLastItem=function(n,t){return t.length>0?(n.target||n.srcElement)===t[t.length-1]:!1},s.loadFocusElementList=function(n){var t,i;if(n&&(t=n.value.modalDomEl,t&&t.length))return i=t[0].querySelectorAll(tt),i?Array.prototype.filter.call(i,function(n){return g(n)}):i},s}]).provider("$uibModal",function(){var n={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$rootScope","$q","$document","$templateRequest","$controller","$uibResolve","$uibModalStack",function(t,i,r,u,f,e,o){function c(n){return n.template?i.when(n.template):u(angular.isFunction(n.templateUrl)?n.templateUrl():n.templateUrl)}var h={},s=null;return h.getPromiseChain=function(){return s},h.open=function(u){function v(){return b}var l=i.defer(),a=i.defer(),y=i.defer(),p=i.defer(),h={result:l.promise,opened:a.promise,closed:y.promise,rendered:p.promise,close:function(n){return o.close(h,n)},dismiss:function(n){return o.dismiss(h,n)}},w,b;if(u=angular.extend({},n.options,u),u.resolve=u.resolve||{},u.appendTo=u.appendTo||r.find("body").eq(0),!u.template&&!u.templateUrl)throw new Error("One of template or templateUrl options is required.");return b=i.all([c(u),e.resolve(u.resolve,{},null,null)]),w=s=i.all([s]).then(v,v).then(function(n){var c=u.scope||t,i=c.$new(),r,s,e;i.$close=h.close;i.$dismiss=h.dismiss;i.$on("$destroy",function(){i.$$uibDestructionScheduled||i.$dismiss("$uibUnscheduledDestruction")});e={};u.controller&&(e.$scope=i,e.$uibModalInstance=h,angular.forEach(n[1],function(n,t){e[t]=n}),s=f(u.controller,e,!0),u.controllerAs?(r=s.instance,u.bindToController&&(r.$close=i.$close,r.$dismiss=i.$dismiss,angular.extend(r,c)),r=s(),i[u.controllerAs]=r):r=s(),angular.isFunction(r.$onInit)&&r.$onInit());o.open(h,{scope:i,deferred:l,renderDeferred:p,closedDeferred:y,content:n[0],animation:u.animation,backdrop:u.backdrop,keyboard:u.keyboard,backdropClass:u.backdropClass,windowTopClass:u.windowTopClass,windowClass:u.windowClass,windowTemplateUrl:u.windowTemplateUrl,size:u.size,openedClass:u.openedClass,appendTo:u.appendTo});a.resolve(!0)},function(n){a.reject(n);l.reject(n)})["finally"](function(){s===w&&(s=null)}),h},h}]};return n});angular.module("ui.bootstrap.paging",[]).factory("uibPaging",["$parse",function(n){return{create:function(t,i,r){t.setNumPages=r.numPages?n(r.numPages).assign:angular.noop;t.ngModelCtrl={$setViewValue:angular.noop};t._watchers=[];t.init=function(n,u){t.ngModelCtrl=n;t.config=u;n.$render=function(){t.render()};r.itemsPerPage?t._watchers.push(i.$parent.$watch(r.itemsPerPage,function(n){t.itemsPerPage=parseInt(n,10);i.totalPages=t.calculateTotalPages();t.updatePage()})):t.itemsPerPage=u.itemsPerPage;i.$watch("totalItems",function(n,r){(angular.isDefined(n)||n!==r)&&(i.totalPages=t.calculateTotalPages(),t.updatePage())})};t.calculateTotalPages=function(){var n=t.itemsPerPage<1?1:Math.ceil(i.totalItems/t.itemsPerPage);return Math.max(n||0,1)};t.render=function(){i.page=parseInt(t.ngModelCtrl.$viewValue,10)||1};i.selectPage=function(n,r){r&&r.preventDefault();var u=!i.ngDisabled||!r;u&&i.page!==n&&n>0&&n<=i.totalPages&&(r&&r.target&&r.target.blur(),t.ngModelCtrl.$setViewValue(n),t.ngModelCtrl.$render())};i.getText=function(n){return i[n+"Text"]||t.config[n+"Text"]};i.noPrevious=function(){return 1===i.page};i.noNext=function(){return i.page===i.totalPages};t.updatePage=function(){t.setNumPages(i.$parent,i.totalPages);i.page>i.totalPages?i.selectPage(i.totalPages):t.ngModelCtrl.$render()};i.$on("$destroy",function(){for(;t._watchers.length;)t._watchers.shift()()})}}}]);angular.module("ui.bootstrap.pager",["ui.bootstrap.paging"]).controller("UibPagerController",["$scope","$attrs","uibPaging","uibPagerConfig",function(n,t,i,r){n.align=angular.isDefined(t.align)?n.$parent.$eval(t.align):r.align;i.create(this,n,t)}]).constant("uibPagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("uibPager",["uibPagerConfig",function(n){return{scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["uibPager","?ngModel"],controller:"UibPagerController",controllerAs:"pager",templateUrl:function(n,t){return t.templateUrl||"uib/template/pager/pager.html"},replace:!0,link:function(t,i,r,u){var e=u[0],f=u[1];f&&e.init(f,n)}}}]);angular.module("ui.bootstrap.pagination",["ui.bootstrap.paging"]).controller("UibPaginationController",["$scope","$attrs","$parse","uibPaging","uibPaginationConfig",function(n,t,i,r,u){function e(n,t,i){return{number:n,text:t,active:i}}function l(n,t){var u=[],i=1,r=t,c=angular.isDefined(f)&&t>f,s,l,y,p,w,b,k,d;for(c&&(h?(i=Math.max(n-Math.floor(f/2),1),r=i+f-1,r>t&&(r=t,i=r-f+1)):(i=(Math.ceil(n/f)-1)*f+1,r=Math.min(i+f-1,t))),s=i;r>=s;s++)l=e(s,v(s),s===n),u.push(l);return c&&f>0&&(!h||a||o)&&(i>1&&((!o||i>3)&&(y=e(i-1,"...",!1),u.unshift(y)),o&&(3===i&&(p=e(2,"2",!1),u.unshift(p)),w=e(1,"1",!1),u.unshift(w))),t>r&&((!o||t-2>r)&&(b=e(r+1,"...",!1),u.push(b)),o&&(r===t-2&&(k=e(t-1,t-1,!1),u.push(k)),d=e(t,t,!1),u.push(d)))),u}var s=this,f=angular.isDefined(t.maxSize)?n.$parent.$eval(t.maxSize):u.maxSize,h=angular.isDefined(t.rotate)?n.$parent.$eval(t.rotate):u.rotate,a=angular.isDefined(t.forceEllipses)?n.$parent.$eval(t.forceEllipses):u.forceEllipses,o=angular.isDefined(t.boundaryLinkNumbers)?n.$parent.$eval(t.boundaryLinkNumbers):u.boundaryLinkNumbers,v=angular.isDefined(t.pageLabel)?function(i){return n.$parent.$eval(t.pageLabel,{$page:i})}:angular.identity,c;n.boundaryLinks=angular.isDefined(t.boundaryLinks)?n.$parent.$eval(t.boundaryLinks):u.boundaryLinks;n.directionLinks=angular.isDefined(t.directionLinks)?n.$parent.$eval(t.directionLinks):u.directionLinks;r.create(this,n,t);t.maxSize&&s._watchers.push(n.$parent.$watch(i(t.maxSize),function(n){f=parseInt(n,10);s.render()}));c=this.render;this.render=function(){c();n.page>0&&n.page<=n.totalPages&&(n.pages=l(n.page,n.totalPages))}}]).constant("uibPaginationConfig",{itemsPerPage:10,boundaryLinks:!1,boundaryLinkNumbers:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0,forceEllipses:!1}).directive("uibPagination",["$parse","uibPaginationConfig",function(n,t){return{scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["uibPagination","?ngModel"],controller:"UibPaginationController",controllerAs:"pagination",templateUrl:function(n,t){return t.templateUrl||"uib/template/pagination/pagination.html"},replace:!0,link:function(n,i,r,u){var e=u[0],f=u[1];f&&e.init(f,t)}}}]);angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.stackedMap"]).provider("$uibTooltip",function(){function i(n){var t="-";return n.replace(/[A-Z]/g,function(n,i){return(i?t:"")+n.toLowerCase()})}var r={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},n={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},t={};this.options=function(n){angular.extend(t,n)};this.setTriggers=function(t){angular.extend(n,t)};this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(u,f,e,o,s,h,c,l,a){function y(n){if(27===n.which){var t=v.top();t&&(t.value.close(),v.removeTop(),t=null)}}var v=a.createNew();return o.on("keypress",y),c.$on("$destroy",function(){o.off("keypress",y)}),function(u,c,a,y){function b(t){var i=(t||y.trigger||a).split(" "),r=i.map(function(t){return n[t]||t});return{show:i,hide:r}}y=angular.extend({},r,t,y);var k=i(u),p=h.startSymbol(),w=h.endSymbol(),d="<div "+k+'-popup title="'+p+"title"+w+'" '+(y.useContentExp?'content-exp="contentExp()" ':'content="'+p+"content"+w+'" ')+'placement="'+p+"placement"+w+'" popup-class="'+p+"popupClass"+w+'" animation="animation" is-open="isOpen"origin-scope="origScope" class="uib-position-measure"><\/div>';return{compile:function(){var n=f(d);return function(t,i,r){function nt(){f.isOpen?tt():lt()}function lt(){(!fi||t.$eval(r[c+"Enable"]))&&(at(),ti(),f.popupDelay?rt||(rt=e(kt,f.popupDelay,!1)):kt())}function tt(){ot();f.popupCloseDelay?ut||(ut=e(k,f.popupCloseDelay,!1)):k()}function kt(){return ot(),at(),f.content?(ni(),void f.$evalAsync(function(){f.isOpen=!0;dt(!0);et()})):angular.noop}function ot(){rt&&(e.cancel(rt),rt=null);d&&(e.cancel(d),d=null)}function k(){f&&f.$evalAsync(function(){f&&(f.isOpen=!1,dt(!1),f.animation?it||(it=e(vt,150,!1)):vt())})}function at(){ut&&(e.cancel(ut),ut=null);it&&(e.cancel(it),it=null)}function ni(){h||(p=f.$new(),h=n(p,function(n){st?o.find("body").append(n):i.after(n)}),ii())}function vt(){ot();at();ri();h&&(h.remove(),h=null);p&&(p.$destroy(),p=null)}function ti(){var n,i,e;f.title=r[c+"Title"];f.content=ht?ht(t):r[u];f.popupClass=r[c+"Class"];f.placement=angular.isDefined(r[c+"Placement"])?r[c+"Placement"]:y.placement;n=s.parsePlacement(f.placement);g=n[1]?n[0]+"-"+n[1]:n[0];i=parseInt(r[c+"PopupDelay"],10);e=parseInt(r[c+"PopupCloseDelay"],10);f.popupDelay=isNaN(i)?y.popupDelay:i;f.popupCloseDelay=isNaN(e)?y.popupCloseDelay:e}function dt(n){ft&&angular.isFunction(ft.assign)&&ft.assign(t,n)}function ii(){a.length=0;ht?(a.push(t.$watch(ht,function(n){f.content=n;!n&&f.isOpen&&k()})),a.push(p.$watch(function(){yt||(yt=!0,p.$$postDigest(function(){yt=!1;f&&f.isOpen&&et()}))}))):a.push(r.$observe(u,function(n){f.content=n;!n&&f.isOpen?k():et()}));a.push(r.$observe(c+"Title",function(n){f.title=n;f.isOpen&&et()}));a.push(r.$observe(c+"Placement",function(n){f.placement=n?n:y.placement;var t=s.parsePlacement(f.placement);g=t[1]?t[0]+"-"+t[1]:t[0];f.isOpen&&et()}))}function ri(){a.length&&(angular.forEach(a,function(n){n()}),a.length=0)}function gt(n){f&&f.isOpen&&h&&(i[0].contains(n.target)||h[0].contains(n.target)||tt())}function ui(){var n=r[c+"Trigger"];pt();w=b(n);"none"!==w.show&&w.show.forEach(function(n,t){"outsideClick"===n?(i.on("click",nt),o.on("click",gt)):n===w.hide[t]?i.on(n,nt):n&&(i.on(n,lt),i.on(w.hide[t],tt));i.on("keypress",function(n){27===n.which&&tt()})})}var h,p,it,rt,ut,d,g,st=angular.isDefined(y.appendToBody)?y.appendToBody:!1,w=b(void 0),fi=angular.isDefined(r[c+"Enable"]),f=t.$new(!0),yt=!1,ft=angular.isDefined(r[c+"IsOpen"])?l(r[c+"IsOpen"]):!1,ht=y.useContentExp?l(r[u]):!1,a=[],et=function(){h&&h.html()&&(d||(d=e(function(){var n=s.positionElements(i,h,f.placement,st);h.css({top:n.top+"px",left:n.left+"px"});h.hasClass(n.placement.split("-")[0])||(h.removeClass(g.split("-")[0]),h.addClass(n.placement.split("-")[0]));h.hasClass(y.placementClassPrefix+n.placement)||(h.removeClass(y.placementClassPrefix+g),h.addClass(y.placementClassPrefix+n.placement));h.hasClass("uib-position-measure")?(s.positionArrow(h,n.placement),h.removeClass("uib-position-measure")):g!==n.placement&&s.positionArrow(h,n.placement);g=n.placement;d=null},0,!1)))},pt,wt,bt,ct;f.origScope=t;f.isOpen=!1;v.add(f,{close:k});f.contentExp=function(){return f.content};r.$observe("disabled",function(n){n&&ot();n&&f.isOpen&&k()});ft&&t.$watch(ft,function(n){f&&!n===f.isOpen&&nt()});pt=function(){w.show.forEach(function(n){"outsideClick"===n?i.off("click",nt):(i.off(n,lt),i.off(n,nt))});w.hide.forEach(function(n){"outsideClick"===n?o.off("click",gt):i.off(n,tt)})};ui();wt=t.$eval(r[c+"Animation"]);f.animation=angular.isDefined(wt)?!!wt:y.animation;ct=c+"AppendToBody";bt=ct in r&&void 0===r[ct]?!0:t.$eval(r[ct]);st=angular.isDefined(bt)?bt:st;t.$on("$destroy",function(){pt();vt();v.remove(f);f=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(n,t,i,r){return{link:function(u,f,e){var o,s,h,a=u.$eval(e.tooltipTemplateTranscludeScope),l=0,c=function(){s&&(s.remove(),s=null);o&&(o.$destroy(),o=null);h&&(n.leave(h).then(function(){s=null}),s=h,h=null)};u.$watch(t.parseAsResourceUrl(e.uibTooltipTemplateTransclude),function(t){var e=++l;t?(r(t,!0).then(function(r){if(e===l){var u=a.$new(),s=r,v=i(s)(u,function(t){c();n.enter(t,f)});o=u;h=v;o.$emit("$includeContentLoaded",t)}},function(){e===l&&(c(),u.$emit("$includeContentError",t))}),u.$emit("$includeContentRequested",t)):c()});u.$on("$destroy",c)}}}]).directive("uibTooltipClasses",["$uibPosition",function(n){return{restrict:"A",link:function(t,i,r){if(t.placement){var u=n.parsePlacement(t.placement);i.addClass(u[0])}t.popupClass&&i.addClass(t.popupClass);t.animation()&&i.addClass(r.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(n){return n("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(n){return n("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(n){return n("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]);angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{replace:!0,scope:{title:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(n){return n("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",title:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(n){return n("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{replace:!0,scope:{title:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(n){return n("uibPopover","popover","click")}]);angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(n,t,i){function r(){return angular.isDefined(n.maxParam)?n.maxParam:i.max}var u=this,f=angular.isDefined(t.animate)?n.$parent.$eval(t.animate):i.animate;this.bars=[];n.max=r();this.addBar=function(n,t,i){f||t.css({transition:"none"});this.bars.push(n);n.max=r();n.title=i&&angular.isDefined(i.title)?i.title:"progressbar";n.$watch("value",function(){n.recalculatePercentage()});n.recalculatePercentage=function(){var t=u.bars.reduce(function(n,t){return t.percent=+(100*t.value/t.max).toFixed(2),n+t.percent},0);t>100&&(n.percent-=t-100)};n.$on("$destroy",function(){t=null;u.removeBar(n)})};this.removeBar=function(n){this.bars.splice(this.bars.indexOf(n),1);this.bars.forEach(function(n){n.recalculatePercentage()})};n.$watch("maxParam",function(){u.bars.forEach(function(n){n.max=r();n.recalculatePercentage()})})}]).directive("uibProgress",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",require:"uibProgress",scope:{maxParam:"=?max"},templateUrl:"uib/template/progressbar/progress.html"}}).directive("uibBar",function(){return{replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"uib/template/progressbar/bar.html",link:function(n,t,i,r){r.addBar(n,t,i)}}}).directive("uibProgressbar",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",scope:{value:"=",maxParam:"=?max",type:"@"},templateUrl:"uib/template/progressbar/progressbar.html",link:function(n,t,i,r){r.addBar(n,angular.element(t.children()[0]),{title:i.title})}}});angular.module("ui.bootstrap.rating",[]).constant("uibRatingConfig",{max:5,stateOn:null,stateOff:null,enableReset:!0,titles:["one","two","three","four","five"]}).controller("UibRatingController",["$scope","$attrs","uibRatingConfig",function(n,t,i){var r={$setViewValue:angular.noop},u=this;this.init=function(u){var f,e;r=u;r.$render=this.render;r.$formatters.push(function(n){return angular.isNumber(n)&&n<<0!==n&&(n=Math.round(n)),n});this.stateOn=angular.isDefined(t.stateOn)?n.$parent.$eval(t.stateOn):i.stateOn;this.stateOff=angular.isDefined(t.stateOff)?n.$parent.$eval(t.stateOff):i.stateOff;this.enableReset=angular.isDefined(t.enableReset)?n.$parent.$eval(t.enableReset):i.enableReset;f=angular.isDefined(t.titles)?n.$parent.$eval(t.titles):i.titles;this.titles=angular.isArray(f)&&f.length>0?f:i.titles;e=angular.isDefined(t.ratingStates)?n.$parent.$eval(t.ratingStates):new Array(angular.isDefined(t.max)?n.$parent.$eval(t.max):i.max);n.range=this.buildTemplateObjects(e)};this.buildTemplateObjects=function(n){for(var t=0,i=n.length;i>t;t++)n[t]=angular.extend({index:t},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(t)},n[t]);return n};this.getTitle=function(n){return n>=this.titles.length?n+1:this.titles[n]};n.rate=function(t){if(!n.readonly&&t>=0&&t<=n.range.length){var i=u.enableReset&&r.$viewValue===t?0:t;r.$setViewValue(i);r.$render()}};n.enter=function(t){n.readonly||(n.value=t);n.onHover({value:t})};n.reset=function(){n.value=r.$viewValue;n.onLeave()};n.onKeydown=function(t){/(37|38|39|40)/.test(t.which)&&(t.preventDefault(),t.stopPropagation(),n.rate(n.value+(38===t.which||39===t.which?1:-1)))};this.render=function(){n.value=r.$viewValue;n.title=u.getTitle(n.value-1)}}]).directive("uibRating",function(){return{require:["uibRating","ngModel"],scope:{readonly:"=?readOnly",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"uib/template/rating/rating.html",replace:!0,link:function(n,t,i,r){var u=r[0],f=r[1];u.init(f)}}});angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(n){function r(n){for(var i=0;i<t.tabs.length;i++)if(t.tabs[i].index===n)return i}var i,t=this,u;t.tabs=[];t.select=function(n,f){var s,o,e;u||(s=r(i),o=t.tabs[s],o&&(o.tab.onDeselect({$event:f}),o.tab.active=!1),e=t.tabs[n],e?(e.tab.onSelect({$event:f}),e.tab.active=!0,t.active=e.index,i=e.index):!e&&angular.isNumber(i)&&(t.active=null,i=null))};t.addTab=function(n){if(t.tabs.push({tab:n,index:n.index}),t.tabs.sort(function(n,t){return n.index>t.index?1:n.index<t.index?-1:0}),n.index===t.active||!angular.isNumber(t.active)&&1===t.tabs.length){var i=r(n.index);t.select(i)}};t.removeTab=function(n){var i=r(n.index),u;n.index===t.active&&(u=i===t.tabs.length-1?i-1:i+1%t.tabs.length,t.select(u));t.tabs.splice(i,1)};n.$watch("tabset.active",function(n){angular.isNumber(n)&&n!==i&&t.select(r(n))});n.$on("$destroy",function(){u=!0})}]).directive("uibTabset",function(){return{transclude:!0,replace:!0,scope:{},bindToController:{active:"=?",type:"@"},controller:"UibTabsetController",controllerAs:"tabset",templateUrl:function(n,t){return t.templateUrl||"uib/template/tabs/tabset.html"},link:function(n,t,i){n.vertical=angular.isDefined(i.vertical)?n.$parent.$eval(i.vertical):!1;n.justified=angular.isDefined(i.justified)?n.$parent.$eval(i.justified):!1;angular.isUndefined(i.active)&&(n.active=0)}}}).directive("uibTab",["$parse",function(n){return{require:"^uibTabset",replace:!0,templateUrl:function(n,t){return t.templateUrl||"uib/template/tabs/tab.html"},transclude:!0,scope:{heading:"@",index:"=?",classes:"@?",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},controllerAs:"tab",link:function(t,i,r,u,f){t.disabled=!1;r.disable&&t.$parent.$watch(n(r.disable),function(n){t.disabled=!!n});angular.isUndefined(r.index)&&(t.index=u.tabs&&u.tabs.length?Math.max.apply(null,u.tabs.map(function(n){return n.index}))+1:0);angular.isUndefined(r.classes)&&(t.classes="");t.select=function(n){if(!t.disabled){for(var r,i=0;i<u.tabs.length;i++)if(u.tabs[i].tab===t){r=i;break}u.select(r,n)}};u.addTab(t);t.$on("$destroy",function(){u.removeTab(t)});t.$transcludeFn=f}}}]).directive("uibTabHeadingTransclude",function(){return{restrict:"A",require:"^uibTab",link:function(n,t){n.$watch("headingElement",function(n){n&&(t.html(""),t.append(n))})}}}).directive("uibTabContentTransclude",function(){function n(n){return n.tagName&&(n.hasAttribute("uib-tab-heading")||n.hasAttribute("data-uib-tab-heading")||n.hasAttribute("x-uib-tab-heading")||"uib-tab-heading"===n.tagName.toLowerCase()||"data-uib-tab-heading"===n.tagName.toLowerCase()||"x-uib-tab-heading"===n.tagName.toLowerCase()||"uib:tab-heading"===n.tagName.toLowerCase())}return{restrict:"A",require:"^uibTabset",link:function(t,i,r){var u=t.$eval(r.uibTabContentTransclude).tab;u.$transcludeFn(u.$parent,function(t){angular.forEach(t,function(t){n(t)?u.headingElement=t:i.append(t)})})}}});angular.module("ui.bootstrap.timepicker",[]).constant("uibTimepickerConfig",{hourStep:1,minuteStep:1,secondStep:1,showMeridian:!0,showSeconds:!1,meridians:null,readonlyInput:!1,mousewheel:!0,arrowkeys:!0,showSpinners:!0,templateUrl:"uib/template/timepicker/timepicker.html"}).controller("UibTimepickerController",["$scope","$element","$attrs","$parse","$log","$locale","uibTimepickerConfig",function(n,t,i,r,u,f,e){function nt(){var t=+n.hours,i=n.showMeridian?t>0&&13>t:t>=0&&24>t;if(i)return(n.showMeridian&&(12===t&&(t=0),n.meridian===v[1]&&(t+=12)),t)}function tt(){var t=+n.minutes;if(t>=0&&60>t)return t}function et(){var t=+n.seconds;if(t>=0&&60>t)return t}function p(n,t){return null===n?"":angular.isDefined(n)&&n.toString().length<2&&!t?"0"+n:n.toString()}function g(n){ut();s.$setViewValue(new Date(o));rt(n)}function ut(){s.$setValidity("time",!0);n.invalidHours=!1;n.invalidMinutes=!1;n.invalidSeconds=!1}function rt(t){if(s.$modelValue){var i=o.getHours(),r=o.getMinutes(),u=o.getSeconds();n.showMeridian&&(i=0===i||12===i?12:i%12);n.hours="h"===t?i:p(i,!ft);"m"!==t&&(n.minutes=p(r));n.meridian=o.getHours()<12?v[0]:v[1];"s"!==t&&(n.seconds=p(u));n.meridian=o.getHours()<12?v[0]:v[1]}else n.hours=null,n.minutes=null,n.seconds=null,n.meridian=v[0]}function y(n){o=it(o,n);g()}function w(n,t){return it(n,60*t)}function it(n,t){var i=new Date(n.getTime()+1e3*t),r=new Date(n);return r.setHours(i.getHours(),i.getMinutes(),i.getSeconds()),r}var o=new Date,a=[],s={$setViewValue:angular.noop},v=angular.isDefined(i.meridians)?n.$parent.$eval(i.meridians):e.meridians||f.DATETIME_FORMATS.AMPMS,ft=angular.isDefined(i.padHours)?n.$parent.$eval(i.padHours):!0,b,k,c,l,h,d;n.tabindex=angular.isDefined(i.tabindex)?i.tabindex:0;t.removeAttr("tabindex");this.init=function(t,r){var h;s=t;s.$render=this.render;s.$formatters.unshift(function(n){return n?new Date(n):null});var u=r.eq(0),f=r.eq(1),o=r.eq(2),c=angular.isDefined(i.mousewheel)?n.$parent.$eval(i.mousewheel):e.mousewheel;c&&this.setupMousewheelEvents(u,f,o);h=angular.isDefined(i.arrowkeys)?n.$parent.$eval(i.arrowkeys):e.arrowkeys;h&&this.setupArrowkeyEvents(u,f,o);n.readonlyInput=angular.isDefined(i.readonlyInput)?n.$parent.$eval(i.readonlyInput):e.readonlyInput;this.setupInputEvents(u,f,o)};b=e.hourStep;i.hourStep&&a.push(n.$parent.$watch(r(i.hourStep),function(n){b=+n}));k=e.minuteStep;i.minuteStep&&a.push(n.$parent.$watch(r(i.minuteStep),function(n){k=+n}));a.push(n.$parent.$watch(r(i.min),function(n){var t=new Date(n);c=isNaN(t)?void 0:t}));a.push(n.$parent.$watch(r(i.max),function(n){var t=new Date(n);l=isNaN(t)?void 0:t}));h=!1;i.ngDisabled&&a.push(n.$parent.$watch(r(i.ngDisabled),function(n){h=n}));n.noIncrementHours=function(){var n=w(o,60*b);return h||n>l||o>n&&c>n};n.noDecrementHours=function(){var n=w(o,60*-b);return h||c>n||n>o&&n>l};n.noIncrementMinutes=function(){var n=w(o,k);return h||n>l||o>n&&c>n};n.noDecrementMinutes=function(){var n=w(o,-k);return h||c>n||n>o&&n>l};n.noIncrementSeconds=function(){var n=it(o,d);return h||n>l||o>n&&c>n};n.noDecrementSeconds=function(){var n=it(o,-d);return h||c>n||n>o&&n>l};n.noToggleMeridian=function(){return o.getHours()<12?h||w(o,720)>l:h||w(o,-720)<c};d=e.secondStep;i.secondStep&&a.push(n.$parent.$watch(r(i.secondStep),function(n){d=+n}));n.showSeconds=e.showSeconds;i.showSeconds&&a.push(n.$parent.$watch(r(i.showSeconds),function(t){n.showSeconds=!!t}));n.showMeridian=e.showMeridian;i.showMeridian&&a.push(n.$parent.$watch(r(i.showMeridian),function(t){if(n.showMeridian=!!t,s.$error.time){var i=nt(),r=tt();angular.isDefined(i)&&angular.isDefined(r)&&(o.setHours(i),g())}else rt()}));this.setupMousewheelEvents=function(t,i,r){var u=function(n){n.originalEvent&&(n=n.originalEvent);var t=n.wheelDelta?n.wheelDelta:-n.deltaY;return n.detail||t>0};t.bind("mousewheel wheel",function(t){h||n.$apply(u(t)?n.incrementHours():n.decrementHours());t.preventDefault()});i.bind("mousewheel wheel",function(t){h||n.$apply(u(t)?n.incrementMinutes():n.decrementMinutes());t.preventDefault()});r.bind("mousewheel wheel",function(t){h||n.$apply(u(t)?n.incrementSeconds():n.decrementSeconds());t.preventDefault()})};this.setupArrowkeyEvents=function(t,i,r){t.bind("keydown",function(t){h||(38===t.which?(t.preventDefault(),n.incrementHours(),n.$apply()):40===t.which&&(t.preventDefault(),n.decrementHours(),n.$apply()))});i.bind("keydown",function(t){h||(38===t.which?(t.preventDefault(),n.incrementMinutes(),n.$apply()):40===t.which&&(t.preventDefault(),n.decrementMinutes(),n.$apply()))});r.bind("keydown",function(t){h||(38===t.which?(t.preventDefault(),n.incrementSeconds(),n.$apply()):40===t.which&&(t.preventDefault(),n.decrementSeconds(),n.$apply()))})};this.setupInputEvents=function(t,i,r){if(n.readonlyInput)return n.updateHours=angular.noop,n.updateMinutes=angular.noop,void(n.updateSeconds=angular.noop);var u=function(t,i,r){s.$setViewValue(null);s.$setValidity("time",!1);angular.isDefined(t)&&(n.invalidHours=t);angular.isDefined(i)&&(n.invalidMinutes=i);angular.isDefined(r)&&(n.invalidSeconds=r)};n.updateHours=function(){var n=nt(),t=tt();s.$setDirty();angular.isDefined(n)&&angular.isDefined(t)?(o.setHours(n),o.setMinutes(t),c>o||o>l?u(!0):g("h")):u(!0)};t.bind("blur",function(){s.$setTouched();null===n.hours||""===n.hours?u(!0):!n.invalidHours&&n.hours<10&&n.$apply(function(){n.hours=p(n.hours,!ft)})});n.updateMinutes=function(){var n=tt(),t=nt();s.$setDirty();angular.isDefined(n)&&angular.isDefined(t)?(o.setHours(t),o.setMinutes(n),c>o||o>l?u(void 0,!0):g("m")):u(void 0,!0)};i.bind("blur",function(){s.$setTouched();null===n.minutes?u(void 0,!0):!n.invalidMinutes&&n.minutes<10&&n.$apply(function(){n.minutes=p(n.minutes)})});n.updateSeconds=function(){var n=et();s.$setDirty();angular.isDefined(n)?(o.setSeconds(n),g("s")):u(void 0,void 0,!0)};r.bind("blur",function(){!n.invalidSeconds&&n.seconds<10&&n.$apply(function(){n.seconds=p(n.seconds)})})};this.render=function(){var t=s.$viewValue;isNaN(t)?(s.$setValidity("time",!1),u.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(t&&(o=t),c>o||o>l?(s.$setValidity("time",!1),n.invalidHours=!0,n.invalidMinutes=!0):ut(),rt())};n.showSpinners=angular.isDefined(i.showSpinners)?n.$parent.$eval(i.showSpinners):e.showSpinners;n.incrementHours=function(){n.noIncrementHours()||y(3600*b)};n.decrementHours=function(){n.noDecrementHours()||y(3600*-b)};n.incrementMinutes=function(){n.noIncrementMinutes()||y(60*k)};n.decrementMinutes=function(){n.noDecrementMinutes()||y(60*-k)};n.incrementSeconds=function(){n.noIncrementSeconds()||y(d)};n.decrementSeconds=function(){n.noDecrementSeconds()||y(-d)};n.toggleMeridian=function(){var t=tt(),i=nt();n.noToggleMeridian()||(angular.isDefined(t)&&angular.isDefined(i)?y(720*(o.getHours()<12?60:-60)):n.meridian=n.meridian===v[0]?v[1]:v[0])};n.blur=function(){s.$setTouched()};n.$on("$destroy",function(){for(;a.length;)a.shift()()})}]).directive("uibTimepicker",["uibTimepickerConfig",function(n){return{require:["uibTimepicker","?^ngModel"],controller:"UibTimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(t,i){return i.templateUrl||n.templateUrl},link:function(n,t,i,r){var f=r[0],u=r[1];u&&f.init(u,t.find("input"))}}}]);angular.module("ui.bootstrap.typeahead",["ui.bootstrap.debounce","ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(n){var t=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(i){var r=i.match(t);if(!r)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+i+'".');return{itemName:r[3],source:n(r[4]),viewMapper:n(r[2]||r[1]),modelMapper:n(r[1])}}}}]).controller("UibTypeaheadController",["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$$debounce","$uibPosition","uibTypeaheadParser",function(n,t,i,r,u,f,e,o,s,h,c,l,a){function rt(){v.moveInProgress||(v.moveInProgress=!0,v.$digest());ti()}function bt(){v.position=nt?l.offset(t):l.position(t);v.position.top+=t.prop("offsetHeight")}var y,ut,ri=[9,13,27,38,40],d=n.$eval(i.typeaheadMinLength),at,g,ct,tt,w,b,ni,lt,ti,yt,ii,pt,wt,it;d||0===d||(d=1);n.$watch(i.typeaheadMinLength,function(n){d=n||0===n?n:1});at=n.$eval(i.typeaheadWaitMs)||0;g=n.$eval(i.typeaheadEditable)!==!1;n.$watch(i.typeaheadEditable,function(n){g=n!==!1});var ft,et,ot=u(i.typeaheadLoading).assign||angular.noop,ui=u(i.typeaheadOnSelect),fi=angular.isDefined(i.typeaheadSelectOnBlur)?n.$eval(i.typeaheadSelectOnBlur):!1,st=u(i.typeaheadNoResults).assign||angular.noop,kt=i.typeaheadInputFormatter?u(i.typeaheadInputFormatter):void 0,nt=i.typeaheadAppendToBody?n.$eval(i.typeaheadAppendToBody):!1,vt=i.typeaheadAppendTo?n.$eval(i.typeaheadAppendTo):null,ei=n.$eval(i.typeaheadFocusFirst)!==!1,oi=i.typeaheadSelectOnExact?n.$eval(i.typeaheadSelectOnExact):!1,si=u(i.typeaheadIsOpen).assign||angular.noop,ht=n.$eval(i.typeaheadShowHint)||!1,dt=u(i.ngModel),hi=u(i.ngModel+"($$$p)"),ci=function(t,i){return angular.isFunction(dt(n))&&ut&&ut.$options&&ut.$options.getterSetter?hi(t,{$$$p:i}):dt.assign(t,i)},p=a.parse(i.uibTypeahead),v=n.$new(),li=n.$on("$destroy",function(){v.$destroy()});v.$on("$destroy",li);ct="typeahead-"+v.$id+"-"+Math.floor(1e4*Math.random());t.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":ct});ht&&(tt=angular.element("<div><\/div>"),tt.css("position","relative"),t.after(tt),w=t.clone(),w.attr("placeholder",""),w.attr("tabindex","-1"),w.val(""),w.css({position:"absolute",top:"0px",left:"0px","border-color":"transparent","box-shadow":"none",opacity:1,background:"none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 255, 255)",color:"#999"}),t.css({position:"relative","vertical-align":"top","background-color":"transparent"}),tt.append(w),w.after(t));b=angular.element("<div uib-typeahead-popup><\/div>");b.attr({id:ct,matches:"matches",active:"activeIdx",select:"select(activeIdx, evt)","move-in-progress":"moveInProgress",query:"query",position:"position","assign-is-open":"assignIsOpen(isOpen)",debounce:"debounceUpdate"});angular.isDefined(i.typeaheadTemplateUrl)&&b.attr("template-url",i.typeaheadTemplateUrl);angular.isDefined(i.typeaheadPopupTemplateUrl)&&b.attr("popup-template-url",i.typeaheadPopupTemplateUrl);var ai=function(){ht&&w.val("")},k=function(){v.matches=[];v.activeIdx=-1;t.attr("aria-expanded",!1);ai()},gt=function(n){return ct+"-option-"+n};v.$watch("activeIdx",function(n){0>n?t.removeAttr("aria-activedescendant"):t.attr("aria-activedescendant",gt(n))});ni=function(n,t){return v.matches.length>t&&n?n.toUpperCase()===v.matches[t].label.toUpperCase():!1};lt=function(i,r){var u={$viewValue:i};ot(n,!0);st(n,!1);f.when(p.source(n,u)).then(function(f){var s=i===y.$viewValue,e,o;if(s&&ft)if(f&&f.length>0){for(v.activeIdx=ei?0:-1,st(n,!1),v.matches.length=0,e=0;e<f.length;e++)u[p.itemName]=f[e],v.matches.push({id:gt(e),label:p.viewMapper(v,u),model:f[e]});(v.query=i,bt(),t.attr("aria-expanded",!0),oi&&1===v.matches.length&&ni(i,0)&&(angular.isNumber(v.debounceUpdate)||angular.isObject(v.debounceUpdate)?c(function(){v.select(0,r)},angular.isNumber(v.debounceUpdate)?v.debounceUpdate:v.debounceUpdate["default"]):v.select(0,r)),ht)&&(o=v.matches[0].label,angular.isString(i)&&i.length>0&&o.slice(0,i.length).toUpperCase()===i.toUpperCase()?w.val(i+o.slice(i.length)):w.val(""))}else k(),st(n,!0);s&&ot(n,!1)},function(){k();ot(n,!1);st(n,!0)})};nt&&(angular.element(s).on("resize",rt),o.find("body").on("scroll",rt));ti=c(function(){v.matches.length&&bt();v.moveInProgress=!1},200);v.moveInProgress=!1;v.query=void 0;ii=function(n){yt=e(function(){lt(n)},at)};pt=function(){yt&&e.cancel(yt)};k();v.assignIsOpen=function(t){si(n,t)};v.select=function(r,u){var f,s,o={};et=!0;o[p.itemName]=s=v.matches[r].model;f=p.modelMapper(n,o);ci(n,f);y.$setValidity("editable",!0);y.$setValidity("parse",!0);ui(n,{$item:s,$model:f,$label:p.viewMapper(n,o),$event:u});k();v.$eval(i.typeaheadFocusOnSelect)!==!1&&e(function(){t[0].focus()},0,!1)};t.on("keydown",function(t){if(0!==v.matches.length&&-1!==ri.indexOf(t.which)){if(-1===v.activeIdx&&(9===t.which||13===t.which)||9===t.which&&t.shiftKey)return k(),void v.$digest();t.preventDefault();var i;switch(t.which){case 9:case 13:v.$apply(function(){angular.isNumber(v.debounceUpdate)||angular.isObject(v.debounceUpdate)?c(function(){v.select(v.activeIdx,t)},angular.isNumber(v.debounceUpdate)?v.debounceUpdate:v.debounceUpdate["default"]):v.select(v.activeIdx,t)});break;case 27:t.stopPropagation();k();n.$digest();break;case 38:v.activeIdx=(v.activeIdx>0?v.activeIdx:v.matches.length)-1;v.$digest();i=b.find("li")[v.activeIdx];i.parentNode.scrollTop=i.offsetTop;break;case 40:v.activeIdx=(v.activeIdx+1)%v.matches.length;v.$digest();i=b.find("li")[v.activeIdx];i.parentNode.scrollTop=i.offsetTop}}});t.bind("focus",function(n){ft=!0;0!==d||y.$viewValue||e(function(){lt(y.$viewValue,n)},0)});t.bind("blur",function(n){fi&&v.matches.length&&-1!==v.activeIdx&&!et&&(et=!0,v.$apply(function(){angular.isObject(v.debounceUpdate)&&angular.isNumber(v.debounceUpdate.blur)?c(function(){v.select(v.activeIdx,n)},v.debounceUpdate.blur):v.select(v.activeIdx,n)}));!g&&y.$error.editable&&(y.$viewValue="",y.$setValidity("editable",!0),y.$setValidity("parse",!0),t.val(""));ft=!1;et=!1});wt=function(i){t[0]!==i.target&&3!==i.which&&0!==v.matches.length&&(k(),h.$$phase||n.$digest())};o.on("click",wt);n.$on("$destroy",function(){o.off("click",wt);(nt||vt)&&it.remove();nt&&(angular.element(s).off("resize",rt),o.find("body").off("scroll",rt));b.remove();ht&&tt.remove()});it=r(b)(v);nt?o.find("body").append(it):vt?angular.element(vt).eq(0).append(it):t.after(it);this.init=function(t,i){y=t;ut=i;v.debounceUpdate=y.$options&&u(y.$options.debounce)(n);y.$parsers.unshift(function(t){return ft=!0,0===d||t&&t.length>=d?at>0?(pt(),ii(t)):lt(t):(ot(n,!1),pt(),k()),g?t:t?void y.$setValidity("editable",!1):(y.$setValidity("editable",!0),null)});y.$formatters.push(function(t){var r,u,i={};return g||y.$setValidity("editable",!0),kt?(i.$model=t,kt(n,i)):(i[p.itemName]=t,r=p.viewMapper(n,i),i[p.itemName]=void 0,u=p.viewMapper(n,i),r!==u?r:t)})}}]).directive("uibTypeahead",function(){return{controller:"UibTypeaheadController",require:["ngModel","^?ngModelOptions","uibTypeahead"],link:function(n,t,i,r){r[2].init(r[0],r[1])}}}).directive("uibTypeaheadPopup",["$$debounce",function(n){return{scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&",assignIsOpen:"&",debounce:"&"},replace:!0,templateUrl:function(n,t){return t.popupTemplateUrl||"uib/template/typeahead/typeahead-popup.html"},link:function(t,i,r){t.templateUrl=r.templateUrl;t.isOpen=function(){var n=t.matches.length>0;return t.assignIsOpen({isOpen:n}),n};t.isActive=function(n){return t.active===n};t.selectActive=function(n){t.active=n};t.selectMatch=function(i,r){var u=t.debounce();angular.isNumber(u)||angular.isObject(u)?n(function(){t.select({activeIdx:i,evt:r})},angular.isNumber(u)?u:u["default"]):t.select({activeIdx:i,evt:r})}}}}]).directive("uibTypeaheadMatch",["$templateRequest","$compile","$parse",function(n,t,i){return{scope:{index:"=",match:"=",query:"="},link:function(r,u,f){var e=i(f.templateUrl)(r.$parent)||"uib/template/typeahead/typeahead-match.html";n(e).then(function(n){var i=angular.element(n.trim());u.replaceWith(i);t(i)(r)})}}}]).filter("uibTypeaheadHighlight",["$sce","$injector","$log",function(n,t,i){function u(n){return n.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function f(n){return/<.*>/g.test(n)}var r;return r=t.has("$sanitize"),function(t,e){return!r&&f(t)&&i.warn("Unsafe use of typeahead please use ngSanitize"),t=e?(""+t).replace(new RegExp(u(e),"gi"),"<strong>$&<\/strong>"):t,r||(t=n.trustAsHtml(t)),t}}]);angular.module("uib/template/accordion/accordion-group.html",[]).run(["$templateCache",function(n){n.put("uib/template/accordion/accordion-group.html",'<div class="panel" ng-class="panelClass || \'panel-default\'">\n  <div role="tab" id="{{::headingId}}" aria-selected="{{isOpen}}" class="panel-heading" ng-keypress="toggleOpen($event)">\n    <h4 class="panel-title">\n      <a role="button" data-toggle="collapse" href aria-expanded="{{isOpen}}" aria-controls="{{::panelId}}" tabindex="0" class="accordion-toggle" ng-click="toggleOpen()" uib-accordion-transclude="heading"><span uib-accordion-header ng-class="{\'text-muted\': isDisabled}">{{heading}}<\/span><\/a>\n    <\/h4>\n  <\/div>\n  <div id="{{::panelId}}" aria-labelledby="{{::headingId}}" aria-hidden="{{!isOpen}}" role="tabpanel" class="panel-collapse collapse" uib-collapse="!isOpen">\n    <div class="panel-body" ng-transclude><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/accordion/accordion.html",[]).run(["$templateCache",function(n){n.put("uib/template/accordion/accordion.html",'<div role="tablist" class="panel-group" ng-transclude><\/div>')}]);angular.module("uib/template/alert/alert.html",[]).run(["$templateCache",function(n){n.put("uib/template/alert/alert.html",'<div class="alert" ng-class="[\'alert-\' + (type || \'warning\'), closeable ? \'alert-dismissible\' : null]" role="alert">\n    <button ng-show="closeable" type="button" class="close" ng-click="close({$event: $event})">\n        <span aria-hidden="true">&times;<\/span>\n        <span class="sr-only">Close<\/span>\n    <\/button>\n    <div ng-transclude><\/div>\n<\/div>\n')}]);angular.module("uib/template/carousel/carousel.html",[]).run(["$templateCache",function(n){n.put("uib/template/carousel/carousel.html",'<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n  <div class="carousel-inner" ng-transclude><\/div>\n  <a role="button" href class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1">\n    <span aria-hidden="true" class="glyphicon glyphicon-chevron-left"><\/span>\n    <span class="sr-only">previous<\/span>\n  <\/a>\n  <a role="button" href class="right carousel-control" ng-click="next()" ng-show="slides.length > 1">\n    <span aria-hidden="true" class="glyphicon glyphicon-chevron-right"><\/span>\n    <span class="sr-only">next<\/span>\n  <\/a>\n  <ol class="carousel-indicators" ng-show="slides.length > 1">\n    <li ng-repeat="slide in slides | orderBy:indexOfSlide track by $index" ng-class="{ active: isActive(slide) }" ng-click="select(slide)">\n      <span class="sr-only">slide {{ $index + 1 }} of {{ slides.length }}<span ng-if="isActive(slide)">, currently active<\/span><\/span>\n    <\/li>\n  <\/ol>\n<\/div>\n')}]);angular.module("uib/template/carousel/slide.html",[]).run(["$templateCache",function(n){n.put("uib/template/carousel/slide.html",'<div ng-class="{\n    \'active\': active\n  }" class="item text-center" ng-transclude><\/div>\n')}]);angular.module("uib/template/datepicker/datepicker.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/datepicker.html",'<div class="uib-datepicker" ng-switch="datepickerMode" role="application" ng-keydown="keydown($event)">\n  <uib-daypicker ng-switch-when="day" tabindex="0"><\/uib-daypicker>\n  <uib-monthpicker ng-switch-when="month" tabindex="0"><\/uib-monthpicker>\n  <uib-yearpicker ng-switch-when="year" tabindex="0"><\/uib-yearpicker>\n<\/div>\n')}]);angular.module("uib/template/datepicker/day.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/day.html",'<table class="uib-daypicker" role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th colspan="{{::5 + showWeeks}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n    <tr>\n      <th ng-if="showWeeks" class="text-center"><\/th>\n      <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{{::label.full}}">{{::label.abbr}}<\/small><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-weeks" ng-repeat="row in rows track by $index">\n      <td ng-if="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}<\/em><\/td>\n      <td ng-repeat="dt in row" class="uib-day text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default btn-sm"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/datepicker/month.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/month.html",'<table class="uib-monthpicker" role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-months" ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row" class="uib-month text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/datepicker/popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/popup.html",'<div>\n  <ul class="uib-datepicker-popup dropdown-menu uib-position-measure" dropdown-nested ng-if="isOpen" ng-keydown="keydown($event)" ng-click="$event.stopPropagation()">\n    <li ng-transclude><\/li>\n    <li ng-if="showButtonBar" class="uib-button-bar">\n      <span class="btn-group pull-left">\n        <button type="button" class="btn btn-sm btn-info uib-datepicker-current" ng-click="select(\'today\', $event)" ng-disabled="isDisabled(\'today\')">{{ getText(\'current\') }}<\/button>\n        <button type="button" class="btn btn-sm btn-danger uib-clear" ng-click="select(null, $event)">{{ getText(\'clear\') }}<\/button>\n      <\/span>\n      <button type="button" class="btn btn-sm btn-success pull-right uib-close" ng-click="close($event)">{{ getText(\'close\') }}<\/button>\n    <\/li>\n  <\/ul>\n<\/div>\n')}]);angular.module("uib/template/datepicker/year.html",[]).run(["$templateCache",function(n){n.put("uib/template/datepicker/year.html",'<table class="uib-yearpicker" role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n  <thead>\n    <tr>\n      <th><button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"><\/i><\/button><\/th>\n      <th colspan="{{::columns - 2}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{{title}}<\/strong><\/button><\/th>\n      <th><button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"><\/i><\/button><\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class="uib-years" ng-repeat="row in rows track by $index">\n      <td ng-repeat="dt in row" class="uib-year text-center" role="gridcell"\n        id="{{::dt.uid}}"\n        ng-class="::dt.customClass">\n        <button type="button" class="btn btn-default"\n          uib-is-class="\n            \'btn-info\' for selectedDt,\n            \'active\' for activeDt\n            on dt"\n          ng-click="select(dt.date)"\n          ng-disabled="::dt.disabled"\n          tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}<\/span><\/button>\n      <\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/modal/backdrop.html",[]).run(["$templateCache",function(n){n.put("uib/template/modal/backdrop.html",'<div class="modal-backdrop"\n     uib-modal-animation-class="fade"\n     modal-in-class="in"\n     ng-style="{\'z-index\': 1040 + (index && 1 || 0) + index*10}"\n><\/div>\n')}]);angular.module("uib/template/modal/window.html",[]).run(["$templateCache",function(n){n.put("uib/template/modal/window.html",'<div modal-render="{{$isRendered}}" tabindex="-1" role="dialog" class="modal"\n    uib-modal-animation-class="fade"\n    modal-in-class="in"\n    ng-style="{\'z-index\': 1050 + index*10, display: \'block\'}">\n    <div class="modal-dialog {{size ? \'modal-\' + size : \'\'}}"><div class="modal-content" uib-modal-transclude><\/div><\/div>\n<\/div>\n')}]);angular.module("uib/template/pager/pager.html",[]).run(["$templateCache",function(n){n.put("uib/template/pager/pager.html",'<ul class="pager">\n  <li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}<\/a><\/li>\n  <li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}<\/a><\/li>\n<\/ul>\n')}]);angular.module("uib/template/pagination/pager.html",[]).run(["$templateCache",function(n){n.put("uib/template/pagination/pager.html",'<ul class="pager">\n  <li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}<\/a><\/li>\n  <li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}<\/a><\/li>\n<\/ul>\n')}]);angular.module("uib/template/pagination/pagination.html",[]).run(["$templateCache",function(n){n.put("uib/template/pagination/pagination.html",'<ul class="pagination">\n  <li ng-if="::boundaryLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-first"><a href ng-click="selectPage(1, $event)">{{::getText(\'first\')}}<\/a><\/li>\n  <li ng-if="::directionLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-prev"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}<\/a><\/li>\n  <li ng-repeat="page in pages track by $index" ng-class="{active: page.active,disabled: ngDisabled&&!page.active}" class="pagination-page"><a href ng-click="selectPage(page.number, $event)">{{page.text}}<\/a><\/li>\n  <li ng-if="::directionLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-next"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}<\/a><\/li>\n  <li ng-if="::boundaryLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-last"><a href ng-click="selectPage(totalPages, $event)">{{::getText(\'last\')}}<\/a><\/li>\n<\/ul>\n')}]);angular.module("uib/template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-html-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner" ng-bind-html="contentExp()"><\/div>\n<\/div>\n')}]);angular.module("uib/template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner" ng-bind="content"><\/div>\n<\/div>\n')}]);angular.module("uib/template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/tooltip/tooltip-template-popup.html",'<div class="tooltip"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="tooltip-arrow"><\/div>\n  <div class="tooltip-inner"\n    uib-tooltip-template-transclude="contentExp()"\n    tooltip-template-transclude-scope="originScope()"><\/div>\n<\/div>\n')}]);angular.module("uib/template/popover/popover-html.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover-html.html",'<div class="popover"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="arrow"><\/div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-if="title"><\/h3>\n      <div class="popover-content" ng-bind-html="contentExp()"><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/popover/popover-template.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover-template.html",'<div class="popover"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="arrow"><\/div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-if="title"><\/h3>\n      <div class="popover-content"\n        uib-tooltip-template-transclude="contentExp()"\n        tooltip-template-transclude-scope="originScope()"><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/popover/popover.html",[]).run(["$templateCache",function(n){n.put("uib/template/popover/popover.html",'<div class="popover"\n  tooltip-animation-class="fade"\n  uib-tooltip-classes\n  ng-class="{ in: isOpen() }">\n  <div class="arrow"><\/div>\n\n  <div class="popover-inner">\n      <h3 class="popover-title" ng-bind="title" ng-if="title"><\/h3>\n      <div class="popover-content" ng-bind="content"><\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/progressbar/bar.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" ng-transclude><\/div>\n')}]);angular.module("uib/template/progressbar/progress.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/progress.html",'<div class="progress" ng-transclude aria-labelledby="{{::title}}"><\/div>')}]);angular.module("uib/template/progressbar/progressbar.html",[]).run(["$templateCache",function(n){n.put("uib/template/progressbar/progressbar.html",'<div class="progress">\n  <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" ng-transclude><\/div>\n<\/div>\n')}]);angular.module("uib/template/rating/rating.html",[]).run(["$templateCache",function(n){n.put("uib/template/rating/rating.html",'<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}" aria-valuetext="{{title}}">\n    <span ng-repeat-start="r in range track by $index" class="sr-only">({{ $index < value ? \'*\' : \' \' }})<\/span>\n    <i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')" ng-attr-title="{{r.title}}"><\/i>\n<\/span>\n')}]);angular.module("uib/template/tabs/tab.html",[]).run(["$templateCache",function(n){n.put("uib/template/tabs/tab.html",'<li ng-class="[{active: active, disabled: disabled}, classes]" class="uib-tab nav-item">\n  <a href ng-click="select($event)" class="nav-link" uib-tab-heading-transclude>{{heading}}<\/a>\n<\/li>\n')}]);angular.module("uib/template/tabs/tabset.html",[]).run(["$templateCache",function(n){n.put("uib/template/tabs/tabset.html",'<div>\n  <ul class="nav nav-{{tabset.type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude><\/ul>\n  <div class="tab-content">\n    <div class="tab-pane"\n         ng-repeat="tab in tabset.tabs"\n         ng-class="{active: tabset.active === tab.index}"\n         uib-tab-content-transclude="tab">\n    <\/div>\n  <\/div>\n<\/div>\n')}]);angular.module("uib/template/timepicker/timepicker.html",[]).run(["$templateCache",function(n){n.put("uib/template/timepicker/timepicker.html",'<table class="uib-timepicker">\n  <tbody>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td class="uib-increment hours"><a ng-click="incrementHours()" ng-class="{disabled: noIncrementHours()}" class="btn btn-link" ng-disabled="noIncrementHours()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td class="uib-increment minutes"><a ng-click="incrementMinutes()" ng-class="{disabled: noIncrementMinutes()}" class="btn btn-link" ng-disabled="noIncrementMinutes()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td ng-show="showSeconds">&nbsp;<\/td>\n      <td ng-show="showSeconds" class="uib-increment seconds"><a ng-click="incrementSeconds()" ng-class="{disabled: noIncrementSeconds()}" class="btn btn-link" ng-disabled="noIncrementSeconds()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-up"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n    <tr>\n      <td class="form-group uib-time hours" ng-class="{\'has-error\': invalidHours}">\n        <input style="width:50px;" type="text" placeholder="HH" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementHours()" ng-blur="blur()">\n      <\/td>\n      <td class="uib-separator">:<\/td>\n      <td class="form-group uib-time minutes" ng-class="{\'has-error\': invalidMinutes}">\n        <input style="width:50px;" type="text" placeholder="MM" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementMinutes()" ng-blur="blur()">\n      <\/td>\n      <td ng-show="showSeconds" class="uib-separator">:<\/td>\n      <td class="form-group uib-time seconds" ng-class="{\'has-error\': invalidSeconds}" ng-show="showSeconds">\n        <input style="width:50px;" type="text" placeholder="SS" ng-model="seconds" ng-change="updateSeconds()" class="form-control text-center" ng-readonly="readonlyInput" maxlength="2" tabindex="{{::tabindex}}" ng-disabled="noIncrementSeconds()" ng-blur="blur()">\n      <\/td>\n      <td ng-show="showMeridian" class="uib-time am-pm"><button type="button" ng-class="{disabled: noToggleMeridian()}" class="btn btn-default text-center" ng-click="toggleMeridian()" ng-disabled="noToggleMeridian()" tabindex="{{::tabindex}}">{{meridian}}<\/button><\/td>\n    <\/tr>\n    <tr class="text-center" ng-show="::showSpinners">\n      <td class="uib-decrement hours"><a ng-click="decrementHours()" ng-class="{disabled: noDecrementHours()}" class="btn btn-link" ng-disabled="noDecrementHours()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td>&nbsp;<\/td>\n      <td class="uib-decrement minutes"><a ng-click="decrementMinutes()" ng-class="{disabled: noDecrementMinutes()}" class="btn btn-link" ng-disabled="noDecrementMinutes()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td ng-show="showSeconds">&nbsp;<\/td>\n      <td ng-show="showSeconds" class="uib-decrement seconds"><a ng-click="decrementSeconds()" ng-class="{disabled: noDecrementSeconds()}" class="btn btn-link" ng-disabled="noDecrementSeconds()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-down"><\/span><\/a><\/td>\n      <td ng-show="showMeridian"><\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n')}]);angular.module("uib/template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(n){n.put("uib/template/typeahead/typeahead-match.html",'<a href\n   tabindex="-1"\n   ng-bind-html="match.label | uibTypeaheadHighlight:query"\n   ng-attr-title="{{match.label}}"><\/a>\n')}]);angular.module("uib/template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(n){n.put("uib/template/typeahead/typeahead-popup.html",'<ul class="dropdown-menu" ng-show="isOpen() && !moveInProgress" ng-style="{top: position().top+\'px\', left: position().left+\'px\'}" role="listbox" aria-hidden="{{!isOpen()}}">\n    <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index, $event)" role="option" id="{{::match.id}}">\n        <div uib-typeahead-match index="$index" match="match" query="query" template-url="templateUrl"><\/div>\n    <\/li>\n<\/ul>\n')}]);angular.module("ui.bootstrap.carousel").run(function(){angular.$$csp().noInlineStyle||angular.$$uibCarouselCss||angular.element(document).find("head").prepend('<style type="text/css">.ng-animate.item:not(.left):not(.right){-webkit-transition:0s ease-in-out left;transition:0s ease-in-out left}<\/style>');angular.$$uibCarouselCss=!0});angular.module("ui.bootstrap.position").run(function(){angular.$$csp().noInlineStyle||angular.$$uibPositionCss||angular.element(document).find("head").prepend('<style type="text/css">.uib-position-measure{display:block !important;visibility:hidden !important;position:absolute !important;top:-9999px !important;left:-9999px !important;}.uib-position-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll;}<\/style>');angular.$$uibPositionCss=!0});angular.module("ui.bootstrap.datepicker").run(function(){angular.$$csp().noInlineStyle||angular.$$uibDatepickerCss||angular.element(document).find("head").prepend('<style type="text/css">.uib-datepicker .uib-title{width:100%;}.uib-day button,.uib-month button,.uib-year button{min-width:100%;}.uib-datepicker-popup.dropdown-menu{display:block;float:none;margin:0;}.uib-button-bar{padding:10px 9px 2px;}.uib-left,.uib-right{width:100%}<\/style>');angular.$$uibDatepickerCss=!0});angular.module("ui.bootstrap.tooltip").run(function(){angular.$$csp().noInlineStyle||angular.$$uibTooltipCss||angular.element(document).find("head").prepend('<style type="text/css">[uib-tooltip-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-popup].tooltip.right-bottom > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-html-popup].tooltip.right-bottom > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.top-left > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.top-right > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.bottom-left > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.bottom-right > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.left-top > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.left-bottom > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.right-top > .tooltip-arrow,[uib-tooltip-template-popup].tooltip.right-bottom > .tooltip-arrow,[uib-popover-popup].popover.top-left > .arrow,[uib-popover-popup].popover.top-right > .arrow,[uib-popover-popup].popover.bottom-left > .arrow,[uib-popover-popup].popover.bottom-right > .arrow,[uib-popover-popup].popover.left-top > .arrow,[uib-popover-popup].popover.left-bottom > .arrow,[uib-popover-popup].popover.right-top > .arrow,[uib-popover-popup].popover.right-bottom > .arrow,[uib-popover-html-popup].popover.top-left > .arrow,[uib-popover-html-popup].popover.top-right > .arrow,[uib-popover-html-popup].popover.bottom-left > .arrow,[uib-popover-html-popup].popover.bottom-right > .arrow,[uib-popover-html-popup].popover.left-top > .arrow,[uib-popover-html-popup].popover.left-bottom > .arrow,[uib-popover-html-popup].popover.right-top > .arrow,[uib-popover-html-popup].popover.right-bottom > .arrow,[uib-popover-template-popup].popover.top-left > .arrow,[uib-popover-template-popup].popover.top-right > .arrow,[uib-popover-template-popup].popover.bottom-left > .arrow,[uib-popover-template-popup].popover.bottom-right > .arrow,[uib-popover-template-popup].popover.left-top > .arrow,[uib-popover-template-popup].popover.left-bottom > .arrow,[uib-popover-template-popup].popover.right-top > .arrow,[uib-popover-template-popup].popover.right-bottom > .arrow{top:auto;bottom:auto;left:auto;right:auto;margin:0;}[uib-popover-popup].popover,[uib-popover-html-popup].popover,[uib-popover-template-popup].popover{display:block !important;}<\/style>');angular.$$uibTooltipCss=!0});angular.module("ui.bootstrap.timepicker").run(function(){angular.$$csp().noInlineStyle||angular.$$uibTimepickerCss||angular.element(document).find("head").prepend('<style type="text/css">.uib-time input{width:50px;}<\/style>');angular.$$uibTimepickerCss=!0});angular.module("ui.bootstrap.typeahead").run(function(){angular.$$csp().noInlineStyle||angular.$$uibTypeaheadCss||angular.element(document).find("head").prepend('<style type="text/css">[uib-typeahead-popup].dropdown-menu{display:block;}<\/style>');angular.$$uibTypeaheadCss=!0});!function(n,t,i){"use strict";function a(n,i){return t.equals(n.length,i.length)?n>i:n.length>i.length}function f(n){var t=n.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/);if(!t||4!==t.length)throw new Error("Invalid state ref '"+n+"'");return{state:t[1],paramExpr:t[3]||null}}function r(n,t,r,u){var f=h[n];f!==i&&f();f=t.$on(r,u);h[n]=f}function v(){var n={prefixStateName:null,template:"bootstrap3",templateUrl:null,templateLast:"default",templateLastUrl:null,includeAbstract:!1};this.setOptions=function(i){t.extend(n,i)};this.$get=["$state","$stateParams","$rootScope",function(t,u,e){var o=e;r("$Breadcrumb.$viewContentLoaded",e,"$viewContentLoaded",function(n){!n.targetScope.ncyBreadcrumbIgnore&&a(n.targetScope.$id,o.$id)&&(o=n.targetScope)});var h=function(n){var t=n.parent||(/^(.+)\.[^.]+$/.exec(n.name)||[])[1],i="object"==typeof t;return i?t.name:t},s=function(i,r){for(var e,c,s=f(r),l=!1,a=!1,h=0,v=i.length;v>h;h+=1)if(i[h].name===s.state)return;e=t.get(s.state);e.ncyBreadcrumb&&(e.ncyBreadcrumb.force&&(l=!0),e.ncyBreadcrumb.skip&&(a=!0));e.abstract&&!n.includeAbstract&&!l||a||(s.paramExpr&&(c=o.$eval(s.paramExpr)),e.ncyBreadcrumbLink=t.href(s.state,c||u||{}),e.ncyBreadcrumbStateRef=r,i.unshift(e))},c=function(n){var e=f(n),i=t.get(e.state),u,r;return i.ncyBreadcrumb&&i.ncyBreadcrumb.parent&&(u="function"==typeof i.ncyBreadcrumb.parent,r=u?i.ncyBreadcrumb.parent(o):i.ncyBreadcrumb.parent,r)?r:h(i)};return{getTemplate:function(t){return n.templateUrl?null:t[n.template]?t[n.template]:n.template},getTemplateUrl:function(){return n.templateUrl},getTemplateLast:function(t){return n.templateLastUrl?null:t[n.templateLast]?t[n.templateLast]:n.templateLast},getTemplateLastUrl:function(){return n.templateLastUrl},getStatesChain:function(i){for(var r=[],u=t.$current.self.name;u;u=c(u))if(s(r,u),i&&r.length)return r;return n.prefixStateName&&s(r,n.prefixStateName),r},getLastStep:function(){var n=this.getStatesChain(!0);return n.length?n[0]:i},$getLastViewScope:function(){return o}}}]}function e(n,i,f){return{restrict:"AE",replace:!0,scope:{},template:i.getTemplate({bootstrap2:'<ul class="breadcrumb"><li ng-repeat="step in steps" ng-switch="$last || !!step.abstract" ng-class="{active: $last}"><a ng-switch-when="false" href="{{step.ncyBreadcrumbLink}}">{{step.ncyBreadcrumbLabel}}<\/a><span ng-switch-when="true">{{step.ncyBreadcrumbLabel}}<\/span><span class="divider" ng-hide="$last">/<\/span><\/li><\/ul>',bootstrap3:'<ol class="breadcrumb"><li ng-repeat="step in steps" ng-class="{active: $last}" ng-switch="$last || !!step.abstract"><a ng-switch-when="false" href="{{step.ncyBreadcrumbLink}}">{{step.ncyBreadcrumbLabel}}<\/a><span ng-switch-when="true">{{step.ncyBreadcrumbLabel}}<\/span><\/li><\/ol>'}),templateUrl:i.getTemplateUrl(),link:{post:function(e){var o=[],s=function(){u(o);o=[];var r=i.$getLastViewScope();e.steps=i.getStatesChain();t.forEach(e.steps,function(t){if(t.ncyBreadcrumb&&t.ncyBreadcrumb.label){var i=n(t.ncyBreadcrumb.label);t.ncyBreadcrumbLabel=i(r);l(o,i,r,t)}else t.ncyBreadcrumbLabel=t.name})};r("BreadcrumbDirective.$viewContentLoaded",f,"$viewContentLoaded",function(n){n.targetScope.ncyBreadcrumbIgnore||s()});s()}}}}function o(n,t,i){return{restrict:"A",scope:{},template:t.getTemplateLast({"default":"{{ncyBreadcrumbLabel}}"}),templateUrl:t.getTemplateLastUrl(),compile:function(f,e){var o=f.attr(e.$attr.ncyBreadcrumbLast);return o&&f.html(o),{post:function(f){var e=[],o=function(){var r,i,o;u(e);e=[];r=t.$getLastViewScope();i=t.getLastStep();i&&((f.ncyBreadcrumbLink=i.ncyBreadcrumbLink,i.ncyBreadcrumb&&i.ncyBreadcrumb.label)?(o=n(i.ncyBreadcrumb.label),f.ncyBreadcrumbLabel=o(r),l(e,o,r,f)):f.ncyBreadcrumbLabel=i.name)};r("BreadcrumbLastDirective.$viewContentLoaded",i,"$viewContentLoaded",function(n){n.targetScope.ncyBreadcrumbIgnore||o()});o()}}}}}function s(n,i,f){return{restrict:"A",scope:{},template:"{{ncyBreadcrumbChain}}",compile:function(e,o){var s=e.attr(o.$attr.ncyBreadcrumbText),h;return s&&e.html(s),h=e.attr(o.$attr.ncyBreadcrumbTextSeparator)||" / ",{post:function(e){var o=[],l=function(n,i,r){t.forEach(c(i),function(t){var i=r.$watch(t,function(n,t){n!==t&&s()});n.push(i)})},s=function(){u(o);o=[];var f=i.$getLastViewScope(),s=i.getStatesChain(),r=[];t.forEach(s,function(t){if(t.ncyBreadcrumb&&t.ncyBreadcrumb.label){var i=n(t.ncyBreadcrumb.label);r.push(i(f));l(o,i,f)}else r.push(t.name)});e.ncyBreadcrumbChain=r.join(h)};r("BreadcrumbTextDirective.$viewContentLoaded",f,"$viewContentLoaded",function(n){n.targetScope.ncyBreadcrumbIgnore||s()});s()}}}}}var h={},c=function(n){if(n.expressions)return n.expressions;var i=[];return t.forEach(n.parts,function(n){t.isFunction(n)&&i.push(n.exp)}),i},l=function(n,i,r,u){t.forEach(c(i),function(t){var f=r.$watch(t,function(){u.ncyBreadcrumbLabel=i(r)});n.push(f)})},u=function(n){t.forEach(n,function(n){n()})};e.$inject=["$interpolate","$breadcrumb","$rootScope"];o.$inject=["$interpolate","$breadcrumb","$rootScope"];s.$inject=["$interpolate","$breadcrumb","$rootScope"];t.module("ncy-angular-breadcrumb",["ui.router.state"]).provider("$breadcrumb",v).directive("ncyBreadcrumb",e).directive("ncyBreadcrumbLast",o).directive("ncyBreadcrumbText",s)}(window,window.angular);!function e(n,t,i){function r(u,e){var s,h,o;if(!t[u]){if(!n[u]){if(s="function"==typeof require&&require,!e&&s)return s(u,!0);if(f)return f(u,!0);h=new Error("Cannot find module '"+u+"'");throw h.code="MODULE_NOT_FOUND",h;}o=t[u]={exports:{}};n[u][0].call(o.exports,function(t){var i=n[u][1][t];return r(i?i:t)},o,o.exports,e,n,t,i)}return t[u].exports}for(var f="function"==typeof require&&require,u=0;u<i.length;u++)r(i[u]);return r}({1:[function(n){angular.module("nemLogging",[]);angular.module("nemLogging").provider("nemDebug",function(){var t=null;return t=n("debug"),this.$get=function(){return t},this.debug=t,this});var t=function(n,t){return function(){return n.apply(t,arguments)}},i=[].slice;angular.module("nemLogging").provider("nemSimpleLogger",["nemDebugProvider",function(n){var f,s,e,r,h,a,v,c,o,y,l,u;for(l=n.debug,e={},r=["debug","info","warn","error","log"],f={},o=c=0,y=r.length;y>c;o=++c)u=r[o],f[u]=o;return a=function(n,t,i){if(n>=t)return i()},h=function(n){var t,i,f;if(t=!1,!n)return t;for(i=0,f=r.length;f>i&&(u=r[i],t=null!=n[u]&&"function"==typeof n[u],t);i++);return t},v=function(n,t){var o,i,s,f;for(null==e[n]&&(e[n]=l(n)),o=e[n],f={},i=0,s=r.length;s>i;i++)u=r[i],f[u]="debug"===u?o:t[u];return f},s=function(){function n(n){var o,u,s,c,e;if(this.$log=n,this.spawn=t(this.spawn,this),!this.$log)throw"internalLogger undefined";if(!h(this.$log))throw"@$log is invalid";for(this.doLog=!0,e={},o=function(n){return function(t){return e[t]=function(){var r;return r=1<=arguments.length?i.call(arguments,0):[],n.doLog?a(f[t],n.currentLevel,function(){var i;return(i=n.$log)[t].apply(i,r)}):void 0},n[t]=e[t]}}(this),u=0,s=r.length;s>u;u++)c=r[u],o(c);this.LEVELS=f;this.currentLevel=f.error}return n.prototype.spawn=function(t){if("string"==typeof t){if(!h(this.$log))throw"@$log is invalid";if(!l)throw"nemDebug is undefined this is probably the light version of this library sep debug logggers is not supported!";return v(t,this.$log)}return new n(t||this.$log)},n}(),this.decorator=["$log",function(n){var t;return t=new s(n),t.currentLevel=f.debug,t}],this.$get=["$log",function(n){return new s(n)}],this}])},{debug:2}],2:[function(n,t,i){function u(){return"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function f(){var n=arguments,t=this.useColors,r,u,f;return(n[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+n[0]+(t?"%c ":" ")+"+"+i.humanize(this.diff),!t)?n:(r="color: "+this.color,n=[n[0],r,"color: inherit"].concat(Array.prototype.slice.call(n,1)),u=0,f=0,n[0].replace(/%[a-z%]/g,function(n){"%%"!==n&&(u++,"%c"===n&&(f=u))}),n.splice(f,0,r),n)}function e(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function o(n){try{null==n?i.storage.removeItem("debug"):i.storage.debug=n}catch(t){}}function r(){var n;try{n=i.storage.debug}catch(t){}return n}function s(){try{return window.localStorage}catch(n){}}i=t.exports=n("./debug");i.log=e;i.formatArgs=f;i.save=o;i.load=r;i.useColors=u;i.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:s();i.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];i.formatters.j=function(n){return JSON.stringify(n)};i.enable(r())},{"./debug":3}],3:[function(n,t,i){function u(){return i.colors[c++%i.colors.length]}function f(n){function f(){}function t(){var f=t,o=+new Date,h=o-(r||o),n,e,s;f.diff=h;f.prev=r;f.curr=o;r=o;null==f.useColors&&(f.useColors=i.useColors());null==f.color&&f.useColors&&(f.color=u());n=Array.prototype.slice.call(arguments);n[0]=i.coerce(n[0]);"string"!=typeof n[0]&&(n=["%o"].concat(n));e=0;n[0]=n[0].replace(/%([a-z%])/g,function(t,r){var u,o;return"%%"===t?t:(e++,u=i.formatters[r],"function"==typeof u&&(o=n[e],t=u.call(f,o),n.splice(e,1),e--),t)});"function"==typeof i.formatArgs&&(n=i.formatArgs.apply(f,n));s=t.log||i.log||console.log.bind(console);s.apply(f,n)}f.enabled=!1;t.enabled=!0;var e=i.enabled(n)?t:f;return e.namespace=n,e}function e(n){i.save(n);for(var r=(n||"").split(/[\s,]+/),u=r.length,t=0;u>t;t++)r[t]&&(n=r[t].replace(/\*/g,".*?"),"-"===n[0]?i.skips.push(new RegExp("^"+n.substr(1)+"$")):i.names.push(new RegExp("^"+n+"$")))}function o(){i.enable("")}function s(n){for(var t=0,r=i.skips.length;r>t;t++)if(i.skips[t].test(n))return!1;for(t=0,r=i.names.length;r>t;t++)if(i.names[t].test(n))return!0;return!1}function h(n){return n instanceof Error?n.stack||n.message:n}i=t.exports=f;i.coerce=h;i.disable=o;i.enable=e;i.enabled=s;i.humanize=n("ms");i.names=[];i.skips=[];i.formatters={};var r,c=0},{ms:4}],4:[function(n,t){function o(n){var e,t,o;if((n=""+n,!(n.length>1e4))&&(e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(n),e)){t=parseFloat(e[1]);o=(e[2]||"ms").toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return t*c;case"days":case"day":case"d":return t*f;case"hours":case"hour":case"hrs":case"hr":case"h":return t*u;case"minutes":case"minute":case"mins":case"min":case"m":return t*r;case"seconds":case"second":case"secs":case"sec":case"s":return t*i;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t}}}function s(n){return n>=f?Math.round(n/f)+"d":n>=u?Math.round(n/u)+"h":n>=r?Math.round(n/r)+"m":n>=i?Math.round(n/i)+"s":n+"ms"}function h(n){return e(n,f,"day")||e(n,u,"hour")||e(n,r,"minute")||e(n,i,"second")||n+" ms"}function e(n,t,i){if(!(t>n))return 1.5*t>n?Math.floor(n/t)+" "+i:Math.ceil(n/t)+" "+i+"s"}var i=1e3,r=60*i,u=60*r,f=24*u,c=365.25*f;t.exports=function(n,t){return t=t||{},"string"==typeof n?o(n):t.long?h(n):s(n)}},{}]},{},[1]);!function a(n,t,i){function r(u,e){var s,h,o;if(!t[u]){if(!n[u]){if(s="function"==typeof require&&require,!e&&s)return s(u,!0);if(f)return f(u,!0);h=new Error("Cannot find module '"+u+"'");throw h.code="MODULE_NOT_FOUND",h;}o=t[u]={exports:{}};n[u][0].call(o.exports,function(t){var i=n[u][1][t];return r(i?i:t)},o,o.exports,a,n,t,i)}return t[u].exports}for(var f="function"==typeof require&&require,u=0;u<i.length;u++)r(i[u]);return r}({1:[function(n,t,i){(function(n){(function(){function yt(n,t){if(n!==t){var f=null===n,e=n===r,i=n===n,o=null===t,s=t===r,u=t===t;if(n>t&&!o||!i||f&&!s&&u||e&&u)return 1;if(n<t&&!f||!u||o&&!e&&i||s&&i)return-1}return 0}function fi(n,t,i){for(var u=n.length,r=i?u:-1;i?r--:++r<u;)if(t(n[r],r,n))return r;return-1}function p(n,t,i){if(t!==t)return si(n,i);for(var r=i-1,u=n.length;++r<u;)if(n[r]===t)return r;return-1}function fr(n){return"function"==typeof n||!1}function e(n){return null==n?"":n+""}function ei(n,t){for(var i=-1,r=n.length;++i<r&&t.indexOf(n.charAt(i))>-1;);return i}function oi(n,t){for(var i=n.length;i--&&t.indexOf(n.charAt(i))>-1;);return i}function er(n,t){return yt(n.criteria,t.criteria)||n.index-t.index}function or(n,t,i){for(var u,f,r=-1,e=n.criteria,o=t.criteria,s=e.length,h=i.length;++r<s;)if(u=yt(e[r],o[r]),u)return r>=h?u:(f=i[r],u*("asc"===f||f===!0?1:-1));return n.index-t.index}function sr(n){return nf[n]}function hr(n){return tf[n]}function cr(n,t,i){return t?n=uf[n]:i&&(n=rr[n]),"\\"+n}function lr(n){return"\\"+rr[n]}function si(n,t,i){for(var u,f=n.length,r=t+(i?0:-1);i?r--:++r<f;)if(u=n[r],u!==u)return r;return-1}function o(n){return!!n&&"object"==typeof n}function hi(n){return n<=160&&n>=9&&n<=13||32==n||160==n||5760==n||6158==n||n>=8192&&(n<=8202||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n)}function w(n,t){for(var i=-1,u=n.length,f=-1,r=[];++i<u;)n[i]===t&&(n[i]=pt,r[++f]=i);return r}function ar(n,t){for(var r,u,f,i=-1,o=n.length,s=-1,e=[];++i<o;)r=n[i],u=t?t(r,i,n):r,i&&f===u||(f=u,e[++s]=r);return e}function ci(n){for(var t=-1,i=n.length;++t<i&&hi(n.charCodeAt(t)););return t}function li(n){for(var t=n.length;t--&&hi(n.charCodeAt(t)););return t}function vr(n){return rf[n]}function ai(n){function t(n){if(o(n)&&!i(n)&&!(n instanceof ot)){if(n instanceof hf)return n;if(ki.call(n,"__chain__")&&ki.call(n,"__wrapped__"))return ta(n)}return new hf(n)}function to(){}function hf(n,t,i){this.__wrapped__=n;this.__actions__=i||[];this.__chain__=!!t}function ot(n){this.__wrapped__=n;this.__actions__=[];this.__dir__=1;this.__filtered__=!1;this.__iteratees__=[];this.__takeCount__=bo;this.__views__=[]}function cy(){var n=new ot(this.__wrapped__);return n.__actions__=tf(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=tf(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=tf(this.__views__),n}function ly(){if(this.__filtered__){var n=new ot(this);n.__dir__=-1;n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function ay(){var n=this.__wrapped__.value(),s=this.__dir__,u=i(n),h=s<0,f=u?n.length:0,c=bp(0,f,this.__views__),l=c.start,a=c.end,t=a-l,v=h?a:l-1,y=this.__iteratees__,g=y.length,p=0,w=uf(t,this.__takeCount__),e,o,r;if(!u||f<ht||f==t&&w==t)return vc(h&&u?n.reverse():n,this.__actions__);e=[];n:for(;t--&&p<w;){for(v+=s,o=-1,r=n[v];++o<g;){var b=y[o],nt=b.iteratee,k=b.type,d=nt(r);if(k==pi)r=d;else if(!d){if(k==dr)continue n;break n}}e[p++]=r}return e}function ae(){this.__data__={}}function vy(n){return this.has(n)&&delete this.__data__[n]}function yy(n){return"__proto__"==n?r:this.__data__[n]}function py(n){return"__proto__"!=n&&ki.call(this.__data__,n)}function wy(n,t){return"__proto__"!=n&&(this.__data__[n]=t),this}function bh(n){var t=n?n.length:0;for(this.data={hash:kv(null),set:new yv};t--;)this.push(n[t])}function io(n,t){var i=n.data,r="string"==typeof t||bi(t)?i.set.has(t):i.hash[t];return r?0:-1}function by(n){var t=this.data;"string"==typeof n||bi(n)?t.set.add(n):t.hash[n]=!0}function ky(n,t){for(var i=-1,u=n.length,f=-1,e=t.length,r=wi(u+e);++i<u;)r[i]=n[i];for(;++f<e;)r[i++]=t[f];return r}function tf(n,t){var i=-1,r=n.length;for(t||(t=wi(r));++i<r;)t[i]=n[i];return t}function cf(n,t){for(var i=-1,r=n.length;++i<r&&t(n[i],i,n)!==!1;);return n}function dy(n,t){for(var i=n.length;i--&&t(n[i],i,n)!==!1;);return n}function kh(n,t){for(var i=-1,r=n.length;++i<r;)if(!t(n[i],i,n))return!1;return!0}function gy(n,t,i,r){for(var f,e,o=-1,h=n.length,u=r,s=u;++o<h;)f=n[o],e=+t(f),i(e,u)&&(u=e,s=f);return s}function ts(n,t){for(var r,i=-1,f=n.length,e=-1,u=[];++i<f;)r=n[i],t(r,i,n)&&(u[++e]=r);return u}function oe(n,t){for(var i=-1,r=n.length,u=wi(r);++i<r;)u[i]=t(n[i],i,n);return u}function ve(n,t){for(var i=-1,r=t.length,u=n.length;++i<r;)n[u+i]=t[i];return n}function dh(n,t,i,r){var u=-1,f=n.length;for(r&&f&&(i=n[++u]);++u<f;)i=t(i,n[u],u,n);return i}function np(n,t,i,r){var u=n.length;for(r&&u&&(i=n[--u]);u--;)i=t(i,n[u],u,n);return i}function gh(n,t){for(var i=-1,r=n.length;++i<r;)if(t(n[i],i,n))return!0;return!1}function tp(n,t){for(var i=n.length,r=0;i--;)r+=+t(n[i])||0;return r}function ip(n,t){return n===r?t:n}function nc(n,t,i,u){return n!==r&&ki.call(u,i)?n:t}function is(n,t,i){for(var o=-1,s=nf(t),h=s.length;++o<h;){var u=s[o],f=n[u],e=i(f,t[u],u,n,t);(e===e?e===f:f!==f)&&(f!==r||u in n)||(n[u]=e)}return n}function ye(n,t){return null==t?n:ic(t,nf(t),n)}function tc(n,t){for(var i,u=-1,f=null==n,e=!f&&rr(n),h=e?n.length:0,o=t.length,s=wi(o);++u<o;)i=t[u],s[u]=e?bf(i,h)?n[i]:r:f?r:n[i];return s}function ic(n,t,i){var r,f,u;for(i||(i={}),r=-1,f=t.length;++r<f;)u=t[r],i[u]=n[u];return i}function ro(n,t,i){var u=typeof n;return"function"==u?t===r?n:ff(n,t,i):null==n?re:"object"==u?we(n):t===r?yo(n):sc(n,t)}function gf(n,t,f,e,o,s,h){var c,y,a,p,v;if(f&&(c=o?f(n,e,o):f(n)),c!==r)return c;if(!bi(n))return n;if(y=i(n),y){if(c=kp(n),!t)return tf(n,c)}else{if(a=ef.call(n),p=a==lt,a!=l&&a!=g&&(!p||o))return u[a]?gp(n,a,t):o?n:{};if(c=dp(p?{}:n),!t)return ye(c,n)}for(s||(s=[]),h||(h=[]),v=s.length;v--;)if(s[v]==n)return h[v];return s.push(n),h.push(c),(y?cf:yf)(n,function(i,r){c[r]=gf(i,t,f,r,n,s,h)}),c}function rc(n,t,i){if("function"!=typeof n)throw new sf(s);return po(function(){n.apply(r,i)},t)}function pe(n,t){var o=n?n.length:0,r=[],i,e;if(!o)return r;var s=-1,u=se(),f=u==p,h=f&&t.length>=ht?ls(t):null,c=t.length;h&&(u=io,f=!1,t=h);n:for(;++s<o;)if(i=n[s],f&&i===i){for(e=c;e--;)if(t[e]===i)continue n;r.push(i)}else u(t,i,0)<0&&r.push(i);return r}function rp(n,t){var i=!0;return af(n,function(n,r,u){return i=!!t(n,r,u)}),i}function up(n,t,i,r){var u=r,f=u;return af(n,function(n,e,o){var s=+t(n,e,o);(i(s,u)||s===r&&s===f)&&(u=s,f=n)}),f}function fp(n,t,i,u){var f=n.length;for(i=null==i?0:+i||0,i<0&&(i=-i>f?0:f+i),u=u===r||u>f?f:+u||0,u<0&&(u+=f),f=i>u?0:u>>>0,i>>>=0;i<f;)n[i++]=t;return n}function uc(n,t){var i=[];return af(n,function(n,r,u){t(n,r,u)&&i.push(n)}),i}function fc(n,t,i,r){var u;return i(n,function(n,i,f){if(t(n,i,f))return u=r?i:n,!1}),u}function rf(n,t,r,u){var e,s,f;for(u||(u=[]),e=-1,s=n.length;++e<s;)f=n[e],o(f)&&rr(f)&&(r||i(f)||pf(f))?t?rf(f,t,r,u):ve(u,f):r||(u[u.length]=f);return u}function ec(n,t){return ch(n,t,df)}function yf(n,t){return ch(n,t,nf)}function rs(n,t){return ty(n,t,nf)}function us(n,t){for(var i,r=-1,f=t.length,e=-1,u=[];++r<f;)i=t[r],ie(n[i])&&(u[++e]=i);return u}function ne(n,t,i){if(null!=n){i!==r&&i in lf(n)&&(t=[i]);for(var u=0,f=t.length;null!=n&&u<f;)n=n[t[u++]];return u&&u==f?n:r}}function uo(n,t,i,r,u,f){return n===t||(null==n||null==t||!bi(n)&&!o(t)?n!==n&&t!==t:ep(n,t,uo,i,r,u,f))}function ep(n,t,r,u,f,e,o){var c=i(n),p=i(t),s=nt,h=nt,v,y,a,k;c||(s=ef.call(n),s==g?s=l:s!=l&&(c=ce(n)));p||(h=ef.call(t),h==g?h=l:h!=l&&(p=ce(t)));var w=s==l,d=h==l,b=s==h;if(b&&!c&&!w)return pp(n,t,s);if(!f&&(v=w&&ki.call(n,"__wrapped__"),y=d&&ki.call(t,"__wrapped__"),v||y))return r(v?n.value():n,y?t.value():t,u,f,e,o);if(!b)return!1;for(e||(e=[]),o||(o=[]),a=e.length;a--;)if(e[a]==n)return o[a]==t;return e.push(n),o.push(t),k=(c?yp:wp)(n,t,r,u,f,e,o),e.pop(),o.pop(),k}function oc(n,t,i){var f=t.length,h=f,c=!i,u,s;if(null==n)return!h;for(n=lf(n);f--;)if(u=t[f],c&&u[2]?u[1]!==n[u[0]]:!(u[0]in n))return!1;for(;++f<h;){u=t[f];var e=u[0],o=n[e],l=u[1];if(c&&u[2]){if(o===r&&!(e in n))return!1}else if(s=i?i(o,l,e):r,!(s===r?uo(l,o,i,!0):s))return!1}return!0}function fs(n,t){var r=-1,i=rr(n)?wi(n.length):[];return af(n,function(n,u,f){i[++r]=t(n,u,f)}),i}function we(n){var t=wl(n),i,u;return 1==t.length&&t[0][2]?(i=t[0][0],u=t[0][1],function(n){return null!=n&&n[i]===u&&(u!==r||i in lf(n))}):function(n){return oc(n,t)}}function sc(n,t){var u=i(n),f=te(n)&&bl(t),e=n+"";return n=kf(n),function(i){if(null==i)return!1;var o=e;if(i=lf(i),(u||!f)&&!(o in i)){if(i=1==n.length?i:ne(i,of(n,0,-1)),null==i)return!1;o=be(n);i=lf(i)}return i[o]===t?t!==r||o in i:uo(t,i[o],r,!0)}}function hc(n,t,u,f,e){if(!bi(n))return n;var s=rr(t)&&(i(t)||ce(t)),h=s?r:nf(t);return cf(h||t,function(i,c){if(h&&(c=i,i=t[c]),o(i))f||(f=[]),e||(e=[]),op(n,t,c,hc,u,f,e);else{var a=n[c],l=u?u(a,i,c,n,t):r,v=l===r;v&&(l=i);l===r&&(!s||c in n)||!v&&(l===l?l===a:a!==a)||(n[c]=l)}}),n}function op(n,t,u,f,e,o,s){for(var a=o.length,c=t[u];a--;)if(o[a]==c)return void(n[u]=s[a]);var h=n[u],l=e?e(h,c,u,n,t):r,v=l===r;v&&(l=c,rr(c)&&(i(c)||ce(c))?l=i(h)?h:rr(h)?tf(h):[]:lo(c)||pf(c)?l=pf(h)?nv(h):lo(h)?h:{}:v=!1);o.push(c);s.push(l);v?n[u]=f(l,c,e,o,s):(l===l?l!==h:h===h)&&(n[u]=l)}function es(n){return function(t){return null==t?r:t[n]}}function sp(n){var t=n+"";return n=kf(n),function(i){return ne(i,n,t)}}function cc(n,t){for(var i,u,r=n?t.length:0;r--;)i=t[r],i!=u&&bf(i)&&(u=i,pv.call(n,i,1));return n}function os(n,t){return n+ee(gv()*(t-n+1))}function hp(n,t,i,r,u){return u(n,function(n,u,f){i=r?(r=!1,n):t(i,n,u,f)}),i}function of(n,t,i){var f=-1,u=n.length,e;for(t=null==t?0:+t||0,t<0&&(t=-t>u?0:u+t),i=i===r||i>u?u:+i||0,i<0&&(i+=u),u=t>i?0:i-t>>>0,t>>>=0,e=wi(u);++f<u;)e[f]=n[f+t];return e}function cp(n,t){var i;return af(n,function(n,r,u){return i=t(n,r,u),!i}),!!i}function lc(n,t){var i=n.length;for(n.sort(t);i--;)n[i]=n[i].value;return n}function ac(n,t,i){var u=hi(),f=-1,r;return t=oe(t,function(n){return u(n)}),r=fs(n,function(n){var i=oe(t,function(t){return t(n)});return{criteria:i,index:++f,value:n}}),lc(r,function(n,t){return or(n,t,i)})}function lp(n,t){var i=0;return af(n,function(n,r,u){i+=+t(n,r,u)||0}),i}function ss(n,t){var e=-1,o=se(),l=n.length,s=o==p,h=s&&l>=ht,i=h?ls():null,f=[],r,u,c;i?(o=io,s=!1):(h=!1,i=t?[]:f);n:for(;++e<l;)if(r=n[e],u=t?t(r,e,n):r,s&&r===r){for(c=i.length;c--;)if(i[c]===u)continue n;t&&i.push(u);f.push(r)}else o(i,u,0)<0&&((t||h)&&i.push(u),f.push(r));return f}function hs(n,t){for(var i=-1,r=t.length,u=wi(r);++i<r;)u[i]=n[t[i]];return u}function fo(n,t,i,r){for(var f=n.length,u=r?f:-1;(r?u--:++u<f)&&t(n[u],u,n););return i?of(n,r?0:u,r?u+1:f):of(n,r?u+1:0,r?f:u)}function vc(n,t){var i=n,u,f,r;for(i instanceof ot&&(i=i.value()),u=-1,f=t.length;++u<f;)r=t[u],i=r.func.apply(r.thisArg,ve([i],r.args));return i}function cs(n,t,i){var u=0,r=n?n.length:u,f,e;if("number"==typeof t&&t===t&&r<=pg){for(;u<r;)f=u+r>>>1,e=n[f],(i?e<=t:e<t)&&null!==e?u=f+1:r=f;return r}return yc(n,t,re,i)}function yc(n,t,i,u){var l;t=i(t);for(var o=0,e=n?n.length:0,a=t!==t,v=null===t,y=t===r;o<e;){var s=ee((o+e)/2),f=i(n[s]),c=f!==r,h=f===f;l=a?h||u:v?h&&c&&(u||null!=f):y?h&&(u||c):null!=f&&(u?f<=t:f<t);l?o=s+1:e=s}return uf(e,yg)}function ff(n,t,i){if("function"!=typeof n)return re;if(t===r)return n;switch(i){case 1:return function(i){return n.call(t,i)};case 3:return function(i,r,u){return n.call(t,i,r,u)};case 4:return function(i,r,u,f){return n.call(t,i,r,u,f)};case 5:return function(i,r,u,f,e){return n.call(t,i,r,u,f,e)}}return function(){return n.apply(t,arguments)}}function pc(n){var t=new eg(n.byteLength),i=new wv(t);return i.set(new wv(n)),t}function wc(n,t,i){for(var e=i.length,r=-1,o=ur(n.length-e,0),u=-1,s=t.length,f=wi(s+o);++u<s;)f[u]=t[u];for(;++r<e;)f[i[r]]=n[r];for(;o--;)f[u++]=n[r++];return f}function bc(n,t,i){for(var e,o=-1,s=i.length,r=-1,h=ur(n.length-s,0),f=-1,c=t.length,u=wi(h+c);++r<h;)u[r]=n[r];for(e=r;++f<c;)u[e+f]=t[f];for(;++o<s;)u[e+i[o]]=n[r++];return u}function eo(n,t){return function(r,u,f){var o=t?t():{},e,h,s;if(u=hi(u,f,3),i(r))for(e=-1,h=r.length;++e<h;)s=r[e],n(o,s,u(s,e,r),r);else af(r,function(t,i,r){n(o,t,u(t,i,r),r)});return o}}function kc(n){return vt(function(t,i){var s=-1,u=null==t?0:i.length,f=u>2?i[u-2]:r,h=u>2?i[2]:r,e=u>1?i[u-1]:r,o;for("function"==typeof f?(f=ff(f,e,5),u-=2):(f="function"==typeof e?e:r,u-=f?1:0),h&&et(i[0],i[1],h)&&(f=u<3?r:f,u=1);++s<u;)o=i[s],o&&n(t,o,f);return t})}function dc(n,t){return function(i,r){var f=i?ge(i):0,u,e;if(!vf(f))return n(i,r);for(u=t?f:-1,e=lf(i);(t?u--:++u<f)&&r(e[u],u,e)!==!1;);return i}}function gc(n){return function(t,i,r){for(var f,e=lf(t),o=r(t),s=o.length,u=n?s:-1;n?u--:++u<s;)if(f=o[u],i(e[f],f,e)===!1)break;return t}}function ap(n,t){function i(){var u=this&&this!==a&&this instanceof i?r:n;return u.apply(t,arguments)}var r=so(n);return i}function ls(n){return kv&&yv?new bh(n):null}function oo(n){return function(t){for(var i=-1,u=fv(iv(t)),f=u.length,r="";++i<f;)r=n(r,u[i],i);return r}}function so(n){return function(){var t=arguments,i,r;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}return i=de(n.prototype),r=n.apply(i,t),bi(r)?r:i}}function nl(n){function t(i,u,f){f&&et(i,u,f)&&(u=r);var e=wf(i,n,r,r,r,r,r,u);return e.placeholder=t.placeholder,e}return t}function tl(n,t){return vt(function(i){var u=i[0];return null==u?u:(i.push(t),n.apply(r,i))})}function il(n,t){return function(u,f,e){if(e&&et(u,f,e)&&(f=r),f=hi(f,e,3),1==f.length){u=i(u)?u:ws(u);var o=gy(u,f,n,t);if(!u.length||o!==t)return o}return up(u,f,n,t)}}function rl(n,t){return function(u,f,e){if(f=hi(f,e,3),i(u)){var o=fi(u,f,t);return o>-1?u[o]:r}return fc(u,f,n)}}function ul(n){return function(t,i,r){return t&&t.length?(i=hi(i,r,3),fi(t,i,n)):-1}}function fl(n){return function(t,i,r){return i=hi(i,r,3),fc(t,i,n,!0)}}function el(n){return function(){for(var u,l,f,t,e=arguments.length,o=n?e:-1,a=0,h=wi(e);n?o--:++o<e;){if(u=h[a++]=arguments[o],"function"!=typeof u)throw new sf(s);!t&&hf.prototype.thru&&"wrapper"==ho(u)&&(t=new hf([],!0))}for(o=t?-1:e;++o<e;)u=h[o],l=ho(u),f="wrapper"==l?lh(u):r,t=f&&ps(f[0])&&f[1]==(v|k|c|st)&&!f[4].length&&1==f[9]?t[ho(f[0])].apply(t,f[3]):1==u.length&&ps(u)?t[l]():t.thru(u);return function(){var f=arguments,n=f[0],r,u;if(t&&1==f.length&&i(n)&&n.length>=ht)return t.plant(n).value();for(r=0,u=e?h[r].apply(this,f):n;++r<e;)u=h[r].call(this,u);return u}}}function ol(n,t){return function(u,f,e){return"function"==typeof f&&e===r&&i(u)?n(u,f):t(u,ff(f,e,3))}}function sl(n){return function(t,i,u){return"function"==typeof i&&u===r||(i=ff(i,u,3)),n(t,i,df)}}function hl(n){return function(t,i,u){return"function"==typeof i&&u===r||(i=ff(i,u,3)),n(t,i)}}function cl(n){return function(t,i,r){var u={};return i=hi(i,r,3),yf(t,function(t,r,f){var e=i(t,r,f);r=n?e:r;t=n?t:e;u[r]=t}),u}}function ll(n){return function(t,i,r){return t=e(t),(n?t:"")+yl(t,i,r)+(n?"":t)}}function al(n){var t=vt(function(i,u){var f=w(u,t.placeholder);return wf(i,n,r,u,f)});return t}function vl(n,t){return function(u,f,e,o){var s=arguments.length<3;return"function"==typeof f&&o===r&&i(u)?n(u,f,e,s):hp(u,hi(f,o,4),e,s,t)}}function as(n,t,i,u,f,e,o,s,l,y){function g(){for(var ht,et,ct,ot,lt,at,k=arguments.length,st=k,v=wi(k);st--;)v[st]=arguments[st];if((u&&(v=wc(v,u,f)),e&&(v=bc(v,e,o)),p||ut)&&(ht=g.placeholder,et=w(v,ht),k-=et.length,k<y)){var vt=s?tf(s):r,yt=ur(y-k,0),pt=p?et:r,wt=p?r:et,bt=p?v:r,kt=p?r:v;return t|=p?c:d,t&=~(p?d:c),rt||(t&=~(h|b)),ct=[n,t,i,bt,pt,kt,wt,vt,l,yt],ot=as.apply(r,ct),ps(n)&&ry(ot,ct),ot.placeholder=ht,ot}return lt=it?i:this,at=nt?lt[n]:n,s&&(v=tw(v,s)),tt&&l<v.length&&(v.length=l),this&&this!==a&&this instanceof g&&(at=ft||so(n)),at.apply(lt,v)}var tt=t&v,it=t&h,nt=t&b,p=t&k,rt=t&vi,ut=t&yi,ft=nt?r:so(n);return g}function yl(n,t,i){var u=n.length,r;return(t=+t,u>=t||!le(t))?"":(r=t-u,i=null==i?" ":i+"",rv(i,wo(r/i.length)).slice(0,r))}function vp(n,t,i,r){function u(){for(var c,l=-1,s=arguments.length,t=-1,h=r.length,o=wi(h+s);++t<h;)o[t]=r[t];for(;s--;)o[t++]=arguments[++l];return c=this&&this!==a&&this instanceof u?e:n,c.apply(f?i:this,o)}var f=t&h,e=so(n);return u}function vs(n){var t=ue[n];return function(n,i){return i=i===r?0:+i||0,i?(i=sg(10,i),t(n*i)/i):t(n)}}function pl(n){return function(t,i,r,u){var f=hi(r);return null==r&&f===ro?cs(t,i,n):yc(t,i,f(r,u,1),n)}}function wf(n,t,i,u,f,e,o,l){var p=t&b,v,w,k,y,a,g,nt;if(!p&&"function"!=typeof n)throw new sf(s);return v=u?u.length:0,(v||(t&=~(c|d),u=f=r),v-=f?f.length:0,t&d)&&(w=u,k=f,u=f=r),y=p?r:lh(n),a=[n,t,i,u,f,w,k,e,o,l],g=(y&&(nw(a,y),t=a[1],l=a[9]),a[9]=null==l?p?0:n.length:ur(l-v,0)||0,t==h)?ap(a[0],a[2]):t!=c&&t!=(h|c)||a[4].length?as.apply(r,a):vp.apply(r,a),nt=y?iy:ry,nt(g,a)}function yp(n,t,i,u,f,e,o){var h=-1,l=n.length,a=t.length;if(l!=a&&!(f&&a>l))return!1;for(;++h<l;){var s=n[h],c=t[h],v=u?u(f?c:s,f?s:c,h):r;if(v!==r){if(v)continue;return!1}if(f){if(!gh(t,function(n){return s===n||i(s,n,u,f,e,o)}))return!1}else if(s!==c&&!i(s,c,u,f,e,o))return!1}return!0}function pp(n,t,i){switch(i){case tt:case it:return+n==+t;case ct:return n.name==t.name&&n.message==t.message;case rt:return n!=+n?t!=+t:n==+t;case ut:case ft:return n==t+""}return!1}function wp(n,t,i,u,f,e,o){var v=nf(n),y=v.length,k=nf(t),d=k.length,h,s,a,c,l;if(y!=d&&!f)return!1;for(h=y;h--;)if(s=v[h],!(f?s in t:ki.call(t,s)))return!1;for(a=f;++h<y;){s=v[h];var p=n[s],w=t[s],b=u?u(f?w:p,f?p:w,s):r;if(!(b===r?i(p,w,u,f,e,o):b))return!1;a||(a="constructor"==s)}return!a&&(c=n.constructor,l=t.constructor,c!=l&&"constructor"in n&&"constructor"in t&&!("function"==typeof c&&c instanceof c&&"function"==typeof l&&l instanceof l))?!1:!0}function hi(n,i,r){var u=t.callback||vo;return u=u===vo?ro:u,r?u(n,i,r):u}function ho(n){for(var i,r,u=n.name,t=ns[u],f=t?t.length:0;f--;)if(i=t[f],r=i.func,null==r||r==n)return i.name;return u}function se(n,i,r){var u=t.indexOf||bs;return u=u===bs?p:u,n?u(n,i,r):u}function wl(n){for(var t=tv(n),i=t.length;i--;)t[i][2]=bl(t[i][1]);return t}function he(n,t){var i=null==n?r:n[t];return wa(i)?i:r}function bp(n,t,i){for(var f,r,u=-1,e=i.length;++u<e;){f=i[u];r=f.size;switch(f.type){case"drop":n+=r;break;case"dropRight":t-=r;break;case"take":t=uf(t,n+r);break;case"takeRight":n=ur(n,t-r)}}return{start:n,end:t}}function kp(n){var i=n.length,t=new n.constructor(i);return i&&"string"==typeof n[0]&&ki.call(n,"index")&&(t.index=n.index,t.input=n.input),t}function dp(n){var t=n.constructor;return"function"==typeof t&&t instanceof t||(t=fe),new t}function gp(n,t,i){var r=n.constructor,u,f;switch(t){case wt:return pc(n);case tt:case it:return new r(+n);case bt:case kt:case dt:case gt:case ni:case ti:case ii:case ri:case ui:return u=n.buffer,new r(i?pc(u):u,n.byteOffset,n.length);case rt:case ft:return new r(n);case ut:f=new r(n.source,ir.exec(n));f.lastIndex=n.lastIndex}return f}function ys(n,t,i){null==n||te(t,n)||(t=kf(t),n=1==t.length?n:ne(n,of(t,0,-1)),t=be(t));var u=null==n?n:n[t];return null==u?r:u.apply(n,i)}function rr(n){return null!=n&&vf(ge(n))}function bf(n,t){return n="number"==typeof n||pu.test(n)?+n:-1,t=null==t?ny:t,n>-1&&n%1==0&&n<t}function et(n,t,i){var u,r;return bi(i)?(u=typeof t,"number"==u?rr(i)&&bf(t,i.length):"string"==u&&t in i)?(r=i[t],n===n?n===r:r!==r):!1:!1}function te(n,t){var r=typeof n,u;return"string"==r&&ou.test(n)||"number"==r?!0:i(n)?!1:(u=!eu.test(n),u||null!=t&&n in lf(t))}function ps(n){var u=ho(n),i,r;return(u in ot.prototype)?(i=t[u],n===i)?!0:(r=lh(i),!!r&&n===r[0]):!1}function vf(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=ny}function bl(n){return n===n&&!bi(n)}function nw(n,t){var f=n[1],u=t[1],e=f|u,o=e<v,s=u==v&&f==k||u==v&&f==st&&n[7].length<=t[8]||u==(v|st)&&f==k,i,r;return!o&&!s?n:(u&h&&(n[2]=t[2],e|=f&h?0:vi),i=t[3],i&&(r=n[3],n[3]=r?wc(r,i,t[4]):tf(i),n[4]=r?w(n[3],pt):tf(t[4])),i=t[5],i&&(r=n[5],n[5]=r?bc(r,i,t[6]):tf(i),n[6]=r?w(n[5],pt):tf(t[6])),i=t[7],i&&(n[7]=tf(i)),u&v&&(n[8]=null==n[8]?t[8]:uf(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=e,n)}function kl(n,t){return n===r?t:ph(n,t,kl)}function dl(n,t){var i;n=lf(n);for(var r=-1,f=t.length,u={};++r<f;)i=t[r],i in n&&(u[i]=n[i]);return u}function gl(n,t){var i={};return ec(n,function(n,r,u){t(n,r,u)&&(i[r]=n)}),i}function tw(n,t){for(var u,f=n.length,i=uf(t.length,f),e=tf(n);i--;)u=t[i],n[i]=bf(u,f)?e[u]:r;return n}function na(n){for(var t,u=df(n),f=u.length,r=f&&n.length,s=!!r&&vf(r)&&(i(n)||pf(n)),e=-1,o=[];++e<f;)t=u[e],(s&&bf(t,r)||ki.call(n,t))&&o.push(t);return o}function ws(n){return null==n?[]:rr(n)?bi(n)?n:fe(n):ao(n)}function lf(n){return bi(n)?n:fe(n)}function kf(n){if(i(n))return n;var t=[];return e(n).replace(su,function(n,i,r,u){t.push(r?u.replace(lu,"$1"):i||n)}),t}function ta(n){return n instanceof ot?n.clone():new hf(n.__wrapped__,n.__chain__,tf(n.__actions__))}function iw(n,t,i){t=(i?et(n,t,i):null==t)?1:ur(ee(t)||1,1);for(var r=0,u=n?n.length:0,e=-1,f=wi(wo(u/t));r<u;)f[++e]=of(n,r,r+=t);return f}function rw(n){for(var t,i=-1,u=n?n.length:0,f=-1,r=[];++i<u;)t=n[i],t&&(r[++f]=t);return r}function ia(n,t,i){var r=n?n.length:0;return r?((i?et(n,t,i):null==t)&&(t=1),of(n,t<0?0:t)):[]}function ra(n,t,i){var r=n?n.length:0;return r?((i?et(n,t,i):null==t)&&(t=1),t=r-(+t||0),of(n,0,t<0?0:t)):[]}function uw(n,t,i){return n&&n.length?fo(n,hi(t,i,3),!0,!0):[]}function fw(n,t,i){return n&&n.length?fo(n,hi(t,i,3),!0):[]}function ew(n,t,i,r){var u=n?n.length:0;return u?(i&&"number"!=typeof i&&et(n,t,i)&&(i=0,r=u),fp(n,t,i,r)):[]}function ua(n){return n?n[0]:r}function ow(n,t,i){var r=n?n.length:0;return i&&et(n,t,i)&&(t=!1),r?rf(n,t):[]}function sw(n){var t=n?n.length:0;return t?rf(n,!0):[]}function bs(n,t,i){var u=n?n.length:0,r;if(!u)return-1;if("number"==typeof i)i=i<0?ur(u+i,0):i;else if(i)return r=cs(n,t),r<u&&(t===t?t===n[r]:n[r]!==n[r])?r:-1;return p(n,t,i||0)}function hw(n){return ra(n,1)}function be(n){var t=n?n.length:0;return t?n[t-1]:r}function cw(n,t,i){var u=n?n.length:0,r,f;if(!u)return-1;if(r=u,"number"==typeof i)r=(i<0?ur(u+i,0):uf(i||0,u-1))+1;else if(i)return r=cs(n,t,!0)-1,f=n[r],(t===t?t===f:f!==f)?r:-1;if(t!==t)return si(n,r,!0);for(;r--;)if(n[r]===t)return r;return-1}function lw(){var i=arguments,n=i[0],t,u;if(!n||!n.length)return n;for(var r=0,f=se(),e=i.length;++r<e;)for(t=0,u=i[r];(t=f(n,u,t))>-1;)pv.call(n,t,1);return n}function aw(n,t,i){var u=[],f;if(!n||!n.length)return u;var r=-1,e=[],o=n.length;for(t=hi(t,i,3);++r<o;)f=n[r],t(f,r,n)&&(u.push(f),e.push(r));return cc(n,e),u}function fa(n){return ia(n,1)}function vw(n,t,i){var r=n?n.length:0;return r?(i&&"number"!=typeof i&&et(n,t,i)&&(t=0,i=r),of(n,t,i)):[]}function yw(n,t,i){var r=n?n.length:0;return r?((i?et(n,t,i):null==t)&&(t=1),of(n,0,t<0?0:t)):[]}function pw(n,t,i){var r=n?n.length:0;return r?((i?et(n,t,i):null==t)&&(t=1),t=r-(+t||0),of(n,t<0?0:t)):[]}function ww(n,t,i){return n&&n.length?fo(n,hi(t,i,3),!1,!0):[]}function bw(n,t,i){return n&&n.length?fo(n,hi(t,i,3)):[]}function ea(n,t,i,u){var e=n?n.length:0,f;return e?(null!=t&&"boolean"!=typeof t&&(u=i,i=et(n,t,u)?r:t,t=!1),f=hi(),null==i&&f===ro||(i=f(i,u,3)),t&&se()==p?ar(n,i):ss(n,i)):[]}function ks(n){var i,t,r;if(!n||!n.length)return[];for(i=-1,t=0,n=ts(n,function(n){if(rr(n))return t=ur(n.length,t),!0}),r=wi(t);++i<t;)r[i]=oe(n,es(i));return r}function oa(n,t,i){var f=n?n.length:0,u;return f?(u=ks(n),null==t?u:(t=ff(t,i,4),oe(u,function(n){return dh(n,t,r,!0)}))):[]}function kw(){for(var t,n,i=-1,r=arguments.length;++i<r;)t=arguments[i],rr(t)&&(n=n?ve(pe(n,t),pe(t,n)):t);return n?ss(n):[]}function sa(n,t){var u=-1,e=n?n.length:0,f={},r;for(!e||t||i(n[0])||(t=[]);++u<e;)r=n[u],t?f[r]=t[u]:r&&(f[r[0]]=r[1]);return f}function ha(n){var i=t(n);return i.__chain__=!0,i}function dw(n,t,i){return t.call(i,n),n}function ds(n,t,i){return t.call(i,n)}function gw(){return ha(this)}function nb(){return new hf(this.value(),this.__chain__)}function tb(n){for(var r,i,u,t=this;t instanceof to;)i=ta(t),r?u.__wrapped__=i:r=i,u=i,t=t.__wrapped__;return u.__wrapped__=n,r}function ib(){var t=this.__wrapped__,i=function(t){return n&&n.__dir__<0?t:t.reverse()},n;return t instanceof ot?(n=t,this.__actions__.length&&(n=new ot(this)),n=n.reverse(),n.__actions__.push({func:ds,args:[i],thisArg:r}),new hf(n,this.__chain__)):this.thru(i)}function rb(){return this.value()+""}function ub(){return vc(this.__wrapped__,this.__actions__)}function ca(n,t,u){var f=i(n)?kh:rp;return u&&et(n,t,u)&&(t=r),"function"==typeof t&&u===r||(t=hi(t,u,3)),f(n,t)}function gs(n,t,r){var u=i(n)?ts:uc;return t=hi(t,r,3),u(n,t)}function fb(n,t){return ah(n,we(t))}function nh(n,t,r,u){var f=n?ge(n):0;return vf(f)||(n=ao(n),f=n.length),r="number"!=typeof r||u&&et(t,r,u)?0:r<0?ur(f+r,0):r||0,"string"==typeof n||!i(n)&&uh(n)?r<=f&&n.indexOf(t,r)>-1:!!f&&se(n,t,r)>-1}function th(n,t,r){var u=i(n)?oe:fs;return t=hi(t,r,3),u(n,t)}function eb(n,t){return th(n,yo(t))}function ob(n,t,r){var u=i(n)?ts:uc;return t=hi(t,r,3),u(n,function(n,i,r){return!t(n,i,r)})}function co(n,t,i){var f,o,s;if(i?et(n,t,i):null==t)return n=ws(n),f=n.length,f>0?n[os(0,f-1)]:r;var e=-1,u=ga(n),f=u.length,h=f-1;for(t=uf(t<0?0:+t||0,f);++e<t;)o=os(e,h),s=u[o],u[o]=u[e],u[e]=s;return u.length=t,u}function sb(n){return co(n,bo)}function hb(n){var t=n?ge(n):0;return vf(t)?t:nf(n).length}function la(n,t,u){var f=i(n)?gh:cp;return u&&et(n,t,u)&&(t=r),"function"==typeof t&&u===r||(t=hi(t,u,3)),f(n,t)}function cb(n,t,i){var u,f;return null==n?[]:(i&&et(n,t,i)&&(t=r),u=-1,t=hi(t,i,3),f=fs(n,function(n,i,r){return{criteria:t(n,i,r),index:++u,value:n}}),lc(f,er))}function lb(n,t,u,f){return null==n?[]:(f&&et(t,u,f)&&(u=r),i(t)||(t=null==t?[]:[t]),i(u)||(u=null==u?[]:[u]),ac(n,t,u))}function ab(n,t){return gs(n,we(t))}function vb(n,t){if("function"!=typeof t){if("function"!=typeof n)throw new sf(s);var i=n;n=t;t=i}return n=le(n=+n)?n:0,function(){if(--n<1)return t.apply(this,arguments)}}function yb(n,t,i){return i&&et(n,t,i)&&(t=r),t=n&&null==t?n.length:ur(+t||0,0),wf(n,v,r,r,r,r,t)}function aa(n,t){var i,u;if("function"!=typeof t){if("function"!=typeof n)throw new sf(s);u=n;n=t;t=u}return function(){return--n>0&&(i=t.apply(this,arguments)),n<=1&&(t=r),i}}function va(n,t,i){function d(){u&&ke(u);f&&ke(f);c=0;f=u=p=r}function w(t,i){i&&ke(i);f=u=p=r;t&&(c=no(),y=n.apply(o,e),u||f||(e=o=r))}function b(){var n=t-(no()-h);n<=0||n>t?w(p,f):u=po(b,n)}function g(){w(a,u)}function k(){var w,s,i;return(e=arguments,h=no(),o=this,p=a&&(u||!v),l===!1)?w=v&&!u:(f||v||(c=h),s=l-(h-c),i=s<=0||s>l,i?(f&&(f=ke(f)),c=h,y=n.apply(o,e)):f||(f=po(g,s))),i&&u?u=ke(u):u||t===l||(u=po(b,t)),w&&(i=!0,y=n.apply(o,e)),!i||u||f||(e=o=r),y}var e,f,y,h,o,u,p,c=0,l=!1,a=!0,v;if("function"!=typeof n)throw new sf(s);return(t=t<0?0:+t||0,i===!0)?(v=!0,a=!1):bi(i)&&(v=!!i.leading,l="maxWait"in i&&ur(+i.maxWait||0,t),a="trailing"in i?!!i.trailing:a),k.cancel=d,k}function ih(n,t){if("function"!=typeof n||t&&"function"!=typeof t)throw new sf(s);var i=function(){var r=arguments,u=t?t.apply(this,r):r[0],f=i.cache,e;return f.has(u)?f.get(u):(e=n.apply(this,r),i.cache=f.set(u,e),e)};return i.cache=new ih.Cache,i}function pb(n){if("function"!=typeof n)throw new sf(s);return function(){return!n.apply(this,arguments)}}function wb(n){return aa(2,n)}function vt(n,t){if("function"!=typeof n)throw new sf(s);return t=ur(t===r?n.length-1:+t||0,0),function(){for(var f,r=arguments,i=-1,e=ur(r.length-t,0),u=wi(e);++i<e;)u[i]=r[t+i];switch(t){case 0:return n.call(this,u);case 1:return n.call(this,r[0],u);case 2:return n.call(this,r[0],r[1],u)}for(f=wi(t+1),i=-1;++i<t;)f[i]=r[i];return f[t]=u,n.apply(this,f)}}function bb(n){if("function"!=typeof n)throw new sf(s);return function(t){return n.apply(this,t)}}function kb(n,t,i){var r=!0,u=!0;if("function"!=typeof n)throw new sf(s);return i===!1?r=!1:bi(i)&&(r="leading"in i?!!i.leading:r,u="trailing"in i?!!i.trailing:u),va(n,t,{leading:r,maxWait:+t,trailing:u})}function db(n,t){return t=null==t?re:t,wf(t,c,r,[n],[])}function gb(n,t,i,r){return t&&"boolean"!=typeof t&&et(n,t,i)?t=!1:"function"==typeof t&&(r=i,i=t,t=!1),"function"==typeof i?gf(n,t,ff(i,r,1)):gf(n,t)}function nk(n,t,i){return"function"==typeof t?gf(n,!0,ff(t,i,1)):gf(n,!0)}function ya(n,t){return n>t}function tk(n,t){return n>=t}function pf(n){return o(n)&&rr(n)&&ki.call(n,"callee")&&!hg.call(n,"callee")}function ik(n){return n===!0||n===!1||o(n)&&ef.call(n)==tt}function rk(n){return o(n)&&ef.call(n)==it}function uk(n){return!!n&&1===n.nodeType&&o(n)&&!lo(n)}function fk(n){return null==n||(rr(n)&&(i(n)||uh(n)||pf(n)||o(n)&&ie(n.splice))?!n.length:!nf(n).length)}function pa(n,t,i,u){i="function"==typeof i?ff(i,u,3):r;var f=i?i(n,t):r;return f===r?uo(n,t,i):!!f}function rh(n){return o(n)&&"string"==typeof n.message&&ef.call(n)==ct}function ek(n){return"number"==typeof n&&le(n)}function ie(n){return bi(n)&&ef.call(n)==lt}function bi(n){var t=typeof n;return!!n&&("object"==t||"function"==t)}function ok(n,t,i,u){return i="function"==typeof i?ff(i,u,3):r,oc(n,wl(t),i)}function sk(n){return ba(n)&&n!=+n}function wa(n){return null!=n&&(ie(n)?fg.test(vv.call(n)):o(n)&&yu.test(n))}function hk(n){return null===n}function ba(n){return"number"==typeof n||o(n)&&ef.call(n)==rt}function lo(n){var t,i;return!o(n)||ef.call(n)!=l||pf(n)||!ki.call(n,"constructor")&&(t=n.constructor,"function"==typeof t&&!(t instanceof t))?!1:(ec(n,function(n,t){i=t}),i===r||ki.call(n,i))}function ka(n){return bi(n)&&ef.call(n)==ut}function uh(n){return"string"==typeof n||o(n)&&ef.call(n)==ft}function ce(n){return o(n)&&vf(n.length)&&!!f[ef.call(n)]}function ck(n){return n===r}function da(n,t){return n<t}function lk(n,t){return n<=t}function ga(n){var t=n?ge(n):0;return vf(t)?t?tf(n):[]:ao(n)}function nv(n){return ic(n,df(n))}function ak(n,t,i){var u=de(n);return i&&et(n,t,i)&&(t=r),t?ye(u,t):u}function fh(n){return us(n,df(n))}function vk(n,t,i){var u=null==n?r:ne(n,kf(t),t+"");return u===r?i:u}function yk(n,t){if(null==n)return!1;var r=ki.call(n,t);if(!r&&!te(t)){if(t=kf(t),n=1==t.length?n:ne(n,of(t,0,-1)),null==n)return!1;t=be(t);r=ki.call(n,t)}return r||vf(n.length)&&bf(t,n.length)&&(i(n)||pf(n))}function pk(n,t,i){var f,e;i&&et(n,t,i)&&(t=r);for(var o=-1,s=nf(n),h=s.length,u={};++o<h;)f=s[o],e=n[f],t?ki.call(u,e)?u[e].push(f):u[e]=[f]:u[e]=f;return u}function df(n){var t,r;if(null==n)return[];bi(n)||(n=fe(n));t=n.length;t=t&&vf(t)&&(i(n)||pf(n))&&t||0;for(var e=n.constructor,u=-1,o="function"==typeof e&&e.prototype===n,f=wi(t),s=t>0;++u<t;)f[u]=u+"";for(r in n)s&&bf(r,t)||"constructor"==r&&(o||!ki.call(n,r))||f.push(r);return f}function tv(n){var i;n=lf(n);for(var t=-1,r=nf(n),u=r.length,f=wi(u);++t<u;)i=r[t],f[t]=[i,n[i]];return f}function wk(n,t,i){var u=null==n?r:n[t];return u===r&&(null==n||te(t,n)||(t=kf(t),n=1==t.length?n:ne(n,of(t,0,-1)),u=null==n?r:n[be(t)]),u=u===r?i:u),ie(u)?u.call(n):u}function bk(n,t,i){var e,u;if(null==n)return n;e=t+"";t=null!=n[e]||te(t,n)?[e]:kf(t);for(var f=-1,o=t.length,s=o-1,r=n;null!=r&&++f<o;)u=t[f],bi(r)&&(f==s?r[u]=i:null==r[u]&&(r[u]=bf(t[f+1])?[]:{})),r=r[u];return n}function kk(n,t,u,f){var o=i(n)||ce(n),e;return(t=hi(t,f,4),null==u)&&(o||bi(n)?(e=n.constructor,u=o?i(n)?new e:[]:de(ie(e)?e.prototype:r)):u={}),(o?cf:yf)(n,function(n,i,r){return t(u,n,i,r)}),u}function ao(n){return hs(n,nf(n))}function dk(n){return hs(n,df(n))}function gk(n,t,i){return t=+t||0,i===r?(i=t,t=0):i=+i||0,n>=uf(t,i)&&n<ur(t,i)}function nd(n,t,i){var e,u,f;return(i&&et(n,t,i)&&(t=i=r),e=null==n,u=null==t,null==i&&(u&&"boolean"==typeof n?(i=n,n=1):"boolean"==typeof t&&(i=t,u=!0)),e&&u&&(t=1,u=!1),n=+n||0,u?(t=n,n=0):t=+t||0,i||n%1||t%1)?(f=gv(),uf(n+f*(t-n+og("1e-"+((f+"").length-1))),t)):os(n,t)}function td(n){return n=e(n),n&&n.charAt(0).toUpperCase()+n.slice(1)}function iv(n){return n=e(n),n&&n.replace(wu,sr).replace(cu,"")}function id(n,t,i){n=e(n);t+="";var u=n.length;return i=i===r?u:uf(i<0?0:+i||0,u),i-=t.length,i>=0&&n.indexOf(t,i)==i}function rd(n){return n=e(n),n&&ru.test(n)?n.replace(gi,hr):n}function ud(n){return n=e(n),n&&hu.test(n)?n.replace(tr,cr):n||"(?:)"}function fd(n,t,i){var r;if(n=e(n),t=+t,r=n.length,r>=t||!le(t))return n;var u=(t-r)/2,f=ee(u),o=wo(u);return i=yl("",o,i),i.slice(0,f)+n+i}function ed(n,t,i){return(i?et(n,t,i):null==t)?t=0:t&&(t=+t),n=uv(n),ag(n,t||(vu.test(n)?16:10))}function rv(n,t){var i="";if(n=e(n),t=+t,t<1||!n||!le(t))return i;do t%2&&(i+=n),t=ee(t/2),n+=n;while(t);return i}function od(n,t,i){return n=e(n),i=null==i?0:uf(i<0?0:+i||0,n.length),n.lastIndexOf(t,i)==i}function sd(n,i,u){var c=t.templateSettings,s,o;u&&et(n,i,u)&&(i=u=r);n=e(n);i=is(ye({},u||i),c,nc);var l,h,a=is(ye({},i.imports),c.imports,nc),v=nf(a),w=hs(a,v),y=0,p=i.interpolate||at,f="__p += '",b=oh((i.escape||at).source+"|"+p.source+"|"+(p===nr?au:at).source+"|"+(i.evaluate||at).source+"|$","g"),k="//# sourceURL="+("sourceURL"in i?i.sourceURL:"lodash.templateSources["+ ++gu+"]")+"\n";if(n.replace(b,function(t,i,r,u,e,o){return r||(r=u),f+=n.slice(y,o).replace(bu,lr),i&&(l=!0,f+="' +\n__e("+i+") +\n'"),e&&(h=!0,f+="';\n"+e+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),y=o+t.length,t}),f+="';\n",s=i.variable,s||(f="with (obj) {\n"+f+"\n}\n"),f=(h?f.replace(gr,""):f).replace(nu,"$1").replace(tu,"$1;"),f="function("+(s||"obj")+") {\n"+(s?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(l?", __e = _.escape":"")+(h?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}",o=hy(function(){return hv(v,k+"return "+f).apply(r,w)}),o.source=f,rh(o))throw o;return o}function uv(n,t,i){var r=n;return(n=e(n))?(i?et(r,t,i):null==t)?n.slice(ci(n),li(n)+1):(t+="",n.slice(ei(n,t),oi(n,t)+1)):n}function hd(n,t,i){var r=n;return n=e(n),n?(i?et(r,t,i):null==t)?n.slice(ci(n)):n.slice(ei(n,t+"")):n}function cd(n,t,i){var r=n;return n=e(n),n?(i?et(r,t,i):null==t)?n.slice(0,li(n)+1):n.slice(0,oi(n,t+"")+1):n}function ld(n,t,i){var h,s,u,f,o,a,c,v,l;if(i&&et(n,t,i)&&(t=r),h=pr,s=wr,null!=t&&(bi(t)?(u="separator"in t?t.separator:u,h="length"in t?+t.length||0:h,s="omission"in t?e(t.omission):s):h=+t||0),n=e(n),h>=n.length)return n;if(f=h-s.length,f<1)return s;if(o=n.slice(0,f),null==u)return o+s;if(ka(u)){if(n.slice(f).search(u)){for(v=n.slice(0,f),u.global||(u=oh(u.source,(ir.exec(u)||"")+"g")),u.lastIndex=0;a=u.exec(v);)c=a.index;o=o.slice(0,null==c?f:c)}}else n.indexOf(u,f)!=f&&(l=o.lastIndexOf(u),l>-1&&(o=o.slice(0,l)));return o+s}function ad(n){return n=e(n),n&&iu.test(n)?n.replace(di,vr):n}function fv(n,t,i){return i&&et(n,t,i)&&(t=r),n=e(n),n.match(t||ku)||[]}function vo(n,t,i){return i&&et(n,t,i)&&(t=r),o(n)?ev(n):ro(n,t)}function vd(n){return function(){return n}}function re(n){return n}function ev(n){return we(gf(n,!0))}function yd(n,t){return sc(n,gf(t,!0))}function eh(n,t,i){var f,s;if(null==i){var h=bi(t),e=h?nf(t):r,u=e&&e.length?us(t,e):r;(u?u.length:h)||(u=!1,i=t,t=n,n=this)}u||(u=us(t,nf(t)));var o=!0,c=-1,l=ie(n),a=u.length;for(i===!1?o=!1:bi(i)&&("chain"in i)&&(o=i.chain);++c<a;)f=u[c],s=t[f],n[f]=s,l&&(n.prototype[f]=function(t){return function(){var r=this.__chain__,i,u;return o||r?(i=n(this.__wrapped__),u=i.__actions__=tf(this.__actions__),u.push({func:t,args:arguments,thisArg:n}),i.__chain__=r,i):t.apply(n,ve([this.value()],arguments))}}(s));return n}function pd(){return a._=ug,this}function ov(){}function yo(n){return te(n)?es(n):sp(n)}function wd(n){return function(t){return ne(n,kf(t),t+"")}}function bd(n,t,i){i&&et(n,t,i)&&(t=i=r);n=+n||0;i=null==i?1:+i||0;null==t?(t=n,n=0):t=+t||0;for(var u=-1,f=ur(wo((t-n)/(i||1)),0),e=wi(f);++u<f;)e[u]=n,n+=i;return e}function kd(n,t,i){if(n=ee(n),n<1||!le(n))return[];var r=-1,u=wi(uf(n,ko));for(t=ff(t,i,1);++r<n;)r<ko?u[r]=t(r):t(r);return u}function dd(n){var t=++rg;return e(n)+t}function gd(n,t){return(+n||0)+(+t||0)}function ng(n,t,u){return u&&et(n,t,u)&&(t=r),t=hi(t,u,3),1==t.length?tp(i(n)?n:ws(n),t):lp(n,t)}n=n?y.defaults(a.Object(),n,y.pick(a,du)):a;var wi=n.Array,sv=n.Date,tg=n.Error,hv=n.Function,ue=n.Math,cv=n.Number,fe=n.Object,oh=n.RegExp,lv=n.String,sf=n.TypeError,av=wi.prototype,sh=fe.prototype,ig=lv.prototype,vv=hv.prototype.toString,ki=sh.hasOwnProperty,rg=0,ef=sh.toString,ug=a._,fg=oh("^"+vv.call(ki).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),eg=n.ArrayBuffer,ke=n.clearTimeout,og=n.parseFloat,sg=ue.pow,hg=sh.propertyIsEnumerable,yv=he(n,"Set"),po=n.setTimeout,pv=av.splice,wv=n.Uint8Array,bv=he(n,"WeakMap"),wo=ue.ceil,kv=he(fe,"create"),ee=ue.floor,cg=he(wi,"isArray"),le=n.isFinite,dv=he(fe,"keys"),ur=ue.max,uf=ue.min,lg=he(sv,"now"),ag=n.parseInt,gv=ue.random,vg=cv.NEGATIVE_INFINITY,bo=cv.POSITIVE_INFINITY,ko=4294967295,yg=ko-1,pg=ko>>>1,ny=9007199254740991,go=bv&&new bv,ns={};t.support={};t.templateSettings={escape:uu,evaluate:fu,interpolate:nr,variable:"",imports:{_:t}};var de=function(){function n(){}return function(t){if(bi(t)){n.prototype=t;var i=new n;n.prototype=r}return i||{}}}(),af=dc(yf),hh=dc(rs,!0),ch=gc(),ty=gc(!0),iy=go?function(n,t){return go.set(n,t),n}:re,lh=go?function(n){return go.get(n)}:ov,ge=es("length"),ry=function(){var n=0,t=0;return function(i,r){var u=no(),f=kr-(u-t);if(t=u,f>0){if(++n>=br)return i}else n=0;return iy(i,r)}}(),wg=vt(function(n,t){return o(n)&&rr(n)?pe(n,rf(t,!1,!0)):[]}),bg=ul(),kg=ul(!0),dg=vt(function(n){for(var t,s,h=n.length,i=h,u=wi(l),f=se(),a=f==p,e=[];i--;)t=n[i]=rr(t=n[i])?t:[],u[i]=a&&t.length>=120?ls(i&&t):null;var o=n[0],c=-1,l=o?o.length:0,r=u[0];n:for(;++c<l;)if(t=o[c],(r?io(r,t):f(e,t,0))<0){for(i=h;--i;)if(s=u[i],(s?io(s,t):f(n[i],t,0))<0)continue n;r&&r.push(t);e.push(t)}return e}),gg=vt(function(n,t){t=rf(t);var i=tc(n,t);return cc(n,t.sort(yt)),i}),nn=pl(),tn=pl(!0),rn=vt(function(n){return ss(rf(n,!1,!0))}),un=vt(function(n,t){return rr(n)?pe(n,t):[]}),fn=vt(ks),en=vt(function(n){var t=n.length,u=t>2?n[t-2]:r,i=t>1?n[t-1]:r;return t>2&&"function"==typeof u?t-=2:(u=t>1&&"function"==typeof i?(--t,i):r,i=r),n.length=t,oa(n,u,i)}),on=vt(function(n){return n=rf(n),this.thru(function(t){return ky(i(t)?t:[lf(t)],n)})}),sn=vt(function(n,t){return tc(n,rf(t))}),hn=eo(function(n,t,i){ki.call(n,i)?++n[i]:n[i]=1}),ah=rl(af),cn=rl(hh,!0),uy=ol(cf,af),fy=ol(dy,hh),ln=eo(function(n,t,i){ki.call(n,i)?n[i].push(t):n[i]=[t]}),an=eo(function(n,t,i){n[i]=t}),vn=vt(function(n,t,i){var f=-1,e="function"==typeof t,o=te(t),u=rr(n)?wi(n.length):[];return af(n,function(n){var s=e?t:o&&null!=n?n[t]:r;u[++f]=s?s.apply(n,i):ys(n,t,i)}),u}),yn=eo(function(n,t,i){n[i?0:1].push(t)},function(){return[[],[]]}),vh=vl(dh,af),ey=vl(np,hh),pn=vt(function(n,t){if(null==n)return[];var i=t[2];return i&&et(t[0],t[1],i)&&(t.length=1),ac(n,rf(t),[])}),no=lg||function(){return(new sv).getTime()},oy=vt(function(n,t,i){var r=h,u;return i.length&&(u=w(i,oy.placeholder),r|=c),wf(n,r,t,i,u)}),wn=vt(function(n,t){var i,u,r;for(t=t.length?rf(t):fh(n),i=-1,u=t.length;++i<u;)r=t[i],n[r]=wf(n[r],h,n);return n}),sy=vt(function(n,t,i){var r=h|b,u;return i.length&&(u=w(i,sy.placeholder),r|=c),wf(t,r,n,i,u)}),bn=nl(k),kn=nl(yi),dn=vt(function(n,t){return rc(n,1,t)}),gn=vt(function(n,t,i){return rc(n,t,i)}),ntt=el(),yh=el(!0),ttt=vt(function(n,t){if(t=rf(t),"function"!=typeof n||!kh(t,fr))throw new sf(s);var i=t.length;return vt(function(r){for(var u=uf(r.length,i);u--;)r[u]=t[u](r[u]);return n.apply(this,r)})}),itt=al(c),rtt=al(d),utt=vt(function(n,t){return wf(n,st,r,r,r,rf(t))}),i=cg||function(n){return o(n)&&vf(n.length)&&ef.call(n)==nt},ph=kc(hc),wh=kc(function(n,t,i){return i?is(n,t,i):ye(n,t)}),ftt=tl(wh,ip),ett=tl(ph,kl),ott=fl(yf),stt=fl(rs),htt=sl(ch),ctt=sl(ty),ltt=hl(yf),att=hl(rs),nf=dv?function(n){var t=null==n?r:n.constructor;return"function"==typeof t&&t.prototype===n||"function"!=typeof n&&rr(n)?na(n):bi(n)?dv(n):[]}:na,vtt=cl(!0),ytt=cl(),ptt=vt(function(n,t){var t,i;return null==n?{}:"function"!=typeof t[0]?(t=oe(rf(t),lv),dl(n,pe(df(n),t))):(i=ff(t[0],t[1],3),gl(n,function(n,t,r){return!i(n,t,r)}))}),wtt=vt(function(n,t){return null==n?{}:"function"==typeof t[0]?gl(n,ff(t[0],t[1],3)):dl(n,rf(t))}),btt=oo(function(n,t,i){return t=t.toLowerCase(),n+(i?t.charAt(0).toUpperCase()+t.slice(1):t)}),ktt=oo(function(n,t,i){return n+(i?"-":"")+t.toLowerCase()}),dtt=ll(),gtt=ll(!0),nit=oo(function(n,t,i){return n+(i?"_":"")+t.toLowerCase()}),tit=oo(function(n,t,i){return n+(i?" ":"")+(t.charAt(0).toUpperCase()+t.slice(1))}),hy=vt(function(n,t){try{return n.apply(r,t)}catch(i){return rh(i)?i:new tg(i)}}),iit=vt(function(n,t){return function(i){return ys(i,n,t)}}),rit=vt(function(n,t){return function(i){return ys(n,i,t)}}),uit=vs("ceil"),fit=vs("floor"),eit=il(ya,vg),oit=il(da,bo),sit=vs("round");return t.prototype=to.prototype,hf.prototype=de(to.prototype),hf.prototype.constructor=hf,ot.prototype=de(to.prototype),ot.prototype.constructor=ot,ae.prototype.delete=vy,ae.prototype.get=yy,ae.prototype.has=py,ae.prototype.set=wy,bh.prototype.push=by,ih.Cache=ae,t.after=vb,t.ary=yb,t.assign=wh,t.at=sn,t.before=aa,t.bind=oy,t.bindAll=wn,t.bindKey=sy,t.callback=vo,t.chain=ha,t.chunk=iw,t.compact=rw,t.constant=vd,t.countBy=hn,t.create=ak,t.curry=bn,t.curryRight=kn,t.debounce=va,t.defaults=ftt,t.defaultsDeep=ett,t.defer=dn,t.delay=gn,t.difference=wg,t.drop=ia,t.dropRight=ra,t.dropRightWhile=uw,t.dropWhile=fw,t.fill=ew,t.filter=gs,t.flatten=ow,t.flattenDeep=sw,t.flow=ntt,t.flowRight=yh,t.forEach=uy,t.forEachRight=fy,t.forIn=htt,t.forInRight=ctt,t.forOwn=ltt,t.forOwnRight=att,t.functions=fh,t.groupBy=ln,t.indexBy=an,t.initial=hw,t.intersection=dg,t.invert=pk,t.invoke=vn,t.keys=nf,t.keysIn=df,t.map=th,t.mapKeys=vtt,t.mapValues=ytt,t.matches=ev,t.matchesProperty=yd,t.memoize=ih,t.merge=ph,t.method=iit,t.methodOf=rit,t.mixin=eh,t.modArgs=ttt,t.negate=pb,t.omit=ptt,t.once=wb,t.pairs=tv,t.partial=itt,t.partialRight=rtt,t.partition=yn,t.pick=wtt,t.pluck=eb,t.property=yo,t.propertyOf=wd,t.pull=lw,t.pullAt=gg,t.range=bd,t.rearg=utt,t.reject=ob,t.remove=aw,t.rest=fa,t.restParam=vt,t.set=bk,t.shuffle=sb,t.slice=vw,t.sortBy=cb,t.sortByAll=pn,t.sortByOrder=lb,t.spread=bb,t.take=yw,t.takeRight=pw,t.takeRightWhile=ww,t.takeWhile=bw,t.tap=dw,t.throttle=kb,t.thru=ds,t.times=kd,t.toArray=ga,t.toPlainObject=nv,t.transform=kk,t.union=rn,t.uniq=ea,t.unzip=ks,t.unzipWith=oa,t.values=ao,t.valuesIn=dk,t.where=ab,t.without=un,t.wrap=db,t.xor=kw,t.zip=fn,t.zipObject=sa,t.zipWith=en,t.backflow=yh,t.collect=th,t.compose=yh,t.each=uy,t.eachRight=fy,t.extend=wh,t.iteratee=vo,t.methods=fh,t.object=sa,t.select=gs,t.tail=fa,t.unique=ea,eh(t,t),t.add=gd,t.attempt=hy,t.camelCase=btt,t.capitalize=td,t.ceil=uit,t.clone=gb,t.cloneDeep=nk,t.deburr=iv,t.endsWith=id,t.escape=rd,t.escapeRegExp=ud,t.every=ca,t.find=ah,t.findIndex=bg,t.findKey=ott,t.findLast=cn,t.findLastIndex=kg,t.findLastKey=stt,t.findWhere=fb,t.first=ua,t.floor=fit,t.get=vk,t.gt=ya,t.gte=tk,t.has=yk,t.identity=re,t.includes=nh,t.indexOf=bs,t.inRange=gk,t.isArguments=pf,t.isArray=i,t.isBoolean=ik,t.isDate=rk,t.isElement=uk,t.isEmpty=fk,t.isEqual=pa,t.isError=rh,t.isFinite=ek,t.isFunction=ie,t.isMatch=ok,t.isNaN=sk,t.isNative=wa,t.isNull=hk,t.isNumber=ba,t.isObject=bi,t.isPlainObject=lo,t.isRegExp=ka,t.isString=uh,t.isTypedArray=ce,t.isUndefined=ck,t.kebabCase=ktt,t.last=be,t.lastIndexOf=cw,t.lt=da,t.lte=lk,t.max=eit,t.min=oit,t.noConflict=pd,t.noop=ov,t.now=no,t.pad=fd,t.padLeft=dtt,t.padRight=gtt,t.parseInt=ed,t.random=nd,t.reduce=vh,t.reduceRight=ey,t.repeat=rv,t.result=wk,t.round=sit,t.runInContext=ai,t.size=hb,t.snakeCase=nit,t.some=la,t.sortedIndex=nn,t.sortedLastIndex=tn,t.startCase=tit,t.startsWith=od,t.sum=ng,t.template=sd,t.trim=uv,t.trimLeft=hd,t.trimRight=cd,t.trunc=ld,t.unescape=ad,t.uniqueId=dd,t.words=fv,t.all=ca,t.any=la,t.contains=nh,t.eq=pa,t.detect=ah,t.foldl=vh,t.foldr=ey,t.head=ua,t.include=nh,t.inject=vh,eh(t,function(){var n={};return yf(t,function(i,r){t.prototype[r]||(n[r]=i)}),n}(),!1),t.sample=co,t.prototype.sample=function(n){return this.__chain__||null!=n?this.thru(function(t){return co(t,n)}):co(this.value())},t.VERSION=yr,cf(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){t[n].placeholder=t}),cf(["drop","take"],function(n,t){ot.prototype[n]=function(i){var u=this.__filtered__,r;return u&&!t?new ot(this):(i=null==i?1:ur(ee(i)||0,0),r=this.clone(),u?r.__takeCount__=uf(r.__takeCount__,i):r.__views__.push({size:i,type:n+(r.__dir__<0?"Right":"")}),r)};ot.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),cf(["filter","map","takeWhile"],function(n,t){var i=t+1,r=i!=pi;ot.prototype[n]=function(n,t){var u=this.clone();return u.__iteratees__.push({iteratee:hi(n,t,1),type:i}),u.__filtered__=u.__filtered__||r,u}}),cf(["first","last"],function(n,t){var i="take"+(t?"Right":"");ot.prototype[n]=function(){return this[i](1).value()[0]}}),cf(["initial","rest"],function(n,t){var i="drop"+(t?"":"Right");ot.prototype[n]=function(){return this.__filtered__?new ot(this):this[i](1)}}),cf(["pluck","where"],function(n,t){var i=t?"filter":"map",r=t?we:yo;ot.prototype[n]=function(n){return this[i](r(n))}}),ot.prototype.compact=function(){return this.filter(re)},ot.prototype.reject=function(n,t){return n=hi(n,t,1),this.filter(function(t){return!n(t)})},ot.prototype.slice=function(n,t){n=null==n?0:+n||0;var i=this;return i.__filtered__&&(n>0||t<0)?new ot(i):(n<0?i=i.takeRight(-n):n&&(i=i.drop(n)),t!==r&&(t=+t||0,i=t<0?i.dropRight(-t):i.take(t-n)),i)},ot.prototype.takeRightWhile=function(n,t){return this.reverse().takeWhile(n,t).reverse()},ot.prototype.toArray=function(){return this.take(bo)},yf(ot.prototype,function(n,u){var o=/^(?:filter|map|reject)|While$/.test(u),f=/^(?:first|last)$/.test(u),e=t[f?"take"+("last"==u?"Right":""):u];e&&(t.prototype[u]=function(){var u=f?[1]:arguments,s=this.__chain__,t=this.__wrapped__,w=!!this.__actions__.length,h=t instanceof ot,a=u[0],c=h||i(t),l;c&&o&&"function"==typeof a&&1!=a.length&&(h=c=!1);var v=function(n){return f&&s?e(n,1)[0]:e.apply(r,ve([n],u))},y={func:ds,args:[v],thisArg:r},p=h&&!w;return f&&!s?p?(t=t.clone(),t.__actions__.push(y),n.call(t)):e.call(r,this.value())[0]:!f&&c?(t=p?t:new ot(this),l=n.apply(t,u),l.__actions__.push(y),new hf(l,s)):this.thru(v)})}),cf(["join","pop","push","replace","shift","sort","splice","split","unshift"],function(n){var i=(/^(?:replace|split)$/.test(n)?ig:av)[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",u=/^(?:join|pop|replace|shift)$/.test(n);t.prototype[n]=function(){var n=arguments;return u&&!this.__chain__?i.apply(this.value(),n):this[r](function(t){return i.apply(t,n)})}}),yf(ot.prototype,function(n,i){var r=t[i],u,f;r&&(u=r.name,f=ns[u]||(ns[u]=[]),f.push({name:i,func:r}))}),ns[as(r,b).name]=[{name:"wrapper",func:r}],ot.prototype.clone=cy,ot.prototype.reverse=ly,ot.prototype.value=ay,t.prototype.chain=gw,t.prototype.commit=nb,t.prototype.concat=on,t.prototype.plant=tb,t.prototype.reverse=ib,t.prototype.toString=rb,t.prototype.run=t.prototype.toJSON=t.prototype.valueOf=t.prototype.value=ub,t.prototype.collect=t.prototype.map,t.prototype.head=t.prototype.first,t.prototype.select=t.prototype.filter,t.prototype.tail=t.prototype.rest,t}var r,yr="3.10.1",h=1,b=2,vi=4,k=8,yi=16,c=32,d=64,v=128,st=256,pr=30,wr="...",br=150,kr=16,ht=200,dr=1,pi=2,s="Expected a function",pt="__lodash_placeholder__",g="[object Arguments]",nt="[object Array]",tt="[object Boolean]",it="[object Date]",ct="[object Error]",lt="[object Function]",wi="[object Map]",rt="[object Number]",l="[object Object]",ut="[object RegExp]",bi="[object Set]",ft="[object String]",ki="[object WeakMap]",wt="[object ArrayBuffer]",bt="[object Float32Array]",kt="[object Float64Array]",dt="[object Int8Array]",gt="[object Int16Array]",ni="[object Int32Array]",ti="[object Uint8Array]",ii="[object Uint8ClampedArray]",ri="[object Uint16Array]",ui="[object Uint32Array]",gr=/\b__p \+= '';/g,nu=/\b(__p \+=) '' \+/g,tu=/(__e\(.*?\)|\b__t\)) \+\n'';/g,di=/&(?:amp|lt|gt|quot|#39|#96);/g,gi=/[&<>"'`]/g,iu=RegExp(di.source),ru=RegExp(gi.source),uu=/<%-([\s\S]+?)%>/g,fu=/<%([\s\S]+?)%>/g,nr=/<%=([\s\S]+?)%>/g,eu=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,ou=/^\w*$/,su=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,tr=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,hu=RegExp(tr.source),cu=/[\u0300-\u036f\ufe20-\ufe23]/g,lu=/\\(\\)?/g,au=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ir=/\w*$/,vu=/^0[xX]/,yu=/^\[object .+?Constructor\]$/,pu=/^\d+$/,wu=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,at=/($^)/,bu=/['\n\r\u2028\u2029\\]/g,ku=function(){var n="[A-Z\\xc0-\\xd6\\xd8-\\xde]",t="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(n+"+(?="+n+t+")|"+n+"?"+t+"|"+n+"+|[0-9]+","g")}(),du=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","isFinite","parseFloat","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap"],gu=-1,f={},u;f[bt]=f[kt]=f[dt]=f[gt]=f[ni]=f[ti]=f[ii]=f[ri]=f[ui]=!0;f[g]=f[nt]=f[wt]=f[tt]=f[it]=f[ct]=f[lt]=f[wi]=f[rt]=f[l]=f[ut]=f[bi]=f[ft]=f[ki]=!1;u={};u[g]=u[nt]=u[wt]=u[tt]=u[it]=u[bt]=u[kt]=u[dt]=u[gt]=u[ni]=u[rt]=u[l]=u[ut]=u[ft]=u[ti]=u[ii]=u[ri]=u[ui]=!0;u[ct]=u[lt]=u[wi]=u[bi]=u[ki]=!1;var nf={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},tf={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},rf={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},vt={"function":!0,object:!0},uf={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},rr={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},et=vt[typeof i]&&i&&!i.nodeType&&i,ot=vt[typeof t]&&t&&!t.nodeType&&t,ff=et&&ot&&"object"==typeof n&&n&&n.Object&&n,ef=vt[typeof self]&&self&&self.Object&&self,ur=vt[typeof window]&&window&&window.Object&&window,of=ot&&ot.exports===et&&et,a=ff||ur!==(this&&this.window)&&ur||ef||this,y=ai();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(a._=y,define(function(){return y})):et&&ot?of?(ot.exports=y)._=y:et._=y:a._=y}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(n,t){"use strict";function r(n,t){return{link:function(r,u,f){var e=function(n,r){var e=f.pageTitle||"Untitled page",s=f.titleElement||"pageTitle",h=f.pattern||null,o;i.has(r,["$$route","data",s])&&i.isEmpty(r.$$route.data[s])===!1&&(e=r.$$route.data[s]);o=r;i.has(o,"locals")&&(o=o.locals);e=t(e)(o);i.isString(h)&&(e=h.replace(/\%s/g,e));u.text(e)};n.$on("$routeChangeSuccess",e)},restrict:"A",scope:!1}}r.$inject=["$rootScope","$interpolate","$route"];var i=n("lodash");t.exports=r},{lodash:1}],3:[function(n,t){"use strict";function r(n,t,r){return{link:function(u,f,e){var o=function(n,u){var o=e.stateTitle||"Untitled page",h=e.titleElement||"pageTitle",c=e.pattern||null,s;i.has(u,"data")&&i.has(u.data,h)&&i.isEmpty(u.data[h])===!1&&(o=u.data[h]);s=r.$current;i.has(s,"locals")&&i.has(s.locals,"globals")&&(s=s.locals.globals);o=t(o)(s);i.isString(c)&&(o=c.replace(/\%s/g,o));f.text(o)};n.$on("$stateChangeSuccess",o)},restrict:"A",scope:!1}}r.$inject=["$rootScope","$interpolate","$state"];var i=n("lodash");t.exports=r},{lodash:1}],4:[function(n,t){"use strict";var i=angular.module("ngPageTitle",[]).directive("stateTitle",n("./directive/stateTitle")).directive("pageTitle",n("./directive/pageTitle"));t.exports=i},{"./directive/pageTitle":2,"./directive/stateTitle":3}]},{},[4]);!function(n,t){"function"==typeof define&&define.amd?define(function(){return t()}):"undefined"!=typeof module&&"object"==typeof exports?module.exports=t():n.Wkt=t()}(this,function(){var t,i,n;return this,n=function(t){return t instanceof n?t:this instanceof n?void(this._wrapped=t):new n(t)},t=function(n,t){return n.substring(0,t.length)===t},i=function(n,t){return n.substring(n.length-t.length)===t},n.delimiter=" ",n.isArray=function(n){return!(!n||n.constructor!==Array)},n.trim=function(n,r){for(r=r||" ";t(n,r);)n=n.substring(1);for(;i(n,r);)n=n.substring(0,n.length-1);return n},n.Wkt=function(t){this.delimiter=n.delimiter||" ";this.wrapVertices=!0;this.regExes={typeStr:/^\s*(\w+)\s*\(\s*(.*)\s*\)\s*$/,spaces:/\s+|\+/,numeric:/-*\d+(\.*\d+)?/,comma:/\s*,\s*/,parenComma:/\)\s*,\s*\(/,coord:/-*\d+\.*\d+ -*\d+\.*\d+/,doubleParenComma:/\)\s*\)\s*,\s*\(\s*\(/,trimParens:/^\s*\(?(.*?)\)?\s*$/,ogcTypes:/^(multi)?(point|line|polygon|box)?(string)?$/i,crudeJson:/^{.*"(type|coordinates|geometries|features)":.*}$/};this.components=void 0;t&&"string"==typeof t?this.read(t):t&&void 0!==typeof t&&this.fromObject(t)},n.Wkt.prototype.isCollection=function(){switch(this.type.slice(0,5)){case"multi":case"polyg":return!0;default:return!1}},n.Wkt.prototype.sameCoords=function(n,t){return n.x===t.x&&n.y===t.y},n.Wkt.prototype.fromObject=function(n){var t;return t=n.hasOwnProperty("type")&&n.hasOwnProperty("coordinates")?this.fromJson(n):this.deconstruct.call(this,n),this.components=t.components,this.isRectangle=t.isRectangle||!1,this.type=t.type,this},n.Wkt.prototype.toObject=function(t){var i=this.construct[this.type].call(this,t);return"object"!=typeof i||n.isArray(i)||(i.properties=this.properties),i},n.Wkt.prototype.toString=function(){return this.write()},n.Wkt.prototype.fromJson=function(t){var r,u,f,i,o,e;if(this.type=t.type.toLowerCase(),this.components=[],t.hasOwnProperty("geometry"))return this.fromJson(t.geometry),this.properties=t.properties,this;if(i=t.coordinates,n.isArray(i[0])){for(r in i)if(i.hasOwnProperty(r))if(n.isArray(i[r][0])){e=[];for(u in i[r])if(i[r].hasOwnProperty(u))if(n.isArray(i[r][u][0])){o=[];for(f in i[r][u])i[r][u].hasOwnProperty(f)&&o.push({x:i[r][u][f][0],y:i[r][u][f][1]});e.push(o)}else e.push({x:i[r][u][0],y:i[r][u][1]});this.components.push(e)}else"multipoint"===this.type?this.components.push([{x:i[r][0],y:i[r][1]}]):this.components.push({x:i[r][0],y:i[r][1]})}else this.components.push({x:i[0],y:i[1]});return this},n.Wkt.prototype.toJson=function(){var t,r,i,u,e,o,f;if(t=this.components,r={coordinates:[],type:function(){var t,n,i;n=this.regExes.ogcTypes.exec(this.type).slice(1);i=[];for(t in n)n.hasOwnProperty(t)&&void 0!==n[t]&&i.push(n[t].toLowerCase().slice(0,1).toUpperCase()+n[t].toLowerCase().slice(1));return i}.call(this).join("")},"box"===this.type.toLowerCase()){r.type="Polygon";r.bbox=[];for(i in t)t.hasOwnProperty(i)&&(r.bbox=r.bbox.concat([t[i].x,t[i].y]));return r.coordinates=[[[t[0].x,t[0].y],[t[0].x,t[1].y],[t[1].x,t[1].y],[t[1].x,t[0].y],[t[0].x,t[0].y]]],r}for(i in t)if(t.hasOwnProperty(i))if(n.isArray(t[i])){f=[];for(u in t[i])if(t[i].hasOwnProperty(u))if(n.isArray(t[i][u])){o=[];for(e in t[i][u])t[i][u].hasOwnProperty(e)&&o.push([t[i][u][e].x,t[i][u][e].y]);f.push(o)}else t[i].length>1?f.push([t[i][u].x,t[i][u].y]):f=f.concat([t[i][u].x,t[i][u].y]);r.coordinates.push(f)}else t.length>1?r.coordinates.push([t[i].x,t[i].y]):r.coordinates=r.coordinates.concat([t[i].x,t[i].y]);return r},n.Wkt.prototype.merge=function(n){var t=this.type.slice(0,5);if(this.type!==n.type&&this.type.slice(5,this.type.length)!==n.type)throw TypeError("The input geometry types must agree or the calling this.Wkt.Wkt instance must be a multigeometry of the other");switch(t){case"point":this.components=[this.components.concat(n.components)];break;case"multi":this.components=this.components.concat("multi"===n.type.slice(0,5)?n.components:[n.components]);break;default:this.components=[this.components,n.components]}return"multi"!==t&&(this.type="multi"+this.type),this},n.Wkt.prototype.read=function(n){var t;if(t=this.regExes.typeStr.exec(n))this.type=t[1].toLowerCase(),this.base=t[2],this.ingest[this.type]&&(this.components=this.ingest[this.type].apply(this,[this.base]));else{if(!this.regExes.crudeJson.test(n))throw console.log("Invalid WKT string provided to read()"),{name:"WKTError",message:"Invalid WKT string provided to read()"};if("object"!=typeof JSON||"function"!=typeof JSON.parse)throw console.log("JSON.parse() is not available; cannot parse GeoJSON strings"),{name:"JSONError",message:"JSON.parse() is not available; cannot parse GeoJSON strings"};this.fromJson(JSON.parse(n))}return this},n.Wkt.prototype.write=function(n){var i,t,r;for(n=n||this.components,(t=[]).push(this.type.toUpperCase()+"("),i=0;i<n.length;i+=1){if(this.isCollection()&&i>0&&t.push(","),!this.extract[this.type])return null;r=this.extract[this.type].apply(this,[n[i]]);this.isCollection()&&"multipoint"!==this.type?t.push("("+r+")"):(t.push(r),i!==n.length-1&&"multipoint"!==this.type&&t.push(","))}return t.push(")"),t.join("")},n.Wkt.prototype.extract={point:function(n){return String(n.x)+this.delimiter+String(n.y)},multipoint:function(n){for(var i,r=[],t=0;t<n.length;t+=1)i=this.extract.point.apply(this,[n[t]]),this.wrapVertices&&(i="("+i+")"),r.push(i);return r.join(",")},linestring:function(n){return this.extract.point.apply(this,[n])},multilinestring:function(n){var t,i=[];if(n.length)for(t=0;t<n.length;t+=1)i.push(this.extract.linestring.apply(this,[n[t]]));else i.push(this.extract.point.apply(this,[n]));return i.join(",")},polygon:function(n){return this.extract.multilinestring.apply(this,[n])},multipolygon:function(n){for(var i=[],t=0;t<n.length;t+=1)i.push("("+this.extract.polygon.apply(this,[n[t]])+")");return i.join(",")},box:function(n){return this.extract.linestring.apply(this,[n])},geometrycollection:function(){console.log("The geometrycollection WKT type is not yet supported.")}},n.Wkt.prototype.ingest={point:function(t){var i=n.trim(t).split(this.regExes.spaces);return[{x:parseFloat(this.regExes.numeric.exec(i[0])[0]),y:parseFloat(this.regExes.numeric.exec(i[1])[0])}]},multipoint:function(t){var i,r,u;for(r=[],u=n.trim(t).split(this.regExes.comma),i=0;i<u.length;i+=1)r.push(this.ingest.point.apply(this,[u[i]]));return r},linestring:function(n){var t,r,i;for(r=this.ingest.multipoint.apply(this,[n]),i=[],t=0;t<r.length;t+=1)i=i.concat(r[t]);return i},multilinestring:function(t){var i,u,f,r;for(u=[],1===(r=n.trim(t).split(this.regExes.doubleParenComma)).length&&(r=n.trim(t).split(this.regExes.parenComma)),i=0;i<r.length;i+=1)f=r[i].replace(this.regExes.trimParens,"$1"),u.push(this.ingest.linestring.apply(this,[f]));return u},polygon:function(t){var r,u,f,e,o,s,i,h,c;for(s=n.trim(t).split(this.regExes.parenComma),f=[],r=0;r<s.length;r+=1){for(o=s[r].replace(this.regExes.trimParens,"$1").split(this.regExes.comma),e=[],u=0;u<o.length;u+=1)i=o[u].split(this.regExes.spaces),(i.length>2&&(i=i.filter(function(n){return""!=n})),2===i.length)&&(h=i[0],c=i[1],e.push({x:parseFloat(h),y:parseFloat(c)}));f.push(e)}return f},box:function(n){var t,r,i;for(r=this.ingest.multipoint.apply(this,[n]),i=[],t=0;t<r.length;t+=1)i=i.concat(r[t]);return i},multipolygon:function(t){var i,r,f,u;for(r=[],u=n.trim(t).split(this.regExes.doubleParenComma),i=0;i<u.length;i+=1)f=u[i].replace(this.regExes.trimParens,"$1"),r.push(this.ingest.polygon.apply(this,[f]));return r},geometrycollection:function(){console.log("The geometrycollection WKT type is not yet supported.")}},n});!function(n){"use strict";n.module("vcRecaptcha",[])}(angular),function(n){"use strict";function t(){throw new Error('You need to set the "key" attribute to your public reCaptcha key. If you don\'t have a key, please get one from https://www.google.com/recaptcha/admin/create');}n.module("vcRecaptcha").provider("vcRecaptchaService",function(){var r=this,i={};r.onLoadFunctionName="vcRecaptchaApiLoaded";r.setDefaults=function(t){n.copy(t,i)};r.setSiteKey=function(n){i.key=n};r.setTheme=function(n){i.theme=n};r.setStoken=function(n){i.stoken=n};r.setSize=function(n){i.size=n};r.setType=function(n){i.type=n};r.setLang=function(n){i.lang=n};r.setBadge=function(n){i.badge=n};r.setOnLoadFunctionName=function(n){r.onLoadFunctionName=n};r.$get=["$rootScope","$window","$q","$document",function(u,f,e,o){function y(){return s?e.when(s):p}function l(){if(!s)throw new Error("reCaptcha has not been loaded yet.");}var s,v=e.defer(),p=v.promise,c={},a,h;return f.vcRecaptchaApiLoadedCallback=f.vcRecaptchaApiLoadedCallback||[],a=function(){s=f.grecaptcha;v.resolve(s)},(f.vcRecaptchaApiLoadedCallback.push(a),f[r.onLoadFunctionName]=function(){f.vcRecaptchaApiLoadedCallback.forEach(function(n){n()})},n.isDefined(f.grecaptcha))?a():(h=f.document.createElement("script"),h.async=!0,h.defer=!0,h.src="https://www.google.com/recaptcha/api.js?onload="+r.onLoadFunctionName+"&render=explicit",o.find("body").append(h)),{create:function(n,r){return r.sitekey=r.key||i.key,r.theme=r.theme||i.theme,r.stoken=r.stoken||i.stoken,r.size=r.size||i.size,r.type=r.type||i.type,r.hl=r.lang||i.lang,r.badge=r.badge||i.badge,r.sitekey&&40===r.sitekey.length||t(),y().then(function(t){var i=t.render(n,r);return c[i]=n,i})},reload:function(n){l();s.reset(n);u.$broadcast("reCaptchaReset",n)},execute:function(n){l();s.execute(n)},useLang:function(n,t){var u=c[n],i,r;if(!u)throw new Error("reCaptcha Widget ID not exists",n);if(i=u.querySelector("iframe"),!t)return i&&i.src&&/[?&]hl=\w+/.test(i.src)?i.src.replace(/.+[?&]hl=(\w+)([^\w].+)?/,"$1"):null;i&&i.src&&(r=i.src,/[?&]hl=/.test(r)?r=r.replace(/([?&]hl=)\w+/,"$1"+t):r+=(-1===r.indexOf("?")?"?":"&")+"hl="+t,i.src=r)},getResponse:function(n){return l(),s.getResponse(n)},getInstance:function(n){return c[n]},destroy:function(n){delete c[n]}}}]})}(angular),function(n){"use strict";n.module("vcRecaptcha").directive("vcRecaptcha",["$document","$timeout","vcRecaptchaService",function(t,i,r){return{restrict:"A",require:"?^^form",scope:{response:"=?ngModel",key:"=?",stoken:"=?",theme:"=?",size:"=?",type:"=?",lang:"=?",badge:"=?",tabindex:"=?",required:"=?",onCreate:"&",onSuccess:"&",onExpire:"&"},link:function(u,f,e,o){function h(){o&&o.$setValidity("recaptcha",null);l()}function c(){i(function(){u.response="";s();u.onExpire({widgetId:u.widgetId})})}function s(){o&&o.$setValidity("recaptcha",!1===u.required?null:Boolean(u.response))}function l(){r.destroy(u.widgetId);n.element(t[0].querySelectorAll(".pls-container")).parent().remove()}u.widgetId=null;o&&n.isDefined(e.required)&&u.$watch("required",s);var a=u.$watch("key",function(t){var o=function(n){i(function(){u.response=n;s();u.onSuccess({response:n,widgetId:u.widgetId})})};r.create(f[0],{callback:o,key:t,stoken:u.stoken||e.stoken||null,theme:u.theme||e.theme||null,type:u.type||e.type||null,lang:u.lang||e.lang||null,tabindex:u.tabindex||e.tabindex||null,size:u.size||e.size||null,badge:u.badge||e.badge||null,"expired-callback":c}).then(function(t){s();u.widgetId=t;u.onCreate({widgetId:t});u.$on("$destroy",h);u.$on("reCaptchaReset",function(i,r){(n.isUndefined(r)||t===r)&&(u.response="",s())})});a()})}}}])}(angular);!function(n,t){"use strict";"undefined"!=typeof module&&module.exports?(t("undefined"==typeof angular?require("angular"):angular),module.exports="angular-google-analytics"):"function"==typeof define&&define.amd?define(["angular"],t):t(n.angular)}(this,function(n,t){"use strict";return n.module("angular-google-analytics",[]).provider("Analytics",function(){var i,g,a,v,e,u=!0,f="auto",st=!1,nt=!1,tt="USD",it=!1,rt=!1,y=!1,ut=!1,o=!1,s=!1,p=!1,w=!1,b=!1,k=!1,r=!1,ft="$routeChangeSuccess",h=!1,d=!1,et=!1,c="",l=!0,ot=!1;this.log=[];this.offlineQueue=[];this.setAccount=function(r){return i=n.isUndefined(r)||r===!1?t:n.isArray(r)?r:n.isObject(r)?[r]:[{tracker:r,trackEvent:!0}],this};this.trackPages=function(n){return l=!!n,this};this.trackPrefix=function(n){return c=n,this};this.setDomainName=function(n){return a=n,this};this.useDisplayFeatures=function(n){return y=!!n,this};this.useAnalytics=function(n){return u=!!n,this};this.useEnhancedLinkAttribution=function(n){return p=!!n,this};this.useCrossDomainLinker=function(n){return nt=!!n,this};this.setCrossLinkDomains=function(n){return g=n,this};this.setPageEvent=function(n){return ft=n,this};this.setCookieConfig=function(n){return f=n,this};this.useECommerce=function(n,t){return o=!!n,s=!!t,this};this.setCurrency=function(n){return tt=n,this};this.setRemoveRegExp=function(n){return n instanceof RegExp&&(e=n),this};this.setExperimentId=function(n){return v=n,this};this.ignoreFirstPageLoad=function(n){return w=!!n,this};this.trackUrlParams=function(n){return ot=!!n,this};this.disableAnalytics=function(n){return ut=!!n,this};this.setHybridMobileSupport=function(n){return k=!!n,this};this.startOffline=function(n){return r=!!n,r===!0&&this.delayScriptTag(!0),this};this.delayScriptTag=function(n){return rt=!!n,this};this.logAllCalls=function(n){return b=!!n,this};this.enterTestMode=function(){return d=!0,this};this.enterDebugMode=function(n){return it=!0,et=!!n,this};this.readFromRoute=function(n){return h=!!n,this};this.$get=["$document","$location","$log","$rootScope","$window","$injector",function(ht,ct,lt,at,vt,yt){var pt=this,dt=function(t,i){return n.isObject(i)&&n.isDefined(i[t])},ti=function(n,t,i){return dt(n,t)&&t[n]===i},gt=function(t,i){return n.isString(i)?i+"."+t:dt("name",i)?i.name+"."+t:t},ri={};h&&(yt.has("$route")?ri=yt.get("$route"):lt.warn("$route service is not available. Make sure you have included ng-route in your application dependencies."));var ui=function(){if(h&&ri.current&&"pageTrack"in ri.current)return ri.current.pageTrack;var n=ot?ct.url():ct.path();return e?n.replace(e,""):n},oi=function(){var i={utm_source:"campaignSource",utm_medium:"campaignMedium",utm_term:"campaignTerm",utm_content:"campaignContent",utm_campaign:"campaignName"},t={};return n.forEach(ct.search(),function(r,u){var f=i[u];n.isDefined(f)&&(t[f]=r)}),t},fi=function(n,t,i,r,u,f,e,o,s){var h={};return n&&(h.id=n),t&&(h.affiliation=t),i&&(h.revenue=i),r&&(h.tax=r),u&&(h.shipping=u),f&&(h.coupon=f),e&&(h.list=e),o&&(h.step=o),s&&(h.option=s),h},ei=function(t,i){var r="",f="https:"===document.location.protocol,e="chrome-extension:"===document.location.protocol,o=u===!0&&k===!0;return t=n.isString(t)?t:"",i=n.isString(i)?i:"",""!==t&&(r="http:"+t),(e||o||f&&""!==i)&&(r="https:"+i),r},ii=function(n){!u&&vt._gaq&&"function"==typeof n&&n()},bt=function(){var n=Array.prototype.slice.call(arguments);return r===!0?void pt.offlineQueue.push([bt,n]):(vt._gaq||(vt._gaq=[]),b===!0&&pt._log.apply(pt,n),void vt._gaq.push(n))},kt=function(n){u&&vt.ga&&"function"==typeof n&&n()},wt=function(){var n=Array.prototype.slice.call(arguments);return r===!0?void pt.offlineQueue.push([wt,n]):"function"!=typeof vt.ga?void pt._log("warn","ga function not set on window"):(b===!0&&pt._log.apply(pt,n),void vt.ga.apply(null,n))},ni=function(n){var t=Array.prototype.slice.call(arguments,1),u=t[0],r=[];return"function"==typeof n?i.forEach(function(t){n(t)&&r.push(t)}):r=i,0===r.length?void wt.apply(pt,t):void r.forEach(function(n){dt("select",n)&&"function"==typeof n.select&&!n.select(t)||(t[0]=gt(u,n),wt.apply(pt,t))})};return this._log=function(){var n=Array.prototype.slice.call(arguments);if(n.length>0){if(n.length>1)switch(n[0]){case"debug":case"error":case"info":case"log":case"warn":lt[n[0]](n.slice(1))}pt.log.push(n)}},this._createScriptTag=function(){pt._registerScriptTags();pt._registerTrackers()},this._createAnalyticsScriptTag=function(){pt._registerScriptTags();pt._registerTrackers()},this._registerScriptTags=function(){var n,t=ht[0],r=ei(),f,e;return st===!0?void pt._log("warn","Script tags already created"):((ut===!0&&i.forEach(function(n){pt._log("info","Analytics disabled: "+n.tracker);vt["ga-disable-"+n.tracker]=!0}),u===!0)?(n=r+"//www.google-analytics.com/"+(it?"analytics_debug.js":"analytics.js"),d!==!0?!function(n,t,i,r,u,f,e){n.GoogleAnalyticsObject=u;n[u]=n[u]||function(){(n[u].q=n[u].q||[]).push(arguments)};n[u].l=1*new Date;f=t.createElement(i);e=t.getElementsByTagName(i)[0];f.async=1;f.src=r;e.parentNode.insertBefore(f,e)}(window,t,"script",n,"ga"):("function"!=typeof vt.ga&&(vt.ga=function(){}),pt._log("inject",n)),et&&(vt.ga_debug={trace:!0}),v)&&(f=t.createElement("script"),e=t.getElementsByTagName("script")[0],f.src=r+"//www.google-analytics.com/cx/api.js?experiment="+v,e.parentNode.insertBefore(f,e)):(n=ei("//www","//ssl")+".google-analytics.com/ga.js",y===!0&&(n=r+"//stats.g.doubleclick.net/dc.js"),d!==!0?!function(){var i=t.createElement("script"),r;i.type="text/javascript";i.async=!0;i.src=n;r=t.getElementsByTagName("script")[0];r.parentNode.insertBefore(i,r)}():pt._log("inject",n)),st=!0,!0)},this._registerTrackers=function(){return!i||i.length<1?void pt._log("warn","No accounts to register"):(u===!0?i.forEach(function(t){var i,r;t.crossDomainLinker=dt("crossDomainLinker",t)?t.crossDomainLinker:nt;t.crossLinkDomains=dt("crossLinkDomains",t)?t.crossLinkDomains:g;t.displayFeatures=dt("displayFeatures",t)?t.displayFeatures:y;t.enhancedLinkAttribution=dt("enhancedLinkAttribution",t)?t.enhancedLinkAttribution:p;t.set=dt("set",t)?t.set:{};t.trackEcommerce=dt("trackEcommerce",t)?t.trackEcommerce:o;t.trackEvent=!!dt("trackEvent",t)&&t.trackEvent;i={};dt("fields",t)?i=t.fields:dt("cookieConfig",t)?n.isString(t.cookieConfig)?i.cookieDomain=t.cookieConfig:i=t.cookieConfig:n.isString(f)?i.cookieDomain=f:f&&(i=f);t.crossDomainLinker===!0&&(i.allowLinker=!0);dt("name",t)&&(i.name=t.name);t.fields=i;wt("create",t.tracker,t.fields);k===!0&&wt(gt("set",t),"checkProtocolTask",null);for(r in t.set)t.set.hasOwnProperty(r)&&wt(gt("set",t),r,t.set[r]);t.crossDomainLinker===!0&&(wt(gt("require",t),"linker"),n.isDefined(t.crossLinkDomains)&&wt(gt("linker:autoLink",t),t.crossLinkDomains));t.displayFeatures&&wt(gt("require",t),"displayfeatures");t.trackEcommerce&&(s?(wt(gt("require",t),"ec"),wt(gt("set",t),"&cu",tt)):wt(gt("require",t),"ecommerce"));t.enhancedLinkAttribution&&wt(gt("require",t),"linkid");l&&!w&&wt(gt("send",t),"pageview",c+ui())}):(i.length>1&&(pt._log("warn","Multiple trackers are not supported with ga.js. Using first tracker only"),i=i.slice(0,1)),bt("_setAccount",i[0].tracker),a&&bt("_setDomainName",a),p&&bt("_require","inpage_linkid","//www.google-analytics.com/plugins/ga/inpage_linkid.js"),l&&!w&&(e?bt("_trackPageview",ui()):bt("_trackPageview"))),!0)},this._ecommerceEnabled=function(n,t){var i=o&&!s;return n===!0&&i===!1&&(o&&s?pt._log("warn",t+" is not available when Enhanced Ecommerce is enabled with analytics.js"):pt._log("warn","Ecommerce must be enabled to use "+t+" with analytics.js")),i},this._enhancedEcommerceEnabled=function(n,t){var i=o&&s;return n===!0&&i===!1&&pt._log("warn","Enhanced Ecommerce must be enabled to use "+t+" with analytics.js"),i},this._trackPage=function(i,r,u){i=i?i:ui();r=r?r:ht[0].title;ii(function(){bt("_set","title",r);bt("_trackPageview",c+i)});kt(function(){var f={page:c+i,title:r};n.extend(f,oi());n.isObject(u)&&n.extend(f,u);ni(t,"send","pageview",f)})},this._trackEvent=function(t,i,r,u,f,e){ii(function(){bt("_trackEvent",t,i,r,u,!!f)});kt(function(){var o={},s=function(n){return ti("trackEvent",n,!0)};n.isDefined(f)&&(o.nonInteraction=!!f);n.isObject(e)&&n.extend(o,e);n.isDefined(o.page)||(o.page=ui());ni(s,"send","event",t,i,r,u,o)})},this._addTrans=function(n,t,i,r,u,f,e,o,s){ii(function(){bt("_addTrans",n,t,i,r,u,f,e,o)});kt(function(){if(pt._ecommerceEnabled(!0,"addTrans")){var f=function(n){return ti("trackEcommerce",n,!0)};ni(f,"ecommerce:addTransaction",{id:n,affiliation:t,revenue:i,tax:r,shipping:u,currency:s||"USD"})}})},this._addItem=function(n,t,i,r,u,f){ii(function(){bt("_addItem",n,t,i,r,u,f)});kt(function(){if(pt._ecommerceEnabled(!0,"addItem")){var e=function(n){return ti("trackEcommerce",n,!0)};ni(e,"ecommerce:addItem",{id:n,name:i,sku:t,category:r,price:u,quantity:f})}})},this._trackTrans=function(){ii(function(){bt("_trackTrans")});kt(function(){if(pt._ecommerceEnabled(!0,"trackTrans")){var n=function(n){return ti("trackEcommerce",n,!0)};ni(n,"ecommerce:send")}})},this._clearTrans=function(){kt(function(){if(pt._ecommerceEnabled(!0,"clearTrans")){var n=function(n){return ti("trackEcommerce",n,!0)};ni(n,"ecommerce:clear")}})},this._addProduct=function(t,i,r,u,f,e,o,s,h,c){ii(function(){bt("_addProduct",t,i,r,u,f,e,o,s,h)});kt(function(){if(pt._enhancedEcommerceEnabled(!0,"addProduct")){var a=function(n){return ti("trackEcommerce",n,!0)},l={id:t,name:i,category:r,brand:u,variant:f,price:e,quantity:o,coupon:s,position:h};n.isObject(c)&&n.extend(l,c);ni(a,"ec:addProduct",l)}})},this._addImpression=function(n,t,i,r,u,f,e,o){ii(function(){bt("_addImpression",n,t,i,r,u,f,e,o)});kt(function(){if(pt._enhancedEcommerceEnabled(!0,"addImpression")){var s=function(n){return ti("trackEcommerce",n,!0)};ni(s,"ec:addImpression",{id:n,name:t,category:u,brand:r,variant:f,list:i,position:e,price:o})}})},this._addPromo=function(n,t,i,r){ii(function(){bt("_addPromo",n,t,i,r)});kt(function(){if(pt._enhancedEcommerceEnabled(!0,"addPromo")){var u=function(n){return ti("trackEcommerce",n,!0)};ni(u,"ec:addPromo",{id:n,name:t,creative:i,position:r})}})},this._setAction=function(n,t){ii(function(){bt("_setAction",n,t)});kt(function(){if(pt._enhancedEcommerceEnabled(!0,"setAction")){var i=function(n){return ti("trackEcommerce",n,!0)};ni(i,"ec:setAction",n,t)}})},this._trackTransaction=function(n,t,i,r,u,f,e,o,s){this._setAction("purchase",fi(n,t,i,r,u,f,e,o,s))},this._trackRefund=function(n){this._setAction("refund",fi(n))},this._trackCheckOut=function(n,t){this._setAction("checkout",fi(null,null,null,null,null,null,null,n,t))},this._trackDetail=function(){this._setAction("detail");this._pageView()},this._trackCart=function(n,t){["add","remove"].indexOf(n)!==-1&&(this._setAction(n,{list:t}),this._trackEvent("UX","click",n+("add"===n?" to cart":" from cart")))},this._promoClick=function(n){this._setAction("promo_click");this._trackEvent("Internal Promotions","click",n)},this._productClick=function(n){this._setAction("click",fi(null,null,null,null,null,null,n,null,null));this._trackEvent("UX","click",n)},this._pageView=function(n){kt(function(){wt(gt("send",n),"pageview")})},this._send=function(){var n=Array.prototype.slice.call(arguments);n.unshift("send");kt(function(){wt.apply(pt,n)})},this._set=function(n,t,i){kt(function(){wt(gt("set",i),n,t)})},this._trackTimings=function(n,i,r,u){kt(function(){ni(t,"send","timing",n,i,r,u)})},this._trackException=function(n,i){kt(function(){ni(t,"send","exception",{exDescription:n,exFatal:!!i})})},rt||(this._registerScriptTags(),this._registerTrackers()),l&&at.$on(ft,function(){(!h||ri.current&&ri.current.templateUrl&&!ri.current.doNotTrack)&&pt._trackPage()}),{log:pt.log,offlineQueue:pt.offlineQueue,configuration:{accounts:i,universalAnalytics:u,crossDomainLinker:nt,crossLinkDomains:g,currency:tt,debugMode:it,delayScriptTag:rt,disableAnalytics:ut,displayFeatures:y,domainName:a,ecommerce:pt._ecommerceEnabled(),enhancedEcommerce:pt._enhancedEcommerceEnabled(),enhancedLinkAttribution:p,experimentId:v,hybridMobileSupport:k,ignoreFirstPageLoad:w,logAllCalls:b,pageEvent:ft,readFromRoute:h,removeRegExp:e,testMode:d,traceDebuggingMode:et,trackPrefix:c,trackRoutes:l,trackUrlParams:ot},getUrl:ui,setCookieConfig:function(){return pt._log("warn","DEPRECATION WARNING: setCookieConfig method is deprecated. Please use tracker fields instead."),pt._setCookieConfig.apply(pt,arguments)},getCookieConfig:function(){return pt._log("warn","DEPRECATION WARNING: getCookieConfig method is deprecated. Please use tracker fields instead."),f},createAnalyticsScriptTag:function(n){return pt._log("warn","DEPRECATION WARNING: createAnalyticsScriptTag method is deprecated. Please use registerScriptTags and registerTrackers methods instead."),n&&(f=n),pt._createAnalyticsScriptTag()},createScriptTag:function(){return pt._log("warn","DEPRECATION WARNING: createScriptTag method is deprecated. Please use registerScriptTags and registerTrackers methods instead."),pt._createScriptTag()},registerScriptTags:function(){return pt._registerScriptTags()},registerTrackers:function(){return pt._registerTrackers()},offline:function(n){if(n===!0&&r===!1&&(r=!0),n===!1&&r===!0)for(r=!1;pt.offlineQueue.length>0;){var t=pt.offlineQueue.shift();t[0].apply(pt,t[1])}return r},trackPage:function(){pt._trackPage.apply(pt,arguments)},trackEvent:function(){pt._trackEvent.apply(pt,arguments)},addTrans:function(){pt._addTrans.apply(pt,arguments)},addItem:function(){pt._addItem.apply(pt,arguments)},trackTrans:function(){pt._trackTrans.apply(pt,arguments)},clearTrans:function(){pt._clearTrans.apply(pt,arguments)},addProduct:function(){pt._addProduct.apply(pt,arguments)},addPromo:function(){pt._addPromo.apply(pt,arguments)},addImpression:function(){pt._addImpression.apply(pt,arguments)},productClick:function(){pt._productClick.apply(pt,arguments)},promoClick:function(){pt._promoClick.apply(pt,arguments)},trackDetail:function(){pt._trackDetail.apply(pt,arguments)},trackCart:function(){pt._trackCart.apply(pt,arguments)},trackCheckout:function(){pt._trackCheckOut.apply(pt,arguments)},trackTimings:function(){pt._trackTimings.apply(pt,arguments)},trackTransaction:function(){pt._trackTransaction.apply(pt,arguments)},trackException:function(){pt._trackException.apply(pt,arguments)},setAction:function(){pt._setAction.apply(pt,arguments)},pageView:function(){pt._pageView.apply(pt,arguments)},send:function(){pt._send.apply(pt,arguments)},set:function(){pt._set.apply(pt,arguments)}}}]}).directive("gaTrackEvent",["Analytics","$parse",function(n,t){return{restrict:"A",link:function(i,r,u){var f=t(u.gaTrackEvent);r.bind("click",function(){u.gaTrackEventIf&&!i.$eval(u.gaTrackEventIf)||f.length>1&&n.trackEvent.apply(n,f(i))})}}}]),n.module("angular-google-analytics")});angular.module("updateMeta",[]),function(){function n(n,t){function u(n,t){return"["+t+'="'+n[t]+'"]'}function f(n,t){return t.filter(function(t){return n[t]}).map(function(t){return u(n,t)}).join("")}var i=["href","charset","crossorigin","hreflang","integrity","media","methods","referrerpolicy","sizes","target","title","type"],r=["id","rel"];return{restrict:"E",scope:{rel:"@",href:"@",id:"@?",charset:"@?",crossorigin:"@?",hreflang:"@?",integrity:"@?",media:"@?",methods:"@?",referrerpolicy:"@?",sizes:"@?",target:"@?",title:"@?",type:"@?"},link:function(n){var u="link"+f(n,r);i.filter(function(t){return n[t]}).forEach(function(i){n.$watch(i,function(r){typeof r!="undefined"&&t.update(u,i,n[i])})})}}}n.$inject=["$log","updateAttribute"];angular.module("updateMeta").directive("updateLink",n)}(),function(){function n(n,t){return{restrict:"E",scope:{charset:"@",name:"@",content:"@",httpEquiv:"@",scheme:"@",property:"@",itemprop:"@"},link:function(n){var i;n.name&&(i='meta[name="'+n.name+'"]');n.httpEquiv&&(i='meta[http-equiv="'+n.httpEquiv+'"]');n.property&&(i='meta[property="'+n.property+'"]');n.itemprop&&(i='meta[itemprop="'+n.itemprop+'"]');n.$watch("content",function(r){typeof r!="undefined"&&t.update(i,"content",n.content)});n.$watch("charset",function(i){typeof i!="undefined"&&t.update("meta[charset]","charset",n.charset)})}}}n.$inject=["$log","updateAttribute"];angular.module("updateMeta").directive("updateMeta",n)}(),function(){function n(){return{restrict:"E",scope:{title:"@"},link:function(n){n.$watch("title",function(n){typeof n!="undefined"&&document&&(document.title=n)})}}}n.$inject=["$log"];angular.module("updateMeta").directive("updateTitle",n)}(),function(){function n(n){function t(t,i,r){if(!document){n.error("updateMeta: document is not available!");return}if(!t){n.error("updateMeta: please provide a selector");return}var u=document.querySelector(t);u&&u.setAttribute&&u.setAttribute(i,r)}return{update:t}}n.$inject=["$log"];angular.module("updateMeta").factory("updateAttribute",n)}();!function(n,t,i){"use strict";!function(){t.module("ngMaterial",["ng","ngAnimate","ngAria","material.core","material.core.gestures","material.core.interaction","material.core.layout","material.core.meta","material.core.theming.palette","material.core.theming","material.core.animate","material.components.autocomplete","material.components.backdrop","material.components.bottomSheet","material.components.button","material.components.card","material.components.checkbox","material.components.chips","material.components.colors","material.components.content","material.components.datepicker","material.components.dialog","material.components.divider","material.components.fabActions","material.components.fabShared","material.components.fabSpeedDial","material.components.fabToolbar","material.components.gridList","material.components.icon","material.components.input","material.components.list","material.components.menu","material.components.menuBar","material.components.navBar","material.components.panel","material.components.progressCircular","material.components.progressLinear","material.components.radioButton","material.components.select","material.components.showHide","material.components.sidenav","material.components.slider","material.components.sticky","material.components.subheader","material.components.swipe","material.components.switch","material.components.tabs","material.components.toast","material.components.toolbar","material.components.tooltip","material.components.truncate","material.components.virtualRepeat","material.components.whiteframe"])}(),function(){function n(n,t){if(t.has("$swipe"))n.warn("You are using the ngTouch module. \nAngularJS Material already has mobile click, tap, and swipe support... \nngTouch is not supported with AngularJS Material!")}function i(n,t){n.decorator("$$rAF",["$delegate",r]);n.decorator("$q",["$delegate",u]);t.theme("default").primaryPalette("indigo").accentPalette("pink").warnPalette("deep-orange").backgroundPalette("grey")}function r(n){return n.throttle=function(t){var r,i,u,f;return function(){r=arguments;f=this;u=t;i||(i=!0,n(function(){u.apply(f,Array.prototype.slice.call(r));i=!1}))}},n}function u(n){return n.resolve||(n.resolve=n.when),n}n.$inject=["$log","$injector"];i.$inject=["$provide","$mdThemingProvider"];r.$inject=["$delegate"];u.$inject=["$delegate"];t.module("material.core",["ngAnimate","material.core.animate","material.core.layout","material.core.interaction","material.core.gestures","material.core.theming"]).config(i).run(n)}(),function(){function n(n){function i(i,r,u){function e(n){t.isUndefined(n)&&(n=!0);r.toggleClass("md-autofocus",!!n)}var f=u.mdAutoFocus||u.mdAutofocus||u.mdSidenavFocus;e(n(f)(i));f&&i.$watch(f,e)}return{restrict:"A",link:{pre:i}}}n.$inject=["$parse"];t.module("material.core").directive("mdAutofocus",n).directive("mdAutoFocus",n).directive("mdSidenavFocus",n)}(),function(){function n(){function n(n){var i="#"===n[0]?n.substr(1):n,t=i.length/3,r=i.substr(0,t),u=i.substr(t,t),f=i.substr(2*t);return 1===t&&(r+=r,u+=u,f+=f),"rgba("+parseInt(r,16)+","+parseInt(u,16)+","+parseInt(f,16)+",0.1)"}function t(n){n=n.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i);var t=n&&4===n.length?"#"+("0"+parseInt(n[1],10).toString(16)).slice(-2)+("0"+parseInt(n[2],10).toString(16)).slice(-2)+("0"+parseInt(n[3],10).toString(16)).slice(-2):"";return t.toUpperCase()}function i(n){return n.replace(")",", 0.1)").replace("(","a(")}function r(n){return n?n.replace("rgba","rgb").replace(/,[^\),]+\)/,")"):"rgb(0,0,0)"}return{rgbaToHex:t,hexToRgba:n,rgbToRgba:i,rgbaToRgb:r}}t.module("material.core").factory("$mdColorUtil",n)}(),function(){function n(){function n(n){var e=u+"-"+n,t=o(e),f=t.charAt(0).toLowerCase()+t.substring(1);return r(i,n)?n:r(i,t)?t:r(i,f)?f:n}function r(n,i){return t.isDefined(n.style[i])}function o(n){return n.replace(h,function(n,t,i,r){return r?i.toUpperCase():i})}function s(n){var t,i;for(t in n.style)if(i=/^(Moz|webkit|ms)(?=[A-Z])/.exec(t))return i[0]}var i=document.createElement("div"),u=s(i),f=/webkit/i.test(u),h=/([:\-_]+(.))/g,e={isInputKey:function(n){return n.keyCode>=31&&n.keyCode<=90},isNumPadKey:function(n){return 3===n.location&&n.keyCode>=97&&n.keyCode<=105},isMetaKey:function(n){return n.keyCode>=91&&n.keyCode<=93},isFnLockKey:function(n){return n.keyCode>=112&&n.keyCode<=145},isNavigationKey:function(n){var t=e.KEY_CODE,i=[t.SPACE,t.ENTER,t.UP_ARROW,t.DOWN_ARROW];return i.indexOf(n.keyCode)!=-1},hasModifierKey:function(n){return n.ctrlKey||n.metaKey||n.altKey},ELEMENT_MAX_PIXELS:1533917,BEFORE_NG_ARIA:210,KEY_CODE:{COMMA:188,SEMICOLON:186,ENTER:13,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,TAB:9,BACKSPACE:8,DELETE:46},CSS:{TRANSITIONEND:"transitionend"+(f?" webkitTransitionEnd":""),ANIMATIONEND:"animationend"+(f?" webkitAnimationEnd":""),TRANSFORM:n("transform"),TRANSFORM_ORIGIN:n("transformOrigin"),TRANSITION:n("transition"),TRANSITION_DURATION:n("transitionDuration"),ANIMATION_PLAY_STATE:n("animationPlayState"),ANIMATION_DURATION:n("animationDuration"),ANIMATION_NAME:n("animationName"),ANIMATION_TIMING:n("animationTimingFunction"),ANIMATION_DIRECTION:n("animationDirection")},MEDIA:{xs:"(max-width: 599px)","gt-xs":"(min-width: 600px)",sm:"(min-width: 600px) and (max-width: 959px)","gt-sm":"(min-width: 960px)",md:"(min-width: 960px) and (max-width: 1279px)","gt-md":"(min-width: 1280px)",lg:"(min-width: 1280px) and (max-width: 1919px)","gt-lg":"(min-width: 1920px)",xl:"(min-width: 1920px)",landscape:"(orientation: landscape)",portrait:"(orientation: portrait)",print:"print"},MEDIA_PRIORITY:["xl","gt-lg","lg","gt-md","md","gt-sm","sm","gt-xs","xs","landscape","portrait","print"]};return e}t.module("material.core").factory("$mdConstant",n)}(),function(){function n(n,i){function c(){return[].concat(r)}function l(){return r.length}function f(n){return r.length&&n>-1&&n<r.length}function a(n){return!!n&&f(u(n)+1)}function v(n){return!!n&&f(u(n)-1)}function y(n){return f(n)?r[n]:null}function p(n,t){return r.filter(function(i){return i[n]===t})}function w(n,i){return n?(t.isNumber(i)||(i=r.length),r.splice(i,0,n),u(n)):-1}function b(n){e(n)&&r.splice(u(n),1)}function u(n){return r.indexOf(n)}function e(n){return n&&u(n)>-1}function o(){return r.length?r[0]:null}function s(){return r.length?r[r.length-1]:null}function h(n,e,h,c){var v,l,a;for(h=h||k,v=u(e);;){if(!f(v)||(l=v+(n?-1:1),a=null,f(l)?a=r[l]:i&&(a=n?s():o(),l=u(a)),null===a||l===c))return null;if(h(a))return a;t.isUndefined(c)&&(c=l);v=l}}var k=function(){return!0},r;return n&&!t.isArray(n)&&(n=Array.prototype.slice.call(n)),i=!!i,r=n||[],{items:c,count:l,inRange:f,contains:e,indexOf:u,itemAt:y,findBy:p,add:w,remove:b,first:o,last:s,next:t.bind(null,h,!1),previous:t.bind(null,h,!0),hasPrevious:v,hasNext:a}}t.module("material.core").config(["$provide",function(t){t.decorator("$mdUtil",["$delegate",function(t){return t.iterator=n,t}])}])}(),function(){function n(n,i,r){function u(n){var i=o[n],r;return t.isUndefined(i)&&(i=o[n]=c(n)),r=s[i],t.isUndefined(r)&&(r=l(i)),r}function c(t){return n.MEDIA[t]||("("!==t.charAt(0)?"("+t+")":t)}function l(n){var t=e[n];return t||(t=e[n]=r.matchMedia(n)),t.addListener(a),s[t.media]=!!t.matches}function a(n){i.$evalAsync(function(){s[n.media]=!!n.matches})}function v(n){return e[n]}function y(t,i){for(var u,s,r=0;r<n.MEDIA_PRIORITY.length;r++)if(u=n.MEDIA_PRIORITY[r],e[o[u]].matches&&(s=f(t,i+"-"+u),t[s]))return t[s];return t[f(t,i)]}function p(i,r,u){var e=[];return i.forEach(function(i){var o=f(r,i),s;t.isDefined(r[o])&&e.push(r.$observe(o,t.bind(void 0,u,null)));for(s in n.MEDIA)o=f(r,i+"-"+s),t.isDefined(r[o])&&e.push(r.$observe(o,t.bind(void 0,u,s)))}),function(){e.forEach(function(n){n()})}}function f(n,t){return h[t]||(h[t]=n.$normalize(t))}var o={},e={},s={},h={};return u.getResponsiveAttribute=y,u.getQuery=v,u.watchResponsiveAttributes=p,u}n.$inject=["$mdConstant","$rootScope","$window"];t.module("material.core").factory("$mdMedia",n)}(),function(){function n(n,i){function r(n){return n=t.isArray(n)?n:[n],n.forEach(function(t){s.forEach(function(i){n.push(i+"-"+t)})}),n}function u(n){return n=t.isArray(n)?n:[n],r(n).map(function(n){return"["+n+"]"}).join(",")}function e(n,t){if(n=f(n),!n)return!1;for(var u=r(t),i=0;i<u.length;i++)if(n.hasAttribute(u[i]))return!0;return!1}function o(n,t){n=f(n);n&&r(t).forEach(function(t){n.removeAttribute(t)})}function f(n){if(n=n[0]||n,n.nodeType)return n}var s=["data","x"];return n?i?u(n):r(n):{buildList:r,buildSelector:u,hasAttribute:e,removeAttribute:o}}t.module("material.core").config(["$provide",function(t){t.decorator("$mdUtil",["$delegate",function(t){return t.prefixer=n,t}])}])}(),function(){function r(r,f,e,o,s,h,c,l,a,v){function p(n){return n?g(n)||nt(n)?n:n+"px":"0"}function g(n){return String(n).indexOf("px")>-1}function nt(n){return String(n).indexOf("%")>-1}function w(n){return n[0]||n}var b=h.startSymbol(),k=h.endSymbol(),tt="{{"===b&&"}}"===k,d=function(n,i,r){var f=!1,u;return n&&n.length&&(u=a.getComputedStyle(n[0]),f=t.isDefined(u[i])&&(!r||u[i]==r)),f},y={dom:{},now:n.performance&&n.performance.now?t.bind(n.performance,n.performance.now):Date.now||function(){return(new Date).getTime()},getModelOption:function(n,t){if(n.$options){var i=n.$options;return i.getOption?i.getOption(t):i[t]}},bidi:function(n,i,u,f){var e=!("rtl"==r[0].dir||"rtl"==r[0].body.dir),o;if(0==arguments.length)return e?"ltr":"rtl";o=t.element(n);e&&t.isDefined(u)?o.css(i,p(u)):!e&&t.isDefined(f)&&o.css(i,p(f))},bidiProperty:function(n,i,u,f){var o=!("rtl"==r[0].dir||"rtl"==r[0].body.dir),e=t.element(n);o&&t.isDefined(i)?(e.css(i,p(f)),e.css(u,"")):!o&&t.isDefined(u)&&(e.css(u,p(f)),e.css(i,""))},clientRect:function(n,t,i){var f=w(n),r,u;return t=w(t||f.offsetParent||document.body),r=f.getBoundingClientRect(),u=i?t.getBoundingClientRect():{left:0,top:0,width:0,height:0},{left:r.left-u.left,top:r.top-u.top,width:r.width,height:r.height}},offsetRect:function(n,t){return y.clientRect(n,t,!0)},nodesToArray:function(n){n=n||[];for(var i=[],t=0;t<n.length;++t)i.push(n.item(t));return i},getViewportTop:function(){return n.scrollY||n.pageYOffset||0},findFocusTarget:function(n,i){function u(n,i){var u,r=n[0].querySelectorAll(i);return r&&r.length&&r.length&&t.forEach(r,function(n){n=t.element(n);var i=n.hasClass("md-autofocus");i&&(u=n)}),u}var r,f=this.prefixer("md-autofocus",!0);return r=u(n,i||f),r||i==f||(r=u(n,this.prefixer("md-auto-focus",!0)),r||(r=u(n,f))),r},disableScrollAround:function(n,i,u){function e(n){function r(n){n.preventDefault()}n=t.element(n||f);var i;return u.disableScrollMask?i=n:(i=t.element('<div class="md-scroll-mask">  <div class="md-scroll-mask-bar"><\/div><\/div>'),n.append(i)),i.on("wheel",r),i.on("touchmove",r),function(){i.off("wheel");i.off("touchmove");!u.disableScrollMask&&i[0].parentNode&&i[0].parentNode.removeChild(i[0])}}function o(){var n=r[0].documentElement,e=n.style.cssText||"",o=f.style.cssText||"",i=y.getViewportTop(),s=f.clientWidth,u=f.scrollHeight>f.clientHeight+1,h=n.scrollTop>0?n:f;return u&&t.element(f).css({position:"fixed",width:"100%",top:-i+"px"}),f.clientWidth<s&&(f.style.overflow="hidden"),u&&(n.style.overflowY="scroll"),function(){f.style.cssText=o;n.style.cssText=e;h.scrollTop=i}}if(u=u||{},y.disableScrollAround._count=Math.max(0,y.disableScrollAround._count||0),y.disableScrollAround._count++,y.disableScrollAround._restoreScroll)return y.disableScrollAround._restoreScroll;var f=r[0].body,s=o(),h=e(i);return y.disableScrollAround._restoreScroll=function(){--y.disableScrollAround._count<=0&&(s(),h(),delete y.disableScrollAround._restoreScroll)}},enableScrolling:function(){var n=this.disableScrollAround._restoreScroll;n&&n()},floatingScrollbars:function(){if(this.floatingScrollbars.cached===i){var n=t.element("<div><div><\/div><\/div>").css({width:"100%","z-index":-1,position:"absolute",height:"35px","overflow-y":"scroll"});n.children().css("height","60px");r[0].body.appendChild(n[0]);this.floatingScrollbars.cached=n[0].offsetWidth==n[0].childNodes[0].offsetWidth;n.remove()}return this.floatingScrollbars.cached},forceFocus:function(t){var r=t[0]||t,i;document.addEventListener("click",function u(n){n.target===r&&n.$focus&&(r.focus(),n.stopImmediatePropagation(),n.preventDefault(),r.removeEventListener("click",u))},!0);i=document.createEvent("MouseEvents");i.initMouseEvent("click",!1,!0,n,{},0,0,0,0,!1,!1,!1,!1,0,null);i.$material=!0;i.$focus=!0;r.dispatchEvent(i)},createBackdrop:function(n,t){return e(y.supplant('<md-backdrop class="{0}">',[t]))(n)},supplant:function(n,t,i){return i=i||/\{([^\{\}]*)\}/g,n.replace(i,function(n,i){var u=i.split("."),r=t,f;try{for(f in u)u.hasOwnProperty(f)&&(r=r[u[f]])}catch(e){r=n}return"string"==typeof r||"number"==typeof r?r:n})},fakeNgModel:function(){return{$fake:!0,$setTouched:t.noop,$setViewValue:function(n){this.$viewValue=n;this.$render(n);this.$viewChangeListeners.forEach(function(n){n()})},$isEmpty:function(n){return 0===(""+n).length},$parsers:[],$formatters:[],$viewChangeListeners:[],$render:t.noop}},debounce:function(n,t,r,u){var e;return function(){var o=r,s=Array.prototype.slice.call(arguments);f.cancel(e);e=f(function(){e=i;n.apply(o,s)},t||10,u)}},throttle:function(n,t){var i;return function(){var u=this,f=arguments,r=y.now();(!i||r-i>t)&&(n.apply(u,f),i=r)}},time:function(n){var t=y.now();return n(),y.now()-t},valueOnUse:function(n,t,i){var r=null,u=Array.prototype.slice.call(arguments),f=u.length>3?u.slice(3):[];Object.defineProperty(n,t,{get:function(){return null===r&&(r=i.apply(n,f)),r}})},nextUid:function(){return""+u++},disconnectScope:function(n){if(n&&n.$root!==n&&!n.$$destroyed){var t=n.$parent;n.$$disconnected=!0;t.$$childHead===n&&(t.$$childHead=n.$$nextSibling);t.$$childTail===n&&(t.$$childTail=n.$$prevSibling);n.$$prevSibling&&(n.$$prevSibling.$$nextSibling=n.$$nextSibling);n.$$nextSibling&&(n.$$nextSibling.$$prevSibling=n.$$prevSibling);n.$$nextSibling=n.$$prevSibling=null}},reconnectScope:function(n){if(n&&n.$root!==n&&n.$$disconnected){var t=n,i=t.$parent;t.$$disconnected=!1;t.$$prevSibling=i.$$childTail;i.$$childHead?(i.$$childTail.$$nextSibling=t,i.$$childTail=t):i.$$childHead=i.$$childTail=t}},getClosest:function(n,i,r){if(t.isString(i)){var u=i.toUpperCase();i=function(n){return n.nodeName.toUpperCase()===u}}if(n instanceof t.element&&(n=n[0]),r&&(n=n.parentNode),!n)return null;do if(i(n))return n;while(n=n.parentNode);return null},elementContains:function(i,r){var u=n.Node&&n.Node.prototype&&Node.prototype.contains,f=u?t.bind(i,i.contains):t.bind(i,function(n){return i===r||!!(16&this.compareDocumentPosition(n))});return f(r)},extractElementByName:function(n,i,r,u){function f(n){return o(n)||(r?s(n):null)}function o(n){if(n)for(var t=0,r=n.length;t<r;t++)if(n[t].nodeName.toLowerCase()===i)return n[t];return null}function s(n){var t,i,e,u,r,o;if(n)for(i=0,e=n.length;i<e;i++)if(u=n[i],!t)for(r=0,o=u.childNodes.length;r<o;r++)t=t||f([u.childNodes[r]]);return t}var e=f(n);return!e&&u&&c.warn(y.supplant("Unable to find node '{0}' in element '{1}'.",[i,n[0].outerHTML])),t.element(e||n)},initOptionalProperties:function(n,i,r){r=r||{};t.forEach(n.$$isolateBindings,function(u,f){if(u.optional&&t.isUndefined(n[f])){var e=t.isDefined(i[u.attrName]);n[f]=t.isDefined(r[f])?r[f]:e}})},nextTick:function(n,t,i){function e(){var n=r.queue,t=r.digest;r.queue=[];r.timeout=null;r.digest=!1;n.forEach(function(n){var t=n.scope&&n.scope.$$destroyed;t||n.callback()});t&&o.$digest()}var r=y.nextTick,s=r.timeout,u=r.queue||[];return u.push({scope:i,callback:n}),null==t&&(t=!0),r.digest=r.digest||t,r.queue=u,s||(r.timeout=f(e,0,!1))},processTemplate:function(n){return tt?n:n&&t.isString(n)?n.replace(/\{\{/g,b).replace(/}}/g,k):n},getParentWithPointerEvents:function(n){for(var t=n.parent();d(t,"pointer-events","none");)t=t.parent();return t},getNearestContentElement:function(n){for(var t=n.parent()[0];t&&t!==l[0]&&t!==document.body&&"MD-CONTENT"!==t.nodeName.toUpperCase();)t=t.parentNode;return t},checkStickySupport:function(){var f,u=t.element("<div>"),i,n;for(r[0].body.appendChild(u[0]),i=["sticky","-webkit-sticky"],n=0;n<i.length;++n)if(u.css({position:i[n],top:0,"z-index":2}),u.css("position")==i[n]){f=i[n];break}return u.remove(),f},parseAttributeBoolean:function(n,t){return""===n||!!n&&(t===!1||"false"!==n&&"0"!==n)},hasComputedStyle:d,isParentFormSubmitted:function(n){var i=y.getClosest(n,"form"),r=i?t.element(i).controller("form"):null;return!!r&&r.$submitted},animateScrollTo:function(n,t,i){function u(){var i=f();n.scrollTop=i;(s?i<t:i>t)&&v(u)}function f(){var n=i||1e3,t=y.now()-h;return e(t,r,o,n)}function e(n,t,i,r){if(n>r)return t+i;var u=(n/=r)*n,f=u*n;return t+i*(-2*f+3*u)}var r=n.scrollTop,o=t-r,s=r<t,h=y.now();v(u)},uniq:function(n){if(n)return n.filter(function(n,t,i){return i.indexOf(n)===t})}};return y.dom.animator=s(y),y}r.$inject=["$document","$timeout","$compile","$rootScope","$$mdAnimate","$interpolate","$log","$rootElement","$window","$$rAF"];var u=0;t.module("material.core").factory("$mdUtil",r);t.element.prototype.focus=t.element.prototype.focus||function(){return this.length&&this[0].focus(),this};t.element.prototype.blur=t.element.prototype.blur||function(){return this.length&&this[0].blur(),this}}(),function(){function i(){function i(){t.showWarnings=!1}var t={showWarnings:!0};return{disableWarnings:i,$get:["$$rAF","$log","$window","$interpolate",function(){return n.apply(t,arguments)}]}}function n(n,i,r,u){function f(n,r,u){var f=t.element(n)[0]||n;!f||f.hasAttribute(r)&&0!==f.getAttribute(r).length||a(f,r)||(u=t.isString(u)?u.trim():"",u.length?n.attr(r,u):v&&i.warn('ARIA: Attribute "',r,'", required for accessibility, is missing on node:',f))}function o(t,i,r){n(function(){f(t,i,r())})}function c(n,t){var i=e(n)||"",r=i.indexOf(u.startSymbol())>-1;r?o(n,t,function(){return e(n)}):f(n,t,i)}function l(n,t){var i=e(n),r=i.indexOf(u.startSymbol())>-1;r||i||f(n,t,i)}function e(n){function r(t){for(;t.parentNode&&(t=t.parentNode)!==n;)if(t.getAttribute&&"true"===t.getAttribute("aria-hidden"))return!0}n=n[0]||n;for(var t,u=document.createTreeWalker(n,NodeFilter.SHOW_TEXT,null,!1),i="";t=u.nextNode();)r(t)||(i+=t.textContent);return i.trim()||""}function a(n,t){function o(n){var t=n.currentStyle?n.currentStyle:r.getComputedStyle(n);return"none"===t.display}var s=n.hasChildNodes(),e=!1,f,i,u;if(s)for(f=n.childNodes,i=0;i<f.length;i++)u=f[i],1===u.nodeType&&u.hasAttribute(t)&&(o(u)||(e=!0));return e}function s(n){var i=t.element(n)[0]||n;return!!i.hasAttribute&&(i.hasAttribute("aria-label")||i.hasAttribute("aria-labelledby")||i.hasAttribute("aria-describedby"))}function h(n,i){function u(n){if(!s(n))return!1;if(n.hasAttribute("role"))switch(n.getAttribute("role").toLowerCase()){case"command":case"definition":case"directory":case"grid":case"list":case"listitem":case"log":case"marquee":case"menu":case"menubar":case"note":case"presentation":case"separator":case"scrollbar":case"status":case"tablist":return!1}switch(n.tagName.toLowerCase()){case"abbr":case"acronym":case"address":case"applet":case"audio":case"b":case"bdi":case"bdo":case"big":case"blockquote":case"br":case"canvas":case"caption":case"center":case"cite":case"code":case"col":case"data":case"dd":case"del":case"dfn":case"dir":case"div":case"dl":case"em":case"embed":case"fieldset":case"figcaption":case"font":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":case"hgroup":case"html":case"i":case"ins":case"isindex":case"kbd":case"keygen":case"label":case"legend":case"li":case"map":case"mark":case"menu":case"object":case"ol":case"output":case"pre":case"presentation":case"q":case"rt":case"ruby":case"samp":case"small":case"source":case"span":case"status":case"strike":case"strong":case"sub":case"sup":case"svg":case"tbody":case"td":case"th":case"thead":case"time":case"tr":case"track":case"tt":case"ul":case"var":return!1}return!0}i=i||1;var r=t.element(n)[0]||n;return!!r.parentNode&&(!!u(r.parentNode)||(i--,!!i&&h(r.parentNode,i)))}var v=this.showWarnings;return{expect:f,expectAsync:o,expectWithText:c,expectWithoutText:l,getText:e,hasAriaLabel:s,parentHasAriaLabel:h}}n.$inject=["$$rAF","$log","$window","$interpolate"];t.module("material.core").provider("$mdAria",i)}(),function(){function n(n){function u(){return!r||("function"==typeof n.preAssignBindingsEnabled?n.preAssignBindingsEnabled():1===t.version.major&&t.version.minor<6)}function i(n,t,i,r,u){this.$q=n;this.$templateRequest=t;this.$injector=i;this.$compile=r;this.$controller=u}var r=!1;this.respectPreAssignBindingsEnabled=function(n){return t.isDefined(n)?(r=n,this):r};this.$get=["$q","$templateRequest","$injector","$compile","$controller",function(n,t,r,u,f){return new i(n,t,r,u,f)}];i.prototype.compile=function(n){return n.contentElement?this._prepareContentElement(n):this._compileTemplate(n)};i.prototype._prepareContentElement=function(n){var t=this._fetchContentElement(n);return this.$q.resolve({element:t.element,cleanup:t.restore,locals:{},link:function(){return t.element}})};i.prototype._compileTemplate=function(n){var r=this,u=n.templateUrl,f=n.template||"",i=t.extend({},n.resolve),e=t.extend({},n.locals),o=n.transformTemplate||t.identity;return t.forEach(i,function(n,u){i[u]=t.isString(n)?r.$injector.get(n):r.$injector.invoke(n)}),t.extend(i,e),i.$$ngTemplate=u?this.$templateRequest(u):this.$q.when(f),this.$q.all(i).then(function(i){var u=o(i.$$ngTemplate,n),f=n.element||t.element("<div>").html(u.trim()).contents();return r._compileElement(i,f,n)})};i.prototype._compileElement=function(n,i,r){function f(f){if(n.$scope=f,r.controller){var h=t.extend({},n,{$element:i}),s=e._createController(r,h,n);i.data("$ngControllerController",s);i.children().data("$ngControllerController",s);u.controller=s}return o(f)}var e=this,o=this.$compile(i),u={element:i,cleanup:i.remove.bind(i),locals:n,link:f};return u};i.prototype._createController=function(n,i,r){var e=this.$controller(n.controller,i,!0,n.controllerAs),f;return u()&&n.bindToController&&t.extend(e.instance,r),f=e(),!u()&&n.bindToController&&t.extend(e.instance,r),t.isFunction(f.$onInit)&&f.$onInit(),f};i.prototype._fetchContentElement=function(n){function u(n){var t=n.parentNode,i=n.nextElementSibling;return function(){i?t.insertBefore(n,i):t.appendChild(n)}}var i=n.contentElement,r=null;return t.isString(i)?(i=document.querySelector(i),r=u(i)):(i=i[0]||i,r=document.contains(i)?u(i):function(){i.parentNode&&i.parentNode.removeChild(i)}),{element:t.element(i),restore:r}}}t.module("material.core").provider("$mdCompiler",n);n.$inject=["$compileProvider"]}(),function(){function c(){}function l(i,r,f){function l(n){return function(t,i){i.distance<this.state.options.maxDistance&&this.dispatchEvent(t,n,i)}}function v(n,t,i){var r=e[t.replace(/^\$md./,"")];if(!r)throw new Error("Failed to register element with handler "+t+". Available handlers: "+Object.keys(e).join(", "));return r.registerElement(n,i)}function p(n,r){var u=new i(n);return t.extend(u,r),e[n]=u,s}function w(){for(var i,r,f=document.createElement("div"),u=["","webkit","Moz","MS","ms","o"],n=0;n<u.length;n++)if(i=u[n],r=i?i+"TouchAction":"touchAction",t.isDefined(f.style[r]))return r}var a=navigator.userAgent||navigator.vendor||n.opera,k=a.match(/ipad|iphone|ipod/i),d=a.match(/android/i),c=w(),g="undefined"!=typeof n.jQuery&&t.element===n.jQuery,s={handler:p,register:v,isHijackingClicks:(k||d)&&!g&&!b};return s.isHijackingClicks&&(s.handler("click",{options:{maxDistance:o},onEnd:l("click")}),s.handler("focus",{options:{maxDistance:o},onEnd:function(n,t){t.distance<this.state.options.maxDistance&&h(n.target)&&(this.dispatchEvent(n,"focus",t),n.target.focus())}}),s.handler("mouseup",{options:{maxDistance:o},onEnd:l("mouseup")}),s.handler("mousedown",{onStart:function(n){this.dispatchEvent(n,"mousedown")}})),s.handler("press",{onStart:function(n){this.dispatchEvent(n,"$md.pressdown")},onEnd:function(n){this.dispatchEvent(n,"$md.pressup")}}).handler("hold",{options:{maxDistance:6,delay:500},onCancel:function(){f.cancel(this.state.timeout)},onStart:function(n,i){return this.state.registeredParent?(this.state.pos={x:i.x,y:i.y},void(this.state.timeout=f(t.bind(this,function(){this.dispatchEvent(n,"$md.hold");this.cancel()}),this.state.options.delay,!1))):this.cancel()},onMove:function(n,t){c||"touchmove"!==n.type||n.preventDefault();var i=this.state.pos.x-t.x,r=this.state.pos.y-t.y;Math.sqrt(i*i+r*r)>this.options.maxDistance&&this.cancel()},onEnd:function(){this.onCancel()}}).handler("drag",{options:{minDistance:6,horizontal:!0,cancelMultiplier:1.5},onSetup:function(n,t){c&&(this.oldTouchAction=n[0].style[c],n[0].style[c]=t.horizontal?"pan-y":"pan-x")},onCleanup:function(n){this.oldTouchAction&&(n[0].style[c]=this.oldTouchAction)},onStart:function(){this.state.registeredParent||this.cancel()},onMove:function(n,t){var i,r;c||"touchmove"!==n.type||n.preventDefault();this.state.dragPointer?this.dispatchDragMove(n):(this.state.options.horizontal?(i=Math.abs(t.distanceX)>this.state.options.minDistance,r=Math.abs(t.distanceY)>this.state.options.minDistance*this.state.options.cancelMultiplier):(i=Math.abs(t.distanceY)>this.state.options.minDistance,r=Math.abs(t.distanceX)>this.state.options.minDistance*this.state.options.cancelMultiplier),i?(this.state.dragPointer=y(n),u(n,this.state.dragPointer),this.dispatchEvent(n,"$md.dragstart",this.state.dragPointer)):r&&this.cancel())},dispatchDragMove:r.throttle(function(n){this.state.isRunning&&(u(n,this.state.dragPointer),this.dispatchEvent(n,"$md.drag",this.state.dragPointer))}),onEnd:function(n){this.state.dragPointer&&(u(n,this.state.dragPointer),this.dispatchEvent(n,"$md.dragend",this.state.dragPointer))}}).handler("swipe",{options:{minVelocity:.65,minDistance:10},onEnd:function(n,t){var i;Math.abs(t.velocityX)>this.state.options.minVelocity&&Math.abs(t.distanceX)>this.state.options.minDistance?(i="left"==t.directionX?"$md.swipeleft":"$md.swiperight",this.dispatchEvent(n,i)):Math.abs(t.velocityY)>this.state.options.minVelocity&&Math.abs(t.distanceY)>this.state.options.minDistance&&(i="up"==t.directionY?"$md.swipeup":"$md.swipedown",this.dispatchEvent(n,i))}})}function a(n){this.name=n;this.state={}}function d(){function r(n,r,u){u=u||i;var f=new t.element.Event(r);f.$material=!0;f.pointer=u;f.srcEvent=n;t.extend(f,{clientX:u.x,clientY:u.y,screenX:u.x,screenY:u.y,pageX:u.x,pageY:u.y,ctrlKey:n.ctrlKey,altKey:n.altKey,shiftKey:n.shiftKey,metaKey:n.metaKey});t.element(u.target).trigger(f)}function u(t,r,u){u=u||i;var f;"click"===r||"mouseup"==r||"mousedown"==r?(f=document.createEvent("MouseEvents"),f.initMouseEvent(r,!0,!0,n,t.detail,u.x,u.y,u.x,u.y,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget||null)):(f=document.createEvent("CustomEvent"),f.initCustomEvent(r,!0,!0,{}));f.$material=!0;f.pointer=u;f.srcEvent=t;u.target.dispatchEvent(f)}var f="undefined"!=typeof n.jQuery&&t.element===n.jQuery;return a.prototype={options:{},dispatchEvent:f?r:u,onSetup:t.noop,onCleanup:t.noop,onStart:t.noop,onMove:t.noop,onEnd:t.noop,onCancel:t.noop,start:function(n,i){if(!this.state.isRunning){var r=this.getNearestParent(n.target),u=r&&r.$mdGesture[this.name]||{};this.state={isRunning:!0,options:t.extend({},this.options,u),registeredParent:r};this.onStart(n,i)}},move:function(n,t){this.state.isRunning&&this.onMove(n,t)},end:function(n,t){this.state.isRunning&&(this.onEnd(n,t),this.state.isRunning=!1)},cancel:function(n,t){this.onCancel(n,t);this.state={}},getNearestParent:function(n){for(var t=n;t;){if((t.$mdGesture||{})[this.name])return t;t=t.parentNode}return null},registerElement:function(n,t){function i(){delete n[0].$mdGesture[r.name];n.off("$destroy",i);r.onCleanup(n,t||{})}var r=this;return n[0].$mdGesture=n[0].$mdGesture||{},n[0].$mdGesture[this.name]=t||{},n.on("$destroy",i),r.onSetup(n,t||{}),i}},a}function v(n,o){function c(n){var t=!n.clientX&&!n.clientY;t||n.$material||n.isIonicTap||p(n)||"mousedown"===n.type&&(h(n.target)||h(document.activeElement))||(n.preventDefault(),n.stopPropagation())}function a(n){var t=0===n.clientX&&0===n.clientY,i=n.target&&"submit"===n.target.type;t||n.$material||n.isIonicTap||p(n)||i?(r=null,"label"==n.target.tagName.toLowerCase()&&(r={x:n.x,y:n.y})):(n.preventDefault(),n.stopPropagation(),r=null)}function l(n,t){var r,u;for(u in e)r=e[u],r instanceof o&&("start"===n&&r.cancel(),r[n](t,i))}function v(n){if(!i){var t=+Date.now();f&&!s(n,f)&&t-f.endTime<1500||(i=y(n),l("start",n))}}function w(n){i&&s(n,i)&&(u(n,i),l("move",n))}function b(n){i&&s(n,i)&&(u(n,i),i.endTime=+Date.now(),"pointercancel"!==n.type&&l("end",n),f=i,i=null)}document.contains||(document.contains=function(n){return document.body.contains(n)});!k&&n.isHijackingClicks&&(document.addEventListener("click",a,!0),document.addEventListener("mouseup",c,!0),document.addEventListener("mousedown",c,!0),document.addEventListener("focus",c,!0),k=!0);t.element(document).on("mousedown touchstart pointerdown",v).on("mousemove touchmove pointermove",w).on("mouseup mouseleave touchend touchcancel pointerup pointercancel",b).on("$$mdGestureReset",function(){f=i=null})}function y(n){var i=w(n),t={startTime:+Date.now(),target:n.target,type:n.type.charAt(0)};return t.startX=t.x=i.pageX,t.startY=t.y=i.pageY,t}function s(n,t){return n&&t&&n.type.charAt(0)===t.type}function p(n){return r&&r.x==n.x&&r.y==n.y}function u(n,t){var i=w(n),r=t.x=i.pageX,u=t.y=i.pageY;t.distanceX=r-t.startX;t.distanceY=u-t.startY;t.distance=Math.sqrt(t.distanceX*t.distanceX+t.distanceY*t.distanceY);t.directionX=t.distanceX>0?"right":t.distanceX<0?"left":"";t.directionY=t.distanceY>0?"down":t.distanceY<0?"up":"";t.duration=+Date.now()-t.startTime;t.velocityX=t.distanceX/t.duration;t.velocityY=t.distanceY/t.duration}function w(n){return n=n.originalEvent||n,n.touches&&n.touches[0]||n.changedTouches&&n.changedTouches[0]||n}function h(n){return!!n&&"-1"!=n.getAttribute("tabindex")&&!n.hasAttribute("disabled")&&(n.hasAttribute("tabindex")||n.hasAttribute("href")||n.isContentEditable||["INPUT","SELECT","BUTTON","TEXTAREA","VIDEO","AUDIO"].indexOf(n.nodeName)!=-1)}l.$inject=["$$MdGestureHandler","$$rAF","$timeout"];v.$inject=["$mdGesture","$$MdGestureHandler"];var i,f,e={},b=!1,o=6,r=null,k=!1;t.module("material.core.gestures",[]).provider("$mdGesture",c).factory("$$MdGestureHandler",d).run(v);c.prototype={skipClickHijack:function(){return b=!0},setMaxClickDistance:function(n){o=parseInt(n)},$get:["$$MdGestureHandler","$$rAF","$timeout",function(n,t,i){return new l(n,t,i)}]}}(),function(){function i(n,i){this.$timeout=n;this.$mdUtil=i;this.bodyElement=t.element(document.body);this.isBuffering=!1;this.bufferTimeout=null;this.lastInteractionType=null;this.lastInteractionTime=null;this.inputEventMap={keydown:"keyboard",mousedown:"mouse",mouseenter:"mouse",touchstart:"touch",pointerdown:"pointer",MSPointerDown:"pointer"};this.iePointerMap={2:"touch",3:"touch",4:"mouse"};this.initializeEvents()}i.$inject=["$timeout","$mdUtil"];t.module("material.core.interaction",[]).service("$mdInteraction",i);i.prototype.initializeEvents=function(){var t="MSPointerEvent"in n?"MSPointerDown":"PointerEvent"in n?"pointerdown":null;this.bodyElement.on("keydown mousedown",this.onInputEvent.bind(this));"ontouchstart"in document.documentElement&&this.bodyElement.on("touchstart",this.onBufferInputEvent.bind(this));t&&this.bodyElement.on(t,this.onInputEvent.bind(this))};i.prototype.onInputEvent=function(n){if(!this.isBuffering){var t=this.inputEventMap[n.type];"pointer"===t&&(t=this.iePointerMap[n.pointerType]||n.pointerType);this.lastInteractionType=t;this.lastInteractionTime=this.$mdUtil.now()}};i.prototype.onBufferInputEvent=function(n){this.$timeout.cancel(this.bufferTimeout);this.onInputEvent(n);this.isBuffering=!0;this.bufferTimeout=this.$timeout(function(){this.isBuffering=!1}.bind(this),650,!1)};i.prototype.getLastInteractionType=function(){return this.lastInteractionType};i.prototype.isUserInvoked=function(n){var i=t.isNumber(n)?n:15;return this.lastInteractionTime>=this.$mdUtil.now()-i}}(),function(){function n(){function n(n){function o(n){return i.optionsFactory=n.options,i.methods=(n.methods||[]).concat(f),r}function s(n,t){return e[n]=t,r}function h(t,u){if(u=u||{},u.methods=u.methods||[],u.options=u.options||function(){return{}},/^cancel|hide|show$/.test(t))throw new Error("Preset '"+t+"' in "+n+" is reserved!");if(u.methods.indexOf("_options")>-1)throw new Error("Method '_options' in "+n+" is reserved!");return i.presets[t]={methods:u.methods.concat(f),optionsFactory:u.options,argOption:u.argOption},r}function u(r,u){function l(n){return n=n||{},n._options&&(n=n._options),o.show(t.extend({},c,n))}function a(n){return o.destroy(n)}function s(t,i){var r={};return r[n]=f,u.invoke(t||function(){return i},{},r)}var h,c,o=r(),f={hide:o.hide,cancel:o.cancel,show:l,destroy:a};return h=i.methods||[],c=s(i.optionsFactory,{}),t.forEach(e,function(n,t){f[t]=n}),t.forEach(i.presets,function(n,i){function r(n){this._options=t.extend({},u,n)}var u=s(n.optionsFactory,{}),o=(n.methods||[]).concat(h),e;(t.extend(u,{$type:i}),t.forEach(o,function(n){r.prototype[n]=function(t){return this._options[n]=t,this}}),n.argOption)&&(e="show"+i.charAt(0).toUpperCase()+i.slice(1),f[e]=function(n){var t=f[i](n);return f.show(t)});f[i]=function(i){return arguments.length&&n.argOption&&!t.isObject(i)&&!t.isArray(i)?(new r)[n.argOption](i):new r(i)}}),f}u.$inject=["$$interimElement","$injector"];var f=["onHide","onShow","onRemove"],e={},i={presets:{}},r={setDefaults:o,addPreset:h,addMethod:s,$get:u};return r.addPreset("build",{methods:["controller","controllerAs","resolve","multiple","template","templateUrl","themable","transformTemplate","parent","contentElement"]}),r}function r(n,r,u,f,e,o,s,h,c,l,a){return function(){function d(n){var t,i,u;return n=n||{},t=new it(n||{}),i=n.multiple?r.resolve():r.all(p),n.multiple||(i=i.then(function(){var n=y.concat(v.map(w.cancel));return r.all(n)})),u=i.then(function(){return t.show()["catch"](function(n){return n})["finally"](function(){p.splice(p.indexOf(u),1);v.push(t)})}),p.push(u),t.deferred.promise["catch"](function(n){return n instanceof Error&&a(n),n}),t.deferred.promise}function g(n,t){function u(i){var r=i.remove(n,!1,t||{})["catch"](function(n){return n})["finally"](function(){y.splice(y.indexOf(r),1)});return v.splice(v.indexOf(i),1),y.push(r),i.deferred.promise}return t=t||{},t.closeAll?r.all(v.slice().reverse().map(u)):t.closeTo!==i?r.all(v.slice(t.closeTo).map(u)):u(v[v.length-1])}function nt(n,i){var u=v.pop(),f;return u?(f=u.remove(n,!0,i||{})["catch"](function(n){return n})["finally"](function(){y.splice(y.indexOf(f),1)}),y.push(f),u.deferred.promise["catch"](t.noop)):r.when(n)}function b(n){return function(){var t=arguments;return v.length?n.apply(w,t):p.length?p[0]["finally"](function(){return n.apply(w,t)}):r.when("No interim elements currently showing up.")}}function tt(n){var i=n?null:v.shift(),f=t.element(n).length&&t.element(n)[0].parentNode,u;return f&&(u=v.filter(function(n){return n.options.element[0]===f}),u.length&&(i=u[0],v.splice(v.indexOf(i),1))),i?i.remove(k,!1,{$destroy:!0}):r.when(k)}function it(l){function b(){return r(function(n,t){function i(n){a.deferred.reject(n);t(n)}l.onCompiling&&l.onCompiling(l);g(l).then(function(t){v=nt(t,l);l.cleanupElement=t.cleanup;p=rt(v,l,t.controller).then(n,i)})["catch"](i)})}function k(n,i,u){function e(n){a.deferred.resolve(n)}function f(n){a.deferred.reject(n)}return v?(l=t.extend(l||{},u||{}),l.cancelAutoHide&&l.cancelAutoHide(),l.element.triggerHandler("$mdInterimElementRemove"),l.$destroy===!0?y(l.element,l).then(function(){i&&f(n)||e(n)}):(r.when(p)["finally"](function(){y(l.element,l).then(function(){i?f(n):e(n)},f)}),a.deferred.promise)):r.when(!1)}function d(n){return n=n||{},n.template&&(n.template=s.processTemplate(n.template)),t.extend({preserveScope:!1,cancelAutoHide:t.noop,scope:n.scope||u.$new(n.isolateScope),onShow:function(n,t,i){return o.enter(t,i.parent)},onRemove:function(n,t){return t&&o.leave(t)||r.when()}},n)}function g(n){var t=n.skipCompile?null:h.compile(n);return t||r(function(t){t({locals:{},link:function(){return n.element}})})}function nt(n,i){t.extend(n.locals,i);var r=n.link(i.scope);return i.element=r,i.parent=tt(r,i),i.themable&&c(r),r}function tt(i,r){var u=r.parent,f;return(u=t.isFunction(u)?u(r.scope,i,r):t.isString(u)?t.element(n[0].querySelector(u)):t.element(u),!(u||{}).length)?(e[0]&&e[0].querySelector&&(f=e[0].querySelector(":not(svg) > body")),f||(f=e[0]),"#comment"==f.nodeName&&(f=n[0].body),t.element(f)):u}function it(){var n,r=t.noop;l.hideDelay&&(n=f(w.hide,l.hideDelay),r=function(){f.cancel(n)});l.cancelAutoHide=function(){r();l.cancelAutoHide=i}}function rt(n,i,u){var f=i.onShowing||t.noop,e=i.onComplete||t.noop;try{f(i.scope,n,i,u)}catch(o){return r.reject(o)}return r(function(t,f){try{r.when(i.onShow(i.scope,n,i,u)).then(function(){e(i.scope,n,i);it();t(n)},f)}catch(o){f(o.message)}})}function y(n,i){var u=i.onRemoving||t.noop;return r(function(t,f){try{var e=r.when(i.onRemove(i.scope,n,i)||!0);u(n,e);i.$destroy?(t(n),!i.preserveScope&&i.scope&&e.then(function(){i.scope.$destroy()})):e.then(function(){!i.preserveScope&&i.scope&&i.scope.$destroy();t(n)},f)}catch(o){f(o.message)}})}var a,v,p=r.when(!0);return l=d(l),a={options:l,deferred:r.defer(),show:b,remove:k}}var w,k=!1,p=[],y=[],v=[];return w={show:d,hide:b(g),cancel:b(nt),destroy:tt,$injector_:l}}}return r.$inject=["$document","$q","$rootScope","$timeout","$rootElement","$animate","$mdUtil","$mdCompiler","$mdTheming","$injector","$exceptionHandler"],n.$get=r,n}t.module("material.core").provider("$$interimElement",n)}(),function(){!function(){function w(u){function e(n){return n.replace(o,"").replace(s,function(n,t,i,r){return r?i.toUpperCase():i})}var o=/^((?:x|data)[\:\-_])/i,s=/([\:\-\_]+(.))/g,h=["layout","flex","flex-order","flex-offset","layout-align"],l=["show","hide","layout-padding","layout-margin"];t.forEach(["","xs","gt-xs","sm","gt-sm","md","gt-md","lg","gt-lg","xl","print"],function(n){t.forEach(h,function(t){var i=n?t+"-"+n:t;u.directive(e(i),g(i))});t.forEach(l,function(t){var i=n?t+"-"+n:t;u.directive(e(i),r(i))})});u.provider("$$mdLayout",function(){return{$get:t.noop,validateAttributeValue:f,validateAttributeUsage:c,disableLayouts:function(n){i.enabled=n!==!0}}}).directive("mdLayoutCss",k).directive("ngCloak",d("ng-cloak")).directive("layoutWrap",r("layout-wrap")).directive("layoutNowrap",r("layout-nowrap")).directive("layoutNoWrap",r("layout-no-wrap")).directive("layoutFill",r("layout-fill")).directive("layoutLtMd",n("layout-lt-md",!0)).directive("layoutLtLg",n("layout-lt-lg",!0)).directive("flexLtMd",n("flex-lt-md",!0)).directive("flexLtLg",n("flex-lt-lg",!0)).directive("layoutAlignLtMd",n("layout-align-lt-md")).directive("layoutAlignLtLg",n("layout-align-lt-lg")).directive("flexOrderLtMd",n("flex-order-lt-md")).directive("flexOrderLtLg",n("flex-order-lt-lg")).directive("offsetLtMd",n("flex-offset-lt-md")).directive("offsetLtLg",n("flex-offset-lt-lg")).directive("hideLtMd",n("hide-lt-md")).directive("hideLtLg",n("hide-lt-lg")).directive("showLtMd",n("show-lt-md")).directive("showLtLg",n("show-lt-lg")).config(b)}function b(){var n=!!document.querySelector("[md-layouts-disabled]");i.enabled=!n}function k(){return i.enabled=!1,{restrict:"A",priority:"900"}}function d(n){return["$timeout",function(r){return{restrict:"A",priority:-10,compile:function(u){return i.enabled?(u.addClass(n),function(t,i){r(function(){i.removeClass(n)},10,!1)}):t.noop}}}]}function g(n){function r(t,i,r){var u=nt(i,n,r),f=r.$observe(r.$normalize(n),u);u(o(n,r,""));t.$on("$destroy",function(){f()})}return["$mdUtil","$interpolate","$log",function(u,a,v){return e=u,s=a,h=v,{restrict:"A",compile:function(u,e){var s;return i.enabled&&(c(n,e,u,h),f(n,o(n,e,""),l(u,n,e)),s=r),s||t.noop}}}]}function r(n){function r(t,i){i.addClass(n)}return["$mdUtil","$interpolate","$log",function(u,c,a){return e=u,s=c,h=a,{restrict:"A",compile:function(u,e){var s;return i.enabled&&(f(n,o(n,e,""),l(u,n,e)),r(null,u),s=r),s||t.noop}}}]}function nt(n,i){var r;return function(e){var o=f(i,e||"");t.isDefined(o)&&(r&&n.removeClass(r),r=o?i+"-"+o.trim().replace(u,"-"):i,n.addClass(r))}}function n(n){var i=n.split("-");return["$log",function(r){return r.warn(n+"has been deprecated. Please use a `"+i[0]+"-gt-<xxx>` variant."),t.noop}]}function c(n,t,i,r){var f,o,s,u=i[0].nodeName.toLowerCase();switch(n.replace(y,"")){case"flex":"md-button"!=u&&"fieldset"!=u||(o="<"+u+" "+n+"><\/"+u+">",s="https://github.com/philipwalton/flexbugs#9-some-html-elements-cant-be-flex-containers",f="Markup '{0}' may not work as expected in IE Browsers. Consult '{1}' for details.",r.warn(e.supplant(f,[o,s])))}}function f(n,i,r){var f,u;if(!a(i)){switch(n.replace(y,"")){case"layout":v(i,p)||(i=p[0]);break;case"flex":v(i,it)||isNaN(i)&&(i="");break;case"flex-offset":case"flex-order":i&&!isNaN(+i)||(i="0");break;case"layout-align":u=tt(i);i=e.supplant("{main}-{cross}",u);break;case"layout-padding":case"layout-margin":case"layout-fill":case"layout-wrap":case"layout-nowrap":case"layout-nowrap":i=""}i!=f&&(r||t.noop)(i)}return i?i.trim():""}function l(n,t,i){return function(n){a(n)||(i[i.$normalize(t)]=n)}}function a(n){return(n||"").indexOf(s.startSymbol())>-1}function o(n,t,i){var r=t.$normalize(n);return t[r]?t[r].trim().replace(u,"-"):i||null}function v(n,t,i){n=i&&n?n.replace(u,i):n;var r=!1;return n&&t.forEach(function(t){t=i?t.replace(u,i):t;r=r||t===n}),r}function tt(n){var t,i={main:"start",cross:"stretch"};return n=n||"",0!==n.indexOf("-")&&0!==n.indexOf(" ")||(n="none"+n),t=n.toLowerCase().trim().replace(u,"-").split("-"),t.length&&"space"===t[0]&&(t=[t[0]+"-"+t[1],t[2]]),t.length>0&&(i.main=t[0]||i.main),t.length>1&&(i.cross=t[1]||i.cross),rt.indexOf(i.main)<0&&(i.main="start"),ut.indexOf(i.cross)<0&&(i.cross="stretch"),i}var e,s,h,y=/(-gt)?-(sm|md|lg|print)/g,u=/\s+/g,it=["grow","initial","auto","none","noshrink","nogrow"],p=["row","column"],rt=["","start","center","end","stretch","space-around","space-between"],ut=["","start","center","end","stretch"],i={enabled:!0,breakpoints:[]};w(t.module("material.core.layout",["ng"]))}()}(),function(){function n(n){this._$timeout=n;this._liveElement=this._createLiveElement();this._announceTimeout=100}n.$inject=["$timeout"];t.module("material.core").service("$mdLiveAnnouncer",n);n.prototype.announce=function(n,t){t||(t="polite");var i=this;i._liveElement.textContent="";i._liveElement.setAttribute("aria-live",t);i._$timeout(function(){i._liveElement.textContent=n},i._announceTimeout,!1)};n.prototype._createLiveElement=function(){var n=document.createElement("div");return n.classList.add("md-visually-hidden"),n.setAttribute("role","status"),n.setAttribute("aria-atomic","true"),n.setAttribute("aria-live","polite"),document.body.appendChild(n),n}}(),function(){t.module("material.core.meta",[]).provider("$$mdMeta",function(){function i(i){if(n[i])return!0;var r=document.getElementsByName(i)[0];return!!r&&(n[i]=t.element(r),!0)}function u(r,u){if(i(r),n[r])n[r].attr("content",u);else{var f=t.element('<meta name="'+r+'" content="'+u+'"/>');e.append(f);n[r]=f}return function(){n[r].attr("content","");n[r].remove();delete n[r]}}function f(t){if(!i(t))throw Error("$$mdMeta: could not find a meta tag with the name '"+t+"'");return n[t].attr("content")}var e=t.element(document.head),n={},r={setMeta:u,getMeta:f};return t.extend({},r,{$get:function(){return r}})})}(),function(){function n(n,r){function e(n){return n&&""!==n}var o,u=[],f={};return o={notFoundError:function(t,i){n.error((i||"")+"No instance found for handle",t)},getInstances:function(){return u},get:function(n){if(!e(n))return null;for(var i,t=0,r=u.length;t<r;t++)if(i=u[t],i.$$mdHandle===n)return i;return null},register:function(n,i){function r(){var t=u.indexOf(n);t!==-1&&u.splice(t,1)}function e(){var t=f[i];t&&(t.forEach(function(t){t.resolve(n)}),delete f[i])}return i?(n.$$mdHandle=i,u.push(n),e(),r):t.noop},when:function(n){if(e(n)){var t=r.defer(),u=o.get(n);return u?t.resolve(u):(f[n]===i&&(f[n]=[]),f[n].push(t)),t.promise}return r.reject("Invalid `md-component-id` value.")}}}n.$inject=["$log","$q"];t.module("material.core").factory("$mdComponentRegistry",n)}(),function(){!function(){function n(n){function i(n){return n.hasClass("md-icon-button")?{isMenuItem:n.hasClass("md-menu-item"),fitRipple:!0,center:!0}:{isMenuItem:n.hasClass("md-menu-item"),dimBackground:!0}}return{attach:function(r,u,f){return f=t.extend(i(u),f),n.attach(r,u,f)}}}n.$inject=["$mdInkRipple"];t.module("material.core").factory("$mdButtonInkRipple",n)}()}(),function(){!function(){function n(n){function i(i,r,u){return n.attach(i,r,t.extend({center:!0,dimBackground:!1,fitRipple:!0},u))}return{attach:i}}n.$inject=["$mdInkRipple"];t.module("material.core").factory("$mdCheckboxInkRipple",n)}()}(),function(){!function(){function n(n){function i(i,r,u){return n.attach(i,r,t.extend({center:!1,dimBackground:!0,outline:!1,rippleSize:"full"},u))}return{attach:i}}n.$inject=["$mdInkRipple"];t.module("material.core").factory("$mdListInkRipple",n)}()}(),function(){function u(n,i){return{controller:t.noop,link:function(t,r,u){u.hasOwnProperty("mdInkRippleCheckbox")?i.attach(t,r):n.attach(t,r)}}}function e(){function r(){i=!0}var i=!1;return{disableInkRipple:r,$get:["$injector",function(r){function u(u,f,e){return i||f.controller("mdNoInk")?t.noop:r.instantiate(n,{$scope:u,$element:f,rippleOptions:e})}return{attach:u}}]}}function n(n,i,r,u,f,e,o){this.$window=u;this.$timeout=f;this.$mdUtil=e;this.$mdColorUtil=o;this.$scope=n;this.$element=i;this.options=r;this.mousedown=!1;this.ripples=[];this.timeout=null;this.lastRipple=null;e.valueOnUse(this,"container",this.createContainer);this.$element.addClass("md-ink-ripple");(i.controller("mdInkRipple")||{}).createRipple=t.bind(this,this.createRipple);(i.controller("mdInkRipple")||{}).setColor=t.bind(this,this.color);this.bindEvents()}function f(n,i){(n.mousedown||n.lastRipple)&&(n.mousedown=!1,n.$mdUtil.nextTick(t.bind(n,i),!1))}function i(){return{controller:t.noop}}n.$inject=["$scope","$element","rippleOptions","$window","$timeout","$mdUtil","$mdColorUtil"];u.$inject=["$mdButtonInkRipple","$mdCheckboxInkRipple"];t.module("material.core").provider("$mdInkRipple",e).directive("mdInkRipple",u).directive("mdNoInk",i).directive("mdNoBar",i).directive("mdNoStretch",i);var r=450;n.prototype.color=function(n){function r(){var n=i.options&&i.options.colorElement?i.options.colorElement:[],t=n.length?n[0]:i.$element[0];return t?i.$window.getComputedStyle(t).color:"rgb(0,0,0)"}var i=this;return t.isDefined(n)&&(i._color=i._parseColor(n)),i._color||i._parseColor(i.inkRipple())||i._parseColor(r())};n.prototype.calculateColor=function(){return this.color()};n.prototype._parseColor=function(n,t){t=t||1;var i=this.$mdColorUtil;if(n)return 0===n.indexOf("rgba")?n.replace(/\d?\.?\d*\s*\)\s*$/,(.1*t).toString()+")"):0===n.indexOf("rgb")?i.rgbToRgba(n):0===n.indexOf("#")?i.hexToRgba(n):void 0};n.prototype.bindEvents=function(){this.$element.on("mousedown",t.bind(this,this.handleMousedown));this.$element.on("mouseup touchend",t.bind(this,this.handleMouseup));this.$element.on("mouseleave",t.bind(this,this.handleMouseup));this.$element.on("touchmove",t.bind(this,this.handleTouchmove))};n.prototype.handleMousedown=function(n){if(!this.mousedown)if(n.hasOwnProperty("originalEvent")&&(n=n.originalEvent),this.mousedown=!0,this.options.center)this.createRipple(this.container.prop("clientWidth")/2,this.container.prop("clientWidth")/2);else if(n.srcElement!==this.$element[0]){var t=this.$element[0].getBoundingClientRect(),i=n.clientX-t.left,r=n.clientY-t.top;this.createRipple(i,r)}else this.createRipple(n.offsetX,n.offsetY)};n.prototype.handleMouseup=function(){f(this,this.clearRipples)};n.prototype.handleTouchmove=function(){f(this,this.deleteRipples)};n.prototype.deleteRipples=function(){for(var n=0;n<this.ripples.length;n++)this.ripples[n].remove()};n.prototype.clearRipples=function(){for(var n=0;n<this.ripples.length;n++)this.fadeInComplete(this.ripples[n])};n.prototype.createContainer=function(){var n=t.element('<div class="md-ripple-container"><\/div>');return this.$element.append(n),n};n.prototype.clearTimeout=function(){this.timeout&&(this.$timeout.cancel(this.timeout),this.timeout=null)};n.prototype.isRippleAllowed=function(){var n=this.$element[0];do{if(!n.tagName||"BODY"===n.tagName)break;if(n&&t.isFunction(n.hasAttribute)&&(n.hasAttribute("disabled")||"false"===this.inkRipple()||"0"===this.inkRipple()))return!1}while(n=n.parentNode);return!0};n.prototype.inkRipple=function(){return this.$element.attr("md-ink-ripple")};n.prototype.createRipple=function(n,i){function h(n,t,i){return n?Math.max(t,i):Math.sqrt(Math.pow(t,2)+Math.pow(i,2))}if(this.isRippleAllowed()){var f=this,o=f.$mdColorUtil,u=t.element('<div class="md-ripple"><\/div>'),c=this.$element.prop("clientWidth"),l=this.$element.prop("clientHeight"),a=2*Math.max(Math.abs(c-n),n),v=2*Math.max(Math.abs(l-i),i),s=h(this.options.fitRipple,a,v),e=this.calculateColor();u.css({left:n+"px",top:i+"px",background:"black",width:s+"px",height:s+"px",backgroundColor:o.rgbaToRgb(e),borderColor:o.rgbaToRgb(e)});this.lastRipple=u;this.clearTimeout();this.timeout=this.$timeout(function(){f.clearTimeout();f.mousedown||f.fadeInComplete(u)},.35*r,!1);this.options.dimBackground&&this.container.css({backgroundColor:e});this.container.append(u);this.ripples.push(u);u.addClass("md-ripple-placed");this.$mdUtil.nextTick(function(){u.addClass("md-ripple-scaled md-ripple-active");f.$timeout(function(){f.clearRipples()},r,!1)},!1)}};n.prototype.fadeInComplete=function(n){this.lastRipple===n?this.timeout||this.mousedown||this.removeRipple(n):this.removeRipple(n)};n.prototype.removeRipple=function(n){var t=this,i=this.ripples.indexOf(n);i<0||(this.ripples.splice(this.ripples.indexOf(n),1),n.removeClass("md-ripple-active"),n.addClass("md-ripple-remove"),0===this.ripples.length&&this.container.css({backgroundColor:""}),this.$timeout(function(){t.fadeOutComplete(n)},r,!1))};n.prototype.fadeOutComplete=function(n){n.remove();this.lastRipple=null}}(),function(){!function(){function n(n){function i(i,r,u){return n.attach(i,r,t.extend({center:!1,dimBackground:!0,outline:!1,rippleSize:"full"},u))}return{attach:i}}n.$inject=["$mdInkRipple"];t.module("material.core").factory("$mdTabInkRipple",n)}()}(),function(){t.module("material.core.theming.palette",[]).constant("$mdColorPalette",{red:{50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 300 A100",contrastStrongLightColors:"400 500 600 700 A200 A400 A700"},pink:{50:"#fce4ec",100:"#f8bbd0",200:"#f48fb1",300:"#f06292",400:"#ec407a",500:"#e91e63",600:"#d81b60",700:"#c2185b",800:"#ad1457",900:"#880e4f",A100:"#ff80ab",A200:"#ff4081",A400:"#f50057",A700:"#c51162",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"500 600 A200 A400 A700"},purple:{50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400 A200 A400 A700"},"deep-purple":{50:"#ede7f6",100:"#d1c4e9",200:"#b39ddb",300:"#9575cd",400:"#7e57c2",500:"#673ab7",600:"#5e35b1",700:"#512da8",800:"#4527a0",900:"#311b92",A100:"#b388ff",A200:"#7c4dff",A400:"#651fff",A700:"#6200ea",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400 A200"},indigo:{50:"#e8eaf6",100:"#c5cae9",200:"#9fa8da",300:"#7986cb",400:"#5c6bc0",500:"#3f51b5",600:"#3949ab",700:"#303f9f",800:"#283593",900:"#1a237e",A100:"#8c9eff",A200:"#536dfe",A400:"#3d5afe",A700:"#304ffe",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100",contrastStrongLightColors:"300 400 A200 A400"},blue:{50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 300 400 A100",contrastStrongLightColors:"500 600 700 A200 A400 A700"},"light-blue":{50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea",contrastDefaultColor:"dark",contrastLightColors:"600 700 800 900 A700",contrastStrongLightColors:"600 700 800 A700"},cyan:{50:"#e0f7fa",100:"#b2ebf2",200:"#80deea",300:"#4dd0e1",400:"#26c6da",500:"#00bcd4",600:"#00acc1",700:"#0097a7",800:"#00838f",900:"#006064",A100:"#84ffff",A200:"#18ffff",A400:"#00e5ff",A700:"#00b8d4",contrastDefaultColor:"dark",contrastLightColors:"700 800 900",contrastStrongLightColors:"700 800 900"},teal:{50:"#e0f2f1",100:"#b2dfdb",200:"#80cbc4",300:"#4db6ac",400:"#26a69a",500:"#009688",600:"#00897b",700:"#00796b",800:"#00695c",900:"#004d40",A100:"#a7ffeb",A200:"#64ffda",A400:"#1de9b6",A700:"#00bfa5",contrastDefaultColor:"dark",contrastLightColors:"500 600 700 800 900",contrastStrongLightColors:"500 600 700"},green:{50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853",contrastDefaultColor:"dark",contrastLightColors:"500 600 700 800 900",contrastStrongLightColors:"500 600 700"},"light-green":{50:"#f1f8e9",100:"#dcedc8",200:"#c5e1a5",300:"#aed581",400:"#9ccc65",500:"#8bc34a",600:"#7cb342",700:"#689f38",800:"#558b2f",900:"#33691e",A100:"#ccff90",A200:"#b2ff59",A400:"#76ff03",A700:"#64dd17",contrastDefaultColor:"dark",contrastLightColors:"700 800 900",contrastStrongLightColors:"700 800 900"},lime:{50:"#f9fbe7",100:"#f0f4c3",200:"#e6ee9c",300:"#dce775",400:"#d4e157",500:"#cddc39",600:"#c0ca33",700:"#afb42b",800:"#9e9d24",900:"#827717",A100:"#f4ff81",A200:"#eeff41",A400:"#c6ff00",A700:"#aeea00",contrastDefaultColor:"dark",contrastLightColors:"900",contrastStrongLightColors:"900"},yellow:{50:"#fffde7",100:"#fff9c4",200:"#fff59d",300:"#fff176",400:"#ffee58",500:"#ffeb3b",600:"#fdd835",700:"#fbc02d",800:"#f9a825",900:"#f57f17",A100:"#ffff8d",A200:"#ffff00",A400:"#ffea00",A700:"#ffd600",contrastDefaultColor:"dark"},amber:{50:"#fff8e1",100:"#ffecb3",200:"#ffe082",300:"#ffd54f",400:"#ffca28",500:"#ffc107",600:"#ffb300",700:"#ffa000",800:"#ff8f00",900:"#ff6f00",A100:"#ffe57f",A200:"#ffd740",A400:"#ffc400",A700:"#ffab00",contrastDefaultColor:"dark"},orange:{50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00",contrastDefaultColor:"dark",contrastLightColors:"800 900",contrastStrongLightColors:"800 900"},"deep-orange":{50:"#fbe9e7",100:"#ffccbc",200:"#ffab91",300:"#ff8a65",400:"#ff7043",500:"#ff5722",600:"#f4511e",700:"#e64a19",800:"#d84315",900:"#bf360c",A100:"#ff9e80",A200:"#ff6e40",A400:"#ff3d00",A700:"#dd2c00",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 300 400 A100 A200",contrastStrongLightColors:"500 600 700 800 900 A400 A700"},brown:{50:"#efebe9",100:"#d7ccc8",200:"#bcaaa4",300:"#a1887f",400:"#8d6e63",500:"#795548",600:"#6d4c41",700:"#5d4037",800:"#4e342e",900:"#3e2723",A100:"#d7ccc8",A200:"#bcaaa4",A400:"#8d6e63",A700:"#5d4037",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 A100 A200",contrastStrongLightColors:"300 400"},grey:{50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#ffffff",A200:"#000000",A400:"#303030",A700:"#616161",contrastDefaultColor:"dark",contrastLightColors:"600 700 800 900 A200 A400 A700"},"blue-grey":{50:"#eceff1",100:"#cfd8dc",200:"#b0bec5",300:"#90a4ae",400:"#78909c",500:"#607d8b",600:"#546e7a",700:"#455a64",800:"#37474f",900:"#263238",A100:"#cfd8dc",A200:"#b0bec5",A400:"#78909c",A700:"#455a64",contrastDefaultColor:"light",contrastDarkColors:"50 100 200 300 A100 A200",contrastStrongLightColors:"400 500 700"}})}(),function(){!function(n){function a(n){var t=!!document.querySelector("[md-themes-disabled]");n.disableTheming(t)}function v(o,s){function tt(n,i){return i=i||{},t[n]=p(n,i),g}function it(i,r){return p(i,n.extend({},t[i]||{},r))}function p(n,t){var i=l.filter(function(n){return!t[n]});if(i.length)throw new Error("Missing colors %1 in palette %2!".replace("%1",i.join(", ")).replace("%2",n));return t}function b(t,i){if(c[t])return c[t];i=i||"default";var u="string"==typeof i?c[i]:i,r=new ot(t);return u&&n.forEach(u.colors,function(t,i){r.colors[i]={name:t.name,hues:n.extend({},t.hues)}}),c[t]=r,r}function ot(t){function r(t){if(t=0===arguments.length||!!t,t!==i.isDark){i.isDark=t;i.foregroundPalette=i.isDark?ut:rt;i.foregroundShadow=i.isDark?ft:et;var r=i.isDark?e:f,u=i.isDark?f:e;return n.forEach(r,function(n,t){var f=i.colors[t],e=u[t],r;if(f)for(r in f.hues)f.hues[r]===e[r]&&(f.hues[r]=n[r])}),i}}var i=this;i.name=t;i.colors={};i.dark=r;r(!1);u.forEach(function(t){var r=(i.isDark?e:f)[t];i[t+"Palette"]=function(u,f){var e=i.colors[t]={name:u,hues:n.extend({},r,f)};return Object.keys(e.hues).forEach(function(n){if(!r[n])throw new Error("Invalid hue name '%1' in theme %2's %3 color %4. Available hue names: %4".replace("%1",n).replace("%2",i.name).replace("%3",u).replace("%4",Object.keys(r).join(", ")));}),Object.keys(e.hues).map(function(n){return e.hues[n]}).forEach(function(n){if(l.indexOf(n)==-1)throw new Error("Invalid hue value '%1' in theme %2's %3 color %4. Available hue values: %5".replace("%1",n).replace("%2",i.name).replace("%3",t).replace("%4",u).replace("%5",l.join(", ")));}),i};i[t+"Color"]=function(){var n=Array.prototype.slice.call(arguments);return console.warn("$mdThemingProviderTheme."+t+"Color() has been deprecated. Use $mdThemingProviderTheme."+t+"Palette() instead."),i[t+"Palette"].apply(i,n)}})}function d(u,f,e,o){function h(n){return n===i||""===n||s.THEMES[n]!==i}function l(n,t){function s(){return i&&i.$mdTheme||("default"==a?"":a)}function u(t){if(t){h(t)||o.warn("Attempted to use unregistered theme '"+t+"'. Register it with $mdThemingProvider.theme().");var r=n.data("$mdThemeName");r&&n.removeClass("md-"+r+"-theme");n.addClass("md-"+t+"-theme");n.data("$mdThemeName",t);i&&n.data("$mdThemeController",i)}}var i=t.controller("mdTheme")||n.data("$mdThemeController"),e,r;(u(s()),i)&&(e=v||i.$shouldWatch||f.parseAttributeBoolean(n.attr("md-theme-watch")),r=i.registerChanges(function(t){u(t);e?n.on("$destroy",r):r()}))}var s=function(n,t){t===i&&(t=n,n=i);n===i&&(n=u);s.inherit(t,t)};return Object.defineProperty(s,"THEMES",{get:function(){return n.extend({},c)}}),Object.defineProperty(s,"PALETTES",{get:function(){return n.extend({},t)}}),Object.defineProperty(s,"ALWAYS_WATCH",{get:function(){return v}}),s.inherit=l,s.registered=h,s.defaultTheme=function(){return a},s.generateTheme=function(n){k(c[n],n,r.nonce)},s.defineTheme=function(n,t){t=t||{};var i=b(n);return t.primary&&i.primaryPalette(t.primary),t.accent&&i.accentPalette(t.accent),t.warn&&i.warnPalette(t.warn),t.background&&i.backgroundPalette(t.background),t.dark&&i.dark(),this.generateTheme(n),e.resolve(n)},s.setBrowserColor=y,s}var nt,y;d.$inject=["$rootScope","$mdUtil","$q","$log"];t={};var g,c={},v=!1,a="default";return n.extend(t,o),nt=function(n){var t=s.setMeta("theme-color",n),i=s.setMeta("msapplication-navbutton-color",n);return function(){t();i()}},y=function(i){i=n.isObject(i)?i:{};var f=i.theme||"default",r=i.hue||"800",u=t[i.palette]||t[c[f].colors[i.palette||"primary"].name],e=n.isObject(u[r])?u[r].hex:u[r];return nt(e)},g={definePalette:tt,extendPalette:it,theme:b,configuration:function(){return n.extend({},r,{defaultTheme:a,alwaysWatchTheme:v,registeredStyles:[].concat(r.registeredStyles)})},disableTheming:function(t){r.disableTheming=n.isUndefined(t)||!!t},registerStyles:function(n){r.registeredStyles.push(n)},setNonce:function(n){r.nonce=n},generateThemesOnDemand:function(n){r.generateOnDemand=n},setDefaultTheme:function(n){a=n},alwaysWatchTheme:function(n){v=n},enableBrowserColor:y,$get:d,_LIGHT_DEFAULT_HUES:f,_DARK_DEFAULT_HUES:e,_PALETTES:t,_THEMES:c,_parseRules:w,_rgba:h}}function y(t,i,r,u,f,e){return{priority:101,link:{pre:function(o,s,h){var c=[],a=i.startSymbol(),v=i.endSymbol(),y=h.mdTheme.trim(),d=y.substr(0,a.length)===a&&y.lastIndexOf(v)===y.length-v.length,b="::",g=h.mdTheme.split(a).join("").split(v).join("").trim().substr(0,b.length)===b,l={registerChanges:function(t,i){return i&&(t=n.bind(i,t)),c.push(t),function(){var n=c.indexOf(t);n>-1&&c.splice(n,1)}},$setTheme:function(n){t.registered(n)||e.warn("attempted to use unregistered theme '"+n+"'");l.$mdTheme=n;for(var i=c.length;i--;)c[i](n)},$shouldWatch:u.parseAttributeBoolean(s.attr("md-theme-watch"))||t.ALWAYS_WATCH||d&&!g},p,w,k;s.data("$mdThemeController",l);p=function(){var n=i(h.mdTheme)(o);return r(n)(o)||n};w=function(t){return"string"==typeof t?l.$setTheme(t):void f.when(n.isFunction(t)?t():t).then(function(n){l.$setTheme(n)})};w(p());k=o.$watch(p,function(n){n&&(w(n),l.$shouldWatch||k())})}}}}function tt(){return r.disableTheming=!0,{restrict:"A",priority:"900"}}function p(n){return n}function w(i,r,u){it(i,r);u=u.replace(/THEME_NAME/g,i.name);var f=[],e=i.colors[r],o=new RegExp("\\.md-"+i.name+"-theme","g"),s=new RegExp("('|\")?{{\\s*("+r+")-(color|contrast)-?(\\d\\.?\\d*)?\\s*}}(\"|')?","g"),c=t[e.name];return u=u.replace(/'?"?\{\{\s*([a-zA-Z]+)-(A?\d+|hue\-[0-3]|shadow|default)-?(\d\.?\d*)?(contrast)?\s*\}\}'?"?/g,function(n,r,u,f,e){return"foreground"===r?"shadow"==u?i.foregroundShadow:i.foregroundPalette[u]||i.foregroundPalette[1]:(0!==u.indexOf("hue")&&"default"!==u||(u=i.colors[r].hues[u]),h((t[i.colors[r].name][u]||"")[e?"contrast":"value"],f))}),n.forEach(e.hues,function(n,t){var r=u.replace(s,function(t,i,r,u,f){return h(c[n]["color"===u?"value":"contrast"],f)}),e;("default"!==t&&(r=r.replace(o,".md-"+i.name+"-theme.md-"+t)),"default"==i.name)&&(e=/((?:\s|>|\.|\w|-|:|\(|\)|\[|\]|"|'|=)*)\.md-default-theme((?:\s|>|\.|\w|-|:|\(|\)|\[|\]|"|'|=)*)/g,r=r.replace(e,function(n,t,i){return n+", "+t+i}));f.push(r)}),f}function b(i,f){function v(t){var f=t.contrastDefaultColor,r=t.contrastLightColors||[],i=t.contrastStrongLightColors||[],u=t.contrastDarkColors||[];"string"==typeof r&&(r=r.split(" "));"string"==typeof i&&(i=i.split(" "));"string"==typeof u&&(u=u.split(" "));delete t.contrastDefaultColor;delete t.contrastLightColors;delete t.contrastStrongLightColors;delete t.contrastDarkColors;n.forEach(t,function(e,o){function c(){return"light"===f?u.indexOf(o)>-1?d:i.indexOf(o)>-1?nt:g:r.indexOf(o)>-1?i.indexOf(o)>-1?nt:g:d}if(!n.isObject(e)){var h=s(e);if(!h)throw new Error("Color %1, in palette %2's hue %3, is invalid. Hex or rgb(a) color expected.".replace("%1",e).replace("%2",t.name).replace("%3",o));t[o]={hex:t[o],value:h,contrast:c()}}})}var h=document.head,y=h?h.firstElementChild:null,e=!r.disableTheming&&i.has("$MD_THEME_CSS")?i.get("$MD_THEME_CSS"):"",l,a;(e+=r.registeredStyles.join(""),y&&0!==e.length)&&(n.forEach(t,v),l=e.split(/\}(?!(\}|'|"|;))/).filter(function(n){return n&&n.trim().length}).map(function(n){return n.trim()+"}"}),a=new RegExp("md-("+u.join("|")+")","g"),u.forEach(function(n){o[n]=""}),l.forEach(function(n){for(var t,i=(n.match(a),0);t=u[i];i++)if(n.indexOf(".md-"+t)>-1)return o[t]+=n;for(i=0;t=u[i];i++)if(n.indexOf(t)>-1)return o[t]+=n;return o[ot]+=n}),r.generateOnDemand||n.forEach(f.THEMES,function(n){c[n.name]||"default"!==f.defaultTheme()&&"default"===n.name||k(n,n.name,r.nonce)}))}function k(n,t,i){var r=document.head,f=r?r.firstElementChild:null;c[t]||(u.forEach(function(t){for(var s,u,e=w(n,t,o[t]);e.length;)s=e.shift(),s&&(u=document.createElement("style"),u.setAttribute("md-theme-style",""),i&&u.setAttribute("nonce",i),u.appendChild(document.createTextNode(s)),r.insertBefore(u,f))}),c[n.name]=!0)}function it(n,i){if(!t[(n.colors[i]||{}).name])throw new Error("You supplied an invalid color palette for theme %1's %2 palette. Available palettes: %3".replace("%1",n.name).replace("%2",i).replace("%3",Object.keys(t).join(", ")));}function s(t){if(n.isArray(t)&&3==t.length)return t;if(/^rgb/.test(t))return t.replace(/(^\s*rgba?\(|\)\s*$)/g,"").split(",").map(function(n,t){return 3==t?parseFloat(n,10):parseInt(n,10)});if("#"==t.charAt(0)&&(t=t.substring(1)),/^([a-fA-F0-9]{3}){1,2}$/g.test(t)){var i=t.length/3,r=t.substr(0,i),u=t.substr(i,i),f=t.substr(2*i);return 1===i&&(r+=r,u+=u,f+=f),[parseInt(r,16),parseInt(u,16),parseInt(f,16)]}}function h(t,i){return t?(4==t.length&&(t=n.copy(t),i?t.pop():i=t.pop()),i&&("number"==typeof i||"string"==typeof i&&i.length)?"rgba("+t.join(",")+","+i+")":"rgb("+t.join(",")+")"):"rgb('0,0,0')"}a.$inject=["$mdThemingProvider"];y.$inject=["$mdTheming","$interpolate","$parse","$mdUtil","$q","$log"];p.$inject=["$mdTheming"];v.$inject=["$mdColorPalette","$$mdMetaProvider"];b.$inject=["$injector","$mdTheming"];n.module("material.core.theming",["material.core.theming.palette","material.core.meta"]).directive("mdTheme",y).directive("mdThemable",p).directive("mdThemesDisabled",tt).provider("$mdTheming",v).config(a).run(b);var t,c={},rt={name:"dark",1:"rgba(0,0,0,0.87)",2:"rgba(0,0,0,0.54)",3:"rgba(0,0,0,0.38)",4:"rgba(0,0,0,0.12)"},ut={name:"light",1:"rgba(255,255,255,1.0)",2:"rgba(255,255,255,0.7)",3:"rgba(255,255,255,0.5)",4:"rgba(255,255,255,0.12)"},ft="1px 1px 0px rgba(0,0,0,0.4), -1px -1px 0px rgba(0,0,0,0.4)",et="",d=s("rgba(0,0,0,0.87)"),g=s("rgba(255,255,255,0.87)"),nt=s("rgb(255,255,255)"),u=["primary","accent","warn","background"],ot="primary",f={accent:{"default":"A200","hue-1":"A100","hue-2":"A400","hue-3":"A700"},background:{"default":"50","hue-1":"A100","hue-2":"100","hue-3":"300"}},e={background:{"default":"A400","hue-1":"800","hue-2":"900","hue-3":"A200"}};u.forEach(function(n){var t={"default":"500","hue-1":"300","hue-2":"800","hue-3":"A100"};f[n]||(f[n]=t);e[n]||(e[n]=t)});var l=["50","100","200","300","400","500","600","700","800","900","A100","A200","A400","A700"],r={disableTheming:!1,generateOnDemand:!1,registeredStyles:[],nonce:null},o={}}(n.angular)}(),function(){function i(i,r,u,f,e){var o;return o={translate3d:function(n,t,i,r){function u(i){return e(n,{to:i||t,addClass:r.transitionOutClass,removeClass:r.transitionInClass,duration:r.duration}).start()}return e(n,{from:t,to:i,addClass:r.transitionInClass,removeClass:r.transitionOutClass,duration:r.duration}).start().then(function(){return u})},waitTransitionEnd:function(t,i){var e=3e3;return r(function(r){function o(n){n&&n.target!==t[0]||(n&&u.cancel(h),t.off(f.CSS.TRANSITIONEND,o),r())}function s(i){return i=i||n.getComputedStyle(t[0]),"0s"==i.transitionDuration||!i.transition&&!i.transitionProperty}i=i||{};s(i.cachedTransitionStyles)&&(e=0);var h=u(o,i.timeout||e);t.on(f.CSS.TRANSITIONEND,o)})},calculateTransformValues:function(n,t){function h(){var t=n?n.parent():null,i=t?t.parent():null;return i?o.clientRect(i):null}var i=t.element,f=t.bounds;if(i||f){var r=i?o.clientRect(i)||h():o.copyRect(f),u=o.copyRect(n[0].getBoundingClientRect()),e=o.centerPointFor(u),s=o.centerPointFor(r);return{centerX:s.x-e.x,centerY:s.y-e.y,scaleX:Math.round(100*Math.min(.5,r.width/u.width))/100,scaleY:Math.round(100*Math.min(.5,r.height/u.height))/100}}return{centerX:0,centerY:0,scaleX:.5,scaleY:.5}},calculateZoomToOrigin:function(n,r){var u=t.bind(null,i.supplant,"translate3d( {centerX}px, {centerY}px, 0 ) scale( {scaleX}, {scaleY} )");return u(o.calculateTransformValues(n,r))},calculateSlideToOrigin:function(n,r){var u=t.bind(null,i.supplant,"translate3d( {centerX}px, {centerY}px, 0 )");return u(o.calculateTransformValues(n,r))},toCss:function(n){function r(n,r,u){t.forEach(r.split(" "),function(n){i[n]=u})}var i={},u="left top right bottom width height x y min-width min-height max-width max-height";return t.forEach(n,function(n,e){if(!t.isUndefined(n))if(u.indexOf(e)>=0)i[e]=n+"px";else switch(e){case"transition":r(e,f.CSS.TRANSITION,n);break;case"transform":r(e,f.CSS.TRANSFORM,n);break;case"transformOrigin":r(e,f.CSS.TRANSFORM_ORIGIN,n);break;case"font-size":i["font-size"]=n}}),i},toTransformCss:function(n,i,r){var u={};return t.forEach(f.CSS.TRANSFORM.split(" "),function(t){u[t]=n}),i&&(r=r||"all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) !important",u.transition=r),u},copyRect:function(n,i){return n?(i=i||{},t.forEach("left top right bottom width height".split(" "),function(t){i[t]=Math.round(n[t])}),i.width=i.width||i.right-i.left,i.height=i.height||i.bottom-i.top,i):null},clientRect:function(n){var i=t.element(n)[0].getBoundingClientRect(),r=function(n){return n&&n.width>0&&n.height>0};return r(i)?o.copyRect(i):null},centerPointFor:function(n){return n?{x:Math.round(n.left+n.width/2),y:Math.round(n.top+n.height/2)}:{x:0,y:0}}}}t.module("material.core").factory("$$mdAnimate",["$q","$timeout","$mdConstant","$animateCss",function(n,t,r,u){return function(f){return i(f,n,t,r,u)}}])}(),function(){t.version.minor>=4?t.module("material.core.animate",[]):!function(){function r(n){return n.replace(/-[a-z]/g,function(n){return n.charAt(1).toUpperCase()})}var i=t.forEach,u=t.isDefined(document.documentElement.style.WebkitAppearance),n=u?"-webkit-":"",f=(u?"webkitTransitionEnd ":"")+"transitionend",e=(u?"webkitAnimationEnd ":"")+"animationend",o=["$document",function(n){return function(){return n[0].body.clientWidth+1}}],s=["$$rAF",function(n){return function(){var t=!1;return n(function(){t=!0}),function(i){t?i():n(i)}}}],h=["$q","$$rAFMutex",function(n,r){function u(n){this.setHost(n);this._doneCallbacks=[];this._runInAnimationFrame=r();this._state=0}var e=0,o=1,f=2;return u.prototype={setHost:function(n){this.host=n||{}},done:function(n){this._state===f?n():this._doneCallbacks.push(n)},progress:t.noop,getPromise:function(){if(!this.promise){var t=this;this.promise=n(function(n,i){t.done(function(t){t===!1?i():n()})})}return this.promise},then:function(n,t){return this.getPromise().then(n,t)},"catch":function(n){return this.getPromise()["catch"](n)},"finally":function(n){return this.getPromise()["finally"](n)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end();this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(n){var t=this;t._state===e&&(t._state=o,t._runInAnimationFrame(function(){t._resolve(n)}))},_resolve:function(n){this._state!==f&&(i(this._doneCallbacks,function(t){t(n)}),this._doneCallbacks.length=0,this._state=f)}},u.all=function(n,t){function u(i){r=r&&i;++f===n.length&&t(r)}var f=0,r=!0;i(n,function(n){n.done(u)})},u}];t.module("material.core.animate",[]).factory("$$forceReflow",o).factory("$$AnimateRunner",h).factory("$$rAFMutex",s).factory("$animateCss",["$window","$$rAF","$$AnimateRunner","$$forceReflow","$$jqLite","$timeout","$animate",function(t,o,s,h,c,l,a){function nt(u,o){var c=[],v=w(u),nt=v&&a.enabled(),ut=!1,ft=!1,et,h,y,p;return nt&&(o.transitionStyle&&c.push([n+"transition",o.transitionStyle]),o.keyframeStyle&&c.push([n+"animation",o.keyframeStyle]),o.delay&&c.push([n+"transition-delay",o.delay+"s"]),o.duration&&c.push([n+"transition-duration",o.duration+"s"]),ut=o.keyframeStyle||o.to&&(o.duration>0||o.transitionStyle),ft=!!o.addClass||!!o.removeClass,g(u,!0)),et=nt&&(ut||ft),k(u,o),p=!1,{close:t.close,start:function(){function t(){if(!p)return p=!0,h&&y&&u.off(h,y),b(u,o),rt(u,o),i(c,function(n){v.style[r(n[0])]=""}),a.complete(!0),a}var a=new s;return it(function(){var s,a;if((g(u,!1),!et)||(i(c,function(n){var t=n[0],i=n[1];v.style[r(t)]=i}),b(u,o),s=tt(u),0===s.duration))return t();a=[];o.easing&&(s.transitionDuration&&a.push([n+"transition-timing-function",o.easing]),s.animationDuration&&a.push([n+"animation-timing-function",o.easing]));o.delay&&s.animationDelay&&a.push([n+"animation-delay",o.delay+"s"]);o.duration&&s.animationDuration&&a.push([n+"animation-duration",o.duration+"s"]);i(a,function(n){var t=n[0],i=n[1];v.style[r(t)]=i;c.push(n)});var k=s.delay,p=1e3*k,w=s.duration,nt=1e3*w,it=Date.now();h=[];s.transitionDuration&&h.push(f);s.animationDuration&&h.push(e);h=h.join(" ");y=function(n){n.stopPropagation();var i=n.originalEvent||n,r=i.timeStamp||Date.now(),u=parseFloat(i.elapsedTime.toFixed(3));Math.max(r-it,0)>=p&&u>=w&&t()};u.on(h,y);d(u,o);l(t,p+1.5*nt,!1)}),a}}}function b(n,t){t.addClass&&(c.addClass(n,t.addClass),t.addClass=null);t.removeClass&&(c.removeClass(n,t.removeClass),t.removeClass=null)}function tt(n){function i(n){return u?"Webkit"+n.charAt(0).toUpperCase()+n.substr(1):n}var l=w(n),r=t.getComputedStyle(l),e=v(r[i("transitionDuration")]),f=v(r[i("animationDuration")]),o=v(r[i("transitionDelay")]),s=v(r[i("animationDelay")]),h,c;return f*=parseInt(r[i("animationIterationCount")],10)||1,h=Math.max(f,e),c=Math.max(s,o),{duration:h,delay:c,animationDuration:f,transitionDuration:e,animationDelay:s,transitionDelay:o}}function v(n){var t=0,r=(n||"").split(/\s*,\s*/);return i(r,function(n){"s"==n.charAt(n.length-1)&&(n=n.substring(0,n.length-1));n=parseFloat(n)||0;t=t?Math.max(n,t):n}),t}function it(n){y&&y();p.push(n);y=o(function(){y=null;for(var t=h(),n=0;n<p.length;n++)p[n](t);p.length=0})}function rt(n,t){k(n,t);d(n,t)}function k(n,t){t.from&&(n.css(t.from),t.from=null)}function d(n,t){t.to&&(n.css(t.to),t.to=null)}function w(n){for(var t=0;t<n.length;t++)if(1===n[t].nodeType)return n[t]}function g(t,i){var u=w(t),f=r(n+"transition-delay");u.style[f]=i?"-9999s":""}var y,p=[];return nt}])}()}(),function(){t.module("material.components.autocomplete",["material.core","material.components.icon","material.components.virtualRepeat"])}(),function(){t.module("material.components.backdrop",["material.core"]).directive("mdBackdrop",["$mdTheming","$mdUtil","$animate","$rootElement","$window","$log","$$rAF","$document",function(n,i,r,u,f,e,o,s){function h(h,l){function v(){var n=parseInt(a.height,10)+Math.abs(parseInt(a.top,10));l.css("height",n+"px")}r.pin&&r.pin(l,u);var a;o(function(){var u,r,o;(a=f.getComputedStyle(s[0].body),"fixed"===a.position)&&(u=i.debounce(function(){a=f.getComputedStyle(s[0].body);v()},60,null,!1),v(),t.element(f).on("resize",u),h.$on("$destroy",function(){t.element(f).off("resize",u)}));r=l.parent();r.length&&("BODY"===r[0].nodeName&&l.css("position","fixed"),o=f.getComputedStyle(r[0]),"static"===o.position&&e.warn(c),n.inherit(l,r))})}var c="<md-backdrop> may not work properly in a scrolled, static-positioned parent container.";return{restrict:"E",link:h}}])}(),function(){function n(n){return{restrict:"E",link:function(t,i){i.addClass("_md");t.$on("$destroy",function(){n.destroy()})}}}function i(n){function i(n,i,f,e,o,s,h,c){function a(r,u,h){var v,a;return(u=f.extractElementByName(u,"md-bottom-sheet"),u.attr("tabindex","-1"),u.hasClass("ng-cloak"))&&(v="$mdBottomSheet: using `<md-bottom-sheet ng-cloak >` will affect the bottom-sheet opening animations.",c.warn(v,u[0])),h.disableBackdrop||(l=f.createBackdrop(r,"md-bottom-sheet-backdrop md-opaque"),l[0].tabIndex=-1,h.clickOutsideToClose&&l.on("click",function(){f.nextTick(o.cancel,!0)}),e.inherit(l,h.parent),n.enter(l,h.parent,null)),a=new y(u,h.parent),h.bottomSheet=a,e.inherit(a.element,h.parent),h.disableParentScroll&&(h.restoreScroll=f.disableScrollAround(a.element,h.parent)),n.enter(a.element,h.parent,l).then(function(){var n=f.findFocusTarget(u)||t.element(u[0].querySelector("button")||u[0].querySelector("a")||u[0].querySelector(f.prefixer("ng-click",!0)))||l;h.escapeToClose&&(h.rootElementKeyupCallback=function(n){n.keyCode===i.KEY_CODE.ESCAPE&&f.nextTick(o.cancel,!0)},s.on("keyup",h.rootElementKeyupCallback),n&&n.focus())})}function v(t,i,r){var u=r.bottomSheet;return r.disableBackdrop||n.leave(l),n.leave(u.element).then(function(){r.disableParentScroll&&(r.restoreScroll(),delete r.restoreScroll);u.cleanup()})}function y(n,t){function e(){n.css(i.CSS.TRANSITION_DURATION,"0ms")}function s(t){var u=t.pointer.distanceY;u<5&&(u=Math.max(-r,u/2));n.css(i.CSS.TRANSFORM,"translate3d(0,"+(r+u)+"px,0)")}function c(t){if(t.pointer.distanceY>0&&(t.pointer.distanceY>20||Math.abs(t.pointer.velocityY)>u)){var r=n.prop("offsetHeight")-t.pointer.distanceY,e=Math.min(r/t.pointer.velocityY*.75,500);n.css(i.CSS.TRANSITION_DURATION,e+"ms");f.nextTick(o.cancel,!0)}else n.css(i.CSS.TRANSITION_DURATION,""),n.css(i.CSS.TRANSFORM,"")}var l=h.register(t,"drag",{horizontal:!1});return t.on("$md.dragstart",e).on("$md.drag",s).on("$md.dragend",c),{element:n,cleanup:function(){l();t.off("$md.dragstart",e);t.off("$md.drag",s);t.off("$md.dragend",c)}}}var l;return{themable:!0,onShow:a,onRemove:v,disableBackdrop:!1,escapeToClose:!0,clickOutsideToClose:!0,disableParentScroll:!0}}i.$inject=["$animate","$mdConstant","$mdUtil","$mdTheming","$mdBottomSheet","$rootElement","$mdGesture","$log"];var u=.5,r=80;return n("$mdBottomSheet").setDefaults({methods:["disableParentScroll","escapeToClose","clickOutsideToClose"],options:i})}n.$inject=["$mdBottomSheet"];i.$inject=["$$interimElementProvider"];t.module("material.components.bottomSheet",["material.core","material.components.backdrop"]).directive("mdBottomSheet",n).provider("$mdBottomSheet",i)}(),function(){function n(n){return{restrict:"E",link:function(t,i){n(i)}}}function i(n,i,r,u){function f(n){return t.isDefined(n.href)||t.isDefined(n.ngHref)||t.isDefined(n.ngLink)||t.isDefined(n.uiSref)}function e(n,t){if(f(t))return'<a class="md-button" ng-transclude><\/a>';var i="undefined"==typeof t.type?"button":t.type;return'<button class="md-button" type="'+i+'" ng-transclude><\/button>'}function o(e,o,s){i(o);n.attach(e,o);r.expectWithoutText(o,"aria-label");f(s)&&t.isDefined(s.ngDisabled)&&e.$watch(s.ngDisabled,function(n){o.attr("tabindex",n?-1:0)});o.on("click",function(n){s.disabled===!0&&(n.preventDefault(),n.stopImmediatePropagation())});o.hasClass("md-no-focus")||(o.on("focus",function(){u.isUserInvoked()&&"keyboard"!==u.getLastInteractionType()||o.addClass("md-focused")}),o.on("blur",function(){o.removeClass("md-focused")}))}return{restrict:"EA",replace:!0,transclude:!0,template:e,link:o}}i.$inject=["$mdButtonInkRipple","$mdTheming","$mdAria","$mdInteraction"];n.$inject=["$mdTheming"];t.module("material.components.button",["material.core"]).directive("mdButton",i).directive("a",n)}(),function(){function n(n){return{restrict:"E",link:function(t,i){i.addClass("_md");n(i)}}}n.$inject=["$mdTheming"];t.module("material.components.card",["material.core"]).directive("mdCard",n)}(),function(){function n(n,i,r,u,f,e){function o(o,s){function h(o,s,h,c){function k(n,t,i){h[n]&&o.$watch(h[n],function(n){i[n]&&s.attr(t,i[n])})}function d(n){var t=n.which||n.keyCode;t!==r.KEY_CODE.SPACE&&t!==r.KEY_CODE.ENTER||(n.preventDefault(),s.addClass("md-focused"),y(n))}function y(n){s[0].hasAttribute("disabled")||o.skipToggle||o.$apply(function(){var t=h.ngChecked&&h.ngClick?h.checked:!l.$viewValue;l.$setViewValue(t,n&&n.type);l.$render()})}function g(){s.toggleClass("md-checked",!!l.$viewValue&&!a)}function p(n){a=n!==!1;a&&s.attr("aria-checked","mixed");s.toggleClass("md-indeterminate",a)}var a,v=c[0],l=c[1]||f.fakeNgModel(),w=c[2],b;v&&(b=v.isErrorGetter||function(){return l.$invalid&&(l.$touched||w&&w.$submitted)},v.input=s,o.$watch(b,v.setInvalid));u(s);s.children().on("focus",function(){s.focus()});f.parseAttributeBoolean(h.mdIndeterminate)&&(p(),o.$watch(h.mdIndeterminate,p));h.ngChecked&&o.$watch(o.$eval.bind(o,h.ngChecked),function(n){l.$setViewValue(n);l.$render()});k("ngDisabled","tabindex",{"true":"-1","false":h.tabindex});i.expectWithText(s,"aria-label");n.link.pre(o,{on:t.noop,0:{}},h,[l]);s.on("click",y).on("keypress",d).on("focus",function(){"keyboard"===e.getLastInteractionType()&&s.addClass("md-focused")}).on("blur",function(){s.removeClass("md-focused")});l.$render=g}return s.$set("tabindex",s.tabindex||"0"),s.$set("type","checkbox"),s.$set("role",s.type),{pre:function(n,t){t.on("click",function(n){this.hasAttribute("disabled")&&n.stopImmediatePropagation()})},post:h}}return n=n[0],{restrict:"E",transclude:!0,require:["^?mdInputContainer","?ngModel","?^form"],priority:r.BEFORE_NG_ARIA,template:'<div class="md-container" md-ink-ripple md-ink-ripple-checkbox><div class="md-icon"><\/div><\/div><div ng-transclude class="md-label"><\/div>',compile:o}}n.$inject=["inputDirective","$mdAria","$mdConstant","$mdTheming","$mdUtil","$mdInteraction"];t.module("material.components.checkbox",["material.core"]).directive("mdCheckbox",n)}(),function(){t.module("material.components.chips",["material.core","material.components.autocomplete"])}(),function(){!function(){function i(i,r,u){function o(n,t){try{t&&n.css(h(t))}catch(i){u.error(i.message)}}function s(n){var t=e(n);return f(t)}function f(n,t){t=t||!1;var u=i.PALETTES[n.palette][n.hue];return u=t?u.contrast:u.value,r.supplant("rgba({0}, {1}, {2}, {3})",[u[0],u[1],u[2],u[3]||n.opacity])}function h(n){var i={},r=n.hasOwnProperty("color");return t.forEach(n,function(n,t){var u=e(n),o=t.indexOf("background")>-1;i[t]=f(u);o&&!r&&(i.color=f(u,!0))}),i}function c(n){return t.isDefined(i.THEMES[n.split("-")[0]])}function e(n){var r=n.split("-"),f=t.isDefined(i.THEMES[r[0]]),u=f?r.splice(0,1)[0]:i.defaultTheme();return{theme:u,palette:l(r,u),hue:a(r,u),opacity:r[2]||1}}function l(t,u){var o=t.length>1&&n.indexOf(t[1])!==-1,f=t[0].replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),e;if(o&&(f=t[0]+"-"+t.splice(1,1)),n.indexOf(f)===-1){if(e=i.THEMES[u].colors[f],!e)throw new Error(r.supplant("mdColors: couldn't find '{palette}' in the palettes.",{palette:f}));f=e.name}return f}function a(n,t){var u=i.THEMES[t].colors,f;if("hue"===n[1]){if(f=parseInt(n.splice(2,1)[0],10),f<1||f>3)throw new Error(r.supplant("mdColors: 'hue-{hueNumber}' is not a valid hue, can be only 'hue-1', 'hue-2' and 'hue-3'",{hueNumber:f}));if(n[1]="hue-"+f,!(n[0]in u))throw new Error(r.supplant("mdColors: 'hue-x' can only be used with [{availableThemes}], but was used with '{usedTheme}'",{availableThemes:Object.keys(u).join(", "),usedTheme:n[0]}));return u[n[0]].hues[n[1]]}return n[1]||u[n[0]in u?n[0]:"primary"].hues["default"]}return n=n||Object.keys(i.PALETTES),{applyThemeColors:o,getThemeColor:s,hasTheme:c}}function r(n,i,r,f){return{restrict:"A",require:["^?mdTheme"],compile:function(e,o){function s(){var n=o.mdColors,r=n.indexOf("::")>-1,e=!!r||u.test(o.mdColors),f;return o.mdColors=n.replace("::",""),f=t.isDefined(o.mdColorsWatch),!r&&!e&&(!f||i.parseAttributeBoolean(o.mdColorsWatch))}var h=s();return function(i,u,e,o){var s=o[0],c={},l=function(t){"string"!=typeof t&&(t="");e.mdColors||(e.mdColors="{}");var r=f(e.mdColors)(i);return s&&Object.keys(r).forEach(function(i){var u=r[i];n.hasTheme(u)||(r[i]=(t||s.$mdTheme)+"-"+u)}),v(r),r},v=function(n){if(!t.equals(n,c)){var i=Object.keys(c);c.background&&!i.color&&i.push("color");i.forEach(function(n){u.css(n,"")})}c=n},a=t.noop;s&&(a=s.registerChanges(function(t){n.applyThemeColors(u,l(t))}));i.$on("$destroy",function(){a()});try{h?i.$watch(l,t.bind(this,n.applyThemeColors,u),!0):n.applyThemeColors(u,l())}catch(y){r.error(y.message)}}}}}r.$inject=["$mdColors","$mdUtil","$log","$parse"];i.$inject=["$mdTheming","$mdUtil","$log"];var u=/^{((\s|,)*?["'a-zA-Z-]+?\s*?:\s*?('|")[a-zA-Z0-9-.]*('|"))+\s*}$/,n=null;t.module("material.components.colors",["material.core"]).directive("mdColors",r).service("$mdColors",i)}()}(),function(){function n(n){function t(n,t){this.$scope=n;this.$element=t}return{restrict:"E",controller:["$scope","$element",t],link:function(t,r){r.addClass("_md");n(r);t.$broadcast("$mdContentLoaded",r);i(r[0])}}}function i(n){t.element(n).on("$md.pressdown",function(t){"t"===t.pointer.type&&(t.$materialScrollFixed||(t.$materialScrollFixed=!0,0===n.scrollTop?n.scrollTop=1:n.scrollHeight===n.scrollTop+n.offsetHeight&&(n.scrollTop-=1)))})}n.$inject=["$mdTheming"];t.module("material.components.content",["material.core"]).directive("mdContent",n)}(),function(){t.module("material.components.datepicker",["material.core","material.components.icon","material.components.virtualRepeat"])}(),function(){function n(n,i,r){return{restrict:"E",link:function(u,f){f.addClass("_md");i(f);n(function(){function i(){f.toggleClass("md-content-overflow",n.scrollHeight>n.clientHeight)}var e,n=f[0].querySelector("md-dialog-content");n&&(e=n.getElementsByTagName("img"),i(),t.element(e).on("load",i));u.$on("$destroy",function(){r.destroy(f)})})}}}function r(n){function f(){return{template:'<md-dialog md-theme="{{ dialog.theme || dialog.defaultTheme }}" aria-label="{{ dialog.ariaLabel }}" ng-class="dialog.css">  <md-dialog-content class="md-dialog-content" role="document" tabIndex="-1">    <h2 class="md-title">{{ dialog.title }}<\/h2>    <div ng-if="::dialog.mdHtmlContent" class="md-dialog-content-body"         ng-bind-html="::dialog.mdHtmlContent"><\/div>    <div ng-if="::!dialog.mdHtmlContent" class="md-dialog-content-body">      <p>{{::dialog.mdTextContent}}<\/p>    <\/div>    <md-input-container md-no-float ng-if="::dialog.$type == \'prompt\'" class="md-prompt-input-container">      <input ng-keypress="dialog.keypress($event)" md-autofocus ng-model="dialog.result"              placeholder="{{::dialog.placeholder}}" ng-required="dialog.required">    <\/md-input-container>  <\/md-dialog-content>  <md-dialog-actions>    <md-button ng-if="dialog.$type === \'confirm\' || dialog.$type === \'prompt\'"               ng-click="dialog.abort()" class="md-primary md-cancel-button">      {{ dialog.cancel }}    <\/md-button>    <md-button ng-click="dialog.hide()" class="md-primary md-confirm-button" md-autofocus="dialog.$type===\'alert\'"               ng-disabled="dialog.required && !dialog.result">      {{ dialog.ok }}    <\/md-button>  <\/md-dialog-actions><\/md-dialog>'.replace(/\s\s+/g,""),controller:e,controllerAs:"dialog",bindToController:!0}}function e(n,t){this.$onInit=function(){var i="prompt"==this.$type;i&&this.initialValue&&(this.result=this.initialValue);this.hide=function(){n.hide(!i||this.result)};this.abort=function(){n.cancel()};this.keypress=function(i){i.keyCode===t.KEY_CODE.ENTER&&n.hide(this.result)}}}function o(n,f,e,o,s,h,c,l,a,v,y,p,w){function k(n){n.defaultTheme=y.defaultTheme();tt(n)}function d(n,t,i,r){if(r){var u=r.htmlContent||i.htmlContent||"",f=r.textContent||i.textContent||r.content||i.content||"";if(u&&!v.has("$sanitize"))throw Error("The ngSanitize module must be loaded in order to use htmlContent.");if(u&&f)throw Error("md-dialog cannot have both `htmlContent` and `textContent`");r.mdHtmlContent=u;r.mdTextContent=f}}function g(n,i,r){function o(){i[0].querySelector(".md-actions")&&a.warn("Using a class of md-actions is deprecated, please use <md-dialog-actions>.")}function s(){function n(){return i[0].querySelector(".dialog-close, md-dialog-actions button:last-child")}if(r.focusOnOpen){var t=e.findFocusTarget(i)||n()||u;t.focus()}}var u,f;return t.element(h[0].body).addClass("md-dialog-is-showing"),u=i.find("md-dialog"),u.hasClass("ng-cloak")&&(f="$mdDialog: using `<md-dialog ng-cloak>` will affect the dialog opening animations.",a.warn(f,i[0])),it(r),ft(u,r),ut(n,i,r),rt(i,r),ot(i,r).then(function(){et(i,r);o();s()})}function nt(n,i,f){function o(){return st(i,f)}function e(){t.element(h[0].body).removeClass("md-dialog-is-showing");f.contentElement&&f.reverseContainerStretch();f.cleanupElement();f.$destroy||"keyboard"!==f.originInteraction||f.origin.focus()}return f.deactivateListeners(),f.unlockScreenReader(),f.hideBackdrop(f.$destroy),r&&r.parentNode&&r.parentNode.removeChild(r),u&&u.parentNode&&u.parentNode.removeChild(u),f.$destroy?e():o().then(e)}function tt(n){var r,i,u,f;n.targetEvent&&n.targetEvent.target&&(r=t.element(n.targetEvent.target));i=r&&r.controller("mdTheme");i&&(n.themeWatch=i.$shouldWatch,u=n.theme||i.$mdTheme,u&&(n.scope.theme=u),f=i.registerChanges(function(t){n.scope.theme=t;n.themeWatch||f()}))}function it(n){function r(n,r){var u=t.element(n||{}),e,f;if(u&&u.length)return e={top:0,left:0,height:0,width:0},f=t.isFunction(u[0].getBoundingClientRect),t.extend(r||{},{element:f?u:i,bounds:f?u[0].getBoundingClientRect():t.extend({},e,u[0]),focus:t.bind(u,u.focus)})}function u(n,i){return t.isString(n)&&(n=h[0].querySelector(n)),t.element(n||i)}n.origin=t.extend({element:null,bounds:null,focus:t.noop},n.origin||{});n.parent=u(n.parent,l);n.closeTo=r(u(n.closeTo));n.openFrom=r(u(n.openFrom));n.targetEvent&&(n.origin=r(n.targetEvent.target,n.origin),n.originInteraction=w.getLastInteractionType())}function rt(i,r){var l=t.element(c),a=e.debounce(function(){b(i,r)},60),s=[],v=function(){var t="alert"==r.$type?n.hide:n.cancel;e.nextTick(t,!0)},h,f;if(r.escapeToClose&&(h=r.parent,f=function(n){n.keyCode===o.KEY_CODE.ESCAPE&&(n.stopPropagation(),n.preventDefault(),v())},i.on("keydown",f),h.on("keydown",f),s.push(function(){i.off("keydown",f);h.off("keydown",f)})),l.on("resize",a),s.push(function(){l.off("resize",a)}),r.clickOutsideToClose){var y,u=i,p=function(n){y=n.target},w=function(n){y===u[0]&&n.target===u[0]&&(n.stopPropagation(),n.preventDefault(),v())};u.on("mousedown",p);u.on("mouseup",w);s.push(function(){u.off("mousedown",p);u.off("mouseup",w)})}r.deactivateListeners=function(){s.forEach(function(n){n()});r.deactivateListeners=null}}function ut(n,t,i){i.disableParentScroll&&(i.restoreScroll=e.disableScrollAround(t,i.parent));i.hasBackdrop&&(i.backdrop=e.createBackdrop(n,"md-dialog-backdrop md-opaque"),s.enter(i.backdrop,i.parent));i.hideBackdrop=function(n){i.backdrop&&(n?i.backdrop.remove():s.leave(i.backdrop));i.disableParentScroll&&(i.restoreScroll&&i.restoreScroll(),delete i.restoreScroll);i.hideBackdrop=null}}function ft(n,t){var c="alert"===t.$type?"alertdialog":"dialog",i=n.find("md-dialog-content"),o=n.attr("id"),s="dialogContent_"+(o||e.nextUid()),h;n.attr({role:c,tabIndex:"-1"});0===i.length&&(i=n,o&&(s=o));i.attr("id",s);n.attr("aria-describedby",s);t.ariaLabel?f.expect(n,"aria-label",t.ariaLabel):f.expectAsync(n,"aria-label",function(){if(t.title)return t.title;var n=i.text().split(/\s+/);return n.length>3&&(n=n.slice(0,3).concat("...")),n.join(" ")});r=document.createElement("div");r.classList.add("md-dialog-focus-trap");r.tabIndex=0;u=r.cloneNode(!1);h=function(){n.focus()};r.addEventListener("focus",h);u.addEventListener("focus",h);n[0].parentNode.insertBefore(r,n[0]);n.after(u)}function et(n,t){function i(n){for(;n.parentNode;){if(n===document.body)return;for(var u=n.parentNode.children,t=0;t<u.length;t++)n===u[t]||ht(u[t],["SCRIPT","STYLE"])||u[t].hasAttribute("aria-live")||u[t].setAttribute("aria-hidden",r);i(n=n.parentNode)}}var r=!0;i(n[0]);t.unlockScreenReader=function(){r=!1;i(n[0]);t.unlockScreenReader=null}}function b(n,t){var u="fixed"==c.getComputedStyle(h[0].body).position,i=t.backdrop?c.getComputedStyle(t.backdrop[0]):null,r=i?Math.min(h[0].body.clientHeight,Math.ceil(Math.abs(parseInt(i.height,10)))):0,f={top:n.css("top"),height:n.css("height")},e=Math.abs(t.parent[0].getBoundingClientRect().top);return n.css({top:(u?e:0)+"px",height:r?r+"px":"100%"}),function(){n.css(f)}}function ot(n,t){t.parent.append(n);t.reverseContainerStretch=b(n,t);var r=n.find("md-dialog"),i=e.dom.animator,o=i.calculateZoomToOrigin,f={transitionInClass:"md-transition-in",transitionOutClass:"md-transition-out"},s=i.toTransformCss(o(r,t.openFrom||t.origin)),u=i.toTransformCss("");return r.toggleClass("md-dialog-fullscreen",!!t.fullscreen),i.translate3d(r,s,u,f).then(function(n){return t.reverseAnimate=function(){return delete t.reverseAnimate,t.closeTo?(f={transitionInClass:"md-transition-out",transitionOutClass:"md-transition-in"},s=u,u=i.toTransformCss(o(r,t.closeTo)),i.translate3d(r,s,u,f)):n(u=i.toTransformCss(o(r,t.origin)))},t.clearAnimate=function(){return delete t.clearAnimate,r.removeClass([f.transitionOutClass,f.transitionInClass].join(" ")),i.translate3d(r,u,i.toTransformCss(""),{})},!0})}function st(n,t){return t.reverseAnimate().then(function(){t.contentElement&&t.clearAnimate()})}function ht(n,t){if(t.indexOf(n.nodeName)!==-1)return!0}return{hasBackdrop:!0,isolateScope:!0,onCompiling:k,onShow:g,onShowing:d,onRemove:nt,clickOutsideToClose:!1,escapeToClose:!0,targetEvent:null,closeTo:null,openFrom:null,focusOnOpen:!0,disableParentScroll:!0,autoWrap:!0,fullscreen:!1,transformTemplate:function(n,t){function i(n){return t.autoWrap&&!/<\/md-dialog>/g.test(n)?"<md-dialog>"+(n||"")+"<\/md-dialog>":n||""}var r=p.startSymbol(),u=p.endSymbol(),f=r+(t.themeWatch?"":"::")+"theme"+u;return'<div class="md-dialog-container" tabindex="-1" md-theme="'+f+'">'+i(n)+"<\/div>"}}}e.$inject=["$mdDialog","$mdConstant"];o.$inject=["$mdDialog","$mdAria","$mdUtil","$mdConstant","$animate","$document","$window","$rootElement","$log","$injector","$mdTheming","$interpolate","$mdInteraction"];var r,u;return n("$mdDialog").setDefaults({methods:["disableParentScroll","hasBackdrop","clickOutsideToClose","escapeToClose","targetEvent","closeTo","openFrom","parent","fullscreen","multiple"],options:o}).addPreset("alert",{methods:["title","htmlContent","textContent","content","ariaLabel","ok","theme","css"],options:f}).addPreset("confirm",{methods:["title","htmlContent","textContent","content","ariaLabel","ok","cancel","theme","css"],options:f}).addPreset("prompt",{methods:["title","htmlContent","textContent","initialValue","content","placeholder","ariaLabel","ok","cancel","theme","css","required"],options:f})}n.$inject=["$$rAF","$mdTheming","$mdDialog"];r.$inject=["$$interimElementProvider"];t.module("material.components.dialog",["material.core","material.components.backdrop"]).directive("mdDialog",n).provider("$mdDialog",r)}(),function(){function n(n){return{restrict:"E",link:n}}n.$inject=["$mdTheming"];t.module("material.components.divider",["material.core"]).directive("mdDivider",n)}(),function(){!function(){function n(n){return{restrict:"E",require:["^?mdFabSpeedDial","^?mdFabToolbar"],compile:function(t){var i=t.children(),r=n.prefixer().hasAttribute(i,"ng-repeat");r?i.addClass("md-fab-action-item"):i.wrap('<div class="md-fab-action-item">')}}}n.$inject=["$mdUtil"];t.module("material.components.fabActions",["material.core"]).directive("mdFabActions",n)}()}(),function(){!function(){function n(n,i,r,u,f,e){function g(){o.direction=o.direction||"down";o.isOpen=o.isOpen||!1;l();i.addClass("md-animations-waiting")}function nt(){var r=["click","focusin","focusout"];t.forEach(r,function(n){i.on(n,a)});n.$on("$destroy",function(){t.forEach(r,function(n){i.off(n,a)});y()})}function a(n){"click"==n.type&&ct(n);"focusout"!=n.type||s||(s=e(function(){o.close()},100,!1));"focusin"==n.type&&s&&(e.cancel(s),s=null)}function l(){o.currentActionIndex=-1}function tt(){n.$watch("vm.direction",function(n,t){r.removeClass(i,"md-"+t);r.addClass(i,"md-"+n);l()});var t,u;n.$watch("vm.isOpen",function(n){l();t&&u||(t=lt(),u=k());n?it():y();var f=n?"md-is-open":"",e=n?"":"md-is-open";t.attr("aria-haspopup",!0);t.attr("aria-expanded",n);u.attr("aria-hidden",!n);r.setClass(i,f,e)})}function v(){i[0].scrollHeight>0?r.addClass(i,"_md-animations-ready").then(function(){i.removeClass("md-animations-waiting")}):d<10&&(e(v,100),d+=1)}function it(){i.on("keydown",w);u.nextTick(function(){t.element(document).on("click touchend",p)})}function y(){i.off("keydown",w);t.element(document).off("click touchend",p)}function p(n){if(n.target){var t=u.getClosest(n.target,"md-fab-trigger"),i=u.getClosest(n.target,"md-fab-actions");t||i||o.close()}}function w(n){switch(n.which){case f.KEY_CODE.ESCAPE:return o.close(),n.preventDefault(),!1;case f.KEY_CODE.LEFT_ARROW:return ut(n),!1;case f.KEY_CODE.UP_ARROW:return ft(n),!1;case f.KEY_CODE.RIGHT_ARROW:return et(n),!1;case f.KEY_CODE.DOWN_ARROW:return ot(n),!1}}function h(n){b(n,-1)}function c(n){b(n,1)}function b(n,i){var u=rt(),r;o.currentActionIndex=o.currentActionIndex+i;o.currentActionIndex=Math.min(u.length-1,o.currentActionIndex);o.currentActionIndex=Math.max(0,o.currentActionIndex);r=t.element(u[o.currentActionIndex]).children()[0];t.element(r).attr("tabindex",0);r.focus();n.preventDefault();n.stopImmediatePropagation()}function rt(){var n=k()[0].querySelectorAll(".md-fab-action-item");return t.forEach(n,function(n){t.element(t.element(n).children()[0]).attr("tabindex",-1)}),n}function ut(n){"left"===o.direction?c(n):h(n)}function ft(n){"down"===o.direction?h(n):c(n)}function et(n){"left"===o.direction?h(n):c(n)}function ot(n){"up"===o.direction?h(n):c(n)}function st(n){return u.getClosest(n,"md-fab-trigger")}function ht(n){return u.getClosest(n,"md-fab-actions")}function ct(n){st(n.target)&&o.toggle();ht(n.target)&&o.close()}function lt(){return i.find("md-fab-trigger")}function k(){return i.find("md-fab-actions")}var o=this,d=0,s;o.open=function(){n.$evalAsync("vm.isOpen = true")};o.close=function(){n.$evalAsync("vm.isOpen = false");i.find("md-fab-trigger")[0].focus()};o.toggle=function(){n.$evalAsync("vm.isOpen = !vm.isOpen")};o.$onInit=function(){g();nt();tt();v()};1===t.version.major&&t.version.minor<=4&&this.$onInit()}n.$inject=["$scope","$element","$animate","$mdUtil","$mdConstant","$timeout"];t.module("material.components.fabShared",["material.core"]).controller("MdFabController",n)}()}(),function(){!function(){function f(){function n(n,t){t.prepend('<div class="_md-css-variables"><\/div>')}return{restrict:"E",scope:{direction:"@?mdDirection",isOpen:"=?mdOpen"},bindToController:!0,controller:"MdFabController",controllerAs:"vm",link:n}}function i(i){function r(n){i(n,u,!1)}function f(i){if(!i.hasClass("md-animations-waiting")||i.hasClass("_md-animations-ready")){var u=i[0],e=i.controller("mdFabSpeedDial"),r=u.querySelectorAll(".md-fab-action-item"),f=u.querySelector("md-fab-trigger"),s=u.querySelector("._md-css-variables"),o=parseInt(n.getComputedStyle(s).zIndex);t.forEach(r,function(n,t){var i=n.style;i.transform=i.webkitTransform="";i.transitionDelay="";i.opacity=1;i.zIndex=r.length-t+o});f.style.zIndex=o+r.length+1;e.isOpen||t.forEach(r,function(n,t){var i,r,u=n.style,o=(f.clientHeight-n.clientHeight)/2,s=(f.clientWidth-n.clientWidth)/2,h;switch(e.direction){case"up":i=n.scrollHeight*(t+1)+o;r="Y";break;case"down":i=-(n.scrollHeight*(t+1)+o);r="Y";break;case"left":i=n.scrollWidth*(t+1)+s;r="X";break;case"right":i=-(n.scrollWidth*(t+1)+s);r="X"}h="translate"+r+"("+i+"px)";u.transform=u.webkitTransform=h})}}return{addClass:function(n,t,i){n.hasClass("md-fling")?(f(n),r(i)):i()},removeClass:function(n,t,i){f(n);r(i)}}}function r(i){function r(n){i(n,u,!1)}function f(i){var f=i[0],r=i.controller("mdFabSpeedDial"),u=f.querySelectorAll(".md-fab-action-item"),o=f.querySelector("._md-css-variables"),s=parseInt(n.getComputedStyle(o).zIndex);t.forEach(u,function(n,t){var i=n.style,f=t*e;i.opacity=r.isOpen?1:0;i.transform=i.webkitTransform=r.isOpen?"scale(1)":"scale(0)";i.transitionDelay=(r.isOpen?f:u.length-f)+"ms";i.zIndex=u.length-t+s})}var e=65;return{addClass:function(n,t,i){f(n);r(i)},removeClass:function(n,t,i){f(n);r(i)}}}i.$inject=["$timeout"];r.$inject=["$timeout"];var u=300;t.module("material.components.fabSpeedDial",["material.core","material.components.fabShared","material.components.fabActions"]).directive("mdFabSpeedDial",f).animation(".md-fling",i).animation(".md-scale",r).service("mdFabSpeedDialFlingAnimation",i).service("mdFabSpeedDialScaleAnimation",r)}()}(),function(){!function(){function r(){function n(n,t){t.addClass("md-fab-toolbar");t.find("md-fab-trigger").find("button").prepend('<div class="md-fab-toolbar-background"><\/div>')}return{restrict:"E",transclude:!0,template:'<div class="md-fab-toolbar-wrapper">  <div class="md-fab-toolbar-content" ng-transclude><\/div><\/div>',scope:{direction:"@?mdDirection",isOpen:"=?mdOpen"},bindToController:!0,controller:"MdFabController",controllerAs:"vm",link:n}}function i(){function i(i,r){if(r){var f=i[0],l=i.controller("mdFabToolbar"),u=f.querySelector(".md-fab-toolbar-background"),e=f.querySelector("md-fab-trigger button"),h=f.querySelector("md-toolbar"),o=f.querySelector("md-fab-trigger button md-icon"),s=i.find("md-fab-actions").children();if(e&&u){var a=n.getComputedStyle(e).getPropertyValue("background-color"),c=f.offsetWidth,v=(f.offsetHeight,2*(c/e.offsetWidth));u.style.backgroundColor=a;u.style.borderRadius=c+"px";l.isOpen?(h.style.pointerEvents="inherit",u.style.width=e.offsetWidth+"px",u.style.height=e.offsetHeight+"px",u.style.transform="scale("+v+")",u.style.transitionDelay="0ms",o&&(o.style.transitionDelay=".3s"),t.forEach(s,function(n,t){n.style.transitionDelay=25*(s.length-t)+"ms"})):(h.style.pointerEvents="none",u.style.transform="scale(1)",u.style.top="0",i.hasClass("md-right")&&(u.style.left="0",u.style.right=null),i.hasClass("md-left")&&(u.style.right="0",u.style.left=null),u.style.transitionDelay="200ms",o&&(o.style.transitionDelay="0ms"),t.forEach(s,function(n,t){n.style.transitionDelay=200+25*t+"ms"}))}}}return{addClass:function(n,t,r){i(n,t,r);r()},removeClass:function(n,t,r){i(n,t,r);r()}}}t.module("material.components.fabToolbar",["material.core","material.components.fabShared","material.components.fabActions"]).directive("mdFabToolbar",r).animation(".md-fab-toolbar",i).service("mdFabToolbarAnimation",i)}()}(),function(){function i(i,r,u,f){function e(n,e,o,s){function k(){for(var n in r.MEDIA)f(n),f.getQuery(r.MEDIA[n]).addListener(v);return f.watchResponsiveAttributes(["md-cols","md-row-height","md-gutter"],o,g)}function d(){s.layoutDelegate=t.noop;w();for(var n in r.MEDIA)f.getQuery(r.MEDIA[n]).removeListener(v)}function g(n){null==n?s.invalidateLayout():f(n)&&s.invalidateLayout()}function nt(i){var f=rt(),r={tileSpans:ut(f),colCount:ft(),rowMode:y(),rowHeight:ot(),gutter:et()},o;(i||!t.equals(r,b))&&(o=u(r.colCount,r.tileSpans,f).map(function(n,i){return{grid:{element:e,style:it(r.colCount,i,r.gutter,r.rowMode,r.rowHeight)},tiles:n.map(function(n,u){return{element:t.element(f[u]),style:tt(n.position,n.spans,r.colCount,i,r.gutter,r.rowMode,r.rowHeight)}})}}).reflow().performance(),n.mdOnLayout({$event:{performance:o}}),b=r)}function h(n){return st+n+ht}function tt(n,t,i,r,u,f,e){var y=100/i,p=(i-1)/i,h=a({share:y,gutterShare:p,gutter:u}),w="rtl"!=document.dir&&"rtl"!=document.body.dir,o=w?{left:l({unit:h,offset:n.col,gutter:u}),width:c({unit:h,span:t.col,gutter:u}),paddingTop:"",marginTop:"",top:"",height:""}:{right:l({unit:h,offset:n.col,gutter:u}),width:c({unit:h,span:t.col,gutter:u}),paddingTop:"",marginTop:"",top:"",height:""},v,s;switch(f){case"fixed":o.top=l({unit:e,offset:n.row,gutter:u});o.height=c({unit:e,span:t.row,gutter:u});break;case"ratio":v=y/e;s=a({share:v,gutterShare:p,gutter:u});o.paddingTop=c({unit:s,span:t.row,gutter:u});o.marginTop=l({unit:s,offset:n.row,gutter:u});break;case"fit":var b=(r-1)/r,v=100/r,s=a({share:v,gutterShare:b,gutter:u});o.top=l({unit:s,offset:n.row,gutter:u});o.height=c({unit:s,span:t.row,gutter:u})}return o}function it(n,t,i,r,u){var f={};switch(r){case"fixed":f.height=c({unit:u,span:t,gutter:i});f.paddingBottom="";break;case"ratio":var e=1===n?0:(n-1)/n,o=100/n,s=o*(1/u),h=a({share:s,gutterShare:e,gutter:i});f.height="";f.paddingBottom=c({unit:h,span:t,gutter:i})}return f}function rt(){return[].filter.call(e.children(),function(n){return"MD-GRID-TILE"==n.tagName&&!n.$$mdDestroyed})}function ut(n){return[].map.call(n,function(n){var i=t.element(n).controller("mdGridTile");return{row:parseInt(f.getResponsiveAttribute(i.$attrs,"md-rowspan"),10)||1,col:parseInt(f.getResponsiveAttribute(i.$attrs,"md-colspan"),10)||1}})}function ft(){var n=parseInt(f.getResponsiveAttribute(o,"md-cols"),10);if(isNaN(n))throw"md-grid-list: md-cols attribute was not found, or contained a non-numeric value";return n}function et(){return p(f.getResponsiveAttribute(o,"md-gutter")||1)}function ot(){var n=f.getResponsiveAttribute(o,"md-row-height"),t;if(!n)throw"md-grid-list: md-row-height attribute was not found";switch(y()){case"fixed":return p(n);case"ratio":return t=n.split(":"),parseFloat(t[0])/parseFloat(t[1]);case"fit":return 0}}function y(){var n=f.getResponsiveAttribute(o,"md-row-height");if(!n)throw"md-grid-list: md-row-height attribute was not found";return"fit"==n?"fit":n.indexOf(":")!==-1?"ratio":"fixed"}function p(n){return/\D$/.test(n)?n:n+"px"}var v,w;e.addClass("_md");e.attr("role","list");s.layoutDelegate=nt;v=t.bind(s,s.invalidateLayout);w=k();n.$on("$destroy",d);var b,st=i.startSymbol(),ht=i.endSymbol(),a=i(h("share")+"% - ("+h("gutter")+" * "+h("gutterShare")+")"),l=i("calc(("+h("unit")+" + "+h("gutter")+") * "+h("offset")+")"),c=i("calc(("+h("unit")+") * "+h("span")+" + ("+h("span")+" - 1) * "+h("gutter")+")")}return{restrict:"E",controller:n,scope:{mdOnLayout:"&"},link:e}}function n(n){this.layoutInvalidated=!1;this.tilesInvalidated=!1;this.$timeout_=n.nextTick;this.layoutDelegate=t.noop}function r(n){function i(t,i){var r,c,e,o,s,h;return o=n.time(function(){c=f(t,i)}),r={layoutInfo:function(){return c},map:function(t){return s=n.time(function(){var n=r.layoutInfo();e=t(n.positioning,n.rowCount)}),r},reflow:function(t){return h=n.time(function(){var n=t||u;n(e.grid,e.tiles)}),r},performance:function(){return{tileCount:i.length,layoutTime:o,mapTime:s,reflowTime:h,totalTime:o+s+h}}}}function r(n,t){n.element.css(n.style);t.forEach(function(n){n.element.css(n.style)})}function f(n,t){function o(t,o){if(t.col>n)throw"md-grid-list: Tile at position "+o+" has a colspan ("+t.col+") that exceeds the column count ("+n+")";for(var h=0,c=0;c-h<t.col;)r>=n?f():(h=i.indexOf(0,r),h!==-1&&(c=s(h+1))!==-1?r=c+1:(h=c=0,f()));return e(h,t.col,t.row),r=h+t.col,{col:h,row:u}}function f(){r=0;u++;e(0,n,-1)}function e(n,t,r){for(var u=n;u<n+t;u++)i[u]=Math.max(i[u]+r,0)}function s(n){for(var t=n;t<i.length;t++)if(0!==i[t])return t;if(t===i.length)return t}function h(){for(var t=[],i=0;i<n;i++)t.push(0);return t}var r=0,u=0,i=h();return{positioning:t.map(function(n,t){return{spans:n,position:o(n,t)}}),rowCount:u+Math.max.apply(Math,i)}}var u=r;return i.animateWith=function(n){u=t.isFunction(n)?n:r},i}function u(n){function i(i,r,u,f){r.attr("role","listitem");var e=n.watchResponsiveAttributes(["md-colspan","md-rowspan"],u,t.bind(f,f.invalidateLayout));f.invalidateTiles();i.$on("$destroy",function(){r[0].$$mdDestroyed=!0;e();f.invalidateLayout()});t.isDefined(i.$parent.$index)&&i.$watch(function(){return i.$parent.$index},function(n,t){n!==t&&f.invalidateTiles()})}return{restrict:"E",require:"^mdGridList",template:"<figure ng-transclude><\/figure>",transclude:!0,scope:{},controller:["$attrs",function(n){this.$attrs=n}],link:i}}function f(){return{template:"<figcaption ng-transclude><\/figcaption>",transclude:!0}}n.$inject=["$mdUtil"];r.$inject=["$mdUtil"];i.$inject=["$interpolate","$mdConstant","$mdGridLayout","$mdMedia"];u.$inject=["$mdMedia"];t.module("material.components.gridList",["material.core"]).directive("mdGridList",i).directive("mdGridTile",u).directive("mdGridTileFooter",f).directive("mdGridTileHeader",f).factory("$mdGridLayout",r);n.prototype={invalidateTiles:function(){this.tilesInvalidated=!0;this.invalidateLayout()},invalidateLayout:function(){this.layoutInvalidated||(this.layoutInvalidated=!0,this.$timeout_(t.bind(this,this.layout)))},layout:function(){try{this.layoutDelegate(this.tilesInvalidated)}finally{this.layoutInvalidated=!1;this.tilesInvalidated=!1}}}}(),function(){t.module("material.components.icon",["material.core"])}(),function(){function y(n,t){function u(t){var i=t[0].querySelector(f),r=t[0].querySelector(e);return i&&t.addClass("md-icon-left"),r&&t.addClass("md-icon-right"),function(t,i){n(i)}}function i(n,i,r,u){var f=this;f.isErrorGetter=r.mdIsError&&t(r.mdIsError);f.delegateClick=function(){f.input.focus()};f.element=i;f.setFocused=function(n){i.toggleClass("md-input-focused",!!n)};f.setHasValue=function(n){i.toggleClass("md-input-has-value",!!n)};f.setHasPlaceholder=function(n){i.toggleClass("md-input-has-placeholder",!!n)};f.setInvalid=function(n){n?u.addClass(i,"md-input-invalid"):u.removeClass(i,"md-input-invalid")};n.$watch(function(){return f.label&&f.input},function(n){n&&!f.label.attr("for")&&f.label.attr("for",f.input.attr("id"))})}i.$inject=["$scope","$element","$attrs","$animate"];var r=["INPUT","TEXTAREA","SELECT","MD-SELECT"],f=r.reduce(function(n,t){return n.concat(["md-icon ~ "+t,".md-icon ~ "+t])},[]).join(","),e=r.reduce(function(n,t){return n.concat([t+" ~ md-icon",t+" ~ .md-icon"])},[]).join(",");return{restrict:"E",compile:u,controller:i}}function it(){return{restrict:"E",require:"^?mdInputContainer",link:function(n,t,i,r){!r||i.mdNoFloat||t.hasClass("md-container-ignore")||(r.label=t,n.$on("$destroy",function(){r.label=null}))}}}function f(n,i,r,u,f){function e(e,o,s,h){function y(n){return c.setHasValue(!l.$isEmpty(n)),n}function g(){c.label&&s.$observe("required",function(n){c.label.toggleClass("md-required",n&&!it)})}function a(){c.setHasValue(o.val().length>0||(o[0].validity||{}).badInput)}function nt(){function r(){var n,i,t;o.attr("rows",1).css("height","auto").addClass("md-no-flex");n=nt();h||(i=o[0].style.padding||"",h=o.css("padding",0).prop("offsetHeight"),o[0].style.padding=i);(y&&h&&(n=Math.max(n,h*y)),k&&h)&&(t=h*k,t<n?(o.attr("md-no-autogrow",""),n=t):o.removeAttr("md-no-autogrow"));h&&o.attr("rows",Math.round(n/h));o.css("height",n+"px").removeClass("md-no-flex")}function nt(){var n=p.offsetHeight,t=p.scrollHeight-n;return n+Math.max(t,0)}function w(t){return n.nextTick(r),t}function b(){if(a&&(a=!1,t.element(i).off("resize",r),d&&d(),o.attr("md-no-autogrow","").off("input",r),v)){var n=l.$formatters.indexOf(w);n>-1&&l.$formatters.splice(n,1)}}function tt(){function u(n){n.preventDefault();i=!0;p=n.clientY;v=parseFloat(o.css("height"))||o.prop("offsetHeight")}function h(n){i&&(n.preventDefault(),b(),r.addClass("md-input-resized"))}function l(n){i&&o.css("height",v+n.pointer.distanceY+"px")}function a(){i&&(i=!1,r.removeClass("md-input-resized"))}if(!s.hasOwnProperty("mdNoResize")){var n=t.element('<div class="md-resize-handle"><\/div>'),i=!1,p=null,v=0,r=c.element,y=f.register(n,"drag",{horizontal:!1});o.wrap('<div class="md-resize-wrapper">').after(n);n.on("mousedown",u);r.on("$md.dragstart",h).on("$md.drag",l).on("$md.dragend",a);e.$on("$destroy",function(){n.off("mousedown",u).remove();r.off("$md.dragstart",h).off("$md.drag",l).off("$md.dragend",a);y();n=null;r=null;y=null})}}var a=!s.hasOwnProperty("mdNoAutogrow"),g;if(tt(),a){var y=s.hasOwnProperty("rows")?parseInt(s.rows):NaN,k=s.hasOwnProperty("maxRows")?parseInt(s.maxRows):NaN,d=e.$on("md-resize-textarea",r),h=null,p=o[0];(u(function(){n.nextTick(r)},10,!1),o.on("input",r),v&&l.$formatters.push(w),y||o.attr("rows",1),t.element(i).on("resize",r),e.$on("$destroy",b),s.hasOwnProperty("mdDetectHidden"))&&(g=function(){var n=!1;return function(){var t=0===p.offsetHeight;t===!1&&n===!0&&r();n=t}}(),e.$watch(function(){return n.nextTick(g,!1),!0}))}}var c=h[0],v=!!h[1],l=h[1]||n.fakeNgModel(),p=h[2],tt=t.isDefined(s.readonly),it=n.parseAttributeBoolean(s.mdNoAsterisk),w=o[0].tagName.toLowerCase(),b,k,d;if(c){if("hidden"===s.type)return void o.attr("aria-hidden","true");if(c.input){if(c.input[0].contains(o[0]))return;throw new Error("<md-input-container> can only have *one* <input>, <textarea> or <md-select> child element!");}c.input=o;g();b=t.element('<div class="md-errors-spacer">');o.after(b);k=t.isString(s.placeholder)?s.placeholder.trim():"";c.label||k.length||r.expect(o,"aria-label");o.addClass("md-input");o.attr("id")||o.attr("id","input_"+n.nextUid());"input"===w&&"number"===s.type&&s.min&&s.max&&!s.step?o.attr("step","any"):"textarea"===w&&nt();v||a();d=c.isErrorGetter||function(){return l.$invalid&&(l.$touched||p&&p.$submitted)};e.$watch(d,c.setInvalid);s.ngValue&&s.$observe("value",a);l.$parsers.push(y);l.$formatters.push(y);o.on("input",a);tt||o.on("focus",function(){n.nextTick(function(){c.setFocused(!0)})}).on("blur",function(){n.nextTick(function(){c.setFocused(!1);a()})});e.$on("$destroy",function(){c.setFocused(!1);c.setHasValue(!1);c.input=null})}}return{restrict:"E",require:["^?mdInputContainer","?ngModel","?^form"],link:e}}function p(n,i){function r(r,u,f,e){function c(n){return o.parent?(o.text(String(u.val()||n||"").length+" / "+s),n):n}var s,o,h,l=e[0],a=e[1];i.nextTick(function(){h=t.element(a.element[0].querySelector(".md-errors-spacer"));o=t.element('<div class="md-char-counter">');h.append(o);f.$set("ngTrim","false");r.$watch(f.mdMaxlength,function(i){s=i;t.isNumber(i)&&i>0?(o.parent().length||n.enter(o,h),c()):n.leave(o)});l.$validators["md-maxlength"]=function(n,i){return!t.isNumber(s)||s<0||(c(),(n||u.val()||i||"").length<=s)}})}return{restrict:"A",require:["ngModel","^mdInputContainer"],link:r}}function w(n){function i(i,r,u,f){var e,o,s;if(f){if(e=f.element.find("label"),o=f.element.attr("md-no-float"),e&&e.length||""===o||i.$eval(o))return void f.setHasPlaceholder(!0);"MD-SELECT"!=r[0].nodeName&&(s=t.element('<label ng-click="delegateClick()" tabindex="-1">'+u.placeholder+"<\/label>"),u.$set("placeholder",null),f.element.addClass("md-icon-float").prepend(s),n(s)(i))}}return{restrict:"A",require:"^^?mdInputContainer",priority:200,link:{pre:i}}}function b(n){function t(t,i){function u(){r=!0;n(function(){i[0].select();r=!1},1,!1)}function f(n){r&&n.preventDefault()}if("INPUT"===i[0].nodeName||"TEXTAREA"===i[0].nodeName){var r=!1;i.on("focus",u).on("mouseup",f);t.$on("$destroy",function(){i.off("focus",u).off("mouseup",f)})}}return{restrict:"A",link:t}}function rt(){function n(n,i,r,u){u&&(i.toggleClass("md-input-messages-animation",!0),i.toggleClass("md-auto-hide",!0),("false"==r.mdAutoHide||t(r))&&i.toggleClass("md-auto-hide",!1))}function t(n){return tt.some(function(t){return n[t]})}return{restrict:"EA",link:n,require:"^^?mdInputContainer"}}function e(n){function t(t){function u(){for(var n=t[0];n=n.parentNode;)if(n.nodeType===Node.DOCUMENT_FRAGMENT_NODE)return!0;return!1}function i(t){return!!n.getClosest(t,"md-input-container")}function r(n){n.toggleClass("md-input-message-animation",!0)}if(i(t))r(t);else if(u())return function(n,u){i(u)&&r(t)}}return{restrict:"EA",compile:t,priority:100}}function o(n,t,i,u){return l(n,t,i,u),{addClass:function(n,t,i){r(n,i)}}}function s(n,t,i,u){return l(n,t,i,u),{enter:function(n,t){r(n,t)},leave:function(n,t){c(n,t)},addClass:function(n,t,i){"ng-hide"==t?c(n,i):i()},removeClass:function(n,t,i){"ng-hide"==t?r(n,i):i()}}}function h(n,t,i,r){return l(n,t,i,r),{enter:function(n,t){var i=k(n);i.start().done(t)},leave:function(n,t){var i=d(n);i.start().done(t)}}}function r(n,i){var r,f=[],e=u(n),o=e.children();return 0==e.length||0==o.length?(v.warn("mdInput messages show animation called on invalid messages element: ",n),void i()):(t.forEach(o,function(n){r=k(t.element(n));f.push(r.start())}),void a.all(f,i))}function c(n,i){var r,f=[],e=u(n),o=e.children();return 0==e.length||0==o.length?(v.warn("mdInput messages hide animation called on invalid messages element: ",n),void i()):(t.forEach(o,function(n){r=d(t.element(n));f.push(r.start())}),void a.all(f,i))}function k(t){var r=parseInt(n.getComputedStyle(t[0]).height),f=parseInt(n.getComputedStyle(t[0]).marginTop),e=u(t),o=ut(t),s=f>-r;return s||e.hasClass("md-auto-hide")&&!o.hasClass("md-input-invalid")?i(t,{}):i(t,{event:"enter",structural:!0,from:{opacity:0,"margin-top":-r+"px"},to:{opacity:1,"margin-top":"0"},duration:.3})}function d(t){var r=t[0].offsetHeight,u=n.getComputedStyle(t[0]);return 0===parseInt(u.opacity)?i(t,{}):i(t,{event:"leave",structural:!0,from:{opacity:1,"margin-top":0},to:{opacity:0,"margin-top":-r+"px"},duration:.3})}function ut(n){var t=n.controller("mdInputContainer");return t.element}function u(n){return n.hasClass("md-input-messages-animation")?n:n.hasClass("md-input-message-animation")?t.element(nt.getClosest(n,function(n){return n.classList.contains("md-input-messages-animation")})):t.element(n[0].querySelector(".md-input-messages-animation"))}function l(n,t,r,u){a=n;i=t;nt=r;v=u}var g,a,i,nt,v,tt;y.$inject=["$mdTheming","$parse"];f.$inject=["$mdUtil","$window","$mdAria","$timeout","$mdGesture"];p.$inject=["$animate","$mdUtil"];w.$inject=["$compile"];e.$inject=["$mdUtil"];b.$inject=["$timeout"];o.$inject=["$$AnimateRunner","$animateCss","$mdUtil","$log"];s.$inject=["$$AnimateRunner","$animateCss","$mdUtil","$log"];h.$inject=["$$AnimateRunner","$animateCss","$mdUtil","$log"];g=t.module("material.components.input",["material.core"]).directive("mdInputContainer",y).directive("label",it).directive("input",f).directive("textarea",f).directive("mdMaxlength",p).directive("placeholder",w).directive("ngMessages",rt).directive("ngMessage",e).directive("ngMessageExp",e).directive("mdSelectOnFocus",b).animation(".md-input-invalid",o).animation(".md-input-messages-animation",s).animation(".md-input-message-animation",h);n._mdMocksIncluded&&g.service("$$mdInput",function(){return{messages:{show:r,hide:c,getElement:u}}}).service("mdInputInvalidAnimation",o).service("mdInputMessagesAnimation",s).service("mdInputMessageAnimation",h);tt=["ngIf","ngShow","ngHide","ngSwitchWhen","ngSwitchDefault"]}(),function(){function n(n){return{restrict:"E",compile:function(t){return t[0].setAttribute("role","list"),n}}}function i(n,i,r,u){var f=["md-checkbox","md-switch","md-menu"];return{restrict:"E",controller:"MdListController",compile:function(e,o){function w(){for(var n,r,i,u=["md-switch","md-checkbox"],t=0;r=u[t];++t)if((n=e.find(r)[0])&&!n.hasAttribute("aria-label")){if(i=e.find("p")[0],!i)return;n.setAttribute("aria-label","Toggle "+i.textContent)}}function b(){var i=t.element(h),u=i.parent().hasClass("md-secondary-container")||h.parentNode.firstElementChild!==h,r="left",n;u&&(r="right");i.attr("md-position-mode")||i.attr("md-position-mode",r+" target");n=i.children().eq(0);c(n[0])||n.attr("ng-click","$mdMenu.open($event)");n.attr("aria-label")||n.attr("aria-label","Open List Menu")}function v(i){if("div"==i)s=t.element('<div class="md-no-style md-list-item-inner">'),s.append(e.contents()),e.addClass("md-proxy-focus");else{s=t.element('<div class="md-button md-no-style">   <div class="md-list-item-inner"><\/div><\/div>');var r=t.element('<md-button class="md-no-style"><\/md-button>');y(e[0],r[0]);r.attr("aria-label")||r.attr("aria-label",n.getText(e));e.hasClass("md-no-focus")&&r.addClass("md-no-focus");s.prepend(r);s.children().eq(1).append(e.contents());e.addClass("_md-button-wrap")}e[0].setAttribute("tabindex","-1");e.append(s)}function k(){var n=t.element('<div class="md-secondary-container">');t.forEach(it,function(t){d(t,n)});s.append(n)}function d(i,r){if(i&&!nt(i)&&i.hasAttribute("ng-click")){n.expect(i,"aria-label");var u=t.element('<md-button class="md-secondary md-icon-button">');y(i,u[0],["ng-if","ng-hide","ng-show"]);i.setAttribute("tabindex","-1");u.append(i);i=u[0]}i&&(!c(i)||!o.ngClick&&g(i))&&t.element(i).removeClass("md-secondary");e.addClass("md-with-secondary");r.append(i)}function y(n,i,u){var f=r.prefixer(["ng-if","ng-click","ng-dblclick","aria-label","ng-disabled","ui-sref","href","ng-href","rel","target","ng-attr-ui-sref","ui-sref-opts"]);u&&(f=f.concat(r.prefixer(u)));t.forEach(f,function(t){n.hasAttribute(t)&&(i.setAttribute(t,n.getAttribute(t)),n.removeAttribute(t))})}function g(n){return f.indexOf(n.nodeName.toLowerCase())!=-1}function nt(n){var t=n.nodeName.toUpperCase();return"MD-BUTTON"==t||"BUTTON"==t}function c(n){for(var i=n.attributes,t=0;t<i.length;t++)if("ngClick"===o.$normalize(i[t].name))return!0;return!1}function tt(n,e,o,s){function p(){a&&a.children&&!v&&!d&&t.forEach(f,function(n){t.forEach(a.querySelectorAll(n+":not(.md-secondary)"),function(n){l.push(n)})})}function w(){(1==l.length||v)&&(e.addClass("md-clickable"),v||s.attachRipple(n,t.element(e[0].querySelector(".md-no-style"))))}function b(n){var i=["md-slider"],r,t;if(!n.path)return i.indexOf(n.target.tagName.toLowerCase())!==-1;for(r=n.path.indexOf(e.children()[0]),t=0;t<r;t++)if(i.indexOf(n.path[t].tagName.toLowerCase())!==-1)return!0}var y;e.addClass("_md");var l=[],a=e[0].firstElementChild,k=e.hasClass("_md-button-wrap"),h=k?a.firstElementChild:a,v=h&&c(h),d=e.hasClass("md-no-proxy");p();w();l.length&&t.forEach(l,function(i){i=t.element(i);n.mouseActive=!1;i.on("mousedown",function(){n.mouseActive=!0;u(function(){n.mouseActive=!1},100)}).on("focus",function(){n.mouseActive===!1&&e.addClass("md-focused");i.on("blur",function t(){e.removeClass("md-focused");i.off("blur",t)})})});y=function(n){if("INPUT"!=n.target.nodeName&&"TEXTAREA"!=n.target.nodeName&&!n.target.isContentEditable){var t=n.which||n.keyCode;t==i.KEY_CODE.SPACE&&h&&(h.click(),n.preventDefault(),n.stopPropagation())}};v||l.length||h&&h.addEventListener("keypress",y);e.off("click");e.off("keypress");1==l.length&&h&&e.children().eq(0).on("click",function(n){if(!b(n)){var i=r.getClosest(n.target,"BUTTON");!i&&h.contains(n.target)&&t.forEach(l,function(i){n.target===i||i.contains(n.target)||("MD-MENU"===i.nodeName&&(i=i.children[0]),t.element(i).triggerHandler("click"))})}});n.$on("$destroy",function(){h&&h.removeEventListener("keypress",y)})}var l,h,it=e[0].querySelectorAll(".md-secondary"),s=e,p,a;if(e[0].setAttribute("role","listitem"),o.ngClick||o.ngDblclick||o.ngHref||o.href||o.uiSref||o.ngAttrUiSref)v("button");else if(!e.hasClass("md-no-proxy")){for(a=0;p=f[a];++a)if(h=e[0].querySelector(p)){l=!0;break}l?v("div"):e.addClass("md-no-proxy")}return k(),w(),l&&"MD-MENU"===h.nodeName&&b(),tt}}}function r(n,t,i){function r(n,t){i.attach(n,t,{})}var u=this;u.attachRipple=r}r.$inject=["$scope","$element","$mdListInkRipple"];n.$inject=["$mdTheming"];i.$inject=["$mdAria","$mdConstant","$mdUtil","$timeout"];t.module("material.components.list",["material.core"]).controller("MdListController",r).directive("mdList",n).directive("mdListItem",i)}(),function(){t.module("material.components.menu",["material.core","material.components.backdrop"])}(),function(){t.module("material.components.menuBar",["material.core","material.components.icon","material.components.menu"])}(),function(){function u(i,r){return{restrict:"E",transclude:!0,controller:n,controllerAs:"ctrl",bindToController:!0,scope:{mdSelectedNavItem:"=?",mdNoInkBar:"=?",navBarAriaLabel:"@?"},template:'<div class="md-nav-bar"><nav role="navigation"><ul class="_md-nav-bar-list" ng-transclude role="listbox"tabindex="0"ng-focus="ctrl.onFocus()"ng-keydown="ctrl.onKeydown($event)"aria-label="{{ctrl.navBarAriaLabel}}"><\/ul><\/nav><md-nav-ink-bar ng-hide="ctrl.mdNoInkBar"><\/md-nav-ink-bar><\/div>',link:function(n,u,f,e){r(u);e.navBarAriaLabel||i.expectAsync(u,"aria-label",t.noop)}}}function n(n,t,i,r){this._$timeout=i;this._$scope=t;this._$mdConstant=r;this.mdSelectedNavItem;this.navBarAriaLabel;this._navBarEl=n[0];this._inkbar;var u=this,f=this._$scope.$watch(function(){return u._navBarEl.querySelectorAll("._md-nav-button").length},function(n){n>0&&(u._initTabs(),f())})}function f(n,i){return{restrict:"E",require:["mdNavItem","^mdNavBar"],controller:r,bindToController:!0,controllerAs:"ctrl",replace:!0,transclude:!0,template:function(n,t){var i,r,u,f=t.mdNavClick,e=t.mdNavHref,o=t.mdNavSref,s=t.srefOpts;if((f?1:0)+(e?1:0)+(o?1:0)>1)throw Error("Must not specify more than one of the md-nav-click, md-nav-href, or md-nav-sref attributes per nav-item directive.");return f?i='ng-click="ctrl.mdNavClick()"':e?i='ng-href="{{ctrl.mdNavHref}}"':o&&(i='ui-sref="{{ctrl.mdNavSref}}"'),r=s?'ui-sref-opts="{{ctrl.srefOpts}}" ':"",i&&(u='<md-button class="_md-nav-button md-accent" ng-class="ctrl.getNgClassMap()" ng-blur="ctrl.setFocused(false)" tabindex="-1" '+r+i+'><span ng-transclude class="_md-nav-button-text"><\/span><\/md-button>'),'<li class="md-nav-item" role="option" aria-selected="{{ctrl.isSelected()}}">'+(u||"")+"<\/li>"},scope:{mdNavClick:"&?",mdNavHref:"@?",mdNavSref:"@?",srefOpts:"=?",name:"@"},link:function(r,u,f,e){i(function(){var i=e[0],f=e[1],o=t.element(u[0].querySelector("._md-nav-button"));i.name||(i.name=t.element(u[0].querySelector("._md-nav-button-text")).text().trim());o.on("click",function(){f.mdSelectedNavItem=i.name;r.$apply()});n.expectWithText(u,"aria-label")})}}}function r(n){this._$element=n;this.mdNavClick;this.mdNavHref;this.mdNavSref;this.srefOpts;this.name;this._selected=!1;this._focused=!1}n.$inject=["$element","$scope","$timeout","$mdConstant"];f.$inject=["$mdAria","$$rAF"];r.$inject=["$element"];u.$inject=["$mdAria","$mdTheming"];t.module("material.components.navBar",["material.core"]).controller("MdNavBarController",n).directive("mdNavBar",u).controller("MdNavItemController",r).directive("mdNavItem",f);n.prototype._initTabs=function(){this._inkbar=t.element(this._navBarEl.querySelector("md-nav-ink-bar"));var n=this;this._$timeout(function(){n._updateTabs(n.mdSelectedNavItem,i)});this._$scope.$watch("ctrl.mdSelectedNavItem",function(t,i){n._$timeout(function(){n._updateTabs(t,i)})})};n.prototype._updateTabs=function(n,t){var o=this,r=this._getTabs();if(r){var f=-1,e=-1,i=this._getTabByName(n),u=this._getTabByName(t);u&&(u.setSelected(!1),f=r.indexOf(u));i&&(i.setSelected(!0),e=r.indexOf(i));this._$timeout(function(){o._updateInkBarStyles(i,e,f)})}};n.prototype._updateInkBarStyles=function(n,t,i){if(this._inkbar.toggleClass("_md-left",t<i).toggleClass("_md-right",t>i),this._inkbar.css({display:t<0?"none":""}),n){var r=n.getButtonEl(),u=r.offsetLeft;this._inkbar.css({left:u+"px",width:r.offsetWidth+"px"})}};n.prototype._getTabs=function(){var n=Array.prototype.slice.call(this._navBarEl.querySelectorAll(".md-nav-item")).map(function(n){return t.element(n).controller("mdNavItem")});return n.indexOf(i)?n:null};n.prototype._getTabByName=function(n){return this._findTab(function(t){return t.getName()==n})};n.prototype._getSelectedTab=function(){return this._findTab(function(n){return n.isSelected()})};n.prototype.getFocusedTab=function(){return this._findTab(function(n){return n.hasFocus()})};n.prototype._findTab=function(n){for(var i=this._getTabs(),t=0;t<i.length;t++)if(n(i[t]))return i[t];return null};n.prototype.onFocus=function(){var n=this._getSelectedTab();n&&n.setFocused(!0)};n.prototype._moveFocus=function(n,t){n.setFocused(!1);t.setFocused(!0)};n.prototype.onKeydown=function(n){var t=this._$mdConstant.KEY_CODE,u=this._getTabs(),i=this.getFocusedTab(),r;if(i){r=u.indexOf(i);switch(n.keyCode){case t.UP_ARROW:case t.LEFT_ARROW:r>0&&this._moveFocus(i,u[r-1]);break;case t.DOWN_ARROW:case t.RIGHT_ARROW:r<u.length-1&&this._moveFocus(i,u[r+1]);break;case t.SPACE:case t.ENTER:this._$timeout(function(){i.getButtonEl().click()})}}};r.prototype.getNgClassMap=function(){return{"md-active":this._selected,"md-primary":this._selected,"md-unselected":!this._selected,"md-focused":this._focused}};r.prototype.getName=function(){return this.name};r.prototype.getButtonEl=function(){return this._$element[0].querySelector("._md-nav-button")};r.prototype.setSelected=function(n){this._selected=n};r.prototype.isSelected=function(){return this._selected};r.prototype.setFocused=function(n){this._focused=n;n&&this.getButtonEl().focus()};r.prototype.hasFocus=function(){return this._focused}}(),function(){function c(){return{definePreset:l,getAllPresets:a,clearPresets:v,$get:y()}}function l(n,t){if(!n||!t)throw new Error("mdPanelProvider: The panel preset definition is malformed. The name and preset object are required.");if(s.hasOwnProperty(n))throw new Error("mdPanelProvider: The panel preset you have requested has already been defined.");delete t.id;delete t.position;delete t.animation;s[n]=t}function a(){return t.copy(s)}function v(){s={}}function y(){return["$rootElement","$rootScope","$injector","$window",function(n,t,i,r){return new f(s,n,t,i,r)}]}function f(i,f,e,o,s){this._defaultConfigOptions={bindToController:!0,clickOutsideToClose:!1,disableParentScroll:!1,escapeToClose:!1,focusOnOpen:!0,fullscreen:!1,hasBackdrop:!1,propagateContainerEvents:!1,transformTemplate:t.bind(this,this._wrapTemplate),trapFocus:!1,zIndex:w};this._config={};this._presets=i;this._$rootElement=f;this._$rootScope=e;this._$injector=o;this._$window=s;this._$mdUtil=this._$injector.get("$mdUtil");this._trackedPanels={};this._groups=Object.create(null);this.animation=u.animation;this.xPosition=n.xPosition;this.yPosition=n.yPosition;this.interceptorTypes=r.interceptorTypes;this.closeReasons=r.closeReasons;this.absPosition=n.absPosition}function r(n,t){this._$q=t.get("$q");this._$mdCompiler=t.get("$mdCompiler");this._$mdConstant=t.get("$mdConstant");this._$mdUtil=t.get("$mdUtil");this._$mdTheming=t.get("$mdTheming");this._$rootScope=t.get("$rootScope");this._$animate=t.get("$animate");this._$mdPanel=t.get("$mdPanel");this._$log=t.get("$log");this._$window=t.get("$window");this._$$rAF=t.get("$$rAF");this.id=n.id;this.config=n;this.panelContainer;this.panelEl;this.isAttached=!1;this._removeListeners=[];this._topFocusTrap;this._bottomFocusTrap;this._backdropRef;this._restoreScroll=null;this._interceptors=Object.create(null);this._compilerCleanup=null;this._restoreCache={styles:"",classes:""}}function n(n){this._$window=n.get("$window");this._isRTL="rtl"===n.get("$mdUtil").bidi();this._$mdConstant=n.get("$mdConstant");this._absolute=!1;this._relativeToEl;this._top="";this._bottom="";this._left="";this._right="";this._translateX=[];this._translateY=[];this._positions=[];this._actualPosition}function u(n){this._$mdUtil=n.get("$mdUtil");this._openFrom;this._closeTo;this._animationClass="";this._openDuration;this._closeDuration;this._rawDuration}function e(n){var i=t.isString(n)?document.querySelector(n):n;return t.element(i)}function p(n,t){var i=getComputedStyle(n[0]||n)[t],f=i.indexOf("("),e=i.lastIndexOf(")"),r={x:0,y:0},u;return f>-1&&e>-1&&(u=i.substring(f+1,e).split(", ").slice(-2),r.x=parseInt(u[0]),r.y=parseInt(u[1])),r}f.$inject=["presets","$rootElement","$rootScope","$injector","$window"];t.module("material.components.panel",["material.core","material.components.backdrop"]).provider("$mdPanel",c);var w=80,o="_md-panel-hidden",h=t.element('<div class="_md-panel-focus-trap" tabindex="0"><\/div>'),s={};f.prototype.create=function(n,i){var f,u;return("string"==typeof n?n=this._getPresetByName(n):"object"!=typeof n||!t.isUndefined(i)&&i||(i=n,n={}),n=n||{},i=i||{},t.isDefined(i.id)&&this._trackedPanels[i.id])?(f=this._trackedPanels[i.id],t.extend(f.config,i),f):(this._config=t.extend({id:i.id||"panel_"+this._$mdUtil.nextUid(),scope:this._$rootScope.$new(!0),attachTo:this._$rootElement},this._defaultConfigOptions,i,n),u=new r(this._config,this._$injector),this._trackedPanels[i.id]=u,this._config.groupName&&(t.isString(this._config.groupName)&&(this._config.groupName=[this._config.groupName]),t.forEach(this._config.groupName,function(n){u.addToGroup(n)})),this._config.scope.$on("$destroy",t.bind(u,u.detach)),u)};f.prototype.open=function(n,t){var i=this.create(n,t);return i.open().then(function(){return i})};f.prototype._getPresetByName=function(n){if(!this._presets[n])throw new Error("mdPanel: The panel preset configuration that you requested does not exist. Use the $mdPanelProvider to create a preset before requesting one.");return this._presets[n]};f.prototype.newPanelPosition=function(){return new n(this._$injector)};f.prototype.newPanelAnimation=function(){return new u(this._$injector)};f.prototype.newPanelGroup=function(n,t){if(!this._groups[n]){t=t||{};var i={panels:[],openPanels:[],maxOpen:t.maxOpen>0?t.maxOpen:1/0};this._groups[n]=i}return this._groups[n]};f.prototype.setGroupMaxOpen=function(n,t){if(!this._groups[n])throw new Error("mdPanel: Group does not exist yet. Call newPanelGroup().");this._groups[n].maxOpen=t};f.prototype._openCountExceedsMaxOpen=function(n){if(this._groups[n]){var t=this._groups[n];return t.maxOpen>0&&t.openPanels.length>t.maxOpen}return!1};f.prototype._closeFirstOpenedPanel=function(n){this._groups[n].openPanels[0].close()};f.prototype._wrapTemplate=function(n){var t=n||"";return'<div class="md-panel-outer-wrapper">  <div class="md-panel _md-panel-offscreen">'+t+"<\/div><\/div>"};f.prototype._wrapContentElement=function(n){var i=t.element('<div class="md-panel-outer-wrapper">');return n.addClass("md-panel _md-panel-offscreen"),i.append(n),i};r.interceptorTypes={CLOSE:"onClose"};r.prototype.open=function(){var n=this;return this._$q(function(i,r){var u=n._done(i,n),f=n._simpleBind(n.show,n),e=function(){n.config.groupName&&t.forEach(n.config.groupName,function(t){n._$mdPanel._openCountExceedsMaxOpen(t)&&n._$mdPanel._closeFirstOpenedPanel(t)})};n.attach().then(f).then(e).then(u)["catch"](r)})};r.prototype.close=function(n){var i=this;return this._$q(function(u,f){i._callInterceptors(r.interceptorTypes.CLOSE).then(function(){var e=i._done(u,i),o=i._simpleBind(i.detach,i),r=i.config.onCloseSuccess||t.noop;r=t.bind(i,r,i,n);i.hide().then(o).then(e).then(r)["catch"](f)},f)})};r.prototype.attach=function(){if(this.isAttached&&this.panelEl)return this._$q.when(this);var n=this;return this._$q(function(i,r){var u=n._done(i,n),f=n.config.onDomAdded||t.noop,e=function(t){return n.isAttached=!0,n._addEventListeners(),t};n._$q.all([n._createBackdrop(),n._createPanel().then(e)["catch"](r)]).then(f).then(u)["catch"](r)})};r.prototype.detach=function(){if(!this.isAttached)return this._$q.when(this);var n=this,i=n.config.onDomRemoved||t.noop,r=function(){return n._removeEventListeners(),n._topFocusTrap&&n._topFocusTrap.parentNode&&n._topFocusTrap.parentNode.removeChild(n._topFocusTrap),n._bottomFocusTrap&&n._bottomFocusTrap.parentNode&&n._bottomFocusTrap.parentNode.removeChild(n._bottomFocusTrap),n._restoreCache.classes&&(n.panelEl[0].className=n._restoreCache.classes),n.panelEl[0].style.cssText=n._restoreCache.styles||"",n._compilerCleanup(),n.panelContainer.remove(),n.isAttached=!1,n._$q.when(n)};return this._restoreScroll&&(this._restoreScroll(),this._restoreScroll=null),this._$q(function(t,u){var f=n._done(t,n);n._$q.all([r(),!n._backdropRef||n._backdropRef.detach()]).then(i).then(f)["catch"](u)})};r.prototype.destroy=function(){var n=this;this.config.groupName&&t.forEach(this.config.groupName,function(t){n.removeFromGroup(t)});this.config.scope.$destroy();this.config.locals=null;this._interceptors=null};r.prototype.show=function(){if(!this.panelContainer)return this._$q(function(n,t){t("mdPanel: Panel does not exist yet. Call open() or attach().")});if(!this.panelContainer.hasClass(o))return this._$q.when(this);var n=this,i=function(){return n.panelContainer.removeClass(o),n._animateOpen()};return this._$q(function(r,u){var f=n._done(r,n),e=n.config.onOpenComplete||t.noop,o=function(){n.config.groupName&&t.forEach(n.config.groupName,function(t){n._$mdPanel._groups[t].openPanels.push(n)})};n._$q.all([n._backdropRef?n._backdropRef.show():n,i().then(function(){n._focusOnOpen()},u)]).then(e).then(o).then(f)["catch"](u)})};r.prototype.hide=function(){if(!this.panelContainer)return this._$q(function(n,t){t("mdPanel: Panel does not exist yet. Call open() or attach().")});if(this.panelContainer.hasClass(o))return this._$q.when(this);var n=this;return this._$q(function(i,r){var u=n._done(i,n),f=n.config.onRemoving||t.noop,s=function(){n.panelContainer.addClass(o)},h=function(){if(n.config.groupName){var i;t.forEach(n.config.groupName,function(t){t=n._$mdPanel._groups[t];i=t.openPanels.indexOf(n);i>-1&&t.openPanels.splice(i,1)})}},c=function(){var t=n.config.origin;t&&e(t).focus()};n._$q.all([n._backdropRef?n._backdropRef.hide():n,n._animateClose().then(f).then(s).then(h).then(c)["catch"](r)]).then(u,r)})};r.prototype.addClass=function(n,t){if(this._$log.warn("mdPanel: The addClass method is in the process of being deprecated. Full deprecation is scheduled for the AngularJS Material 1.2 release. To achieve the same results, use the panelContainer or panelEl JQLite elements that are referenced in MdPanelRef."),!this.panelContainer)throw new Error("mdPanel: Panel does not exist yet. Call open() or attach().");t||this.panelContainer.hasClass(n)?t&&!this.panelEl.hasClass(n)&&this.panelEl.addClass(n):this.panelContainer.addClass(n)};r.prototype.removeClass=function(n,t){if(this._$log.warn("mdPanel: The removeClass method is in the process of being deprecated. Full deprecation is scheduled for the AngularJS Material 1.2 release. To achieve the same results, use the panelContainer or panelEl JQLite elements that are referenced in MdPanelRef."),!this.panelContainer)throw new Error("mdPanel: Panel does not exist yet. Call open() or attach().");!t&&this.panelContainer.hasClass(n)?this.panelContainer.removeClass(n):t&&this.panelEl.hasClass(n)&&this.panelEl.removeClass(n)};r.prototype.toggleClass=function(n,t){if(this._$log.warn("mdPanel: The toggleClass method is in the process of being deprecated. Full deprecation is scheduled for the AngularJS Material 1.2 release. To achieve the same results, use the panelContainer or panelEl JQLite elements that are referenced in MdPanelRef."),!this.panelContainer)throw new Error("mdPanel: Panel does not exist yet. Call open() or attach().");t?this.panelEl.toggleClass(n):this.panelContainer.toggleClass(n)};r.prototype._compile=function(){var n=this;return n._$mdCompiler.compile(n.config).then(function(i){var u=n.config,r;return u.contentElement?(r=i.element,n._restoreCache.styles=r[0].style.cssText,n._restoreCache.classes=r[0].className,n.panelContainer=n._$mdPanel._wrapContentElement(r),n.panelEl=r):(n.panelContainer=i.link(u.scope),n.panelEl=t.element(n.panelContainer[0].querySelector(".md-panel"))),n._compilerCleanup=i.cleanup,e(n.config.attachTo).append(n.panelContainer),n})};r.prototype._createPanel=function(){var n=this;return this._$q(function(t,i){n.config.locals||(n.config.locals={});n.config.locals.mdPanelRef=n;n._compile().then(function(){n.config.disableParentScroll&&(n._restoreScroll=n._$mdUtil.disableScrollAround(null,n.panelContainer,{disableScrollMask:!0}));n.config.panelClass&&n.panelEl.addClass(n.config.panelClass);n.config.propagateContainerEvents&&(n.panelContainer.css("pointer-events","none"),n.panelEl.css("pointer-events","all"));n._$animate.pin&&n._$animate.pin(n.panelContainer,e(n.config.attachTo));n._configureTrapFocus();n._addStyles().then(function(){t(n)},i)},i)})};r.prototype._addStyles=function(){var n=this;return this._$q(function(t){var i,r;return(n.panelContainer.css("z-index",n.config.zIndex),n.panelEl.css("z-index",n.config.zIndex+1),i=function(){n._setTheming();n.panelEl.removeClass("_md-panel-offscreen");n.panelContainer.addClass(o);t(n)},n.config.fullscreen)?(n.panelEl.addClass("_md-panel-fullscreen"),void i()):(r=n.config.position,r?void n._$rootScope.$$postDigest(function(){n._updatePosition(!0);n._setTheming();t(n)}):void i())})};r.prototype._setTheming=function(){this._$mdTheming(this.panelEl);this._$mdTheming(this.panelContainer)};r.prototype.updatePosition=function(n){if(!this.panelContainer)throw new Error("mdPanel: Panel does not exist yet. Call open() or attach().");this.config.position=n;this._updatePosition()};r.prototype._updatePosition=function(t){var i=this.config.position;i&&(i._setPanelPosition(this.panelEl),t&&(this.panelEl.removeClass("_md-panel-offscreen"),this.panelContainer.addClass(o)),this.panelEl.css(n.absPosition.TOP,i.getTop()),this.panelEl.css(n.absPosition.BOTTOM,i.getBottom()),this.panelEl.css(n.absPosition.LEFT,i.getLeft()),this.panelEl.css(n.absPosition.RIGHT,i.getRight()))};r.prototype._focusOnOpen=function(){if(this.config.focusOnOpen){var n=this;this._$rootScope.$$postDigest(function(){var t=n._$mdUtil.findFocusTarget(n.panelEl)||n.panelEl;t.focus()})}};r.prototype._createBackdrop=function(){var n,t;if(this.config.hasBackdrop&&(this._backdropRef||(n=this._$mdPanel.newPanelAnimation().openFrom(this.config.attachTo).withAnimation({open:"_md-opaque-enter",close:"_md-opaque-leave"}),this.config.animation&&n.duration(this.config.animation._rawDuration),t={animation:n,attachTo:this.config.attachTo,focusOnOpen:!1,panelClass:"_md-panel-backdrop",zIndex:this.config.zIndex-1},this._backdropRef=this._$mdPanel.create(t)),!this._backdropRef.isAttached))return this._backdropRef.attach()};r.prototype._addEventListeners=function(){this._configureEscapeToClose();this._configureClickOutsideToClose();this._configureScrollListener()};r.prototype._removeEventListeners=function(){this._removeListeners&&this._removeListeners.forEach(function(n){n()});this._removeListeners=[]};r.prototype._configureEscapeToClose=function(){if(this.config.escapeToClose){var i=e(this.config.attachTo),t=this,n=function(n){n.keyCode===t._$mdConstant.KEY_CODE.ESCAPE&&(n.stopPropagation(),n.preventDefault(),t.close(r.closeReasons.ESCAPE))};this.panelContainer.on("keydown",n);i.on("keydown",n);this._removeListeners.push(function(){t.panelContainer.off("keydown",n);i.off("keydown",n)})}};r.prototype._configureClickOutsideToClose=function(){if(this.config.clickOutsideToClose){var u,n=this.config.propagateContainerEvents?t.element(document.body):this.panelContainer,f=function(n){u=n.target},i=this,e=function(t){i.config.propagateContainerEvents?u===i.panelEl[0]||i.panelEl[0].contains(u)||i.close():u===n[0]&&t.target===n[0]&&(t.stopPropagation(),t.preventDefault(),i.close(r.closeReasons.CLICK_OUTSIDE))};n.on("mousedown",f);n.on("mouseup",e);this._removeListeners.push(function(){n.off("mousedown",f);n.off("mouseup",e)})}};r.prototype._configureScrollListener=function(){if(!this.config.disableParentScroll){var i=t.bind(this,this._updatePosition),r=this._$$rAF.throttle(i),u=this,n=function(){r()};this._$window.addEventListener("scroll",n,!0);this._removeListeners.push(function(){u._$window.removeEventListener("scroll",n,!0)})}};r.prototype._configureTrapFocus=function(){var n,t;(this.panelEl.attr("tabIndex","-1"),this.config.trapFocus)&&(n=this.panelEl,this._topFocusTrap=h.clone()[0],this._bottomFocusTrap=h.clone()[0],t=function(){n.focus()},this._topFocusTrap.addEventListener("focus",t),this._bottomFocusTrap.addEventListener("focus",t),this._removeListeners.push(this._simpleBind(function(){this._topFocusTrap.removeEventListener("focus",t);this._bottomFocusTrap.removeEventListener("focus",t)},this)),n[0].parentNode.insertBefore(this._topFocusTrap,n[0]),n.after(this._bottomFocusTrap))};r.prototype.updateAnimation=function(n){this.config.animation=n;this._backdropRef&&this._backdropRef.config.animation.duration(n._rawDuration)};r.prototype._animateOpen=function(){var t,n;return(this.panelContainer.addClass("md-panel-is-showing"),t=this.config.animation,!t)?(this.panelContainer.addClass("_md-panel-shown"),this._$q.when(this)):(n=this,this._$q(function(i){var r=n._done(i,n),u=function(){n._$log.warn("mdPanel: MdPanel Animations failed. Showing panel without animating.");r()};t.animateOpen(n.panelEl).then(r,u)}))};r.prototype._animateClose=function(){var t=this.config.animation,n;return t?(n=this,this._$q(function(i){var r=function(){n.panelContainer.removeClass("md-panel-is-showing");i(n)},u=function(){n._$log.warn("mdPanel: MdPanel Animations failed. Hiding panel without animating.");r()};t.animateClose(n.panelEl).then(r,u)})):(this.panelContainer.removeClass("md-panel-is-showing"),this.panelContainer.removeClass("_md-panel-shown"),this._$q.when(this))};r.prototype.registerInterceptor=function(n,i){var r=null,u;if(t.isString(n)?t.isFunction(i)||(r="Interceptor callback must be a function, instead got "+typeof i):r="Interceptor type must be a string, instead got "+typeof n,r)throw new Error("MdPanel: "+r);return u=this._interceptors[n]=this._interceptors[n]||[],u.indexOf(i)===-1&&u.push(i),this};r.prototype.removeInterceptor=function(n,t){var i=this._interceptors[n]?this._interceptors[n].indexOf(t):-1;return i>-1&&this._interceptors[n].splice(i,1),this};r.prototype.removeAllInterceptors=function(n){return n?this._interceptors[n]=[]:this._interceptors=Object.create(null),this};r.prototype._callInterceptors=function(n){var i=this,r=i._$q,u=i._interceptors&&i._interceptors[n]||[];return u.reduceRight(function(n,u){var e=u&&t.isFunction(u.then),f=e?u:null;return n.then(function(){if(!f)try{f=u(i)}catch(n){f=r.reject(n)}return f})},r.resolve(i))};r.prototype._simpleBind=function(n,t){return function(i){return n.apply(t,i)}};r.prototype._done=function(n,t){return function(){n(t)}};r.prototype.addToGroup=function(n){this._$mdPanel._groups[n]||this._$mdPanel.newPanelGroup(n);var t=this._$mdPanel._groups[n],i=t.panels.indexOf(this);i<0&&t.panels.push(this)};r.prototype.removeFromGroup=function(n){if(!this._$mdPanel._groups[n])throw new Error("mdPanel: The group "+n+" does not exist.");var t=this._$mdPanel._groups[n],i=t.panels.indexOf(this);i>-1&&t.panels.splice(i,1)};r.closeReasons={CLICK_OUTSIDE:"clickOutsideToClose",ESCAPE:"escapeToClose"};n.xPosition={CENTER:"center",ALIGN_START:"align-start",ALIGN_END:"align-end",OFFSET_START:"offset-start",OFFSET_END:"offset-end"};n.yPosition={CENTER:"center",ALIGN_TOPS:"align-tops",ALIGN_BOTTOMS:"align-bottoms",ABOVE:"above",BELOW:"below"};n.absPosition={TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"};n.viewportMargin=8;n.prototype.absolute=function(){return this._absolute=!0,this};n.prototype._setPosition=function(i,r){if(i===n.absPosition.RIGHT||i===n.absPosition.LEFT)this._left=this._right="";else{if(i!==n.absPosition.BOTTOM&&i!==n.absPosition.TOP){var u=Object.keys(n.absPosition).join().toLowerCase();throw new Error("mdPanel: Position must be one of "+u+".");}this._top=this._bottom=""}return this["_"+i]=t.isString(r)?r:"0",this};n.prototype.top=function(t){return this._setPosition(n.absPosition.TOP,t)};n.prototype.bottom=function(t){return this._setPosition(n.absPosition.BOTTOM,t)};n.prototype.start=function(t){var i=this._isRTL?n.absPosition.RIGHT:n.absPosition.LEFT;return this._setPosition(i,t)};n.prototype.end=function(t){var i=this._isRTL?n.absPosition.LEFT:n.absPosition.RIGHT;return this._setPosition(i,t)};n.prototype.left=function(t){return this._setPosition(n.absPosition.LEFT,t)};n.prototype.right=function(t){return this._setPosition(n.absPosition.RIGHT,t)};n.prototype.centerHorizontally=function(){return this._left="50%",this._right="",this._translateX=["-50%"],this};n.prototype.centerVertically=function(){return this._top="50%",this._bottom="",this._translateY=["-50%"],this};n.prototype.center=function(){return this.centerHorizontally().centerVertically()};n.prototype.relativeTo=function(n){return this._absolute=!1,this._relativeToEl=e(n),this};n.prototype.addPanelPosition=function(n,t){if(!this._relativeToEl)throw new Error("mdPanel: addPanelPosition can only be used with relative positioning. Set relativeTo first.");return this._validateXPosition(n),this._validateYPosition(t),this._positions.push({x:n,y:t}),this};n.prototype._validateYPosition=function(t){var i;if(null!=t){for(var r,e=Object.keys(n.yPosition),u=[],f=0;r=e[f];f++)if(i=n.yPosition[r],u.push(i),i===t)return;throw new Error("mdPanel: Panel y position only accepts the following values:\n"+u.join(" | "));}};n.prototype._validateXPosition=function(t){var i;if(null!=t){for(var r,e=Object.keys(n.xPosition),u=[],f=0;r=e[f];f++)if(i=n.xPosition[r],u.push(i),i===t)return;throw new Error("mdPanel: Panel x Position only accepts the following values:\n"+u.join(" | "));}};n.prototype.withOffsetX=function(n){return this._translateX.push(n),this};n.prototype.withOffsetY=function(n){return this._translateY.push(n),this};n.prototype.getTop=function(){return this._top};n.prototype.getBottom=function(){return this._bottom};n.prototype.getLeft=function(){return this._left};n.prototype.getRight=function(){return this._right};n.prototype.getTransform=function(){var n=this._reduceTranslateValues("translateX",this._translateX),t=this._reduceTranslateValues("translateY",this._translateY);return(n+" "+t).trim()};n.prototype._setTransform=function(n){return n.css(this._$mdConstant.CSS.TRANSFORM,this.getTransform())};n.prototype._isOnscreen=function(n){var t=parseInt(this.getLeft()),i=parseInt(this.getTop()),u,r,f,e;return(this._translateX.length||this._translateY.length)&&(u=this._$mdConstant.CSS.TRANSFORM,r=p(n,u),t+=r.x,i+=r.y),f=t+n[0].offsetWidth,e=i+n[0].offsetHeight,t>=0&&i>=0&&e<=this._$window.innerHeight&&f<=this._$window.innerWidth};n.prototype.getActualPosition=function(){return this._actualPosition};n.prototype._reduceTranslateValues=function(n,i){return i.map(function(i){var r=t.isFunction(i)?i(this):i;return n+"("+r+")"},this).join(" ")};n.prototype._setPanelPosition=function(n){if(n.removeClass("_md-panel-position-adjusted"),this._absolute)return void this._setTransform(n);if(this._actualPosition)return this._calculatePanelPosition(n,this._actualPosition),this._setTransform(n),void this._constrainToViewport(n);for(var t=0;t<this._positions.length;t++)if(this._actualPosition=this._positions[t],this._calculatePanelPosition(n,this._actualPosition),this._setTransform(n),this._isOnscreen(n))return;this._constrainToViewport(n)};n.prototype._constrainToViewport=function(t){var i=n.viewportMargin,h=this._top,c=this._left;if(this.getTop()){var r=parseInt(this.getTop()),f=t[0].offsetHeight+r,e=this._$window.innerHeight;r<i?this._top=i+"px":f>e&&(this._top=r-(f-e+i)+"px")}if(this.getLeft()){var u=parseInt(this.getLeft()),o=t[0].offsetWidth+u,s=this._$window.innerWidth;u<i?this._left=i+"px":o>s&&(this._left=u-(o-s+i)+"px")}t.toggleClass("_md-panel-position-adjusted",this._top!==h||this._left!==c)};n.prototype._reverseXPosition=function(t){if(t===n.xPosition.CENTER)return t;var i="start",r="end";return t.indexOf(i)>-1?t.replace(i,r):t.replace(r,i)};n.prototype._bidi=function(n){return this._isRTL?this._reverseXPosition(n):n};n.prototype._calculatePanelPosition=function(t,i){var s=t[0].getBoundingClientRect(),u=s.width,f=s.height,r=this._relativeToEl[0].getBoundingClientRect(),e=r.left,h=r.right,v=r.width,c,a;switch(this._bidi(i.x)){case n.xPosition.OFFSET_START:this._left=e-u+"px";break;case n.xPosition.ALIGN_END:this._left=h-u+"px";break;case n.xPosition.CENTER:c=e+.5*v-.5*u;this._left=c+"px";break;case n.xPosition.ALIGN_START:this._left=e+"px";break;case n.xPosition.OFFSET_END:this._left=h+"px"}var o=r.top,l=r.bottom,y=r.height;switch(i.y){case n.yPosition.ABOVE:this._top=o-f+"px";break;case n.yPosition.ALIGN_BOTTOMS:this._top=l-f+"px";break;case n.yPosition.CENTER:a=o+.5*y-.5*f;this._top=a+"px";break;case n.yPosition.ALIGN_TOPS:this._top=o+"px";break;case n.yPosition.BELOW:this._top=l+"px"}};u.animation={SLIDE:"md-panel-animate-slide",SCALE:"md-panel-animate-scale",FADE:"md-panel-animate-fade"};u.prototype.openFrom=function(n){return n=n.target?n.target:n,this._openFrom=this._getPanelAnimationTarget(n),this._closeTo||(this._closeTo=this._openFrom),this};u.prototype.closeTo=function(n){return this._closeTo=this._getPanelAnimationTarget(n),this};u.prototype.duration=function(n){function i(n){if(t.isNumber(n))return n/1e3}return n&&(t.isNumber(n)?this._openDuration=this._closeDuration=i(n):t.isObject(n)&&(this._openDuration=i(n.open),this._closeDuration=i(n.close))),this._rawDuration=n,this};u.prototype._getPanelAnimationTarget=function(n){return t.isDefined(n.top)||t.isDefined(n.left)?{element:i,bounds:{top:n.top||0,left:n.left||0}}:this._getBoundingClientRect(e(n))};u.prototype.withAnimation=function(n){return this._animationClass=n,this};u.prototype.animateOpen=function(n){var i=this._$mdUtil.dom.animator,o,s;this._fixBounds(n);var r={},f=n[0].style.transform||"",e=i.toTransformCss(f),h=i.toTransformCss(f);switch(this._animationClass){case u.animation.SLIDE:n.css("opacity","1");r={transitionInClass:"_md-panel-animate-enter"};o=i.calculateSlideToOrigin(n,this._openFrom)||"";e=i.toTransformCss(o+" "+f);break;case u.animation.SCALE:r={transitionInClass:"_md-panel-animate-enter"};s=i.calculateZoomToOrigin(n,this._openFrom)||"";e=i.toTransformCss(s+" "+f);break;case u.animation.FADE:r={transitionInClass:"_md-panel-animate-enter"};break;default:r=t.isString(this._animationClass)?{transitionInClass:this._animationClass}:{transitionInClass:this._animationClass.open,transitionOutClass:this._animationClass.close}}return r.duration=this._openDuration,i.translate3d(n,e,h,r)};u.prototype.animateClose=function(n){var i=this._$mdUtil.dom.animator,r={},f=n[0].style.transform||"",h=i.toTransformCss(f),e=i.toTransformCss(f),o,s;switch(this._animationClass){case u.animation.SLIDE:n.css("opacity","1");r={transitionInClass:"_md-panel-animate-leave"};o=i.calculateSlideToOrigin(n,this._closeTo)||"";e=i.toTransformCss(o+" "+f);break;case u.animation.SCALE:r={transitionInClass:"_md-panel-animate-scale-out _md-panel-animate-leave"};s=i.calculateZoomToOrigin(n,this._closeTo)||"";e=i.toTransformCss(s+" "+f);break;case u.animation.FADE:r={transitionInClass:"_md-panel-animate-fade-out _md-panel-animate-leave"};break;default:r=t.isString(this._animationClass)?{transitionOutClass:this._animationClass}:{transitionInClass:this._animationClass.close,transitionOutClass:this._animationClass.open}}return r.duration=this._closeDuration,i.translate3d(n,h,e,r)};u.prototype._fixBounds=function(n){var t=n[0].offsetWidth,i=n[0].offsetHeight;this._openFrom&&null==this._openFrom.bounds.height&&(this._openFrom.bounds.height=i);this._openFrom&&null==this._openFrom.bounds.width&&(this._openFrom.bounds.width=t);this._closeTo&&null==this._closeTo.bounds.height&&(this._closeTo.bounds.height=i);this._closeTo&&null==this._closeTo.bounds.width&&(this._closeTo.bounds.width=t)};u.prototype._getBoundingClientRect=function(n){if(n instanceof t.element)return{element:n,bounds:n[0].getBoundingClientRect()}}}(),function(){t.module("material.components.progressCircular",["material.core"])}(),function(){function n(n,i){function h(n){return n.attr("aria-valuemin",0),n.attr("aria-valuemax",100),n.attr("role","progressbar"),c}function c(h,c,l){function b(){l.$observe("value",function(n){var t=e(n);c.attr("aria-valuenow",t);p()!=f&&w(nt,t)});l.$observe("mdBufferValue",function(n){w(g,e(n))});l.$observe("disabled",function(n){v=n===!0||n===!1?!!n:t.isDefined(n);c.toggleClass(s,v);y.toggleClass(a,!v)});l.$observe("mdMode",function(n){switch(a&&y.removeClass(a),n){case f:case o:case u:case r:y.addClass(a="md-mode-"+n);break;default:y.addClass(a="md-mode-"+r)}})}function k(){if(t.isUndefined(l.mdMode)){var i=t.isDefined(l.value),n=i?u:r;c.attr("md-mode",n);l.mdMode=n}}function p(){var n=(l.mdMode||"").trim();if(n)switch(n){case u:case r:case o:case f:break;default:n=r}return n}function w(n,r){if(!v&&p()){var u=i.supplant("translateX({0}%) scale({1},1)",[(r-100)/2,r/100]),f=d({transform:u});t.element(n).css(f)}}n(c);var a,v=l.hasOwnProperty("disabled"),d=i.dom.animator.toCss,g=t.element(c[0].querySelector(".md-bar1")),nt=t.element(c[0].querySelector(".md-bar2")),y=t.element(c[0].querySelector(".md-container"));c.attr("md-mode",p()).toggleClass(s,v);k();b()}function e(n){return Math.max(0,Math.min(n||0,100))}var u="determinate",r="indeterminate",o="buffer",f="query",s="_md-progress-linear-disabled";return{restrict:"E",template:'<div class="md-container"><div class="md-dashed"><\/div><div class="md-bar md-bar1"><\/div><div class="md-bar md-bar2"><\/div><\/div>',compile:h}}n.$inject=["$mdTheming","$mdUtil","$log"];t.module("material.components.progressLinear",["material.core"]).directive("mdProgressLinear",n)}(),function(){function n(n,i,r,u){function o(f,e,o,s){function c(){e.hasClass("md-focused")||e.addClass("md-focused")}function l(r){var f=r.which||r.keyCode,u;if(f==i.KEY_CODE.ENTER||r.currentTarget==r.target)switch(f){case i.KEY_CODE.LEFT_ARROW:case i.KEY_CODE.UP_ARROW:r.preventDefault();h.selectPrevious();c();break;case i.KEY_CODE.RIGHT_ARROW:case i.KEY_CODE.DOWN_ARROW:r.preventDefault();h.selectNext();c();break;case i.KEY_CODE.ENTER:u=t.element(n.getClosest(e[0],"form"));u.length>0&&u.triggerHandler("submit")}}e.addClass("_md");r(e);var h=s[0],a=s[1]||n.fakeNgModel();h.init(a);f.mouseActive=!1;e.attr({role:"radiogroup",tabIndex:e.attr("tabindex")||"0"}).on("keydown",l).on("mousedown",function(){f.mouseActive=!0;u(function(){f.mouseActive=!1},100)}).on("focus",function(){f.mouseActive===!1&&h.$element.addClass("md-focused")}).on("blur",function(){h.$element.removeClass("md-focused")})}function f(n){this._radioButtonRenderFns=[];this.$element=n}function s(){return{init:function(n){this._ngModelCtrl=n;this._ngModelCtrl.$render=t.bind(this,this.render)},add:function(n){this._radioButtonRenderFns.push(n)},remove:function(n){var t=this._radioButtonRenderFns.indexOf(n);t!==-1&&this._radioButtonRenderFns.splice(t,1)},render:function(){this._radioButtonRenderFns.forEach(function(n){n()})},setViewValue:function(n,t){this._ngModelCtrl.$setViewValue(n,t);this.render()},getViewValue:function(){return this._ngModelCtrl.$viewValue},selectNext:function(){return e(this.$element,1)},selectPrevious:function(){return e(this.$element,-1)},setActiveDescendant:function(n){this.$element.attr("aria-activedescendant",n)},isDisabled:function(){return this.$element[0].hasAttribute("disabled")}}}function e(i,r){var u=n.iterator(i[0].querySelectorAll("md-radio-button"),!0);if(u.count()){var f=function(n){return!t.element(n).attr("disabled")},e=i[0].querySelector("md-radio-button.md-checked"),o=u[r<0?"previous":"next"](e,f)||u.first();t.element(o).triggerHandler("click")}}return f.prototype=s(),{restrict:"E",controller:["$element",f],require:["mdRadioGroup","?ngModel"],link:{pre:o}}}function i(n,t,i){function u(u,f,e,o){function h(){if(!o)throw"RadioButton: No RadioGroupController could be found.";o.add(s);e.$observe("value",s);f.on("click",l).on("$destroy",function(){o.remove(s)})}function l(n){f[0].hasAttribute("disabled")||o.isDisabled()||u.$apply(function(){o.setViewValue(e.value,n&&n.type)})}function s(){var n=o.getViewValue()==e.value;n!==c&&("md-radio-group"!==f[0].parentNode.nodeName.toLowerCase()&&f.parent().toggleClass(r,n),n&&o.setActiveDescendant(f.attr("id")),c=n,f.attr("aria-checked",n).toggleClass(r,n))}function a(i){i.attr({id:e.id||"radio_"+t.nextUid(),role:"radio","aria-checked":"false"});n.expectWithText(i,"aria-label")}var c;i(f);a(f,u);e.ngValue?t.nextTick(h,!1):h()}var r="md-checked";return{restrict:"E",require:"^mdRadioGroup",transclude:!0,template:'<div class="md-container" md-ink-ripple md-ink-ripple-checkbox><div class="md-off"><\/div><div class="md-on"><\/div><\/div><div ng-transclude class="md-label"><\/div>',link:u}}n.$inject=["$mdUtil","$mdConstant","$mdTheming","$timeout"];i.$inject=["$mdAria","$mdUtil","$mdTheming"];t.module("material.components.radioButton",["material.core"]).directive("mdRadioGroup",n).directive("mdRadioButton",i)}(),function(){function u(n,r,u,f,e,o,h){function l(c,l){var a=t.element("<md-select-value><span><\/span><\/md-select-value>"),y,v,w;a.append('<span class="md-select-icon" aria-hidden="true"><\/span>');a.addClass("md-select-value");a[0].hasAttribute("id")||a.attr("id","select_value_label_"+r.nextUid());y=c.find("md-content");(y.length||c.append(t.element("<md-content>").append(c.contents())),y.attr("role","presentation"),l.mdOnOpen&&(c.find("md-content").prepend(t.element('<div> <md-progress-circular md-mode="indeterminate" ng-if="$$loadingAsyncDone === false" md-diameter="25px"><\/md-progress-circular><\/div>')),c.find("md-option").attr("ng-show","$$loadingAsyncDone")),l.name)&&(v=t.element('<select class="md-visually-hidden">'),v.attr({name:l.name,"aria-hidden":"true",tabindex:"-1"}),w=c.find("md-option"),t.forEach(w,function(n){var i=t.element("<option>"+n.innerHTML+"<\/option>");n.hasAttribute("ng-value")?i.attr("ng-value",n.getAttribute("ng-value")):n.hasAttribute("value")&&i.attr("value",n.getAttribute("value"));v.append(i)}),v.append('<option ng-value="'+l.ngModel+'" selected><\/option>'),c.parent().append(v));var b=r.parseAttributeBoolean(l.multiple),k=b?"multiple":"",p='<div class="md-select-menu-container" aria-hidden="true" role="presentation"><md-select-menu role="presentation" {0}>{1}<\/md-select-menu><\/div>';return p=r.supplant(p,[k,c.html()]),c.empty().append(a),c.append(p),l.tabindex||l.$set("tabindex",0),function(c,l,a,v){function wt(){var n=l.attr("aria-label")||l.attr("placeholder");!n&&y&&y.label&&(n=y.label.text());it=n;e.expect(l,"aria-label",n)}function nt(){k&&(p=p||k.find("md-select-menu").controller("mdSelectMenu"),d.setLabelText(p.selectedLabels()))}function et(){if(it){var n=p.selectedLabels({mode:"aria"});l.attr("aria-label",n.length?it+": "+n:it)}}function ot(){y&&y.setHasValue(p.selectedLabels().length>0||(l[0].validity||{}).badInput)}function bt(){if(k=t.element(l[0].querySelector(".md-select-menu-container")),g=c,a.mdContainerClass){var n=k[0].getAttribute("class")+" "+a.mdContainerClass;k[0].setAttribute("class",n)}p=k.find("md-select-menu").controller("mdSelectMenu");p.init(w,a.ngModel);l.on("$destroy",function(){k.remove()})}function st(n){var i,r;if(u.isNavigationKey(n))n.preventDefault(),tt(n);else if(s(n,u)){if(n.preventDefault(),i=p.optNodeForKeyboardSearch(n),!i||i.hasAttribute("disabled"))return;r=t.element(i).controller("mdOption");p.isMultiple||p.deselect(Object.keys(p.selected)[0]);p.select(r.hashKey,r.value);p.refreshViewValue()}}function tt(){g._mdSelectIsOpen=!0;l.attr("aria-expanded","true");n.show({scope:g,preserveScope:!0,skipCompile:!0,element:k,target:l[0],selectCtrl:d,preserveElement:!0,hasBackdrop:!0,loadingAsync:!!a.mdOnOpen&&(c.$eval(a.mdOnOpen)||!0)})["finally"](function(){g._mdSelectIsOpen=!1;l.focus();l.attr("aria-expanded","false");w.$setTouched()})}var ht,it,vt=!0,y=v[0],d=v[1],w=v[2],rt=v[3],ct=l.find("md-select-value"),kt=t.isDefined(a.readonly),yt=r.parseAttributeBoolean(a.mdNoAsterisk),pt,k,g,p,ut,lt,ft,at;if(yt&&l.addClass("md-no-asterisk"),y){if(pt=y.isErrorGetter||function(){return w.$invalid&&(w.$touched||rt&&rt.$submitted)},y.input&&l.find("md-select-header").find("input")[0]!==y.input[0])throw new Error("<md-input-container> can only have *one* child <input>, <textarea> or <select> element!");y.input=l;y.label||e.expect(l,"aria-label",l.attr("placeholder"));c.$watch(pt,y.setInvalid)}bt();f(l);rt&&t.isDefined(a.multiple)&&r.nextTick(function(){var n=w.$modelValue||w.$viewValue;n&&rt.$setPristine()});ut=w.$render;w.$render=function(){ut();nt();et();ot()};a.$observe("placeholder",w.$render);y&&y.label&&a.$observe("required",function(n){y.label.toggleClass("md-required",n&&!yt)});d.setLabelText=function(n){var t,r,i;if(d.setIsPlaceholder(!n),t=!1,a.mdSelectedText&&a.mdSelectedHtml)throw Error("md-select cannot have both `md-selected-text` and `md-selected-html`");a.mdSelectedText||a.mdSelectedHtml?(n=o(a.mdSelectedText||a.mdSelectedHtml)(c),t=!0):n||(r=a.placeholder||(y&&y.label?y.label.text():""),n=r||"",t=!0);i=ct.children().eq(0);a.mdSelectedHtml?i.html(h.getTrustedHtml(n)):t?i.text(n):i.html(n)};d.setIsPlaceholder=function(n){n?(ct.addClass("md-select-placeholder"),y&&y.label&&y.label.addClass("md-placeholder")):(ct.removeClass("md-select-placeholder"),y&&y.label&&y.label.removeClass("md-placeholder"))};kt||(l.on("focus",function(){y&&y.setFocused(!0)}),l.on("blur",function(n){vt&&(vt=!1,g._mdSelectIsOpen&&n.stopImmediatePropagation());g._mdSelectIsOpen||(y&&y.setFocused(!1),ot())}));d.triggerClose=function(){o(a.mdOnClose)(c)};c.$$postDigest(function(){wt();nt();et()});c.$watch(function(){return p.selectedLabels()},nt);a.$observe("ngMultiple",function(n){lt&&lt();var t=o(n);lt=c.$watch(function(){return t(c)},function(n,t){n===i&&t===i||(n?l.attr("multiple","multiple"):l.removeAttr("multiple"),l.attr("aria-multiselectable",n?"true":"false"),k&&(p.setMultiple(n),ut=w.$render,w.$render=function(){ut();nt();et();ot()},w.$render()))})});a.$observe("disabled",function(n){t.isString(n)&&(n=!0);ht!==i&&ht===n||(ht=n,n?l.attr({"aria-disabled":"true"}).removeAttr("tabindex").off("click",tt).off("keydown",st):l.attr({tabindex:a.tabindex,"aria-disabled":"false"}).on("click",tt).on("keydown",st))});a.hasOwnProperty("disabled")||a.hasOwnProperty("ngDisabled")||(l.attr({"aria-disabled":"false"}),l.on("click",tt),l.on("keydown",st));ft={role:"listbox","aria-expanded":"false","aria-multiselectable":b&&!a.ngMultiple?"true":"false"};l[0].hasAttribute("id")||(ft.id="select_"+r.nextUid());at="select_container_"+r.nextUid();k.attr("id",at);l.find("md-select-menu").length||(ft["aria-owns"]=at);l.attr(ft);c.$on("$destroy",function(){n.destroy()["finally"](function(){y&&(y.setFocused(!1),y.setHasValue(!1),y.input=null);w.$setTouched()})})}}var c=u.KEY_CODE;return[c.SPACE,c.ENTER,c.UP_ARROW,c.DOWN_ARROW],{restrict:"E",require:["^?mdInputContainer","mdSelect","ngModel","?^form"],compile:l,controller:function(){}}}function f(n,r,u,f){function o(n,i,u,e){function h(n){13!=n.keyCode&&32!=n.keyCode||s(n)}function s(i){var f=r.getClosest(i.target,"md-option"),e=f&&t.element(f).data("$mdOptionController"),u,s;if(f&&e){if(f.hasAttribute("disabled"))return i.stopImmediatePropagation(),!1;u=o.hashGetter(e.value);s=t.isDefined(o.selected[u]);n.$apply(function(){o.isMultiple?s?o.deselect(u):o.select(u,e.value):s||(o.deselect(Object.keys(o.selected)[0]),o.select(u,e.value));o.refreshViewValue()})}}var o=e[0];i.addClass("_md");f(i);i.on("click",s);i.on("keypress",h)}function e(f,e,o){function y(){var n=s.ngModel.$modelValue||s.ngModel.$viewValue||[];if(t.isArray(n)){var r=Object.keys(s.selected),i=n.map(s.hashGetter),u=r.filter(function(n){return i.indexOf(n)===-1});u.forEach(s.deselect);i.forEach(function(t,i){s.select(t,n[i])})}}function k(){var n=s.ngModel.$viewValue||s.ngModel.$modelValue;Object.keys(s.selected).forEach(s.deselect);s.select(s.hashGetter(n),n)}var s=this,p,w,a,h,c,v,b;s.isMultiple=t.isDefined(e.multiple);s.selected={};s.options={};f.$watchCollection(function(){return s.options},function(){s.ngModel.$render()});s.setMultiple=function(n){function r(n,i){return t.isArray(n||i||[])}var i=s.ngModel;w=w||i.$isEmpty;s.isMultiple=n;p&&p();s.isMultiple?(i.$validators["md-multiple"]=r,i.$render=y,f.$watchCollection(s.modelBinding,function(n){r(n)&&y(n);s.ngModel.$setPristine()}),i.$isEmpty=function(n){return!n||0===n.length}):(delete i.$validators["md-multiple"],i.$render=k)};v="";b=300;s.optNodeForKeyboardSearch=function(n){var f,e,r;for(a&&clearTimeout(a),a=setTimeout(function(){a=i;v="";c=i;h=i},b),f=n.keyCode-(u.isNumPadKey(n)?48:0),v+=String.fromCharCode(f),e=new RegExp("^"+v,"i"),h||(h=o.find("md-option"),c=new Array(h.length),t.forEach(h,function(n,t){c[t]=n.textContent.trim()})),r=0;r<c.length;++r)if(e.test(c[r]))return h[r]};s.init=function(i,u){var e,o,h;s.ngModel=i;s.modelBinding=u;s.ngModel.$isEmpty=function(n){return!s.options[s.hashGetter(n)]};e=r.getModelOption(i,"trackBy");e?(o={},h=n(e),s.hashGetter=function(n,t){return o.$value=n,h(t||f,o)}):s.hashGetter=function(n){return t.isObject(n)?"object_"+(n.$$mdSelectId||(n.$$mdSelectId=++l)):n};s.setMultiple(s.isMultiple)};s.selectedLabels=function(n){var t,i,u;return(n=n||{},t=n.mode||"html",i=r.nodesToArray(o[0].querySelectorAll("md-option[selected]")),i.length)?("html"==t?u=function(n){var t,i,r;return n.hasAttribute("md-option-empty")?"":(t=n.innerHTML,i=n.querySelector(".md-ripple-container"),i&&(t=t.replace(i.outerHTML,"")),r=n.querySelector(".md-container"),r&&(t=t.replace(r.outerHTML,"")),t)}:"aria"==t&&(u=function(n){return n.hasAttribute("aria-label")?n.getAttribute("aria-label"):n.textContent}),r.uniq(i.map(u)).join(", ")):""};s.select=function(n,t){var i=s.options[n];i&&i.setSelected(!0);s.selected[n]=t};s.deselect=function(n){var t=s.options[n];t&&t.setSelected(!1);delete s.selected[n]};s.addOption=function(n,i){if(t.isDefined(s.options[n]))throw new Error('Duplicate md-option values are not allowed in a select. Duplicate value "'+i.value+'" found.');s.options[n]=i;t.isDefined(s.selected[n])&&(s.select(n,i.value),t.isDefined(s.ngModel.$modelValue)&&s.hashGetter(s.ngModel.$modelValue)===n&&s.ngModel.$validate(),s.refreshViewValue())};s.removeOption=function(n){delete s.options[n]};s.refreshViewValue=function(){var f,n=[],i;for(i in s.selected)(f=s.options[i])?n.push(f.value):n.push(s.selected[i]);var o=r.getModelOption(s.ngModel,"trackBy"),u=s.isMultiple?n:n[0],e=s.ngModel.$modelValue;(o?t.equals(e,u):e+""===u)||(s.ngModel.$setViewValue(u),s.ngModel.$render())}}return e.$inject=["$scope","$attrs","$element"],{restrict:"E",require:["mdSelectMenu"],scope:!1,controller:e,link:{pre:o}}}function e(n,i,r){function f(n,i){return n.append(t.element('<div class="md-text">').append(n.contents())),n.attr("tabindex",i.tabindex||"0"),e(i)||n.attr("md-option-empty",""),o}function e(n){var t=n.value,i=n.ngValue;return t||i}function o(u,f,e,o){function c(n,t,i){if(!s.hashGetter)return void(i||u.$$postDigest(function(){c(n,t,!0)}));var f=s.hashGetter(t,u),r=s.hashGetter(n,u);h.hashKey=r;h.value=n;s.removeOption(f,h);s.addOption(r,h)}function l(){var n={role:"option","aria-selected":"false"};f[0].hasAttribute("id")||(n.id="select_option_"+i.nextUid());f.attr(n)}var h=o[0],s=o[1];r(f);s.isMultiple&&(f.addClass("md-checkbox-enabled"),f.prepend(a.clone()));t.isDefined(e.ngValue)?u.$watch(e.ngValue,c):t.isDefined(e.value)?c(e.value):u.$watch(function(){return f.text().trim()},c);e.$observe("disabled",function(n){n?f.attr("tabindex","-1"):f.attr("tabindex","0")});u.$$postDigest(function(){e.$observe("selected",function(n){t.isDefined(n)&&("string"==typeof n&&(n=!0),n?(s.isMultiple||s.deselect(Object.keys(s.selected)[0]),s.select(h.hashKey,h.value)):s.deselect(h.hashKey),s.refreshViewValue())})});n.attach(u,f);l();u.$on("$destroy",function(){s.removeOption(h.hashKey,h)})}function u(n){this.selected=!1;this.setSelected=function(t){t&&!this.selected?n.attr({selected:"selected","aria-selected":"true"}):!t&&this.selected&&(n.removeAttr("selected"),n.attr("aria-selected","false"));this.selected=t}}return u.$inject=["$element"],{restrict:"E",require:["mdOption","^^mdSelectMenu"],controller:u,compile:f}}function h(){function n(n,i){function r(){return n.parent().find("md-select-header").length}function u(){var r=n.find("label");r.length||(r=t.element("<label>"),n.prepend(r));r.addClass("md-container-ignore");r.attr("aria-hidden","true");i.label&&r.text(i.label)}r()||u()}return{restrict:"E",compile:n}}function c(){return{restrict:"E"}}function o(u){function f(u,f,l,a,v,y,p,w,b){function nt(n,t,i){function f(){return r=p(t,{addClass:"md-leave"}),r.start()}function u(){e();t.removeClass("md-active").attr("aria-hidden","true").css("display","none");t.parent().find("md-select-value").removeAttr("aria-hidden");it(i);!i.$destroy&&i.restoreFocus&&i.target.focus()}var r=null,e=n.$on("$destroy",function(){r.end()});return i=i||{},i.cleanupInteraction(),i.cleanupResizing(),i.hideBackdrop(),i.$destroy===!0?u():f().then(u)}function tt(n,r,e){function h(n,t,i){return i.parent!==t.parent()&&t.parent().attr("aria-owns",t.attr("id")),t.parent().find("md-select-value").attr("aria-hidden","true"),i.parent.append(t),v(function(n,i){try{p(t,{removeClass:"md-leave",duration:0}).start().then(o).then(n)}catch(r){i(r)}})}function o(){return v(function(t){if(e.isRemoved)return v.reject(!1);var i=g(n,r,e);i.container.element.css(d.toCss(i.container.styles));i.dropDown.element.css(d.toCss(i.dropDown.styles));y(function(){r.addClass("md-active");i.dropDown.element.css(d.toCss({transform:""}));t()})})}function c(n,t,i){return i.disableParentScroll&&!l.getClosest(i.target,"MD-DIALOG")?i.restoreScroll=l.disableScrollAround(i.element,i.parent):i.disableParentScroll=!1,i.hasBackdrop&&(i.backdrop=l.createBackdrop(n,"md-select-backdrop md-click-catcher"),w.enter(i.backdrop,b[0].body,null,{duration:0})),function(){i.backdrop&&i.backdrop.remove();i.disableParentScroll&&i.restoreScroll();delete i.restoreScroll}}function nt(n){n&&!n.hasAttribute("disabled")&&n.focus()}function tt(n,i){var u=r.find("md-select-menu");if(!i.target)throw new Error(l.supplant(rt,[i.target]));t.extend(i,{isRemoved:!1,target:t.element(i.target),parent:t.element(i.parent),selectEl:u,contentEl:r.find("md-content"),optionNodes:u[0].getElementsByTagName("md-option")})}function it(){var i=function(n,t,i){return function(){if(!i.isRemoved){var r=g(n,t,i),u=r.container,f=r.dropDown;u.element.css(d.toCss(u.styles));f.element.css(d.toCss(f.styles))}}}(n,r,e),u=t.element(a);return u.on("resize",i),u.on("orientationchange",i),function(){u.off("resize",i);u.off("orientationchange",i)}}function ut(){e.loadingAsync&&!e.isRemoved&&(n.$$loadingAsyncDone=!1,v.when(e.loadingAsync).then(function(){n.$$loadingAsyncDone=!0;delete e.loadingAsync}).then(function(){y(o)}))}function ft(){function o(n){n.preventDefault();n.stopPropagation();e.restoreFocus=!1;l.nextTick(u.hide,!0)}function h(i){var o,r;switch(i.preventDefault(),i.stopPropagation(),i.keyCode){case k.UP_ARROW:return y();case k.DOWN_ARROW:return v();case k.SPACE:case k.ENTER:o=l.getClosest(i.target,"md-option");o&&(n.triggerHandler({type:"click",target:o}),i.preventDefault());t(i);break;case k.TAB:case k.ESCAPE:i.stopPropagation();i.preventDefault();e.restoreFocus=!0;l.nextTick(u.hide,!0);break;default:s(i,f)&&(r=n.controller("mdSelectMenu").optNodeForKeyboardSearch(i),e.focusedNode=r||e.focusedNode,r&&r.focus())}}function c(n){var r,u=l.nodesToArray(e.optionNodes),t=u.indexOf(e.focusedNode);do t===-1?t=0:"next"===n&&t<u.length-1?t++:"prev"===n&&t>0&&t--,r=u[t],r.hasAttribute("disabled")&&(r=i);while(!r&&t<u.length-1&&t>0);r&&r.focus();e.focusedNode=r}function v(){c("next")}function y(){c("prev")}function t(t){function r(){var i=!1,n,r,u;return t&&t.currentTarget.children.length>0&&(n=t.currentTarget.children[0],r=n.scrollHeight>n.clientHeight,r&&n.children.length>0&&(u=t.pageX-t.currentTarget.getBoundingClientRect().left,u>n.querySelector("md-option").offsetWidth&&(i=!0))),i}if(!(t&&"click"==t.type&&t.currentTarget!=n[0]||r())){var i=l.getClosest(t.target,"md-option");i&&i.hasAttribute&&!i.hasAttribute("disabled")&&(t.preventDefault(),t.stopPropagation(),a.isMultiple||(e.restoreFocus=!0,l.nextTick(function(){u.hide(a.ngModel.$viewValue)},!0)))}}if(!e.isRemoved){var n=e.selectEl,a=n.controller("mdSelectMenu")||{};return r.addClass("md-clickable"),e.backdrop&&e.backdrop.on("click",o),n.on("keydown",h),n.on("click",t),function(){e.backdrop&&e.backdrop.off("click",o);n.off("keydown",h);n.off("click",t);r.removeClass("md-clickable");e.isRemoved=!0}}}return ut(),tt(n,e),e.hideBackdrop=c(n,r,e),h(n,r,e).then(function(n){return r.attr("aria-hidden","false"),e.alreadyOpen=!0,e.cleanupInteraction=ft(),e.cleanupResizing=it(),nt(e.focusedNode),n},e.hideBackdrop)}function it(n){var t=n.selectCtrl,i;t&&(i=n.selectEl.controller("mdSelectMenu"),t.setLabelText(i?i.selectedLabels():""),t.triggerClose())}function g(i,u,f){var w,ft=u[0],ct=f.target[0].children[0],kt=b[0].body,k=f.selectEl[0],s=f.contentEl[0],it=kt.getBoundingClientRect(),v=ct.getBoundingClientRect(),lt=!1,p={left:it.left+r,top:r,bottom:it.height-r,right:it.width-r-(l.floatingScrollbars()?16:0)},rt={top:v.top-p.top,left:v.left-p.left,right:p.right-(v.left+v.width),bottom:p.bottom-(v.top+v.height)},et=it.width-2*r,at=k.querySelector("md-option[selected]"),ot=k.getElementsByTagName("md-option"),vt=k.getElementsByTagName("md-optgroup"),yt=c(u,s),dt=o(f.loadingAsync),nt,d,y,st,g,ht,tt,ut,pt,wt;w=dt?s.firstElementChild||s:at?at:vt.length?vt[0]:ot.length?ot[0]:s.firstElementChild||s;s.offsetWidth>et?s.style["max-width"]=et+"px":s.style.maxWidth=null;lt&&(s.style["min-width"]=v.width+"px");yt&&k.classList.add("md-overflow");nt=w;"MD-OPTGROUP"===(nt.tagName||"").toUpperCase()&&(nt=ot[0]||s.firstElementChild||s,w=nt);f.focusedNode=nt;ft.style.display="block";d=k.getBoundingClientRect();y=h(w);w&&(st=a.getComputedStyle(w),y.paddingLeft=parseInt(st.paddingLeft,10)||0,y.paddingRight=parseInt(st.paddingRight,10)||0);yt&&(g=s.offsetHeight/2,s.scrollTop=y.top+y.height/2-g,rt.top<g?s.scrollTop=Math.min(y.top,s.scrollTop+g-rt.top):rt.bottom<g&&(s.scrollTop=Math.max(y.top+y.height-d.height,s.scrollTop-g+rt.bottom)));lt?(ht=v.left,tt=v.top+v.height,ut="50% 0",tt+d.height>p.bottom&&(tt=v.top-d.height,ut="50% 100%")):(ht=v.left+y.left-y.paddingLeft+2,tt=Math.floor(v.top+v.height/2-y.height/2-y.top+s.scrollTop)+2,ut=y.left+v.width/2+"px "+(y.top+y.height/2-s.scrollTop)+"px 0px",pt=Math.min(v.width+y.paddingLeft+y.paddingRight,et),wt=n.getComputedStyle(ct)["font-size"]);var bt=ft.getBoundingClientRect(),gt=Math.round(100*Math.min(v.width/d.width,1))/100,ni=Math.round(100*Math.min(v.height/d.height,1))/100;return{container:{element:t.element(ft),styles:{left:Math.floor(e(p.left,ht,p.right-bt.width)),top:Math.floor(e(p.top,tt,p.bottom-bt.height)),"min-width":pt,"font-size":wt}},dropDown:{element:t.element(k),styles:{transformOrigin:ut,transform:f.alreadyOpen?"":l.supplant("scale({0},{1})",[gt,ni])}}}}var rt="$mdSelect.show() expected a target element in options.target but got '{0}'!",d=l.dom.animator,k=f.KEY_CODE;return{parent:"body",themable:!0,onShow:tt,onRemove:nt,hasBackdrop:!0,disableParentScroll:!0}}function o(n){return n&&t.isFunction(n.then)}function e(n,t,i){return Math.max(n,Math.min(t,i))}function h(n){return n?{left:n.offsetLeft,top:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}:{left:0,top:0,width:0,height:0}}function c(n,t){var i=!1,r;try{r=n[0].style.display;n[0].style.display="block";i=t.scrollHeight>t.offsetHeight;n[0].style.display=r}finally{}return i}return f.$inject=["$mdSelect","$mdConstant","$mdUtil","$window","$q","$$rAF","$animateCss","$animate","$document"],u("$mdSelect").setDefaults({methods:["target"],options:f})}function s(n,t){var i=String.fromCharCode(n.keyCode),r=n.keyCode<=31;return i&&i.length&&!r&&!t.isMetaKey(n)&&!t.isFnLockKey(n)&&!t.hasModifierKey(n)}u.$inject=["$mdSelect","$mdUtil","$mdConstant","$mdTheming","$mdAria","$parse","$sce","$injector"];f.$inject=["$parse","$mdUtil","$mdConstant","$mdTheming"];e.$inject=["$mdButtonInkRipple","$mdUtil","$mdTheming"];o.$inject=["$$interimElementProvider"];var r=8,l=0,a=t.element('<div class="md-container"><div class="md-icon"><\/div><\/div>');t.module("material.components.select",["material.core","material.components.backdrop"]).directive("mdSelect",u).directive("mdSelectMenu",f).directive("mdOption",e).directive("mdOptgroup",h).directive("mdSelectHeader",c).provider("$mdSelect",o)}(),function(){function n(n,t){return["$mdUtil","$window",function(i,r){return{restrict:"A",multiElement:!0,link:function(u,f,e){var o=u.$on("$md-resize-enable",function(){o();var s=f[0],h=s.nodeType===r.Node.ELEMENT_NODE?r.getComputedStyle(s):{};u.$watch(e[n],function(n){if(!!n===t){i.nextTick(function(){u.$broadcast("$md-resize")});var r={cachedTransitionStyles:h};i.dom.animator.waitTransitionEnd(f,r).then(function(){u.$broadcast("$md-resize")})}})})}}}]}t.module("material.components.showHide",["material.core"]).directive("ngShow",n("ngShow",!0)).directive("ngHide",n("ngHide",!1))}(),function(){function n(n,r,u,f){function h(n,i){var e=function(){return!1},f=function(){return u.when(r.supplant(s,[i||""]))};return t.extend({isLockedOpen:e,isOpen:e,toggle:f,open:f,close:f,onClose:t.noop,then:function(n){return o(i).then(n||t.noop)}},n)}function c(t,u){var e=n.get(t);return e||u?e:(f.error(r.supplant(s,[t||""])),i)}function o(t){return n.when(t)["catch"](f.error)}var s="SideNav '{0}' is not available! Did you use md-component-id='{0}'?",e={find:c,waitFor:o};return function(n,i){if(t.isUndefined(n))return e;var u=i===!0,r=e.find(n,u);return!r&&u?e.waitFor(n):!r&&t.isUndefined(i)?h(e,n):r}}function f(){return{restrict:"A",require:"^mdSidenav",link:function(){}}}function r(n,r,u,f,e,o,s,h,c,l,a,v,y){function p(s,p,w,b){function ft(n,t){s.isLockedOpen=n;n===t?p.toggleClass("md-locked-open",!!n):o[n?"addClass":"removeClass"](p,"md-locked-open");k&&k.toggleClass("md-locked-open",!!n)}function et(n){var u=r.findFocusTarget(p)||r.findFocusTarget(p,"[md-sidenav-focus]")||p,t=p.parent(),i;return t[n?"on":"off"]("keydown",ct),k&&k[n?"on":"off"]("click",it),i=ot(t,n),n&&(tt=a[0].activeElement,rt=e.getLastInteractionType()),st(n),ut=l.all([n&&k?o.enter(k,t):k?o.leave(k):l.when(!0),o[n?"removeClass":"addClass"](p,"md-closed")]).then(function(){s.isOpen&&(y(function(){at.triggerHandler("resize")}),u&&u.focus());i&&i()})}function ot(n,t){var i=p[0],u=n[0].scrollTop,r;return t&&u&&(g={top:i.style.top,bottom:i.style.bottom,height:i.style.height},r={top:u+"px",bottom:"auto",height:n[0].clientHeight+"px"},p.css(r),k.css(r)),!t&&g?function(){i.style.top=g.top;i.style.bottom=g.bottom;i.style.height=g.height;k[0].style.top=null;k[0].style.bottom=null;k[0].style.height=null;g=null}:void 0}function st(n){n&&!nt?(nt=d.css("overflow"),d.css("overflow","hidden")):t.isDefined(nt)&&(d.css("overflow",nt),nt=i)}function ht(n){return s.isOpen==n?l.when(!0):(s.isOpen&&b.onCloseCb&&b.onCloseCb(),l(function(t){s.isOpen=n;r.nextTick(function(){ut.then(function(n){!s.isOpen&&tt&&"keyboard"===rt&&(tt.focus(),tt=null);t(n)})})}))}function ct(n){var t=n.keyCode===u.KEY_CODE.ESCAPE;return t?it(n):l.when(!0)}function it(n){return n.preventDefault(),b.close()}var nt,k,rt,g,d=null,tt=null,ut=l.when(!0),lt=h(w.mdIsLockedOpen),at=t.element(v),vt=function(){return lt(s.$parent,{$media:function(t){return c.warn("$media is deprecated for is-locked-open. Use $mdMedia instead."),n(t)},$mdMedia:n})};w.mdDisableScrollTarget&&(d=a[0].querySelector(w.mdDisableScrollTarget),d?d=t.element(d):c.warn(r.supplant('mdSidenav: couldn\'t find element matching selector "{selector}". Falling back to parent.',{selector:w.mdDisableScrollTarget})));d||(d=p.parent());w.hasOwnProperty("mdDisableBackdrop")||(k=r.createBackdrop(s,"md-sidenav-backdrop md-opaque ng-enter"));p.addClass("_md");f(p);k&&f.inherit(k,p);p.on("$destroy",function(){k&&k.remove();b.destroy()});s.$on("$destroy",function(){k&&k.remove()});s.$watch(vt,ft);s.$watch("isOpen",et);b.$toggleOpen=ht}return{restrict:"E",scope:{isOpen:"=?mdIsOpen"},controller:"$mdSidenavController",compile:function(n){return n.addClass("md-closed").attr("tabIndex","-1"),p}}}function u(n,t,i,r,u){var f=this;f.isOpen=function(){return!!n.isOpen};f.isLockedOpen=function(){return!!n.isLockedOpen};f.onClose=function(n){return f.onCloseCb=n,f};f.open=function(){return f.$toggleOpen(!0)};f.close=function(){return f.$toggleOpen(!1)};f.toggle=function(){return f.$toggleOpen(!n.isOpen)};f.$toggleOpen=function(t){return r.when(n.isOpen=t)};var e=t.mdComponentId,o=e&&e.indexOf(u.startSymbol())>-1,s=o?u(e)(n.$parent):e;f.destroy=i.register(f,s);o&&t.$observe("mdComponentId",function(n){n&&n!==f.$$mdHandle&&(f.destroy(),f.destroy=i.register(f,n))})}n.$inject=["$mdComponentRegistry","$mdUtil","$q","$log"];r.$inject=["$mdMedia","$mdUtil","$mdConstant","$mdTheming","$mdInteraction","$animate","$compile","$parse","$log","$q","$document","$window","$$rAF"];u.$inject=["$scope","$attrs","$mdComponentRegistry","$q","$interpolate"];t.module("material.components.sidenav",["material.core","material.components.backdrop"]).factory("$mdSidenav",n).directive("mdSidenav",r).directive("mdSidenavFocus",f).controller("$mdSidenavController",u)}(),function(){function r(){return{controller:function(){},compile:function(n){var r=n.find("md-slider"),u;if(r)return u=r.attr("md-vertical"),u!==i&&n.attr("md-vertical",""),r.attr("flex")||r.attr("flex",""),function(n,i,r,u){function o(n){i.children().attr("disabled",n);i.find("input").attr("disabled",n)}var f,e;i.addClass("_md");f=t.noop;r.disabled?o(!0):r.ngDisabled&&(f=n.$watch(r.ngDisabled,function(n){o(n)}));n.$on("$destroy",function(){f()});u.fitInputWidthToTextLength=function(n){var t=i[0].querySelector("md-input-container"),f;if(t){var r=getComputedStyle(t),u=parseInt(r.minWidth),o=2*parseInt(r.padding);e=e||parseInt(r.maxWidth);f=Math.max(e,u+o+u/2*n);t.style.maxWidth=f+"px"}}}}}}function n(n,i,r,u,f,e,o,s,h,c){function l(n,i){var u=t.element(n[0].getElementsByClassName("md-slider-wrapper")),f=i.tabindex||0;return u.attr("tabindex",f),(i.disabled||i.ngDisabled)&&u.attr("tabindex",-1),u.attr("role","slider"),r.expect(n,"aria-label"),a}function a(r,l,a,v){function ht(){it();lt()}function bt(n){w=parseFloat(n);l.attr("aria-valuemin",n);ht()}function kt(n){et=parseFloat(n);l.attr("aria-valuemax",n);ht()}function dt(n){b=parseFloat(n)}function gt(n){wt=d(parseInt(n),0,6)}function si(){l.attr("aria-disabled",!!nt())}function hi(){var u,f,n,e,r,o;if(ei&&!nt()&&!t.isUndefined(b)){if(b<=0){u="Slider step value must be greater than zero when in discrete mode";throw h.error(u),new Error(u);}for(f=Math.floor((et-w)/b),g||(g=t.element("<canvas>").css("position","absolute"),fi.append(g),ot=g[0].getContext("2d")),n=ni(),!n||n.height||n.width||(it(),n=k),g[0].width=n.width,g[0].height=n.height,r=0;r<=f;r++)o=i.getComputedStyle(fi[0]),ot.fillStyle=o.color||"black",e=Math.floor((y?n.height:n.width)*(r/f)),ot.fillRect(y?0:e-1,y?e-1:0,y?n.width:2,y?2:n.height)}}function ci(){if(g&&ot){var n=ni();ot.clearRect(0,0,n.width,n.height)}}function it(){k=rr[0].getBoundingClientRect()}function ni(){return fr(),k}function li(n){if(!nt()){var t;(y?n.keyCode===f.KEY_CODE.DOWN_ARROW:n.keyCode===f.KEY_CODE.LEFT_ARROW)?t=-b:(y?n.keyCode===f.KEY_CODE.UP_ARROW:n.keyCode===f.KEY_CODE.RIGHT_ARROW)&&(t=b);t=tt?-t:t;t&&((n.metaKey||n.ctrlKey||n.altKey)&&(t*=4),n.preventDefault(),n.stopPropagation(),r.$evalAsync(function(){ct(p.$viewValue+t)}))}}function ai(){hi();r.mouseActive=!0;ft.removeClass("md-focused");c(function(){r.mouseActive=!1},100)}function vi(){r.mouseActive===!1&&ft.addClass("md-focused")}function yi(){ft.removeClass("md-focused");l.removeClass("md-active");ci()}function ct(n){p.$setViewValue(d(rt(n)))}function lt(){isNaN(p.$viewValue)&&(p.$viewValue=p.$modelValue);p.$viewValue=d(p.$viewValue);var n=ii(p.$viewValue);r.modelValue=p.$viewValue;l.attr("aria-valuenow",p.$viewValue);vt(n);ri.text(p.$viewValue)}function d(n,i,r){if(t.isNumber(n))return i=t.isNumber(i)?i:w,r=t.isNumber(r)?r:et,Math.max(i,Math.min(r,n))}function rt(n){if(t.isNumber(n)){var i=Math.round((n-w)/b)*b+w;return i=Math.round(i*Math.pow(10,wt))/Math.pow(10,wt),yt&&yt.fitInputWidthToTextLength&&u.debounce(function(){yt.fitInputWidthToTextLength(i.toString().length)},100)(),i}}function vt(n){n=tr(n);var t=100*n+"%",i=tt?100*(1-n)+"%":t;y?ui.css("bottom",t):u.bidiProperty(ui,"left","right",t);ur.css(y?"height":"width",i);l.toggleClass(tt?"md-max":"md-min",0===n);l.toggleClass(tt?"md-min":"md-max",1===n)}function pi(n){if(!nt()){l.addClass("md-active");l[0].focus();it();var i=at(ut(y?n.pointer.y:n.pointer.x)),t=d(rt(i));r.$apply(function(){ct(t);vt(ii(t))})}}function wi(n){if(!nt()){l.removeClass("md-dragging");var t=at(ut(y?n.pointer.y:n.pointer.x)),i=d(rt(t));r.$apply(function(){ct(i);lt()})}}function bi(n){nt()||(st=!0,n.stopPropagation(),l.addClass("md-dragging"),ti(n))}function ki(n){st&&(n.stopPropagation(),ti(n))}function di(n){st&&(n.stopPropagation(),st=!1)}function ti(n){ei?nr(y?n.pointer.y:n.pointer.x):gi(y?n.pointer.y:n.pointer.x)}function gi(n){r.$evalAsync(function(){ct(at(ut(n)))})}function nr(n){var t=at(ut(n)),i=d(rt(t));vt(ut(n));ri.text(i)}function tr(n){return Math.max(0,Math.min(n||0,1))}function ut(n){var i=y?k.top:k.left,r=y?k.height:k.width,t=(n-i)/r;return y||"rtl"!==u.bidi()||(t=1-t),Math.max(0,Math.min(1,y?1-t:t))}function at(n){var t=tt?1-n:n;return w+t*(et-w)}function ii(n){var t=(n-w)/(et-w);return tt?1-t:t}var oi,pt,w,et,b,wt,g,ot,k,st;e(l);var p=v[0]||{$setViewValue:function(n){this.$viewValue=n;this.$viewChangeListeners.forEach(function(n){n()})},$parsers:[],$formatters:[],$viewChangeListeners:[]},yt=v[1],nt=(t.element(u.getClosest(l,"_md-slider-container",!0)),a.ngDisabled?t.bind(null,s(a.ngDisabled),r.$parent):function(){return l[0].hasAttribute("disabled")}),ir=t.element(l[0].querySelector(".md-thumb")),ri=t.element(l[0].querySelector(".md-thumb-text")),ui=ir.parent(),rr=t.element(l[0].querySelector(".md-track-container")),ur=t.element(l[0].querySelector(".md-track-fill")),fi=t.element(l[0].querySelector(".md-track-ticks")),ft=t.element(l[0].getElementsByClassName("md-slider-wrapper")),fr=(t.element(l[0].getElementsByClassName("md-slider-content")),u.throttle(it,5e3)),y=t.isDefined(a.mdVertical),ei=t.isDefined(a.mdDiscrete),tt=t.isDefined(a.mdInvert);t.isDefined(a.min)?a.$observe("min",bt):bt(0);t.isDefined(a.max)?a.$observe("max",kt):kt(100);t.isDefined(a.step)?a.$observe("step",dt):dt(1);t.isDefined(a.round)?a.$observe("round",gt):gt(3);oi=t.noop;a.ngDisabled&&(oi=r.$parent.$watch(a.ngDisabled,si));o.register(ft,"drag",{horizontal:!y});r.mouseActive=!1;ft.on("keydown",li).on("mousedown",ai).on("focus",vi).on("blur",yi).on("$md.pressdown",pi).on("$md.pressup",wi).on("$md.dragstart",bi).on("$md.drag",ki).on("$md.dragend",di);setTimeout(ht,0);pt=n.throttle(ht);t.element(i).on("resize",pt);r.$on("$destroy",function(){t.element(i).off("resize",pt)});p.$render=lt;p.$viewChangeListeners.push(lt);p.$formatters.push(d);p.$formatters.push(rt);k={};it();st=!1}return{scope:{},require:["?ngModel","?^mdSliderContainer"],template:'<div class="md-slider-wrapper"><div class="md-slider-content"><div class="md-track-container"><div class="md-track"><\/div><div class="md-track md-track-fill"><\/div><div class="md-track-ticks"><\/div><\/div><div class="md-thumb-container"><div class="md-thumb"><\/div><div class="md-focus-thumb"><\/div><div class="md-focus-ring"><\/div><div class="md-sign"><span class="md-thumb-text"><\/span><\/div><div class="md-disabled-thumb"><\/div><\/div><\/div><\/div>',compile:l}}n.$inject=["$$rAF","$window","$mdAria","$mdUtil","$mdConstant","$mdTheming","$mdGesture","$parse","$log","$timeout"];t.module("material.components.slider",["material.core"]).directive("mdSlider",n).directive("mdSliderContainer",r)}(),function(){function n(n,t,r,u){function e(u){function y(n,t){t.addClass("md-sticky-clone");var i={element:n,clone:t};return f.items.push(i),r.nextTick(function(){e.prepend(i.clone)}),a(),function(){f.items.forEach(function(t,i){t.element[0]===n[0]&&(f.items.splice(i,1),t.clone.remove())});a()}}function v(){f.items.forEach(p);f.items=f.items.sort(function(n,t){return n.top<t.top?-1:1});for(var t,i=e.prop("scrollTop"),n=f.items.length-1;n>=0;n--)if(i>f.items[n].top){t=f.items[n];break}s(t)}function p(n){var t=n.element[0],u;for(n.top=0,n.left=0,n.right=0;t&&t!==e[0];)n.top+=t.offsetTop,n.left+=t.offsetLeft,t.offsetParent&&(n.right+=t.offsetParent.offsetWidth-t.offsetWidth-t.offsetLeft),t=t.offsetParent;n.height=n.element.prop("offsetHeight");u=r.floatingScrollbars()?"0":i;r.bidi(n.clone,"margin-left",n.left,u);r.bidi(n.clone,"margin-right",u,n.right)}function l(){var n=e.prop("scrollTop"),t=n>(l.prevScrollTop||0);if(l.prevScrollTop=n,0===n)return void s(null);if(t){if(f.next&&f.next.top<=n)return void s(f.next);if(f.current&&f.next&&f.next.top-n<=f.next.height)return void c(f.current,n+(f.next.top-f.next.height-n))}if(!t){if(f.current&&f.prev&&n<f.current.top)return void s(f.prev);if(f.next&&f.current&&n>=f.next.top-f.current.height)return void c(f.current,n+(f.next.top-n-f.current.height))}f.current&&c(f.current,n)}function s(n){if(f.current!==n){f.current&&(c(f.current,null),h(f.current,null));n&&h(n,"active");f.current=n;var t=f.items.indexOf(n);f.next=f.items[t+1];f.prev=f.items[t-1];h(f.next,"next");h(f.prev,"prev")}}function h(n,t){n&&n.state!==t&&(n.state&&(n.clone.attr("sticky-prev-state",n.state),n.element.attr("sticky-prev-state",n.state)),n.clone.attr("sticky-state",t),n.element.attr("sticky-state",t),n.state=t)}function c(t,u){t&&(null===u||u===i?t.translateY&&(t.translateY=null,t.clone.css(n.CSS.TRANSFORM,"")):(t.translateY=u,r.bidi(t.clone,n.CSS.TRANSFORM,"translate3d("+t.left+"px,"+u+"px,0)","translateY("+u+"px)")))}var e=u.$element,a=t.throttle(v),f;return o(e),e.on("$scrollstart",a),e.on("$scroll",l),f={prev:null,current:null,next:null,items:[],add:y,refreshElements:v}}function o(n){function u(){+r.now()-f>e?(i=!1,n.triggerHandler("$scrollend")):(n.triggerHandler("$scroll"),t.throttle(u))}var i,f,e=200;n.on("scroll touchmove",function(){i||(i=!0,t.throttle(u),n.triggerHandler("$scrollstart"));n.triggerHandler("$scroll");f=+r.now()})}var f=r.checkStickySupport();return function(n,t,i){var o=t.controller("mdContent"),r,s,h;o&&(f?t.css({position:f,top:0,"z-index":2}):(r=o.$element.data("$$sticky"),r||(r=e(o),o.$element.data("$$sticky",r)),s=i||u(t.clone())(n),h=r.add(t,s),n.$on("$destroy",h)))}}n.$inject=["$mdConstant","$$rAF","$mdUtil","$compile"];t.module("material.components.sticky",["material.core","material.components.content"]).factory("$mdSticky",n)}(),function(){function n(n,i,r,u,f){return{restrict:"E",replace:!0,transclude:!0,template:'<div class="md-subheader _md">  <div class="md-subheader-inner">    <div class="md-subheader-content"><\/div>  <\/div><\/div>',link:function(e,o,s,h,c){function l(n){return t.element(n[0].querySelector(".md-subheader-content"))}r(o);o.addClass("_md");u.prefixer().removeAttribute(o,"ng-repeat");var a=o[0].outerHTML;s.$set("role","heading");f.expect(o,"aria-level","2");c(e,function(n){l(o).append(n)});o.hasClass("md-no-sticky")||c(e,function(t){var r=i('<div class="md-subheader-wrapper" aria-hidden="true">'+a+"<\/div>")(e);u.nextTick(function(){l(r).append(t)});n(e,o,r)})}}}n.$inject=["$mdSticky","$compile","$mdTheming","$mdUtil","$mdAria"];t.module("material.components.subheader",["material.core","material.components.sticky"]).directive("mdSubheader",n)}(),function(){function n(n){function t(n){function t(t,u,f){var e=n(f[i]);u.on(r,function(n){t.$applyAsync(function(){e(t,{$event:n})})})}return{restrict:"A",link:t}}t.$inject=["$parse"];var i="md"+n,r="$md."+n.toLowerCase();return t}t.module("material.components.swipe",["material.core"]).directive("mdSwipeLeft",n("SwipeLeft")).directive("mdSwipeRight",n("SwipeRight")).directive("mdSwipeUp",n("SwipeUp")).directive("mdSwipeDown",n("SwipeDown"))}(),function(){function n(n,i,r,u,f,e,o){function s(n,s){var c=h.compile(n,s).post;return n.addClass("md-dragging"),function(n,s,h,l){function b(t){v&&v(n)||(t.stopPropagation(),s.addClass("md-dragging"),a={width:p.prop("offsetWidth")})}function k(n){if(a){n.stopPropagation();n.srcEvent&&n.srcEvent.preventDefault();var i=n.pointer.distanceX/a.width,t=y.$viewValue?1+i:i;t=Math.max(0,Math.min(1,t));p.css(r.CSS.TRANSFORM,"translate3d("+100*t+"%,0,0)");a.translate=t}}function d(t){if(a){t.stopPropagation();s.removeClass("md-dragging");p.css(r.CSS.TRANSFORM,"");var i=y.$viewValue?a.translate<.5:a.translate>.5;i&&g(!y.$viewValue);a=null;n.skipToggle=!0;o(function(){n.skipToggle=!1},1)}}function g(t){n.$apply(function(){y.$setViewValue(t);y.$render()})}var y=(l[0],l[1]||i.fakeNgModel()),v=(l[2],null),a;null!=h.disabled?v=function(){return!0}:h.ngDisabled&&(v=u(h.ngDisabled));var p=t.element(s[0].querySelector(".md-thumb-container")),w=t.element(s[0].querySelector(".md-container")),nt=t.element(s[0].querySelector(".md-label"));f(function(){s.removeClass("md-dragging")});c(n,s,h,l);v&&n.$watch(v,function(n){s.attr("tabindex",n?-1:0)});h.$observe("mdInvert",function(n){var t=i.parseAttributeBoolean(n);t?s.prepend(nt):s.prepend(w);s.toggleClass("md-inverted",t)});e.register(w,"drag");w.on("$md.dragstart",b).on("$md.drag",k).on("$md.dragend",d)}}var h=n[0];return{restrict:"E",priority:r.BEFORE_NG_ARIA,transclude:!0,template:'<div class="md-container"><div class="md-bar"><\/div><div class="md-thumb-container"><div class="md-thumb" md-ink-ripple md-ink-ripple-checkbox><\/div><\/div><\/div><div ng-transclude class="md-label"><\/div>',require:["^?mdInputContainer","?ngModel","?^form"],compile:s}}n.$inject=["mdCheckboxDirective","$mdUtil","$mdConstant","$parse","$$rAF","$mdGesture","$timeout"];t.module("material.components.switch",["material.core","material.components.checkbox"]).directive("mdSwitch",n)}(),function(){t.module("material.components.tabs",["material.core","material.components.icon"])}(),function(){function n(){function i(t,i){for(var f,e=t.canvas,u=n(t),r=0;r<u.length;r++)if(u[r]>=i){f=u[r];break}return Math.max(0,f-e.clientWidth)}function r(i,r){for(var e,o=i.canvas,s=t(i)-o.clientWidth,f=n(i),u=0;u<f.length,f[u]<=r+o.clientWidth;u++)e=f[u];return Math.min(s,e)}function n(n){for(var i,r=0,u=[],t=0;t<n.tabs.length;t++)i=n.tabs[t],u.push(r),r+=i.offsetWidth;return u}function t(n){for(var i,r=0,t=0;t<n.tabs.length;t++)i=n.tabs[t],r+=i.offsetWidth;return r}return{decreasePageOffset:i,increasePageOffset:r,getTabOffsets:n,getTotalTabsWidth:t}}t.module("material.components.tabs").service("MdTabsPaginationService",n)}(),function(){function n(n){return{restrict:"E",link:function(t,i){i.addClass("_md");t.$on("$destroy",function(){n.destroy()})}}}function i(n){function r(n){i=n}function u(n,t){this.$onInit=function(){var r=this;r.highlightAction&&(t.highlightClasses=["md-highlight",r.highlightClass]);t.$watch(function(){return i},function(){r.content=i});this.resolve=function(){n.hide(e)}}}function f(n,r,u,f){function o(t,o,s){i=s.textContent||s.content;var c=!f("gt-sm");return o=u.extractElementByName(o,"md-toast",!0),s.element=o,s.onSwipe=function(n){var i=n.type.replace("$md.",""),t=i.replace("swipe","");"down"===t&&s.position.indexOf("top")!=-1&&!c||"up"===t&&(s.position.indexOf("bottom")!=-1||c)||("left"!==t&&"right"!==t||!c)&&(o.addClass("md-"+i),u.nextTick(r.cancel))},s.openClass=h(s.position),o.addClass(s.toastClass),s.parent.addClass(s.openClass),u.hasComputedStyle(s.parent,"position","static")&&s.parent.css("position","relative"),o.on(e,s.onSwipe),o.addClass(c?"md-bottom":s.position.split(" ").map(function(n){return"md-"+n}).join(" ")),s.parent&&s.parent.addClass("md-toast-animating"),n.enter(o,s.parent).then(function(){s.parent&&s.parent.removeClass("md-toast-animating")})}function s(t,i,r){return i.off(e,r.onSwipe),r.parent&&r.parent.addClass("md-toast-animating"),r.openClass&&r.parent.removeClass(r.openClass),(1==r.$destroy?i.remove():n.leave(i)).then(function(){r.parent&&r.parent.removeClass("md-toast-animating");u.hasComputedStyle(r.parent,"position","static")&&r.parent.css("position","")})}function h(n){return f("gt-xs")?"md-toast-open-"+(n.indexOf("top")>-1?"top":"bottom"):"md-toast-open-bottom"}var e="$md.swipeleft $md.swiperight $md.swipeup $md.swipedown";return{onShow:o,onRemove:s,toastClass:"",position:"bottom left",themable:!0,hideDelay:3e3,autoWrap:!0,transformTemplate:function(n,i){var e=i.autoWrap&&n&&!/md-toast-content/g.test(n),r,u,f;if(e){for(r=document.createElement("md-template"),r.innerHTML=n,u=0;u<r.children.length;u++)"MD-TOAST"===r.children[u].nodeName&&(f=t.element('<div class="md-toast-content">'),f.append(t.element(r.children[u].childNodes)),r.children[u].appendChild(f[0]));return r.innerHTML}return n||""}}}u.$inject=["$mdToast","$scope"];f.$inject=["$animate","$mdToast","$mdUtil","$mdMedia"];var i,e="ok";return n("$mdToast").setDefaults({methods:["position","hideDelay","capsule","parent","position","toastClass"],options:f}).addPreset("simple",{argOption:"textContent",methods:["textContent","content","action","highlightAction","highlightClass","theme","parent"],options:["$mdToast","$mdTheming",function(n,t){return{template:'<md-toast md-theme="{{ toast.theme }}" ng-class="{\'md-capsule\': toast.capsule}">  <div class="md-toast-content">    <span class="md-toast-text" role="alert" aria-relevant="all" aria-atomic="true">      {{ toast.content }}    <\/span>    <md-button class="md-action" ng-if="toast.action" ng-click="toast.resolve()"         ng-class="highlightClasses">      {{ toast.action }}    <\/md-button>  <\/div><\/md-toast>',controller:u,theme:t.defaultTheme(),controllerAs:"toast",bindToController:!0}}]}).addMethod("updateTextContent",r).addMethod("updateContent",r)}n.$inject=["$mdToast"];i.$inject=["$$interimElementProvider"];t.module("material.components.toast",["material.core","material.components.button"]).directive("mdToast",n).provider("$mdToast",i)}(),function(){function n(n,i,r,u,f){var e=t.bind(null,r.supplant,"translate3d(0,{0}px,0)");return{template:"",restrict:"E",link:function(o,s,h){function c(){function g(n){var t=s.parent().find("md-content");!u&&t.length&&b(null,t);n=o.$eval(n);n===!1?v():v=d()}function b(n,t){t&&s.parent()[0]===t.parent()[0]&&(u&&u.off("scroll",w),u=t,v=d())}function k(n){var t=n?n.target.scrollTop:p;nt();c=Math.min(a/y,Math.max(0,c+t-p));s.css(i.CSS.TRANSFORM,e([-c*y]));u.css(i.CSS.TRANSFORM,e([(a-c)*y]));p=t;r.nextTick(function(){var n=s.hasClass("md-whiteframe-z1");n&&!c?f.removeClass(s,"md-whiteframe-z1"):!n&&c&&f.addClass(s,"md-whiteframe-z1")})}function d(){return u?(u.on("scroll",w),u.attr("scroll-shrink","true"),r.nextTick(l,!1),function(){u.off("scroll",w);u.attr("scroll-shrink","false");l()}):t.noop}function l(){a=s.prop("offsetHeight");var n=-a*y+"px";u.css({"margin-top":n,"margin-bottom":n});k()}var a,u,v=t.noop,c=0,p=0,y=h.mdShrinkSpeedFactor||.5,w=n.throttle(k),nt=r.debounce(l,5e3);o.$on("$mdContentLoaded",b);h.$observe("mdScrollShrink",g);h.ngShow&&o.$watch(h.ngShow,l);h.ngHide&&o.$watch(h.ngHide,l);o.$on("$destroy",v)}s.addClass("_md");u(s);r.nextTick(function(){s.addClass("_md-toolbar-transitions")},!1);t.isDefined(h.mdScrollShrink)&&c()}}}n.$inject=["$$rAF","$mdConstant","$mdUtil","$mdTheming","$animate"];t.module("material.components.toolbar",["material.core","material.components.content"]).directive("mdToolbar",n)}(),function(){function i(n,i,r,u,f,e,o,s){function a(a,w,b){function st(){a.mdZIndex=a.mdZIndex||v;a.mdDelay=a.mdDelay||y;l[a.mdDirection]||(a.mdDirection=p)}function ht(n){var t=n||f(w.text().trim())(a.$parent);(k.attr("aria-label")||k.attr("aria-labelledby"))&&!k.attr("md-labeled-by-tooltip")||(k.attr("aria-label",t),k.attr("md-labeled-by-tooltip")||k.attr("md-labeled-by-tooltip",lt))}function ut(){st();d&&d.panelEl&&d.panelEl.removeClass(it);it="md-origin-"+a.mdDirection;ft=l[a.mdDirection];et=o.newPanelPosition().relativeTo(k).addPanelPosition(ft.x,ft.y);d&&d.panelEl&&(d.panelEl.addClass(it),d.updatePosition(et))}function vt(){function y(n){return n.some(function(n){return"disabled"===n.attributeName&&k[0].disabled}),!1}function f(){g(!1)}function o(){rt=document.activeElement===k[0]}function l(n){"focus"===n.type&&rt?rt=!1:a.mdVisible||(k.on(h,t),g(!0),"touchstart"===n.type&&k.one("touchend",function(){e.nextTick(function(){u.one("touchend",t)},!1)}))}function t(){ct=a.hasOwnProperty("mdAutohide")?a.mdAutohide:b.hasOwnProperty("mdAutohide");(ct||ot||u[0].activeElement!==k[0])&&(tt&&(n.cancel(tt),g.queued=!1,tt=null),k.off(h,t),k.triggerHandler("blur"),g(!1));ot=!1}function v(){ot=!0}function p(){s.deregister("scroll",f,!0);s.deregister("blur",o);s.deregister("resize",at);k.off(c,l).off(h,t).off("mousedown",v);t();r&&r.disconnect()}if(k[0]&&"MutationObserver"in i){var r=new MutationObserver(function(n){y(n)&&e.nextTick(function(){g(!1)})});r.observe(k[0],{attributes:!0})}rt=!1;s.register("scroll",f,!0);s.register("blur",o);s.register("resize",at);a.$on("$destroy",p);k.on("mousedown",v);k.on(c,l)}function yt(){function t(){a.$destroy()}if(w[0]&&"MutationObserver"in i){var n=new MutationObserver(function(n){n.forEach(function(n){"md-visible"!==n.attributeName||a.visibleWatcher||(a.visibleWatcher=a.$watch("mdVisible",nt))})});n.observe(w[0],{attributes:!0});b.hasOwnProperty("mdVisible")&&(a.visibleWatcher=a.$watch("mdVisible",nt))}else a.visibleWatcher=a.$watch("mdVisible",nt);a.$watch("mdDirection",ut);w.one("$destroy",t);k.one("$destroy",t);a.$on("$destroy",function(){g(!1);d&&d.destroy();n&&n.disconnect();w.remove()});w.text().indexOf(f.startSymbol())>-1&&a.$watch(function(){return w.text().trim()},ht)}function g(t){g.queued&&g.value===!!t||!g.queued&&a.mdVisible===!!t||(g.value=!!t,g.queued||(t?(g.queued=!0,tt=n(function(){a.mdVisible=g.value;g.queued=!1;tt=null;a.visibleWatcher||nt(a.mdVisible)},a.mdDelay)):e.nextTick(function(){a.mdVisible=!1;a.visibleWatcher||nt(!1)})))}function nt(n){n?pt():wt()}function pt(){if(!w[0].textContent.trim())throw new Error("Text for the tooltip has not been provided. Please include text within the mdTooltip element.");if(!d){var n=t.element(document.body),i=o.newPanelAnimation().openFrom(k).closeTo(k).withAnimation({open:"md-show",close:"md-hide"}),r={id:lt,attachTo:n,contentElement:w,propagateContainerEvents:!0,panelClass:"md-tooltip "+it,animation:i,position:et,zIndex:a.mdZIndex,focusOnOpen:!1};d=o.create(r)}d.open().then(function(){d.panelEl.attr("role","tooltip")})}function wt(){d&&d.close()}var it,ft,et,d,ct,tt,lt="md-tooltip-"+e.nextUid(),k=e.getParentWithPointerEvents(w),at=r.throttle(ut),ot=!1,rt=null;st();ht();w.detach();ut();vt();yt()}var c="focus touchstart mouseenter",h="blur touchcancel mouseleave",v=100,y=0,p="bottom",l={top:{x:o.xPosition.CENTER,y:o.yPosition.ABOVE},right:{x:o.xPosition.OFFSET_END,y:o.yPosition.CENTER},bottom:{x:o.xPosition.CENTER,y:o.yPosition.BELOW},left:{x:o.xPosition.OFFSET_START,y:o.yPosition.CENTER}};return{restrict:"E",priority:210,scope:{mdZIndex:"=?mdZIndex",mdDelay:"=?mdDelay",mdVisible:"=?mdVisible",mdAutohide:"=?mdAutohide",mdDirection:"@?mdDirection"},link:a}}function r(){function r(n){i[n.type]&&i[n.type].forEach(function(t){t.call(this,n)},this)}function f(t,f,e){var o=i[t]=i[t]||[];o.length||(e?n.addEventListener(t,r,!0):u.on(t,r));o.indexOf(f)===-1&&o.push(f)}function e(t,f,e){var o=i[t],s=o?o.indexOf(f):-1;s>-1&&(o.splice(s,1),0===o.length&&(e?n.removeEventListener(t,r,!0):u.off(t,r)))}var i={},u=t.element(n);return{register:f,deregister:e}}i.$inject=["$timeout","$window","$$rAF","$document","$interpolate","$mdUtil","$mdPanel","$$mdTooltipRegistry"];t.module("material.components.tooltip",["material.core","material.components.panel"]).directive("mdTooltip",i).service("$$mdTooltipRegistry",r)}(),function(){function i(){return{restrict:"AE",controller:n,controllerAs:"$ctrl",bindToController:!0}}function n(n){n.addClass("md-truncate")}n.$inject=["$element"];t.module("material.components.truncate",["material.core"]).directive("mdTruncate",i)}(),function(){function o(){return{controller:n,template:s,compile:function(n,t){n.addClass("md-virtual-repeat-container").addClass(t.hasOwnProperty("mdOrientHorizontal")?"md-orient-horizontal":"md-orient-vertical")}}}function s(n){return'<div class="md-virtual-repeat-scroller" role="presentation"><div class="md-virtual-repeat-sizer" role="presentation"><\/div><div class="md-virtual-repeat-offsetter" role="presentation">'+n[0].innerHTML+"<\/div><\/div>"}function n(n,i,r,u,f,e,o,s,h){this.$rootScope=f;this.$scope=o;this.$element=s;this.$attrs=h;this.size=0;this.scrollSize=0;this.scrollOffset=0;this.horizontal=this.$attrs.hasOwnProperty("mdOrientHorizontal");this.repeater=null;this.autoShrink=this.$attrs.hasOwnProperty("mdAutoShrink");this.autoShrinkMin=parseInt(this.$attrs.mdAutoShrinkMin,10)||0;this.originalSize=null;this.offsetSize=parseInt(this.$attrs.mdOffsetSize,10)||0;this.oldElementSize=null;this.maxElementPixels=r.ELEMENT_MAX_PIXELS;this.$attrs.mdTopIndex?(this.bindTopIndex=u(this.$attrs.mdTopIndex),this.topIndex=this.bindTopIndex(this.$scope),t.isDefined(this.topIndex)||(this.topIndex=0,this.bindTopIndex.assign(this.$scope,0)),this.$scope.$watch(this.bindTopIndex,t.bind(this,function(n){n!==this.topIndex&&this.scrollToIndex(n)}))):this.topIndex=0;this.scroller=s[0].querySelector(".md-virtual-repeat-scroller");this.sizer=this.scroller.querySelector(".md-virtual-repeat-sizer");this.offsetter=this.scroller.querySelector(".md-virtual-repeat-offsetter");var c=t.bind(this,this.updateSize);n(t.bind(this,function(){c();var n=i.debounce(c,10,null,!1),r=t.element(e);this.size||n();r.on("resize",n);o.$on("$destroy",function(){r.off("resize",n)});o.$emit("$md-resize-enable");o.$on("$md-resize",c)}))}function f(n){return{controller:i,priority:1e3,require:["mdVirtualRepeat","^^mdVirtualRepeatContainer"],restrict:"A",terminal:!0,transclude:"element",compile:function(t,i){var u=i.mdVirtualRepeat,r=u.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)\s*$/),f=r[1],e=n(r[2]),o=i.mdExtraName&&n(i.mdExtraName);return function(n,t,i,r,u){r[0].link_(r[1],u,f,e,o)}}}}function i(n,i,r,u,f,e,o,s){this.$scope=n;this.$element=i;this.$attrs=r;this.$browser=u;this.$document=f;this.$mdUtil=s;this.$rootScope=e;this.$$rAF=o;this.onDemand=s.parseAttributeBoolean(r.mdOnDemand);this.browserCheckUrlChange=u.$$checkUrlChange;this.newStartIndex=0;this.newEndIndex=0;this.newVisibleEnd=0;this.startIndex=0;this.endIndex=0;this.itemSize=n.$eval(r.mdItemSize)||null;this.isFirstRender=!0;this.isVirtualRepeatUpdating_=!1;this.itemsLength=0;this.unwatchItemSize_=t.noop;this.blocks={};this.pooledBlocks=[];n.$on("$destroy",t.bind(this,this.cleanupBlocks_))}function r(n){if(!t.isFunction(n.getItemAtIndex)||!t.isFunction(n.getLength))throw Error("When md-on-demand is enabled, the Object passed to md-virtual-repeat must implement functions getItemAtIndex() and getLength() ");this.model=n}function e(){return{restrict:"A",link:function(n,t,i){var r=n.$eval(i.mdForceHeight)||null;r&&t&&(t[0].style.height=r)}}}n.$inject=["$$rAF","$mdUtil","$mdConstant","$parse","$rootScope","$window","$scope","$element","$attrs"];i.$inject=["$scope","$element","$attrs","$browser","$document","$rootScope","$$rAF","$mdUtil"];f.$inject=["$parse"];t.module("material.components.virtualRepeat",["material.core","material.components.showHide"]).directive("mdVirtualRepeatContainer",o).directive("mdVirtualRepeat",f).directive("mdForceHeight",e);var u=3;n.prototype.register=function(n){this.repeater=n;t.element(this.scroller).on("scroll wheel touchmove touchend",t.bind(this,this.handleScroll_))};n.prototype.isHorizontal=function(){return this.horizontal};n.prototype.getSize=function(){return this.size};n.prototype.setSize_=function(n){var t=this.getDimensionName_();this.size=n;this.$element[0].style[t]=n+"px"};n.prototype.unsetSize_=function(){this.$element[0].style[this.getDimensionName_()]=this.oldElementSize;this.oldElementSize=null};n.prototype.updateSize=function(){this.originalSize||(this.size=this.isHorizontal()?this.$element[0].clientWidth:this.$element[0].clientHeight,this.handleScroll_(),this.repeater&&this.repeater.containerUpdated())};n.prototype.getScrollSize=function(){return this.scrollSize};n.prototype.getDimensionName_=function(){return this.isHorizontal()?"width":"height"};n.prototype.sizeScroller_=function(n){var i=this.getDimensionName_(),f=this.isHorizontal()?"height":"width",r,t,u;if(this.sizer.innerHTML="",n<this.maxElementPixels)this.sizer.style[i]=n+"px";else{for(this.sizer.style[i]="auto",this.sizer.style[f]="auto",r=Math.floor(n/this.maxElementPixels),t=document.createElement("div"),t.style[i]=this.maxElementPixels+"px",t.style[f]="1px",u=0;u<r;u++)this.sizer.appendChild(t.cloneNode(!1));t.style[i]=n-r*this.maxElementPixels+"px";this.sizer.appendChild(t)}};n.prototype.autoShrink_=function(n){var t=Math.max(n,this.autoShrinkMin*this.repeater.getItemSize()),i,r;this.autoShrink&&t!==this.size&&(null===this.oldElementSize&&(this.oldElementSize=this.$element[0].style[this.getDimensionName_()]),i=this.originalSize||this.size,!i||t<i?(this.originalSize||(this.originalSize=this.size),this.setSize_(t)):null!==this.originalSize&&(this.unsetSize_(),r=this.originalSize,this.originalSize=null,r||this.updateSize(),this.setSize_(r||this.size)),this.repeater.containerUpdated())};n.prototype.setScrollSize=function(n){var t=n+this.offsetSize;this.scrollSize!==t&&(this.sizeScroller_(t),this.autoShrink_(t),this.scrollSize=t)};n.prototype.getScrollOffset=function(){return this.scrollOffset};n.prototype.scrollTo=function(n){this.scroller[this.isHorizontal()?"scrollLeft":"scrollTop"]=n;this.handleScroll_()};n.prototype.scrollToIndex=function(n){var i=this.repeater.getItemSize(),t=this.repeater.itemsLength;n>t&&(n=t-1);this.scrollTo(i*n)};n.prototype.resetScroll=function(){this.scrollTo(0)};n.prototype.handleScroll_=function(){var r="rtl"!=document.dir&&"rtl"!=document.body.dir,n,t,f,e,i;r||this.maxSize||(this.scroller.scrollLeft=this.scrollSize,this.maxSize=this.scroller.scrollLeft);n=this.isHorizontal()?r?this.scroller.scrollLeft:this.maxSize-this.scroller.scrollLeft:this.scroller.scrollTop;n===this.scrollOffset||n>this.scrollSize-this.size||(t=this.repeater.getItemSize(),t&&(f=Math.max(0,Math.floor(n/t)-u),e=(this.isHorizontal()?"translateX(":"translateY(")+(!this.isHorizontal()||r?f*t:-(f*t))+"px)",(this.scrollOffset=n,this.offsetter.style.webkitTransform=e,this.offsetter.style.transform=e,this.bindTopIndex)&&(i=Math.floor(n/t),i!==this.topIndex&&i<this.repeater.getItemCount()&&(this.topIndex=i,this.bindTopIndex.assign(this.$scope,i),this.$rootScope.$$phase||this.$scope.$digest())),this.repeater.containerUpdated()))};i.Block;i.prototype.link_=function(n,i,r,u,f){this.container=n;this.transclude=i;this.repeatName=r;this.rawRepeatListExpression=u;this.extraName=f;this.sized=!1;this.repeatListExpression=t.bind(this,this.repeatListExpression_);this.container.register(this)};i.prototype.cleanupBlocks_=function(){t.forEach(this.pooledBlocks,function(n){n.element.remove()})};i.prototype.readItemSize_=function(){if(!this.itemSize){this.items=this.repeatListExpression(this.$scope);this.parentNode=this.$element[0].parentNode;var n=this.getBlock_(0);n.element[0].parentNode||this.parentNode.appendChild(n.element[0]);this.itemSize=n.element[0][this.container.isHorizontal()?"offsetWidth":"offsetHeight"]||null;this.blocks[0]=n;this.poolBlock_(0);this.itemSize&&this.containerUpdated()}};i.prototype.repeatListExpression_=function(n){var t=this.rawRepeatListExpression(n),i;return this.onDemand&&t?(i=new r(t),i.$$includeIndexes(this.newStartIndex,this.newVisibleEnd),i):t};i.prototype.containerUpdated=function(){return this.itemSize?(this.sized||(this.items=this.repeatListExpression(this.$scope)),this.sized||(this.unwatchItemSize_(),this.sized=!0,this.$scope.$watchCollection(this.repeatListExpression,t.bind(this,function(n,t){this.isVirtualRepeatUpdating_||this.virtualRepeatUpdate_(n,t)}))),this.updateIndexes_(),void((this.newStartIndex!==this.startIndex||this.newEndIndex!==this.endIndex||this.container.getScrollOffset()>this.container.getScrollSize())&&(this.items instanceof r&&this.items.$$includeIndexes(this.newStartIndex,this.newEndIndex),this.virtualRepeatUpdate_(this.items,this.items)))):(this.unwatchItemSize_&&this.unwatchItemSize_!==t.noop&&this.unwatchItemSize_(),this.unwatchItemSize_=this.$scope.$watchCollection(this.repeatListExpression,t.bind(this,function(n){n&&n.length&&this.readItemSize_()})),void(this.$rootScope.$$phase||this.$scope.$digest()))};i.prototype.getItemSize=function(){return this.itemSize};i.prototype.getItemCount=function(){return this.itemsLength};i.prototype.virtualRepeatUpdate_=function(n,i){var f,e,c,r,u,o,s,h,l;for(this.isVirtualRepeatUpdating_=!0,f=n&&n.length||0,e=!1,this.items&&f<this.items.length&&0!==this.container.getScrollOffset()&&(this.items=n,c=this.container.getScrollOffset(),this.container.resetScroll(),this.container.scrollTo(c)),f!==this.itemsLength&&(e=!0,this.itemsLength=f),this.items=n,(n!==i||e)&&this.updateIndexes_(),this.parentNode=this.$element[0].parentNode,e&&this.container.setScrollSize(f*this.itemSize),Object.keys(this.blocks).forEach(function(n){var t=parseInt(n,10);(t<this.newStartIndex||t>=this.newEndIndex)&&this.poolBlock_(t)},this),this.$browser.$$checkUrlChange=t.noop,o=[],s=[],r=this.newStartIndex;r<this.newEndIndex&&null==this.blocks[r];r++)u=this.getBlock_(r),this.updateBlock_(u,r),o.push(u);for(;null!=this.blocks[r];r++)this.updateBlock_(this.blocks[r],r);for(h=r-1;r<this.newEndIndex;r++)u=this.getBlock_(r),this.updateBlock_(u,r),s.push(u);(o.length&&this.parentNode.insertBefore(this.domFragmentFromBlocks_(o),this.$element[0].nextSibling),s.length&&this.parentNode.insertBefore(this.domFragmentFromBlocks_(s),this.blocks[h]&&this.blocks[h].element[0].nextSibling),this.$browser.$$checkUrlChange=this.browserCheckUrlChange,this.startIndex=this.newStartIndex,this.endIndex=this.newEndIndex,this.isFirstRender)&&(this.isFirstRender=!1,l=this.$attrs.mdStartIndex?this.$scope.$eval(this.$attrs.mdStartIndex):this.container.topIndex,this.$mdUtil.nextTick(function(){this.container.scrollToIndex(l)}.bind(this)));this.isVirtualRepeatUpdating_=!1};i.prototype.getBlock_=function(n){if(this.pooledBlocks.length)return this.pooledBlocks.pop();var i;return this.transclude(t.bind(this,function(t,r){i={element:t,"new":!0,scope:r};this.updateScope_(r,n);this.parentNode.appendChild(t[0])})),i};i.prototype.updateBlock_=function(n,t){this.blocks[t]=n;(n["new"]||n.scope.$index!==t||n.scope[this.repeatName]!==this.items[t])&&(n["new"]=!1,this.updateScope_(n.scope,t),this.$rootScope.$$phase||n.scope.$digest())};i.prototype.updateScope_=function(n,t){n.$index=t;n[this.repeatName]=this.items&&this.items[t];this.extraName&&(n[this.extraName(this.$scope)]=this.items[t])};i.prototype.poolBlock_=function(n){this.pooledBlocks.push(this.blocks[n]);this.parentNode.removeChild(this.blocks[n].element[0]);delete this.blocks[n]};i.prototype.domFragmentFromBlocks_=function(n){var t=this.$document[0].createDocumentFragment();return n.forEach(function(n){t.appendChild(n.element[0])}),t};i.prototype.updateIndexes_=function(){var n=this.items?this.items.length:0,t=Math.ceil(this.container.getSize()/this.itemSize);this.newStartIndex=Math.max(0,Math.min(n-t,Math.floor(this.container.getScrollOffset()/this.itemSize)));this.newVisibleEnd=this.newStartIndex+t+u;this.newEndIndex=Math.min(n,this.newVisibleEnd);this.newStartIndex=Math.max(0,this.newStartIndex-u)};r.prototype.$$includeIndexes=function(n,t){for(var i=n;i<t;i++)this.hasOwnProperty(i)||(this[i]=this.model.getItemAtIndex(i));this.length=this.model.getLength()};e.$inject=["$mdUtil"]}(),function(){function n(n){function f(f,e,o){var s="";o.$observe("mdWhiteframe",function(f){f=parseInt(f,10)||u;f!=t&&(f>r||f<i)&&(n.warn("md-whiteframe attribute value is invalid. It should be a number between "+i+" and "+r,e[0]),f=u);var h=f==t?"":"md-whiteframe-"+f+"dp";o.$updateClass(h,s);s=h})}var t=-1,i=1,r=24,u=4;return{link:f}}n.$inject=["$log"];t.module("material.components.whiteframe",["material.core"]).directive("mdWhiteframe",n)}(),function(){function r(r,o,s,h,c,l,a,v,y,p,w,b){function vi(){s.initOptionalProperties(r,y,{searchText:"",selectedItem:null,clearButton:!1});c(o);wi();s.nextTick(function(){di();yi();r.autofocus&&o.on("focus",pi)})}function bt(){r.requireMatch&&wt&&wt.$setValidity("md-require-match",!!r.selectedItem||!r.searchText)}function ut(){function g(){var n=0,t=o.find("md-input-container"),i;return t.length&&(i=t.find("input"),n=t.prop("offsetHeight"),n-=i.prop("offsetTop"),n-=i.prop("offsetHeight"),n+=t.prop("offsetTop")),n}function nt(){var i=d.scrollContainer.getBoundingClientRect(),r={};i.right>t.right-n&&(r.left=h.right-i.width+"px");d.$.scrollContainer.css(r)}var k;if(!d)return s.nextTick(ut,!1,r);var i,c=(r.dropdownItems||e)*f,h=d.wrap.getBoundingClientRect(),v=d.snap.getBoundingClientRect(),t=d.root.getBoundingClientRect(),l=v.bottom-t.top,p=t.bottom-v.top,w=h.left-t.left,b=h.width,tt=g(),a=r.dropdownPosition;(a||(a=l>p&&t.height-l-n<c?"top":"bottom"),y.mdFloatingLabel&&(w+=u,b-=2*u),i={left:w+"px",minWidth:b+"px",maxWidth:Math.max(h.right-t.left,t.right-h.left)-n+"px"},"top"===a)?(i.top="auto",i.bottom=p+"px",i.maxHeight=Math.min(c,h.top-t.top-n)+"px"):(k=t.bottom-h.bottom-n+s.getViewportTop(),i.top=l-tt+"px",i.bottom="auto",i.maxHeight=Math.min(c,k)+"px");d.$.scrollContainer.css(i);s.nextTick(nt,!1)}function yi(){d.$.root.length&&(c(d.$.scrollContainer),d.$.scrollContainer.detach(),d.$.root.append(d.$.scrollContainer),a.pin&&a.pin(d.$.scrollContainer,v))}function pi(){d.input.focus()}function wi(){var n=parseInt(r.delay,10)||0;y.$observe("disabled",function(n){k.isDisabled=s.parseAttributeBoolean(n,!1)});y.$observe("required",function(n){k.isRequired=s.parseAttributeBoolean(n,!1)});y.$observe("readonly",function(n){k.isReadonly=s.parseAttributeBoolean(n,!1)});r.$watch("searchText",n?s.debounce(dt,n):dt);r.$watch("selectedItem",fr);t.element(l).on("resize",ai);r.$on("$destroy",bi)}function bi(){if(k.hidden||s.enableScrolling(),t.element(l).off("resize",ai),d)t.forEach(["ul","scroller","scrollContainer","input"],function(n){d.$[n].remove()})}function ki(){k.hidden||ut()}function di(){var n=gi();d={main:o[0],scrollContainer:o[0].querySelector(".md-virtual-repeat-container"),scroller:o[0].querySelector(".md-virtual-repeat-scroller"),ul:o.find("ul")[0],input:o.find("input")[0],wrap:n.wrap,snap:n.snap,root:document.body};d.li=d.ul.getElementsByTagName("li");d.$=nr(d);wt=d.$.input.controller("ngModel")}function gi(){for(var i,r,n=o;n.length&&(i=n.attr("md-autocomplete-snap"),!t.isDefined(i));n=n.parent());return n.length?{snap:n[0],wrap:"width"===i.toLowerCase()?n[0]:o.find("md-autocomplete-wrap")[0]}:(r=o.find("md-autocomplete-wrap")[0],{snap:r,wrap:r})}function nr(n){var r={},i;for(i in n)n.hasOwnProperty(i)&&(r[i]=t.element(n[i]));return r}function tr(n,i){!n&&i?(ut(),ft(!0,g.Count|g.Selected),d&&(s.disableScrollAround(d.ul),lt=ir(t.element(d.wrap)))):n&&!i&&(s.enableScrolling(),lt&&(lt(),lt=null))}function ir(n){function t(n){n.preventDefault()}return n.on("wheel",t),n.on("touchmove",t),function(){n.off("wheel",t);n.off("touchmove",t)}}function rr(){et=!0}function kt(){rt||k.hidden||d.input.focus();et=!1;k.hidden=it()}function ur(){d.input.focus()}function fr(n,i){bt();n?nt(n).then(function(t){r.searchText=t;sr(n,i)}):i&&r.searchText&&nt(i).then(function(n){t.isString(r.searchText)&&n.toString().toLowerCase()===r.searchText.toLowerCase()&&(r.searchText="")});n!==i&&er()}function er(){t.isFunction(r.itemChange)&&r.itemChange(ni(r.selectedItem))}function or(){t.isFunction(r.textChange)&&r.textChange()}function sr(n,t){ot.forEach(function(i){i(n,t)})}function hr(n){ot.indexOf(n)==-1&&ot.push(n)}function cr(n){var t=ot.indexOf(n);t!=-1&&ot.splice(t,1)}function dt(n,t){k.index=pr();n!==t&&(bt(),nt(r.selectedItem).then(function(i){n!==i&&(r.selectedItem=null,n!==t&&or(),vt()?si():(k.matches=[],tt(!1),ft(!1,g.Count)))}))}function lr(n){rt=!1;et||(k.hidden=it(),ci("ngBlur",{$event:n}))}function ar(n){n&&(et=!1,rt=!1);d.input.blur()}function vr(n){rt=!0;ti()&&vt()&&si();k.hidden=it();ci("ngFocus",{$event:n})}function yr(n){switch(n.keyCode){case h.KEY_CODE.DOWN_ARROW:if(k.loading)return;n.stopPropagation();n.preventDefault();k.index=Math.min(k.index+1,k.matches.length-1);fi();ft(!1,g.Selected);break;case h.KEY_CODE.UP_ARROW:if(k.loading)return;n.stopPropagation();n.preventDefault();k.index=k.index<0?k.matches.length-1:Math.max(0,k.index-1);fi();ft(!1,g.Selected);break;case h.KEY_CODE.TAB:if(kt(),k.hidden||k.loading||k.index<0||k.matches.length<1)return;ct(k.index);break;case h.KEY_CODE.ENTER:if(k.hidden||k.loading||k.index<0||k.matches.length<1)return;if(ht())return;n.stopPropagation();n.preventDefault();ct(k.index);break;case h.KEY_CODE.ESCAPE:if(n.preventDefault(),!wr())return;n.stopPropagation();ri();r.searchText&&st("clear")&&ui();k.hidden=!0;st("blur")&&ar(!0)}}function gt(){return t.isNumber(r.minLength)?r.minLength:1}function nt(n){function i(n){return n&&r.itemText?r.itemText(ni(n)):null}return p.when(i(n)||n).then(function(n){return n&&!t.isString(n)&&w.warn("md-autocomplete: Could not resolve display value to a string. Please check the `md-item-text` attribute."),n})}function ni(n){if(!n)return i;var t={};return k.itemName&&(t[k.itemName]=n),t}function pr(){return r.autoselect?0:-1}function tt(n){k.loading!=n&&(k.loading=n);k.hidden=it()}function it(){return!ti()||!br()}function ti(){return!(k.loading&&!at())&&!ht()&&!!rt}function wr(){return st("blur")||!k.hidden||k.loading||st("clear")&&r.searchText}function st(n){return!r.escapeOptions||r.escapeOptions.toLowerCase().indexOf(n)!==-1}function br(){return vt()&&at()||oi()}function at(){return!!k.matches.length}function ht(){return!!k.scope.selectedItem}function kr(){return k.loading&&!ht()}function ii(){return nt(k.matches[k.index])}function vt(){return(r.searchText||"").length>=gt()}function dr(n,t,i){Object.defineProperty(k,n,{get:function(){return i},set:function(n){var r=i;i=n;t(n,r)}})}function ct(n){s.nextTick(function(){nt(k.matches[n]).then(function(n){var t=d.$.input.controller("ngModel");t.$setViewValue(n);t.$render()})["finally"](function(){r.selectedItem=k.matches[n];tt(!1)})},!1)}function gr(){ri();ui()}function ri(){k.index=0;k.matches=[]}function ui(){tt(!0);r.searchText="";var n=document.createEvent("CustomEvent");n.initCustomEvent("change",!0,!0,{value:""});d.input.dispatchEvent(n);d.input.blur();r.searchText="";d.input.focus()}function nu(n){function f(n){n&&(n=p.when(n),pt++,tt(!0),s.nextTick(function(){n.then(u)["finally"](function(){0==--pt&&tt(!1)})},!0,r))}function u(t){yt[e]=t;(n||"")===(r.searchText||"")&&hi(t)}var i=r.$parent.$eval(uu),e=n.toLowerCase(),o=t.isArray(i),h=!!i.then;o?u(i):h&&f(i)}function ft(n,t){var r=n?"polite":"assertive",i=[];t&g.Selected&&k.index!==-1&&i.push(ii());t&g.Count&&i.push(p.resolve(tu()));p.all(i).then(function(n){b.announce(n.join(" "),r)})}function tu(){switch(k.matches.length){case 0:return"There are no matches available.";case 1:return"There is 1 match available.";default:return"There are "+k.matches.length+" matches available."}}function fi(){if(d.li[0]){var t=d.li[0].offsetHeight,n=t*k.index,i=n+t,r=d.scroller.clientHeight,u=d.scroller.scrollTop;n<u?ei(n):i>u+r&&ei(i-r)}}function iu(){return 0!==pt}function ei(n){d.$.scrollContainer.controller("mdVirtualRepeatContainer").scrollTo(n)}function oi(){var n=(k.scope.searchText||"").length;return k.hasNotFound&&!at()&&(!k.loading||iu())&&n>=gt()&&(rt||et)&&!ht()}function si(){var n=r.searchText||"",t=n.toLowerCase();!r.noCache&&yt[t]?hi(yt[t]):nu(n);k.hidden=it()}function hi(n){k.matches=n;k.hidden=it();k.loading&&tt(!1);r.selectOnMatch&&ru();ut();ft(!0,g.Count)}function ru(){var n=r.searchText,t=k.matches,i=t[0];1===t.length&&nt(i).then(function(t){var i=n==t;r.matchInsensitive&&!i&&(i=n.toLowerCase()==t.toLowerCase());i&&ct(0)})}function ci(n,t){y[n]&&r.$parent.$eval(y[n],t||{})}var k=this,li=r.itemsExpr.split(/ in /i),uu=li[1],d=null,yt={},et=!1,ot=[],rt=!1,pt=0,lt=null,wt=null,ai=s.debounce(ki),g;return dr("hidden",tr,!0),k.scope=r,k.parent=r.$parent,k.itemName=li[0],k.matches=[],k.loading=!1,k.hidden=!0,k.index=null,k.id=s.nextUid(),k.isDisabled=null,k.isRequired=null,k.isReadonly=null,k.hasNotFound=!1,k.keydown=yr,k.blur=lr,k.focus=vr,k.clear=gr,k.select=ct,k.listEnter=rr,k.listLeave=kt,k.mouseUp=ur,k.getCurrentDisplayValue=ii,k.registerSelectedItemWatcher=hr,k.unregisterSelectedItemWatcher=cr,k.notFoundVisible=oi,k.loadingIsVisible=kr,k.positionDropdown=ut,g={Count:1,Selected:2},vi()}r.$inject=["$scope","$element","$mdUtil","$mdConstant","$mdTheming","$window","$animate","$rootElement","$attrs","$q","$log","$mdLiveAnnouncer"];t.module("material.components.autocomplete").controller("MdAutocompleteCtrl",r);var f=48,e=5,n=8,u=2}(),function(){function n(n){return{controller:"MdAutocompleteCtrl",controllerAs:"$mdAutocompleteCtrl",scope:{inputName:"@mdInputName",inputMinlength:"@mdInputMinlength",inputMaxlength:"@mdInputMaxlength",searchText:"=?mdSearchText",selectedItem:"=?mdSelectedItem",itemsExpr:"@mdItems",itemText:"&mdItemText",placeholder:"@placeholder",noCache:"=?mdNoCache",requireMatch:"=?mdRequireMatch",selectOnMatch:"=?mdSelectOnMatch",matchInsensitive:"=?mdMatchCaseInsensitive",itemChange:"&?mdSelectedItemChange",textChange:"&?mdSearchTextChange",minLength:"=?mdMinLength",delay:"=?mdDelay",autofocus:"=?mdAutofocus",floatingLabel:"@?mdFloatingLabel",autoselect:"=?mdAutoselect",menuClass:"@?mdMenuClass",inputId:"@?mdInputId",escapeOptions:"@?mdEscapeOptions",dropdownItems:"=?mdDropdownItems",dropdownPosition:"@?mdDropdownPosition",clearButton:"=?mdClearButton"},compile:function(n,i){var r=n.find("input");return["md-select-on-focus","md-no-asterisk","ng-trim","ng-pattern"].forEach(function(n){var t=i[i.$normalize(n)];null!==t&&r.attr(n,t)}),function(n,i,r,u){u.hasNotFound=!!i.attr("md-has-not-found");t.isDefined(r.mdClearButton)||n.floatingLabel||(n.clearButton=!0)}},template:function(t,i){function f(){var n=t.find("md-item-template").detach(),i=n.length?n.html():t.html();return n.length||t.empty(),"<md-autocomplete-parent-scope md-autocomplete-replace>"+i+"<\/md-autocomplete-parent-scope>"}function e(){var n=t.find("md-not-found").detach(),i=n.length?n.html():"";return i?'<li ng-if="$mdAutocompleteCtrl.notFoundVisible()"                         md-autocomplete-parent-scope>'+i+"<\/li>":""}function o(){return i.mdFloatingLabel?'            <md-input-container ng-if="floatingLabel">              <label>{{floatingLabel}}<\/label>              <input type="search"                  '+(null!=r?'tabindex="'+r+'"':"")+'                  id="{{ inputId || \'fl-input-\' + $mdAutocompleteCtrl.id }}"                  name="{{inputName}}"                  autocomplete="off"                  ng-required="$mdAutocompleteCtrl.isRequired"                  ng-readonly="$mdAutocompleteCtrl.isReadonly"                  ng-minlength="inputMinlength"                  ng-maxlength="inputMaxlength"                  ng-disabled="$mdAutocompleteCtrl.isDisabled"                  ng-model="$mdAutocompleteCtrl.scope.searchText"                  ng-model-options="{ allowInvalid: true }"                  ng-keydown="$mdAutocompleteCtrl.keydown($event)"                  ng-blur="$mdAutocompleteCtrl.blur($event)"                  ng-focus="$mdAutocompleteCtrl.focus($event)"                  aria-owns="ul-{{$mdAutocompleteCtrl.id}}"                  aria-label="{{floatingLabel}}"                  aria-autocomplete="list"                  role="combobox"                  aria-haspopup="true"                  aria-activedescendant=""                  aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/>              <div md-autocomplete-parent-scope md-autocomplete-replace>'+c+"<\/div>            <\/md-input-container>":'            <input type="search"                '+(null!=r?'tabindex="'+r+'"':"")+'                id="{{ inputId || \'input-\' + $mdAutocompleteCtrl.id }}"                name="{{inputName}}"                ng-if="!floatingLabel"                autocomplete="off"                ng-required="$mdAutocompleteCtrl.isRequired"                ng-disabled="$mdAutocompleteCtrl.isDisabled"                ng-readonly="$mdAutocompleteCtrl.isReadonly"                ng-minlength="inputMinlength"                ng-maxlength="inputMaxlength"                ng-model="$mdAutocompleteCtrl.scope.searchText"                ng-keydown="$mdAutocompleteCtrl.keydown($event)"                ng-blur="$mdAutocompleteCtrl.blur($event)"                ng-focus="$mdAutocompleteCtrl.focus($event)"                placeholder="{{placeholder}}"                aria-owns="ul-{{$mdAutocompleteCtrl.id}}"                aria-label="{{placeholder}}"                aria-autocomplete="list"                role="combobox"                aria-haspopup="true"                aria-activedescendant=""                aria-expanded="{{!$mdAutocompleteCtrl.hidden}}"/>'}function s(){return'<button type="button" aria-label="Clear Input" tabindex="-1" ng-if="clearButton && $mdAutocompleteCtrl.scope.searchText" ng-click="$mdAutocompleteCtrl.clear($event)"><md-icon md-svg-src="'+n.mdClose+'"><\/md-icon><\/button>'}var u=e(),h=f(),c=t.html(),r=i.tabindex;return u&&t.attr("md-has-not-found",!0),t.attr("tabindex","-1"),"        <md-autocomplete-wrap            ng-class=\"{ 'md-whiteframe-z1': !floatingLabel,                         'md-menu-showing': !$mdAutocompleteCtrl.hidden,                         'md-show-clear-button': !!clearButton }\">          "+o()+"          "+s()+'          <md-progress-linear              class="'+(i.mdFloatingLabel?"md-inline":"")+'"              ng-if="$mdAutocompleteCtrl.loadingIsVisible()"              md-mode="indeterminate"><\/md-progress-linear>          <md-virtual-repeat-container              md-auto-shrink              md-auto-shrink-min="1"              ng-mouseenter="$mdAutocompleteCtrl.listEnter()"              ng-mouseleave="$mdAutocompleteCtrl.listLeave()"              ng-mouseup="$mdAutocompleteCtrl.mouseUp()"              ng-hide="$mdAutocompleteCtrl.hidden"              class="md-autocomplete-suggestions-container md-whiteframe-z1"              ng-class="{ \'md-not-found\': $mdAutocompleteCtrl.notFoundVisible() }"              role="presentation">            <ul class="md-autocomplete-suggestions"                ng-class="::menuClass"                id="ul-{{$mdAutocompleteCtrl.id}}">              <li md-virtual-repeat="item in $mdAutocompleteCtrl.matches"                  ng-class="{ selected: $index === $mdAutocompleteCtrl.index }"                  ng-click="$mdAutocompleteCtrl.select($index)"                  md-extra-name="$mdAutocompleteCtrl.itemName">                  '+h+"                  <\/li>"+u+"            <\/ul>          <\/md-virtual-repeat-container>        <\/md-autocomplete-wrap>"}}}n.$inject=["$$mdSvgRegistry"];t.module("material.components.autocomplete").directive("mdAutocomplete",n)}(),function(){function n(n,t){function i(n,i,r){return function(n,i){function f(i,r){u[r]=n[i];n.$watch(i,function(n){t.nextTick(function(){u[r]=n})})}function o(){var i=!1,t=!1;n.$watch(function(){t||i||(i=!0,n.$$postDigest(function(){t||u.$digest();i=t=!1}))});u.$watch(function(){t=!0})}var e=n.$mdAutocompleteCtrl,u=e.parent.$new(),s=e.itemName;f("$index","$index");f("item",s);o();r(u,function(n){i.after(n)})}}return{restrict:"AE",compile:i,terminal:!0,transclude:"element"}}n.$inject=["$compile","$mdUtil"];t.module("material.components.autocomplete").directive("mdAutocompleteParentScope",n)}(),function(){function n(n,t,i){this.$scope=n;this.$element=t;this.$attrs=i;this.regex=null}n.$inject=["$scope","$element","$attrs"];t.module("material.components.autocomplete").controller("MdHighlightCtrl",n);n.prototype.init=function(n,t){this.flags=this.$attrs.mdHighlightFlags||"";this.unregisterFn=this.$scope.$watch(function(i){return{term:n(i),contentText:t(i)}}.bind(this),this.onRender.bind(this),!0);this.$element.on("$destroy",this.unregisterFn)};n.prototype.onRender=function(n,t){var i=n.contentText;null!==this.regex&&n.term===t.term||(this.regex=this.createRegex(n.term,this.flags));n.term?this.applyRegex(i):this.$element.text(i)};n.prototype.applyRegex=function(n){var i=this.resolveTokens(n);this.$element.empty();i.forEach(function(n){if(n.isMatch){var i=t.element('<span class="highlight">').text(n.text);this.$element.append(i)}else this.$element.append(document.createTextNode(n))}.bind(this))};n.prototype.resolveTokens=function(n){function r(i,r){var u=n.slice(i,r);u&&t.push(u)}var t=[],i=0;return n.replace(this.regex,function(n,u){r(i,u);t.push({text:n,isMatch:!0});i=u+n.length}),r(i),t};n.prototype.createRegex=function(n,t){var i="",r="",u=this.sanitizeRegex(n);return t.indexOf("^")>=0&&(i="^"),t.indexOf("$")>=0&&(r="$"),new RegExp(i+u+r,t.replace(/[$\^]/g,""))};n.prototype.sanitizeRegex=function(n){return n&&n.toString().replace(/[\\\^\$\*\+\?\.\(\)\|\{}\[\]]/g,"\\$&")}}(),function(){function n(n,t){return{terminal:!0,controller:"MdHighlightCtrl",compile:function(i,r){var u=t(r.mdHighlightText),f=n(i.html());return function(n,t,i,r){r.init(u,f)}}}}n.$inject=["$interpolate","$parse"];t.module("material.components.autocomplete").directive("mdHighlightText",n)}(),function(){function r(n,t,r,u,f){this.$scope=n;this.$element=t;this.$mdConstant=r;this.$timeout=u;this.$mdUtil=f;this.isEditting=!1;this.parentController=i;this.enableChipEdit=!1}r.$inject=["$scope","$element","$mdConstant","$timeout","$mdUtil"];t.module("material.components.chips").controller("MdChipCtrl",r);r.prototype.init=function(n){this.parentController=n;this.enableChipEdit=this.parentController.enableChipEdit;this.enableChipEdit&&(this.$element.on("keydown",this.chipKeyDown.bind(this)),this.$element.on("mousedown",this.chipMouseDown.bind(this)),this.getChipContent().addClass("_md-chip-content-edit-is-enabled"))};r.prototype.getChipContent=function(){var n=this.$element[0].getElementsByClassName("md-chip-content");return t.element(n[0])};r.prototype.getContentElement=function(){return t.element(this.getChipContent().children()[0])};r.prototype.getChipIndex=function(){return parseInt(this.$element.attr("index"))};r.prototype.goOutOfEditMode=function(){if(this.isEditting){this.isEditting=!1;this.$element.removeClass("_md-chip-editing");this.getChipContent()[0].contentEditable="false";var n=this.getChipIndex(),t=this.getContentElement().text();t?(this.parentController.updateChipContents(n,this.getContentElement().text()),this.$mdUtil.nextTick(function(){this.parentController.selectedChip===n&&this.parentController.focusChip(n)}.bind(this))):this.parentController.removeChipAndFocusInput(n)}};r.prototype.selectNodeContents=function(t){var i,r;document.body.createTextRange?(i=document.body.createTextRange(),i.moveToElementText(t),i.select()):n.getSelection&&(r=n.getSelection(),i=document.createRange(),i.selectNodeContents(t),r.removeAllRanges(),r.addRange(i))};r.prototype.goInEditMode=function(){this.isEditting=!0;this.$element.addClass("_md-chip-editing");this.getChipContent()[0].contentEditable="true";this.getChipContent().on("blur",function(){this.goOutOfEditMode()}.bind(this));this.selectNodeContents(this.getChipContent()[0])};r.prototype.chipKeyDown=function(n){this.isEditting||n.keyCode!==this.$mdConstant.KEY_CODE.ENTER&&n.keyCode!==this.$mdConstant.KEY_CODE.SPACE?this.isEditting&&n.keyCode===this.$mdConstant.KEY_CODE.ENTER&&(n.preventDefault(),this.goOutOfEditMode()):(n.preventDefault(),this.goInEditMode())};r.prototype.chipMouseDown=function(){this.getChipIndex()==this.parentController.selectedChip&&this.enableChipEdit&&!this.isEditting&&this.goInEditMode()}}(),function(){function n(n,r,u,f){function e(i,r,e,s){var h=s.shift(),l=s.shift(),c=t.element(r[0].querySelector(".md-chip-content"));n(r);h&&(l.init(h),c.append(u(o)(i)),c.on("blur",function(){h.resetSelectedChip();h.$scope.$applyAsync()}));f(function(){h&&h.shouldFocusLastChip&&h.focusLastChipThenInput()})}var o=r.processTemplate(i);return{restrict:"E",require:["^?mdChips","mdChip"],link:e,controller:"MdChipCtrl"}}n.$inject=["$mdTheming","$mdUtil","$compile","$timeout"];t.module("material.components.chips").directive("mdChip",n);var i='    <span ng-if="!$mdChipsCtrl.readonly" class="md-visually-hidden">      {{$mdChipsCtrl.deleteHint}}    <\/span>'}(),function(){function n(n){function t(t,i,r,u){i.on("click",function(){t.$apply(function(){u.removeChip(t.$$replacedScope.$index)})});n(function(){i.attr({tabindex:-1,"aria-hidden":!0});i.find("button").attr("tabindex","-1")})}return{restrict:"A",require:"^mdChips",scope:!1,link:t}}n.$inject=["$timeout"];t.module("material.components.chips").directive("mdChipRemove",n)}(),function(){function n(n){function t(t,i,r){var f=t.$parent.$mdChipsCtrl,u=f.parent.$new(!1,f.parent),e;u.$$replacedScope=t;u.$chip=t.$chip;u.$index=t.$index;u.$mdChipsCtrl=f;e=f.$scope.$eval(r.mdChipTransclude);i.html(e);n(i.contents())(u)}return{restrict:"EA",terminal:!0,link:t,scope:!1}}n.$inject=["$compile"];t.module("material.components.chips").directive("mdChipTransclude",n)}(),function(){function n(n,t,r,u,f,e,o){this.$timeout=e;this.$mdConstant=r;this.$scope=n;this.parent=n.$parent;this.$mdUtil=o;this.$log=u;this.$element=f;this.$attrs=t;this.ngModelCtrl=null;this.userInputNgModelCtrl=null;this.autocompleteCtrl=null;this.userInputElement=null;this.items=[];this.selectedChip=-1;this.enableChipEdit=o.parseAttributeBoolean(t.mdEnableChipEdit);this.addOnBlur=o.parseAttributeBoolean(t.mdAddOnBlur);this.inputAriaLabel="Chips input.";this.containerHint="Chips container. Use arrow keys to select chips.";this.deleteHint="Press delete to remove this chip.";this.deleteButtonLabel="Remove";this.chipBuffer="";this.useTransformChip=!1;this.useOnAdd=!1;this.useOnRemove=!1;this.wrapperId="";this.contentIds=[];this.ariaTabIndex=null;this.chipAppendDelay=i;this.init()}n.$inject=["$scope","$attrs","$mdConstant","$log","$element","$timeout","$mdUtil"];var i=300;t.module("material.components.chips").controller("MdChipsCtrl",n);n.prototype.init=function(){var n=this;n.wrapperId="_md-chips-wrapper-"+n.$mdUtil.nextUid();n.$scope.$watchCollection("$mdChipsCtrl.items",function(){n.setupInputAria();n.setupWrapperAria()});n.$attrs.$observe("mdChipAppendDelay",function(t){n.chipAppendDelay=parseInt(t)||i})};n.prototype.setupInputAria=function(){var n=this.$element.find("input");n&&(n.attr("role","textbox"),n.attr("aria-multiline",!0))};n.prototype.setupWrapperAria=function(){var t=this,n=this.$element.find("md-chips-wrap");this.items&&this.items.length?(n.attr("role","listbox"),this.contentIds=this.items.map(function(){return t.wrapperId+"-chip-"+t.$mdUtil.nextUid()}),n.attr("aria-owns",this.contentIds.join(" "))):(n.removeAttr("role"),n.removeAttr("aria-owns"))};n.prototype.inputKeydown=function(n){var t=this.getChipBuffer();if(!(this.autocompleteCtrl&&n.isDefaultPrevented&&n.isDefaultPrevented())){if(n.keyCode===this.$mdConstant.KEY_CODE.BACKSPACE)return 0!==this.getCursorPosition(n.target)?void 0:(n.preventDefault(),n.stopPropagation(),void(this.items.length&&this.selectAndFocusChipSafe(this.items.length-1)));if((!this.separatorKeys||this.separatorKeys.length<1)&&(this.separatorKeys=[this.$mdConstant.KEY_CODE.ENTER]),this.separatorKeys.indexOf(n.keyCode)!==-1)return this.autocompleteCtrl&&this.requireMatch||!t?void 0:(n.preventDefault(),this.hasMaxChipsReached())?void 0:(this.appendChip(t.trim()),this.resetChipBuffer(),!1)}};n.prototype.getCursorPosition=function(n){try{if(n.selectionStart===n.selectionEnd)return n.selectionStart}catch(t){if(!n.value)return 0}};n.prototype.updateChipContents=function(n,t){n>=0&&n<this.items.length&&(this.items[n]=t,this.ngModelCtrl.$setDirty())};n.prototype.isEditingChip=function(){return!!this.$element[0].querySelector("._md-chip-editing")};n.prototype.isRemovable=function(){return!!this.ngModelCtrl&&(this.readonly?this.removable:!t.isDefined(this.removable)||this.removable)};n.prototype.chipKeydown=function(n){if(!this.getChipBuffer()&&!this.isEditingChip())switch(n.keyCode){case this.$mdConstant.KEY_CODE.BACKSPACE:case this.$mdConstant.KEY_CODE.DELETE:if(this.selectedChip<0)return;if(n.preventDefault(),!this.isRemovable())return;this.removeAndSelectAdjacentChip(this.selectedChip);break;case this.$mdConstant.KEY_CODE.LEFT_ARROW:n.preventDefault();(this.selectedChip<0||this.readonly&&0==this.selectedChip)&&(this.selectedChip=this.items.length);this.items.length&&this.selectAndFocusChipSafe(this.selectedChip-1);break;case this.$mdConstant.KEY_CODE.RIGHT_ARROW:n.preventDefault();this.selectAndFocusChipSafe(this.selectedChip+1);break;case this.$mdConstant.KEY_CODE.ESCAPE:case this.$mdConstant.KEY_CODE.TAB:if(this.selectedChip<0)return;n.preventDefault();this.onFocus()}};n.prototype.getPlaceholder=function(){var n=this.items&&this.items.length&&(""==this.secondaryPlaceholder||this.secondaryPlaceholder);return n?this.secondaryPlaceholder:this.placeholder};n.prototype.removeAndSelectAdjacentChip=function(n){var t=this,i=t.getAdjacentChipIndex(n);this.$element[0].querySelector("md-chips-wrap");this.$element[0].querySelector('md-chip[index="'+n+'"]');t.removeChip(n);t.$timeout(function(){t.$timeout(function(){t.selectAndFocusChipSafe(i)})})};n.prototype.resetSelectedChip=function(){this.selectedChip=-1;this.ariaTabIndex=null};n.prototype.getAdjacentChipIndex=function(n){var t=this.items.length-1;return 0==t?-1:n==t?n-1:n};n.prototype.appendChip=function(n){var i,r,u,f;((this.shouldFocusLastChip=!0,this.useTransformChip&&this.transformChip)&&(i=this.transformChip({$chip:n}),t.isDefined(i)&&(n=i)),t.isObject(n)&&(r=this.items.some(function(i){return t.equals(n,i)}),r))||null==n||this.items.indexOf(n)+1||(u=this.items.push(n),f=u-1,this.ngModelCtrl.$setDirty(),this.validateModel(),this.useOnAdd&&this.onAdd&&this.onAdd({$chip:n,$index:f}))};n.prototype.useTransformChipExpression=function(){this.useTransformChip=!0};n.prototype.useOnAddExpression=function(){this.useOnAdd=!0};n.prototype.useOnRemoveExpression=function(){this.useOnRemove=!0};n.prototype.useOnSelectExpression=function(){this.useOnSelect=!0};n.prototype.getChipBuffer=function(){var n=this.userInputElement?this.userInputNgModelCtrl?this.userInputNgModelCtrl.$viewValue:this.userInputElement[0].value:this.chipBuffer;return t.isString(n)?n:""};n.prototype.resetChipBuffer=function(){this.userInputElement?this.userInputNgModelCtrl?(this.userInputNgModelCtrl.$setViewValue(""),this.userInputNgModelCtrl.$render()):this.userInputElement[0].value="":this.chipBuffer=""};n.prototype.hasMaxChipsReached=function(){return t.isString(this.maxChips)&&(this.maxChips=parseInt(this.maxChips,10)||0),this.maxChips>0&&this.items.length>=this.maxChips};n.prototype.validateModel=function(){this.ngModelCtrl.$setValidity("md-max-chips",!this.hasMaxChipsReached())};n.prototype.removeChip=function(n){var t=this.items.splice(n,1);this.ngModelCtrl.$setDirty();this.validateModel();t&&t.length&&this.useOnRemove&&this.onRemove&&this.onRemove({$chip:t[0],$index:n})};n.prototype.removeChipAndFocusInput=function(n){this.removeChip(n);this.autocompleteCtrl?(this.autocompleteCtrl.hidden=!0,this.$mdUtil.nextTick(this.onFocus.bind(this))):this.onFocus()};n.prototype.selectAndFocusChipSafe=function(n){if(!this.items.length||n===-1)return this.focusInput();if(n>=this.items.length){if(!this.readonly)return this.onFocus();n=0}n=Math.max(n,0);n=Math.min(n,this.items.length-1);this.selectChip(n);this.focusChip(n)};n.prototype.focusLastChipThenInput=function(){var n=this;n.shouldFocusLastChip=!1;n.focusChip(this.items.length-1);n.$timeout(function(){n.focusInput()},n.chipAppendDelay)};n.prototype.focusInput=function(){this.selectChip(-1);this.onFocus()};n.prototype.selectChip=function(n){n>=-1&&n<=this.items.length?(this.selectedChip=n,this.useOnSelect&&this.onSelect&&this.onSelect({$chip:this.items[n]})):this.$log.warn("Selected Chip index out of bounds; ignoring.")};n.prototype.selectAndFocusChip=function(n){this.selectChip(n);n!=-1&&this.focusChip(n)};n.prototype.focusChip=function(n){var t=this.$element[0].querySelector('md-chip[index="'+n+'"] .md-chip-content');this.ariaTabIndex=n;t.focus()};n.prototype.configureNgModel=function(n){this.ngModelCtrl=n;var t=this;n.$render=function(){t.items=t.ngModelCtrl.$viewValue}};n.prototype.onFocus=function(){var n=this.$element[0].querySelector("input");n&&n.focus();this.resetSelectedChip()};n.prototype.onInputFocus=function(){this.inputHasFocus=!0;this.setupInputAria();this.resetSelectedChip()};n.prototype.onInputBlur=function(){this.inputHasFocus=!1;this.shouldAddOnBlur()&&(this.appendChip(this.getChipBuffer().trim()),this.resetChipBuffer())};n.prototype.configureUserInput=function(n){var r;this.userInputElement=n;r=n.controller("ngModel");r!=this.ngModelCtrl&&(this.userInputNgModelCtrl=r);var f=this.$scope,i=this,u=function(n,r){f.$evalAsync(t.bind(i,r,n))};n.attr({tabindex:0}).on("keydown",function(n){u(n,i.inputKeydown)}).on("focus",function(n){u(n,i.onInputFocus)}).on("blur",function(n){u(n,i.onInputBlur)})};n.prototype.configureAutocomplete=function(n){n&&(this.autocompleteCtrl=n,n.registerSelectedItemWatcher(t.bind(this,function(n){if(n){if(this.hasMaxChipsReached())return;this.appendChip(n);this.resetChipBuffer()}})),this.$element.find("input").on("focus",t.bind(this,this.onInputFocus)).on("blur",t.bind(this,this.onInputBlur)))};n.prototype.shouldAddOnBlur=function(){this.validateModel();var t=this.getChipBuffer().trim(),n=this.ngModelCtrl.$valid,i=this.autocompleteCtrl&&!this.autocompleteCtrl.hidden;return this.userInputNgModelCtrl&&(n=n&&this.userInputNgModelCtrl.$valid),this.addOnBlur&&!this.requireMatch&&t&&n&&!i};n.prototype.hasFocus=function(){return this.inputHasFocus||this.selectedChip>=0};n.prototype.contentIdFor=function(n){return this.contentIds[n]}}(),function(){function n(n,t,e,o,s,h){function l(i,r){function u(n){if(r.ngModel){var t=f[0].querySelector(n);return t&&t.outerHTML}}var f=r.$mdUserTemplate;r.$mdUserTemplate=null;var a=u("md-chips>md-chip-template"),y=t.prefixer().buildList("md-chip-remove").map(function(n){return"md-chips>*["+n+"]"}).join(","),p=u(y)||c.remove,w=a||c["default"],l=u("md-chips>md-autocomplete")||u("md-chips>input")||c.input,v=f.find("md-chip");return f[0].querySelector("md-chip-template>*[md-chip-remove]")&&o.warn("invalid placement of md-chip-remove within md-chip-template."),function(i,u,f,o){var y,b;t.initOptionalProperties(i,r);n(u);y=o[0];(a&&(y.enableChipEdit=!1),y.chipContentsTemplate=w,y.chipRemoveTemplate=p,y.chipInputTemplate=l,y.mdCloseIcon=h.mdClose,u.attr({tabindex:-1}).on("focus",function(){y.onFocus()}),r.ngModel&&(y.configureNgModel(u.controller("ngModel")),f.mdTransformChip&&y.useTransformChipExpression(),f.mdOnAppend&&y.useOnAppendExpression(),f.mdOnAdd&&y.useOnAddExpression(),f.mdOnRemove&&y.useOnRemoveExpression(),f.mdOnSelect&&y.useOnSelectExpression(),l!=c.input&&i.$watch("$mdChipsCtrl.readonly",function(n){n||t.nextTick(function(){if(0===l.indexOf("<md-autocomplete")){var n=u.find("md-autocomplete");y.configureAutocomplete(n.controller("mdAutocomplete"))}y.configureUserInput(u.find("input"))})}),t.nextTick(function(){var n=u.find("input");n&&n.toggleClass("md-input",!0)})),v.length>0)&&(b=e(v.clone())(i.$parent),s(function(){u.find("md-chips-wrap").prepend(b)}))}}function a(){return{chips:t.processTemplate(i),input:t.processTemplate(r),"default":t.processTemplate(u),remove:t.processTemplate(f)}}var c=a();return{template:function(n,t){return t.$mdUserTemplate=n.clone(),c.chips},require:["mdChips"],restrict:"E",controller:"MdChipsCtrl",controllerAs:"$mdChipsCtrl",bindToController:!0,compile:l,scope:{readonly:"=readonly",removable:"=mdRemovable",placeholder:"@",secondaryPlaceholder:"@",maxChips:"@mdMaxChips",transformChip:"&mdTransformChip",onAppend:"&mdOnAppend",onAdd:"&mdOnAdd",onRemove:"&mdOnRemove",onSelect:"&mdOnSelect",inputAriaLabel:"@",containerHint:"@",deleteHint:"@",deleteButtonLabel:"@",separatorKeys:"=?mdSeparatorKeys",requireMatch:"=?mdRequireMatch",chipAppendDelayString:"@?mdChipAppendDelay"}}}n.$inject=["$mdTheming","$mdUtil","$compile","$log","$timeout","$$mdSvgRegistry"];t.module("material.components.chips").directive("mdChips",n);var i='      <md-chips-wrap          id="{{$mdChipsCtrl.wrapperId}}"          tabindex="{{$mdChipsCtrl.readonly ? 0 : -1}}"          ng-keydown="$mdChipsCtrl.chipKeydown($event)"          ng-class="{ \'md-focused\': $mdChipsCtrl.hasFocus(),                       \'md-readonly\': !$mdChipsCtrl.ngModelCtrl || $mdChipsCtrl.readonly,                      \'md-removable\': $mdChipsCtrl.isRemovable() }"          aria-setsize="{{$mdChipsCtrl.items.length}}"          class="md-chips">        <span ng-if="$mdChipsCtrl.readonly" class="md-visually-hidden">          {{$mdChipsCtrl.containerHint}}        <\/span>        <md-chip ng-repeat="$chip in $mdChipsCtrl.items"            index="{{$index}}"            ng-class="{\'md-focused\': $mdChipsCtrl.selectedChip == $index, \'md-readonly\': !$mdChipsCtrl.ngModelCtrl || $mdChipsCtrl.readonly}">          <div class="md-chip-content"              tabindex="{{$mdChipsCtrl.ariaTabIndex == $index ? 0 : -1}}"              id="{{$mdChipsCtrl.contentIdFor($index)}}"              role="option"              aria-selected="{{$mdChipsCtrl.selectedChip == $index}}"               aria-posinset="{{$index}}"              ng-click="!$mdChipsCtrl.readonly && $mdChipsCtrl.focusChip($index)"              ng-focus="!$mdChipsCtrl.readonly && $mdChipsCtrl.selectChip($index)"              md-chip-transclude="$mdChipsCtrl.chipContentsTemplate"><\/div>          <div ng-if="$mdChipsCtrl.isRemovable()"               class="md-chip-remove-container"               tabindex="-1"               md-chip-transclude="$mdChipsCtrl.chipRemoveTemplate"><\/div>        <\/md-chip>        <div class="md-chip-input-container" ng-if="!$mdChipsCtrl.readonly && $mdChipsCtrl.ngModelCtrl">          <div md-chip-transclude="$mdChipsCtrl.chipInputTemplate"><\/div>        <\/div>      <\/md-chips-wrap>',r='        <input            class="md-input"            tabindex="0"            aria-label="{{$mdChipsCtrl.inputAriaLabel}}"             placeholder="{{$mdChipsCtrl.getPlaceholder()}}"            ng-model="$mdChipsCtrl.chipBuffer"            ng-focus="$mdChipsCtrl.onInputFocus()"            ng-blur="$mdChipsCtrl.onInputBlur()"            ng-keydown="$mdChipsCtrl.inputKeydown($event)">',u="      <span>{{$chip}}<\/span>",f='      <button          class="md-chip-remove"          ng-if="$mdChipsCtrl.isRemovable()"          ng-click="$mdChipsCtrl.removeChipAndFocusInput($$replacedScope.$index)"          type="button"          tabindex="-1">        <md-icon md-svg-src="{{ $mdChipsCtrl.mdCloseIcon }}"><\/md-icon>        <span class="md-visually-hidden">          {{$mdChipsCtrl.deleteButtonLabel}}        <\/span>      <\/button>'}(),function(){function n(){this.selectedItem=null;this.searchText=""}t.module("material.components.chips").controller("MdContactChipsCtrl",n);n.prototype.queryContact=function(n){return this.contactQuery({$query:n})};n.prototype.itemName=function(n){return n[this.contactName]}}(),function(){function n(n,t){function r(i,r){return function(i,u,f,e){var o=e;t.initOptionalProperties(i,r);n(u);u.attr("tabindex","-1");f.$observe("mdChipAppendDelay",function(n){o.chipAppendDelay=n})}}return{template:function(){return i},restrict:"E",controller:"MdContactChipsCtrl",controllerAs:"$mdContactChipsCtrl",bindToController:!0,compile:r,scope:{contactQuery:"&mdContacts",placeholder:"@",secondaryPlaceholder:"@",contactName:"@mdContactName",contactImage:"@mdContactImage",contactEmail:"@mdContactEmail",contacts:"=ngModel",requireMatch:"=?mdRequireMatch",minLength:"=?mdMinLength",highlightFlags:"@?mdHighlightFlags",chipAppendDelay:"@?mdChipAppendDelay"}}}n.$inject=["$mdTheming","$mdUtil"];t.module("material.components.chips").directive("mdContactChips",n);var i='      <md-chips class="md-contact-chips"          ng-model="$mdContactChipsCtrl.contacts"          md-require-match="$mdContactChipsCtrl.requireMatch"          md-chip-append-delay="{{$mdContactChipsCtrl.chipAppendDelay}}"           md-autocomplete-snap>          <md-autocomplete              md-menu-class="md-contact-chips-suggestions"              md-selected-item="$mdContactChipsCtrl.selectedItem"              md-search-text="$mdContactChipsCtrl.searchText"              md-items="item in $mdContactChipsCtrl.queryContact($mdContactChipsCtrl.searchText)"              md-item-text="$mdContactChipsCtrl.itemName(item)"              md-no-cache="true"              md-min-length="$mdContactChipsCtrl.minLength"              md-autoselect              placeholder="{{$mdContactChipsCtrl.contacts.length == 0 ?                  $mdContactChipsCtrl.placeholder : $mdContactChipsCtrl.secondaryPlaceholder}}">            <div class="md-contact-suggestion">              <img                   ng-src="{{item[$mdContactChipsCtrl.contactImage]}}"                  alt="{{item[$mdContactChipsCtrl.contactName]}}"                  ng-if="item[$mdContactChipsCtrl.contactImage]" />              <span class="md-contact-name" md-highlight-text="$mdContactChipsCtrl.searchText"                    md-highlight-flags="{{$mdContactChipsCtrl.highlightFlags}}">                {{item[$mdContactChipsCtrl.contactName]}}              <\/span>              <span class="md-contact-email" >{{item[$mdContactChipsCtrl.contactEmail]}}<\/span>            <\/div>          <\/md-autocomplete>          <md-chip-template>            <div class="md-contact-avatar">              <img                   ng-src="{{$chip[$mdContactChipsCtrl.contactImage]}}"                  alt="{{$chip[$mdContactChipsCtrl.contactName]}}"                  ng-if="$chip[$mdContactChipsCtrl.contactImage]" />            <\/div>            <div class="md-contact-name">              {{$chip[$mdContactChipsCtrl.contactName]}}            <\/div>          <\/md-chip-template>      <\/md-chips>'}(),function(){!function(){function i(){return{template:function(n,t){var i=t.hasOwnProperty("ngIf")?"":'ng-if="calendarCtrl.isInitialized"';return'<div ng-switch="calendarCtrl.currentView" '+i+'><md-calendar-year ng-switch-when="year"><\/md-calendar-year><md-calendar-month ng-switch-default><\/md-calendar-month><\/div>'},scope:{minDate:"=mdMinDate",maxDate:"=mdMaxDate",dateFilter:"=mdDateFilter",_currentView:"@mdCurrentView"},require:["ngModel","mdCalendar"],controller:n,controllerAs:"calendarCtrl",bindToController:!0,link:function(n,t,i,r){var u=r[0],f=r[1];f.configureNgModel(u)}}}function n(n,i,r,f,e,o,s,h,c){o(n);this.$element=n;this.$scope=i;this.dateUtil=r;this.$mdUtil=f;this.keyCode=e.KEY_CODE;this.$$rAF=s;this.$mdDateLocale=c;this.today=this.dateUtil.createDateAtMidnight();this.ngModelCtrl=null;this.SELECTED_DATE_CLASS="md-calendar-selected-date";this.TODAY_CLASS="md-calendar-date-today";this.FOCUSED_DATE_CLASS="md-focus";this.id=u++;this.displayDate=null;this.selectedDate=null;this.firstRenderableDate=null;this.lastRenderableDate=null;this.isInitialized=!1;this.width=0;this.scrollbarWidth=0;h.tabindex||n.attr("tabindex","-1");var l,a=t.bind(this,this.handleKeyEvent);l=n.parent().hasClass("md-datepicker-calendar")?t.element(document.body):n;l.on("keydown",a);i.$on("$destroy",function(){l.off("keydown",a)});1===t.version.major&&t.version.minor<=4&&this.$onInit()}n.$inject=["$element","$scope","$$mdDateUtil","$mdUtil","$mdConstant","$mdTheming","$$rAF","$attrs","$mdDateLocale"];t.module("material.components.datepicker").directive("mdCalendar",i);var r=340,u=0;n.prototype.$onInit=function(){this.currentView=this._currentView||"month";var n=this.$mdDateLocale;this.firstRenderableDate=this.minDate&&this.minDate>n.firstRenderableDate?this.minDate:n.firstRenderableDate;this.lastRenderableDate=this.maxDate&&this.maxDate<n.lastRenderableDate?this.maxDate:n.lastRenderableDate};n.prototype.configureNgModel=function(n){var t=this;t.ngModelCtrl=n;t.$mdUtil.nextTick(function(){t.isInitialized=!0});n.$render=function(){var n=this.$viewValue;t.$scope.$broadcast("md-calendar-parent-changed",n);t.selectedDate||(t.selectedDate=n);t.displayDate||(t.displayDate=t.selectedDate||t.today)}};n.prototype.setNgModelValue=function(n){var t=this.dateUtil.createDateAtMidnight(n);return this.focus(t),this.$scope.$emit("md-calendar-change",t),this.ngModelCtrl.$setViewValue(t),this.ngModelCtrl.$render(),t};n.prototype.setCurrentView=function(n,i){var r=this;r.$mdUtil.nextTick(function(){r.currentView=n;i&&(r.displayDate=t.isDate(i)?i:new Date(i))})};n.prototype.focus=function(n){var i,u,t,r;this.dateUtil.isValidDate(n)?(i=this.$element[0].querySelector(".md-focus"),i&&i.classList.remove(this.FOCUSED_DATE_CLASS),u=this.getDateId(n,this.currentView),t=document.getElementById(u),t&&(t.classList.add(this.FOCUSED_DATE_CLASS),t.focus(),this.displayDate=n)):(r=this.$element[0].querySelector("[ng-switch]"),r&&r.focus())};n.prototype.getActionFromKeyEvent=function(n){var t=this.keyCode;switch(n.which){case t.ENTER:return"select";case t.RIGHT_ARROW:return"move-right";case t.LEFT_ARROW:return"move-left";case t.DOWN_ARROW:return n.metaKey?"move-page-down":"move-row-down";case t.UP_ARROW:return n.metaKey?"move-page-up":"move-row-up";case t.PAGE_DOWN:return"move-page-down";case t.PAGE_UP:return"move-page-up";case t.HOME:return"start";case t.END:return"end";default:return null}};n.prototype.handleKeyEvent=function(n){var t=this;this.$scope.$apply(function(){if(n.which==t.keyCode.ESCAPE||n.which==t.keyCode.TAB)return t.$scope.$emit("md-calendar-close"),void(n.which==t.keyCode.TAB&&n.preventDefault());var i=t.getActionFromKeyEvent(n);i&&(n.preventDefault(),n.stopPropagation(),t.$scope.$broadcast("md-calendar-parent-action",i))})};n.prototype.hideVerticalScrollbar=function(n){function i(){var i=t.width||r,u=t.scrollbarWidth,e=n.calendarScroller;f.style.width=i+"px";e.style.width=i+u+"px";e.style.paddingRight=u+"px"}var t=this,u=n.$element[0],f=u.querySelector(".md-calendar-scroll-mask");t.width>0?i():t.$$rAF(function(){var r=n.calendarScroller;t.scrollbarWidth=r.offsetWidth-r.clientWidth;t.width=u.querySelector("table").offsetWidth;i()})};n.prototype.getDateId=function(n,t){if(!t)throw new Error("A namespace for the date id has to be specified.");return["md",this.id,t,n.getFullYear(),n.getMonth(),n.getDate()].join("-")};n.prototype.updateVirtualRepeat=function(){var n=this.$scope,t=n.$on("$md-resize-enable",function(){n.$$phase||n.$apply();t()})}}()}(),function(){!function(){function r(){return{template:'<table aria-hidden="true" class="md-calendar-day-header"><thead><\/thead><\/table><div class="md-calendar-scroll-mask"><md-virtual-repeat-container class="md-calendar-scroll-container" md-offset-size="'+(u-i)+'"><table role="grid" tabindex="0" class="md-calendar" aria-readonly="true"><tbody md-calendar-month-body role="rowgroup" md-virtual-repeat="i in monthCtrl.items" md-month-offset="$index" class="md-calendar-month" md-start-index="monthCtrl.getSelectedMonthIndex()" md-item-size="'+i+'"><tr aria-hidden="true" md-force-height="\''+i+"px'\"><\/tr><\/tbody><\/table><\/md-virtual-repeat-container><\/div>",require:["^^mdCalendar","mdCalendarMonth"],controller:n,controllerAs:"monthCtrl",bindToController:!0,link:function(n,t,i,r){var u=r[0],f=r[1];f.initialize(u)}}}function n(n,t,i,r,u,f){this.$element=n;this.$scope=t;this.$animate=i;this.$q=r;this.dateUtil=u;this.dateLocale=f;this.calendarScroller=n[0].querySelector(".md-virtual-repeat-scroller");this.isInitialized=!1;this.isMonthTransitionInProgress=!1;var e=this;this.cellClickHandler=function(){var n=u.getTimestampFromNode(this);e.$scope.$apply(function(){e.calendarCtrl.setNgModelValue(n)})};this.headerClickHandler=function(){e.calendarCtrl.setCurrentView("year",u.getTimestampFromNode(this))}}n.$inject=["$element","$scope","$animate","$q","$$mdDateUtil","$mdDateLocale"];t.module("material.components.datepicker").directive("mdCalendarMonth",r);var i=265,u=45;n.prototype.initialize=function(n){this.items={length:this.dateUtil.getMonthDistance(n.firstRenderableDate,n.lastRenderableDate)+2};this.calendarCtrl=n;this.attachScopeListeners();n.updateVirtualRepeat();n.ngModelCtrl&&n.ngModelCtrl.$render()};n.prototype.getSelectedMonthIndex=function(){var n=this.calendarCtrl;return this.dateUtil.getMonthDistance(n.firstRenderableDate,n.displayDate||n.selectedDate||n.today)};n.prototype.changeSelectedDate=function(n){var r=this,t=r.calendarCtrl,i=t.selectedDate;t.selectedDate=n;this.changeDisplayDate(n).then(function(){var f=t.SELECTED_DATE_CLASS,e="month",r,u;i&&(r=document.getElementById(t.getDateId(i,e)),r&&(r.classList.remove(f),r.setAttribute("aria-selected","false")));n&&(u=document.getElementById(t.getDateId(n,e)),u&&(u.classList.add(f),u.setAttribute("aria-selected","true")))})};n.prototype.changeDisplayDate=function(n){var t,i;return this.isInitialized?!this.dateUtil.isValidDate(n)||this.isMonthTransitionInProgress?this.$q.when():(this.isMonthTransitionInProgress=!0,t=this.animateDateChange(n),this.calendarCtrl.displayDate=n,i=this,t.then(function(){i.isMonthTransitionInProgress=!1}),t):(this.buildWeekHeader(),this.calendarCtrl.hideVerticalScrollbar(this),this.isInitialized=!0,this.$q.when())};n.prototype.animateDateChange=function(n){if(this.dateUtil.isValidDate(n)){var t=this.dateUtil.getMonthDistance(this.calendarCtrl.firstRenderableDate,n);this.calendarScroller.scrollTop=t*i}return this.$q.when()};n.prototype.buildWeekHeader=function(){for(var t,r=this.dateLocale.firstDayOfWeek,u=this.dateLocale.shortDays,i=document.createElement("tr"),n=0;n<7;n++)t=document.createElement("th"),t.textContent=u[(n+r)%7],i.appendChild(t);this.$element.find("thead").append(i)};n.prototype.attachScopeListeners=function(){var n=this;n.$scope.$on("md-calendar-parent-changed",function(t,i){n.changeSelectedDate(i)});n.$scope.$on("md-calendar-parent-action",t.bind(this,this.handleKeyEvent))};n.prototype.handleKeyEvent=function(n,t){var f=this.calendarCtrl,r=f.displayDate,i,u;if("select"===t)f.setNgModelValue(r);else{i=null;u=this.dateUtil;switch(t){case"move-right":i=u.incrementDays(r,1);break;case"move-left":i=u.incrementDays(r,-1);break;case"move-page-down":i=u.incrementMonths(r,1);break;case"move-page-up":i=u.incrementMonths(r,-1);break;case"move-row-down":i=u.incrementDays(r,7);break;case"move-row-up":i=u.incrementDays(r,-7);break;case"start":i=u.getFirstDateOfMonth(r);break;case"end":i=u.getLastDateOfMonth(r)}i&&(i=this.dateUtil.clampDate(i,f.minDate,f.maxDate),this.changeDisplayDate(i).then(function(){f.focus(i)}))}}}()}(),function(){!function(){function i(i,r){var u=i('<md-icon md-svg-src="'+r.mdTabsArrow+'"><\/md-icon>')({})[0];return{require:["^^mdCalendar","^^mdCalendarMonth","mdCalendarMonthBody"],scope:{offset:"=mdMonthOffset"},controller:n,controllerAs:"mdMonthBodyCtrl",bindToController:!0,link:function(n,i,r,f){var o=f[0],s=f[1],e=f[2];e.calendarCtrl=o;e.monthCtrl=s;e.arrowIcon=u.cloneNode(!0);n.$watch(function(){return e.offset},function(n){t.isNumber(n)&&e.generateContent()})}}}function n(n,t,i){this.$element=n;this.dateUtil=t;this.dateLocale=i;this.monthCtrl=null;this.calendarCtrl=null;this.offset=null;this.focusAfterAppend=null}i.$inject=["$compile","$$mdSvgRegistry"];n.$inject=["$element","$$mdDateUtil","$mdDateLocale"];t.module("material.components.datepicker").directive("mdCalendarMonthBody",i);n.prototype.generateContent=function(){var n=this.dateUtil.incrementMonths(this.calendarCtrl.firstRenderableDate,this.offset);this.$element.empty().append(this.buildCalendarForMonth(n));this.focusAfterAppend&&(this.focusAfterAppend.classList.add(this.calendarCtrl.FOCUSED_DATE_CLASS),this.focusAfterAppend.focus(),this.focusAfterAppend=null)};n.prototype.buildDateCell=function(n){var f=this.monthCtrl,i=this.calendarCtrl,t=document.createElement("td"),u,r;return(t.tabIndex=-1,t.classList.add("md-calendar-date"),t.setAttribute("role","gridcell"),n)&&(t.setAttribute("tabindex","-1"),t.setAttribute("aria-label",this.dateLocale.longDateFormatter(n)),t.id=i.getDateId(n,"month"),t.setAttribute("data-timestamp",n.getTime()),this.dateUtil.isSameDay(n,i.today)&&t.classList.add(i.TODAY_CLASS),this.dateUtil.isValidDate(i.selectedDate)&&this.dateUtil.isSameDay(n,i.selectedDate)&&(t.classList.add(i.SELECTED_DATE_CLASS),t.setAttribute("aria-selected","true")),u=this.dateLocale.dates[n.getDate()],this.isDateEnabled(n)?(r=document.createElement("span"),r.classList.add("md-calendar-date-selection-indicator"),r.textContent=u,t.appendChild(r),t.addEventListener("click",f.cellClickHandler),i.displayDate&&this.dateUtil.isSameDay(n,i.displayDate)&&(this.focusAfterAppend=t)):(t.classList.add("md-calendar-date-disabled"),t.textContent=u)),t};n.prototype.isDateEnabled=function(n){return this.dateUtil.isDateWithinRange(n,this.calendarCtrl.minDate,this.calendarCtrl.maxDate)&&(!t.isFunction(this.calendarCtrl.dateFilter)||this.calendarCtrl.dateFilter(n))};n.prototype.buildDateRow=function(n){var t=document.createElement("tr");return t.setAttribute("role","row"),t.setAttribute("aria-label",this.dateLocale.weekNumberFormatter(n)),t};n.prototype.buildCalendarForMonth=function(n){var u=this.dateUtil.isValidDate(n)?n:new Date,f=this.dateUtil.getFirstDateOfMonth(u),e=this.getLocaleDay_(f),d=this.dateUtil.getNumberOfDaysInMonth(u),r=document.createDocumentFragment(),o=1,i=this.buildDateRow(o),s,h,k,a,v;r.appendChild(i);var y=this.offset===this.monthCtrl.items.length-1,p=0,t=document.createElement("td"),w=document.createElement("span");if(w.textContent=this.dateLocale.monthHeaderFormatter(u),t.appendChild(w),t.classList.add("md-calendar-month-label"),this.calendarCtrl.maxDate&&f>this.calendarCtrl.maxDate?t.classList.add("md-calendar-month-label-disabled"):(t.addEventListener("click",this.monthCtrl.headerClickHandler),t.setAttribute("data-timestamp",f.getTime()),t.setAttribute("aria-label",this.dateLocale.monthFormatter(u)),t.appendChild(this.arrowIcon.cloneNode(!0))),e<=2){if(t.setAttribute("colspan","7"),s=this.buildDateRow(),s.appendChild(t),r.insertBefore(s,i),y)return r}else p=3,t.setAttribute("colspan","3"),i.appendChild(t);for(h=p;h<e;h++)i.appendChild(this.buildDateCell());for(var c=e,b=f,l=1;l<=d;l++){if(7===c){if(y)return r;c=0;o++;i=this.buildDateRow(o);r.appendChild(i)}b.setDate(l);k=this.buildDateCell(b);i.appendChild(k);c++}for(;i.childNodes.length<7;)i.appendChild(this.buildDateCell());for(;r.childNodes.length<6;){for(a=this.buildDateRow(),v=0;v<7;v++)a.appendChild(this.buildDateCell());r.appendChild(a)}return r};n.prototype.getLocaleDay_=function(n){return(n.getDay()+(7-this.dateLocale.firstDayOfWeek))%7}}()}(),function(){!function(){function r(){return{template:'<div class="md-calendar-scroll-mask"><md-virtual-repeat-container class="md-calendar-scroll-container"><table role="grid" tabindex="0" class="md-calendar" aria-readonly="true"><tbody md-calendar-year-body role="rowgroup" md-virtual-repeat="i in yearCtrl.items" md-year-offset="$index" class="md-calendar-year" md-start-index="yearCtrl.getFocusedYearIndex()" md-item-size="'+i+'"><tr aria-hidden="true" md-force-height="\''+i+"px'\"><\/tr><\/tbody><\/table><\/md-virtual-repeat-container><\/div>",require:["^^mdCalendar","mdCalendarYear"],controller:n,controllerAs:"yearCtrl",bindToController:!0,link:function(n,t,i,r){var u=r[0],f=r[1];f.initialize(u)}}}function n(n,t,i,r,u){this.$element=n;this.$scope=t;this.$animate=i;this.$q=r;this.dateUtil=u;this.calendarScroller=n[0].querySelector(".md-virtual-repeat-scroller");this.isInitialized=!1;this.isMonthTransitionInProgress=!1;var f=this;this.cellClickHandler=function(){f.calendarCtrl.setCurrentView("month",u.getTimestampFromNode(this))}}n.$inject=["$element","$scope","$animate","$q","$$mdDateUtil"];t.module("material.components.datepicker").directive("mdCalendarYear",r);var i=88;n.prototype.initialize=function(n){this.items={length:this.dateUtil.getYearDistance(n.firstRenderableDate,n.lastRenderableDate)+1};this.calendarCtrl=n;this.attachScopeListeners();n.updateVirtualRepeat();n.ngModelCtrl&&n.ngModelCtrl.$render()};n.prototype.getFocusedYearIndex=function(){var n=this.calendarCtrl;return this.dateUtil.getYearDistance(n.firstRenderableDate,n.displayDate||n.selectedDate||n.today)};n.prototype.changeDate=function(n){if(!this.isInitialized)return this.calendarCtrl.hideVerticalScrollbar(this),this.isInitialized=!0,this.$q.when();if(this.dateUtil.isValidDate(n)&&!this.isMonthTransitionInProgress){var t=this,i=this.animateDateChange(n);return t.isMonthTransitionInProgress=!0,t.calendarCtrl.displayDate=n,i.then(function(){t.isMonthTransitionInProgress=!1})}};n.prototype.animateDateChange=function(n){if(this.dateUtil.isValidDate(n)){var t=this.dateUtil.getYearDistance(this.calendarCtrl.firstRenderableDate,n);this.calendarScroller.scrollTop=t*i}return this.$q.when()};n.prototype.handleKeyEvent=function(n,t){var r=this.calendarCtrl,f=r.displayDate,i,u,e,o;if("select"===t)this.changeDate(f).then(function(){r.setCurrentView("month",f);r.focus(f)});else{i=null;u=this.dateUtil;switch(t){case"move-right":i=u.incrementMonths(f,1);break;case"move-left":i=u.incrementMonths(f,-1);break;case"move-row-down":i=u.incrementMonths(f,6);break;case"move-row-up":i=u.incrementMonths(f,-6)}i&&(e=r.minDate?u.getFirstDateOfMonth(r.minDate):null,o=r.maxDate?u.getFirstDateOfMonth(r.maxDate):null,i=u.getFirstDateOfMonth(this.dateUtil.clampDate(i,e,o)),this.changeDate(i).then(function(){r.focus(i)}))}};n.prototype.attachScopeListeners=function(){var n=this;n.$scope.$on("md-calendar-parent-changed",function(t,i){n.changeDate(i)});n.$scope.$on("md-calendar-parent-action",t.bind(n,n.handleKeyEvent))}}()}(),function(){!function(){function i(){return{require:["^^mdCalendar","^^mdCalendarYear","mdCalendarYearBody"],scope:{offset:"=mdYearOffset"},controller:n,controllerAs:"mdYearBodyCtrl",bindToController:!0,link:function(n,i,r,u){var e=u[0],o=u[1],f=u[2];f.calendarCtrl=e;f.yearCtrl=o;n.$watch(function(){return f.offset},function(n){t.isNumber(n)&&f.generateContent()})}}}function n(n,t,i){this.$element=n;this.dateUtil=t;this.dateLocale=i;this.calendarCtrl=null;this.yearCtrl=null;this.offset=null;this.focusAfterAppend=null}n.$inject=["$element","$$mdDateUtil","$mdDateLocale"];t.module("material.components.datepicker").directive("mdCalendarYearBody",i);n.prototype.generateContent=function(){var n=this.dateUtil.incrementYears(this.calendarCtrl.firstRenderableDate,this.offset);this.$element.empty().append(this.buildCalendarForYear(n));this.focusAfterAppend&&(this.focusAfterAppend.classList.add(this.calendarCtrl.FOCUSED_DATE_CLASS),this.focusAfterAppend.focus(),this.focusAfterAppend=null)};n.prototype.buildMonthCell=function(n,t){var r=this.calendarCtrl,o=this.yearCtrl,i=this.buildBlankCell(),u=new Date(n,t,1),e,f;return i.setAttribute("aria-label",this.dateLocale.monthFormatter(u)),i.id=r.getDateId(u,"year"),i.setAttribute("data-timestamp",u.getTime()),this.dateUtil.isSameMonthAndYear(u,r.today)&&i.classList.add(r.TODAY_CLASS),this.dateUtil.isValidDate(r.selectedDate)&&this.dateUtil.isSameMonthAndYear(u,r.selectedDate)&&(i.classList.add(r.SELECTED_DATE_CLASS),i.setAttribute("aria-selected","true")),e=this.dateLocale.shortMonths[t],this.dateUtil.isMonthWithinRange(u,r.minDate,r.maxDate)?(f=document.createElement("span"),f.classList.add("md-calendar-date-selection-indicator"),f.textContent=e,i.appendChild(f),i.addEventListener("click",o.cellClickHandler),r.displayDate&&this.dateUtil.isSameMonthAndYear(u,r.displayDate)&&(this.focusAfterAppend=i)):(i.classList.add("md-calendar-date-disabled"),i.textContent=e),i};n.prototype.buildBlankCell=function(){var n=document.createElement("td");return n.tabIndex=-1,n.classList.add("md-calendar-date"),n.setAttribute("role","gridcell"),n.setAttribute("tabindex","-1"),n};n.prototype.buildCalendarForYear=function(n){var t,r=n.getFullYear(),u=document.createDocumentFragment(),f=document.createElement("tr"),e=document.createElement("td"),i;for(e.className="md-calendar-month-label",e.textContent=r,f.appendChild(e),t=0;t<6;t++)f.appendChild(this.buildMonthCell(r,t));for(u.appendChild(f),i=document.createElement("tr"),i.appendChild(this.buildBlankCell()),t=6;t<12;t++)i.appendChild(this.buildMonthCell(r,t));return u.appendChild(i),u}}()}(),function(){!function(){t.module("material.components.datepicker").config(["$provide",function(n){function t(){this.months=null;this.shortMonths=null;this.days=null;this.shortDays=null;this.dates=null;this.firstDayOfWeek=0;this.formatDate=null;this.parseDate=null;this.monthHeaderFormatter=null;this.weekNumberFormatter=null;this.longDateFormatter=null;this.msgCalendar="";this.msgOpenCalendar=""}t.prototype.$get=function(n,t){function e(n,i){if(!n)return"";var r=n.toLocaleTimeString(),u=n;return 0!==n.getHours()||r.indexOf("11:")===-1&&r.indexOf("23:")===-1||(u=new Date(n.getFullYear(),n.getMonth(),n.getDate(),1,0,0)),t("date")(u,"M/d/yyyy",i)}function o(n){return new Date(n)}function s(n){n=n.trim();return/^(([a-zA-Z]{3,}|[0-9]{1,4})([ \.,]+|[\/\-])){2}([a-zA-Z]{3,}|[0-9]{1,4})$/.test(n)}function h(n){return i.shortMonths[n.getMonth()]+" "+n.getFullYear()}function c(n){return i.months[n.getMonth()]+" "+n.getFullYear()}function l(n){return"Week "+n}function a(n){return[i.days[n.getDay()],i.months[n.getMonth()],i.dates[n.getDate()],n.getFullYear()].join(" ")}for(var v=n.DATETIME_FORMATS.SHORTDAY.map(function(n){return n.substring(0,1)}),u=Array(32),r=1;r<=31;r++)u[r]=r;var f=new Date(1880,0,1),y=new Date(f.getFullYear()+250,0,1),i={months:this.months||n.DATETIME_FORMATS.MONTH,shortMonths:this.shortMonths||n.DATETIME_FORMATS.SHORTMONTH,days:this.days||n.DATETIME_FORMATS.DAY,shortDays:this.shortDays||v,dates:this.dates||u,firstDayOfWeek:this.firstDayOfWeek||0,formatDate:this.formatDate||e,parseDate:this.parseDate||o,isDateComplete:this.isDateComplete||s,monthHeaderFormatter:this.monthHeaderFormatter||h,monthFormatter:this.monthFormatter||c,weekNumberFormatter:this.weekNumberFormatter||l,longDateFormatter:this.longDateFormatter||a,msgCalendar:this.msgCalendar||"Calendar",msgOpenCalendar:this.msgOpenCalendar||"Open calendar",firstRenderableDate:this.firstRenderableDate||f,lastRenderableDate:this.lastRenderableDate||y};return i};t.prototype.$get.$inject=["$locale","$filter"];n.provider("$mdDateLocale",new t)}])}()}(),function(){!function(){t.module("material.components.datepicker").factory("$$mdDateUtil",function(){function f(n){return new Date(n.getFullYear(),n.getMonth(),1)}function u(n){return new Date(n.getFullYear(),n.getMonth()+1,0).getDate()}function e(n){return new Date(n.getFullYear(),n.getMonth()+1,1)}function o(n){return new Date(n.getFullYear(),n.getMonth()-1,1)}function i(n,t){return n.getFullYear()===t.getFullYear()&&n.getMonth()===t.getMonth()}function c(n,t){return n.getDate()==t.getDate()&&i(n,t)}function l(n,t){var r=e(n);return i(r,t)}function a(n,t){var r=o(n);return i(t,r)}function v(t,i){return n((t.getTime()+i.getTime())/2)}function y(n){var t=f(n);return Math.floor((t.getDay()+n.getDate()-1)/7)}function p(n,t){return new Date(n.getFullYear(),n.getMonth(),n.getDate()+t)}function s(n,t){var i=new Date(n.getFullYear(),n.getMonth()+t,1),r=u(i);return r<n.getDate()?i.setDate(r):i.setDate(n.getDate()),i}function w(n,t){return 12*(t.getFullYear()-n.getFullYear())+(t.getMonth()-n.getMonth())}function b(n){return new Date(n.getFullYear(),n.getMonth(),u(n))}function r(n){return n&&n.getTime&&!isNaN(n.getTime())}function h(n){r(n)&&n.setHours(0,0,0,0)}function n(n){var i;return i=t.isUndefined(n)?new Date:new Date(n),h(i),i}function k(t,i,u){var f=n(t),e=r(i)?n(i):null,o=r(u)?n(u):null;return(!e||e<=f)&&(!o||o>=f)}function d(n,t){return s(n,12*t)}function g(n,t){return t.getFullYear()-n.getFullYear()}function nt(n,t,i){var r=n;return t&&n<t&&(r=new Date(t.getTime())),i&&n>i&&(r=new Date(i.getTime())),r}function tt(n){if(n&&n.hasAttribute("data-timestamp"))return Number(n.getAttribute("data-timestamp"))}function it(n,t,i){var r=n.getMonth(),u=n.getFullYear();return(!t||t.getFullYear()<u||t.getMonth()<=r)&&(!i||i.getFullYear()>u||i.getMonth()>=r)}return{getFirstDateOfMonth:f,getNumberOfDaysInMonth:u,getDateInNextMonth:e,getDateInPreviousMonth:o,isInNextMonth:l,isInPreviousMonth:a,getDateMidpoint:v,isSameMonthAndYear:i,getWeekOfMonth:y,incrementDays:p,incrementMonths:s,getLastDateOfMonth:b,isSameDay:c,getMonthDistance:w,isValidDate:r,setDateTimeToMidnight:h,createDateAtMidnight:n,isDateWithinRange:k,incrementYears:d,getYearDistance:g,clampDate:nt,getTimestampFromNode:tt,isMonthWithinRange:it}})}()}(),function(){!function(){function e(n,r,u,f){return{template:function(t,i){var r=i.mdHideIcons,u=i.ariaLabel||i.mdPlaceholder,e="all"===r||"calendar"===r?"":'<md-button class="md-datepicker-button md-icon-button" type="button" tabindex="-1" aria-hidden="true" ng-click="ctrl.openCalendarPane($event)"><md-icon class="md-datepicker-calendar-icon" aria-label="md-calendar" md-svg-src="'+n.mdCalendar+'"><\/md-icon><\/md-button>',f="";return"all"!==r&&"triangle"!==r&&(f='<md-button type="button" md-no-ink class="md-datepicker-triangle-button md-icon-button" ng-click="ctrl.openCalendarPane($event)" aria-label="{{::ctrl.locale.msgOpenCalendar}}"><div class="md-datepicker-expand-triangle"><\/div><\/md-button>',t.addClass(l)),e+'<div class="md-datepicker-input-container" ng-class="{\'md-datepicker-focused\': ctrl.isFocused}"><input '+(u?'aria-label="'+u+'" ':"")+'class="md-datepicker-input" aria-haspopup="true" aria-expanded="{{ctrl.isCalendarOpen}}" ng-focus="ctrl.setFocused(true)" ng-blur="ctrl.setFocused(false)"> '+f+'<\/div><div class="md-datepicker-calendar-pane md-whiteframe-z1" id="{{::ctrl.calendarPaneId}}"><div class="md-datepicker-input-mask"><div class="md-datepicker-input-mask-opaque"><\/div><\/div><div class="md-datepicker-calendar"><md-calendar role="dialog" aria-label="{{::ctrl.locale.msgCalendar}}" md-current-view="{{::ctrl.currentView}}"md-min-date="ctrl.minDate"md-max-date="ctrl.maxDate"md-date-filter="ctrl.dateFilter"ng-model="ctrl.date" ng-if="ctrl.isCalendarOpen"><\/md-calendar><\/div><\/div>'},require:["ngModel","mdDatepicker","?^mdInputContainer","?^form"],scope:{minDate:"=mdMinDate",maxDate:"=mdMaxDate",placeholder:"@mdPlaceholder",currentView:"@mdCurrentView",dateFilter:"=mdDateFilter",isOpen:"=?mdIsOpen",debounceInterval:"=mdDebounceInterval",dateLocale:"=mdDateLocale"},controller:i,controllerAs:"ctrl",bindToController:!0,link:function(n,i,e,o){var a=o[0],y=o[1],s=o[2],l=o[3],w=r.parseAttributeBoolean(e.mdNoAsterisk),v,p;(y.configureNgModel(a,s,f),s)?(v=i[0].querySelector(".md-errors-spacer"),v&&i.after(t.element("<div>").append(v)),s.setHasPlaceholder(e.mdPlaceholder),s.input=i,s.element.addClass(h).toggleClass(c,"calendar"!==e.mdHideIcons&&"all"!==e.mdHideIcons),s.label?w||e.$observe("required",function(n){s.label.toggleClass("md-required",!!n)}):u.expect(i,"aria-label",e.mdPlaceholder),n.$watch(s.isErrorGetter||function(){return a.$invalid&&(a.$touched||l&&l.$submitted)},s.setInvalid)):l&&(p=n.$watch(function(){return l.$submitted},function(n){n&&(y.updateErrorState(),p())}))}}}function i(i,r,u,f,e,o,s,h,c,l,a){this.$window=f;this.dateUtil=c;this.$mdConstant=e;this.$mdUtil=s;this.$$rAF=l;this.$mdDateLocale=h;this.documentElement=t.element(document.documentElement);this.ngModelCtrl=null;this.inputElement=r[0].querySelector("input");this.ngInputElement=t.element(this.inputElement);this.inputContainer=r[0].querySelector(".md-datepicker-input-container");this.calendarPane=r[0].querySelector(".md-datepicker-calendar-pane");this.calendarButton=r[0].querySelector(".md-datepicker-button");this.inputMask=t.element(r[0].querySelector(".md-datepicker-input-mask-opaque"));this.$element=r;this.$attrs=u;this.$scope=i;this.date=null;this.isFocused=!1;this.isDisabled;this.setDisabled(r[0].disabled||t.isString(u.disabled));this.isCalendarOpen=!1;this.openOnFocus=u.hasOwnProperty("mdOpenOnFocus");this.mdInputContainer=null;this.calendarPaneOpenedFrom=null;this.calendarPaneId="md-date-pane-"+s.nextUid();this.bodyClickHandler=t.bind(this,this.handleBodyClick);this.windowEventName=v.test(navigator.userAgent||navigator.vendor||n.opera)?"orientationchange":"resize";this.windowEventHandler=s.debounce(t.bind(this,this.closeCalendarPane),100);this.windowBlurHandler=t.bind(this,this.handleWindowBlur);this.ngDateFilter=a("date");this.leftMargin=20;this.topMargin=null;u.tabindex?(this.ngInputElement.attr("tabindex",u.tabindex),u.$set("tabindex",null)):u.$set("tabindex","-1");u.$set("aria-owns",this.calendarPaneId);o(r);o(t.element(this.calendarPane));var y=this;i.$on("$destroy",function(){y.detachCalendarPane()});u.mdIsOpen&&i.$watch("ctrl.isOpen",function(n){n?y.openCalendarPane({target:y.inputElement}):y.closeCalendarPane()});1===t.version.major&&t.version.minor<=4&&this.$onInit()}i.$inject=["$scope","$element","$attrs","$window","$mdConstant","$mdTheming","$mdUtil","$mdDateLocale","$$mdDateUtil","$$rAF","$filter"];e.$inject=["$$mdSvgRegistry","$mdUtil","$mdAria","inputDirective"];t.module("material.components.datepicker").directive("mdDatepicker",e);var s=3,o="md-datepicker-invalid",r="md-datepicker-open",h="_md-datepicker-floating-label",c="_md-datepicker-has-calendar-icon",l="_md-datepicker-has-triangle-icon",a=500,f=368,u=360,v=/ipad|iphone|ipod|android/i;i.prototype.$onInit=function(){this.locale=this.dateLocale?t.extend({},this.$mdDateLocale,this.dateLocale):this.$mdDateLocale;this.installPropertyInterceptors();this.attachChangeListeners();this.attachInteractionListeners()};i.prototype.configureNgModel=function(n,i,r){var u,f;this.ngModelCtrl=n;this.mdInputContainer=i;this.$attrs.$set("type","date");r[0].link.pre(this.$scope,{on:t.noop,val:t.noop,0:{}},this.$attrs,[n]);u=this;u.ngModelCtrl.$formatters.push(function(n){var i=t.isDefined(n)?Date.parse(n):null;if(!isNaN(i)&&t.isNumber(i)&&(n=new Date(i)),n&&!(n instanceof Date))throw Error("The ng-model for md-datepicker must be a Date instance or a value that can be parsed into a date. Currently the model is of type: "+typeof n);return u.onExternalChange(n),n});n.$viewChangeListeners.unshift(t.bind(this,this.updateErrorState));f=u.$mdUtil.getModelOption(n,"updateOn");f&&this.ngInputElement.on(f,t.bind(this.$element,this.$element.triggerHandler,f))};i.prototype.attachChangeListeners=function(){var n=this,i;n.$scope.$on("md-calendar-change",function(t,i){n.setModelValue(i);n.onExternalChange(i);n.closeCalendarPane()});n.ngInputElement.on("input",t.bind(n,n.resizeInputElement));i=t.isDefined(this.debounceInterval)?this.debounceInterval:a;n.ngInputElement.on("input",n.$mdUtil.debounce(n.handleInputEvent,i,n))};i.prototype.attachInteractionListeners=function(){var n=this,i=this.$scope,r=this.$mdConstant.KEY_CODE;n.ngInputElement.on("keydown",function(t){t.altKey&&t.keyCode==r.DOWN_ARROW&&(n.openCalendarPane(t),i.$digest())});n.openOnFocus&&(n.ngInputElement.on("focus",t.bind(n,n.openCalendarPane)),t.element(n.$window).on("blur",n.windowBlurHandler),i.$on("$destroy",function(){t.element(n.$window).off("blur",n.windowBlurHandler)}));i.$on("md-calendar-close",function(){n.closeCalendarPane()})};i.prototype.installPropertyInterceptors=function(){var n=this,t;this.$attrs.ngDisabled&&(t=this.$scope.$parent,t&&t.$watch(this.$attrs.ngDisabled,function(t){n.setDisabled(t)}));Object.defineProperty(this,"placeholder",{get:function(){return n.inputElement.placeholder},set:function(t){n.inputElement.placeholder=t||""}})};i.prototype.setDisabled=function(n){this.isDisabled=n;this.inputElement.disabled=n;this.calendarButton&&(this.calendarButton.disabled=n)};i.prototype.updateErrorState=function(n){var i=n||this.date,r,u;(this.clearErrorState(),this.dateUtil.isValidDate(i))?((i=this.dateUtil.createDateAtMidnight(i),this.dateUtil.isValidDate(this.minDate))&&(r=this.dateUtil.createDateAtMidnight(this.minDate),this.ngModelCtrl.$setValidity("mindate",i>=r)),this.dateUtil.isValidDate(this.maxDate)&&(u=this.dateUtil.createDateAtMidnight(this.maxDate),this.ngModelCtrl.$setValidity("maxdate",i<=u)),t.isFunction(this.dateFilter)&&this.ngModelCtrl.$setValidity("filtered",this.dateFilter(i))):this.ngModelCtrl.$setValidity("valid",null==i);t.element(this.inputContainer).toggleClass(o,!this.ngModelCtrl.$valid)};i.prototype.clearErrorState=function(){this.inputContainer.classList.remove(o);["mindate","maxdate","filtered","valid"].forEach(function(n){this.ngModelCtrl.$setValidity(n,!0)},this)};i.prototype.resizeInputElement=function(){this.inputElement.size=this.inputElement.value.length+s};i.prototype.handleInputEvent=function(){var t=this.inputElement.value,n=t?this.locale.parseDate(t):null,i;this.dateUtil.setDateTimeToMidnight(n);i=""==t||this.dateUtil.isValidDate(n)&&this.locale.isDateComplete(t)&&this.isDateEnabled(n);i&&(this.setModelValue(n),this.date=n);this.updateErrorState(n)};i.prototype.isDateEnabled=function(n){return this.dateUtil.isDateWithinRange(n,this.minDate,this.maxDate)&&(!t.isFunction(this.dateFilter)||this.dateFilter(n))};i.prototype.attachCalendarPane=function(){var n=this.calendarPane,l=document.body,e,i,y;n.style.transform="";this.$element.addClass(r);this.mdInputContainer&&this.mdInputContainer.element.addClass(r);t.element(l).addClass("md-datepicker-is-showing");e=this.inputContainer.getBoundingClientRect();i=l.getBoundingClientRect();(!this.topMargin||this.topMargin<0)&&(this.topMargin=(this.inputMask.parent().prop("clientHeight")-this.ngInputElement.prop("clientHeight"))/2);var s=e.top-i.top-this.topMargin,o=e.left-i.left-this.leftMargin,a=i.top<0&&0==document.body.scrollTop?-i.top:document.body.scrollTop,v=i.left<0&&0==document.body.scrollLeft?-i.left:document.body.scrollLeft,h=a+this.$window.innerHeight,c=v+this.$window.innerWidth;(this.inputMask.css({position:"absolute",left:this.leftMargin+"px",top:this.topMargin+"px",width:e.width-1+"px",height:e.height-2+"px"}),o+u>c)&&(c-u>0?o=c-u:(o=v,y=this.$window.innerWidth/u,n.style.transform="scale("+y+")"),n.classList.add("md-datepicker-pos-adjusted"));s+f>h&&h-f>a&&(s=h-f,n.classList.add("md-datepicker-pos-adjusted"));n.style.left=o+"px";n.style.top=s+"px";document.body.appendChild(n);this.$$rAF(function(){n.classList.add("md-pane-open")})};i.prototype.detachCalendarPane=function(){this.$element.removeClass(r);this.mdInputContainer&&this.mdInputContainer.element.removeClass(r);t.element(document.body).removeClass("md-datepicker-is-showing");this.calendarPane.classList.remove("md-pane-open");this.calendarPane.classList.remove("md-datepicker-pos-adjusted");this.isCalendarOpen&&this.$mdUtil.enableScrolling();this.calendarPane.parentNode&&this.calendarPane.parentNode.removeChild(this.calendarPane)};i.prototype.openCalendarPane=function(t){if(!this.isCalendarOpen&&!this.isDisabled&&!this.inputFocusedOnWindowBlur){this.isCalendarOpen=this.isOpen=!0;this.calendarPaneOpenedFrom=t.target;this.$mdUtil.disableScrollAround(this.calendarPane);this.attachCalendarPane();this.focusCalendar();this.evalAttr("ngFocus");var i=this;this.$mdUtil.nextTick(function(){i.documentElement.on("click touchstart",i.bodyClickHandler)},!1);n.addEventListener(this.windowEventName,this.windowEventHandler)}};i.prototype.closeCalendarPane=function(){function i(){t.isCalendarOpen=t.isOpen=!1}if(this.isCalendarOpen){var t=this;t.detachCalendarPane();t.ngModelCtrl.$setTouched();t.evalAttr("ngBlur");t.documentElement.off("click touchstart",t.bodyClickHandler);n.removeEventListener(t.windowEventName,t.windowEventHandler);t.calendarPaneOpenedFrom.focus();t.calendarPaneOpenedFrom=null;t.openOnFocus?t.$mdUtil.nextTick(i):i()}};i.prototype.getCalendarCtrl=function(){return t.element(this.calendarPane.querySelector("md-calendar")).controller("mdCalendar")};i.prototype.focusCalendar=function(){var n=this;this.$mdUtil.nextTick(function(){n.getCalendarCtrl().focus()},!1)};i.prototype.setFocused=function(n){n||this.ngModelCtrl.$setTouched();this.openOnFocus||this.evalAttr(n?"ngFocus":"ngBlur");this.isFocused=n};i.prototype.handleBodyClick=function(n){if(this.isCalendarOpen){var t=this.$mdUtil.getClosest(n.target,"md-calendar");t||this.closeCalendarPane();this.$scope.$digest()}};i.prototype.handleWindowBlur=function(){this.inputFocusedOnWindowBlur=document.activeElement===this.inputElement};i.prototype.evalAttr=function(n){this.$attrs[n]&&this.$scope.$parent.$eval(this.$attrs[n])};i.prototype.setModelValue=function(n){var t=this.$mdUtil.getModelOption(this.ngModelCtrl,"timezone");this.ngModelCtrl.$setViewValue(this.ngDateFilter(n,"yyyy-MM-dd",t))};i.prototype.onExternalChange=function(n){var t=this.$mdUtil.getModelOption(this.ngModelCtrl,"timezone");this.date=n;this.inputElement.value=this.locale.formatDate(n,t);this.mdInputContainer&&this.mdInputContainer.setHasValue(!!n);this.resizeInputElement();this.updateErrorState()}}()}(),function(){function n(n,t,i){function r(r,u,f){function l(){f.mdSvgIcon||f.mdSvgSrc||(f.mdFontIcon&&u.addClass("md-font "+f.mdFontIcon),u.addClass(e))}function h(){if(!f.mdSvgIcon&&!f.mdSvgSrc){f.mdFontIcon&&(u.removeClass(o),u.addClass(f.mdFontIcon),o=f.mdFontIcon);var t=n.fontSet(f.mdFontSet);e!==t&&(u.removeClass(e),u.addClass(t),e=t)}}var o,e,s,c;t(u);o=f.mdFontIcon;e=n.fontSet(f.mdFontSet);l();f.$observe("mdFontIcon",h);f.$observe("mdFontSet",h);s=(u[0].getAttribute(f.$attr.mdSvgSrc),f.$normalize(f.$attr.mdSvgIcon||f.$attr.mdSvgSrc||""));(f.role||(i.expect(u,"role","img"),f.role="img"),"img"!==f.role||f.ariaHidden||i.hasAriaLabel(u))||(f.alt?i.expect(u,"aria-label",f.alt):i.parentHasAriaLabel(u,2)?i.expect(u,"aria-hidden","true"):(c=f.mdFontIcon||f.mdSvgIcon||u.text())?i.expect(u,"aria-label",c):i.expect(u,"aria-hidden","true"));s&&f.$observe(s,function(t){u.empty();t&&n(t).then(function(n){u.empty();u.append(n)})})}return{restrict:"E",link:r}}t.module("material.components.icon").directive("mdIcon",["$mdIcon","$mdTheming","$mdAria","$sce",n])}(),function(){function u(){}function r(n,t){this.url=n;this.viewBoxSize=t||i.defaultViewBoxSize}function f(i,r,u,f,e,o){function v(n){if(n=n||"",t.isString(n)||(n=o.getTrustedUrl(n)),h[n])return u.when(w(h[n]));if(tt.test(n)||a.test(n))return c(n).then(y(n));n.indexOf(":")==-1&&(n="$default:"+n);var r=i[n]?b:k;return r(n).then(y(n))}function p(n){var u=t.isUndefined(n)||!(n&&n.length),r;return u?i.defaultFontSet:(r=n,t.forEach(i.fontSets,function(t){t.alias==n&&(r=t.fontSet||r)}),r)}function w(n){var i=n.clone(),r="_cache"+e.nextUid();return i.id&&(i.id+=r),t.forEach(i.querySelectorAll("[id]"),function(n){n.id+=r}),i}function y(n){return function(t){return h[n]=d(t)?t:new s(t,i[n]),h[n].clone()}}function b(n){var t=i[n];return c(t.url).then(function(n){return new s(n,t)})}function k(n){function e(i){var f=n.slice(n.lastIndexOf(":")+1),u=i.querySelector("#"+f);return u?new s(u,t):r(n)}function r(n){var t="icon "+n+" not found";return f.warn(t),u.reject(t||n)}var o=n.substring(0,n.lastIndexOf(":"))||"$default",t=i[o];return t?c(t.url).then(e):r(n)}function c(i){function e(i){var r=a.exec(i),f=/base64/i.test(i),e=f?n.atob(r[2]):r[2];return u.when(t.element(e)[0])}function o(n){return u(function(i,u){var e=function(n){var i=t.isString(n)?n:n.message||n.data||n.statusText;f.warn(i);u(n)},o=function(r){l[n]||(l[n]=t.element("<div>").append(r)[0].querySelector("svg"));i(l[n])};r(n,!0).then(o,e)})}return a.test(i)?e(i):o(i)}function d(n){return t.isDefined(n.element)&&t.isDefined(n.config)}function s(n,i){n&&"svg"!=n.tagName&&(n=t.element('<svg xmlns="http://www.w3.org/2000/svg">').append(n.cloneNode(!0))[0]);n.getAttribute("xmlns")||n.setAttribute("xmlns","http://www.w3.org/2000/svg");this.element=n;this.config=i;this.prepare()}function g(){var n=this.config?this.config.viewBoxSize:i.defaultViewBoxSize;t.forEach({fit:"",height:"100%",width:"100%",preserveAspectRatio:"xMidYMid meet",viewBox:this.element.getAttribute("viewBox")||"0 0 "+n+" "+n,focusable:!1},function(n,t){this.element.setAttribute(t,n)},this)}function nt(){return this.element.cloneNode(!0)}var h={},l={},tt=/[-\w@:%\+.~#?&\/\/=]{2,}\.[a-z]{2,4}\b(\/[-\w@:%\+.~#?&\/\/=]*)?/i,a=/^data:image\/svg\+xml[\s*;\w\-\=]*?(base64)?,(.*)$/i;return s.prototype={clone:nt,prepare:g},v.fontSet=p,v}f.$inject=["config","$templateRequest","$q","$log","$mdUtil","$sce"];t.module("material.components.icon").constant("$$mdSvgRegistry",{mdTabsArrow:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyICIvPjwvZz48L3N2Zz4=",mdClose:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwYXRoIGQ9Ik0xOSA2LjQxbC0xLjQxLTEuNDEtNS41OSA1LjU5LTUuNTktNS41OS0xLjQxIDEuNDEgNS41OSA1LjU5LTUuNTkgNS41OSAxLjQxIDEuNDEgNS41OS01LjU5IDUuNTkgNS41OSAxLjQxLTEuNDEtNS41OS01LjU5eiIvPjwvZz48L3N2Zz4=",mdCancel:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwYXRoIGQ9Ik0xMiAyYy01LjUzIDAtMTAgNC40Ny0xMCAxMHM0LjQ3IDEwIDEwIDEwIDEwLTQuNDcgMTAtMTAtNC40Ny0xMC0xMC0xMHptNSAxMy41OWwtMS40MSAxLjQxLTMuNTktMy41OS0zLjU5IDMuNTktMS40MS0xLjQxIDMuNTktMy41OS0zLjU5LTMuNTkgMS40MS0xLjQxIDMuNTkgMy41OSAzLjU5LTMuNTkgMS40MSAxLjQxLTMuNTkgMy41OSAzLjU5IDMuNTl6Ii8+PC9nPjwvc3ZnPg==",mdMenu:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0zLDZIMjFWOEgzVjZNMywxMUgyMVYxM0gzVjExTTMsMTZIMjFWMThIM1YxNloiIC8+PC9zdmc+",mdToggleArrow:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNDggNDgiPjxwYXRoIGQ9Ik0yNCAxNmwtMTIgMTIgMi44MyAyLjgzIDkuMTctOS4xNyA5LjE3IDkuMTcgMi44My0yLjgzeiIvPjxwYXRoIGQ9Ik0wIDBoNDh2NDhoLTQ4eiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==",mdCalendar:"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTkgM2gtMVYxaC0ydjJIOFYxSDZ2Mkg1Yy0xLjExIDAtMS45OS45LTEuOTkgMkwzIDE5YzAgMS4xLjg5IDIgMiAyaDE0YzEuMSAwIDItLjkgMi0yVjVjMC0xLjEtLjktMi0yLTJ6bTAgMTZINVY4aDE0djExek03IDEwaDV2NUg3eiIvPjwvc3ZnPg==",mdChecked:"data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxnPjxwYXRoIGQ9Ik05IDE2LjE3TDQuODMgMTJsLTEuNDIgMS40MUw5IDE5IDIxIDdsLTEuNDEtMS40MXoiLz48L2c+PC9zdmc+"}).provider("$mdIcon",u);var i={defaultViewBoxSize:24,defaultFontSet:"material-icons",fontSets:[]};u.prototype={icon:function(n,t,u){return n.indexOf(":")==-1&&(n="$default:"+n),i[n]=new r(t,u),this},iconSet:function(n,t,u){return i[n]=new r(t,u),this},defaultIconSet:function(n,t){var u="$default";return i[u]||(i[u]=new r(n,t)),i[u].viewBoxSize=t||i.defaultViewBoxSize,this},defaultViewBoxSize:function(n){return i.defaultViewBoxSize=n,this},fontSet:function(n,t){return i.fontSets.push({alias:n,fontSet:t||n}),this},defaultFontSet:function(n){return i.defaultFontSet=n?n:"",this},defaultIconSize:function(n){return i.defaultIconSize=n,this},$get:["$templateRequest","$q","$log","$mdUtil","$sce",function(n,t,r,u,e){return f(i,n,t,r,u,e)}]}}(),function(){function n(n,r,u,f,e,o,s,h,c){var a,v,b=e.prefixer(),l=this,w,y,p;this.nestLevel=parseInt(r.mdNestLevel,10)||0;this.init=function(i,r){r=r||{};a=i;v=u[0].querySelector(b.buildSelector(["ng-click","ng-mouseenter"]));v.setAttribute("aria-expanded","false");this.isInMenuBar=r.isInMenuBar;this.nestedMenus=e.nodesToArray(a[0].querySelectorAll(".md-nested-menu"));a.on("$mdInterimElementRemove",function(){l.isOpen=!1;e.nextTick(function(){l.onIsOpenChanged(l.isOpen)})});e.nextTick(function(){l.onIsOpenChanged(l.isOpen)});var o="menu_container_"+e.nextUid();a.attr("id",o);t.element(v).attr({"aria-owns":o,"aria-haspopup":"true"});f.$on("$destroy",t.bind(this,function(){this.disableHoverListener();n.destroy()}));a.on("$destroy",function(){n.destroy()})};p=[];this.enableHoverListener=function(){p.push(s.$on("$mdMenuOpen",function(n,t){a[0].contains(t[0])&&(l.currentlyOpenMenu=t.controller("mdMenu"),l.isAlreadyOpening=!1,l.currentlyOpenMenu.registerContainerProxy(l.triggerContainerProxy.bind(l)))}));p.push(s.$on("$mdMenuClose",function(n,t){a[0].contains(t[0])&&(l.currentlyOpenMenu=i)}));y=t.element(e.nodesToArray(a[0].children[0].children));y.on("mouseenter",l.handleMenuItemHover);y.on("mouseleave",l.handleMenuItemMouseLeave)};this.disableHoverListener=function(){for(;p.length;)p.shift()();y&&y.off("mouseenter",l.handleMenuItemHover);y&&y.off("mouseleave",l.handleMenuItemMouseLeave)};this.handleMenuItemHover=function(n){var i,r;l.isAlreadyOpening||(i=n.target.querySelector("md-menu")||e.getClosest(n.target,"MD-MENU"),w=o(function(){if(i&&(i=t.element(i).controller("mdMenu")),l.currentlyOpenMenu&&l.currentlyOpenMenu!=i){var n=l.nestLevel+1;l.currentlyOpenMenu.close(!0,{closeTo:n});l.isAlreadyOpening=!!i;i&&i.open()}else i&&!i.isOpen&&i.open&&(l.isAlreadyOpening=!!i,i&&i.open())},i?100:250),r=n.currentTarget.querySelector(".md-button:not([disabled])"),r&&r.focus())};this.handleMenuItemMouseLeave=function(){w&&(o.cancel(w),w=i)};this.open=function(t){t&&t.stopPropagation();t&&t.preventDefault();l.isOpen||(l.enableHoverListener(),l.isOpen=!0,e.nextTick(function(){l.onIsOpenChanged(l.isOpen)}),v=v||(t?t.target:u[0]),v.setAttribute("aria-expanded","true"),f.$emit("$mdMenuOpen",u),n.show({scope:f,mdMenuCtrl:l,nestLevel:l.nestLevel,element:a,target:v,preserveElement:!0,parent:"body"})["finally"](function(){v.setAttribute("aria-expanded","false");l.disableHoverListener()}))};this.onIsOpenChanged=function(n){n?(a.attr("aria-hidden","false"),u[0].classList.add("md-open"),t.forEach(l.nestedMenus,function(n){n.classList.remove("md-open")})):(a.attr("aria-hidden","true"),u[0].classList.remove("md-open"));f.$mdMenuIsOpen=l.isOpen};this.focusMenuContainer=function(){var n=a[0].querySelector(b.buildSelector(["md-menu-focus-target","md-autofocus"]));n||(n=a[0].querySelector(".md-button:not([disabled])"));n.focus()};this.registerContainerProxy=function(n){this.containerProxy=n};this.triggerContainerProxy=function(n){this.containerProxy&&this.containerProxy(n)};this.destroy=function(){return l.isOpen?n.destroy():h.when(!1)};this.close=function(i,r){var s,o;l.isOpen&&(l.isOpen=!1,e.nextTick(function(){l.onIsOpenChanged(l.isOpen)}),s=t.extend({},r,{skipFocus:i}),(f.$emit("$mdMenuClose",u,s),n.hide(null,r),i)||(o=l.restoreFocusTo||u.find("button")[0],o instanceof t.element&&(o=o[0]),o&&o.focus()))};this.positionMode=function(){var n=(r.mdPositionMode||"target").split(" ");return 1==n.length&&n.push(n[0]),{left:n[0],top:n[1]}};this.offsets=function(){var n=(r.mdOffset||"0 0").split(" ").map(parseFloat);if(2==n.length)return{left:n[0],top:n[1]};if(1==n.length)return{top:n[0],left:n[0]};throw Error("Invalid offsets specified. Please follow format <x, y> or <n>");};f.$mdMenu={open:this.open,close:this.close};f.$mdOpenMenu=t.bind(this,function(){return c.warn("mdMenu: The $mdOpenMenu method is deprecated. Please use `$mdMenu.open`."),this.open.apply(this,arguments)})}n.$inject=["$mdMenu","$attrs","$element","$scope","$mdUtil","$timeout","$rootScope","$q","$log"];t.module("material.components.menu").controller("mdMenuCtrl",n)}(),function(){function n(n){function r(r){var h,e,c;r.addClass("md-menu");var f=r.children()[0],o=r.children()[1],s=n.prefixer();if(s.hasAttribute(f,"ng-click")||(f=f.querySelector(s.buildSelector(["ng-click","ng-mouseenter"]))||f),h="MD-BUTTON"===f.nodeName||"BUTTON"===f.nodeName,f&&h&&!f.hasAttribute("type")&&f.setAttribute("type","button"),!f)throw Error(i+"Expected the menu to have a trigger element.");if(!o||"MD-MENU-CONTENT"!==o.nodeName)throw Error(i+"Expected the menu to contain a `md-menu-content` element.");return f&&f.setAttribute("aria-haspopup","true"),e=r[0].querySelectorAll("md-menu"),c=parseInt(r[0].getAttribute("md-nest-level"),10)||0,e&&t.forEach(n.nodesToArray(e),function(n){n.hasAttribute("md-position-mode")||n.setAttribute("md-position-mode","cascade");n.classList.add("_md-nested-menu");n.setAttribute("md-nest-level",c+1)}),u}function u(n,i,r,u){var o=u[0],s=!!u[1],f=t.element('<div class="_md md-open-menu-container md-whiteframe-z2"><\/div>'),e=i.children()[1];i.addClass("_md");e.hasAttribute("role")||e.setAttribute("role","menu");f.append(e);i.on("$destroy",function(){f.remove()});i.append(f);f[0].style.display="none";o.init(f,{isInMenuBar:s})}var i="Invalid HTML for md-menu: ";return{restrict:"E",require:["mdMenu","?^mdMenuBar"],controller:"mdMenuCtrl",scope:!0,compile:r}}n.$inject=["$mdUtil"];t.module("material.components.menu").directive("mdMenu",n)}(),function(){function n(n){function f(n,f,e,o,s,h,c,l,a,v){function k(i,r,u){return u.nestLevel?t.noop:(u.disableParentScroll&&!n.getClosest(u.target,"MD-DIALOG")?u.restoreScroll=n.disableScrollAround(u.element,u.parent):u.disableParentScroll=!1,u.hasBackdrop&&(u.backdrop=n.createBackdrop(i,"md-menu-backdrop md-click-catcher"),a.enter(u.backdrop,o[0].body)),function(){u.backdrop&&u.backdrop.remove();u.disableParentScroll&&u.restoreScroll()})}function d(n,t,i){function u(){return l(t,{addClass:"md-leave"}).start()}function r(){t.removeClass("md-active");tt(t,i);i.alreadyOpen=!1}return i.cleanupInteraction(),i.cleanupBackdrop(),i.cleanupResizing(),i.hideBackdrop(),t.removeClass("md-clickable"),i.$destroy===!0?r():u().then(r)}function g(i,r,u){function a(){return u.parent.append(r),r[0].style.display="",h(function(n){var t=b(r,u);r.removeClass("md-leave");l(r,{addClass:"md-active",from:p.toCss(t),to:p.toCss({transform:""})}).start().then(n)})}function d(){if(!u.target)throw Error("$mdMenu.show() expected a target to animate from in options.target");t.extend(u,{alreadyOpen:!1,isRemoved:!1,target:t.element(u.target),parent:t.element(u.parent),menuContentEl:t.element(r[0].querySelector("md-menu-content"))})}function g(){var n=function(n,t){return c.throttle(function(){if(!u.isRemoved){var i=b(n,t);n.css(p.toCss(i))}})}(r,u);return s.addEventListener("resize",n),s.addEventListener("orientationchange",n),function(){s.removeEventListener("resize",n);s.removeEventListener("orientationchange",n)}}function nt(){return u.backdrop?(u.backdrop.on("click",o),function(){u.backdrop.off("click",o)}):t.noop}function o(n){n.preventDefault();n.stopPropagation();i.$apply(function(){u.mdMenuCtrl.close(!0,{closeAll:!0})})}function tt(){function s(t){var i,r;switch(t.keyCode){case e.KEY_CODE.ESCAPE:u.mdMenuCtrl.close(!1,{closeAll:!0});i=!0;break;case e.KEY_CODE.UP_ARROW:w(t,u.menuContentEl,u,-1)||u.nestLevel||u.mdMenuCtrl.triggerContainerProxy(t);i=!0;break;case e.KEY_CODE.DOWN_ARROW:w(t,u.menuContentEl,u,1)||u.nestLevel||u.mdMenuCtrl.triggerContainerProxy(t);i=!0;break;case e.KEY_CODE.LEFT_ARROW:u.nestLevel?u.mdMenuCtrl.close():u.mdMenuCtrl.triggerContainerProxy(t);i=!0;break;case e.KEY_CODE.RIGHT_ARROW:r=n.getClosest(t.target,"MD-MENU");r&&r!=u.parent[0]?t.target.click():u.mdMenuCtrl.triggerContainerProxy(t);i=!0}i&&(t.preventDefault(),t.stopImmediatePropagation())}function h(t){function o(){i.$apply(function(){u.mdMenuCtrl.close(!0,{closeAll:!0})})}function e(n,t){if(!n)return!1;for(var i,r=0;i=t[r];++r)if(y.hasAttribute(n,i))return!0;return!1}var r=t.target,f;do{if(r==u.menuContentEl[0])return;if((e(r,["ng-click","ng-href","ui-sref"])||"BUTTON"==r.nodeName||"MD-BUTTON"==r.nodeName)&&!e(r,["md-prevent-menu-close"])){f=n.getClosest(r,"MD-MENU");r.hasAttribute("disabled")||f&&f!=u.parent[0]||o();break}}while(r=r.parentNode)}var r,c,o,f;if(!u.menuContentEl[0])return t.noop;if(u.menuContentEl.on("keydown",s),u.menuContentEl[0].addEventListener("click",h,!0),r=u.menuContentEl[0].querySelector(y.buildSelector(["md-menu-focus-target","md-autofocus"])),!r)for(c=u.menuContentEl[0].children.length,o=0;o<c;o++){if(f=u.menuContentEl[0].children[o],r=f.querySelector(".md-button:not([disabled])"))break;if(f.firstElementChild&&!f.firstElementChild.disabled){r=f.firstElementChild;break}}return r&&r.focus(),function(){u.menuContentEl.off("keydown",s);u.menuContentEl[0].removeEventListener("click",h,!0)}}return d(u),u.menuContentEl[0]?f.inherit(u.menuContentEl,u.target):v.warn("$mdMenu: Menu elements should always contain a `md-menu-content` element,otherwise interactivity features will not work properly.",r),u.cleanupResizing=g(),u.hideBackdrop=k(i,r,u),a().then(function(n){return u.alreadyOpen=!0,u.cleanupInteraction=tt(),u.cleanupBackdrop=nt(),r.addClass("md-clickable"),n})}function w(t,i,r,u){for(var s,o,h=n.getClosest(t.target,"MD-MENU-ITEM"),e=n.nodesToArray(i[0].children),c=e.indexOf(h),f=c+u;f>=0&&f<e.length;f+=u)if(s=e[f].querySelector(".md-button"),o=nt(s))break;return o}function nt(n){if(n&&n.getAttribute("tabindex")!=-1)return n.focus(),o[0].activeElement==n}function tt(n,t){t.preserveElement?r(n).style.display="none":r(n).parentNode===r(t.parent)&&r(t.parent).removeChild(r(n))}function b(t,r){function ft(n){n.top=Math.max(Math.min(n.top,w.bottom-v.offsetHeight),w.top);n.left=Math.max(Math.min(n.left,w.right-v.offsetWidth),w.left)}function et(){for(var n=0;n<b.children.length;++n)if("none"!=s.getComputedStyle(b.children[n]).display)return b.children[n]}var c,v=t[0],b=t[0].firstElementChild,l=b.getBoundingClientRect(),ot=o[0].body,p=ot.getBoundingClientRect(),st=s.getComputedStyle(b),d=r.target[0].querySelector(y.buildSelector("md-menu-origin"))||r.target[0],f=d.getBoundingClientRect(),w={left:p.left+u,top:Math.max(p.top,0)+u,bottom:Math.max(p.bottom,Math.max(p.top,0)+p.height)-u,right:p.right-u},g={top:0,left:0,right:0,bottom:0},nt={top:0,left:0,right:0,bottom:0},a=r.mdMenuCtrl.positionMode(),e,h,k,tt,it,rt,ut;"target"!=a.top&&"target"!=a.left&&"target-right"!=a.left||(c=et(),c&&(c=c.firstElementChild||c,c=c.querySelector(y.buildSelector("md-menu-align-target"))||c,g=c.getBoundingClientRect(),nt={top:parseFloat(v.style.top||0),left:parseFloat(v.style.left||0)}));e={};h="top ";switch(a.top){case"target":e.top=nt.top+f.top-g.top;break;case"cascade":e.top=f.top-parseFloat(st.paddingTop)-d.style.top;break;case"bottom":e.top=f.top+f.height;break;default:throw new Error('Invalid target mode "'+a.top+'" specified for md-menu on Y axis.');}k="rtl"==n.bidi();switch(a.left){case"target":e.left=nt.left+f.left-g.left;h+=k?"right":"left";break;case"target-left":e.left=f.left;h+="left";break;case"target-right":e.left=f.right-l.width+(l.right-g.right);h+="right";break;case"cascade":tt=k?f.left-l.width<w.left:f.right+l.width<w.right;e.left=tt?f.right-d.style.left:f.left-d.style.left-l.width;h+=tt?"left":"right";break;case"right":k?(e.left=f.right-f.width,h+="left"):(e.left=f.right-l.width,h+="right");break;case"left":k?(e.left=f.right-l.width,h+="right"):(e.left=f.left,h+="left");break;default:throw new Error('Invalid target mode "'+a.left+'" specified for md-menu on X axis.');}return it=r.mdMenuCtrl.offsets(),e.top+=it.top,e.left+=it.left,ft(e),rt=Math.round(100*Math.min(f.width/v.offsetWidth,1))/100,ut=Math.round(100*Math.min(f.height/v.offsetHeight,1))/100,{top:Math.round(e.top),left:Math.round(e.left),transform:r.alreadyOpen?i:n.supplant("scale({0},{1})",[rt,ut]),transformOrigin:h}}var y=n.prefixer(),p=n.dom.animator;return{parent:"body",onShow:g,onRemove:d,hasBackdrop:!0,disableParentScroll:!0,skipCompile:!0,preserveScope:!0,multiple:!0,themable:!0}}function r(n){return n instanceof t.element&&(n=n[0]),n}f.$inject=["$mdUtil","$mdTheming","$mdConstant","$document","$window","$q","$$rAF","$animateCss","$animate","$log"];var u=8;return n("$mdMenu").setDefaults({methods:["target"],options:f})}n.$inject=["$$interimElementProvider"];t.module("material.components.menu").provider("$mdMenu",n)}(),function(){function n(n,i,u,f,e,o,s,h){this.$element=u;this.$attrs=f;this.$mdConstant=e;this.$mdUtil=s;this.$document=o;this.$scope=n;this.$rootScope=i;this.$timeout=h;var c=this;t.forEach(r,function(n){c[n]=t.bind(c,c[n])})}n.$inject=["$scope","$rootScope","$element","$attrs","$mdConstant","$document","$mdUtil","$timeout"];t.module("material.components.menuBar").controller("MenuBarController",n);var r=["handleKeyDown","handleMenuHover","scheduleOpenHoveredMenu","cancelScheduledOpen"];n.prototype.init=function(){var t=this.$element,u=this.$mdUtil,f=this.$scope,n=this,r=[];t.on("keydown",this.handleKeyDown);this.parentToolbar=u.getClosest(t,"MD-TOOLBAR");r.push(this.$rootScope.$on("$mdMenuOpen",function(i,r){n.getMenus().indexOf(r[0])!=-1&&(t[0].classList.add("md-open"),r[0].classList.add("md-open"),n.currentlyOpenMenu=r.controller("mdMenu"),n.currentlyOpenMenu.registerContainerProxy(n.handleKeyDown),n.enableOpenOnHover())}));r.push(this.$rootScope.$on("$mdMenuClose",function(r,f,e){var s=n.getMenus(),o;if(s.indexOf(f[0])!=-1&&(t[0].classList.remove("md-open"),f[0].classList.remove("md-open")),t[0].contains(f[0])){for(o=f[0];o&&s.indexOf(o)==-1;)o=u.getClosest(o,"MD-MENU",!0);o&&(e.skipFocus||o.querySelector("button:not([disabled])").focus(),n.currentlyOpenMenu=i,n.disableOpenOnHover(),n.setKeyboardMode(!0))}}));f.$on("$destroy",function(){for(n.disableOpenOnHover();r.length;)r.shift()()});this.setKeyboardMode(!0)};n.prototype.setKeyboardMode=function(n){n?this.$element[0].classList.add("md-keyboard-mode"):this.$element[0].classList.remove("md-keyboard-mode")};n.prototype.enableOpenOnHover=function(){if(!this.openOnHoverEnabled){var n=this;n.openOnHoverEnabled=!0;n.parentToolbar&&(n.parentToolbar.classList.add("md-has-open-menu"),n.$mdUtil.nextTick(function(){t.element(n.parentToolbar).on("click",n.handleParentClick)},!1));t.element(n.getMenus()).on("mouseenter",n.handleMenuHover)}};n.prototype.handleMenuHover=function(n){this.setKeyboardMode(!1);this.openOnHoverEnabled&&this.scheduleOpenHoveredMenu(n)};n.prototype.disableOpenOnHover=function(){this.openOnHoverEnabled&&(this.openOnHoverEnabled=!1,this.parentToolbar&&(this.parentToolbar.classList.remove("md-has-open-menu"),t.element(this.parentToolbar).off("click",this.handleParentClick)),t.element(this.getMenus()).off("mouseenter",this.handleMenuHover))};n.prototype.scheduleOpenHoveredMenu=function(n){var i=t.element(n.currentTarget),r=i.controller("mdMenu");this.setKeyboardMode(!1);this.scheduleOpenMenu(r)};n.prototype.scheduleOpenMenu=function(n){var t=this,r=this.$timeout;n!=t.currentlyOpenMenu&&(r.cancel(t.pendingMenuOpen),t.pendingMenuOpen=r(function(){t.pendingMenuOpen=i;t.currentlyOpenMenu&&t.currentlyOpenMenu.close(!0,{closeAll:!0});n.open()},200,!1))};n.prototype.handleKeyDown=function(n){var u=this.$mdConstant.KEY_CODE,i=this.currentlyOpenMenu,o=i&&i.isOpen,r,f,e;this.setKeyboardMode(!0);switch(n.keyCode){case u.DOWN_ARROW:i?i.focusMenuContainer():this.openFocusedMenu();r=!0;break;case u.UP_ARROW:i&&i.close();r=!0;break;case u.LEFT_ARROW:f=this.focusMenu(-1);o&&(e=t.element(f).controller("mdMenu"),this.scheduleOpenMenu(e));r=!0;break;case u.RIGHT_ARROW:f=this.focusMenu(1);o&&(e=t.element(f).controller("mdMenu"),this.scheduleOpenMenu(e));r=!0}r&&(n&&n.preventDefault&&n.preventDefault(),n&&n.stopImmediatePropagation&&n.stopImmediatePropagation())};n.prototype.focusMenu=function(n){var r=this.getMenus(),t=this.getFocusedMenuIndex(),i;return t==-1&&(t=this.getOpenMenuIndex()),i=!1,(t==-1?(t=0,i=!0):(n<0&&t>0||n>0&&t<r.length-n)&&(t+=n,i=!0),i)?(r[t].querySelector("button").focus(),r[t]):void 0};n.prototype.openFocusedMenu=function(){var n=this.getFocusedMenu();n&&t.element(n).controller("mdMenu").open()};n.prototype.getMenus=function(){var n=this.$element;return this.$mdUtil.nodesToArray(n[0].children).filter(function(n){return"MD-MENU"==n.nodeName})};n.prototype.getFocusedMenu=function(){return this.getMenus()[this.getFocusedMenuIndex()]};n.prototype.getFocusedMenuIndex=function(){var t=this.$mdUtil,n=t.getClosest(this.$document[0].activeElement,"MD-MENU");return n?this.getMenus().indexOf(n):-1};n.prototype.getOpenMenuIndex=function(){for(var t=this.getMenus(),n=0;n<t.length;++n)if(t[n].classList.contains("md-open"))return n;return-1};n.prototype.handleParentClick=function(n){var i=this.querySelector("md-menu.md-open");i&&!i.contains(n.target)&&t.element(i).controller("mdMenu").close(!0,{closeAll:!0})}}(),function(){function n(n,i){return{restrict:"E",require:"mdMenuBar",controller:"MenuBarController",compile:function(r,u){return u.ariaRole||r[0].setAttribute("role","menubar"),t.forEach(r[0].children,function(i){if("MD-MENU"==i.nodeName){i.hasAttribute("md-position-mode")||(i.setAttribute("md-position-mode","left bottom"),i.querySelector("button, a, md-button").setAttribute("role","menuitem"));var r=n.nodesToArray(i.querySelectorAll("md-menu-content"));t.forEach(r,function(n){n.classList.add("md-menu-bar-menu");n.classList.add("md-dense");n.hasAttribute("width")||n.setAttribute("width",5)})}}),r.find("md-menu-item").addClass("md-in-menu-bar"),function(n,t,r,u){t.addClass("_md");i(n,t);u.init()}}}}n.$inject=["$mdUtil","$mdTheming"];t.module("material.components.menuBar").directive("mdMenuBar",n)}(),function(){function n(){return{restrict:"E",compile:function(n,t){t.role||n[0].setAttribute("role","separator")}}}t.module("material.components.menuBar").directive("mdMenuDivider",n)}(),function(){function n(n,t,i){this.$element=t;this.$attrs=i;this.$scope=n}n.$inject=["$scope","$element","$attrs"];t.module("material.components.menuBar").controller("MenuItemController",n);n.prototype.init=function(n){var i=this.$element,t=this.$attrs;this.ngModel=n;"checkbox"!=t.type&&"radio"!=t.type||(this.mode=t.type,this.iconEl=i[0].children[0],this.buttonEl=i[0].children[1],n&&this.initClickListeners())};n.prototype.clearNgAria=function(){var n=this.$element[0];t.forEach(["role","tabindex","aria-invalid","aria-checked"],function(t){n.removeAttribute(t)})};n.prototype.initClickListeners=function(){function s(){if("radio"==c){var t=n.ngValue?f.$eval(n.ngValue):n.value;return i.$modelValue==t}return i.$modelValue}function u(n){n?r.off("click",o):r.on("click",o)}var h=this,i=this.ngModel,f=this.$scope,n=this.$attrs,c=(this.$element,this.mode);this.handleClick=t.bind(this,this.handleClick);var e=this.iconEl,r=t.element(this.buttonEl),o=this.handleClick;n.$observe("disabled",u);u(n.disabled);i.$render=function(){h.clearNgAria();s()?(e.style.display="",r.attr("aria-checked","true")):(e.style.display="none",r.attr("aria-checked","false"))};f.$$postDigest(i.$render)};n.prototype.handleClick=function(){var n,r=this.mode,t=this.ngModel,i=this.$attrs;"checkbox"==r?n=!t.$modelValue:"radio"==r&&(n=i.ngValue?this.$scope.$eval(i.ngValue):i.value);t.$setViewValue(n);t.$render()}}(),function(){function n(n,i,r){return{controller:"MenuItemController",require:["mdMenuItem","?ngModel"],priority:i.BEFORE_NG_ARIA,compile:function(i,u){function o(n,r,u){u=u||i;u instanceof t.element&&(u=u[0]);u.hasAttribute(n)||u.setAttribute(n,r)}function h(r){var u=n.prefixer(r);t.forEach(u,function(n){if(i[0].hasAttribute(n)){var t=i[0].getAttribute(n);f[0].setAttribute(n,t);i[0].removeAttribute(n)}})}var e=u.type,s="md-in-menu-bar";if(("checkbox"==e||"radio"==e)&&i.hasClass(s)){var c=i[0].textContent,f=t.element('<md-button type="button"><\/md-button>'),l='<md-icon md-svg-src="'+r.mdChecked+'"><\/md-icon>';f.html(c);f.attr("tabindex","0");i.html("");i.append(t.element(l));i.append(f);i.addClass("md-indent").removeClass(s);o("role","checkbox"==e?"menuitemcheckbox":"menuitemradio",f);h("ng-disabled")}else o("role","menuitem",i[0].querySelector("md-button, button, a"));return function(n,t,i,r){var u=r[0],f=r[1];u.init(f)}}}}n.$inject=["$mdUtil","$mdConstant","$$mdSvgRegistry"];t.module("material.components.menuBar").directive("mdMenuItem",n)}(),function(){function n(n,i,r,u,f){function w(w,k,d){function it(t,r,f,e,s,h){function p(n){g.attr("stroke-dashoffset",o(v,nt,n,ut));g.attr("transform","rotate("+rt+" "+v/2+" "+v/2+")")}var b=++ht,k=u.now(),d=r-t,v=c(w.mdDiameter),nt=l(v),it=f||i.easeFn,y=e||i.duration,rt=-90*(s||0),ut=h||100;r===t?p(r):tt=a(function ft(){var i=n.Math.max(0,n.Math.min(u.now()-k,y));p(it(i,t,d,y));b===ht&&i<y&&(tt=a(ft))})}function et(){it(ct,lt,i.easeFnIndeterminate,i.durationIndeterminate,ft,75);ft=++ft%4}function ot(){nt||(nt=f(et,i.durationIndeterminate,0,!1),et(),k.addClass(p).removeAttr("aria-valuenow"))}function rt(){nt&&(f.cancel(nt),nt=null,k.removeClass(p))}var tt,nt,ut=k[0],st=t.element(ut.querySelector("svg")),g=t.element(ut.querySelector("path")),ct=i.startIndeterminate,lt=i.endIndeterminate,ft=0,ht=0;r(k);k.toggleClass(y,d.hasOwnProperty("disabled"));w.mdMode===e&&ot();w.$on("$destroy",function(){rt();tt&&b(tt)});w.$watchGroup(["value","mdMode",function(){var n=ut.disabled;return n===!0||n===!1?n:t.isDefined(k.attr("disabled"))}],function(n,t){var i=n[1],r=n[2],f=t[2],u;(r!==f&&k.toggleClass(y,!!r),r)?rt():(i!==v&&i!==e&&(i=e,d.$set("mdMode",i)),i===e)?ot():(u=s(n[0]),rt(),k.attr("aria-valuenow",u),it(s(t[0]),u))});w.$watch("mdDiameter",function(t){var i=c(t),r=l(i),f=s(w.value),u=i/2+"px",a={width:i+"px",height:i+"px"};st[0].setAttribute("viewBox","0 0 "+i+" "+i);st.css(a).css("transform-origin",u+" "+u+" "+u);k.css(a);g.attr("stroke-width",r);g.attr("stroke-linecap","square");w.mdMode==e?(g.attr("d",h(i,r,!0)),g.attr("stroke-dasharray",(i-r)*n.Math.PI*.75),g.attr("stroke-dashoffset",o(i,r,1,75))):(g.attr("d",h(i,r,!1)),g.attr("stroke-dasharray",(i-r)*n.Math.PI),g.attr("stroke-dashoffset",o(i,r,0,100)),it(f,f))})}function h(n,t,i){var u=n/2,f=t/2,e=u+","+f,o=f+","+u,r=u-f;return"M"+e+"A"+r+","+r+" 0 1 1 "+o+(i?"":"A"+r+","+r+" 0 0 1 "+e)}function o(t,i,r,u){return(t-i)*n.Math.PI*(3*(u||100)/100-r/100)}function s(t){return n.Math.max(0,n.Math.min(t||0,100))}function c(n){var r=i.progressSize,t;return n?(t=parseFloat(n),n.lastIndexOf("%")===n.length-1&&(t=t/100*r),t):r}function l(n){return i.strokeWidth/100*n}var a=n.requestAnimationFrame||n.webkitRequestAnimationFrame||t.noop,b=n.cancelAnimationFrame||n.webkitCancelAnimationFrame||n.webkitCancelRequestAnimationFrame||t.noop,v="determinate",e="indeterminate",y="_md-progress-circular-disabled",p="md-mode-indeterminate";return{restrict:"E",scope:{value:"@",mdDiameter:"@",mdMode:"@"},template:'<svg xmlns="http://www.w3.org/2000/svg"><path fill="none"/><\/svg>',compile:function(n,i){if(n.attr({"aria-valuemin":0,"aria-valuemax":100,role:"progressbar"}),t.isUndefined(i.mdMode)){var r=i.hasOwnProperty("value")?v:e;i.$set("mdMode",r)}else i.$set("mdMode",i.mdMode.trim());return w}}}n.$inject=["$window","$mdProgressCircular","$mdTheming","$mdUtil","$interval","$log"];t.module("material.components.progressCircular").directive("mdProgressCircular",n)}(),function(){function n(){function i(n,t,i,r){return i*n/r+t}function r(n,t,i,r){var u=(n/=r)*n,f=u*n;return t+i*(6*f*u+-15*u*u+10*f)}var n={progressSize:50,strokeWidth:10,duration:100,easeFn:i,durationIndeterminate:1333,startIndeterminate:1,endIndeterminate:149,easeFnIndeterminate:r,easingPresets:{linearEase:i,materialEase:r}};return{configure:function(i){return n=t.extend(n,i||{})},$get:function(){return n}}}t.module("material.components.progressCircular").provider("$mdProgressCircular",n)}(),function(){function n(){function i(i,r,u,f){if(f){var o=f.getTabElementIndex(r),s=n(r,"md-tab-body").remove(),h=n(r,"md-tab-label").remove(),e=f.insertTab({scope:i,parent:i.$parent,index:o,element:r,template:s.html(),label:h.html()},o);i.select=i.select||t.noop;i.deselect=i.deselect||t.noop;i.$watch("active",function(n){n&&f.select(e.getIndex(),!0)});i.$watch("disabled",function(){f.refreshIndex()});i.$watch(function(){return f.getTabElementIndex(r)},function(n){e.index=n;f.updateTabOrder()});i.$on("$destroy",function(){f.removeTab(e)})}}function n(n,i){for(var u,f=n[0].children,r=0,e=f.length;r<e;r++)if(u=f[r],u.tagName===i.toUpperCase())return t.element(u);return t.element()}return{require:"^?mdTabs",terminal:!0,compile:function(r,u){var f=n(r,"md-tab-label"),e=n(r,"md-tab-body"),o;return 0===f.length&&(f=t.element("<md-tab-label><\/md-tab-label>"),u.label?f.text(u.label):f.append(r.contents()),0===e.length)&&(o=r.contents().detach(),e=t.element("<md-tab-body><\/md-tab-body>"),e.append(o)),r.append(f),e.html()&&r.append(e),i},scope:{active:"=?mdActive",disabled:"=?ngDisabled",select:"&?mdOnSelect",deselect:"&?mdOnDeselect"}}}t.module("material.components.tabs").directive("mdTab",n)}(),function(){function n(){return{require:"^?mdTabs",link:function(n,t,i,r){r&&r.attachRipple(n,t)}}}t.module("material.components.tabs").directive("mdTabItem",n)}(),function(){function n(){return{terminal:!0}}t.module("material.components.tabs").directive("mdTabLabel",n)}(),function(){function n(n){return{restrict:"A",compile:function(t,i){var r=n(i.mdTabScroll,null,!0);return function(n,t){t.on("mousewheel",function(t){n.$apply(function(){r(n,{$event:t})})})}}}}n.$inject=["$parse"];t.module("material.components.tabs").directive("mdTabScroll",n)}(),function(){function n(n,r,u,f,e,o,s,h,c,l,a,v){function bt(){ti("stretchTabs",ri);k("focusIndex",hi,y.selectedIndex||0);k("offsetLeft",si,0);k("hasContent",oi,!1);k("maxTabWidth",fi,nt());k("shouldPaginate",ei,!1);w("noInkBar",wi);w("dynamicHeight",bi);w("noPagination");w("swipeContent");w("noDisconnect");w("autoselect");w("noSelectClick");w("centerTabs",ui,!1);w("enableDisconnect");y.scope=n;y.parent=n.$parent;y.tabs=[];y.lastSelectedIndex=null;y.hasFocus=!1;y.styleTabItemFocus=!1;y.shouldCenterTabs=st();y.tabContentPrefix="tab-content-";kt()}function kt(){y.selectedIndex=y.selectedIndex||0;dt();ni();gt();l(r);o.nextTick(function(){cr=p();at();tt();it();y.tabs[y.selectedIndex]&&y.tabs[y.selectedIndex].scope.select();vt=!0;g()})}function dt(){var i=h.$mdTabsTemplate,n=t.element(r[0].querySelector("md-tab-data"));n.html(i);c(n.contents())(y.parent);delete h.$mdTabsTemplate}function gt(){t.element(u).on("resize",ot);n.$on("$destroy",ii)}function ni(){n.$watch("$mdTabsCtrl.selectedIndex",ci)}function ti(n,t){var i=h.$normalize("md-"+n);t&&k(n,t);h.$observe(i,function(t){y[n]=t})}function w(n,t){function r(t){y[n]="false"!==t}var i=h.$normalize("md-"+n);t&&k(n,t);h.hasOwnProperty(i)&&r(h[i]);h.$observe(i,r)}function ii(){wt=!0;t.element(u).off("resize",ot)}function ri(){var n=p();t.element(n.wrapper).toggleClass("md-stretch-tabs",ir());it()}function ui(){y.shouldCenterTabs=st()}function fi(n,i){if(n!==i){var r=p();t.forEach(r.tabs,function(t){t.style.maxWidth=n+"px"});t.forEach(r.dummies,function(t){t.style.maxWidth=n+"px"});o.nextTick(y.updateInkBarStyles)}}function ei(n,t){n!==t&&(y.maxTabWidth=nt(),y.shouldCenterTabs=st(),o.nextTick(function(){y.maxTabWidth=nt();tt(y.selectedIndex)}))}function oi(n){r[n?"removeClass":"addClass"]("md-no-tab-content")}function si(i){var u=p(),r=(y.shouldCenterTabs||rt()?"":"-")+i+"px";r=r.replace("--","");t.element(u.paging).css(f.CSS.TRANSFORM,"translate3d("+r+", 0, 0)");n.$broadcast("$mdTabsPaginationChanged")}function hi(n,t){n!==t&&p().tabs[n]&&(tt(),yt())}function ci(t,i){t!==i&&(y.selectedIndex=ht(t),y.lastSelectedIndex=i,y.updateInkBarStyles(),at(),tt(t),n.$broadcast("$mdTabsChanged"),y.tabs[i]&&y.tabs[i].scope.deselect(),y.tabs[t]&&y.tabs[t].scope.select())}function li(n){var t=r[0].getElementsByTagName("md-tab");return Array.prototype.indexOf.call(t,n[0])}function d(){d.watcher||(d.watcher=n.$watch(function(){o.nextTick(function(){d.watcher&&r.prop("offsetParent")&&(d.watcher(),d.watcher=null,ot())},!1)}))}function ai(n){switch(n.keyCode){case f.KEY_CODE.LEFT_ARROW:n.preventDefault();lt(-1,!0);break;case f.KEY_CODE.RIGHT_ARROW:n.preventDefault();lt(1,!0);break;case f.KEY_CODE.SPACE:case f.KEY_CODE.ENTER:n.preventDefault();ut||et(y.focusIndex);break;case f.KEY_CODE.TAB:y.focusIndex!==y.selectedIndex&&(y.focusIndex=y.selectedIndex)}}function et(n,t){ut||(y.focusIndex=y.selectedIndex=n);t&&y.noSelectClick||o.nextTick(function(){y.tabs[n].element.triggerHandler("click")},!1)}function vi(n){y.shouldPaginate&&(n.preventDefault(),y.offsetLeft=b(y.offsetLeft-n.wheelDelta))}function yi(){if(y.canPageForward()){var n=v.increasePageOffset(p(),y.offsetLeft);y.offsetLeft=b(n)}}function pi(){if(y.canPageBack()){var n=v.decreasePageOffset(p(),y.offsetLeft);y.offsetLeft=b(n)}}function ot(){y.lastSelectedIndex=y.selectedIndex;y.offsetLeft=b(y.offsetLeft);o.nextTick(function(){y.updateInkBarStyles();g()})}function wi(n){t.element(p().inkBar).toggleClass("ng-hide",n)}function bi(n){r.toggleClass("md-dynamic-height",n)}function ki(n){if(!wt){var t=y.selectedIndex,i=y.tabs.splice(n.getIndex(),1)[0];pt();y.selectedIndex===t&&(i.scope.deselect(),y.tabs[y.selectedIndex]&&y.tabs[y.selectedIndex].scope.select());o.nextTick(function(){g();y.offsetLeft=b(y.offsetLeft)})}}function di(n,i){var u=vt,f={getIndex:function(){return y.tabs.indexOf(r)},isActive:function(){return this.getIndex()===y.selectedIndex},isLeft:function(){return this.getIndex()<y.selectedIndex},isRight:function(){return this.getIndex()>y.selectedIndex},shouldRender:function(){return!y.noDisconnect||this.isActive()},hasFocus:function(){return y.styleTabItemFocus&&y.hasFocus&&this.getIndex()===y.focusIndex},id:o.nextUid(),hasContent:!(!n.template||!n.template.trim())},r=t.extend(f,n);return t.isDefined(i)?y.tabs.splice(i,0,r):y.tabs.push(r),fr(),er(),o.nextTick(function(){g();hr(r);u&&y.autoselect&&o.nextTick(function(){o.nextTick(function(){et(y.tabs.indexOf(r))})})}),r}function p(){var n={},t=r[0];return n.wrapper=t.querySelector("md-tabs-wrapper"),n.canvas=n.wrapper.querySelector("md-tabs-canvas"),n.paging=n.canvas.querySelector("md-pagination-wrapper"),n.inkBar=n.paging.querySelector("md-ink-bar"),n.nextButton=t.querySelector("md-next-button"),n.prevButton=t.querySelector("md-prev-button"),n.contents=t.querySelectorAll("md-tabs-content-wrapper > md-tab-content"),n.tabs=n.paging.querySelectorAll("md-tab-item"),n.dummies=n.canvas.querySelectorAll("md-dummy-tab"),n}function gi(){return y.offsetLeft>0}function nr(){var n=p(),t=n.tabs[n.tabs.length-1];return rt()?y.offsetLeft<n.paging.offsetWidth-n.canvas.offsetWidth:t&&t.offsetLeft+t.offsetWidth>n.canvas.clientWidth+y.offsetLeft}function tr(){var n=y.tabs[y.focusIndex];return n&&n.id?"tab-item-"+n.id:null}function ir(){switch(y.stretchTabs){case"always":return!0;case"never":return!1;default:return!y.shouldPaginate&&u.matchMedia("(max-width: 600px)").matches}}function st(){return y.centerTabs&&!y.shouldPaginate}function rr(){if(y.noPagination||!vt)return!1;var n=r.prop("clientWidth");return t.forEach(p().tabs,function(t){n-=t.offsetWidth}),n<0}function ht(n){if(n===-1)return-1;for(var t,r=Math.max(y.tabs.length-n,n),i=0;i<=r;i++)if((t=y.tabs[n+i],t&&t.scope.disabled!==!0)||(t=y.tabs[n-i],t&&t.scope.disabled!==!0))return t.getIndex();return n}function k(n,t,i){Object.defineProperty(y,n,{get:function(){return i},set:function(n){var r=i;i=n;t&&t(n,r)}})}function g(){y.maxTabWidth=nt();y.shouldPaginate=rr()}function ct(n){var i=0;return t.forEach(n,function(n){i+=Math.max(n.offsetWidth,n.getBoundingClientRect().width)}),Math.ceil(i)}function nt(){var n=p(),t=n.canvas.clientWidth;return Math.max(0,Math.min(t-1,264))}function ur(){var n=y.tabs[y.selectedIndex],t=y.tabs[y.focusIndex];y.tabs=y.tabs.sort(function(n,t){return n.index-t.index});y.selectedIndex=y.tabs.indexOf(n);y.focusIndex=y.tabs.indexOf(t)}function lt(n,t){for(var r=t?"focusIndex":"selectedIndex",u=y[r],i=u+n;y.tabs[i]&&y.tabs[i].scope.disabled;i+=n);i=(u+n+y.tabs.length)%y.tabs.length;y.tabs[i]&&(y[r]=i)}function yt(){y.styleTabItemFocus="keyboard"===a.getLastInteractionType();p().tabs[y.focusIndex].focus()}function tt(n){var i=p(),f,e;if(t.isNumber(n)||(n=y.focusIndex),i.tabs[n]&&!y.shouldCenterTabs){var r=i.tabs[n],u=r.offsetLeft,o=r.offsetWidth+u;if(0==n)return void(y.offsetLeft=0);rt()?(f=ct(Array.prototype.slice.call(i.tabs,0,n)),e=ct(Array.prototype.slice.call(i.tabs,0,n+1)),y.offsetLeft=Math.min(y.offsetLeft,b(f)),y.offsetLeft=Math.max(y.offsetLeft,b(e-i.canvas.clientWidth))):(y.offsetLeft=Math.max(y.offsetLeft,b(o-i.canvas.clientWidth+32)),y.offsetLeft=Math.min(y.offsetLeft,b(u)))}}function fr(){ft.forEach(function(n){o.nextTick(n)});ft=[]}function er(){for(var t=!1,n=0;n<y.tabs.length;n++)if(y.tabs[n].hasContent){t=!0;break}y.hasContent=t}function pt(){y.selectedIndex=ht(y.selectedIndex);y.focusIndex=ht(y.focusIndex)}function at(){var f,c;if(!y.dynamicHeight)return r.css("height","");if(!y.tabs.length)return ft.push(at);var e=p(),h=e.contents[y.selectedIndex],l=h?h.offsetHeight:0,t=e.wrapper.offsetHeight,u=l+t,n=r.prop("clientHeight");n!==u&&("bottom"===r.attr("md-align-tabs")&&(n-=t,u-=t,r.attr("md-border-bottom")!==i&&++n),ut=!0,f={height:n+"px"},c={height:u+"px"},r.css(f),s(r,{from:f,to:c,easing:"cubic-bezier(0.35, 0, 0.25, 1)",duration:.5}).start().done(function(){r.css({transition:"none",height:""});o.nextTick(function(){r.css("transition","")});ut=!1}))}function it(){var n=p(),e;if(!n.tabs[y.selectedIndex])return void t.element(n.inkBar).css({left:"auto",right:"auto"});if(!y.tabs.length)return ft.push(y.updateInkBarStyles);if(!r.prop("offsetParent"))return d();var s=y.selectedIndex,i=n.paging.offsetWidth,u=n.tabs[s],f=u.offsetLeft,h=i-f-u.offsetWidth;y.shouldCenterTabs&&(e=ct(n.tabs),i>e&&o.nextTick(it,!1));or();t.element(n.inkBar).css({left:f+"px",right:h+"px"})}function or(){var r=p(),i=y.selectedIndex,n=y.lastSelectedIndex,u=t.element(r.inkBar);t.isNumber(n)&&u.toggleClass("md-left",i<n).toggleClass("md-right",i>n)}function b(n){var t=p(),i,r;return!t.tabs.length||!y.shouldPaginate?0:(i=t.tabs[t.tabs.length-1],r=i.offsetLeft+i.offsetWidth,rt()?(n=Math.min(t.paging.offsetWidth-t.canvas.clientWidth,n),n=Math.max(0,n)):(n=Math.max(0,n),n=Math.min(r-t.canvas.clientWidth,n)),n)}function sr(n,i){var r=p(),u={colorElement:t.element(r.inkBar)};e.attach(n,i,u)}function hr(n){if(n.hasContent){var i=r[0].querySelectorAll('[md-tab-id="'+n.id+'"]');t.element(i).attr("aria-controls",y.tabContentPrefix+n.id)}}function rt(){return"rtl"==o.bidi()}var y=this,ut=!1,cr=p(),ft=[],wt=!1,vt=!1;y.$onInit=bt;y.updatePagination=o.debounce(g,100);y.redirectFocus=yt;y.attachRipple=sr;y.insertTab=di;y.removeTab=ki;y.select=et;y.scroll=vi;y.nextPage=yi;y.previousPage=pi;y.keydown=ai;y.canPageForward=nr;y.canPageBack=gi;y.refreshIndex=pt;y.incrementIndex=lt;y.getTabElementIndex=li;y.updateInkBarStyles=o.debounce(it,100);y.updateTabOrder=o.debounce(ur,100);y.getFocusedTabId=tr;1===t.version.major&&t.version.minor<=4&&this.$onInit()}n.$inject=["$scope","$element","$window","$mdConstant","$mdTabInkRipple","$mdUtil","$animateCss","$attrs","$compile","$mdTheming","$mdInteraction","MdTabsPaginationService"];t.module("material.components.tabs").controller("MdTabsController",n)}(),function(){function n(n){return{scope:{selectedIndex:"=?mdSelected"},template:function(t,i){return i.$mdTabsTemplate=t.html(),'<md-tabs-wrapper> <md-tab-data><\/md-tab-data> <md-prev-button tabindex="-1" role="button" aria-label="Previous Page" aria-disabled="{{!$mdTabsCtrl.canPageBack()}}" ng-class="{ \'md-disabled\': !$mdTabsCtrl.canPageBack() }" ng-if="$mdTabsCtrl.shouldPaginate" ng-click="$mdTabsCtrl.previousPage()"> <md-icon md-svg-src="'+n.mdTabsArrow+'"><\/md-icon> <\/md-prev-button> <md-next-button tabindex="-1" role="button" aria-label="Next Page" aria-disabled="{{!$mdTabsCtrl.canPageForward()}}" ng-class="{ \'md-disabled\': !$mdTabsCtrl.canPageForward() }" ng-if="$mdTabsCtrl.shouldPaginate" ng-click="$mdTabsCtrl.nextPage()"> <md-icon md-svg-src="'+n.mdTabsArrow+'"><\/md-icon> <\/md-next-button> <md-tabs-canvas ng-focus="$mdTabsCtrl.redirectFocus()" ng-class="{ \'md-paginated\': $mdTabsCtrl.shouldPaginate, \'md-center-tabs\': $mdTabsCtrl.shouldCenterTabs }" ng-keydown="$mdTabsCtrl.keydown($event)"> <md-pagination-wrapper ng-class="{ \'md-center-tabs\': $mdTabsCtrl.shouldCenterTabs }" md-tab-scroll="$mdTabsCtrl.scroll($event)" role="tablist"> <md-tab-item tabindex="{{ tab.isActive() ? 0 : -1 }}" class="md-tab" ng-repeat="tab in $mdTabsCtrl.tabs" role="tab" id="tab-item-{{::tab.id}}" md-tab-id="{{::tab.id}}"aria-selected="{{tab.isActive()}}" aria-disabled="{{tab.scope.disabled || \'false\'}}" ng-click="$mdTabsCtrl.select(tab.getIndex())" ng-focus="$mdTabsCtrl.hasFocus = true" ng-blur="$mdTabsCtrl.hasFocus = false" ng-class="{ \'md-active\':    tab.isActive(), \'md-focused\':   tab.hasFocus(), \'md-disabled\':  tab.scope.disabled }" ng-disabled="tab.scope.disabled" md-swipe-left="$mdTabsCtrl.nextPage()" md-swipe-right="$mdTabsCtrl.previousPage()" md-tabs-template="::tab.label" md-scope="::tab.parent"><\/md-tab-item> <md-ink-bar><\/md-ink-bar> <\/md-pagination-wrapper> <md-tabs-dummy-wrapper aria-hidden="true" class="md-visually-hidden md-dummy-wrapper"> <md-dummy-tab class="md-tab" tabindex="-1" ng-repeat="tab in $mdTabsCtrl.tabs" md-tabs-template="::tab.label" md-scope="::tab.parent"><\/md-dummy-tab> <\/md-tabs-dummy-wrapper> <\/md-tabs-canvas> <\/md-tabs-wrapper> <md-tabs-content-wrapper ng-show="$mdTabsCtrl.hasContent && $mdTabsCtrl.selectedIndex >= 0" class="_md"> <md-tab-content id="{{:: $mdTabsCtrl.tabContentPrefix + tab.id}}" class="_md" role="tabpanel" aria-labelledby="tab-item-{{::tab.id}}" md-swipe-left="$mdTabsCtrl.swipeContent && $mdTabsCtrl.incrementIndex(1)" md-swipe-right="$mdTabsCtrl.swipeContent && $mdTabsCtrl.incrementIndex(-1)" ng-if="tab.hasContent" ng-repeat="(index, tab) in $mdTabsCtrl.tabs" ng-class="{ \'md-no-transition\': $mdTabsCtrl.lastSelectedIndex == null, \'md-active\':        tab.isActive(), \'md-left\':          tab.isLeft(), \'md-right\':         tab.isRight(), \'md-no-scroll\':     $mdTabsCtrl.dynamicHeight }"> <div md-tabs-template="::tab.template" md-connected-if="tab.isActive()" md-scope="::tab.parent" ng-if="$mdTabsCtrl.enableDisconnect || tab.shouldRender()"><\/div> <\/md-tab-content> <\/md-tabs-content-wrapper>'},controller:"MdTabsController",controllerAs:"$mdTabsCtrl",bindToController:!0}}n.$inject=["$$mdSvgRegistry"];t.module("material.components.tabs").directive("mdTabs",n)}(),function(){function n(n,t){return{require:"^?mdTabs",link:function(i,r,u,f){var e,o,s,c,h;f&&(s=function(){f.updatePagination();f.updateInkBarStyles()},"MutationObserver"in t?(c={childList:!0,subtree:!0,characterData:!0},e=new MutationObserver(s),e.observe(r[0],c),o=e.disconnect.bind(e)):(h=n.debounce(s,15,null,!1),r.on("DOMSubtreeModified",h),o=r.off.bind(r,"DOMSubtreeModified",h)),i.$on("$destroy",function(){o()}))}}}n.$inject=["$mdUtil","$window"];t.module("material.components.tabs").directive("mdTabsDummyWrapper",n)}(),function(){function n(n,t){function i(i,r,u,f){function s(){i.$watch("connected",function(n){n===!1?h():o()});i.$on("$destroy",o)}function h(){f.enableDisconnect&&t.disconnectScope(e)}function o(){f.enableDisconnect&&t.reconnectScope(e)}if(f){var e=f.enableDisconnect?i.compileScope.$new():i.compileScope;return r.html(i.template),n(r.contents())(e),t.nextTick(s)}}return{restrict:"A",link:i,scope:{template:"=mdTabsTemplate",connected:"=?mdConnectedIf",compileScope:"=mdScope"},require:"^?mdTabs"}}n.$inject=["$compile","$mdUtil"];t.module("material.components.tabs").directive("mdTabsTemplate",n)}(),function(){t.module("material.core").constant("$MD_THEME_CSS",'md-autocomplete.md-THEME_NAME-theme{background:"{{background-A100}}"}md-autocomplete.md-THEME_NAME-theme[disabled]:not([md-floating-label]){background:"{{background-100}}"}md-autocomplete.md-THEME_NAME-theme button md-icon path{fill:"{{background-600}}"}md-autocomplete.md-THEME_NAME-theme button:after{background:"{{background-600-0.3}}"}.md-autocomplete-suggestions-container.md-THEME_NAME-theme{background:"{{background-A100}}"}.md-autocomplete-suggestions-container.md-THEME_NAME-theme li{color:"{{background-900}}"}.md-autocomplete-suggestions-container.md-THEME_NAME-theme li .highlight{color:"{{background-600}}"}.md-autocomplete-suggestions-container.md-THEME_NAME-theme li.selected,.md-autocomplete-suggestions-container.md-THEME_NAME-theme li:hover{background:"{{background-200}}"}md-backdrop{background-color:"{{background-900-0.0}}"}md-backdrop.md-opaque.md-THEME_NAME-theme{background-color:"{{background-900-1.0}}"}md-bottom-sheet.md-THEME_NAME-theme{background-color:"{{background-50}}";border-top-color:"{{background-300}}"}md-bottom-sheet.md-THEME_NAME-theme.md-list md-list-item{color:"{{foreground-1}}"}md-bottom-sheet.md-THEME_NAME-theme .md-subheader{background-color:"{{background-50}}";color:"{{foreground-1}}"}.md-button.md-THEME_NAME-theme:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme:not([disabled]):hover{background-color:"{{background-500-0.2}}"}.md-button.md-THEME_NAME-theme:not([disabled]).md-icon-button:hover{background-color:transparent}.md-button.md-THEME_NAME-theme.md-fab md-icon{color:"{{accent-contrast}}"}.md-button.md-THEME_NAME-theme.md-primary{color:"{{primary-color}}"}.md-button.md-THEME_NAME-theme.md-primary.md-fab,.md-button.md-THEME_NAME-theme.md-primary.md-raised{color:"{{primary-contrast}}";background-color:"{{primary-color}}"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]) md-icon{color:"{{primary-contrast}}"}.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-fab:not([disabled]):hover,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-primary.md-raised:not([disabled]):hover{background-color:"{{primary-600}}"}.md-button.md-THEME_NAME-theme.md-primary:not([disabled]) md-icon{color:"{{primary-color}}"}.md-button.md-THEME_NAME-theme.md-fab{background-color:"{{accent-color}}";color:"{{accent-contrast}}"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]) .md-icon{color:"{{accent-contrast}}"}.md-button.md-THEME_NAME-theme.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-fab:not([disabled]):hover{background-color:"{{accent-A700}}"}.md-button.md-THEME_NAME-theme.md-raised{color:"{{background-900}}";background-color:"{{background-50}}"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]) md-icon{color:"{{background-900}}"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]):hover{background-color:"{{background-50}}"}.md-button.md-THEME_NAME-theme.md-raised:not([disabled]).md-focused{background-color:"{{background-200}}"}.md-button.md-THEME_NAME-theme.md-warn{color:"{{warn-color}}"}.md-button.md-THEME_NAME-theme.md-warn.md-fab,.md-button.md-THEME_NAME-theme.md-warn.md-raised{color:"{{warn-contrast}}";background-color:"{{warn-color}}"}.md-button.md-THEME_NAME-theme.md-warn.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-warn.md-raised:not([disabled]) md-icon{color:"{{warn-contrast}}"}.md-button.md-THEME_NAME-theme.md-warn.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-warn.md-fab:not([disabled]):hover,.md-button.md-THEME_NAME-theme.md-warn.md-raised:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-warn.md-raised:not([disabled]):hover{background-color:"{{warn-600}}"}.md-button.md-THEME_NAME-theme.md-warn:not([disabled]) md-icon{color:"{{warn-color}}"}.md-button.md-THEME_NAME-theme.md-accent{color:"{{accent-color}}"}.md-button.md-THEME_NAME-theme.md-accent.md-fab,.md-button.md-THEME_NAME-theme.md-accent.md-raised{color:"{{accent-contrast}}";background-color:"{{accent-color}}"}.md-button.md-THEME_NAME-theme.md-accent.md-fab:not([disabled]) md-icon,.md-button.md-THEME_NAME-theme.md-accent.md-raised:not([disabled]) md-icon{color:"{{accent-contrast}}"}.md-button.md-THEME_NAME-theme.md-accent.md-fab:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-accent.md-fab:not([disabled]):hover,.md-button.md-THEME_NAME-theme.md-accent.md-raised:not([disabled]).md-focused,.md-button.md-THEME_NAME-theme.md-accent.md-raised:not([disabled]):hover{background-color:"{{accent-A700}}"}.md-button.md-THEME_NAME-theme.md-accent:not([disabled]) md-icon{color:"{{accent-color}}"}.md-button.md-THEME_NAME-theme.md-accent[disabled],.md-button.md-THEME_NAME-theme.md-fab[disabled],.md-button.md-THEME_NAME-theme.md-raised[disabled],.md-button.md-THEME_NAME-theme.md-warn[disabled],.md-button.md-THEME_NAME-theme[disabled]{color:"{{foreground-3}}";cursor:default}.md-button.md-THEME_NAME-theme.md-accent[disabled] md-icon,.md-button.md-THEME_NAME-theme.md-fab[disabled] md-icon,.md-button.md-THEME_NAME-theme.md-raised[disabled] md-icon,.md-button.md-THEME_NAME-theme.md-warn[disabled] md-icon,.md-button.md-THEME_NAME-theme[disabled] md-icon{color:"{{foreground-3}}"}.md-button.md-THEME_NAME-theme.md-fab[disabled],.md-button.md-THEME_NAME-theme.md-raised[disabled]{background-color:"{{foreground-4}}"}.md-button.md-THEME_NAME-theme[disabled]{background-color:transparent}._md a.md-THEME_NAME-theme:not(.md-button).md-primary{color:"{{primary-color}}"}._md a.md-THEME_NAME-theme:not(.md-button).md-primary:hover{color:"{{primary-700}}"}._md a.md-THEME_NAME-theme:not(.md-button).md-accent{color:"{{accent-color}}"}._md a.md-THEME_NAME-theme:not(.md-button).md-accent:hover{color:"{{accent-A700}}"}._md a.md-THEME_NAME-theme:not(.md-button).md-warn{color:"{{warn-color}}"}._md a.md-THEME_NAME-theme:not(.md-button).md-warn:hover{color:"{{warn-700}}"}md-card.md-THEME_NAME-theme{color:"{{foreground-1}}";background-color:"{{background-hue-1}}";border-radius:2px}md-card.md-THEME_NAME-theme .md-card-image{border-radius:2px 2px 0 0}md-card.md-THEME_NAME-theme md-card-header md-card-avatar md-icon{color:"{{background-color}}";background-color:"{{foreground-3}}"}md-card.md-THEME_NAME-theme md-card-header md-card-header-text .md-subhead,md-card.md-THEME_NAME-theme md-card-title md-card-title-text:not(:only-child) .md-subhead{color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme .md-ripple{color:"{{accent-A700}}"}md-checkbox.md-THEME_NAME-theme.md-checked .md-ripple{color:"{{background-600}}"}md-checkbox.md-THEME_NAME-theme.md-checked.md-focused .md-container:before{background-color:"{{accent-color-0.26}}"}md-checkbox.md-THEME_NAME-theme .md-ink-ripple{color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme.md-checked .md-ink-ripple{color:"{{accent-color-0.87}}"}md-checkbox.md-THEME_NAME-theme:not(.md-checked) .md-icon{border-color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme.md-checked .md-icon{background-color:"{{accent-color-0.87}}"}md-checkbox.md-THEME_NAME-theme.md-checked .md-icon:after{border-color:"{{accent-contrast-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary .md-ripple{color:"{{primary-600}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-ripple{color:"{{background-600}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary .md-ink-ripple{color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-ink-ripple{color:"{{primary-color-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary:not(.md-checked) .md-icon{border-color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-icon{background-color:"{{primary-color-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked.md-focused .md-container:before{background-color:"{{primary-color-0.26}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-icon:after{border-color:"{{primary-contrast-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-primary .md-indeterminate[disabled] .md-container{color:"{{foreground-3}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn .md-ripple{color:"{{warn-600}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn .md-ink-ripple{color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-ink-ripple{color:"{{warn-color-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn:not(.md-checked) .md-icon{border-color:"{{foreground-2}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-icon{background-color:"{{warn-color-0.87}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked.md-focused:not([disabled]) .md-container:before{background-color:"{{warn-color-0.26}}"}md-checkbox.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-icon:after{border-color:"{{background-200}}"}md-checkbox.md-THEME_NAME-theme[disabled]:not(.md-checked) .md-icon{border-color:"{{foreground-3}}"}md-checkbox.md-THEME_NAME-theme[disabled].md-checked .md-icon{background-color:"{{foreground-3}}"}md-checkbox.md-THEME_NAME-theme[disabled].md-checked .md-icon:after{border-color:"{{background-200}}"}md-checkbox.md-THEME_NAME-theme[disabled] .md-icon:after{border-color:"{{foreground-3}}"}md-checkbox.md-THEME_NAME-theme[disabled] .md-label{color:"{{foreground-3}}"}md-chips.md-THEME_NAME-theme .md-chips{box-shadow:0 1px "{{foreground-4}}"}md-chips.md-THEME_NAME-theme .md-chips.md-focused{box-shadow:0 2px "{{primary-color}}"}md-chips.md-THEME_NAME-theme .md-chips .md-chip-input-container input{color:"{{foreground-1}}"}md-chips.md-THEME_NAME-theme .md-chips .md-chip-input-container input:-moz-placeholder,md-chips.md-THEME_NAME-theme .md-chips .md-chip-input-container input::-moz-placeholder{color:"{{foreground-3}}"}md-chips.md-THEME_NAME-theme .md-chips .md-chip-input-container input:-ms-input-placeholder{color:"{{foreground-3}}"}md-chips.md-THEME_NAME-theme .md-chips .md-chip-input-container input::-webkit-input-placeholder{color:"{{foreground-3}}"}md-chips.md-THEME_NAME-theme md-chip{background:"{{background-300}}";color:"{{background-800}}"}md-chips.md-THEME_NAME-theme md-chip md-icon{color:"{{background-700}}"}md-chips.md-THEME_NAME-theme md-chip.md-focused{background:"{{primary-color}}";color:"{{primary-contrast}}"}md-chips.md-THEME_NAME-theme md-chip.md-focused md-icon{color:"{{primary-contrast}}"}md-chips.md-THEME_NAME-theme md-chip._md-chip-editing{background:transparent;color:"{{background-800}}"}md-chips.md-THEME_NAME-theme md-chip-remove .md-button md-icon path{fill:"{{background-500}}"}.md-contact-suggestion span.md-contact-email{color:"{{background-400}}"}md-content.md-THEME_NAME-theme{color:"{{foreground-1}}";background-color:"{{background-default}}"}.md-calendar.md-THEME_NAME-theme{background:"{{background-A100}}";color:"{{background-A200-0.87}}"}.md-calendar.md-THEME_NAME-theme tr:last-child td{border-bottom-color:"{{background-200}}"}.md-THEME_NAME-theme .md-calendar-day-header{background:"{{background-300}}";color:"{{background-A200-0.87}}"}.md-THEME_NAME-theme .md-calendar-date.md-calendar-date-today .md-calendar-date-selection-indicator{border:1px solid "{{primary-500}}"}.md-THEME_NAME-theme .md-calendar-date.md-calendar-date-today.md-calendar-date-disabled{color:"{{primary-500-0.6}}"}.md-calendar-date.md-focus .md-THEME_NAME-theme .md-calendar-date-selection-indicator,.md-THEME_NAME-theme .md-calendar-date-selection-indicator:hover{background:"{{background-300}}"}.md-THEME_NAME-theme .md-calendar-date.md-calendar-selected-date .md-calendar-date-selection-indicator,.md-THEME_NAME-theme .md-calendar-date.md-focus.md-calendar-selected-date .md-calendar-date-selection-indicator{background:"{{primary-500}}";color:"{{primary-500-contrast}}";border-color:transparent}.md-THEME_NAME-theme .md-calendar-date-disabled,.md-THEME_NAME-theme .md-calendar-month-label-disabled{color:"{{background-A200-0.435}}"}.md-THEME_NAME-theme .md-datepicker-input{color:"{{foreground-1}}"}.md-THEME_NAME-theme .md-datepicker-input:-moz-placeholder,.md-THEME_NAME-theme .md-datepicker-input::-moz-placeholder{color:"{{foreground-3}}"}.md-THEME_NAME-theme .md-datepicker-input:-ms-input-placeholder{color:"{{foreground-3}}"}.md-THEME_NAME-theme .md-datepicker-input::-webkit-input-placeholder{color:"{{foreground-3}}"}.md-THEME_NAME-theme .md-datepicker-input-container{border-bottom-color:"{{foreground-4}}"}.md-THEME_NAME-theme .md-datepicker-input-container.md-datepicker-focused{border-bottom-color:"{{primary-color}}"}.md-accent .md-THEME_NAME-theme .md-datepicker-input-container.md-datepicker-focused{border-bottom-color:"{{accent-color}}"}.md-THEME_NAME-theme .md-datepicker-input-container.md-datepicker-invalid,.md-warn .md-THEME_NAME-theme .md-datepicker-input-container.md-datepicker-focused{border-bottom-color:"{{warn-A700}}"}.md-THEME_NAME-theme .md-datepicker-calendar-pane{border-color:"{{background-hue-1}}"}.md-THEME_NAME-theme .md-datepicker-triangle-button .md-datepicker-expand-triangle{border-top-color:"{{foreground-2}}"}.md-THEME_NAME-theme .md-datepicker-open .md-datepicker-calendar-icon{color:"{{primary-color}}"}.md-accent .md-THEME_NAME-theme .md-datepicker-open .md-datepicker-calendar-icon,.md-THEME_NAME-theme .md-datepicker-open.md-accent .md-datepicker-calendar-icon{color:"{{accent-color}}"}.md-THEME_NAME-theme .md-datepicker-open.md-warn .md-datepicker-calendar-icon,.md-warn .md-THEME_NAME-theme .md-datepicker-open .md-datepicker-calendar-icon{color:"{{warn-A700}}"}.md-THEME_NAME-theme .md-datepicker-calendar{background:"{{background-A100}}"}.md-THEME_NAME-theme .md-datepicker-input-mask-opaque{box-shadow:0 0 0 9999px "{{background-hue-1}}"}.md-THEME_NAME-theme .md-datepicker-open .md-datepicker-input-container{background:"{{background-hue-1}}"}md-dialog.md-THEME_NAME-theme{border-radius:4px;background-color:"{{background-hue-1}}";color:"{{foreground-1}}"}md-dialog.md-THEME_NAME-theme.md-content-overflow .md-actions,md-dialog.md-THEME_NAME-theme.md-content-overflow md-dialog-actions,md-divider.md-THEME_NAME-theme{border-top-color:"{{foreground-4}}"}.layout-gt-lg-row>md-divider.md-THEME_NAME-theme,.layout-gt-md-row>md-divider.md-THEME_NAME-theme,.layout-gt-sm-row>md-divider.md-THEME_NAME-theme,.layout-gt-xs-row>md-divider.md-THEME_NAME-theme,.layout-lg-row>md-divider.md-THEME_NAME-theme,.layout-md-row>md-divider.md-THEME_NAME-theme,.layout-row>md-divider.md-THEME_NAME-theme,.layout-sm-row>md-divider.md-THEME_NAME-theme,.layout-xl-row>md-divider.md-THEME_NAME-theme,.layout-xs-row>md-divider.md-THEME_NAME-theme{border-right-color:"{{foreground-4}}"}md-icon.md-THEME_NAME-theme{color:"{{foreground-2}}"}md-icon.md-THEME_NAME-theme.md-primary{color:"{{primary-color}}"}md-icon.md-THEME_NAME-theme.md-accent{color:"{{accent-color}}"}md-icon.md-THEME_NAME-theme.md-warn{color:"{{warn-color}}"}md-input-container.md-THEME_NAME-theme .md-input{color:"{{foreground-1}}";border-color:"{{foreground-4}}"}md-input-container.md-THEME_NAME-theme .md-input:-moz-placeholder,md-input-container.md-THEME_NAME-theme .md-input::-moz-placeholder{color:"{{foreground-3}}"}md-input-container.md-THEME_NAME-theme .md-input:-ms-input-placeholder{color:"{{foreground-3}}"}md-input-container.md-THEME_NAME-theme .md-input::-webkit-input-placeholder{color:"{{foreground-3}}"}md-input-container.md-THEME_NAME-theme>md-icon{color:"{{foreground-1}}"}md-input-container.md-THEME_NAME-theme .md-placeholder,md-input-container.md-THEME_NAME-theme label{color:"{{foreground-3}}"}md-input-container.md-THEME_NAME-theme label.md-required:after{color:"{{warn-A700}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-focused):not(.md-input-invalid) label.md-required:after{color:"{{foreground-2}}"}md-input-container.md-THEME_NAME-theme .md-input-message-animation,md-input-container.md-THEME_NAME-theme .md-input-messages-animation{color:"{{warn-A700}}"}md-input-container.md-THEME_NAME-theme .md-input-message-animation .md-char-counter,md-input-container.md-THEME_NAME-theme .md-input-messages-animation .md-char-counter{color:"{{foreground-1}}"}md-input-container.md-THEME_NAME-theme.md-input-focused .md-input:-moz-placeholder,md-input-container.md-THEME_NAME-theme.md-input-focused .md-input::-moz-placeholder{color:"{{foreground-2}}"}md-input-container.md-THEME_NAME-theme.md-input-focused .md-input:-ms-input-placeholder{color:"{{foreground-2}}"}md-input-container.md-THEME_NAME-theme.md-input-focused .md-input::-webkit-input-placeholder{color:"{{foreground-2}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-has-value label{color:"{{foreground-2}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused .md-input,md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-resized .md-input{border-color:"{{primary-color}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused label,md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused md-icon{color:"{{primary-color}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-accent .md-input{border-color:"{{accent-color}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-accent label,md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-accent md-icon{color:"{{accent-color}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-warn .md-input{border-color:"{{warn-A700}}"}md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-warn label,md-input-container.md-THEME_NAME-theme:not(.md-input-invalid).md-input-focused.md-warn md-icon{color:"{{warn-A700}}"}md-input-container.md-THEME_NAME-theme.md-input-invalid .md-input{border-color:"{{warn-A700}}"}md-input-container.md-THEME_NAME-theme.md-input-invalid .md-char-counter,md-input-container.md-THEME_NAME-theme.md-input-invalid .md-input-message-animation,md-input-container.md-THEME_NAME-theme.md-input-invalid label{color:"{{warn-A700}}"}[disabled] md-input-container.md-THEME_NAME-theme .md-input,md-input-container.md-THEME_NAME-theme .md-input[disabled]{border-bottom-color:transparent;color:"{{foreground-3}}";background-image:linear-gradient(90deg,"{{foreground-3}}" 0,"{{foreground-3}}" 33%,transparent 0);background-image:-ms-linear-gradient(left,transparent 0,"{{foreground-3}}" 100%)}md-list.md-THEME_NAME-theme md-list-item.md-2-line .md-list-item-text h3,md-list.md-THEME_NAME-theme md-list-item.md-2-line .md-list-item-text h4,md-list.md-THEME_NAME-theme md-list-item.md-3-line .md-list-item-text h3,md-list.md-THEME_NAME-theme md-list-item.md-3-line .md-list-item-text h4{color:"{{foreground-1}}"}md-list.md-THEME_NAME-theme md-list-item.md-2-line .md-list-item-text p,md-list.md-THEME_NAME-theme md-list-item.md-3-line .md-list-item-text p{color:"{{foreground-2}}"}md-list.md-THEME_NAME-theme .md-proxy-focus.md-focused div.md-no-style{background-color:"{{background-100}}"}md-list.md-THEME_NAME-theme md-list-item .md-avatar-icon{background-color:"{{foreground-3}}";color:"{{background-color}}"}md-list.md-THEME_NAME-theme md-list-item>md-icon{color:"{{foreground-2}}"}md-list.md-THEME_NAME-theme md-list-item>md-icon.md-highlight{color:"{{primary-color}}"}md-list.md-THEME_NAME-theme md-list-item>md-icon.md-highlight.md-accent{color:"{{accent-color}}"}md-menu-content.md-THEME_NAME-theme{background-color:"{{background-A100}}"}md-menu-content.md-THEME_NAME-theme md-menu-item{color:"{{background-A200-0.87}}"}md-menu-content.md-THEME_NAME-theme md-menu-item md-icon{color:"{{background-A200-0.54}}"}md-menu-content.md-THEME_NAME-theme md-menu-item .md-button[disabled],md-menu-content.md-THEME_NAME-theme md-menu-item .md-button[disabled] md-icon{color:"{{background-A200-0.25}}"}md-menu-content.md-THEME_NAME-theme md-menu-divider{background-color:"{{background-A200-0.11}}"}md-menu-bar.md-THEME_NAME-theme>button.md-button{color:"{{foreground-2}}";border-radius:2px}md-menu-bar.md-THEME_NAME-theme md-menu.md-open>button,md-menu-bar.md-THEME_NAME-theme md-menu>button:focus{outline:none;background:"{{background-200}}"}md-menu-bar.md-THEME_NAME-theme.md-open:not(.md-keyboard-mode) md-menu:hover>button{background-color:"{{ background-500-0.2}}"}md-menu-bar.md-THEME_NAME-theme:not(.md-keyboard-mode):not(.md-open) md-menu button:focus,md-menu-bar.md-THEME_NAME-theme:not(.md-keyboard-mode):not(.md-open) md-menu button:hover{background:transparent}md-menu-content.md-THEME_NAME-theme .md-menu>.md-button:after{color:"{{background-A200-0.54}}"}md-menu-content.md-THEME_NAME-theme .md-menu.md-open>.md-button{background-color:"{{ background-500-0.2}}"}md-toolbar.md-THEME_NAME-theme.md-menu-toolbar{background-color:"{{background-A100}}";color:"{{background-A200}}"}md-toolbar.md-THEME_NAME-theme.md-menu-toolbar md-toolbar-filler{background-color:"{{primary-color}}";color:"{{background-A100-0.87}}"}md-toolbar.md-THEME_NAME-theme.md-menu-toolbar md-toolbar-filler md-icon{color:"{{background-A100-0.87}}"}md-nav-bar.md-THEME_NAME-theme .md-nav-bar{background-color:transparent;border-color:"{{foreground-4}}"}md-nav-bar.md-THEME_NAME-theme .md-button._md-nav-button.md-unselected{color:"{{foreground-2}}"}md-nav-bar.md-THEME_NAME-theme md-nav-ink-bar{color:"{{accent-color}}";background:"{{accent-color}}"}md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar{background-color:"{{accent-color}}"}md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar .md-button._md-nav-button{color:"{{accent-A100}}"}md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar .md-button._md-nav-button.md-active,md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{accent-contrast}}"}md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{accent-contrast-0.1}}"}md-nav-bar.md-THEME_NAME-theme.md-accent>.md-nav-bar md-nav-ink-bar{color:"{{primary-600-1}}";background:"{{primary-600-1}}"}md-nav-bar.md-THEME_NAME-theme.md-warn>.md-nav-bar{background-color:"{{warn-color}}"}md-nav-bar.md-THEME_NAME-theme.md-warn>.md-nav-bar .md-button._md-nav-button{color:"{{warn-100}}"}md-nav-bar.md-THEME_NAME-theme.md-warn>.md-nav-bar .md-button._md-nav-button.md-active,md-nav-bar.md-THEME_NAME-theme.md-warn>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{warn-contrast}}"}md-nav-bar.md-THEME_NAME-theme.md-warn>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{warn-contrast-0.1}}"}md-nav-bar.md-THEME_NAME-theme.md-primary>.md-nav-bar{background-color:"{{primary-color}}"}md-nav-bar.md-THEME_NAME-theme.md-primary>.md-nav-bar .md-button._md-nav-button{color:"{{primary-100}}"}md-nav-bar.md-THEME_NAME-theme.md-primary>.md-nav-bar .md-button._md-nav-button.md-active,md-nav-bar.md-THEME_NAME-theme.md-primary>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{primary-contrast}}"}md-nav-bar.md-THEME_NAME-theme.md-primary>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{primary-contrast-0.1}}"}md-toolbar>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar{background-color:"{{primary-color}}"}md-toolbar>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button{color:"{{primary-100}}"}md-toolbar>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-active,md-toolbar>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{primary-contrast}}"}md-toolbar>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{primary-contrast-0.1}}"}md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar{background-color:"{{accent-color}}"}md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button{color:"{{accent-A100}}"}md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-active,md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{accent-contrast}}"}md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{accent-contrast-0.1}}"}md-toolbar.md-accent>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar md-nav-ink-bar{color:"{{primary-600-1}}";background:"{{primary-600-1}}"}md-toolbar.md-warn>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar{background-color:"{{warn-color}}"}md-toolbar.md-warn>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button{color:"{{warn-100}}"}md-toolbar.md-warn>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-active,md-toolbar.md-warn>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{color:"{{warn-contrast}}"}md-toolbar.md-warn>md-nav-bar.md-THEME_NAME-theme>.md-nav-bar .md-button._md-nav-button.md-focused{background:"{{warn-contrast-0.1}}"}._md-panel-backdrop.md-THEME_NAME-theme{background-color:"{{background-900-1.0}}"}md-progress-circular.md-THEME_NAME-theme path{stroke:"{{primary-color}}"}md-progress-circular.md-THEME_NAME-theme.md-warn path{stroke:"{{warn-color}}"}md-progress-circular.md-THEME_NAME-theme.md-accent path{stroke:"{{accent-color}}"}md-progress-linear.md-THEME_NAME-theme .md-container{background-color:"{{primary-100}}"}md-progress-linear.md-THEME_NAME-theme .md-bar{background-color:"{{primary-color}}"}md-progress-linear.md-THEME_NAME-theme.md-warn .md-container{background-color:"{{warn-100}}"}md-progress-linear.md-THEME_NAME-theme.md-warn .md-bar{background-color:"{{warn-color}}"}md-progress-linear.md-THEME_NAME-theme.md-accent .md-container{background-color:"{{accent-100}}"}md-progress-linear.md-THEME_NAME-theme.md-accent .md-bar{background-color:"{{accent-color}}"}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-primary .md-bar1{background-color:"{{primary-100}}"}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-primary .md-dashed:before{background:radial-gradient("{{primary-100}}" 0,"{{primary-100}}" 16%,transparent 42%)}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-warn .md-bar1{background-color:"{{warn-100}}"}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-warn .md-dashed:before{background:radial-gradient("{{warn-100}}" 0,"{{warn-100}}" 16%,transparent 42%)}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-accent .md-bar1{background-color:"{{accent-100}}"}md-progress-linear.md-THEME_NAME-theme[md-mode=buffer].md-accent .md-dashed:before{background:radial-gradient("{{accent-100}}" 0,"{{accent-100}}" 16%,transparent 42%)}md-radio-button.md-THEME_NAME-theme .md-off{border-color:"{{foreground-2}}"}md-radio-button.md-THEME_NAME-theme .md-on{background-color:"{{accent-color-0.87}}"}md-radio-button.md-THEME_NAME-theme.md-checked .md-off{border-color:"{{accent-color-0.87}}"}md-radio-button.md-THEME_NAME-theme.md-checked .md-ink-ripple{color:"{{accent-color-0.87}}"}md-radio-button.md-THEME_NAME-theme .md-container .md-ripple{color:"{{accent-A700}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary .md-on,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary .md-on,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary .md-on,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary .md-on{background-color:"{{primary-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary.md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary .md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary .md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary.md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary .md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary .md-checked .md-off{border-color:"{{primary-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary.md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary .md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary .md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary.md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary.md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary .md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary .md-checked .md-ink-ripple{color:"{{primary-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-primary .md-container .md-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-primary .md-container .md-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-primary .md-container .md-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-primary .md-container .md-ripple{color:"{{primary-600}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn .md-on,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn .md-on,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn .md-on,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn .md-on{background-color:"{{warn-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn.md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn .md-checked .md-off,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn .md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn.md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn .md-checked .md-off,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn .md-checked .md-off{border-color:"{{warn-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn.md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn .md-checked .md-ink-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn .md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn.md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn.md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn .md-checked .md-ink-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn .md-checked .md-ink-ripple{color:"{{warn-color-0.87}}"}md-radio-button.md-THEME_NAME-theme:not([disabled]).md-warn .md-container .md-ripple,md-radio-button.md-THEME_NAME-theme:not([disabled]) .md-warn .md-container .md-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]).md-warn .md-container .md-ripple,md-radio-group.md-THEME_NAME-theme:not([disabled]) .md-warn .md-container .md-ripple{color:"{{warn-600}}"}md-radio-button.md-THEME_NAME-theme[disabled],md-radio-group.md-THEME_NAME-theme[disabled]{color:"{{foreground-3}}"}md-radio-button.md-THEME_NAME-theme[disabled] .md-container .md-off,md-radio-button.md-THEME_NAME-theme[disabled] .md-container .md-on,md-radio-group.md-THEME_NAME-theme[disabled] .md-container .md-off,md-radio-group.md-THEME_NAME-theme[disabled] .md-container .md-on{border-color:"{{foreground-3}}"}md-radio-group.md-THEME_NAME-theme .md-checked .md-ink-ripple{color:"{{accent-color-0.26}}"}md-radio-group.md-THEME_NAME-theme .md-checked:not([disabled]).md-primary .md-ink-ripple,md-radio-group.md-THEME_NAME-theme.md-primary .md-checked:not([disabled]) .md-ink-ripple{color:"{{primary-color-0.26}}"}md-radio-group.md-THEME_NAME-theme .md-checked.md-primary .md-ink-ripple{color:"{{warn-color-0.26}}"}md-radio-group.md-THEME_NAME-theme.md-focused:not(:empty) .md-checked .md-container:before{background-color:"{{accent-color-0.26}}"}md-radio-group.md-THEME_NAME-theme.md-focused:not(:empty) .md-checked.md-primary .md-container:before,md-radio-group.md-THEME_NAME-theme.md-focused:not(:empty).md-primary .md-checked .md-container:before{background-color:"{{primary-color-0.26}}"}md-radio-group.md-THEME_NAME-theme.md-focused:not(:empty) .md-checked.md-warn .md-container:before,md-radio-group.md-THEME_NAME-theme.md-focused:not(:empty).md-warn .md-checked .md-container:before{background-color:"{{warn-color-0.26}}"}md-input-container md-select.md-THEME_NAME-theme .md-select-value span:first-child:after{color:"{{warn-A700}}"}md-input-container:not(.md-input-focused):not(.md-input-invalid) md-select.md-THEME_NAME-theme .md-select-value span:first-child:after{color:"{{foreground-3}}"}md-input-container.md-input-focused:not(.md-input-has-value) md-select.md-THEME_NAME-theme .md-select-value,md-input-container.md-input-focused:not(.md-input-has-value) md-select.md-THEME_NAME-theme .md-select-value.md-select-placeholder{color:"{{primary-color}}"}md-input-container.md-input-invalid md-select.md-THEME_NAME-theme .md-select-value{color:"{{warn-A700}}"!important;border-bottom-color:"{{warn-A700}}"!important}md-input-container.md-input-invalid md-select.md-THEME_NAME-theme.md-no-underline .md-select-value{border-bottom-color:transparent!important}md-select.md-THEME_NAME-theme[disabled] .md-select-value{border-bottom-color:transparent;background-image:linear-gradient(90deg,"{{foreground-3}}" 0,"{{foreground-3}}" 33%,transparent 0);background-image:-ms-linear-gradient(left,transparent 0,"{{foreground-3}}" 100%)}md-select.md-THEME_NAME-theme .md-select-value{border-bottom-color:"{{foreground-4}}"}md-select.md-THEME_NAME-theme .md-select-value.md-select-placeholder{color:"{{foreground-3}}"}md-select.md-THEME_NAME-theme .md-select-value span:first-child:after{color:"{{warn-A700}}"}md-select.md-THEME_NAME-theme.md-no-underline .md-select-value{border-bottom-color:transparent!important}md-select.md-THEME_NAME-theme.ng-invalid.ng-touched .md-select-value{color:"{{warn-A700}}"!important;border-bottom-color:"{{warn-A700}}"!important}md-select.md-THEME_NAME-theme.ng-invalid.ng-touched.md-no-underline .md-select-value{border-bottom-color:transparent!important}md-select.md-THEME_NAME-theme:not([disabled]):focus .md-select-value{border-bottom-color:"{{primary-color}}";color:"{{ foreground-1 }}"}md-select.md-THEME_NAME-theme:not([disabled]):focus .md-select-value.md-select-placeholder{color:"{{ foreground-1 }}"}md-select.md-THEME_NAME-theme:not([disabled]):focus.md-no-underline .md-select-value{border-bottom-color:transparent!important}md-select.md-THEME_NAME-theme:not([disabled]):focus.md-accent .md-select-value{border-bottom-color:"{{accent-color}}"}md-select.md-THEME_NAME-theme:not([disabled]):focus.md-warn .md-select-value{border-bottom-color:"{{warn-color}}"}md-select.md-THEME_NAME-theme[disabled] .md-select-icon,md-select.md-THEME_NAME-theme[disabled] .md-select-value,md-select.md-THEME_NAME-theme[disabled] .md-select-value.md-select-placeholder{color:"{{foreground-3}}"}md-select.md-THEME_NAME-theme .md-select-icon{color:"{{foreground-2}}"}md-select-menu.md-THEME_NAME-theme md-content{background:"{{background-A100}}"}md-select-menu.md-THEME_NAME-theme md-content md-optgroup{color:"{{background-600-0.87}}"}md-select-menu.md-THEME_NAME-theme md-content md-option{color:"{{background-900-0.87}}"}md-select-menu.md-THEME_NAME-theme md-content md-option[disabled] .md-text{color:"{{background-400-0.87}}"}md-select-menu.md-THEME_NAME-theme md-content md-option:not([disabled]):focus,md-select-menu.md-THEME_NAME-theme md-content md-option:not([disabled]):hover{background:"{{background-200}}"}md-select-menu.md-THEME_NAME-theme md-content md-option[selected]{color:"{{primary-500}}"}md-select-menu.md-THEME_NAME-theme md-content md-option[selected]:focus{color:"{{primary-600}}"}md-select-menu.md-THEME_NAME-theme md-content md-option[selected].md-accent{color:"{{accent-color}}"}md-select-menu.md-THEME_NAME-theme md-content md-option[selected].md-accent:focus{color:"{{accent-A700}}"}.md-checkbox-enabled.md-THEME_NAME-theme .md-ripple{color:"{{primary-600}}"}.md-checkbox-enabled.md-THEME_NAME-theme[selected] .md-ripple{color:"{{background-600}}"}.md-checkbox-enabled.md-THEME_NAME-theme .md-ink-ripple{color:"{{foreground-2}}"}.md-checkbox-enabled.md-THEME_NAME-theme[selected] .md-ink-ripple{color:"{{primary-color-0.87}}"}.md-checkbox-enabled.md-THEME_NAME-theme:not(.md-checked) .md-icon{border-color:"{{foreground-2}}"}.md-checkbox-enabled.md-THEME_NAME-theme[selected] .md-icon{background-color:"{{primary-color-0.87}}"}.md-checkbox-enabled.md-THEME_NAME-theme[selected].md-focused .md-container:before{background-color:"{{primary-color-0.26}}"}.md-checkbox-enabled.md-THEME_NAME-theme[selected] .md-icon:after{border-color:"{{primary-contrast-0.87}}"}.md-checkbox-enabled.md-THEME_NAME-theme .md-indeterminate[disabled] .md-container{color:"{{foreground-3}}"}.md-checkbox-enabled.md-THEME_NAME-theme md-option .md-text{color:"{{background-900-0.87}}"}md-sidenav.md-THEME_NAME-theme,md-sidenav.md-THEME_NAME-theme md-content{background-color:"{{background-hue-1}}"}md-slider.md-THEME_NAME-theme .md-track{background-color:"{{foreground-3}}"}md-slider.md-THEME_NAME-theme .md-track-ticks{color:"{{background-contrast}}"}md-slider.md-THEME_NAME-theme .md-focus-ring{background-color:"{{accent-A200-0.2}}"}md-slider.md-THEME_NAME-theme .md-disabled-thumb{border-color:"{{background-color}}";background-color:"{{background-color}}"}md-slider.md-THEME_NAME-theme.md-min .md-thumb:after{background-color:"{{background-color}}";border-color:"{{foreground-3}}"}md-slider.md-THEME_NAME-theme.md-min .md-focus-ring{background-color:"{{foreground-3-0.38}}"}md-slider.md-THEME_NAME-theme.md-min[md-discrete] .md-thumb:after{background-color:"{{background-contrast}}";border-color:transparent}md-slider.md-THEME_NAME-theme.md-min[md-discrete] .md-sign{background-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme.md-min[md-discrete] .md-sign:after{border-top-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme.md-min[md-discrete][md-vertical] .md-sign:after{border-top-color:transparent;border-left-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme .md-track.md-track-fill{background-color:"{{accent-color}}"}md-slider.md-THEME_NAME-theme .md-thumb:after{border-color:"{{accent-color}}";background-color:"{{accent-color}}"}md-slider.md-THEME_NAME-theme .md-sign{background-color:"{{accent-color}}"}md-slider.md-THEME_NAME-theme .md-sign:after{border-top-color:"{{accent-color}}"}md-slider.md-THEME_NAME-theme[md-vertical] .md-sign:after{border-top-color:transparent;border-left-color:"{{accent-color}}"}md-slider.md-THEME_NAME-theme .md-thumb-text{color:"{{accent-contrast}}"}md-slider.md-THEME_NAME-theme.md-warn .md-focus-ring{background-color:"{{warn-200-0.38}}"}md-slider.md-THEME_NAME-theme.md-warn .md-track.md-track-fill{background-color:"{{warn-color}}"}md-slider.md-THEME_NAME-theme.md-warn .md-thumb:after{border-color:"{{warn-color}}";background-color:"{{warn-color}}"}md-slider.md-THEME_NAME-theme.md-warn .md-sign{background-color:"{{warn-color}}"}md-slider.md-THEME_NAME-theme.md-warn .md-sign:after{border-top-color:"{{warn-color}}"}md-slider.md-THEME_NAME-theme.md-warn[md-vertical] .md-sign:after{border-top-color:transparent;border-left-color:"{{warn-color}}"}md-slider.md-THEME_NAME-theme.md-warn .md-thumb-text{color:"{{warn-contrast}}"}md-slider.md-THEME_NAME-theme.md-primary .md-focus-ring{background-color:"{{primary-200-0.38}}"}md-slider.md-THEME_NAME-theme.md-primary .md-track.md-track-fill{background-color:"{{primary-color}}"}md-slider.md-THEME_NAME-theme.md-primary .md-thumb:after{border-color:"{{primary-color}}";background-color:"{{primary-color}}"}md-slider.md-THEME_NAME-theme.md-primary .md-sign{background-color:"{{primary-color}}"}md-slider.md-THEME_NAME-theme.md-primary .md-sign:after{border-top-color:"{{primary-color}}"}md-slider.md-THEME_NAME-theme.md-primary[md-vertical] .md-sign:after{border-top-color:transparent;border-left-color:"{{primary-color}}"}md-slider.md-THEME_NAME-theme.md-primary .md-thumb-text{color:"{{primary-contrast}}"}md-slider.md-THEME_NAME-theme[disabled] .md-thumb:after{border-color:transparent}md-slider.md-THEME_NAME-theme[disabled]:not(.md-min) .md-thumb:after,md-slider.md-THEME_NAME-theme[disabled][md-discrete] .md-thumb:after{background-color:"{{foreground-3}}";border-color:transparent}md-slider.md-THEME_NAME-theme[disabled][readonly] .md-sign{background-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme[disabled][readonly] .md-sign:after{border-top-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme[disabled][readonly][md-vertical] .md-sign:after{border-top-color:transparent;border-left-color:"{{background-400}}"}md-slider.md-THEME_NAME-theme[disabled][readonly] .md-disabled-thumb{border-color:transparent;background-color:transparent}md-slider-container[disabled]>:first-child:not(md-slider),md-slider-container[disabled]>:last-child:not(md-slider){color:"{{foreground-3}}"}.md-subheader.md-THEME_NAME-theme{color:"{{ foreground-2-0.23 }}";background-color:"{{background-default}}"}.md-subheader.md-THEME_NAME-theme.md-primary{color:"{{primary-color}}"}.md-subheader.md-THEME_NAME-theme.md-accent{color:"{{accent-color}}"}.md-subheader.md-THEME_NAME-theme.md-warn{color:"{{warn-color}}"}md-switch.md-THEME_NAME-theme .md-ink-ripple{color:"{{background-500}}"}md-switch.md-THEME_NAME-theme .md-thumb{background-color:"{{background-50}}"}md-switch.md-THEME_NAME-theme .md-bar{background-color:"{{background-500}}"}md-switch.md-THEME_NAME-theme.md-checked .md-ink-ripple{color:"{{accent-color}}"}md-switch.md-THEME_NAME-theme.md-checked .md-thumb{background-color:"{{accent-color}}"}md-switch.md-THEME_NAME-theme.md-checked .md-bar{background-color:"{{accent-color-0.5}}"}md-switch.md-THEME_NAME-theme.md-checked.md-focused .md-thumb:before{background-color:"{{accent-color-0.26}}"}md-switch.md-THEME_NAME-theme.md-checked.md-primary .md-ink-ripple{color:"{{primary-color}}"}md-switch.md-THEME_NAME-theme.md-checked.md-primary .md-thumb{background-color:"{{primary-color}}"}md-switch.md-THEME_NAME-theme.md-checked.md-primary .md-bar{background-color:"{{primary-color-0.5}}"}md-switch.md-THEME_NAME-theme.md-checked.md-primary.md-focused .md-thumb:before{background-color:"{{primary-color-0.26}}"}md-switch.md-THEME_NAME-theme.md-checked.md-warn .md-ink-ripple{color:"{{warn-color}}"}md-switch.md-THEME_NAME-theme.md-checked.md-warn .md-thumb{background-color:"{{warn-color}}"}md-switch.md-THEME_NAME-theme.md-checked.md-warn .md-bar{background-color:"{{warn-color-0.5}}"}md-switch.md-THEME_NAME-theme.md-checked.md-warn.md-focused .md-thumb:before{background-color:"{{warn-color-0.26}}"}md-switch.md-THEME_NAME-theme[disabled] .md-thumb{background-color:"{{background-400}}"}md-switch.md-THEME_NAME-theme[disabled] .md-bar{background-color:"{{foreground-4}}"}md-tabs.md-THEME_NAME-theme md-tabs-wrapper{background-color:transparent;border-color:"{{foreground-4}}"}md-tabs.md-THEME_NAME-theme .md-paginator md-icon{color:"{{primary-color}}"}md-tabs.md-THEME_NAME-theme md-ink-bar{color:"{{accent-color}}";background:"{{accent-color}}"}md-tabs.md-THEME_NAME-theme .md-tab{color:"{{foreground-2}}"}md-tabs.md-THEME_NAME-theme .md-tab[disabled],md-tabs.md-THEME_NAME-theme .md-tab[disabled] md-icon{color:"{{foreground-3}}"}md-tabs.md-THEME_NAME-theme .md-tab.md-active,md-tabs.md-THEME_NAME-theme .md-tab.md-active md-icon,md-tabs.md-THEME_NAME-theme .md-tab.md-focused,md-tabs.md-THEME_NAME-theme .md-tab.md-focused md-icon{color:"{{primary-color}}"}md-tabs.md-THEME_NAME-theme .md-tab.md-focused{background:"{{primary-color-0.1}}"}md-tabs.md-THEME_NAME-theme .md-tab .md-ripple-container{color:"{{accent-A100}}"}md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper{background-color:"{{accent-color}}"}md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{accent-A100}}"}md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{accent-contrast}}"}md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{accent-contrast-0.1}}"}md-tabs.md-THEME_NAME-theme.md-accent>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-ink-bar{color:"{{primary-600-1}}";background:"{{primary-600-1}}"}md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper{background-color:"{{primary-color}}"}md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{primary-100}}"}md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{primary-contrast}}"}md-tabs.md-THEME_NAME-theme.md-primary>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{primary-contrast-0.1}}"}md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper{background-color:"{{warn-color}}"}md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{warn-100}}"}md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{warn-contrast}}"}md-tabs.md-THEME_NAME-theme.md-warn>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{warn-contrast-0.1}}"}md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper{background-color:"{{primary-color}}"}md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{primary-100}}"}md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{primary-contrast}}"}md-toolbar>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{primary-contrast-0.1}}"}md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper{background-color:"{{accent-color}}"}md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{accent-A100}}"}md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{accent-contrast}}"}md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{accent-contrast-0.1}}"}md-toolbar.md-accent>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-ink-bar{color:"{{primary-600-1}}";background:"{{primary-600-1}}"}md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper{background-color:"{{warn-color}}"}md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]),md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]) md-icon{color:"{{warn-100}}"}md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active,md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-active md-icon,md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused,md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused md-icon{color:"{{warn-contrast}}"}md-toolbar.md-warn>md-tabs.md-THEME_NAME-theme>md-tabs-wrapper>md-tabs-canvas>md-pagination-wrapper>md-tab-item:not([disabled]).md-focused{background:"{{warn-contrast-0.1}}"}md-toast.md-THEME_NAME-theme .md-toast-content{background-color:#323232;color:"{{background-50}}"}md-toast.md-THEME_NAME-theme .md-toast-content .md-button{color:"{{background-50}}"}md-toast.md-THEME_NAME-theme .md-toast-content .md-button.md-highlight{color:"{{accent-color}}"}md-toast.md-THEME_NAME-theme .md-toast-content .md-button.md-highlight.md-primary{color:"{{primary-color}}"}md-toast.md-THEME_NAME-theme .md-toast-content .md-button.md-highlight.md-warn{color:"{{warn-color}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar){background-color:"{{primary-color}}";color:"{{primary-contrast}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar) md-icon{color:"{{primary-contrast}}";fill:"{{primary-contrast}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar) .md-button[disabled] md-icon{color:"{{primary-contrast-0.26}}";fill:"{{primary-contrast-0.26}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar).md-accent{background-color:"{{accent-color}}";color:"{{accent-contrast}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar).md-accent .md-ink-ripple{color:"{{accent-contrast}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar).md-accent md-icon{color:"{{accent-contrast}}";fill:"{{accent-contrast}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar).md-accent .md-button[disabled] md-icon{color:"{{accent-contrast-0.26}}";fill:"{{accent-contrast-0.26}}"}md-toolbar.md-THEME_NAME-theme:not(.md-menu-toolbar).md-warn{background-color:"{{warn-color}}";color:"{{warn-contrast}}"}.md-panel.md-tooltip.md-THEME_NAME-theme{color:"{{background-700-contrast}}";background-color:"{{background-700}}"}body.md-THEME_NAME-theme,html.md-THEME_NAME-theme{color:"{{foreground-1}}";background-color:"{{background-color}}"}')}()}(window,window.angular);window.ngMaterial={version:{full:"1.1.5-master-5e907b3"}};!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(n.L={})}(this,function(n){"use strict";function s(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}function c(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)})}function o(n){return n._leaflet_id=n._leaflet_id||++nh,n._leaflet_id}function uf(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)}}function hr(n,t,i){var f=t[1],r=t[0],u=f-r;return n===f&&i?n:((n-r)%u+u)%u+r}function d(){return!1}function ht(n,t){var i=Math.pow(10,t||5);return Math.round(n*i)/i}function ff(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")}function yi(n){return ff(n).split(/\s+/)}function a(n,t){n.hasOwnProperty("options")||(n.options=n.options?au(n.options):{});for(var i in t)n.options[i]=t[i];return n.options}function ts(n,t,i){var u=[],r;for(r in n)u.push(encodeURIComponent(i?r.toUpperCase():r)+"="+encodeURIComponent(n[r]));return(t&&-1!==t.indexOf("?")?"&":"?")+u.join("&")}function is(n,t){return n.replace(yc,function(n,i){var r=t[i];if(void 0===r)throw new Error("No value provided for variable "+n);return"function"==typeof r&&(r=r(t)),r})}function rs(n,t){for(var i=0;i<n.length;i++)if(n[i]===t)return i;return-1}function ef(n){return window["webkit"+n]||window["moz"+n]||window["ms"+n]}function us(n){var t=+new Date,i=Math.max(0,16-(t-ih));return ih=t+i,window.setTimeout(n,i)}function g(n,t,i){if(!i||ue!==us)return ue.call(window,c(n,t));n.call(t)}function ct(n){n&&rh.call(window,n)}function pt(){}function tc(n){if(L&&L.Mixin){n=at(n)?n:[n];for(var t=0;t<n.length;t++)n[t]===L.Mixin.Events&&console.warn("Deprecated include of L.Mixin.Events: this property will be removed in future releases, please inherit from L.Evented instead.",(new Error).stack)}}function t(n,t,i){this.x=i?Math.round(n):n;this.y=i?Math.round(t):t}function r(n,i,r){return n instanceof t?n:at(n)?new t(n[0],n[1]):void 0===n||null===n?n:"object"==typeof n&&"x"in n&&"y"in n?new t(n.x,n.y):new t(n,i,r)}function v(n,t){if(n)for(var r=t?[n,t]:n,i=0,u=r.length;i<u;i++)this.extend(r[i])}function ii(n,t){return!n||n instanceof v?n:new v(n,t)}function nt(n,t){if(n)for(var r=t?[n,t]:n,i=0,u=r.length;i<u;i++)this.extend(r[i])}function k(n,t){return n instanceof nt?n:new nt(n,t)}function h(n,t,i){if(isNaN(n)||isNaN(t))throw new Error("Invalid LatLng object: ("+n+", "+t+")");this.lat=+n;this.lng=+t;void 0!==i&&(this.alt=+i)}function y(n,t,i){return n instanceof h?n:at(n)&&"object"!=typeof n[0]?3===n.length?new h(n[0],n[1],n[2]):2===n.length?new h(n[0],n[1]):null:void 0===n||null===n?n:"object"==typeof n&&"lat"in n?new h(n.lat,"lng"in n?n.lng:n.lon,n.alt):void 0===t?null:new h(n,t,i)}function of(n,t,i,r){if(at(n))return this._a=n[0],this._b=n[1],this._c=n[2],void(this._d=n[3]);this._a=n;this._b=t;this._c=i;this._d=r}function cr(n,t,i,r){return new of(n,t,i,r)}function fs(n){return document.createElementNS("http://www.w3.org/2000/svg",n)}function es(n,t){for(var i,o,s,u,f="",r=0,e=n.length;r<e;r++){for(i=0,o=(s=n[r]).length;i<o;i++)u=s[i],f+=(i?"L":"M")+u.x+" "+u.y;f+=t?pu?"z":"x":""}return f||"M0 0"}function wt(n){return navigator.userAgent.toLowerCase().indexOf(n)>=0}function ic(n,t,i,r){return"touchstart"===t?uc(n,i,r):"touchmove"===t?oc(n,i,r):"touchend"===t&&sc(n,i,r),this}function rc(n,t,i){var r=n["_leaflet_"+t+i];return"touchstart"===t?n.removeEventListener(pe,r,!1):"touchmove"===t?n.removeEventListener(we,r,!1):"touchend"===t&&(n.removeEventListener(be,r,!1),n.removeEventListener(ke,r,!1)),this}function uc(n,t,i){var r=c(function(n){if("mouse"!==n.pointerType&&n.pointerType!==n.MSPOINTER_TYPE_MOUSE&&n.pointerType!==n.MSPOINTER_TYPE_MOUSE){if(!(nl.indexOf(n.target.tagName)<0))return;rt(n)}sf(n,t)});n["_leaflet_touchstart"+i]=r;n.addEventListener(pe,r,!1);lh||(document.documentElement.addEventListener(pe,fc,!0),document.documentElement.addEventListener(we,ec,!0),document.documentElement.addEventListener(be,os,!0),document.documentElement.addEventListener(ke,os,!0),lh=!0)}function fc(n){nr[n.pointerId]=n;de++}function ec(n){nr[n.pointerId]&&(nr[n.pointerId]=n)}function os(n){delete nr[n.pointerId];de--}function sf(n,t){n.touches=[];for(var i in nr)n.touches.push(nr[i]);n.changedTouches=[n];t(n)}function oc(n,t,i){var r=function(n){(n.pointerType!==n.MSPOINTER_TYPE_MOUSE&&"mouse"!==n.pointerType||0!==n.buttons)&&sf(n,t)};n["_leaflet_touchmove"+i]=r;n.addEventListener(we,r,!1)}function sc(n,t,i){var r=function(n){sf(n,t)};n["_leaflet_touchend"+i]=r;n.addEventListener(be,r,!1);n.addEventListener(ke,r,!1)}function ss(n,t,i){function f(n){var i,t,f;if(vt){if(!wr||"mouse"===n.pointerType)return;i=de}else i=n.touches.length;i>1||(t=Date.now(),f=t-(u||t),r=n.touches?n.touches[0]:n,o=f>0&&f<=s,u=t)}function e(n){if(o&&!r.cancelBubble){if(vt){if(!wr||"mouse"===n.pointerType)return;var i,f,e={};for(f in r)i=r[f],e[f]=i&&i.bind?i.bind(r):i;r=e}r.type="dblclick";t(r);u=null}}var u,r,o=!1,s=250;return n[tr+bu+i]=f,n[tr+ku+i]=e,n[tr+"dblclick"+i]=t,n.addEventListener(bu,f,!1),n.addEventListener(ku,e,!1),n.addEventListener("dblclick",t,!1),this}function hs(n,t){var i=n[tr+bu+t],r=n[tr+ku+t],u=n[tr+"dblclick"+t];return n.removeEventListener(bu,i,!1),n.removeEventListener(ku,r,!1),wr||n.removeEventListener("dblclick",u,!1),this}function i(n,t,i,r){var f,u,e;if("object"==typeof t)for(f in t)ru(n,f,t[f],i);else for(u=0,e=(t=yi(t)).length;u<e;u++)ru(n,t[u],i,r);return this}function w(n,t,i,r){var f,u,o,e;if("object"==typeof t)for(f in t)hf(n,f,t[f],i);else if(t)for(u=0,o=(t=yi(t)).length;u<o;u++)hf(n,t[u],i,r);else{for(e in n[ot])hf(n,e,n[ot][e]);delete n[ot]}return this}function ru(n,t,i,r){var f=t+o(i)+(r?"_"+o(r):""),u,e;if(n[ot]&&n[ot][f])return this;u=function(t){return i.call(r||n,t||window.event)};e=u;vt&&0===t.indexOf("touch")?ic(n,t,u,f):!et||"dblclick"!==t||!ss||vt&&yu?"addEventListener"in n?"mousewheel"===t?n.addEventListener("onwheel"in n?"wheel":"mousewheel",u,!1):"mouseenter"===t||"mouseleave"===t?(u=function(t){t=t||window.event;uu(n,t)&&e(t)},n.addEventListener("mouseenter"===t?"mouseover":"mouseout",u,!1)):("click"===t&&br&&(u=function(n){hc(n,e)}),n.addEventListener(t,u,!1)):"attachEvent"in n&&n.attachEvent("on"+t,u):ss(n,u,f);n[ot]=n[ot]||{};n[ot][f]=u}function hf(n,t,i,r){var u=t+o(i)+(r?"_"+o(r):""),f=n[ot]&&n[ot][u];if(!f)return this;vt&&0===t.indexOf("touch")?rc(n,t,u):et&&"dblclick"===t&&hs?hs(n,u):"removeEventListener"in n?"mousewheel"===t?n.removeEventListener("onwheel"in n?"wheel":"mousewheel",f,!1):n.removeEventListener("mouseenter"===t?"mouseover":"mouseleave"===t?"mouseout":t,f,!1):"detachEvent"in n&&n.detachEvent("on"+t,f);n[ot][u]=null}function oi(n){return n.stopPropagation?n.stopPropagation():n.originalEvent?n.originalEvent._stopped=!0:n.cancelBubble=!0,af(n),this}function cf(n){return ru(n,"mousewheel",oi),this}function lr(n){return i(n,"mousedown touchstart dblclick",oi),ru(n,"click",lf),this}function rt(n){return n.preventDefault?n.preventDefault():n.returnValue=!1,this}function lt(n){return rt(n),oi(n),this}function cs(n,i){if(!i)return new t(n.clientX,n.clientY);var r=i.getBoundingClientRect();return new t(n.clientX-r.left-i.clientLeft,n.clientY-r.top-i.clientTop)}function ls(n){return wr?n.wheelDeltaY/2:n.deltaY&&0===n.deltaMode?-n.deltaY/tl:n.deltaY&&1===n.deltaMode?20*-n.deltaY:n.deltaY&&2===n.deltaMode?60*-n.deltaY:n.deltaX||n.deltaZ?0:n.wheelDelta?(n.wheelDeltaY||n.wheelDelta)/2:n.detail&&Math.abs(n.detail)<32765?20*-n.detail:n.detail?n.detail/-32765*60:0}function lf(n){ge[n.type]=!0}function af(n){var t=ge[n.type];return ge[n.type]=!1,t}function uu(n,t){var i=t.relatedTarget;if(!i)return!0;try{for(;i&&i!==n;)i=i.parentNode}catch(n){return!1}return i!==n}function hc(n,t){var r=n.timeStamp||n.originalEvent&&n.originalEvent.timeStamp,i=ee&&r-ee;i&&i>100&&i<500||n.target._simulatedClick&&!n._simulated?lt(n):(ee=r,t(n))}function as(n){return"string"==typeof n?document.getElementById(n):n}function ar(n,t){var i=n.style[t]||n.currentStyle&&n.currentStyle[t],r;return(!i||"auto"===i)&&document.defaultView&&(r=document.defaultView.getComputedStyle(n,null),i=r?r[t]:null),"auto"===i?null:i}function f(n,t,i){var r=document.createElement(n);return r.className=t||"",i&&i.appendChild(r),r}function l(n){var t=n.parentNode;t&&t.removeChild(n)}function vf(n){for(;n.firstChild;)n.removeChild(n.firstChild)}function pi(n){var t=n.parentNode;t.lastChild!==n&&t.appendChild(n)}function wi(n){var t=n.parentNode;t.firstChild!==n&&t.insertBefore(n,t.firstChild)}function yf(n,t){if(void 0!==n.classList)return n.classList.contains(t);var i=fu(n);return i.length>0&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(i)}function e(n,t){var r;if(void 0!==n.classList)for(var u=yi(t),i=0,f=u.length;i<f;i++)n.classList.add(u[i]);else yf(n,t)||(r=fu(n),pf(n,(r?r+" ":"")+t))}function p(n,t){void 0!==n.classList?n.classList.remove(t):pf(n,ff((" "+fu(n)+" ").replace(" "+t+" "," ")))}function pf(n,t){void 0===n.className.baseVal?n.className=t:n.className.baseVal=t}function fu(n){return void 0===n.className.baseVal?n.className:n.className.baseVal}function ut(n,t){"opacity"in n.style?n.style.opacity=t:"filter"in n.style&&cc(n,t)}function cc(n,t){var i=!1,r="DXImageTransform.Microsoft.Alpha";try{i=n.filters.item(r)}catch(n){if(1===t)return}t=Math.round(100*t);i?(i.Enabled=100!==t,i.Opacity=t):n.style.filter+=" progid:"+r+"(opacity="+t+")"}function eu(n){for(var i=document.documentElement.style,t=0;t<n.length;t++)if(n[t]in i)return n[t];return!1}function si(n,i,r){var u=i||new t(0,0);n.style[no]=(ve?"translate("+u.x+"px,"+u.y+"px)":"translate3d("+u.x+"px,"+u.y+"px,0)")+(r?" scale("+r+")":"")}function b(n,t){n._leaflet_pos=t;ft?si(n,t):(n.style.left=t.x+"px",n.style.top=t.y+"px")}function hi(n){return n._leaflet_pos||new t(0,0)}function wf(){i(window,"dragstart",rt)}function bf(){w(window,"dragstart",rt)}function kf(n){for(;-1===n.tabIndex;)n=n.parentNode;n.style&&(ou(),du=n,to=n.style.outline,n.style.outline="none",i(window,"keydown",ou))}function ou(){du&&(du.style.outline=to,du=void 0,to=void 0,w(window,"keydown",ou))}function vs(n,t){if(!t||!n.length)return n.slice();var i=t*t;return n=ac(n,i),n=lc(n,i)}function ys(n,t,i){return Math.sqrt(vr(n,t,i,!0))}function lc(n,t){var r=n.length,u=new(typeof Uint8Array!=void 0+""?Uint8Array:Array)(r),i,f;for(u[0]=u[r-1]=1,df(n,u,t,0,r-1),f=[],i=0;i<r;i++)u[i]&&f.push(n[i]);return f}function df(n,t,i,r,u){for(var e,s,o=0,f=r+1;f<=u-1;f++)(s=vr(n[f],n[r],n[u],!0))>o&&(e=f,o=s);o>i&&(t[e]=1,df(n,t,i,r,e),df(n,t,i,e,u))}function ac(n,t){for(var r=[n[0]],i=1,u=0,f=n.length;i<f;i++)vc(n[i],n[u])>t&&(r.push(n[i]),u=i);return u<f-1&&r.push(n[f-1]),r}function ps(n,t,i,r,u){var h,o,s,f=r?yh:ci(n,i),e=ci(t,i);for(yh=e;;){if(!(f|e))return[n,t];if(f&e)return!1;s=ci(o=su(n,t,h=f||e,i,u),i);h===f?(n=o,f=s):(t=o,e=s)}}function su(n,i,r,u,f){var e,o,s=i.x-n.x,h=i.y-n.y,c=u.min,l=u.max;return 8&r?(e=n.x+s*(l.y-n.y)/h,o=l.y):4&r?(e=n.x+s*(c.y-n.y)/h,o=c.y):2&r?(e=l.x,o=n.y+h*(l.x-n.x)/s):1&r&&(e=c.x,o=n.y+h*(c.x-n.x)/s),new t(e,o,f)}function ci(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}function vc(n,t){var i=t.x-n.x,r=t.y-n.y;return i*i+r*r}function vr(n,i,r,u){var h,o=i.x,s=i.y,f=r.x-o,e=r.y-s,c=f*f+e*e;return c>0&&((h=((n.x-o)*f+(n.y-s)*e)/c)>1?(o=r.x,s=r.y):h>0&&(o+=f*h,s+=e*h)),f=n.x-o,e=n.y-s,u?f*f+e*e:new t(o,s)}function bt(n){return!at(n[0])||"object"!=typeof n[0][0]&&void 0!==n[0][0]}function ws(n){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),bt(n)}function bs(n,t,i){for(var e,l,h,o,s,u,f,a=[1,4,2,8],r=0,c=n.length;r<c;r++)n[r]._code=ci(n[r],t);for(h=0;h<4;h++){for(u=a[h],e=[],r=0,l=(c=n.length)-1;r<c;l=r++)o=n[r],s=n[l],o._code&u?s._code&u||((f=su(s,o,u,t,i))._code=ci(f,t),e.push(f)):(s._code&u&&((f=su(s,o,u,t,i))._code=ci(f,t),e.push(f)),e.push(o));n=e}return n}function gf(n,t){var u,e,i,o,r="Feature"===n.type?n.geometry:n,f=r?r.coordinates:null,s=[],h=t&&t.pointToLayer,c=t&&t.coordsToLatLng||ne,l;if(!f&&!r)return null;switch(r.type){case"Point":return u=c(f),h?h(n,u):new tu(u);case"MultiPoint":for(i=0,o=f.length;i<o;i++)u=c(f[i]),s.push(h?h(n,u):new tu(u));return new ai(s);case"LineString":case"MultiLineString":return e=hu(f,"LineString"===r.type?0:1,c),new gt(e,t);case"Polygon":case"MultiPolygon":return e=hu(f,"Polygon"===r.type?1:2,c),new fr(e,t);case"GeometryCollection":for(i=0,o=r.geometries.length;i<o;i++)l=gf({geometry:r.geometries[i],type:"Feature",properties:n.properties},t),l&&s.push(l);return new ai(s);default:throw new Error("Invalid GeoJSON object.");}}function ne(n){return new h(n[1],n[0],n[2])}function hu(n,t,i){for(var u,f=[],r=0,e=n.length;r<e;r++)u=t?hu(n[r],t-1,i):(i||ne)(n[r]),f.push(u);return f}function te(n,t){return t="number"==typeof t?t:6,void 0!==n.alt?[ht(n.lng,t),ht(n.lat,t),ht(n.alt,t)]:[ht(n.lng,t),ht(n.lat,t)]}function cu(n,t,i,r){for(var u=[],f=0,e=n.length;f<e;f++)u.push(t?cu(n[f],t-1,i,r):te(n[f],r));return!t&&i&&u.push(u[0]),u}function bi(n,t){return n.feature?s({},n.feature,{geometry:t}):lu(t)}function lu(n){return"Feature"===n.type||"FeatureCollection"===n.type?n:{type:"Feature",properties:{},geometry:n}}function ks(n,t){return new ni(n,t)}function ds(n,t){return new or(n,t)}function ie(n){return ch?new ao(n):null}function re(n){return pu||wu?new sr(n):null}var gs=Object.freeze,tt,ki,ir,io,gu,ro,nf,it,vi,co,vo,yo,po,wo,bo,ko,go,ns,nc;Object.freeze=function(n){return n};var au=Object.create||function(){function n(){}return function(t){return n.prototype=t,new n}}(),nh=0,yc=/\{ *([\w_\-]+) *\}/g,at=Array.isArray||function(n){return"[object Array]"===Object.prototype.toString.call(n)},th="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=",ih=0,ue=window.requestAnimationFrame||ef("RequestAnimationFrame")||us,rh=window.cancelAnimationFrame||ef("CancelAnimationFrame")||ef("CancelRequestAnimationFrame")||function(n){window.clearTimeout(n)},pc=(Object.freeze||Object)({freeze:gs,extend:s,create:au,bind:c,lastId:nh,stamp:o,throttle:uf,wrapNum:hr,falseFn:d,formatNum:ht,trim:ff,splitWords:yi,setOptions:a,getParamString:ts,template:is,isArray:at,indexOf:rs,emptyImageUrl:th,requestFn:ue,cancelFn:rh,requestAnimFrame:g,cancelAnimFrame:ct});pt.extend=function(n){var i=function(){this.initialize&&this.initialize.apply(this,arguments);this.callInitHooks()},u=i.__super__=this.prototype,t=au(u),r;t.constructor=i;i.prototype=t;for(r in this)this.hasOwnProperty(r)&&"prototype"!==r&&"__super__"!==r&&(i[r]=this[r]);return n.statics&&(s(i,n.statics),delete n.statics),n.includes&&(tc(n.includes),s.apply(null,[t].concat(n.includes)),delete n.includes),t.options&&(n.options=s(au(t.options),n.options)),s(t,n),t._initHooks=[],t.callInitHooks=function(){if(!this._initHooksCalled){u.callInitHooks&&u.callInitHooks.call(this);this._initHooksCalled=!0;for(var n=0,i=t._initHooks.length;n<i;n++)t._initHooks[n].call(this)}},i};pt.include=function(n){return s(this.prototype,n),this};pt.mergeOptions=function(n){return s(this.prototype.options,n),this};pt.addInitHook=function(n){var t=Array.prototype.slice.call(arguments,1),i="function"==typeof n?n:function(){this[n].apply(this,t)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(i),this};tt={on:function(n,t,i){var u,r,f;if("object"==typeof n)for(u in n)this._on(u,n[u],t);else for(r=0,f=(n=yi(n)).length;r<f;r++)this._on(n[r],t,i);return this},off:function(n,t,i){var u,r,f;if(n)if("object"==typeof n)for(u in n)this._off(u,n[u],t);else for(r=0,f=(n=yi(n)).length;r<f;r++)this._off(n[r],t,i);else delete this._events;return this},_on:function(n,t,i){var r;this._events=this._events||{};r=this._events[n];r||(r=[],this._events[n]=r);i===this&&(i=void 0);for(var e={fn:t,ctx:i},u=r,f=0,o=u.length;f<o;f++)if(u[f].fn===t&&u[f].ctx===i)return;u.push(e)},_off:function(n,t,i){var r,u,f,e;if(this._events&&(r=this._events[n]))if(t){if(i===this&&(i=void 0),r)for(u=0,f=r.length;u<f;u++)if(e=r[u],e.ctx===i&&e.fn===t)return e.fn=d,this._firingCount&&(this._events[n]=r=r.slice()),void r.splice(u,1)}else{for(u=0,f=r.length;u<f;u++)r[u].fn=d;delete this._events[n]}},fire:function(n,t,i){var f,r,u,o,e;if(!this.listens(n,i))return this;if(f=s({},t,{type:n,target:this}),this._events&&(r=this._events[n],r)){for(this._firingCount=this._firingCount+1||1,u=0,o=r.length;u<o;u++)e=r[u],e.fn.call(e.ctx||this,f);this._firingCount--}return i&&this._propagateEvent(f),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 r,u;if("object"==typeof n){for(r in n)this.once(r,n[r],t);return this}u=c(function(){this.off(n,t,i).off(n,u,i)},this);return this.on(n,t,i).on(n,u,i)},addEventParent:function(n){return this._eventParents=this._eventParents||{},this._eventParents[o(n)]=n,this},removeEventParent:function(n){return this._eventParents&&delete this._eventParents[o(n)],this},_propagateEvent:function(n){for(var t in this._eventParents)this._eventParents[t].fire(n.type,s({layer:n.target},n),!0)}};tt.addEventListener=tt.on;tt.removeEventListener=tt.clearAllEventListeners=tt.off;tt.addOneTimeEventListener=tt.once;tt.fireEvent=tt.fire;tt.hasEventListeners=tt.listens;ki=pt.extend(tt);t.prototype={clone:function(){return new t(this.x,this.y)},add:function(n){return this.clone()._add(r(n))},_add:function(n){return this.x+=n.x,this.y+=n.y,this},subtract:function(n){return this.clone()._subtract(r(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 t(this.x*n.x,this.y*n.y)},unscaleBy:function(n){return new t(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){var t=(n=r(n)).x-this.x,i=n.y-this.y;return Math.sqrt(t*t+i*i)},equals:function(n){return(n=r(n)).x===this.x&&n.y===this.y},contains:function(n){return n=r(n),Math.abs(n.x)<=Math.abs(this.x)&&Math.abs(n.y)<=Math.abs(this.y)},toString:function(){return"Point("+ht(this.x)+", "+ht(this.y)+")"}};v.prototype={extend:function(n){return n=r(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 t((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,n)},getBottomLeft:function(){return new t(this.min.x,this.max.y)},getTopRight:function(){return new t(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(n){var i,u;return(n="number"==typeof n[0]||n instanceof t?r(n):ii(n))instanceof v?(i=n.min,u=n.max):i=u=n,i.x>=this.min.x&&u.x<=this.max.x&&i.y>=this.min.y&&u.y<=this.max.y},intersects:function(n){n=ii(n);var t=this.min,i=this.max,r=n.min,u=n.max,f=u.x>=t.x&&r.x<=i.x,e=u.y>=t.y&&r.y<=i.y;return f&&e},overlaps:function(n){n=ii(n);var t=this.min,i=this.max,r=n.min,u=n.max,f=u.x>t.x&&r.x<i.x,e=u.y>t.y&&r.y<i.y;return f&&e},isValid:function(){return!(!this.min||!this.max)}};nt.prototype={extend:function(n){var t,i,r=this._southWest,u=this._northEast;if(n instanceof h)t=n,i=n;else{if(!(n instanceof nt))return n?this.extend(y(n)||k(n)):this;if(t=n._southWest,i=n._northEast,!t||!i)return this}return r||u?(r.lat=Math.min(t.lat,r.lat),r.lng=Math.min(t.lng,r.lng),u.lat=Math.max(i.lat,u.lat),u.lng=Math.max(i.lng,u.lng)):(this._southWest=new h(t.lat,t.lng),this._northEast=new h(i.lat,i.lng)),this},pad:function(n){var t=this._southWest,i=this._northEast,r=Math.abs(t.lat-i.lat)*n,u=Math.abs(t.lng-i.lng)*n;return new nt(new h(t.lat-r,t.lng-u),new h(i.lat+r,i.lng+u))},getCenter:function(){return new h((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 h(this.getNorth(),this.getWest())},getSouthEast:function(){return new h(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="number"==typeof n[0]||n instanceof h||"lat"in n?y(n):k(n);var t,i,r=this._southWest,u=this._northEast;return n instanceof nt?(t=n.getSouthWest(),i=n.getNorthEast()):t=i=n,t.lat>=r.lat&&i.lat<=u.lat&&t.lng>=r.lng&&i.lng<=u.lng},intersects:function(n){n=k(n);var t=this._southWest,i=this._northEast,r=n.getSouthWest(),u=n.getNorthEast(),f=u.lat>=t.lat&&r.lat<=i.lat,e=u.lng>=t.lng&&r.lng<=i.lng;return f&&e},overlaps:function(n){n=k(n);var t=this._southWest,i=this._northEast,r=n.getSouthWest(),u=n.getNorthEast(),f=u.lat>t.lat&&r.lat<i.lat,e=u.lng>t.lng&&r.lng<i.lng;return f&&e},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(n,t){return!!n&&(n=k(n),this._southWest.equals(n.getSouthWest(),t)&&this._northEast.equals(n.getNorthEast(),t))},isValid:function(){return!(!this._southWest||!this._northEast)}};h.prototype={equals:function(n,t){return!!n&&(n=y(n),Math.max(Math.abs(this.lat-n.lat),Math.abs(this.lng-n.lng))<=(void 0===t?1e-9:t))},toString:function(n){return"LatLng("+ht(this.lat,n)+", "+ht(this.lng,n)+")"},distanceTo:function(n){return ri.distance(this,y(n))},wrap:function(){return ri.wrapLatLng(this)},toBounds:function(n){var t=180*n/40075017,i=t/Math.cos(Math.PI/180*this.lat);return k([this.lat-t,this.lng-i],[this.lat+t,this.lng+i])},clone:function(){return new h(this.lat,this.lng,this.alt)}};var kt={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);return new v(this.transformation.transform(t.min,i),this.transformation.transform(t.max,i))},infinite:!1,wrapLatLng:function(n){var t=this.wrapLng?hr(n.lng,this.wrapLng,!0):n.lng;return new h(this.wrapLat?hr(n.lat,this.wrapLat,!0):n.lat,t,n.alt)},wrapLatLngBounds:function(n){var t=n.getCenter(),e=this.wrapLatLng(t),i=t.lat-e.lat,r=t.lng-e.lng,u,f;return 0===i&&0===r?n:(u=n.getSouthWest(),f=n.getNorthEast(),new nt(new h(u.lat-i,u.lng-r),new h(f.lat-i,f.lng-r)))}},ri=s({},kt,{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))}}),fe={R:6378137,MAX_LATITUDE:85.0511287798,project:function(n){var i=Math.PI/180,r=this.MAX_LATITUDE,f=Math.max(Math.min(r,n.lat),-r),u=Math.sin(f*i);return new t(this.R*n.lng*i,this.R*Math.log((1+u)/(1-u))/2)},unproject:function(n){var t=180/Math.PI;return new h((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 new v([-n,-n],[n,n])}()};of.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,i){return i=i||1,new t((n.x/i-this._b)/this._a,(n.y/i-this._d)/this._c)}};var ee,yr,pr,oe,se=s({},ri,{code:"EPSG:3857",projection:fe,transformation:function(){var n=.5/(Math.PI*fe.R);return cr(n,.5,-n,.5)}()}),wc=s({},se,{code:"EPSG:900913"}),he=document.documentElement.style,vu="ActiveXObject"in window,di=vu&&!document.addEventListener,wr="msLaunchUri"in navigator&&!("documentMode"in document),ce=wt("webkit"),br=wt("android"),kr=wt("android 2")||wt("android 3"),le=!!window.opera,yu=wt("chrome"),ae=wt("gecko")&&!ce&&!le&&!vu,uh=!yu&&wt("safari"),fh=wt("phantom"),eh="OTransition"in he,oh=0===navigator.platform.indexOf("Win"),ve=vu&&"transition"in he,ye="WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix&&!kr,sh="MozPerspective"in he,ft=!window.L_DISABLE_3D&&(ve||ye||sh)&&!eh&&!fh,gi="undefined"!=typeof orientation||wt("mobile"),bc=gi&&ce,kc=gi&&ye,ui=!window.PointerEvent&&window.MSPointerEvent,vt=!(!window.PointerEvent&&!ui),et=!window.L_NO_TOUCH&&(vt||"ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch),hh=gi&&le,dc=gi&&ae,fi=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,ch=!!document.createElement("canvas").getContext,pu=!(!document.createElementNS||!fs("svg").createSVGRect),wu=!pu&&function(){var t,n;try{return t=document.createElement("div"),t.innerHTML='<v:shape adj="1"/>',n=t.firstChild,n.style.behavior="url(#default#VML)",n&&"object"==typeof n.adj}catch(t){return!1}}(),gc=(Object.freeze||Object)({ie:vu,ielt9:di,edge:wr,webkit:ce,android:br,android23:kr,opera:le,chrome:yu,gecko:ae,safari:uh,phantom:fh,opera12:eh,win:oh,ie3d:ve,webkit3d:ye,gecko3d:sh,any3d:ft,mobile:gi,mobileWebkit:bc,mobileWebkit3d:kc,msPointer:ui,pointer:vt,touch:et,mobileOpera:hh,mobileGecko:dc,retina:fi,canvas:ch,svg:pu,vml:wu}),pe=ui?"MSPointerDown":"pointerdown",we=ui?"MSPointerMove":"pointermove",be=ui?"MSPointerUp":"pointerup",ke=ui?"MSPointerCancel":"pointercancel",nl=["INPUT","SELECT","OPTION"],nr={},lh=!1,de=0,bu=ui?"MSPointerDown":vt?"pointerdown":"touchstart",ku=ui?"MSPointerUp":vt?"pointerup":"touchend",tr="_leaflet_",ot="_leaflet_events",tl=oh&&yu?2*window.devicePixelRatio:ae?window.devicePixelRatio:1,ge={},il=(Object.freeze||Object)({on:i,off:w,stopPropagation:oi,disableScrollPropagation:cf,disableClickPropagation:lr,preventDefault:rt,stop:lt,getMousePosition:cs,getWheelDelta:ls,fakeStop:lf,skipped:af,isExternalTarget:uu,addListener:i,removeListener:w}),no=eu(["transform","WebkitTransform","OTransform","MozTransform","msTransform"]),dr=eu(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),ah="webkitTransition"===dr||"OTransition"===dr?dr+"End":"transitionend";"onselectstart"in document?(yr=function(){i(window,"selectstart",rt)},pr=function(){w(window,"selectstart",rt)}):(ir=eu(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]),yr=function(){if(ir){var n=document.documentElement.style;oe=n[ir];n[ir]="none"}},pr=function(){ir&&(document.documentElement.style[ir]=oe,oe=void 0)});var du,to,rl=(Object.freeze||Object)({TRANSFORM:no,TRANSITION:dr,TRANSITION_END:ah,get:as,getStyle:ar,create:f,remove:l,empty:vf,toFront:pi,toBack:wi,hasClass:yf,addClass:e,removeClass:p,setClass:pf,getClass:fu,setOpacity:ut,testProp:eu,setTransform:si,setPosition:b,getPosition:hi,disableTextSelection:yr,enableTextSelection:pr,disableImageDrag:wf,enableImageDrag:bf,preventOutline:kf,restoreOutline:ou}),vh=ki.extend({run:function(n,t,i,r){this.stop();this._el=n;this._inProgress=!0;this._duration=i||.25;this._easeOutPower=1/Math.max(r||.5,.2);this._startPos=hi(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=g(this._animate,this);this._step()},_step:function(n){var t=+new Date-this._startTime,i=1e3*this._duration;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();b(this._el,i);this.fire("step")},_complete:function(){ct(this._animId);this._inProgress=!1;this.fire("end")},_easeOut:function(n){return 1-Math.pow(1-n,this._easeOutPower)}}),u=ki.extend({options:{crs:se,center:void 0,zoom:void 0,minZoom:void 0,maxZoom:void 0,layers:[],maxBounds:void 0,renderer:void 0,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(n,t){t=a(this,t);this._initContainer(n);this._initLayout();this._onResize=c(this._onResize,this);this._initEvents();t.maxBounds&&this.setMaxBounds(t.maxBounds);void 0!==t.zoom&&(this._zoom=this._limitZoom(t.zoom));t.center&&void 0!==t.zoom&&this.setView(y(t.center),t.zoom,{reset:!0});this._handlers=[];this._layers={};this._zoomBoundLayers={};this._sizeChanged=!0;this.callInitHooks();this._zoomAnimated=dr&&ft&&!hh&&this.options.zoomAnimation;this._zoomAnimated&&(this._createAnimProxy(),i(this._proxy,ah,this._catchTransitionEnd,this));this._addLayers(this.options.layers)},setView:function(n,t,i){return t=void 0===t?this._zoom:this._limitZoom(t),n=this._limitCenter(y(n),t,this.options.maxBounds),i=i||{},this._stop(),this._loaded&&!i.reset&&!0!==i&&(void 0!==i.animate&&(i.zoom=s({animate:i.animate},i.zoom),i.pan=s({animate:i.animate,duration:i.duration},i.pan)),this._zoom!==t?this._tryAnimatedZoom&&this._tryAnimatedZoom(n,t,i.zoom):this._tryAnimatedPan(n,i.pan))?(clearTimeout(this._sizeTimer),this):(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||(ft?this.options.zoomDelta:1),this.setZoom(this._zoom+n,t)},zoomOut:function(n,t){return n=n||(ft?this.options.zoomDelta:1),this.setZoom(this._zoom-n,t)},setZoomAround:function(n,i,r){var f=this.getZoomScale(i),u=this.getSize().divideBy(2),e=(n instanceof t?n:this.latLngToContainerPoint(n)).subtract(u).multiplyBy(1-1/f),o=this.containerPointToLatLng(u.add(e));return this.setView(o,i,{zoom:r})},_getBoundsCenterZoom:function(n,t){t=t||{};n=n.getBounds?n.getBounds():k(n);var u=r(t.paddingTopLeft||t.padding||[0,0]),f=r(t.paddingBottomRight||t.padding||[0,0]),i=this.getBoundsZoom(n,!1,u.add(f));if((i="number"==typeof t.maxZoom?Math.min(t.maxZoom,i):i)===1/0)return{center:n.getCenter(),zoom:i};var e=f.subtract(u).divideBy(2),o=this.project(n.getSouthWest(),i),s=this.project(n.getNorthEast(),i);return{center:this.unproject(o.add(s).divideBy(2).add(e),i),zoom:i}},fitBounds:function(n,t){if(!(n=k(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(n).round(),t=t||{},!n.x&&!n.y)return this.fire("moveend");if(!0!==t.animate&&!this.getSize().contains(n))return this._resetView(this.unproject(this.project(this.getCenter()).add(n)),this.getZoom()),this;if(this._panAnim||(this._panAnim=new vh,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),t.noMoveStart||this.fire("movestart"),!1!==t.animate){e(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,i){function a(n){var t=(l*l-r*r+(n?-1:1)*h*h*s*s)/(2*(n?l:r)*h*s),i=Math.sqrt(t*t+1)-t;return i<1e-9?-18:Math.log(i)}function v(n){return(Math.exp(n)-Math.exp(-n))/2}function e(n){return(Math.exp(n)+Math.exp(-n))/2}function d(n){return v(n)/e(n)}function nt(n){return r*(e(u)/e(u+f*n))}function tt(n){return r*(e(u)*d(u+f*n)-v(u))/h}function it(n){return 1-Math.pow(1-n,1.5)}function p(){var i=(Date.now()-rt)/ut,u=it(i)*k;i<=1?(this._flyToFrame=g(p,this),this._move(this.unproject(c.add(w.subtract(c).multiplyBy(tt(u)/s)),o),this.getScaleZoom(r/nt(u),o),{flyTo:!0})):this._move(n,t)._moveEnd(!0)}if(!1===(i=i||{}).animate||!ft)return this.setView(n,t,i);this._stop();var c=this.project(this.getCenter()),w=this.project(n),b=this.getSize(),o=this._zoom;n=y(n);t=void 0===t?o:t;var r=Math.max(b.x,b.y),l=r*this.getZoomScale(o,t),s=w.distanceTo(c)||1,f=1.42,h=f*f,u=a(0),rt=Date.now(),k=(a(1)-u)/f,ut=i.duration?1e3*i.duration:1e3*k*.8;return this._moveStart(!0),p.call(this),this},flyToBounds:function(n,t){var i=this._getBoundsCenterZoom(n,t);return this.flyTo(i.center,i.zoom,t)},setMaxBounds:function(n){return(n=k(n)).isValid()?(this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this.options.maxBounds=n,this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds)):(this.options.maxBounds=null,this.off("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(),r=this._limitCenter(i,this._zoom,k(n));return i.equals(r)||this.panTo(r,t),this._enforcingBounds=!1,this},invalidateSize:function(n){var i;if(!this._loaded)return this;n=s({animate:!1,pan:!0},!0===n?{animate:!0}:n);i=this.getSize();this._sizeChanged=!0;this._lastCenter=null;var r=this.getSize(),u=i.divideBy(2).round(),f=r.divideBy(2).round(),t=u.subtract(f);return t.x||t.y?(n.animate&&n.pan?this.panBy(t):(n.pan&&this._rawPanBy(t),this.fire("move"),n.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(c(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:i,newSize:r})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(n){if(n=this._locateOptions=s({timeout:1e4,watch:!1},n),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var t=c(this._handleGeolocationResponse,this),i=c(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||(1===t?"permission denied":2===t?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld();this.fire("locationerror",{code:t,message:"Geolocation error: "+i+"."})},_handleGeolocationResponse:function(n){var i=new h(n.coords.latitude,n.coords.longitude),e=i.toBounds(n.coords.accuracy),r=this._locateOptions,u,f,t;r.setView&&(u=this.getBoundsZoom(e),this.setView(i,r.maxZoom?Math.min(u,r.maxZoom):u));f={latlng:i,bounds:e,timestamp:n.timestamp};for(t in n.coords)"number"==typeof n.coords[t]&&(f[t]=n.coords[t]);this.fire("locationfound",f)},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(n){this._container._leaflet_id=void 0;this._containerId=void 0}l(this._mapPane);this._clearControlPos&&this._clearControlPos();this._clearHandlers();this._loaded&&this.fire("unload");var n;for(n in this._layers)this._layers[n].remove();for(n in this._panes)l(this._panes[n]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(n,t){var i=f("div","leaflet-pane"+(n?" leaflet-"+n.replace("Pane","")+"-pane":""),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();return new nt(this.unproject(n.getBottomLeft()),this.unproject(n.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(n,t,i){n=k(n);i=r(i||[0,0]);var u=this.getZoom()||0,c=this.getMinZoom(),l=this.getMaxZoom(),a=n.getNorthWest(),v=n.getSouthEast(),e=this.getSize().subtract(i),o=ii(this.project(v,u),this.project(a,u)).getSize(),f=ft?this.options.zoomSnap:1,s=e.x/o.x,h=e.y/o.y,y=t?Math.max(s,h):Math.min(s,h);return u=this.getScaleZoom(y,u),f&&(u=Math.round(u/(f/100))*(f/100),u=t?Math.ceil(u/f)*f:Math.floor(u/f)*f),Math.max(c,Math.min(l,u))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new t(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(n,t){var i=this._getTopLeftPoint(n,t);return new v(i,i.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(n){return this.options.crs.getProjectedBounds(void 0===n?this.getZoom():n)},getPane:function(n){return"string"==typeof n?this._panes[n]:n},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(n,t){var i=this.options.crs;return t=void 0===t?this._zoom:t,i.scale(n)/i.scale(t)},getScaleZoom:function(n,t){var r=this.options.crs,i;return t=void 0===t?this._zoom:t,i=r.zoom(n*r.scale(t)),isNaN(i)?1/0:i},project:function(n,t){return t=void 0===t?this._zoom:t,this.options.crs.latLngToPoint(y(n),t)},unproject:function(n,t){return t=void 0===t?this._zoom:t,this.options.crs.pointToLatLng(r(n),t)},layerPointToLatLng:function(n){var t=r(n).add(this.getPixelOrigin());return this.unproject(t)},latLngToLayerPoint:function(n){return this.project(y(n))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(n){return this.options.crs.wrapLatLng(y(n))},wrapLatLngBounds:function(n){return this.options.crs.wrapLatLngBounds(k(n))},distance:function(n,t){return this.options.crs.distance(y(n),y(t))},containerPointToLayerPoint:function(n){return r(n).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(n){return r(n).add(this._getMapPanePos())},containerPointToLatLng:function(n){var t=this.containerPointToLayerPoint(r(n));return this.layerPointToLatLng(t)},latLngToContainerPoint:function(n){return this.layerPointToContainerPoint(this.latLngToLayerPoint(y(n)))},mouseEventToContainerPoint:function(n){return cs(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=as(n);if(!t)throw new Error("Map container not found.");if(t._leaflet_id)throw new Error("Map container is already initialized.");i(t,"scroll",this._onScroll,this);this._containerId=o(t)},_initLayout:function(){var t=this._container,n;this._fadeAnimated=this.options.fadeAnimation&&ft;e(t,"leaflet-container"+(et?" leaflet-touch":"")+(fi?" leaflet-retina":"")+(di?" leaflet-oldie":"")+(uh?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));n=ar(t,"position");"absolute"!==n&&"relative"!==n&&"fixed"!==n&&(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);b(this._mapPane,new t(0,0));this.createPane("tilePane");this.createPane("shadowPane");this.createPane("overlayPane");this.createPane("markerPane");this.createPane("tooltipPane");this.createPane("popupPane");this.options.markerZoomAnimation||(e(n.markerPane,"leaflet-zoom-hide"),e(n.shadowPane,"leaflet-zoom-hide"))},_resetView:function(n,i){var u,r;b(this._mapPane,new t(0,0));u=!this._loaded;this._loaded=!0;i=this._limitZoom(i);this.fire("viewprereset");r=this._zoom!==i;this._moveStart(r)._move(n,i)._moveEnd(r);this.fire("viewreset");u&&this.fire("load")},_moveStart:function(n){return n&&this.fire("zoomstart"),this.fire("movestart")},_move:function(n,t,i){void 0===t&&(t=this._zoom);var r=this._zoom!==t;return this._zoom=t,this._lastCenter=n,this._pixelOrigin=this._getNewPixelOrigin(n),(r||i&&i.pinch)&&this.fire("zoom",i),this.fire("move",i)},_moveEnd:function(n){return n&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return ct(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(n){b(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(n){this._targets={};this._targets[o(this._container)]=this;var t=n?w:i;t(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress",this._handleDOMEvent,this);this.options.trackResize&&t(window,"resize",this._onResize,this);ft&&this.options.transform3DLimit&&(n?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){ct(this._resizeRequest);this._resizeRequest=g(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 r,u=[],f="mouseout"===t||"mouseover"===t,i=n.target||n.srcElement,e=!1;i;){if((r=this._targets[o(i)])&&("click"===t||"preclick"===t)&&!n._simulated&&this._draggableMoved(r)){e=!0;break}if(r&&r.listens(t,!0)){if(f&&!uu(i,n))break;if(u.push(r),f)break}if(i===this._container)break;i=i.parentNode}return u.length||e||f||!uu(i,n)||(u=[this]),u},_handleDOMEvent:function(n){if(this._loaded&&!af(n)){var t=n.type;"mousedown"!==t&&"keypress"!==t||kf(n.target||n.srcElement);this._fireDOMEvent(n,t)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(n,t,i){var e,u,r,o,f;if("click"===n.type&&(e=s({},n),e.type="preclick",this._fireDOMEvent(e,e.type,i)),!n._stopped&&(i=(i||[]).concat(this._findEventTargets(n,t))).length)for(u=i[0],"contextmenu"===t&&u.listens(t,!0)&&rt(n),r={originalEvent:n},"keypress"!==n.type&&(o=u.options&&"icon"in u.options,r.containerPoint=o?this.latLngToContainerPoint(u.getLatLng()):this.mouseEventToContainerPoint(n),r.layerPoint=this.containerPointToLayerPoint(r.containerPoint),r.latlng=o?u.getLatLng():this.layerPointToLatLng(r.layerPoint)),f=0;f<i.length;f++)if(i[f].fire(t,r,!0),r.originalEvent._stopped||!1===i[f].options.bubblingMouseEvents&&-1!==rs(this._mouseEvents,t))return},_draggableMoved:function(n){return(n=n.dragging&&n.dragging.enabled()?n:this).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){return this._loaded?n.call(t||this,{target:this}):this.on("load",n,t),this},_getMapPanePos:function(){return hi(this._mapPane)||new t(0,0)},_moved:function(){var n=this._getMapPanePos();return n&&!n.equals([0,0])},_getTopLeftPoint:function(n,t){return(n&&void 0!==t?this._getNewPixelOrigin(n,t):this.getPixelOrigin()).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 r=this._getNewPixelOrigin(i,t);return ii([this.project(n.getSouthWest(),t)._subtract(r),this.project(n.getNorthWest(),t)._subtract(r),this.project(n.getSouthEast(),t)._subtract(r),this.project(n.getNorthEast(),t)._subtract(r)])},_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 r=this.project(n,t),u=this.getSize().divideBy(2),e=new v(r.subtract(u),r.add(u)),f=this._getBoundsOffset(e,i,t);return f.round().equals([0,0])?n:this.unproject(r.add(f),t)},_limitOffset:function(n,t){if(!t)return n;var i=this.getPixelBounds(),r=new v(i.min.add(n),i.max.add(n));return n.add(this._getBoundsOffset(r,t))},_getBoundsOffset:function(n,i,r){var u=ii(this.project(i.getNorthEast(),r),this.project(i.getSouthWest(),r)),f=u.min.subtract(n.min),e=u.max.subtract(n.max);return new t(this._rebound(f.x,-e.x),this._rebound(f.y,-e.y))},_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(),r=this.getMaxZoom(),t=ft?this.options.zoomSnap:1;return t&&(n=Math.round(n/t)*t),Math.max(i,Math.min(r,n))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){p(this._mapPane,"leaflet-pan-anim");this.fire("moveend")},_tryAnimatedPan:function(n,t){var i=this._getCenterOffset(n)._floor();return!(!0!==(t&&t.animate)&&!this.getSize().contains(i))&&(this.panBy(i,t),!0)},_createAnimProxy:function(){var n=this._proxy=f("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(n);this.on("zoomanim",function(n){var t=no,i=this._proxy.style[t];si(this._proxy,this.project(n.center,n.zoom),this.getZoomScale(n.zoom,1));i===this._proxy.style[t]&&this._animatingZoom&&this._onZoomTransitionEnd()},this);this.on("load moveend",function(){var t=this.getCenter(),n=this.getZoom();si(this._proxy,this.project(t,n),this.getZoomScale(n,1))},this);this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){l(this._proxy);delete this._proxy},_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||!1===i.animate||this._nothingToAnimate()||Math.abs(t-this._zoom)>this.options.zoomAnimationThreshold)return!1;var r=this.getZoomScale(t),u=this._getCenterOffset(n)._divideBy(1-1/r);return!(!0!==i.animate&&!this.getSize().contains(u))&&(g(function(){this._moveStart(!0)._animateZoom(n,t,!0)},this),!0)},_animateZoom:function(n,t,i,r){i&&(this._animatingZoom=!0,this._animateToCenter=n,this._animateToZoom=t,e(this._mapPane,"leaflet-zoom-anim"));this.fire("zoomanim",{center:n,zoom:t,noUpdate:r});setTimeout(c(this._onZoomTransitionEnd,this),250)},_onZoomTransitionEnd:function(){this._animatingZoom&&(p(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom),g(function(){this._moveEnd(!0)},this))}}),st=pt.extend({options:{position:"topright"},initialize:function(n){a(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),r=this.getPosition(),i=n._controlCorners[r];return e(t,"leaflet-control"),-1!==r.indexOf("bottom")?i.insertBefore(t,i.firstChild):i.appendChild(t),this},remove:function(){return this._map?(l(this._container),this.onRemove&&this.onRemove(this._map),this._map=null,this):this},_refocusOnMap:function(n){this._map&&n&&n.screenX>0&&n.screenY>0&&this._map.getContainer().focus()}}),gr=function(n){return new st(n)};u.include({addControl:function(n){return n.addTo(this),this},removeControl:function(n){return n.remove(),this},_initControlPos:function(){function n(n,u){var e=t+n+" "+t+u;i[n+u]=f("div",e,r)}var i=this._controlCorners={},t="leaflet-",r=this._controlContainer=f("div",t+"control-container",this._container);n("top","left");n("top","right");n("bottom","left");n("bottom","right")},_clearControlPos:function(){for(var n in this._controlCorners)l(this._controlCorners[n]);l(this._controlContainer);delete this._controlCorners;delete this._controlContainer}});io=st.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){a(this,i);this._layerControlInputs=[];this._layers=[];this._lastZIndex=0;this._handlingClick=!1;for(var r in n)this._addLayer(n[r],r);for(r in t)this._addLayer(t[r],r,!0)},onAdd:function(n){this._initLayout();this._update();this._map=n;n.on("zoomend",this._checkDisabledLayers,this);for(var t=0;t<this._layers.length;t++)this._layers[t].layer.on("add remove",this._onLayerChange,this);return this._container},addTo:function(n){return st.prototype.addTo.call(this,n),this._expandIfNotCollapsed()},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(o(n));return t&&this._layers.splice(this._layers.indexOf(t),1),this._map?this._update():this},expand:function(){e(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?(e(this._form,"leaflet-control-layers-scrollbar"),this._form.style.height=n+"px"):p(this._form,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return p(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var n="leaflet-control-layers",t=this._container=f("div",n),e=this.options.collapsed,u,r;t.setAttribute("aria-haspopup",!0);lr(t);cf(t);u=this._form=f("form",n+"-list");e&&(this._map.on("click",this.collapse,this),br||i(t,{mouseenter:this.expand,mouseleave:this.collapse},this));r=this._layersLink=f("a",n+"-toggle",t);r.href="#";r.title="Layers";et?(i(r,"click",lt),i(r,"click",this.expand,this)):i(r,"focus",this.expand,this);e||this.expand();this._baseLayersList=f("div",n+"-base",u);this._separator=f("div",n+"-separator",u);this._overlaysList=f("div",n+"-overlays",u);t.appendChild(u)},_getLayer:function(n){for(var t=0;t<this._layers.length;t++)if(this._layers[t]&&o(this._layers[t].layer)===n)return this._layers[t]},_addLayer:function(n,t,i){this._map&&n.on("add remove",this._onLayerChange,this);this._layers.push({layer:n,name:t,overlay:i});this.options.sortLayers&&this._layers.sort(c(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));this._expandIfNotCollapsed()},_update:function(){if(!this._container)return this;vf(this._baseLayersList);vf(this._overlaysList);this._layerControlInputs=[];for(var n,r,t,u=0,i=0;i<this._layers.length;i++)t=this._layers[i],this._addItem(t),r=r||t.overlay,n=n||!t.overlay,u+=t.overlay?0:1;return this.options.hideSingleBase&&(n=n&&u>1,this._baseLayersList.style.display=n?"":"none"),this._separator.style.display=r&&n?"":"none",this},_onLayerChange:function(n){this._handlingClick||this._update();var t=this._getLayer(o(n.target)),i=t.overlay?"add"===n.type?"overlayadd":"overlayremove":"add"===n.type?"baselayerchange":null;i&&this._map.fire(i,t)},_createRadioElement:function(n,t){var r='<input type="radio" class="leaflet-control-layers-selector" name="'+n+'"'+(t?' checked="checked"':"")+"/>",i=document.createElement("div");return i.innerHTML=r,i.firstChild},_addItem:function(n){var t,u=document.createElement("label"),e=this._map.hasLayer(n.layer),f,r;return n.overlay?((t=document.createElement("input")).type="checkbox",t.className="leaflet-control-layers-selector",t.defaultChecked=e):t=this._createRadioElement("leaflet-base-layers",e),this._layerControlInputs.push(t),t.layerId=o(n.layer),i(t,"click",this._onInputClick,this),f=document.createElement("span"),f.innerHTML=" "+n.name,r=document.createElement("div"),u.appendChild(r),r.appendChild(t),r.appendChild(f),(n.overlay?this._overlaysList:this._baseLayersList).appendChild(u),this._checkDisabledLayers(),u},_onInputClick:function(){var t,u,f=this._layerControlInputs,i=[],r=[],n;for(this._handlingClick=!0,n=f.length-1;n>=0;n--)t=f[n],u=this._getLayer(t.layerId).layer,t.checked?i.push(u):t.checked||r.push(u);for(n=0;n<r.length;n++)this._map.hasLayer(r[n])&&this._map.removeLayer(r[n]);for(n=0;n<i.length;n++)this._map.hasLayer(i[n])||this._map.addLayer(i[n]);this._handlingClick=!1;this._refocusOnMap()},_checkDisabledLayers:function(){for(var t,n,r=this._layerControlInputs,u=this._map.getZoom(),i=r.length-1;i>=0;i--)t=r[i],n=this._getLayer(t.layerId).layer,t.disabled=void 0!==n.options.minZoom&&u<n.options.minZoom||void 0!==n.options.maxZoom&&u>n.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expand:function(){return this.expand()},_collapse:function(){return this.collapse()}});gu=st.extend({options:{position:"topleft",zoomInText:"+",zoomInTitle:"Zoom in",zoomOutText:"&#x2212;",zoomOutTitle:"Zoom out"},onAdd:function(n){var i="leaflet-control-zoom",r=f("div",i+" leaflet-bar"),t=this.options;return this._zoomInButton=this._createButton(t.zoomInText,t.zoomInTitle,i+"-in",r,this._zoomIn),this._zoomOutButton=this._createButton(t.zoomOutText,t.zoomOutTitle,i+"-out",r,this._zoomOut),this._updateDisabled(),n.on("zoomend zoomlevelschange",this._updateDisabled,this),r},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,r,u,e){var o=f("a",r,u);return o.innerHTML=n,o.href="#",o.title=t,o.setAttribute("role","button"),o.setAttribute("aria-label",t),lr(o),i(o,"click",lt),i(o,"click",e,this),i(o,"click",this._refocusOnMap,this),o},_updateDisabled:function(){var n=this._map,t="leaflet-disabled";p(this._zoomInButton,t);p(this._zoomOutButton,t);(this._disabled||n._zoom===n.getMinZoom())&&e(this._zoomOutButton,t);(this._disabled||n._zoom===n.getMaxZoom())&&e(this._zoomInButton,t)}});u.mergeOptions({zoomControl:!0});u.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new gu,this.addControl(this.zoomControl))});ro=st.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(n){var t=f("div","leaflet-control-scale"),i=this.options;return this._addScales(i,"leaflet-control-scale-line",t),n.on(i.updateWhenIdle?"moveend":"move",this._update,this),n.whenReady(this._update,this),t},onRemove:function(n){n.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(n,t,i){n.metric&&(this._mScale=f("div",t,i));n.imperial&&(this._iScale=f("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 i,r,u,t=3.2808399*n;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}});nf=st.extend({options:{position:"bottomright",prefix:'<a href="http://leafletjs.com" title="A JS library for interactive maps">Leaflet<\/a>'},initialize:function(n){a(this,n);this._attributions={}},onAdd:function(n){n.attributionControl=this;this._container=f("div","leaflet-control-attribution");lr(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(" | ")}}});u.mergeOptions({attributionControl:!0});u.addInitHook(function(){this.options.attributionControl&&(new nf).addTo(this)});st.Layers=io;st.Zoom=gu;st.Scale=ro;st.Attribution=nf;gr.layers=function(n,t,i){return new io(n,t,i)};gr.zoom=function(n){return new gu(n)};gr.scale=function(n){return new ro(n)};gr.attribution=function(n){return new nf(n)};var yh,dt=pt.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}}),ul={Events:tt},ph=et?"touchstart mousedown":"mousedown",wh={mousedown:"mouseup",touchstart:"touchend",pointerdown:"touchend",MSPointerDown:"touchend"},uo={mousedown:"mousemove",touchstart:"touchmove",pointerdown:"touchmove",MSPointerDown:"touchmove"},li=ki.extend({options:{clickTolerance:3},initialize:function(n,t,i,r){a(this,r);this._element=n;this._dragStartTarget=t||n;this._preventOutline=i},enable:function(){this._enabled||(i(this._dragStartTarget,ph,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(li._dragging===this&&this.finishDrag(),w(this._dragStartTarget,ph,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(n){if(!n._simulated&&this._enabled&&(this._moved=!1,!yf(this._element,"leaflet-zoom-anim")&&!(li._dragging||n.shiftKey||1!==n.which&&1!==n.button&&!n.touches||(li._dragging=this,this._preventOutline&&kf(this._element),wf(),yr(),this._moving)))){this.fire("down");var r=n.touches?n.touches[0]:n;this._startPoint=new t(r.clientX,r.clientY);i(document,uo[n.type],this._onMove,this);i(document,wh[n.type],this._onUp,this)}},_onMove:function(n){if(!n._simulated&&this._enabled)if(n.touches&&n.touches.length>1)this._moved=!0;else{var r=n.touches&&1===n.touches.length?n.touches[0]:n,i=new t(r.clientX,r.clientY).subtract(this._startPoint);(i.x||i.y)&&(Math.abs(i.x)+Math.abs(i.y)<this.options.clickTolerance||(rt(n),this._moved||(this.fire("dragstart"),this._moved=!0,this._startPos=hi(this._element).subtract(i),e(document.body,"leaflet-dragging"),this._lastTarget=n.target||n.srcElement,window.SVGElementInstance&&this._lastTarget instanceof SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),e(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(i),this._moving=!0,ct(this._animRequest),this._lastEvent=n,this._animRequest=g(this._updatePosition,this,!0)))}},_updatePosition:function(){var n={originalEvent:this._lastEvent};this.fire("predrag",n);b(this._element,this._newPos);this.fire("drag",n)},_onUp:function(n){!n._simulated&&this._enabled&&this.finishDrag()},finishDrag:function(){p(document.body,"leaflet-dragging");this._lastTarget&&(p(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null);for(var n in uo)w(document,uo[n],this._onMove,this),w(document,wh[n],this._onUp,this);bf();pr();this._moved&&this._moving&&(ct(this._animRequest),this.fire("dragend",{distance:this._newPos.distanceTo(this._startPos)}));this._moving=!1;li._dragging=!1}}),fl=(Object.freeze||Object)({simplify:vs,pointToSegmentDistance:ys,closestPointOnSegment:function(n,t,i){return vr(n,t,i)},clipSegment:ps,_getEdgeIntersection:su,_getBitCode:ci,_sqClosestPointOnSegment:vr,isFlat:bt,_flat:ws}),el=(Object.freeze||Object)({clipPolygon:bs}),fo={project:function(n){return new t(n.lng,n.lat)},unproject:function(n){return new h(n.y,n.x)},bounds:new v([-180,-90],[180,90])},eo={R:6378137,R_MINOR:6356752.3142451793,bounds:new v([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(n){var u=Math.PI/180,r=this.R,i=n.lat*u,f=this.R_MINOR/r,e=Math.sqrt(1-f*f),o=e*Math.sin(i),s=Math.tan(Math.PI/4-i/2)/Math.pow((1-o)/(1+o),e/2);return i=-r*Math.log(Math.max(s,1e-10)),new t(n.lng*u*r,i)},unproject:function(n){for(var t,u=180/Math.PI,r=this.R,f=this.R_MINOR/r,e=Math.sqrt(1-f*f),o=Math.exp(-n.y/r),i=Math.PI/2-2*Math.atan(o),s=0,c=.1;s<15&&Math.abs(c)>1e-7;s++)t=e*Math.sin(i),t=Math.pow((1-t)/(1+t),e/2),i+=c=Math.PI/2-2*Math.atan(o*t)-i;return new h(i*u,n.x*u/r)}},ol=(Object.freeze||Object)({LonLat:fo,Mercator:eo,SphericalMercator:fe}),sl=s({},ri,{code:"EPSG:3395",projection:eo,transformation:function(){var n=.5/(Math.PI*eo.R);return cr(n,.5,-n,.5)}()}),bh=s({},ri,{code:"EPSG:4326",projection:fo,transformation:cr(1/180,1,-1/180,.5)}),hl=s({},kt,{projection:fo,transformation:cr(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});kt.Earth=ri;kt.EPSG3395=sl;kt.EPSG3857=se;kt.EPSG900913=wc;kt.EPSG4326=bh;kt.Simple=hl;it=ki.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},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[o(n)]=this,this},removeInteractiveTarget:function(n){return delete this._map._targets[o(n)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(n){var t=n.target,i;t.hasLayer(this)&&((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&&t.attributionControl&&t.attributionControl.addAttribution(this.getAttribution()),this.fire("add"),t.fire("layeradd",{layer:this}))}});u.include({addLayer:function(n){if(!n._layerAdd)throw new Error("The provided object is not a Layer.");var t=o(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=o(n);return this._layers[t]?(this._loaded&&n.onRemove(this),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):this},hasLayer:function(n){return!!n&&o(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){for(var t=0,i=(n=n?at(n)?n:[n]:[]).length;t<i;t++)this.addLayer(n[t])},_addZoomLimit:function(n){!isNaN(n.options.maxZoom)&&isNaN(n.options.minZoom)||(this._zoomBoundLayers[o(n)]=n,this._updateZoomLevels())},_removeZoomLimit:function(n){var t=o(n);this._zoomBoundLayers[t]&&(delete this._zoomBoundLayers[t],this._updateZoomLevels())},_updateZoomLevels:function(){var n=1/0,t=-1/0,u=this._getZoomSpan(),r,i;for(r in this._zoomBoundLayers)i=this._zoomBoundLayers[r].options,n=void 0===i.minZoom?n:Math.min(n,i.minZoom),t=void 0===i.maxZoom?t:Math.max(t,i.maxZoom);this._layersMaxZoom=t===-1/0?void 0:t;this._layersMinZoom=n===1/0?void 0:n;u!==this._getZoomSpan()&&this.fire("zoomlevelschange");void 0===this.options.maxZoom&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom);void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});var rr=it.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 i,t,r=Array.prototype.slice.call(arguments,1);for(i in this._layers)(t=this._layers[i])[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=[],t;for(t in this._layers)n.push(this._layers[t]);return n},setZIndex:function(n){return this.invoke("setZIndex",n)},getLayerId:function(n){return o(n)}}),ai=rr.extend({addLayer:function(n){return this.hasLayer(n)?this:(n.addEventParent(this),rr.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),rr.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 nt,i,n;for(i in this._layers)n=this._layers[i],t.extend(n.getBounds?n.getBounds():n.getLatLng());return t}}),ur=pt.extend({initialize:function(n){a(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("icon"===n)throw new Error("iconUrl not set in Icon options (see the docs).");return null}return i=this._createImg(r,t&&"IMG"===t.tagName?t:null),this._setIconStyles(i,n),i},_setIconStyles:function(n,t){var f=this.options,u=f[t+"Size"],i,e;"number"==typeof u&&(u=[u,u]);i=r(u);e=r("shadow"===t&&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,t){return t=t||document.createElement("img"),t.src=n,t},_getIconUrl:function(n){return fi&&this.options[n+"RetinaUrl"]||this.options[n+"Url"]}}),nu=ur.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 nu.imagePath||(nu.imagePath=this._detectIconPath()),(this.options.imagePath||nu.imagePath)+ur.prototype._getIconUrl.call(this,n)},_detectIconPath:function(){var t=f("div","leaflet-default-icon-path",document.body),n=ar(t,"background-image")||ar(t,"backgroundImage");return document.body.removeChild(t),n=null===n||0!==n.indexOf("url")?"":n.replace(/^url\([\"\']?/,"").replace(/marker-icon\.png[\"\']?\)$/,"")}}),kh=dt.extend({initialize:function(n){this._marker=n},addHooks:function(){var n=this._marker._icon;this._draggable||(this._draggable=new li(n,n,!0));this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this).enable();e(n,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this).disable();this._marker._icon&&p(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,r=hi(t._icon),u=t._map.layerPointToLatLng(r);i&&b(i,r);t._latlng=u;n.latlng=u;n.oldLatLng=this._oldLatLng;t.fire("move",n).fire("drag",n)},_onDragEnd:function(n){delete this._oldLatLng;this._marker.fire("moveend").fire("dragend",n)}}),tu=it.extend({options:{icon:new nu,interactive:!0,draggable:!1,keyboard:!0,title:"",alt:"",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",bubblingMouseEvents:!1},initialize:function(n,t){a(this,t);this._latlng=y(n)},onAdd:function(n){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());delete this.dragging;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=y(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,u="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),i=n.icon.createIcon(this._icon),f=!1,t,r;i!==this._icon&&(this._icon&&this._removeIcon(),f=!0,n.title&&(i.title=n.title),n.alt&&(i.alt=n.alt));e(i,u);n.keyboard&&(i.tabIndex="0");this._icon=i;n.riseOnHover&&this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex});t=n.icon.createShadow(this._shadow);r=!1;t!==this._shadow&&(this._removeShadow(),r=!0);t&&(e(t,u),t.alt="");this._shadow=t;n.opacity<1&&this._updateOpacity();f&&this.getPane().appendChild(this._icon);this._initInteraction();t&&r&&this.getPane("shadowPane").appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex});l(this._icon);this.removeInteractiveTarget(this._icon);this._icon=null},_removeShadow:function(){this._shadow&&l(this._shadow);this._shadow=null},_setPos:function(n){b(this._icon,n);this._shadow&&b(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&&(e(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),kh)){var n=this.options.draggable;this.dragging&&(n=this.dragging.enabled(),this.dragging.disable());this.dragging=new kh(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;ut(this._icon,n);this._shadow&&ut(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]}}),ei=it.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,bubblingMouseEvents:!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 a(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)+(et?10:0)}}),tf=ei.extend({options:{fill:!0,radius:10},initialize:function(n,t){a(this,t);this._latlng=y(n);this._radius=this.options.radius},setLatLng:function(n){return this._latlng=y(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 ei.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,r=this._radiusY||n,t=this._clickTolerance(),i=[n+t,r+t];this._pxBounds=new v(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)},_containsPoint:function(n){return n.distanceTo(this._point)<=this._radius+this._clickTolerance()}}),oo=tf.extend({initialize:function(n,t,i){if("number"==typeof t&&(t=s({},i,{radius:t})),a(this,t),this._latlng=y(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 nt(this._map.layerPointToLatLng(this._point.subtract(n)),this._map.layerPointToLatLng(this._point.add(n)))},setStyle:ei.prototype.setStyle,_project:function(){var e=this._latlng.lng,i=this._latlng.lat,n=this._map,o=n.options.crs,c;if(o.distance===ri.distance){var t=Math.PI/180,u=this._mRadius/ri.R/t,h=n.project([i+u,e]),l=n.project([i-u,e]),f=h.add(l).divideBy(2),s=n.unproject(f).lat,r=Math.acos((Math.cos(u*t)-Math.sin(i*t)*Math.sin(s*t))/(Math.cos(i*t)*Math.cos(s*t)))/t;(isNaN(r)||0===r)&&(r=u/Math.cos(Math.PI/180*i));this._point=f.subtract(n.getPixelOrigin());this._radius=isNaN(r)?0:Math.max(Math.round(f.x-n.project([s,e-r]).x),1);this._radiusY=Math.max(Math.round(f.y-h.y),1)}else c=o.unproject(o.project(this._latlng).subtract([this._mRadius,0])),this._point=n.latLngToLayerPoint(this._latlng),this._radius=this._point.x-n.latLngToLayerPoint(c).x;this._updateBounds()}}),gt=ei.extend({options:{smoothFactor:1,noClip:!1},initialize:function(n,t){a(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 e,o,s,r=1/0,t=null,h=vr,u=0,c=this._parts.length;u<c;u++)for(var f=this._parts[u],i=1,l=f.length;i<l;i++)e=h(n,o=f[i-1],s=f[i],!0),e<r&&(r=e,t=h(n,o,s));return t&&(t.distance=Math.sqrt(r)),t},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");var n,r,f,e,u,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(0===r)return this._map.layerPointToLatLng(i[0]);for(n=0,e=0;n<s-1;n++)if(u=i[n],t=i[n+1],f=u.distanceTo(t),(e+=f)>r)return o=(e-r)/f,this._map.layerPointToLatLng([t.x-o*(t.x-u.x),t.y-o*(t.y-u.y)])},getBounds:function(){return this._bounds},addLatLng:function(n,t){return t=t||this._defaultShape(),n=y(n),t.push(n),this._bounds.extend(n),this.redraw()},_setLatLngs:function(n){this._bounds=new nt;this._latlngs=this._convertLatLngs(n)},_defaultShape:function(){return bt(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(n){for(var i=[],r=bt(n),t=0,u=n.length;t<u;t++)r?(i[t]=y(n[t]),this._bounds.extend(i[t])):i[t]=this._convertLatLngs(n[t]);return i},_project:function(){var n=new v,i,r;this._rings=[];this._projectLatlngs(this._latlngs,this._rings,n);i=this._clickTolerance();r=new t(i,i);this._bounds.isValid()&&n.isValid()&&(n.min._subtract(r),n.max._add(r),this._pxBounds=n)},_projectLatlngs:function(n,t,i){var r,u,e=n[0]instanceof h,f=n.length;if(e){for(u=[],r=0;r<f;r++)u[r]=this._map.latLngToLayerPoint(n[r]),i.extend(u[r]);t.push(u)}else for(r=0;r<f;r++)this._projectLatlngs(n[r],t,i)},_clipPoints:function(){var o=this._renderer._bounds,r,n,t,s,e,u,f,i;if(this._parts=[],this._pxBounds&&this._pxBounds.intersects(o))if(this.options.noClip)this._parts=this._rings;else for(i=this._parts,r=0,t=0,s=this._rings.length;r<s;r++)for(n=0,e=(f=this._rings[r]).length;n<e-1;n++)(u=ps(f[n],f[n+1],o,n,!0))&&(i[t]=i[t]||[],i[t].push(u[0]),u[1]===f[n+1]&&n!==e-2||(i[t].push(u[1]),t++))},_simplifyPoints:function(){for(var t=this._parts,i=this.options.smoothFactor,n=0,r=t.length;n<r;n++)t[n]=vs(t[n],i)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)},_containsPoint:function(n,t){var r,i,u,e,o,f,s=this._clickTolerance();if(!this._pxBounds||!this._pxBounds.contains(n))return!1;for(r=0,e=this._parts.length;r<e;r++)for(i=0,u=(o=(f=this._parts[r]).length)-1;i<o;u=i++)if((t||0!==i)&&ys(n,f[u],f[i])<=s)return!0;return!1}});gt._flat=ws;var fr=gt.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+=3*u;return c=0===i?f[0]:[o/i,s/i],this._map.layerPointToLatLng(c)},_convertLatLngs:function(n){var t=gt.prototype._convertLatLngs.call(this,n),i=t.length;return i>=2&&t[0]instanceof h&&t[0].equals(t[i-1])&&t.pop(),t},_setLatLngs:function(n){gt.prototype._setLatLngs.call(this,n);bt(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return bt(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var n=this._renderer._bounds,r=this.options.weight,u=new t(r,r),f,i,e;if(n=new v(n.min.subtract(u),n.max.add(u)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(n))if(this.options.noClip)this._parts=this._rings;else for(i=0,e=this._rings.length;i<e;i++)(f=bs(this._rings[i],n,!0)).length&&this._parts.push(f)},_updatePath:function(){this._renderer._updatePoly(this,!0)},_containsPoint:function(n){var f,t,i,r,u,e,s,h,o=!1;if(!this._pxBounds.contains(n))return!1;for(r=0,s=this._parts.length;r<s;r++)for(u=0,e=(h=(f=this._parts[r]).length)-1;u<h;e=u++)t=f[u],i=f[e],t.y>n.y!=i.y>n.y&&n.x<(i.x-t.x)*(n.y-t.y)/(i.y-t.y)+t.x&&(o=!o);return o||gt.prototype._containsPoint.call(this,n,!0)}}),ni=ai.extend({initialize:function(n,t){a(this,t);this._layers={};n&&this.addData(n)},addData:function(n){var u,e,r,f=at(n)?n:n.features,i,t;if(f){for(u=0,e=f.length;u<e;u++)((r=f[u]).geometries||r.geometry||r.features||r.coordinates)&&this.addData(r);return this}return(i=this.options,i.filter&&!i.filter(n))?this:(t=gf(n,i),t?(t.feature=lu(n),t.defaultOptions=t.options,this.resetStyle(t),i.onEachFeature&&i.onEachFeature(n,t),this.addLayer(t)):this)},resetStyle:function(n){return n.options=s({},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){"function"==typeof t&&(t=t(n.feature));n.setStyle&&n.setStyle(t)}}),so={toGeoJSON:function(n){return bi(this,{type:"Point",coordinates:te(this.getLatLng(),n)})}};tu.include(so);oo.include(so);tf.include(so);gt.include({toGeoJSON:function(n){var t=!bt(this._latlngs),i=cu(this._latlngs,t?1:0,!1,n);return bi(this,{type:(t?"Multi":"")+"LineString",coordinates:i})}});fr.include({toGeoJSON:function(n){var t=!bt(this._latlngs),r=t&&!bt(this._latlngs[0]),i=cu(this._latlngs,r?2:t?1:0,!0,n);return t||(i=[i]),bi(this,{type:(r?"Multi":"")+"Polygon",coordinates:i})}});rr.include({toMultiPoint:function(n){var t=[];return this.eachLayer(function(i){t.push(i.toGeoJSON(n).geometry.coordinates)}),bi(this,{type:"MultiPoint",coordinates:t})},toGeoJSON:function(n){var r=this.feature&&this.feature.geometry&&this.feature.geometry.type,i,t;return"MultiPoint"===r?this.toMultiPoint(n):(i="GeometryCollection"===r,t=[],this.eachLayer(function(r){var f,u;r.toGeoJSON&&(f=r.toGeoJSON(n),i?t.push(f.geometry):(u=lu(f),"FeatureCollection"===u.type?t.push.apply(t,u.features):t.push(u)))}),i?bi(this,{geometries:t,type:"GeometryCollection"}):{type:"FeatureCollection",features:t})}});var cl=ks,ho=it.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(n,t,i){this._url=n;this._bounds=k(t);a(this,i)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity());this.options.interactive&&(e(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image));this.getPane().appendChild(this._image);this._reset()},onRemove:function(){l(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&&pi(this._image),this},bringToBack:function(){return this._map&&wi(this._image),this},setUrl:function(n){return this._url=n,this._image&&(this._image.src=n),this},setBounds:function(n){return this._bounds=k(n),this._map&&this._reset(),this},getEvents:function(){var n={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(n.zoomanim=this._animateZoom),n},setZIndex:function(n){return this.options.zIndex=n,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var n=this._image=f("img","leaflet-image-layer "+(this._zoomAnimated?"leaflet-zoom-animated":"")+(this.options.className||""));n.onselectstart=d;n.onmousemove=d;n.onload=c(this.fire,this,"load");n.onerror=c(this._overlayOnError,this,"error");this.options.crossOrigin&&(n.crossOrigin="");this.options.zIndex&&this._updateZIndex();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;si(this._image,i,t)},_reset:function(){var n=this._image,t=new v(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),i=t.getSize();b(n,t.min);n.style.width=i.x+"px";n.style.height=i.y+"px"},_updateOpacity:function(){ut(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var n=this.options.errorOverlayUrl;n&&this._url!==n&&(this._url=n,this._image.src=n)}}),dh=ho.extend({options:{autoplay:!0,loop:!0},_initImage:function(){var r="VIDEO"===this._url.tagName,n=this._image=r?this._url:f("video"),t,i;if(n.class=n.class||"",n.class+="leaflet-image-layer "+(this._zoomAnimated?"leaflet-zoom-animated":""),n.onselectstart=d,n.onmousemove=d,n.onloadeddata=c(this.fire,this,"load"),!r)for(at(this._url)||(this._url=[this._url]),n.autoplay=!!this.options.autoplay,n.loop=!!this.options.loop,t=0;t<this._url.length;t++)i=f("source"),i.src=this._url[t],n.appendChild(i)}}),ti=it.extend({options:{offset:[0,7],className:"",pane:"popupPane"},initialize:function(n,t){a(this,n);this._source=t},onAdd:function(n){this._zoomAnimated=n._zoomAnimated;this._container||this._initLayout();n._fadeAnimated&&ut(this._container,0);clearTimeout(this._removeTimeout);this.getPane().appendChild(this._container);this.update();n._fadeAnimated&&ut(this._container,1);this.bringToFront()},onRemove:function(n){n._fadeAnimated?(ut(this._container,0),this._removeTimeout=setTimeout(c(l,void 0,this._container),200)):l(this._container)},getLatLng:function(){return this._latlng},setLatLng:function(n){return this._latlng=y(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&&pi(this._container),this},bringToBack:function(){return this._map&&wi(this._container),this},_updateContent:function(){if(this._content){var n=this._contentNode,t="function"==typeof this._content?this._content(this._source||this):this._content;if("string"==typeof t)n.innerHTML=t;else{for(;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(this.options.offset),i=this._getAnchor();this._zoomAnimated?b(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]}}),er=ti.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){ti.prototype.onAdd.call(this,n);n.fire("popupopen",{popup:this});this._source&&(this._source.fire("popupopen",{popup:this},!0),this._source instanceof ei||this._source.on("preclick",oi))},onRemove:function(n){ti.prototype.onRemove.call(this,n);n.fire("popupclose",{popup:this});this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof ei||this._source.off("preclick",oi))},getEvents:function(){var n=ti.prototype.getEvents.call(this);return(void 0!==this.options.closeOnClick?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",r=this._container=f("div",n+" "+(this.options.className||"")+" leaflet-zoom-animated"),u=this._wrapper=f("div",n+"-content-wrapper",r),t;(this._contentNode=f("div",n+"-content",u),lr(u),cf(this._contentNode),i(u,"contextmenu",oi),this._tipContainer=f("div",n+"-tip-container",r),this._tip=f("div",n+"-tip",this._tipContainer),this.options.closeButton)&&(t=this._closeButton=f("a",n+"-close-button",r),t.href="#close",t.innerHTML="&#215;",i(t,"click",this._onCloseButtonClick,this))},_updateLayout:function(){var i=this._contentNode,n=i.style,t,u,r;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="";u=i.offsetHeight;r=this.options.maxHeight;r&&u>r?(n.height=r+"px",e(i,"leaflet-popup-scrolled")):p(i,"leaflet-popup-scrolled");this._containerWidth=this._container.offsetWidth},_animateZoom:function(n){var t=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center),i=this._getAnchor();b(this._container,t.add(i))},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress)){var s=this._map,v=parseInt(ar(this._container,"marginBottom"),10)||0,h=this._container.offsetHeight+v,c=this._containerWidth,l=new t(this._containerLeft,-h-this._containerBottom);l._add(hi(this._container));var n=s.layerPointToContainerPoint(l),a=r(this.options.autoPanPadding),f=r(this.options.autoPanPaddingTopLeft||a),e=r(this.options.autoPanPaddingBottomRight||a),o=s.getSize(),i=0,u=0;n.x+c+e.x>o.x&&(i=n.x+c-o.x+e.x);n.x-i-f.x<0&&(i=n.x-f.x);n.y+h+e.y>o.y&&(u=n.y+h-o.y+e.y);n.y-u-f.y<0&&(u=n.y-f.y);(i||u)&&s.fire("autopanstart").panBy([i,u])}},_onCloseButtonClick:function(n){this._close();lt(n)},_getAnchor:function(){return r(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}});u.mergeOptions({closePopupOnClick:!0});u.include({openPopup:function(n,t,i){return n instanceof er||(n=new er(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}});it.include({bindPopup:function(n,t){return n instanceof er?(a(n,t),this._popup=n,n._source=this):(this._popup&&!t||(this._popup=new er(t,this)),this._popup.setContent(n)),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(n,t){if(n instanceof it||(t=n,n=this),n instanceof ai)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&&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;this._popup&&this._map&&(lt(n),t instanceof ei?this.openPopup(n.layer||n.target,n.latlng):this._map.hasLayer(this._popup)&&this._popup._source===t?this.closePopup():this.openPopup(t,n.latlng))},_movePopup:function(n){this._popup.setLatLng(n.latlng)},_onKeyPress:function(n){13===n.originalEvent.keyCode&&this._openPopup(n)}});vi=ti.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,interactive:!1,opacity:.9},onAdd:function(n){ti.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){ti.prototype.onRemove.call(this,n);n.fire("tooltipclose",{tooltip:this});this._source&&this._source.fire("tooltipclose",{tooltip:this},!0)},getEvents:function(){var n=ti.prototype.getEvents.call(this);return et&&!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=f("div",n)},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(n){var h=this._map,i=this._container,c=h.latLngToContainerPoint(h.getCenter()),l=h.layerPointToContainerPoint(n),u=this.options.direction,o=i.offsetWidth,s=i.offsetHeight,t=r(this.options.offset),f=this._getAnchor();"top"===u?n=n.add(r(-o/2+t.x,-s+t.y+f.y,!0)):"bottom"===u?n=n.subtract(r(o/2-t.x,-t.y,!0)):"center"===u?n=n.subtract(r(o/2+t.x,s/2-f.y+t.y,!0)):"right"===u||"auto"===u&&l.x<c.x?(u="right",n=n.add(r(t.x+f.x,f.y-s/2+t.y,!0))):(u="left",n=n.subtract(r(o+f.x-t.x,s/2-f.y-t.y,!0)));p(i,"leaflet-tooltip-right");p(i,"leaflet-tooltip-left");p(i,"leaflet-tooltip-top");p(i,"leaflet-tooltip-bottom");e(i,"leaflet-tooltip-"+u);b(i,n)},_updatePosition:function(){var n=this._map.latLngToLayerPoint(this._latlng);this._setPosition(n)},setOpacity:function(n){this.options.opacity=n;this._container&&ut(this._container,n)},_animateZoom:function(n){var t=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center);this._setPosition(t)},_getAnchor:function(){return r(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}});u.include({openTooltip:function(n,t,i){return n instanceof vi||(n=new vi(i).setContent(n)),t&&n.setLatLng(t),this.hasLayer(n)?this:this.addLayer(n)},closeTooltip:function(n){return n&&this.removeLayer(n),this}});it.include({bindTooltip:function(n,t){return n instanceof vi?(a(n,t),this._tooltip=n,n._source=this):(this._tooltip&&!t||(this._tooltip=new vi(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),et&&(t.click=this._openTooltip));this[i](t);this._tooltipHandlersAdded=!n}},openTooltip:function(n,t){if(n instanceof it||(t=n,n=this),n instanceof ai)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&&(e(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&&(p(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:void 0)},_moveTooltip:function(n){var t,i,r=n.latlng;this._tooltip.options.sticky&&n.originalEvent&&(t=this._map.mouseEventToContainerPoint(n.originalEvent),i=this._map.containerPointToLayerPoint(t),r=this._map.layerPointToLatLng(i));this._tooltip.setLatLng(r)}});co=ur.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(n){var t=n&&"DIV"===n.tagName?n:document.createElement("div"),i=this.options,u;return(t.innerHTML=!1!==i.html?i.html:"",i.bgPos)&&(u=r(i.bgPos),t.style.backgroundPosition=-u.x+"px "+-u.y+"px"),this._setIconStyles(t,"icon"),t},createShadow:function(){return null}});ur.Default=nu;var lo=it.extend({options:{tileSize:256,opacity:1,updateWhenIdle:gi,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:void 0,maxNativeZoom:void 0,minNativeZoom:void 0,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(n){a(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();l(this._container);n._removeZoomLimit(this);this._container=null;this._tileZoom=null},bringToFront:function(){return this._map&&(pi(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(wi(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=uf(this._onMoveEnd,this.options.updateInterval,this)),n.move=this._onMove),this._zoomAnimated&&(n.zoomanim=this._animateZoom),n},createTile:function(){return document.createElement("div")},getTileSize:function(){var n=this.options.tileSize;return n instanceof t?n:new t(n,n)},_updateZIndex:function(){this._container&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(n){for(var r,u=this.getPane().children,t=-n(-1/0,1/0),i=0,f=u.length;i<f;i++)r=u[i].style.zIndex,u[i]!==this._container&&r&&(t=n(t,+r));isFinite(t)&&(this.options.zIndex=t+n(-1,1),this._updateZIndex())},_updateOpacity:function(){var u,n,t;if(this._map&&!di){ut(this._container,this.options.opacity);var f=+new Date,i=!1,r=!1;for(u in this._tiles)n=this._tiles[u],n.current&&n.loaded&&(t=Math.min(1,(f-n.loaded)/200),ut(n.el,t),t<1?i=!0:(n.active?r=!0:this._onOpaqueTile(n),n.active=!0));r&&!this._noPrune&&this._pruneTiles();i&&(ct(this._fadeFrame),this._fadeFrame=g(this._updateOpacity,this))}},_onOpaqueTile:d,_initContainer:function(){this._container||(this._container=f("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var i=this._tileZoom,u=this.options.maxZoom,t,n,r;if(void 0!==i){for(t in this._levels)this._levels[t].el.children.length||t===i?(this._levels[t].el.style.zIndex=u-Math.abs(i-t),this._onUpdateLevel(t)):(l(this._levels[t].el),this._removeTilesAtZoom(t),this._onRemoveLevel(t),delete this._levels[t]);return n=this._levels[i],r=this._map,n||((n=this._levels[i]={}).el=f("div","leaflet-tile-container leaflet-zoom-animated",this._container),n.el.style.zIndex=u,n.origin=r.project(r.unproject(r.getPixelOrigin()),i).round(),n.zoom=i,this._setZoomTransform(n,r.getCenter(),r.getZoom()),n.el.offsetWidth,this._onCreateLevel(n)),this._level=n,n}},_onUpdateLevel:d,_onRemoveLevel:d,_onCreateLevel:d,_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();else{for(t in this._tiles)(i=this._tiles[t]).retain=i.current;for(t in this._tiles)(i=this._tiles[t]).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)l(this._levels[n].el),this._onRemoveLevel(n),delete this._levels[n];this._removeAllTiles();this._tileZoom=null},_retainParent:function(n,i,r,u){var o=Math.floor(n/2),s=Math.floor(i/2),e=r-1,h=new t(+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))},_retainChildren:function(n,i,r,u){for(var o,s,h,f,e=2*n;e<2*n+2;e++)for(o=2*i;o<2*i+2;o++)s=new t(e,o),s.z=r+1,h=this._tileCoordsToKey(s),f=this._tiles[h],f&&f.active?f.retain=!0:(f&&f.loaded&&(f.retain=!0),r+1<u&&this._retainChildren(e,o,r+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)},_clampZoom:function(n){var t=this.options;return void 0!==t.minNativeZoom&&n<t.minNativeZoom?t.minNativeZoom:void 0!==t.maxNativeZoom&&t.maxNativeZoom<n?t.maxNativeZoom:n},_setView:function(n,t,i,r){var u=this._clampZoom(Math.round(t)),f;(void 0!==this.options.maxZoom&&u>this.options.maxZoom||void 0!==this.options.minZoom&&u<this.options.minZoom)&&(u=void 0);f=this.options.updateWhenZooming&&u!==this._tileZoom;r&&!f||(this._tileZoom=u,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),void 0!==u&&this._update(n),i||this._pruneTiles(),this._noPrune=!!i);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 r=this._map.getZoomScale(i,n.zoom),u=n.origin.multiplyBy(r).subtract(this._map._getNewPixelOrigin(t,i)).round();ft?si(n.el,u,r):b(n.el,u)},_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,u=t._animatingZoom?Math.max(t._animateToZoom,t.getZoom()):t.getZoom(),f=t.getZoomScale(u,this._tileZoom),i=t.project(n,this._tileZoom).floor(),r=t.getSize().divideBy(2*f);return new v(i.subtract(r),i.add(r))},_update:function(n){var h=this._map,c,l,o,s,r,f,a;if(h&&(c=this._clampZoom(h.getZoom()),void 0===n&&(n=h.getCenter()),void 0!==this._tileZoom)){var p=this._getTiledPixelBounds(n),i=this._pxBoundsToTileRange(p),y=i.getCenter(),u=[],e=this.options.keepBuffer,w=new v(i.getBottomLeft().subtract([e,-e]),i.getTopRight().add([e,-e]));if(!(isFinite(i.min.x)&&isFinite(i.min.y)&&isFinite(i.max.x)&&isFinite(i.max.y)))throw new Error("Attempted to load an infinite number of tiles");for(l in this._tiles)o=this._tiles[l].coords,o.z===this._tileZoom&&w.contains(new t(o.x,o.y))||(this._tiles[l].current=!1);if(Math.abs(c-this._tileZoom)>1)this._setView(n,c);else{for(s=i.min.y;s<=i.max.y;s++)for(r=i.min.x;r<=i.max.x;r++)f=new t(r,s),f.z=this._tileZoom,this._isValidTile(f)&&(this._tiles[this._tileCoordsToKey(f)]||u.push(f));if(u.sort(function(n,t){return n.distanceTo(y)-t.distanceTo(y)}),0!==u.length){for(this._loading||(this._loading=!0,this.fire("loading")),a=document.createDocumentFragment(),r=0;r<u.length;r++)this._addTile(u[r],a);this._level.el.appendChild(a)}}}},_isValidTile:function(n){var i=this._map.options.crs,t,r;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?(r=this._tileCoordsToBounds(n),k(this.options.bounds).overlaps(r)):!0},_keyToBounds:function(n){return this._tileCoordsToBounds(this._keyToTileCoords(n))},_tileCoordsToBounds:function(n){var t=this._map,i=this.getTileSize(),r=n.scaleBy(i),f=r.add(i),u=new nt(t.unproject(r,n.z),t.unproject(f,n.z));return this.options.noWrap||t.wrapLatLngBounds(u),u},_tileCoordsToKey:function(n){return n.x+":"+n.y+":"+n.z},_keyToTileCoords:function(n){var i=n.split(":"),r=new t(+i[0],+i[1]);return r.z=+i[2],r},_removeTile:function(n){var t=this._tiles[n];t&&(l(t.el),delete this._tiles[n],this.fire("tileunload",{tile:t.el,coords:this._keyToTileCoords(n)}))},_initTile:function(n){e(n,"leaflet-tile");var t=this.getTileSize();n.style.width=t.x+"px";n.style.height=t.y+"px";n.onselectstart=d;n.onmousemove=d;di&&this.options.opacity<1&&ut(n,this.options.opacity);br&&!kr&&(n.style.WebkitBackfaceVisibility="hidden")},_addTile:function(n,t){var r=this._getTilePos(n),u=this._tileCoordsToKey(n),i=this.createTile(this._wrapCoords(n),c(this._tileReady,this,n));this._initTile(i);this.createTile.length<2&&g(c(this._tileReady,this,n,null,i));b(i,r);this._tiles[u]={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 r=this._tileCoordsToKey(n);(i=this._tiles[r])&&(i.loaded=+new Date,this._map._fadeAnimated?(ut(i.el,0),ct(this._fadeFrame),this._fadeFrame=g(this._updateOpacity,this)):(i.active=!0,this._pruneTiles()),t||(e(i.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:i.el,coords:n})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),di||!this._map._fadeAnimated?g(this._pruneTiles,this):setTimeout(c(this._pruneTiles,this),250)))}},_getTilePos:function(n){return n.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(n){var i=new t(this._wrapX?hr(n.x,this._wrapX):n.x,this._wrapY?hr(n.y,this._wrapY):n.y);return i.z=n.z,i},_pxBoundsToTileRange:function(n){var t=this.getTileSize();return new v(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}}),or=lo.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1},initialize:function(n,t){this._url=n;(t=a(this,t)).detectRetina&&fi&&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));"string"==typeof t.subdomains&&(t.subdomains=t.subdomains.split(""));br||this.on("tileunload",this._onTileRemove)},setUrl:function(n,t){return this._url=n,t||this.redraw(),this},createTile:function(n,t){var r=document.createElement("img");return i(r,"load",c(this._tileOnLoad,this,t,r)),i(r,"error",c(this._tileOnError,this,t,r)),this.options.crossOrigin&&(r.crossOrigin=""),r.alt="",r.setAttribute("role","presentation"),r.src=this.getTileUrl(n),r},getTileUrl:function(n){var t={r:fi?"@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),is(this._url,s(t,this.options))},_tileOnLoad:function(n,t){di?setTimeout(c(n,this,null,t),0):n(null,t)},_tileOnError:function(n,t,i){var r=this.options.errorTileUrl;r&&t.src!==r&&(t.src=r);n(i,t)},_onTileRemove:function(n){n.tile.onload=null},_getZoomForUrl:function(){var n=this._tileZoom,t=this.options.maxZoom,i=this.options.zoomReverse,r=this.options.zoomOffset;return i&&(n=t-n),n+r},_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).onload=d,n.onerror=d,n.complete||(n.src=th,l(n)))}}),gh=or.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,r;this._url=n;i=s({},this.defaultWmsParams);for(r in t)r in this.options||(i[r]=t[r]);t=a(this,t);i.width=i.height=t.tileSize*(t.detectRetina&&fi?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;or.prototype.onAdd.call(this,n)},getTileUrl:function(n){var r=this._tileCoordsToBounds(n),t=this._crs.project(r.getNorthWest()),i=this._crs.project(r.getSouthEast()),f=(this._wmsVersion>=1.3&&this._crs===bh?[i.y,t.x,t.y,i.x]:[t.x,i.y,i.x,t.y]).join(","),u=or.prototype.getTileUrl.call(this,n);return u+ts(this.wmsParams,u,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+f},setParams:function(n,t){return s(this.wmsParams,n),t||this.redraw(),this}});or.WMS=gh;ds.wms=function(n,t){return new gh(n,t)};var yt=it.extend({options:{padding:.1},initialize:function(n){a(this,n);o(this);this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),this._zoomAnimated&&e(this._container,"leaflet-zoom-animated"));this.getPane().appendChild(this._container);this._update();this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this);this._destroyContainer()},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),f=hi(this._container),r=this._map.getSize().multiplyBy(.5+this.options.padding),e=this._map.project(this._center,t),o=this._map.project(n,t).subtract(e),u=r.multiplyBy(-i).add(f).add(r).subtract(o);ft?si(this._container,u,i):b(this._container,u)},_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 v(i,i.add(t.multiplyBy(1+2*n)).round());this._center=this._map.getCenter();this._zoom=this._map.getZoom()}}),ao=yt.extend({getEvents:function(){var n=yt.prototype.getEvents.call(this);return n.viewprereset=this._onViewPreReset,n},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){yt.prototype.onAdd.call(this);this._draw()},_initContainer:function(){var n=this._container=document.createElement("canvas");i(n,"mousemove",uf(this._onMouseMove,32,this),this);i(n,"click dblclick mousedown mouseup contextmenu",this._onClick,this);i(n,"mouseout",this._handleMouseOut,this);this._ctx=n.getContext("2d")},_destroyContainer:function(){delete this._ctx;l(this._container);w(this._container);delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){this._redrawBounds=null;for(var n in this._layers)this._layers[n]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){this._drawnLayers={};yt.prototype._update.call(this);var t=this._bounds,n=this._container,i=t.getSize(),r=fi?2:1;b(n,t.min);n.width=r*i.x;n.height=r*i.y;n.style.width=i.x+"px";n.style.height=i.y+"px";fi&&this._ctx.scale(2,2);this._ctx.translate(-t.min.x,-t.min.y);this.fire("update")}},_reset:function(){yt.prototype._reset.call(this);this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(n){this._updateDashArray(n);this._layers[o(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 r=n._order,t=r.next,i=r.prev;t?t.prev=i:this._drawLast=i;i?i.next=t:this._drawFirst=t;delete n._order;delete this._layers[L.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||g(this._redraw,this))},_extendRedrawBounds:function(n){if(n._pxBounds){var t=(n.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new v;this._redrawBounds.extend(n._pxBounds.min.subtract([t,t]));this._redrawBounds.extend(n._pxBounds.max.add([t,t]))}},_redraw:function(){this._redrawRequest=null;this._redrawBounds&&(this._redrawBounds.min._floor(),this._redrawBounds.max._ceil());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 i,r,o,f,e=n._parts,s=e.length,u=this._ctx;if(s){for(this._drawnLayers[n._leaflet_id]=n,u.beginPath(),i=0;i<s;i++){for(r=0,o=e[i].length;r<o;r++)f=e[i][r],u[r?"lineTo":"moveTo"](f.x,f.y);t&&u.closePath()}this._fillStroke(u,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;1!==i&&(t.save(),t.scale(1,i));t.beginPath();t.arc(u.x,u.y/i,r,0,2*Math.PI,!1);1!==i&&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&&0!==i.weight&&(n.setLineDash&&n.setLineDash(t.options&&t.options._dashArray||[]),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 t,r,u=this._map.mouseEventToLayerPoint(n),i=this._drawFirst;i;i=i.next)(t=i.layer).options.interactive&&t._containsPoint(u)&&!this._map._draggableMoved(t)&&(r=t);r&&(lf(n),this._fireEvent([r],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&&(p(this._container,"leaflet-interactive"),this._fireEvent([t],n,"mouseout"),this._hoveredLayer=null)},_handleMouseHover:function(n,t){for(var u,i,r=this._drawFirst;r;r=r.next)(u=r.layer).options.interactive&&u._containsPoint(t)&&(i=u);i!==this._hoveredLayer&&(this._handleMouseOut(n),i&&(e(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;i&&(i.prev=r,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;i&&(i.next=r,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))}}),iu=function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(n){return document.createElement("<lvml:"+n+' class="lvml">')}}catch(n){return function(n){return document.createElement("<"+n+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}}(),ll={_initContainer:function(){this._container=f("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(yt.prototype._update.call(this),this.fire("update"))},_initPath:function(n){var t=n._container=iu("shape");e(t,"leaflet-vml-shape "+(this.options.className||""));t.coordsize="1 1";n._path=iu("path");t.appendChild(n._path);this._updateStyle(n);this._layers[o(n)]=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;l(t);n.removeInteractiveTarget(t);delete this._layers[o(n)]},_updateStyle:function(n){var i=n._stroke,r=n._fill,t=n.options,u=n._container;u.stroked=!!t.stroke;u.filled=!!t.fill;t.stroke?(i||(i=n._stroke=iu("stroke")),u.appendChild(i),i.weight=t.weight+"px",i.color=t.color,i.opacity=t.opacity,i.dashStyle=t.dashArray?at(t.dashArray)?t.dashArray.join(" "):t.dashArray.replace(/( *, *)/g," "):"",i.endcap=t.lineCap.replace("butt","flat"),i.joinstyle=t.lineJoin):i&&(u.removeChild(i),n._stroke=null);t.fill?(r||(r=n._fill=iu("fill")),u.appendChild(r),r.color=t.fillColor||t.color,r.opacity=t.fillOpacity):r&&(u.removeChild(r),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){pi(n._container)},_bringToBack:function(n){wi(n._container)}},rf=wu?iu:fs,sr=yt.extend({getEvents:function(){var n=yt.prototype.getEvents.call(this);return n.zoomstart=this._onZoomStart,n},_initContainer:function(){this._container=rf("svg");this._container.setAttribute("pointer-events","none");this._rootGroup=rf("g");this._container.appendChild(this._rootGroup)},_destroyContainer:function(){l(this._container);w(this._container);delete this._container;delete this._rootGroup},_onZoomStart:function(){this._update()},_update:function(){if(!this._map._animatingZoom||!this._bounds){yt.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));b(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=rf("path");n.options.className&&e(t,n.options.className);n.options.interactive&&e(t,"leaflet-interactive");this._updateStyle(n);this._layers[o(n)]=n},_addPath:function(n){this._rootGroup||this._initContainer();this._rootGroup.appendChild(n._path);n.addInteractiveTarget(n._path)},_removePath:function(n){l(n._path);n.removeInteractiveTarget(n._path);delete this._layers[o(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,es(n._parts,t))},_updateCircle:function(n){var i=n._point,t=n._radius,r="a"+t+","+(n._radiusY||t)+" 0 1,0 ",u=n._empty()?"M0 0":"M"+(i.x-t)+","+i.y+r+2*t+",0 "+r+2*-t+",0 ";this._setPath(n,u)},_setPath:function(n,t){n._path.setAttribute("d",t)},_bringToFront:function(n){pi(n._path)},_bringToBack:function(n){wi(n._path)}});wu&&sr.include(ll);u.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&&ie()||re()),this.hasLayer(t)||this.addLayer(t),t},_getPaneRenderer:function(n){if("overlayPane"===n||void 0===n)return!1;var t=this._paneRenderers[n];return void 0===t&&(t=sr&&re({pane:n})||ao&&ie({pane:n}),this._paneRenderers[n]=t),t}});vo=fr.extend({initialize:function(n,t){fr.prototype.initialize.call(this,this._boundsToLatLngs(n),t)},setBounds:function(n){return this.setLatLngs(this._boundsToLatLngs(n))},_boundsToLatLngs:function(n){return n=k(n),[n.getSouthWest(),n.getNorthWest(),n.getNorthEast(),n.getSouthEast()]}});sr.create=rf;sr.pointsToPath=es;ni.geometryToLayer=gf;ni.coordsToLatLng=ne;ni.coordsToLatLngs=hu;ni.latLngToCoords=te;ni.latLngsToCoords=cu;ni.getFeature=bi;ni.asFeature=lu;u.mergeOptions({boxZoom:!0});yo=dt.extend({initialize:function(n){this._map=n;this._container=n._container;this._pane=n._panes.overlayPane;this._resetStateTimeout=0;n.on("unload",this._destroy,this)},addHooks:function(){i(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){w(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){l(this._pane);delete this._pane},_resetState:function(){this._resetStateTimeout=0;this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(n){if(!n.shiftKey||1!==n.which&&1!==n.button)return!1;this._clearDeferredResetState();this._resetState();yr();wf();this._startPoint=this._map.mouseEventToContainerPoint(n);i(document,{contextmenu:lt,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(n){this._moved||(this._moved=!0,this._box=f("div","leaflet-zoom-box",this._container),e(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart"));this._point=this._map.mouseEventToContainerPoint(n);var t=new v(this._point,this._startPoint),i=t.getSize();b(this._box,t.min);this._box.style.width=i.x+"px";this._box.style.height=i.y+"px"},_finish:function(){this._moved&&(l(this._box),p(this._container,"leaflet-crosshair"));pr();bf();w(document,{contextmenu:lt,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(n){if((1===n.which||1===n.button)&&(this._finish(),this._moved)){this._clearDeferredResetState();this._resetStateTimeout=setTimeout(c(this._resetState,this),0);var t=new nt(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(t).fire("boxzoomend",{boxZoomBounds:t})}},_onKeyDown:function(n){27===n.keyCode&&this._finish()}});u.addInitHook("addHandler","boxZoom",yo);u.mergeOptions({doubleClickZoom:!0});po=dt.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;"center"===t.options.doubleClickZoom?t.setZoom(u):t.setZoomAround(n.containerPoint,u)}});u.addInitHook("addHandler","doubleClickZoom",po);u.mergeOptions({dragging:!0,inertia:!kr,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});wo=dt.extend({addHooks:function(){if(!this._draggable){var n=this._map;this._draggable=new li(n._mapPane,n._container);this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this);this._draggable.on("predrag",this._onPreDragLimit,this);n.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),n.on("zoomend",this._onZoomEnd,this),n.whenReady(this._onZoomEnd,this))}e(this._map._container,"leaflet-grab leaflet-touch-drag");this._draggable.enable();this._positions=[];this._times=[]},removeHooks:function(){p(this._map._container,"leaflet-grab");p(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},_onDragStart:function(){var n=this._map,t;(n._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity)?(t=k(this._map.options.maxBounds),this._offsetLimit=ii(this._map.latLngToContainerPoint(t.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(t.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))):this._offsetLimit=null;n.fire("movestart").fire("dragstart");n.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,r=t.options,h=!r.inertia||this._times.length<2;if(t.fire("dragend",n),h)t.fire("moveend");else{var c=this._lastPos.subtract(this._positions[0]),l=(this._lastTime-this._times[0])/1e3,u=r.easeLinearity,f=c.multiplyBy(u/l),e=f.distanceTo([0,0]),o=Math.min(r.inertiaMaxSpeed,e),a=f.multiplyBy(o/e),s=o/(r.inertiaDeceleration*u),i=a.multiplyBy(-s/2).round();i.x||i.y?(i=t._limitOffset(i,t.options.maxBounds),g(function(){t.panBy(i,{duration:s,easeLinearity:u,noMoveStart:!0,animate:!0})})):t.fire("moveend")}}});u.addInitHook("addHandler","dragging",wo);u.mergeOptions({keyboard:!0,keyboardPanDelta:80});bo=dt.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");i(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();w(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 n=document.body,t=document.documentElement,i=n.scrollTop||t.scrollTop,r=n.scrollLeft||t.scrollLeft;this._map._container.focus();window.scrollTo(r,i)}},_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={},r=this.keyCodes,t=0,i=r.left.length;t<i;t++)u[r.left[t]]=[-1*n,0];for(t=0,i=r.right.length;t<i;t++)u[r.right[t]]=[n,0];for(t=0,i=r.down.length;t<i;t++)u[r.down[t]]=[0,n];for(t=0,i=r.up.length;t<i;t++)u[r.up[t]]=[0,-1*n]},_setZoomDelta:function(n){for(var u=this._zoomKeys={},r=this.keyCodes,t=0,i=r.zoomIn.length;t<i;t++)u[r.zoomIn[t]]=n;for(t=0,i=r.zoomOut.length;t<i;t++)u[r.zoomOut[t]]=-n},_addHooks:function(){i(document,"keydown",this._onKeyDown,this)},_removeHooks:function(){w(document,"keydown",this._onKeyDown,this)},_onKeyDown:function(n){if(!(n.altKey||n.ctrlKey||n.metaKey)){var u,i=n.keyCode,t=this._map;if(i in this._panKeys){if(t._panAnim&&t._panAnim._inProgress)return;u=this._panKeys[i];n.shiftKey&&(u=r(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(27!==i||!t._popup)return;t.closePopup()}lt(n)}}});u.addInitHook("addHandler","keyboard",bo);u.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});ko=dt.extend({addHooks:function(){i(this._map._container,"mousewheel",this._onWheelScroll,this);this._delta=0},removeHooks:function(){w(this._map._container,"mousewheel",this._onWheelScroll,this)},_onWheelScroll:function(n){var i=ls(n),r=this._map.options.wheelDebounceTime,t;this._delta+=i;this._lastMousePos=this._map.mouseEventToContainerPoint(n);this._startTime||(this._startTime=+new Date);t=Math.max(r-(+new Date-this._startTime),0);clearTimeout(this._timer);this._timer=setTimeout(c(this._performZoom,this),t);lt(n)},_performZoom:function(){var n=this._map,t=n.getZoom(),i=this._map.options.zoomSnap||0;n._stop();var e=this._delta/(4*this._map.options.wheelPxPerZoomLevel),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&&("center"===n.options.scrollWheelZoom?n.setZoom(t+r):n.setZoomAround(this._lastMousePos,t+r))}});u.addInitHook("addHandler","scrollWheelZoom",ko);u.mergeOptions({tap:!0,tapTolerance:15});go=dt.extend({addHooks:function(){i(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){w(this._map._container,"touchstart",this._onDown,this)},_onDown:function(n){if(n.touches){if(rt(n),this._fireClick=!0,n.touches.length>1)return this._fireClick=!1,void clearTimeout(this._holdTimeout);var r=n.touches[0],u=r.target;this._startPos=this._newPos=new t(r.clientX,r.clientY);u.tagName&&"a"===u.tagName.toLowerCase()&&e(u,"leaflet-active");this._holdTimeout=setTimeout(c(function(){this._isTapValid()&&(this._fireClick=!1,this._onUp(),this._simulateEvent("contextmenu",r))},this),1e3);this._simulateEvent("mousedown",r);i(document,{touchmove:this._onMove,touchend:this._onUp},this)}},_onUp:function(n){if(clearTimeout(this._holdTimeout),w(document,{touchmove:this._onMove,touchend:this._onUp},this),this._fireClick&&n&&n.changedTouches){var i=n.changedTouches[0],t=i.target;t&&t.tagName&&"a"===t.tagName.toLowerCase()&&p(t,"leaflet-active");this._simulateEvent("mouseup",i);this._isTapValid()&&this._simulateEvent("click",i)}},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_onMove:function(n){var i=n.touches[0];this._newPos=new t(i.clientX,i.clientY);this._simulateEvent("mousemove",i)},_simulateEvent:function(n,t){var i=document.createEvent("MouseEvents");i._simulated=!0;t.target._simulatedClick=!0;i.initMouseEvent(n,!0,!0,window,1,t.screenX,t.screenY,t.clientX,t.clientY,!1,!1,!1,!1,0,null);t.target.dispatchEvent(i)}});et&&!vt&&u.addInitHook("addHandler","tap",go);u.mergeOptions({touchZoom:et&&!kr,bounceAtZoomLimits:!0});ns=dt.extend({addHooks:function(){e(this._map._container,"leaflet-touch-zoom");i(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){p(this._map._container,"leaflet-touch-zoom");w(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(n){var t=this._map,r,u;!n.touches||2!==n.touches.length||t._animatingZoom||this._zooming||(r=t.mouseEventToContainerPoint(n.touches[0]),u=t.mouseEventToContainerPoint(n.touches[1]),this._centerPoint=t.getSize()._divideBy(2),this._startLatLng=t.containerPointToLatLng(this._centerPoint),"center"!==t.options.touchZoom&&(this._pinchStartLatLng=t.containerPointToLatLng(r.add(u)._divideBy(2))),this._startDist=r.distanceTo(u),this._startZoom=t.getZoom(),this._moved=!1,this._zooming=!0,t._stop(),i(document,"touchmove",this._onTouchMove,this),i(document,"touchend",this._onTouchEnd,this),rt(n))},_onTouchMove:function(n){var r,e;if(n.touches&&2===n.touches.length&&this._zooming){var t=this._map,u=t.mouseEventToContainerPoint(n.touches[0]),f=t.mouseEventToContainerPoint(n.touches[1]),i=u.distanceTo(f)/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)),"center"===t.options.touchZoom){if(this._center=this._startLatLng,1===i)return}else{if(r=u._add(f)._divideBy(2)._subtract(this._centerPoint),1===i&&0===r.x&&0===r.y)return;this._center=t.unproject(t.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(t._moveStart(!0),this._moved=!0);ct(this._animRequest);e=c(t._move,t,this._center,this._zoom,{pinch:!0,round:!1});this._animRequest=g(e,this,!0);rt(n)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,ct(this._animRequest),w(document,"touchmove",this._onTouchMove),w(document,"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))):this._zooming=!1}});u.addInitHook("addHandler","touchZoom",ns);u.BoxZoom=yo;u.DoubleClickZoom=po;u.Drag=wo;u.Keyboard=bo;u.ScrollWheelZoom=ko;u.Tap=go;u.TouchZoom=ns;nc=window.L;window.L=n;Object.freeze=gs;n.version="1.2.0+HEAD.1ac320b";n.noConflict=function(){return window.L=nc,this};n.Control=st;n.control=gr;n.Browser=gc;n.Evented=ki;n.Mixin=ul;n.Util=pc;n.Class=pt;n.Handler=dt;n.extend=s;n.bind=c;n.stamp=o;n.setOptions=a;n.DomEvent=il;n.DomUtil=rl;n.PosAnimation=vh;n.Draggable=li;n.LineUtil=fl;n.PolyUtil=el;n.Point=t;n.point=r;n.Bounds=v;n.bounds=ii;n.Transformation=of;n.transformation=cr;n.Projection=ol;n.LatLng=h;n.latLng=y;n.LatLngBounds=nt;n.latLngBounds=k;n.CRS=kt;n.GeoJSON=ni;n.geoJSON=ks;n.geoJson=cl;n.Layer=it;n.LayerGroup=rr;n.layerGroup=function(n){return new rr(n)};n.FeatureGroup=ai;n.featureGroup=function(n){return new ai(n)};n.ImageOverlay=ho;n.imageOverlay=function(n,t,i){return new ho(n,t,i)};n.VideoOverlay=dh;n.videoOverlay=function(n,t,i){return new dh(n,t,i)};n.DivOverlay=ti;n.Popup=er;n.popup=function(n,t){return new er(n,t)};n.Tooltip=vi;n.tooltip=function(n,t){return new vi(n,t)};n.Icon=ur;n.icon=function(n){return new ur(n)};n.DivIcon=co;n.divIcon=function(n){return new co(n)};n.Marker=tu;n.marker=function(n,t){return new tu(n,t)};n.TileLayer=or;n.tileLayer=ds;n.GridLayer=lo;n.gridLayer=function(n){return new lo(n)};n.SVG=sr;n.svg=re;n.Renderer=yt;n.Canvas=ao;n.canvas=ie;n.Path=ei;n.CircleMarker=tf;n.circleMarker=function(n,t){return new tf(n,t)};n.Circle=oo;n.circle=function(n,t,i){return new oo(n,t,i)};n.Polyline=gt;n.polyline=function(n,t){return new gt(n,t)};n.Polygon=fr;n.polygon=function(n,t){return new fr(n,t)};n.Rectangle=vo;n.rectangle=function(n,t){return new vo(n,t)};n.Map=u;n.map=function(n,t){return new u(n,t)}});!function(n){"use strict";var t,i,r;n.module("ui-leaflet",["nemLogging"]).directive("leaflet",["$q","leafletData","leafletMapDefaults","leafletHelpers","leafletMapEvents",function(n,t,i,r,u){return{restrict:"EA",replace:!0,scope:{center:"=",lfCenter:"=",defaults:"=",maxbounds:"=",bounds:"=",markers:"=",legend:"=",geojson:"=",paths:"=",tiles:"=",layers:"=",controls:"=",decorations:"=",eventBroadcast:"=",watchOptions:"=",id:"@"},transclude:!0,template:'<div class="angular-leaflet-map"><div ng-transclude><\/div><\/div>',controller:["$scope",function(t){this._leafletMap=n.defer();this.getMap=function(){return this._leafletMap.promise};this.getLeafletScope=function(){return t}}],link:function(n,f,e,o){function a(){isNaN(e.width)?f.css("width",e.width):f.css("width",e.width+"px")}function v(){isNaN(e.height)?f.css("height",e.height):f.css("height",e.height+"px")}var h=r.isDefined,c=i.setDefaults(n.defaults,e.id),p=u.getAvailableMapEvents(),w=u.addEvents,s,l,y;n.mapId=e.id;t.setDirectiveControls({},e.id);s=new L.Map(f[0],i.getMapCreationDefaults(e.id));(o._leafletMap.resolve(s),h(e.width)&&(a(),n.$watch(function(){return f[0].getAttribute("width")},function(){a();s.invalidateSize()})),h(e.height)&&(v(),n.$watch(function(){return f[0].getAttribute("height")},function(){v();s.invalidateSize()})),h(e.center)||h(e.lfCenter)||s.setView([c.center.lat,c.center.lng],c.center.zoom),h(e.tiles)||h(e.layers))||(l=L.tileLayer(c.tileLayer,c.tileLayerOptions),l.addTo(s),t.setTiles(l,e.id));(h(s.zoomControl)&&h(c.zoomControlPosition)&&s.zoomControl.setPosition(c.zoomControlPosition),h(s.zoomControl)&&c.zoomControl===!1&&s.zoomControl.removeFrom(s),h(s.zoomsliderControl)&&h(c.zoomsliderControl)&&c.zoomsliderControl===!1&&s.zoomsliderControl.removeFrom(s),h(e.eventBroadcast))||(y="broadcast",w(s,e.id,p,"eventName",n,y));s.whenReady(function(){t.setMap(s,e.id)});n.$on("$destroy",function(){i.reset();s.remove();t.unresolveMap(e.id)});n.$on("invalidateSize",function(){s.invalidateSize()})}}}]),function(){n.module("ui-leaflet").factory("eventManager",[function(){var n=function(){this.listeners={}};return n.prototype={addEventListener:function(n,t,i){for(var r=[],f=arguments.length,u=0;u<f;u++)r.push(arguments[u]);r=r.length>3?r.splice(3,r.length-1):[];"undefined"!=typeof this.listeners[n]?this.listeners[n].push({scope:i,callback:t,args:r}):this.listeners[n]=[{scope:i,callback:t,args:r}]},removeEventListener:function(n,t,i){var r;if("undefined"!=typeof this.listeners[n]){for(var e=this.listeners[n].length,f=[],u=0;u<e;u++)r=this.listeners[n][u],r.scope===i&&r.callback===t||f.push(r);this.listeners[n]=f}},hasEventListener:function(n,t,i){var u,r,f;if("undefined"!=typeof this.listeners[n]){if(u=this.listeners[n].length,void 0===t&&void 0===i)return u>0;for(r=0;r<u;r++)if(f=this.listeners[n][r],(!i||f.scope===i)&&f.callback===t)return!0}return!1},dispatch:function(n,t){for(var e,u,r,o,s=0,h={type:n,target:t},i=[],c=arguments.length,f=0;f<c;f++)i.push(arguments[f]);if(i=i.length>2?i.splice(2,i.length-1):[],i=[h].concat(i),"undefined"!=typeof this.listeners[n])for(e=this.listeners[n].length,u=0;u<e;u++)r=this.listeners[n][u],r&&r.callback&&(o=i.concat(r.args),r.callback.apply(r.scope,o),s+=1)},getEvents:function(){var r="",n,u,t,i;for(n in this.listeners)for(u=this.listeners[n].length,t=0;t<u;t++)i=this.listeners[n][t],r+=i.scope&&i.scope.className?i.scope.className:"anonymous",r+=" listen for '"+n+"'\n";return r}},n}]).service("eventManager",["EventManager",function(n){return new n}])}();n.module("ui-leaflet").factory("leafletBoundsHelpers",["leafletLogger","leafletHelpers",function(t,i){function f(t){return n.isDefined(t)&&n.isDefined(t.southWest)&&n.isDefined(t.northEast)&&n.isNumber(t.southWest.lat)&&n.isNumber(t.southWest.lng)&&n.isNumber(t.northEast.lat)&&n.isNumber(t.northEast.lng)}var u=i.isArray,r=i.isNumber,e=i.isFunction,s=i.isDefined,o=t;return{createLeafletBounds:function(n){if(f(n))return L.latLngBounds([n.southWest.lat,n.southWest.lng],[n.northEast.lat,n.northEast.lng])},isValidBounds:f,createBoundsFromArray:function(n){return u(n)&&2===n.length&&u(n[0])&&u(n[1])&&2===n[0].length&&2===n[1].length&&r(n[0][0])&&r(n[0][1])&&r(n[1][0])&&r(n[1][1])?{northEast:{lat:n[0][0],lng:n[0][1]},southWest:{lat:n[1][0],lng:n[1][1]}}:void o.error("[AngularJS - Leaflet] The bounds array is not valid.")},createBoundsFromLeaflet:function(n){if(!(s(n)&&e(n.getNorthEast)&&e(n.getSouthWest)))return void o.error("[AngularJS - Leaflet] The leaflet bounds is not valid object.");var t=n.getNorthEast(),i=n.getSouthWest();return{northEast:{lat:t.lat,lng:t.lng},southWest:{lat:i.lat,lng:i.lng}}}}}]);n.module("ui-leaflet").factory("leafletControlHelpers",["$rootScope","leafletLogger","leafletHelpers","leafletLayerHelpers","leafletMapDefaults",function(t,i,r,u,f){var e=r.isDefined,l=r.isObject,a=r.get,y=u.createLayer,h={},o=r.errorHeader+" [Controls] ",s=i,v=function(n,t,i){var u=f.getDefaults(i),r;return a(u,"controls.layers.visible")?(r=!1,l(n)&&Object.keys(n).forEach(function(t){var i=n[t];e(i.layerOptions)&&i.layerOptions.showOnSelector===!1||(r=!0)}),l(t)&&Object.keys(t).forEach(function(n){var i=t[n];e(i.layerParams)&&i.layerParams.showOnSelector===!1||(r=!0)}),r):!1},p=function(t){var i=f.getDefaults(t),r={collapsed:i.controls.layers.collapsed,position:i.controls.layers.position,autoZIndex:!1};return n.extend(r,i.controls.layers.options),a(i,"controls.layers.control")?i.controls.layers.control.apply(this,[[],[],r]):new L.control.layers([],[],r)},c={draw:{isPluginLoaded:function(){return!!n.isDefined(L.Control.Draw)||(s.error(o+" Draw plugin is not loaded."),!1)},checkValidParams:function(){return!0},createControl:function(n){return new L.Control.Draw(n)}},scale:{isPluginLoaded:function(){return!0},checkValidParams:function(){return!0},createControl:function(n){return new L.control.scale(n)}},fullscreen:{isPluginLoaded:function(){return!!n.isDefined(L.Control.Fullscreen)||(s.error(o+" Fullscreen plugin is not loaded."),!1)},checkValidParams:function(){return!0},createControl:function(n){return new L.Control.Fullscreen(n)}},search:{isPluginLoaded:function(){return!!n.isDefined(L.Control.Search)||(s.error(o+" Search plugin is not loaded."),!1)},checkValidParams:function(){return!0},createControl:function(n){return new L.Control.Search(n)}},custom:{},minimap:{isPluginLoaded:function(){return!!n.isDefined(L.Control.MiniMap)||(s.error(o+" Minimap plugin is not loaded."),!1)},checkValidParams:function(n){return!!e(n.layer)||(s.warn(o+' minimap "layer" option should be defined.'),!1)},createControl:function(n){var t=y(n.layer);return e(t)?new L.Control.MiniMap(t,n):void s.warn(o+' minimap control "layer" could not be created.')}}};return{layersControlMustBeVisible:v,isValidControlType:function(n){return Object.keys(c).indexOf(n)!==-1},createControl:function(n,t){if(c[n].checkValidParams(t))return c[n].createControl(t)},updateLayersControl:function(n,t,i,r,u,f){var o,s=h[t],c=v(r,u,t),l,a;if(e(s)&&i){for(o in f.baselayers)s.removeLayer(f.baselayers[o]);for(o in f.overlays)s.removeLayer(f.overlays[o]);n.removeControl(s);delete h[t]}if(c){s=p(t);h[t]=s;for(o in r)l=e(r[o].layerOptions)&&r[o].layerOptions.showOnSelector===!1,!l&&e(f.baselayers[o])&&s.addBaseLayer(f.baselayers[o],r[o].name);for(o in u)a=e(u[o].layerParams)&&u[o].layerParams.showOnSelector===!1,!a&&e(f.overlays[o])&&s.addOverlay(f.overlays[o],u[o].name);n.addControl(s)}return c},destroyMapLayersControl:function(n){delete h[n]}}}]);n.module("ui-leaflet").service("leafletData",["leafletLogger","$q","leafletHelpers",function(n,t,i){var e=i.getDefer,o=i.getUnresolvedDefer,s=i.setResolvedDefer,r={},f=this,h=function(n){return n.charAt(0).toUpperCase()+n.slice(1)},u=["map","tiles","layers","paths","markers","geoJSON","UTFGrid","decorations","directiveControls"];u.forEach(function(n){r[n]={}});this.unresolveMap=function(n){var t=i.obtainEffectiveMapId(r.map,n);u.forEach(function(n){r[n][t]=void 0})};u.forEach(function(n){var t=h(n);f["set"+t]=function(t,i){var u=o(r[n],i);u.resolve(t);s(r[n],i)};f["get"+t]=function(t){var i=e(r[n],t);return i.promise}})}]);n.module("ui-leaflet").service("leafletDirectiveControlsHelpers",["leafletLogger","leafletData","leafletHelpers",function(t,i,r){var u=r.isDefined,e=r.isString,o=r.isObject,s=r.errorHeader,f=t,h=s+"[leafletDirectiveControlsHelpers",c=function(t,r,s,c){var a=h+".extend] ",l={};if(!u(r))return void f.error(a+"thingToAddName cannot be undefined");if(e(r)&&u(s)&&u(c))l[r]={create:s,clean:c};else{if(!o(r)||u(s)||u(c))return void f.error(a+"incorrect arguments");l=r}i.getDirectiveControls(t).then(function(r){n.extend(r,l);i.setDirectiveControls(r,t)})};return{extend:c}}]);n.module("ui-leaflet").service("leafletGeoJsonHelpers",["leafletHelpers","leafletIterators",function(t,i){var r=t,e=i,u=function(n,t){return this.lat=n,this.lng=t,this},o=function(n){return Array.isArray(n)&&2===n.length?n[1]:r.isDefined(n.type)&&"Point"===n.type?+n.coordinates[1]:+n.lat},s=function(n){return Array.isArray(n)&&2===n.length?n[0]:r.isDefined(n.type)&&"Point"===n.type?+n.coordinates[0]:+n.lng},f=function(n){if(r.isUndefined(n))return!1;if(r.isArray(n)){if(2===n.length&&r.isNumber(n[0])&&r.isNumber(n[1]))return!0}else if(r.isDefined(n.type)&&"Point"===n.type&&r.isArray(n.coordinates)&&2===n.coordinates.length&&r.isNumber(n.coordinates[0])&&r.isNumber(n.coordinates[1]))return!0;return e.all(["lat","lng"],function(t){return r.isDefined(n[t])&&r.isNumber(n[t])})},h=function(t){if(t&&f(t)){var i=null;if(Array.isArray(t)&&2===t.length)i=new u(t[1],t[0]);else{if(!r.isDefined(t.type)||"Point"!==t.type)return t;i=new u(t.coordinates[1],t.coordinates[0])}return n.extend(t,i)}};return{getLat:o,getLng:s,validateCoords:f,getCoords:h}}]);n.module("ui-leaflet").service("leafletHelpers",["$q","$log","$timeout",function(t,i,r){function u(t,i){var r,u=Object.keys(t);if(n.isDefined(i))r=i;else{if(0!==u.length&&(1!==u.length||"main"!==u[0]))throw new Error(f+"- You have more than 1 map on the DOM, you must provide the map ID to the leafletData.getXXX call. Where one of the following mapIds "+Object.keys(t).join(",")+" are available.");r="main"}return r}function o(i,r){var f,e=u(i,r);return n.isDefined(i[e])&&i[e].resolvedDefer!==!0?f=i[e].defer:(f=t.defer(),i[e]={defer:f,resolvedDefer:!1}),f}var f="[ui-leaflet] ",s=n.copy,a=s,h=function(n,t){if(n){t=t.split(".");for(var i=n[t.shift()];i&&t.length;)i=i[t.shift()];return i}},v=function(n){return n.split(".").reduce(function(n,t){return n+'["'+t+'"]'})},y=function(n){return n.reduce(function(n,t){return n+"."+t})},e=function(t){return n.isDefined(t)&&null!==t},p=function(n){return!e(n)},w=/([\:\-\_]+(.))/g,b=/^moz([A-Z])/,k=/^((?:x|data)[\:\-_])/i,c=function(n){return n.replace(w,function(n,t,i,r){return r?i.toUpperCase():i}).replace(b,"Moz$1")},d=function(n){return c(n.replace(k,""))},l=10,g=function(n,t,i){if(!n)throw new Error(f+"trapObj is undefined");if(!t)throw new Error(f+"trapField is undefined");n[t]=!0;var u=i();return r(function(){n[t]=!1},l),u};return{watchTrapDelayMilliSec:l,modelChangeInDirective:g,camelCase:c,directiveNormalize:d,copy:s,clone:a,errorHeader:f,getObjectValue:h,get:h,getObjectArrayPath:v,getObjectDotPath:y,defaultTo:function(n,t){return e(n)?n:t},isTruthy:function(n){return"true"===n||n===!0},isEmpty:function(n){return 0===Object.keys(n).length},isUndefinedOrEmpty:function(t){return n.isUndefined(t)||null===t||0===Object.keys(t).length},isDefined:e,isUndefined:p,isNumber:n.isNumber,isString:n.isString,isArray:n.isArray,isObject:n.isObject,isFunction:n.isFunction,equals:n.equals,isValidCenter:function(t){return n.isDefined(t)&&n.isNumber(t.lat)&&n.isNumber(t.lng)&&n.isNumber(t.zoom)},isValidPoint:function(t){return!!n.isDefined(t)&&(n.isArray(t)?2===t.length&&n.isNumber(t[0])&&n.isNumber(t[1]):n.isNumber(t.lat)&&n.isNumber(t.lng))},isSameCenterOnMap:function(n,t){var i=t.getCenter(),r=t.getZoom();return!(!n.lat||!n.lng||i.lat.toFixed(4)!==n.lat.toFixed(4)||i.lng.toFixed(4)!==n.lng.toFixed(4)||r!==n.zoom)},safeApply:function(n,t){var i=n.$root.$$phase;"$apply"===i||"$digest"===i?n.$eval(t):n.$evalAsync(t)},obtainEffectiveMapId:u,getDefer:function(t,i){var r=u(t,i);return n.isDefined(t[r])&&t[r].resolvedDefer!==!1?t[r].defer:o(t,i)},getUnresolvedDefer:o,setResolvedDefer:function(n,t){var i=u(n,t);n[i].resolvedDefer=!0},rangeIsSupported:function(){var n=document.createElement("input");return n.setAttribute("type","range"),"range"===n.type},FullScreenControlPlugin:{isLoaded:function(){return n.isDefined(L.Control.Fullscreen)}},MiniMapControlPlugin:{isLoaded:function(){return n.isDefined(L.Control.MiniMap)}},AwesomeMarkersPlugin:{isLoaded:function(){return n.isDefined(L.AwesomeMarkers)&&n.isDefined(L.AwesomeMarkers.Icon)},is:function(n){return!!this.isLoaded()&&n instanceof L.AwesomeMarkers.Icon},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},VectorMarkersPlugin:{isLoaded:function(){return n.isDefined(L.VectorMarkers)&&n.isDefined(L.VectorMarkers.Icon)},is:function(n){return!!this.isLoaded()&&n instanceof L.VectorMarkers.Icon},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},DomMarkersPlugin:{isLoaded:function(){return!(!n.isDefined(L.DomMarkers)||!n.isDefined(L.DomMarkers.Icon))},is:function(n){return!!this.isLoaded()&&n instanceof L.DomMarkers.Icon},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},PolylineDecoratorPlugin:{isLoaded:function(){return!!n.isDefined(L.PolylineDecorator)},is:function(n){return!!this.isLoaded()&&n instanceof L.PolylineDecorator},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},MakiMarkersPlugin:{isLoaded:function(){return!(!n.isDefined(L.MakiMarkers)||!n.isDefined(L.MakiMarkers.Icon))},is:function(n){return!!this.isLoaded()&&n instanceof L.MakiMarkers.Icon},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},ExtraMarkersPlugin:{isLoaded:function(){return!(!n.isDefined(L.ExtraMarkers)||!n.isDefined(L.ExtraMarkers.Icon))},is:function(n){return!!this.isLoaded()&&n instanceof L.ExtraMarkers.Icon},equal:function(t,i){return!!this.isLoaded()&&!!this.is(t)&&n.equals(t,i)}},LabelPlugin:{isLoaded:function(){return n.isDefined(L.Label)},is:function(n){return!!this.isLoaded()&&n instanceof L.MarkerClusterGroup}},MarkerClusterPlugin:{isLoaded:function(){return n.isDefined(L.MarkerClusterGroup)},is:function(n){return!!this.isLoaded()&&n instanceof L.MarkerClusterGroup}},GeoJSONPlugin:{isLoaded:function(){return n.isDefined(L.TileLayer.GeoJSON)},is:function(n){return!!this.isLoaded()&&n instanceof L.TileLayer.GeoJSON}},CartoDB:{isLoaded:function(){return cartodb},is:function(){return!0}},Leaflet:{DivIcon:{is:function(n){return n instanceof L.DivIcon},equal:function(t,i){return!!this.is(t)&&n.equals(t,i)}},Icon:{is:function(n){return n instanceof L.Icon},equal:function(t,i){return!!this.is(t)&&n.equals(t,i)}}},watchOptions:{type:"watchDeep",individual:{type:"watchDeep"}}}}]);n.module("ui-leaflet").service("leafletIterators",["leafletLogger","leafletHelpers",function(n,t){var f,i=t,v=t.errorHeader+"leafletIterators: ",r=Object.keys,y=i.isFunction,p=i.isObject,w=n,b=Math.pow(2,53)-1,k=function(n){var t=null!==n&&n.length;return i.isNumber(t)&&t>=0&&t<=b},d=function(n){return n},g=function(n){return function(t){if(null!==t)return t[n]}},nt=function(n,t,i){if(void 0===t)return n;switch(null===i?3:i){case 1:return function(i){return n.call(t,i)};case 2:return function(i,r){return n.call(t,i,r)};case 3:return function(i,r,u){return n.call(t,i,r,u)};case 4:return function(i,r,u,f){return n.call(t,i,r,u,f)}}return function(){return n.apply(t,arguments)}},tt=function(n,t){return function(i){var e=arguments.length,r,u;if(e<2||null===i)return i;for(r=1;r<e;r++)for(var o=arguments[r],s=n(o),h=s.length,f=0;f<h;f++)u=s[f],t&&void 0!==i[u]||(i[u]=o[u]);return i}},it=null,e,o,s,h,c,u;f=it=tt(r);o=function(n,t){var e=r(t),o=e.length,f,i,u;if(null===n)return!o;for(f=Object(n),i=0;i<o;i++)if(u=e[i],t[u]!==f[u]||!(u in f))return!1;return!0};s=null;e=s=function(n){return n=f({},n),function(t){return o(t,n)}};c=function(n,t,i){return null===n?d:y(n)?nt(n,t,i):p(n)?e(n):g(n)};u=null;h=u=function(n,t,i){var e;t=c(t,i);for(var f=!k(n)&&r(n),o=(f||n).length,u=0;u<o;u++)if(e=f?f[u]:u,!t(n[e],e,n))return!1;return!0};var l=function(n,t,r,u){return!(r||i.isDefined(n)&&i.isDefined(t))||!i.isFunction(t)&&(u=i.defaultTo(t,"cb"),w.error(v+u+" is not a function"),!0)},rt=function(n,t,i){if(!l(void 0,i,!0,"internalCb")&&!l(n,t))for(var r in n)n.hasOwnProperty(r)&&i(n[r],r)},a=function(n,t){rt(n,t,function(n,i){t(n,i)})};return{each:a,forEach:a,every:h,all:u}}]);n.module("ui-leaflet").factory("leafletLayerHelpers",["$rootScope","$q","leafletLogger","leafletHelpers","leafletIterators",function(t,i,r,u,f){function y(n){return c(n.type)?Object.keys(s).indexOf(n.type)===-1?(o.error("[AngularJS - Leaflet] A layer must have a valid type: "+Object.keys(s)),!1):s[n.type].mustHaveUrl&&!c(n.url)?(o.error("[AngularJS - Leaflet] A base layer must have an url"),!1):s[n.type].mustHaveData&&!e(n.data)?(o.error('[AngularJS - Leaflet] The base layer must have a "data" array attribute'),!1):s[n.type].mustHaveLayer&&!e(n.layer)?(o.error("[AngularJS - Leaflet] The type of layer "+n.type+" must have an layer defined"),!1):s[n.type].mustHaveBounds&&!e(n.bounds)?(o.error("[AngularJS - Leaflet] The type of layer "+n.type+" must have bounds defined"),!1):!(s[n.type].mustHaveKey&&!e(n.key))||(o.error("[AngularJS - Leaflet] The type of layer "+n.type+" must have key defined"),!1):(o.error("[AngularJS - Leaflet] A layer must have a valid type defined."),!1)}function l(n){var t,i;if(y(n)){if(!c(n.name))return void o.error("[AngularJS - Leaflet] A base layer must have a name");a(n.layerParams)||(n.layerParams={});a(n.layerOptions)||(n.layerOptions={});for(t in n.layerParams)n.layerOptions[t]=n.layerParams[t];return i={url:n.url,data:n.data,options:n.layerOptions,layer:n.layer,icon:n.icon,type:n.layerType,bounds:n.bounds,key:n.key,apiKey:n.apiKey,pluginOptions:n.pluginOptions,user:n.user,$parent:n},s[n.type].createLayer(i)}}function p(n,t){t&&"function"==typeof t.addTo?t.addTo(n):n.addLayer(t)}function w(t,i,r){var u,f,h,s;if(e(r)&&e(r.loadedDefer))if(n.isFunction(r.loadedDefer))if(u=r.loadedDefer(),o.debug("Loaded Deferred",u),f=u.length,f>0)for(h=function(){f--;0===f&&t.removeLayer(i)},s=0;s<u.length;s++)u[s].promise.then(h);else t.removeLayer(i);else r.loadedDefer.promise.then(function(){t.removeLayer(i)});else t.removeLayer(i)}var h=u,c=u.isString,a=u.isObject,b=u.isArray,e=u.isDefined,k=u.errorHeader,d=f,o=r,v=function(i){if(!h.UTFGridPlugin.isLoaded())return void o.error("[AngularJS - Leaflet] The UTFGrid plugin is not loaded.");var u=new L.UtfGrid(i.url,i.pluginOptions),r={model:i.$parent};return u.on("mouseover",function(i){n.extend(r,{leafletEvent:i,leafletObject:i.target});t.$broadcast("leafletDirectiveMap.utfgridMouseover",r)}),u.on("mouseout",function(i){n.extend(r,{leafletEvent:i,leafletObject:i.target});t.$broadcast("leafletDirectiveMap.utfgridMouseout",r)}),u.on("click",function(i){n.extend(r,{leafletEvent:i,leafletObject:i.target});t.$broadcast("leafletDirectiveMap.utfgridClick",r)}),u.on("mousemove",function(i){n.extend(r,{leafletEvent:i,leafletObject:i.target});t.$broadcast("leafletDirectiveMap.utfgridMousemove",r)}),u},s={xyz:{mustHaveUrl:!0,createLayer:function(n){return L.tileLayer(n.url,n.options)}},geoJSON:{mustHaveUrl:!0,createLayer:function(n){if(h.GeoJSONPlugin.isLoaded())return new L.TileLayer.GeoJSON(n.url,n.pluginOptions,n.options)}},geoJSONShape:{mustHaveUrl:!1,createLayer:function(n){return new L.GeoJSON(n.data,n.options)}},geoJSONAwesomeMarker:{mustHaveUrl:!1,createLayer:function(n){return new L.geoJson(n.data,{pointToLayer:function(t,i){return L.marker(i,{icon:L.AwesomeMarkers.icon(n.icon)})}})}},geoJSONVectorMarker:{mustHaveUrl:!1,createLayer:function(n){return new L.geoJson(n.data,{pointToLayer:function(t,i){return L.marker(i,{icon:L.VectorMarkers.icon(n.icon)})}})}},cartodbTiles:{mustHaveKey:!0,createLayer:function(n){var t=e(n.url)?n.url+"/"+n.user:"//"+n.user+".cartodb.com";return t+="/api/v1/map/"+n.key+"/{z}/{x}/{y}.png",L.tileLayer(t,n.options)}},cartodbUTFGrid:{mustHaveKey:!0,mustHaveLayer:!0,createLayer:function(n){var t=e(n.url)?n.url+"/"+n.user:"//"+n.user+".cartodb.com";return n.url=t+"/api/v1/map/"+n.key+"/"+n.layer+"/{z}/{x}/{y}.grid.json",v(n)}},cartodbInteractive:{mustHaveKey:!0,mustHaveLayer:!0,createLayer:function(t){var u=e(t.url)?t.url+"/"+t.user:"//"+t.user+".cartodb.com",o=u+"/api/v1/map/"+t.key+"/{z}/{x}/{y}.png",s=L.tileLayer(o,t.options),r=[s],f=function(t,i,r){var f=n.copy(i);f.url=u+"/api/v1/map/"+f.key+"/"+r+"/{z}/{x}/{y}.grid.json";t.push(v(f))},i;if(b(t.layer))for(i=0;i<t.layer.length;i++)f(r,t,t.layer[i]);else f(r,t,t.layer);return L.layerGroup(r)}},wms:{mustHaveUrl:!0,createLayer:function(n){return L.tileLayer.wms(n.url,n.options)}},wmts:{mustHaveUrl:!0,createLayer:function(n){return L.tileLayer.wmts(n.url,n.options)}},group:{mustHaveUrl:!1,createLayer:function(n){var t=[];return d.each(n.options.layers,function(n){t.push(l(n))}),n.options.loadedDefer=function(){var r=[],t,i;if(e(n.options.layers))for(t=0;t<n.options.layers.length;t++)i=n.options.layers[t].layerOptions.loadedDefer,e(i)&&r.push(i);return r},L.layerGroup(t)}},featureGroup:{mustHaveUrl:!1,createLayer:function(){return L.featureGroup()}},markercluster:{mustHaveUrl:!1,createLayer:function(n){return h.MarkerClusterPlugin.isLoaded()?new L.MarkerClusterGroup(n.options):void o.warn(k+" The markercluster plugin is not loaded.")}},imageOverlay:{mustHaveUrl:!0,mustHaveBounds:!0,createLayer:function(n){return L.imageOverlay(n.url,n.bounds,n.options)}},iip:{mustHaveUrl:!0,createLayer:function(n){return L.tileLayer.iip(n.url,n.options)}},custom:{createLayer:function(t){return t.layer instanceof L.Class?n.copy(t.layer):void o.error("[AngularJS - Leaflet] A custom layer must be a leaflet Class")}},cartodb:{mustHaveUrl:!0,createLayer:function(n){return cartodb.createLayer(n.map,n.url)}}},g=function(n){return function(t){e(t.setOpacity)&&t.setOpacity(n)}};return{createLayer:l,layerTypes:s,safeAddLayer:p,safeRemoveLayer:w,changeOpacityListener:g}}]);n.module("ui-leaflet").factory("leafletLegendHelpers",["$http","$q","$log","leafletHelpers",function(n,t,i,r){var u={},e=r.isDefined,o=function t(i){var r=u[i],f=r[0];n(f.c).then(function(n){r.shift();f.d.resolve(n);r.length>0&&t(i)},function(n){r.shift();f.d.reject(n);r.length>0&&t(i)})},f=function(n,t,i,r){var f,u,e,o;if(n.innerHTML="",t.error)n.innerHTML+='<div class="info-title alert alert-danger">'+t.error.message+"<\/div>";else if("arcgis"===i)for(f=0;f<t.layers.length;f++)for(u=t.layers[f],n.innerHTML+='<div class="info-title" data-layerid="'+u.layerId+'">'+u.layerName+"<\/div>",e=0;e<u.legend.length;e++)o=u.legend[e],n.innerHTML+='<div class="inline" data-layerid="'+u.layerId+'"><img src="data:'+o.contentType+";base64,"+o.imageData+'" /><\/div><div class="info-label" data-layerid="'+u.layerId+'">'+o.label+"<\/div>";else"image"===i&&(n.innerHTML='<img src="'+r+'"/>')},s=function(n,t,i,r){return function(){var u=L.DomUtil.create("div",t);return L.Browser.touch?L.DomEvent.on(u,"click",L.DomEvent.stopPropagation):(L.DomEvent.disableClickPropagation(u),L.DomEvent.on(u,"mousewheel",L.DomEvent.stopPropagation)),f(u,n,i,r),u}},h=function(n,t){return function(){for(var i=L.DomUtil.create("div",t),r=0;r<n.colors.length;r++)i.innerHTML+='<div class="outline"><i style="background:'+n.colors[r]+'"><\/i><\/div><div class="info-label">'+n.labels[r]+"<\/div>";return L.Browser.touch?L.DomEvent.on(i,"click",L.DomEvent.stopPropagation):(L.DomEvent.disableClickPropagation(i),L.DomEvent.on(i,"mousewheel",L.DomEvent.stopPropagation)),i}};return{getOnAddLegend:s,getOnAddArrayLegend:h,updateLegend:f,addLegendURL:function(n,i){var r=t.defer();return e(u[n])||(u[n]=[]),u[n].push({c:i,d:r}),1===u[n].length&&o(n),r.promise}}}]);n.module("ui-leaflet").factory("leafletMapDefaults",["$q","leafletHelpers",function(t,i){function e(){return{keyboard:!0,dragging:!0,worldCopyJump:!1,doubleClickZoom:!0,scrollWheelZoom:!0,tap:!0,touchZoom:!0,zoomControl:!0,zoomsliderControl:!1,zoomControlPosition:"topleft",attributionControl:!0,controls:{layers:{visible:!0,position:"topright",collapsed:!0}},nominatim:{server:" http://nominatim.openstreetmap.org/search"},crs:L.CRS.EPSG3857,tileLayer:"//{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",tileLayerOptions:{attribution:'&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap<\/a> contributors'},path:{weight:10,opacity:1,color:"#0000ff"},center:{lat:0,lng:0,zoom:1},trackResize:!0}}var r=i.isDefined,o=i.isObject,f=i.obtainEffectiveMapId,u={};return{reset:function(){u={}},getDefaults:function(n){var t=f(u,n);return u[t]},getMapCreationDefaults:function(n){var o=f(u,n),t=u[o],i={maxZoom:t.maxZoom,keyboard:t.keyboard,dragging:t.dragging,zoomControl:t.zoomControl,doubleClickZoom:t.doubleClickZoom,scrollWheelZoom:t.scrollWheelZoom,tap:t.tap,touchZoom:t.touchZoom,attributionControl:t.attributionControl,worldCopyJump:t.worldCopyJump,crs:t.crs,trackResize:t.trackResize},e;if(r(t.minZoom)&&(i.minZoom=t.minZoom),r(t.zoomAnimation)&&(i.zoomAnimation=t.zoomAnimation),r(t.fadeAnimation)&&(i.fadeAnimation=t.fadeAnimation),r(t.markerZoomAnimation)&&(i.markerZoomAnimation=t.markerZoomAnimation),t.map)for(e in t.map)i[e]=t.map[e];return i},setDefaults:function(t,i){var s=e(),h;return r(t)&&(s.doubleClickZoom=r(t.doubleClickZoom)?t.doubleClickZoom:s.doubleClickZoom,s.scrollWheelZoom=r(t.scrollWheelZoom)?t.scrollWheelZoom:s.doubleClickZoom,s.tap=r(t.tap)?t.tap:s.tap,s.touchZoom=r(t.touchZoom)?t.touchZoom:s.doubleClickZoom,s.zoomControl=r(t.zoomControl)?t.zoomControl:s.zoomControl,s.zoomsliderControl=r(t.zoomsliderControl)?t.zoomsliderControl:s.zoomsliderControl,s.attributionControl=r(t.attributionControl)?t.attributionControl:s.attributionControl,s.tileLayer=r(t.tileLayer)?t.tileLayer:s.tileLayer,s.zoomControlPosition=r(t.zoomControlPosition)?t.zoomControlPosition:s.zoomControlPosition,s.keyboard=r(t.keyboard)?t.keyboard:s.keyboard,s.dragging=r(t.dragging)?t.dragging:s.dragging,s.trackResize=r(t.trackResize)?t.trackResize:s.trackResize,r(t.controls)&&n.extend(s.controls,t.controls),o(t.crs)?s.crs=t.crs:r(L.CRS[t.crs])&&(s.crs=L.CRS[t.crs]),r(t.center)&&n.copy(t.center,s.center),r(t.tileLayerOptions)&&n.copy(t.tileLayerOptions,s.tileLayerOptions),r(t.maxZoom)&&(s.maxZoom=t.maxZoom),r(t.minZoom)&&(s.minZoom=t.minZoom),r(t.zoomAnimation)&&(s.zoomAnimation=t.zoomAnimation),r(t.fadeAnimation)&&(s.fadeAnimation=t.fadeAnimation),r(t.markerZoomAnimation)&&(s.markerZoomAnimation=t.markerZoomAnimation),r(t.worldCopyJump)&&(s.worldCopyJump=t.worldCopyJump),r(t.map)&&(s.map=t.map),r(t.path)&&(s.path=t.path)),h=f(u,i),u[h]=s,s}}}]);n.module("ui-leaflet").service("leafletMarkersHelpers",["$rootScope","$timeout","leafletHelpers","leafletLogger","$compile","leafletGeoJsonHelpers","leafletWatchHelpers",function(t,i,r,u,f,e,o){var s=r.isDefined,ft=r.defaultTo,et=r.MarkerClusterPlugin,ot=r.AwesomeMarkersPlugin,st=r.VectorMarkersPlugin,ht=r.MakiMarkersPlugin,ct=r.ExtraMarkersPlugin,lt=r.DomMarkersPlugin,w=r.safeApply,y=r,h=r.isString,nt=r.isNumber,v=r.isObject,l={},b=e,a=r.errorHeader,at=o.maybeWatch,c=u,tt=function(n){var t="";return["_icon","_latlng","_leaflet_id","_map","_shadow"].forEach(function(i){t+=i+": "+ft(n[i],"undefined")+" \n"}),"[leafletMarker] : \n"+t},vt=function(n,t){var i=t?console:c;i.debug(tt(n))},yt=function(t){return n.element(l[t]._map._container).parent().length>0},k=function(i){var o,h;if(s(i)&&s(i.type)&&"awesomeMarker"===i.type)return ot.isLoaded()||c.error(a+" The AwesomeMarkers Plugin is not loaded."),new L.AwesomeMarkers.icon(i);if(s(i)&&s(i.type)&&"vectorMarker"===i.type)return st.isLoaded()||c.error(a+" The VectorMarkers Plugin is not loaded."),new L.VectorMarkers.icon(i);if(s(i)&&s(i.type)&&"makiMarker"===i.type)return ht.isLoaded()||c.error(a+"The MakiMarkers Plugin is not loaded."),new L.MakiMarkers.icon(i);if(s(i)&&s(i.type)&&"extraMarker"===i.type)return ct.isLoaded()||c.error(a+"The ExtraMarkers Plugin is not loaded."),new L.ExtraMarkers.icon(i);if(s(i)&&s(i.type)&&"div"===i.type)return new L.divIcon(i);if(s(i)&&s(i.type)&&"dom"===i.type){lt.isLoaded()||c.error(a+"The DomMarkers Plugin is not loaded.");var u=n.isFunction(i.getMarkerScope)?i.getMarkerScope().$new():t,e=f(i.template)(u),r=n.copy(i);return r.ngElement=e,r.element=e[0],n.isFunction(i.getMarkerScope)&&(r.scope=u),new L.DomMarkers.icon(r)}return s(i)&&s(i.type)&&"icon"===i.type?i.icon:(o="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAGmklEQVRYw7VXeUyTZxjvNnfELFuyIzOabermMZEeQC/OclkO49CpOHXOLJl/CAURuYbQi3KLgEhbrhZ1aDwmaoGqKII6odATmH/scDFbdC7LvFqOCc+e95s2VG50X/LLm/f4/Z7neY/ne18aANCmAr5E/xZf1uDOkTcGcWR6hl9247tT5U7Y6SNvWsKT63P58qbfeLJG8M5qcgTknrvvrdDbsT7Ml+tv82X6vVxJE33aRmgSyYtcWVMqX97Yv2JvW39UhRE2HuyBL+t+gK1116ly06EeWFNlAmHxlQE0OMiV6mQCScusKRlhS3QLeVJdl1+23h5dY4FNB3thrbYboqptEFlphTC1hSpJnbRvxP4NWgsE5Jyz86QNNi/5qSUTGuFk1gu54tN9wuK2wc3o+Wc13RCmsoBwEqzGcZsxsvCSy/9wJKf7UWf1mEY8JWfewc67UUoDbDjQC+FqK4QqLVMGGR9d2wurKzqBk3nqIT/9zLxRRjgZ9bqQgub+DdoeCC03Q8j+0QhFhBHR/eP3U/zCln7Uu+hihJ1+bBNffLIvmkyP0gpBZWYXhKussK6mBz5HT6M1Nqpcp+mBCPXosYQfrekGvrjewd59/GvKCE7TbK/04/ZV5QZYVWmDwH1mF3xa2Q3ra3DBC5vBT1oP7PTj4C0+CcL8c7C2CtejqhuCnuIQHaKHzvcRfZpnylFfXsYJx3pNLwhKzRAwAhEqG0SpusBHfAKkxw3w4627MPhoCH798z7s0ZnBJ/MEJbZSbXPhER2ih7p2ok/zSj2cEJDd4CAe+5WYnBCgR2uruyEw6zRoW6/DWJ/OeAP8pd/BGtzOZKpG8oke0SX6GMmRk6GFlyAc59K32OTEinILRJRchah8HQwND8N435Z9Z0FY1EqtxUg+0SO6RJ/mmXz4VuS+DpxXC3gXmZwIL7dBSH4zKE50wESf8qwVgrP1EIlTO5JP9Igu0aexdh28F1lmAEGJGfh7jE6ElyM5Rw/FDcYJjWhbeiBYoYNIpc2FT/SILivp0F1ipDWk4BIEo2VuodEJUifhbiltnNBIXPUFCMpthtAyqws/BPlEF/VbaIxErdxPphsU7rcCp8DohC+GvBIPJS/tW2jtvTmmAeuNO8BNOYQeG8G/2OzCJ3q+soYB5i6NhMaKr17FSal7GIHheuV3uSCY8qYVuEm1cOzqdWr7ku/R0BDoTT+DT+ohCM6/CCvKLKO4RI+dXPeAuaMqksaKrZ7L3FE5FIFbkIceeOZ2OcHO6wIhTkNo0ffgjRGxEqogXHYUPHfWAC/lADpwGcLRY3aeK4/oRGCKYcZXPVoeX/kelVYY8dUGf8V5EBRbgJXT5QIPhP9ePJi428JKOiEYhYXFBqou2Guh+p/mEB1/RfMw6rY7cxcjTrneI1FrDyuzUSRm9miwEJx8E/gUmqlyvHGkneiwErR21F3tNOK5Tf0yXaT+O7DgCvALTUBXdM4YhC/IawPU+2PduqMvuaR6eoxSwUk75ggqsYJ7VicsnwGIkZBSXKOUww73WGXyqP+J2/b9c+gi1YAg/xpwck3gJuucNrh5JvDPvQr0WFXf0piyt8f8/WI0hV4pRxxkQZdJDfDJNOAmM0Ag8jyT6hz0WGXWuP94Yh2jcfjmXAGvHCMslRimDHYuHuDsy2QtHuIavznhbYURq5R57KpzBBRZKPJi8eQg48h4j8SDdowifdIrEVdU+gbO6QNvRRt4ZBthUaZhUnjlYObNagV3keoeru3rU7rcuceqU1mJBxy+BWZYlNEBH+0eH4vRiB+OYybU2hnblYlTvkHinM4m54YnxSyaZYSF6R3jwgP7udKLGIX6r/lbNa9N6y5MFynjWDtrHd75ZvTYAPO/6RgF0k76mQla3FGq7dO+cH8sKn0Vo7nDllwAhqwLPkxrHwWmHJOo+AKJ4rab5OgrM7rVu8eWb2Pu0Dh4eDgXoOfvp7Y7QeqknRmvcTBEyq9m/HQQSCSz6LHq3z0yzsNySRfMS253wl2KyRDbcZPcfJKjZmSEOjcxyi+Y8dUOtsIEH6R2wNykdqrkYJ0RV92H0W58pkfQk7cKevsLK10Py8SdMGfXNXATY+pPbyJR/ET6n9nIfztNtZYRV9XniQu9IA2vOVgy4ir7GCLVmmd+zjkH0eAF9Po6K61pmCXHxU5rHMYd1ftc3owjwRSVRzLjKvqZEty6cRUD7jGqiOdu5HG6MdHjNcNYGqfDm5YRzLBBCCDl/2bk8a8gdbqcfwECu62Fg/HrggAAAABJRU5ErkJggg==",h="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAApCAYAAACoYAD2AAAC5ElEQVRYw+2YW4/TMBCF45S0S1luXZCABy5CgLQgwf//S4BYBLTdJLax0fFqmB07nnQfEGqkIydpVH85M+NLjPe++dcPc4Q8Qh4hj5D/AaQJx6H/4TMwB0PeBNwU7EGQAmAtsNfAzoZkgIa0ZgLMa4Aj6CxIAsjhjOCoL5z7Glg1JAOkaicgvQBXuncwJAWjksLtBTWZe04CnYRktUGdilALppZBOgHGZcBzL6OClABvMSVIzyBjazOgrvACf1ydC5mguqAVg6RhdkSWQFj2uxfaq/BrIZOLEWgZdALIDvcMcZLD8ZbLC9de4yR1sYMi4G20S4Q/PWeJYxTOZn5zJXANZHIxAd4JWhPIloTJZhzMQduM89WQ3MUVAE/RnhAXpTycqys3NZALOBbB7kFrgLesQl2h45Fcj8L1tTSohUwuxhy8H/Qg6K7gIs+3kkaigQCOcyEXCHN07wyQazhrmIulvKMQAwMcmLNqyCVyMAI+BuxSMeTk3OPikLY2J1uE+VHQk6ANrhds+tNARqBeaGc72cK550FP4WhXmFmcMGhTwAR1ifOe3EvPqIegFmF+C8gVy0OfAaWQPMR7gF1OQKqGoBjq90HPMP01BUjPOqGFksC4emE48tWQAH0YmvOgF3DST6xieJgHAWxPAHMuNhrImIdvoNOKNWIOcE+UXE0pYAnkX6uhWsgVXDxHdTfCmrEEmMB2zMFimLVOtiiajxiGWrbU52EeCdyOwPEQD8LqyPH9Ti2kgYMf4OhSKB7qYILbBv3CuVTJ11Y80oaseiMWOONc/Y7kJYe0xL2f0BaiFTxknHO5HaMGMublKwxFGzYdWsBF174H/QDknhTHmHHN39iWFnkZx8lPyM8WHfYELmlLKtgWNmFNzQcC1b47gJ4hL19i7o65dhH0Negbca8vONZoP7doIeOC9zXm8RjuL0Gf4d4OYaU5ljo3GYiqzrWQHfJxA6ALhDpVKv9qYeZA8eM3EhfPSCmpuD0AAAAASUVORK5CYII=",s(i)&&s(i.iconUrl)?new L.Icon(i):new L.Icon.Default({iconUrl:o,shadowUrl:h,iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],shadowSize:[41,41]}))},it=function(n){s(l[n])&&delete l[n]},pt=function(){l={}},wt=function(){for(var n in l)yt(n)||it(n)},d=function(n){n.options.icon.options.ngElement&&n.options.icon.options.ngElement.remove();n.options.icon.options.scope&&n.options.icon.options.scope.$destroy()},g=function(n,t,i){var r,u;if(n.closePopup(),n.options.icon&&n.options.icon.options&&"dom"===n.options.icon.options.type&&d(n),s(i)&&s(i.overlays))for(r in i.overlays)if((i.overlays[r]instanceof L.LayerGroup||i.overlays[r]instanceof L.FeatureGroup)&&i.overlays[r].hasLayer(n))return void i.overlays[r].removeLayer(n);if(s(l))for(u in l)l[u].hasLayer(n)&&l[u].removeLayer(n);t.hasLayer(n)&&t.removeLayer(n)},bt=function(n,t){var i=n._popup._container.offsetHeight,r=new L.Point(n._popup._containerLeft,-i-n._popup._containerBottom),u=t.layerPointToContainerPoint(r);null!==u&&n._popup._adjustPan()},kt=function(n,t){f(n._popup._contentNode)(t)},dt=function n(t,r,u){var e=t._popup._contentNode.innerText||t._popup._contentNode.textContent,f;return e.length<1&&i(function(){n(t,r,u)}),f=t._popup._contentNode.offsetWidth,t._popup._updateLayout(),t._popup._updatePosition(),t._popup.options.autoPan&&bt(t,u),f},rt=function(i,r,u){var f=n.isFunction(r.getMessageScope)?r.getMessageScope():t,e=!s(r.compileMessage)||r.compileMessage;if(e){if(!s(i._popup)||!s(i._popup._contentNode))return c.error(a+"Popup is invalid or does not have any content."),!1;kt(i,f);dt(i,r,u)}},p=function(i,r){var u=n.isFunction(r.getMessageScope)?r.getMessageScope():t,e=n.isFunction(r.getLabelScope)?r.getLabelScope():u,o=!s(r.compileMessage)||r.compileMessage;y.LabelPlugin.isLoaded()&&s(r.label)&&(s(r.label.options)&&r.label.options.noHide===!0&&i.showLabel(),o&&s(i.label)&&f(i.label._container)(e))},ut=function(t,i,r,u,f,e,o){var rt,w,it,tt,l,ut;if(s(i)){if(!b.validateCoords(t))return c.warn("There are problems with lat-lng data, please verify your marker model"),void g(r,o,e);if(rt=t===i,s(t.iconAngle)&&i.iconAngle!==t.iconAngle&&r.setIconAngle(t.iconAngle),h(t.layer)||h(i.layer)&&(s(e.overlays[i.layer])&&e.overlays[i.layer].hasLayer(r)&&(e.overlays[i.layer].removeLayer(r),r.closePopup()),o.hasLayer(r)||o.addLayer(r)),(nt(t.opacity)||nt(parseFloat(t.opacity)))&&t.opacity!==i.opacity&&r.setOpacity(t.opacity),h(t.layer)&&i.layer!==t.layer){if(h(i.layer)&&s(e.overlays[i.layer])&&e.overlays[i.layer].hasLayer(r)&&e.overlays[i.layer].removeLayer(r),r.closePopup(),o.hasLayer(r)&&o.removeLayer(r),!s(e.overlays[t.layer]))return void c.error(a+"You must use a name of an existing layer");if(w=e.overlays[t.layer],!(w instanceof L.LayerGroup||w instanceof L.FeatureGroup))return void c.error(a+'A marker can only be added to a layer of type "group" or "featureGroup"');w.addLayer(r);o.hasLayer(r)&&t.focus===!0&&r.openPopup()}(t.draggable!==!0&&i.draggable===!0&&s(r.dragging)&&r.dragging.disable(),t.draggable===!0&&i.draggable!==!0&&(r.dragging?r.dragging.enable():L.Handler.MarkerDrag&&(r.dragging=new L.Handler.MarkerDrag(r),r.options.draggable=!0,r.dragging.enable())),v(t.icon)||v(i.icon)&&("dom"===i.icon.type&&d(r),r.setIcon(k()),r.closePopup(),r.unbindPopup(),h(t.message)&&r.bindPopup(t.message,t.popupOptions)),v(t.icon)&&v(i.icon)&&!n.equals(t.icon,i.icon))&&(it=!1,r.dragging&&(it=r.dragging.enabled()),"dom"===i.icon.type&&d(r),r.setIcon(k(t.icon)),it&&r.dragging.enable(),r.closePopup(),r.unbindPopup(),h(t.message)&&(r.bindPopup(t.message,t.popupOptions),o.hasLayer(r)&&t.focus===!0&&r.openPopup()));!h(t.message)&&h(i.message)&&(r.closePopup(),r.unbindPopup());y.LabelPlugin.isLoaded()&&(s(t.label)&&s(t.label.message)?"label"in i&&"message"in i.label&&!n.equals(t.label.message,i.label.message)?r.updateLabelContent(t.label.message):!n.isFunction(r.getLabel)||n.isFunction(r.getLabel)&&!s(r.getLabel())?(r.bindLabel(t.label.message,t.label.options),p(r,t)):p(r,t):"label"in t&&!("message"in t.label)||n.isFunction(r.unbindLabel)&&r.unbindLabel());h(t.message)&&!h(i.message)&&r.bindPopup(t.message,t.popupOptions);h(t.message)&&h(i.message)&&t.message!==i.message&&r.setPopupContent(t.message);tt=!1;t.focus!==!0&&i.focus===!0&&(r.closePopup(),tt=!0);(t.focus===!0&&(!s(i.focus)||i.focus===!1)||rt&&t.focus===!0)&&(r.openPopup(),tt=!0);i.zIndexOffset!==t.zIndexOffset&&r.setZIndexOffset(t.zIndexOffset);l=r.getLatLng();ut=h(t.layer)&&y.MarkerClusterPlugin.is(e.overlays[t.layer]);ut?tt?t.lat===i.lat&&t.lng===i.lng||(e.overlays[t.layer].removeLayer(r),r.setLatLng([t.lat,t.lng]),e.overlays[t.layer].addLayer(r)):l.lat!==t.lat||l.lng!==t.lng?(e.overlays[t.layer].removeLayer(r),r.setLatLng([t.lat,t.lng]),e.overlays[t.layer].addLayer(r)):t.lat!==i.lat||t.lng!==i.lng?(e.overlays[t.layer].removeLayer(r),r.setLatLng([t.lat,t.lng]),e.overlays[t.layer].addLayer(r)):v(t.icon)&&v(i.icon)&&!n.equals(t.icon,i.icon)&&(e.overlays[t.layer].removeLayer(r),e.overlays[t.layer].addLayer(r)):l.lat===t.lat&&l.lng===t.lng||r.setLatLng([t.lat,t.lng])}},gt=function(n,t){if(s(n))return t?n[t]:n},ni=function(n,t,i){if(s(n))return t?i?n[i][t]:n[t]:void c.error(a+"marker id missing in getMarker")};return{resetMarkerGroup:it,resetMarkerGroups:pt,resetUnusedMarkerGroups:wt,deleteMarker:g,manageOpenPopup:rt,manageOpenLabel:p,createMarker:function(n){var r,i,t,u;if(!s(n)||!b.validateCoords(n))return void c.error(a+"The marker definition is not valid.");if(r=b.getCoords(n),!s(r))return void c.error(a+"Unable to get coordinates from markerData.");i={icon:k(n.icon),title:s(n.title)?n.title:"",draggable:!!s(n.draggable)&&n.draggable,clickable:!s(n.clickable)||n.clickable,riseOnHover:!!s(n.riseOnHover)&&n.riseOnHover,zIndexOffset:s(n.zIndexOffset)?n.zIndexOffset:0,iconAngle:s(n.iconAngle)?n.iconAngle:0};for(t in n)n.hasOwnProperty(t)&&!i.hasOwnProperty(t)&&(i[t]=n[t]);return u=new L.marker(r,i),h(n.message)||u.unbindPopup(),u},addMarkerToGroup:function(n,t,i,r){return h(t)?et.isLoaded()?(s(l[t])||(l[t]=new L.MarkerClusterGroup(i),r.addLayer(l[t])),void l[t].addLayer(n)):void c.error(a+"The MarkerCluster plugin is not loaded."):void c.error(a+"The marker group you have specified is invalid.")},listenMarkerEvents:function(n,t,i,r,u){n.on("popupopen",function(){w(i,function(){(s(n._popup)||s(n._popup._contentNode))&&(t.focus=!0,rt(n,t,u))})});n.on("popupclose",function(){w(i,function(){t.focus=!1})});n.on("add",function(){w(i,function(){"label"in t&&p(n,t)})})},updateMarker:ut,addMarkerWatcher:function(n,t,i,r,u,f){var e=y.getObjectArrayPath("markers."+t);at(i,e,f,function(f,e,o){return s(f)?void ut(f,e,n,t,i,r,u):(g(n,u,r),void o())})},string:tt,log:vt,getModelFromModels:ni,getLayerModels:gt}}]);n.module("ui-leaflet").factory("leafletPathsHelpers",["$rootScope","leafletLogger","leafletHelpers",function(n,t,i){function o(n){return n.filter(function(n){return e(n)}).map(function(n){return c(n)})}function c(n){return f(n)?new L.LatLng(n[0],n[1]):new L.LatLng(n.lat,n.lng)}function a(n){return n.map(function(n){return o(n)})}function y(n,t){for(var i,u={},f=0;f<s.length;f++)i=s[f],r(n[i])?u[i]=n[i]:r(t.path[i])&&(u[i]=t.path[i]);return u}var r=i.isDefined,f=i.isArray,v=i.isNumber,e=i.isValidPoint,p=t,s=["stroke","weight","color","opacity","fill","fillColor","fillOpacity","dashArray","lineCap","lineJoin","clickable","pointerEvents","className","smoothFactor","noClip"],u=function(n,t){for(var u,f={},i=0;i<s.length;i++)u=s[i],r(t[u])&&(f[u]=t[u]);n.setStyle(t)},h=function(n){var t,i;if(!f(n))return!1;for(t=0;t<n.length;t++)if(i=n[t],!e(i))return!1;return!0},l={polyline:{isValid:function(n){var t=n.latlngs;return h(t)},createPath:function(n){return new L.Polyline([],n)},setPath:function(n,t){n.setLatLngs(o(t.latlngs));u(n,t)}},multiPolyline:{isValid:function(n){var t=n.latlngs,i,r;if(!f(t))return!1;for(i in t)if(r=t[i],!h(r))return!1;return!0},createPath:function(n){return new L.multiPolyline([[[0,0],[1,1]]],n)},setPath:function(n,t){n.setLatLngs(a(t.latlngs));u(n,t)}},polygon:{isValid:function(n){var t=n.latlngs;return h(t)},createPath:function(n){return new L.Polygon([],n)},setPath:function(n,t){n.setLatLngs(o(t.latlngs));u(n,t)}},multiPolygon:{isValid:function(n){var t=n.latlngs,i,r;if(!f(t))return!1;for(i in t)if(r=t[i],!h(r))return!1;return!0},createPath:function(n){return new L.MultiPolygon([[[0,0],[1,1],[0,1]]],n)},setPath:function(n,t){n.setLatLngs(a(t.latlngs));u(n,t)}},rectangle:{isValid:function(n){var t=n.latlngs,i,r;if(!f(t)||2!==t.length)return!1;for(i in t)if(r=t[i],!e(r))return!1;return!0},createPath:function(n){return new L.Rectangle([[0,0],[1,1]],n)},setPath:function(n,t){n.setBounds(new L.LatLngBounds(o(t.latlngs)));u(n,t)}},circle:{isValid:function(n){var t=n.latlngs;return e(t)&&v(n.radius)},createPath:function(n){return new L.Circle([0,0],1,n)},setPath:function(n,t){n.setLatLng(c(t.latlngs));r(t.radius)&&n.setRadius(t.radius);u(n,t)}},circleMarker:{isValid:function(n){var t=n.latlngs;return e(t)&&v(n.radius)},createPath:function(n){return new L.CircleMarker([0,0],n)},setPath:function(n,t){n.setLatLng(c(t.latlngs));r(t.radius)&&n.setRadius(t.radius);u(n,t)}}},w=function(n){var t={};return n.latlngs&&(t.latlngs=n.latlngs),n.radius&&(t.radius=n.radius),t};return{setPathOptions:function(n,t,i){r(t)||(t="polyline");l[t].setPath(n,i)},createPath:function(n,t,i){r(t.type)||(t.type="polyline");var u=y(t,i),f=w(t);return l[t.type].isValid(f)?l[t.type].createPath(u):void p.error("[AngularJS - Leaflet] Invalid data passed to the "+t.type+" path")}}}]);n.module("ui-leaflet").service("leafletWatchHelpers",function(){var n=function(n,t,i,r,u){var f=n[t](i,function(n,t){u(n,t,f);null===r.type&&f()},"watchDeep"===r.type);return f},t=function(t,i,r,u){var f;return f="watchCollection"===r.type?"$watchCollection":"$watch",n(t,f,i,r,u)};return{maybeWatch:t}});n.module("ui-leaflet").service("leafletLogger",["nemSimpleLogger",function(n){return n.spawn()}]);n.module("ui-leaflet").factory("nominatimService",["$q","$http","leafletHelpers","leafletMapDefaults",function(n,t,i,r){var u=i.isDefined;return{query:function(i,f){var o=r.getDefaults(f),s=o.nominatim.server,e=n.defer();return t.get(s,{params:{format:"json",limit:1,q:i}}).success(function(n){n.length>0&&u(n[0].boundingbox)?e.resolve(n[0]):e.reject("[Nominatim] Invalid address")}),e.promise}}}]);n.module("ui-leaflet").directive("bounds",["leafletLogger","$timeout","$http","leafletHelpers","nominatimService","leafletBoundsHelpers",function(t,i,r,u,f,e){var o=t;return{restrict:"A",scope:!1,replace:!1,require:["leaflet"],link:function(t,r,s,h){var l=u.isDefined,a=e.createLeafletBounds,c=h[0].getLeafletScope(),v=h[0],y=u.errorHeader+" [Bounds] ",p=function(n){return 0===n._southWest.lat&&0===n._southWest.lng&&0===n._northEast.lat&&0===n._northEast.lng};v.getMap().then(function(r){c.$on("boundsChanged",function(t){var f=t.currentScope,u=r.getBounds(),e;p(u)||f.settingBoundsFromScope||(f.settingBoundsFromLeaflet=!0,e={northEast:{lat:u._northEast.lat,lng:u._northEast.lng},southWest:{lat:u._southWest.lat,lng:u._southWest.lng},options:u.options},n.equals(f.bounds,e)||(f.bounds=e),i(function(){f.settingBoundsFromLeaflet=!1}))});var u;c.$watch("bounds",function(n){if(!t.settingBoundsFromLeaflet){if(l(n.address)&&n.address!==u)return t.settingBoundsFromScope=!0,f.query(n.address,s.id).then(function(n){var t=n.boundingbox,i=[[t[0],t[2]],[t[1],t[3]]];r.fitBounds(i)},function(n){o.error(y+" "+n+".")}),u=n.address,void i(function(){t.settingBoundsFromScope=!1});var e=a(n);e&&!r.getBounds().equals(e)&&(t.settingBoundsFromScope=!0,r.fitBounds(e,n.options),i(function(){t.settingBoundsFromScope=!1}))}},!0)})}}}]);t=["center","lfCenter"];i={};t.forEach(function(t){i[t]=["leafletLogger","$q","$location","$timeout","leafletMapDefaults","leafletHelpers","leafletBoundsHelpers","leafletMapEvents",function(i,r,u,f,e,o,s,h){var v,c=o.isDefined,w=o.isNumber,y=o.isSameCenterOnMap,p=o.safeApply,b=o.isValidCenter,k=s.isValidBounds,d=o.isUndefinedOrEmpty,l=o.errorHeader,a=i,g=function(n,t){return c(n)&&k(n)&&d(t)};return{restrict:"A",scope:!1,replace:!1,require:"leaflet",controller:function(){v=r.defer();this.getCenter=function(){return v.promise}},link:function(i,r,o,k){var d=k.getLeafletScope(),nt=d[t];k.getMap().then(function(i){var r=e.getDefaults(o.id),k,it,tt;if(o[t].search("-")!==-1)return a.error(l+' The "center" variable can\'t use a "-" on its key name: "'+o[t]+'".'),void i.setView([r.center.lat,r.center.lng],r.center.zoom);if(g(d.bounds,nt))i.fitBounds(s.createLeafletBounds(d.bounds),d.bounds.options),nt=i.getCenter(),p(d,function(r){n.extend(r[t],{lat:i.getCenter().lat,lng:i.getCenter().lng,zoom:i.getZoom(),autoDiscover:!1})}),p(d,function(n){var t=i.getBounds();n.bounds={northEast:{lat:t._northEast.lat,lng:t._northEast.lng},southWest:{lat:t._southWest.lat,lng:t._southWest.lng}}});else{if(!c(nt))return a.error(l+' The "center" property is not defined in the main scope'),void i.setView([r.center.lat,r.center.lng],r.center.zoom);c(nt.lat)&&c(nt.lng)||c(nt.autoDiscover)||n.copy(r.center,nt)}"yes"===o.urlHashCenter&&(tt=function(){var t,i=u.search(),r=o.urlHashParam?o.urlHashParam:"c",n;return c(i[r])&&(n=i[r].split(":"),3===n.length&&(t={lat:parseFloat(n[0]),lng:parseFloat(n[1]),zoom:parseInt(n[2],10)})),t},k=tt(),d.$on("$locationChangeSuccess",function(r){var f=r.currentScope,u=tt();c(u)&&!y(u,i)&&n.extend(f[t],{lat:u.lat,lng:u.lng,zoom:u.zoom})}));d.$watch(t,function(t){if(!d.settingCenterFromLeaflet)return c(k)&&(n.copy(k,t),k=void 0),b(t)||t.autoDiscover===!0?t.autoDiscover===!0?(w(t.zoom)||i.setView([r.center.lat,r.center.lng],r.center.zoom),void(w(t.zoom)&&t.zoom>r.center.zoom?i.locate({setView:!0,maxZoom:t.zoom}):c(r.maxZoom)?i.locate({setView:!0,maxZoom:r.maxZoom}):i.locate({setView:!0}))):void(it&&y(t,i)||(d.settingCenterFromScope=!0,i.setView([t.lat,t.lng],t.zoom),h.notifyCenterChangedToBounds(d,i),f(function(){d.settingCenterFromScope=!1}))):void a.warn(l+" invalid 'center'")},!0);i.whenReady(function(){it=!0});i.on("moveend",function(){v.resolve();h.notifyCenterUrlHashChanged(d,i,o,u.search());y(nt,i)||d.settingCenterFromScope||(d.settingCenterFromLeaflet=!0,p(d,function(r){d.settingCenterFromScope||n.extend(r[t],{lat:i.getCenter().lat,lng:i.getCenter().lng,zoom:i.getZoom(),autoDiscover:!1});h.notifyCenterChangedToBounds(d,i);f(function(){d.settingCenterFromLeaflet=!1})}))});nt.autoDiscover===!0&&i.on("locationerror",function(){a.warn(l+" The Geolocation API is unauthorized on this page.");b(nt)?(i.setView([nt.lat,nt.lng],nt.zoom),h.notifyCenterChangedToBounds(d,i)):(i.setView([r.center.lat,r.center.lng],r.center.zoom),h.notifyCenterChangedToBounds(d,i))})})}}}]});t.forEach(function(t){n.module("ui-leaflet").directive(t,i[t])});n.module("ui-leaflet").directive("controls",["leafletLogger","leafletHelpers","leafletControlHelpers",function(n,t,i){var r=n;return{restrict:"A",scope:!1,replace:!1,require:"?^leaflet",link:function(n,u,f,e){if(e){var h=i.createControl,c=i.isValidControlType,l=e.getLeafletScope(),s=t.isDefined,a=t.isArray,o={},v=t.errorHeader+" [Controls] ";n.$on("$destroy",function(){i.destroyMapLayersControl(n.mapId)});e.getMap().then(function(n){l.$watchCollection("controls",function(t){var f,i,p,e,u,l,y;for(f in o)s(t[f])||(n.hasControl(o[f])&&n.removeControl(o[f]),delete o[f]);for(i in t){if(e=s(t[i].type)?t[i].type:i,!c(e))return void r.error(v+" Invalid control type: "+e+".");if("custom"!==e)p=h(e,t[i]),n.addControl(p),o[i]=p;else if(u=t[i],a(u))for(l=0;l<u.length;l++)y=u[l],n.addControl(y),o[i]=s(o[i])?o[i].concat([y]):[y];else n.addControl(u),o[i]=u}})})}}}}]);n.module("ui-leaflet").directive("decorations",["leafletLogger","leafletHelpers",function(t,i){var r=t;return{restrict:"A",scope:!1,replace:!1,require:"leaflet",link:function(t,u,f,e){function h(n){return o(n)&&o(n.coordinates)&&(a.isLoaded()||r.error("[AngularJS - Leaflet] The PolylineDecorator Plugin is not loaded.")),L.polylineDecorator(n.coordinates)}function c(n,t){if(o(n)&&o(t)&&o(t.coordinates)&&o(t.patterns))return n.setPaths(t.coordinates),n.setPatterns(t.patterns),n}var l=e.getLeafletScope(),a=i.PolylineDecoratorPlugin,o=i.isDefined,s={};e.getMap().then(function(t){l.$watch("decorations",function(i){var r,f,e,u;for(r in s)o(i[r])&&n.equals(i[r],s)||(t.removeLayer(s[r]),delete s[r]);for(f in i)e=i[f],u=h(e),o(u)&&(s[f]=u,t.addLayer(u),c(u,e))},!0)})}}}]);n.module("ui-leaflet").directive("eventBroadcast",["leafletLogger","$rootScope","leafletHelpers","leafletMapEvents","leafletIterators",function(n,t,i,r,u){var f=n;return{restrict:"A",scope:!1,replace:!1,require:"leaflet",link:function(n,t,e,o){var h=i.isObject,a=i.isDefined,c=o.getLeafletScope(),s=c.eventBroadcast,l=r.getAvailableMapEvents(),v=r.addEvents;o.getMap().then(function(n){var t=[],i="broadcast";a(s.map)?h(s.map)?("emit"!==s.map.logic&&"broadcast"!==s.map.logic?f.warn("[AngularJS - Leaflet] Available event propagation logic are: 'emit' or 'broadcast'."):i=s.map.logic,h(s.map.enable)&&s.map.enable.length>=0?u.each(s.map.enable,function(n){t.indexOf(n)===-1&&l.indexOf(n)!==-1&&t.push(n)}):f.warn("[AngularJS - Leaflet] event-broadcast.map.enable must be an object check your model.")):f.warn("[AngularJS - Leaflet] event-broadcast.map must be an object check your model."):t=l;v(n,e.id,t,"eventName",c,i)})}}}]);n.module("ui-leaflet").directive("geojson",["$timeout","leafletLogger","leafletData","leafletHelpers","leafletWatchHelpers","leafletDirectiveControlsHelpers","leafletIterators","leafletGeoJsonEvents",function(t,i,r,u,f,e,o,s){var a=f.maybeWatch,v=u.watchOptions,y=e.extend,h=u,c=o,l={changeFromDirective:!1};return{restrict:"A",scope:!1,replace:!1,require:"leaflet",link:function(t,i,f,e){var p=u.isDefined,w=e.getLeafletScope(),o={},b=!1;e.getMap().then(function(t){var g=w.watchOptions&&w.watchOptions.geojson?w.watchOptions.geojson:v;var nt=function(t,i){return n.isFunction(t.onEachFeature)?t.onEachFeature:function(n,r){u.LabelPlugin.isLoaded()&&p(n.properties.description)&&r.bindLabel(n.properties.description);s.bindEvents(f.id,r,null,n,w,i,{resetStyleOnMouseout:t.resetStyleOnMouseout,mapId:f.id})}},i=h.isDefined(f.geojsonNested)&&h.isTruthy(f.geojsonNested),e=function(){if(o){var n=function(n){p(n)&&t.hasLayer(n)&&t.removeLayer(n)};return i?void c.each(o,function(t){n(t)}):void n(o)}},k=function(n,i){var e,u;p(n)&&p(n.data)&&(e=nt(n,i),p(n.options)||h.modelChangeInDirective(l,"changeFromDirective",function(){n.options={style:n.style,filter:n.filter,onEachFeature:e,pointToLayer:n.pointToLayer}}),u=L.geoJson(n.data,n.options),i&&h.isString(i)?o[i]=u:o=u,u.addTo(t),b||(b=!0,r.setGeoJSON(o,f.id)))},d=function(n){if(e(),i)return!n||!Object.keys(n).length?void 0:void c.each(n,function(n,t){k(n,t)});k(n)};y(f.id,"geojson",d,e);a(w,"geojson",g,function(n){l.changeFromDirective||d(n)})})}}}]);n.module("ui-leaflet").directive("layercontrol",["$filter","leafletLogger","leafletData","leafletHelpers",function(t,i,r,u){var f=i;return{restrict:"E",scope:{icons:"=?",autoHideOpacity:"=?",showGroups:"=?",title:"@",baseTitle:"@",overlaysTitle:"@"},replace:!0,transclude:!1,require:"^leaflet",controller:["$scope","$element","$sce",function(t,i,e){var h,s,o;f.debug("[Angular Directive - Layers] layers",t,i);h=u.safeApply;s=u.isDefined;n.extend(t,{baselayer:"",oldGroup:"",layerProperties:{},groupProperties:{},rangeIsSupported:u.rangeIsSupported(),changeBaseLayer:function(n,i){u.safeApply(t,function(i){i.baselayer=n;r.getMap().then(function(u){r.getLayers().then(function(r){if(!u.hasLayer(r.baselayers[n])){for(var f in i.layers.baselayers)i.layers.baselayers[f].icon=i.icons.unradio,u.hasLayer(r.baselayers[f])&&u.removeLayer(r.baselayers[f]);u.addLayer(r.baselayers[n]);i.layers.baselayers[n].icon=t.icons.radio}})})});i.preventDefault()},moveLayer:function(n,i,r){var e=Object.keys(t.layers.baselayers).length,u,f;if(i>=1+e&&i<=t.overlaysArray.length+e){for(f in t.layers.overlays)if(t.layers.overlays[f].index===i){u=t.layers.overlays[f];break}u&&h(t,function(){u.index=n.index;n.index=i})}r.stopPropagation();r.preventDefault()},initIndex:function(n,i){var r=Object.keys(t.layers.baselayers).length;n.index=s(n.index)?n.index:i+r+1},initGroup:function(n){t.groupProperties[n]=t.groupProperties[n]?t.groupProperties[n]:{}},toggleOpacity:function(n,i){if(i.visible){if(t.autoHideOpacity&&!t.layerProperties[i.name].opacityControl)for(var r in t.layerProperties)t.layerProperties[r].opacityControl=!1;t.layerProperties[i.name].opacityControl=!t.layerProperties[i.name].opacityControl}n.stopPropagation();n.preventDefault()},toggleLegend:function(n){t.layerProperties[n.name].showLegend=!t.layerProperties[n.name].showLegend},showLegend:function(n){return n.legend&&t.layerProperties[n.name].showLegend},unsafeHTML:function(n){return e.trustAsHtml(n)},getOpacityIcon:function(n){return n.visible&&t.layerProperties[n.name].opacityControl?t.icons.close:t.icons.open},getGroupIcon:function(n){return n.visible?t.icons.check:t.icons.uncheck},changeGroupVisibility:function(n){var r,u,i;if(s(t.groupProperties[n])){r=t.groupProperties[n].visible;for(u in t.layers.overlays)i=t.layers.overlays[u],i.group===n&&(i.visible=r)}}});o=i.get(0);L.Browser.touch?L.DomEvent.on(o,"click",L.DomEvent.stopPropagation):(L.DomEvent.disableClickPropagation(o),L.DomEvent.on(o,"mousewheel",L.DomEvent.stopPropagation))}],template:'<div class="angular-leaflet-control-layers" ng-show="overlaysArray.length"><h4 ng-if="title">{{ title }}<\/h4><div class="lf-baselayers"><h5 class="lf-title" ng-if="baseTitle">{{ baseTitle }}<\/h5><div class="lf-row" ng-repeat="(key, layer) in baselayersArray"><label class="lf-icon-bl" ng-click="changeBaseLayer(key, $event)"><input class="leaflet-control-layers-selector" type="radio" name="lf-radio" ng-show="false" ng-checked="baselayer === key" ng-value="key" /> <i class="lf-icon lf-icon-radio" ng-class="layer.icon"><\/i><div class="lf-text">{{layer.name}}<\/div><\/label><\/div><\/div><div class="lf-overlays"><h5 class="lf-title" ng-if="overlaysTitle">{{ overlaysTitle }}<\/h5><div class="lf-container"><div class="lf-row" ng-repeat="layer in (o = (overlaysArray | orderBy:\'index\':order))" ng-init="initIndex(layer, $index)"><label class="lf-icon-ol-group" ng-if="showGroups &amp;&amp; layer.group &amp;&amp; layer.group != o[$index-1].group"><input class="lf-control-layers-selector" type="checkbox" ng-show="false" ng-change="changeGroupVisibility(layer.group)" ng-model="groupProperties[layer.group].visible"/> <i class="lf-icon lf-icon-check" ng-class="getGroupIcon(groupProperties[layer.group])"><\/i><div class="lf-text">{{ layer.group }}<\/div><\/label><label class="lf-icon-ol"><input class="lf-control-layers-selector" type="checkbox" ng-show="false" ng-model="layer.visible"/> <i class="lf-icon lf-icon-check" ng-class="layer.icon"><\/i><div class="lf-text">{{layer.name}}<\/div><\/label><div class="lf-icons"><i class="lf-icon lf-up" ng-class="icons.up" ng-click="moveLayer(layer, layer.index - orderNumber, $event)"><\/i> <i class="lf-icon lf-down" ng-class="icons.down" ng-click="moveLayer(layer, layer.index + orderNumber, $event)"><\/i> <i class="lf-icon lf-toggle-legend" ng-class="icons.toggleLegend" ng-if="layer.legend" ng-click="toggleLegend(layer)"><\/i> <i class="lf-icon lf-open" ng-class="getOpacityIcon(layer)" ng-click="toggleOpacity($event, layer)"><\/i><\/div><div class="lf-legend" ng-if="showLegend(layer)" ng-bind-html="unsafeHTML(layer.legend)"><\/div><div class="lf-opacity clearfix" ng-if="layer.visible &amp;&amp; layerProperties[layer.name].opacityControl"><label ng-if="rangeIsSupported" class="pull-left" style="width: 50%">0<\/label><label ng-if="rangeIsSupported" class="pull-left text-right" style="width: 50%">100<\/label><input ng-if="rangeIsSupported" class="clearfix" type="range" min="0" max="1" step="0.05" class="lf-opacity-control" ng-model="layerProperties[layer.name].layerOptions.opacity"/><h6 ng-if="!rangeIsSupported">Range is not supported in this browser<\/h6><\/div><\/div><\/div><\/div><\/div>',link:function(t,i,f,e){var o=u.isDefined,s=e.getLeafletScope(),h=s.layers;t.$watch("icons",function(){var i={uncheck:"fa fa-square-o",check:"fa fa-check-square-o",radio:"fa fa-dot-circle-o",unradio:"fa fa-circle-o",up:"fa fa-angle-up",down:"fa fa-angle-down",open:"fa fa-angle-double-down",close:"fa fa-angle-double-up",toggleLegend:"fa fa-pencil-square-o"};o(t.icons)?(n.extend(i,t.icons),n.extend(t.icons,i)):t.icons=i});f.order=!o(f.order)||"normal"!==f.order&&"reverse"!==f.order?"normal":f.order;t.order="normal"===f.order;t.orderNumber="normal"===f.order?-1:1;t.layers=h;e.getMap().then(function(n){s.$watch("layers.baselayers",function(i){var u={};r.getLayers().then(function(r){var f,e;for(f in i)e=i[f],e.icon=t.icons[n.hasLayer(r.baselayers[f])?"radio":"unradio"],u[f]=e;t.baselayersArray=u})});s.$watch("layers.overlays",function(n){var u=[],i={};r.getLayers().then(function(){var f,r;for(f in n)r=n[f],r.icon=t.icons[r.visible?"check":"uncheck"],u.push(r),o(t.layerProperties[r.name])||(o(r.layerOptions.opacity)&&(r.layerOptions.opacity=1),t.layerProperties[r.name]={opacityControl:!1,showLegend:!0,layerOptions:r.layerOptions}),o(r.group)&&(o(t.groupProperties[r.group])||(t.groupProperties[r.group]={visible:!1}),i[r.group]=o(i[r.group])?i[r.group]:{count:0,visibles:0},i[r.group].count++,r.visible&&i[r.group].visibles++);for(f in i)t.groupProperties[f].visible=i[f].visibles===i[f].count;t.overlaysArray=u})},!0)})}}}]);n.module("ui-leaflet").directive("layers",["leafletLogger","$q","leafletData","leafletHelpers","leafletLayerHelpers","leafletControlHelpers",function(t,i,r,u,f,e){return{restrict:"A",scope:!1,replace:!1,require:"leaflet",controller:["$scope",function(n){n._leafletLayers=i.defer();this.getLayers=function(){return n._leafletLayers.promise}}],link:function(t,i,o,s){var c=u.isDefined,h={},w=s.getLeafletScope(),l=w.layers,y=f.createLayer,a=f.safeAddLayer,b=f.safeRemoveLayer,k=f.changeOpacityListener,p=e.updateLayersControl,v=!1;t.$on("$destroy",function(){e.destroyMapLayersControl(t.mapId)});s.getMap().then(function(i){var f,e,u,s,d;t._leafletLayers.resolve(h);r.setLayers(h,o.id);h.baselayers={};h.overlays={};f=o.id;e=!1;for(u in l.baselayers)s=y(l.baselayers[u]),c(s)?(h.baselayers[u]=s,l.baselayers[u].top===!0&&(a(i,h.baselayers[u]),e=!0)):delete l.baselayers[u];!e&&Object.keys(h.baselayers).length>0&&a(i,h.baselayers[Object.keys(l.baselayers)[0]]);for(u in l.overlays)"cartodb"===l.overlays[u].type,d=y(l.overlays[u]),c(d)?(h.overlays[u]=d,l.overlays[u].visible===!0&&a(i,h.overlays[u])):delete l.overlays[u];w.$watch("layers.baselayers",function(t,r){var e,u,o,s,w;if(n.equals(t,r))return v=p(i,f,v,t,l.overlays,h),!0;for(e in h.baselayers)c(t[e])&&!t[e].doRefresh||(i.hasLayer(h.baselayers[e])&&i.removeLayer(h.baselayers[e]),delete h.baselayers[e],t[e]&&t[e].doRefresh&&(t[e].doRefresh=!1));for(u in t)c(h.baselayers[u])?t[u].top!==!0||i.hasLayer(h.baselayers[u])?t[u].top===!1&&i.hasLayer(h.baselayers[u])&&i.removeLayer(h.baselayers[u]):a(i,h.baselayers[u]):(o=y(t[u]),c(o)&&(h.baselayers[u]=o,t[u].top===!0&&a(i,h.baselayers[u])));s=!1;for(w in h.baselayers)if(i.hasLayer(h.baselayers[w])){s=!0;break}!s&&Object.keys(h.baselayers).length>0&&a(i,h.baselayers[Object.keys(h.baselayers)[0]]);v=p(i,f,v,t,l.overlays,h)},!0);w.$watch("layers.overlays",function(t,r){var e,w,u,o,s;if(n.equals(t,r))return v=p(i,f,v,l.baselayers,t,h),!0;for(e in h.overlays)(!c(t[e])||t[e].doRefresh)&&(i.hasLayer(h.overlays[e])&&(w=c(t[e])?t[e].layerOptions:null,b(i,h.overlays[e],w)),delete h.overlays[e],t[e]&&t[e].doRefresh&&(t[e].doRefresh=!1));for(u in t){if(c(h.overlays[u]))t[u].visible&&!i.hasLayer(h.overlays[u])?a(i,h.overlays[u]):t[u].visible===!1&&i.hasLayer(h.overlays[u])&&b(i,h.overlays[u],t[u].layerOptions),o=h.overlays[u],i.hasLayer(h.overlays[u])&&(t[u].layerOptions.opacity!==r[u].layerOptions.opacity&&(c(o.setOpacity)&&o.setOpacity(t[u].layerOptions.opacity),c(o.getLayers)&&c(o.eachLayer)&&o.eachLayer(k(t[u].layerOptions.opacity))),c(t[u].index)&&o.setZIndex&&t[u].index!==r[u].index&&o.setZIndex(t[u].index));else{if(s=y(t[u]),!c(s))continue;h.overlays[u]=s;t[u].visible===!0&&a(i,h.overlays[u]);c(t[u].index)&&h.overlays[u].setZIndex&&h.overlays[u].setZIndex(t[u].index)}t[u].visible&&i._loaded&&t[u].data&&"heatmap"===t[u].type&&(h.overlays[u].setData(t[u].data),h.overlays[u].update())}v=p(i,f,v,l.baselayers,t,h)},!0)})}}}]);n.module("ui-leaflet").directive("legend",["leafletLogger","$http","$timeout","leafletHelpers","leafletLegendHelpers",function(n,t,i,r,u){var f=n,e=r.errorHeader+" [Legend] ";return{restrict:"A",scope:!1,replace:!1,require:"leaflet",transclude:!1,link:function(n,t,i,o){var a,v,s,l,y=r.isArray,b=r.isString,h=r.isDefined,k=r.isFunction,c=o.getLeafletScope(),p=c.legend,w;c.$watch("legend",function(n){h(n)&&(a=n.legendClass?n.legendClass:"legend",v=n.position||"bottomright",l=n.type||"arcgis")},!0);w=function(n,t,i){t&&t.layers&&t.layers.length>0&&(h(s)?u.updateLegend(s.getContainer(),t,l,i):(s=L.control({position:v}),s.onAdd=u.getOnAddLegend(t,a,l,i),s.addTo(n)),h(p.loadedData)&&k(p.loadedData)&&p.loadedData())};o.getMap().then(function(n){c.$watch("legend",function(t){return h(t)?h(t.url)||"arcgis"!==l||y(t.colors)&&y(t.labels)&&t.colors.length===t.labels.length?h(t.url)?void f.info(e+" loading legend service."):(h(s)&&(s.removeFrom(n),s=null),s=L.control({position:v}),"arcgis"===l&&(s.onAdd=u.getOnAddArrayLegend(t,a)),void s.addTo(n)):void f.warn(e+" legend.colors and legend.labels must be set."):void(h(s)&&(s.removeFrom(n),s=null))});c.$watch("legend.url",function(t){if(h(t)){if(!y(t)&&!b(t))return void f.warn(e+" legend.url must be an array or string.");for(var r,s=b(t)?[t]:t,c=function(i,u){return function(o){h(o.data.error)?f.warn(e+"Error loadin legend from: "+u,o.data.error.message):r&&r.layers&&r.layers.length>0?r.layers=r.layers.concat(o.data.layers):r=o.data;i===s.length-1&&w(n,r,t)}},l=function(n){f.warn(e+" legend.url not loaded.",n)},o=0;o<s.length;o++)u.addLegendURL(i.id,{url:s[o],method:"GET"}).then(c(o)).catch(l)}});c.$watch("legend.legendData",function(t){f.debug("legendData",t);!h(c.legend.url)&&h(t)&&w(n,t)},!0)})}}}]);n.module("ui-leaflet").directive("markers",["leafletLogger","$rootScope","$q","leafletData","leafletHelpers","leafletMapDefaults","leafletMarkersHelpers","leafletMarkerEvents","leafletIterators","leafletWatchHelpers","leafletDirectiveControlsHelpers",function(t,i,r,u,f,e,o,s,h,c,l){var a=f.isDefined,y=f.errorHeader,p=f,w=f.isString,rt=o.addMarkerWatcher,ut=o.updateMarker,ft=o.listenMarkerEvents,et=o.addMarkerToGroup,ot=o.createMarker,st=o.deleteMarker,ht=o.getModelFromModels,b=o.getLayerModels,ct=o.resetUnusedMarkerGroups,k=h,lt=f.watchOptions,at=c.maybeWatch,vt=l.extend,v=t,g={changeFromDirective:!1},yt=function(n,t,i){if(Object.keys(n).length)return i&&w(i)?!n[i]||!Object.keys(n[i]).length?void 0:n[i][t]:n[t]},pt=function(n,t,i,r){return r&&w(r)?(a(t[r])||(t[r]={}),t[r][i]=n):t[i]=n,n},wt=function(n,t,i,r,u,f){if(!w(n))return v.error(y+" A layername must be a string"),!1;if(!a(t))return v.error(y+" You must add layers to the directive if the markers are going to use this functionality."),!1;if(!a(t.overlays)||!a(t.overlays[n]))return v.error(y+' A marker can only be added to a layer of type "group"'),!1;var e=t.overlays[n];return e instanceof L.LayerGroup||e instanceof L.FeatureGroup?(e.addLayer(r),null===u&&f.hasLayer(r)&&i.focus===!0&&r.openPopup(),!0):(v.error(y+' Adding a marker to an overlay needs a overlay of the type "group" or "featureGroup"'),!1)},nt=function(n,t,i,r,u,f,e,o,h,c){k.each(t,function(t,l){if(!c[l]){if(l.search("-")!==-1)return void v.error('The marker can\'t use a "-" on his key name: "'+l+'".');var w=p.getObjectDotPath(h?[h,l]:[l]),b=yt(f,l,h);p.modelChangeInDirective(g,"changeFromDirective",function(){var d,c,k,g,nt;if(a(b))d=ht(i,l,h),ut(t,d,b,w,e,u,r);else{if(c=ot(t),k=(t?t.layer:void 0)||h,!a(c))return void v.error(y+" Received invalid data on the marker "+l+".");if((pt(c,f,l,h),a(t.message)&&c.bindPopup(t.message,t.popupOptions),a(t.group))&&(g=a(t.groupOption)?t.groupOption:null,et(c,t.group,g,r)),p.LabelPlugin.isLoaded()&&a(t.label)&&a(t.label.message)&&c.bindLabel(t.label.message,t.label.options),a(t)&&(a(t.layer)||a(h))){if(nt=wt(k,u,t,c,o.individual.type,r),!nt)return}else a(t.group)||(r.addLayer(c),null===o.individual.type&&t.focus===!0&&c.openPopup());null!==o.individual.type&&rt(c,w,e,u,r,o.individual);ft(c,t,e,o.individual.type,r);s.bindEvents(n,c,w,t,e,k)}})}})},tt=function(t,i,r,u,f){var o,s,h=!1,c=!1,l=a(i),e;for(e in r)h||(v.debug(y+"[markers] destroy: "),h=!0),l&&(s=t[e],o=i[e],c=u&&n.equals(s,o)),a(t)&&Object.keys(t).length&&a(t[e])&&Object.keys(t[e]).length&&!c||f&&p.isFunction(f)&&f(s,o,e)},d=function(n,t,i,r,u){tt(n,t,i,!1,function(n,t,f){v.debug(y+"[marker] is deleting marker: "+f);st(i[f],r,u);delete i[f]})},it=function(n,t,i){var r={};return tt(n,t,i,!0,function(n,t,i){v.debug(y+"[marker] is already rendered, marker: "+i);r[i]=n}),r};return{restrict:"A",scope:!1,replace:!1,require:["leaflet","?layers"],link:function(n,t,i,f){var o=f[0],e=o.getLeafletScope();o.getMap().then(function(t){var c,o={},s,h;c=a(f[1])?f[1].getLayers:function(){var n=r.defer();return n.resolve(),n.promise};s=e.watchOptions&&e.watchOptions.markers?e.watchOptions.markers:lt;h=a(i.markersNested)&&p.isTruthy(i.markersNested);c().then(function(r){var f=function(n,i){return ct(),h?void k.each(n,function(n,u){var f=b(i,u);d(n,f,o[u],t,r)}):void d(n,i,o,t,r)},c=function(n,u){f(n,u);var c=null;return h?void k.each(n,function(f,h){var l=b(u,h),a=b(n,h);c=it(a,l,o[h]);nt(i.id,f,u,t,r,o,e,s,h,c)}):(c=it(n,u,o),void nt(i.id,n,u,t,r,o,e,s,void 0,c))};vt(i.id,"markers",c,f);u.setMarkers(o,i.id);at(e,"markers",s,function(n,t){g.changeFromDirective||c(n,t)});n.$on("$destroy",function(){d(e.markers,{},o,t,r)})})})}}}]);n.module("ui-leaflet").directive("maxbounds",["leafletLogger","leafletMapDefaults","leafletBoundsHelpers","leafletHelpers",function(n,t,i,r){return{restrict:"A",scope:!1,replace:!1,require:"leaflet",link:function(n,t,u,f){var e=f.getLeafletScope(),o=i.isValidBounds,s=r.isNumber;f.getMap().then(function(n){e.$watch("maxbounds",function(t){if(!o(t))return void n.setMaxBounds();var r=i.createLeafletBounds(t);s(t.pad)&&(r=r.pad(t.pad));n.setMaxBounds(r);u.center||u.lfCenter||n.fitBounds(r)})})}}}]);n.module("ui-leaflet").directive("paths",["leafletLogger","$q","leafletData","leafletMapDefaults","leafletHelpers","leafletPathsHelpers","leafletPathEvents","leafletWatchHelpers",function(n,t,i,r,u,f,e,o){var s=n;return{restrict:"A",scope:!1,replace:!1,require:["leaflet","?layers"],link:function(n,h,c,l){var p=l[0],a=u.isDefined,b=u.isString,v=p.getLeafletScope(),k=v.paths,d=f.createPath,g=e.bindPathEvents,y=f.setPathOptions,w=o.maybeWatch;p.getMap().then(function(n){var e,h=r.getDefaults(c.id),f,o;(e=a(l[1])?l[1].getLayers:function(){var n=t.defer();return n.resolve(),n.promise},a(k))&&(o={type:"watchCollection",individual:{type:"watchDeep"}},f=v.watchOptions&&v.watchOptions.paths?v.watchOptions.paths:o,e().then(function(t){var r={};i.setPaths(r,c.id);var e=function(i,r,u){var f='paths["'+r+'"]';w(v,f,u,function(r,u,f){var e,o;if(!a(r)){if(a(u.layer))for(e in t.overlays)o=t.overlays[e],o.removeLayer(i);return n.removeLayer(i),void f()}y(i,r.type,r)})},o=function(t){for(var i in r)a(t[i])||(n.removeLayer(r[i]),delete r[i])},l=function(i){var w,l,p,k;o(i);for(w in i)if(0!==w.search("\\$"))if(w.search("-")===-1){if(!a(r[w])){if(l=i[w],p=d(w,i[w],h),a(p)&&a(l.message)&&p.bindPopup(l.message,l.popupOptions),u.LabelPlugin.isLoaded()&&a(l.label)&&a(l.label.message)&&p.bindLabel(l.label.message,l.label.options),a(l)&&a(l.layer)){if(!b(l.layer)){s.error("[AngularJS - Leaflet] A layername must be a string");continue}if(!a(t)){s.error("[AngularJS - Leaflet] You must add layers to the directive if the markers are going to use this functionality.");continue}if(!a(t.overlays)||!a(t.overlays[l.layer])){s.error('[AngularJS - Leaflet] A path can only be added to a layer of type "group"');continue}if(k=t.overlays[l.layer],!(k instanceof L.LayerGroup||k instanceof L.FeatureGroup)){s.error('[AngularJS - Leaflet] Adding a path to an overlay needs a overlay of the type "group" or "featureGroup"');continue}r[w]=p;k.addLayer(p);null!==f.individual.type?e(p,w,f.individual):y(p,l.type,l)}else a(p)&&(r[w]=p,n.addLayer(p),null!==f.individual.type?e(p,w,f.individual):y(p,l.type,l));g(c.id,p,w,l,v)}}else s.error('[AngularJS - Leaflet] The path name "'+w+'" is not valid. It must not include "-" and a number.')};w(v,"paths",f,function(n){l(n)})}))})}}}]);n.module("ui-leaflet").directive("tiles",["leafletLogger","leafletData","leafletMapDefaults","leafletHelpers",function(t,i,r,u){var f=t;return{restrict:"A",scope:!1,replace:!1,require:"leaflet",link:function(t,e,o,s){var h=u.isDefined,c=s.getLeafletScope(),l=c.tiles;return h(l)&&h(l.url)?void s.getMap().then(function(t){var u,f=r.getDefaults(o.id);c.$watch("tiles",function(r){var e=f.tileLayerOptions,s=f.tileLayer;return!h(r.url)&&h(u)?void t.removeLayer(u):h(u)?h(r.url)&&h(r.options)&&!n.equals(r.options,e)?(t.removeLayer(u),e=f.tileLayerOptions,n.copy(r.options,e),s=r.url,u=L.tileLayer(s,e),u.addTo(t),void i.setTiles(u,o.id)):void(h(r.url)&&u.setUrl(r.url)):(h(r.options)&&n.copy(r.options,e),h(r.url)&&(s=r.url),u=L.tileLayer(s,e),u.addTo(t),void i.setTiles(u,o.id))},!0)}):void f.warn("[AngularJS - Leaflet] The 'tiles' definition doesn't have the 'url' property.")}}}]);n.module("ui-leaflet").directive("watchOptions",["$log","$rootScope","$q","leafletData","leafletHelpers",function(t,i,r,u,f){var e=f.isDefined,o=f.errorHeader,h=f.isObject,s=t;return{restrict:"A",scope:!1,replace:!1,require:["leaflet"],link:function(t,i,r,u){var l=u[0],f=l.getLeafletScope(),c=function(n){return"watch"===n||"watchCollection"===n||"watchDeep"===n||null===n};e(f.watchOptions)&&h(f.watchOptions)&&n.forEach(["markers","geojson","paths"],function(n){e(f.watchOptions[n])&&(c(f.watchOptions[n].type)||s.error(o+" watchOptions."+n+".type is not a valid type."),e(f.watchOptions[n].individual)?c(f.watchOptions[n].individual.type)||s.error(o+" watchOptions."+n+".individual.type is not a valid type."):s.error(o+" watchOptions."+n+".type.individual must be defined."))})}}}]);n.module("ui-leaflet").factory("leafletEventsHelpersFactory",["$rootScope","$q","leafletLogger","leafletHelpers",function(t,i,r,u){var l=u.safeApply,o=u.isDefined,h=u.isObject,c=u.isArray,e=u.errorHeader,f=r,s=function(n,t){this.rootBroadcastName=n;f.debug("leafletEventsHelpersFactory: lObjectType: "+t+"rootBroadcastName: "+n);this.lObjectType=t};return s.prototype.getAvailableEvents=function(){return[]},s.prototype.genDispatchEvent=function(n,t,i,r,u,e,o,s,h){var c=this;return n=n||"",n&&(n="."+n),function(l){var a=c.rootBroadcastName+n+"."+t;f.debug(a);c.fire(r,a,i,l,l.target||u,o,e,s,h)}},s.prototype.fire=function(i,r,u,f,e,s,h,c){l(i,function(){var l={leafletEvent:f,leafletObject:e,modelName:h,model:s};o(c)&&n.extend(l,{layerName:c});"emit"===u?i.$emit(r,l):t.$broadcast(r,l)})},s.prototype.bindEvents=function(n,t,i,r,u,s,l){var v=[],w="emit",a=this,y,p;return o(u.eventBroadcast)?h(u.eventBroadcast)?o(u.eventBroadcast[a.lObjectType])?h(u.eventBroadcast[a.lObjectType])?(o(u.eventBroadcast[this.lObjectType].logic)&&"emit"!==u.eventBroadcast[a.lObjectType].logic&&"broadcast"!==u.eventBroadcast[a.lObjectType].logic&&f.warn(e+"Available event propagation logic are: 'emit' or 'broadcast'."),y=!1,p=!1,o(u.eventBroadcast[a.lObjectType].enable)&&c(u.eventBroadcast[a.lObjectType].enable)&&(y=!0),o(u.eventBroadcast[a.lObjectType].disable)&&c(u.eventBroadcast[a.lObjectType].disable)&&(p=!0),y&&p?f.warn(e+"can not enable and disable events at the same time"):y||p?y?u.eventBroadcast[this.lObjectType].enable.forEach(function(n){v.indexOf(n)!==-1?f.warn(e+"This event "+n+" is already enabled"):a.getAvailableEvents().indexOf(n)===-1?f.warn(e+"This event "+n+" does not exist"):v.push(n)}):(v=this.getAvailableEvents(),u.eventBroadcast[a.lObjectType].disable.forEach(function(n){var t=v.indexOf(n);t===-1?f.warn(e+"This event "+n+" does not exist or has been already disabled"):v.splice(t,1)})):f.warn(e+"must enable or disable events")):f.warn(e+"event-broadcast."+[a.lObjectType]+" must be an object check your model."):v=this.getAvailableEvents():f.error(e+"event-broadcast must be an object check your model."):v=this.getAvailableEvents(),v.forEach(function(f){t.on(f,a.genDispatchEvent(n,f,w,u,t,i,r,s,l))}),w},s}]).service("leafletEventsHelpers",["leafletEventsHelpersFactory",function(n){return new n}]);n.module("ui-leaflet").factory("leafletGeoJsonEvents",["$rootScope","$q","leafletLogger","leafletHelpers","leafletEventsHelpersFactory","leafletData",function(n,t,i,r,u,f){var s=r.safeApply,o=u,e=function(){o.call(this,"leafletDirectiveGeoJson","geojson")};return e.prototype=new o,e.prototype.genDispatchEvent=function(t,i,r,u,e,h,c,l,a){var v=o.prototype.genDispatchEvent.call(this,t,i,r,u,e,h,c,l),y=this;return function(t){"mouseout"===i&&(a.resetStyleOnMouseout&&f.getGeoJSON(a.mapId).then(function(n){var i=l?n[l]:n;i.resetStyle(t.target)}),s(u,function(){n.$broadcast(y.rootBroadcastName+".mouseout",t)}));v(t)}},e.prototype.getAvailableEvents=function(){return["click","dblclick","mouseover","mouseout"]},new e}]);n.module("ui-leaflet").factory("leafletLabelEvents",["$rootScope","$q","leafletLogger","leafletHelpers","leafletEventsHelpersFactory",function(n,t,i,r,u){var o=r,e=u,f=function(){e.call(this,"leafletDirectiveLabel","markers")};return f.prototype=new e,f.prototype.genDispatchEvent=function(n,t,i,r,u,f,o,s){var h=f.replace("markers.","");return e.prototype.genDispatchEvent.call(this,n,t,i,r,u,h,o,s)},f.prototype.getAvailableEvents=function(){return["click","dblclick","mousedown","mouseover","mouseout","contextmenu"]},f.prototype.genEvents=function(n,t,i,r,u,f,e,s){var h=this,c=this.getAvailableEvents(),l=o.getObjectArrayPath("markers."+f);c.forEach(function(t){u.label.on(t,h.genDispatchEvent(n,t,i,r,u.label,l,e,s))})},f.prototype.bindEvents=function(){},new f}]);n.module("ui-leaflet").factory("leafletMapEvents",["$rootScope","$q","leafletLogger","leafletHelpers","leafletEventsHelpers","leafletIterators",function(n,t,i,r,u,f){var e=r.isDefined,s=u.fire,h=function(){return["click","dblclick","mousedown","mouseup","mouseover","mouseout","mousemove","contextmenu","focus","blur","preclick","load","unload","viewreset","movestart","move","moveend","dragstart","drag","dragend","zoomstart","zoomanim","zoomend","zoomlevelschange","resize","autopanstart","layeradd","layerremove","baselayerchange","overlayadd","overlayremove","locationfound","locationerror","popupopen","popupclose","draw:created","draw:edited","draw:deleted","draw:drawstart","draw:drawstop","draw:editstart","draw:editstop","draw:deletestart","draw:deletestop"]},o=function(n,t,r,u){return u&&(u+="."),function(f){var e="leafletDirectiveMap."+u+t;i.debug(e);s(n,e,r,f,f.target,n)}},c=function(n){n.$broadcast("boundsChanged")},l=function(n,t,i,r){if(e(i.urlHashCenter)){var u=t.getCenter(),f=u.lat.toFixed(4)+":"+u.lng.toFixed(4)+":"+t.getZoom();e(r.c)&&r.c===f||n.$emit("centerUrlHash",f)}},a=function(n,t,i,r,u,e){f.each(i,function(i){var f={};f[r]=i;t||(t=n._container.id||"");n.on(i,o(u,i,e,t),f)})};return{getAvailableMapEvents:h,genDispatchMapEvent:o,notifyCenterChangedToBounds:c,notifyCenterUrlHashChanged:l,addEvents:a}}]);n.module("ui-leaflet").factory("leafletMarkerEvents",["$rootScope","$q","leafletLogger","leafletHelpers","leafletEventsHelpersFactory","leafletLabelEvents",function(n,t,i,r,u,f){var s=r.safeApply,h=r.isDefined,c=r,l=f,o=u,e=function(){o.call(this,"leafletDirectiveMarker","markers")};return e.prototype=new o,e.prototype.genDispatchEvent=function(t,i,r,u,f,e,h,c){var l=o.prototype.genDispatchEvent.call(this,t,i,r,u,f,e,h,c);return function(t){"click"===i?s(u,function(){n.$broadcast("leafletDirectiveMarkersClick",e)}):"dragend"===i&&(s(u,function(){h.lat=f.getLatLng().lat;h.lng=f.getLatLng().lng}),h.message&&h.focus===!0&&f.openPopup());l(t)}},e.prototype.getAvailableEvents=function(){return["click","dblclick","mousedown","mouseover","mouseout","contextmenu","dragstart","drag","dragend","move","remove","popupopen","popupclose","touchend","touchstart","touchmove","touchcancel","touchleave"]},e.prototype.bindEvents=function(n,t,i,r,u,f){var e=o.prototype.bindEvents.call(this,n,t,i,r,u,f);c.LabelPlugin.isLoaded()&&h(t.label)&&l.genEvents(n,i,e,u,t,r,f)},new e}]);r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol?"symbol":typeof n};n.module("ui-leaflet").factory("leafletPathEvents",["$rootScope","$q","leafletLogger","leafletHelpers","leafletLabelEvents","leafletEventsHelpers",function(n,t,i,u,f,e){var c=u.isDefined,l=u.isObject,a=u,s=u.errorHeader,v=f,y=e.fire,o=i,p=function(n,t,i,r,u,f,e,s){return n=n||"",n&&(n="."+n),function(h){var c="leafletDirectivePath"+n+"."+t;o.debug(c);y(r,c,i,h,h.target||u,e,f,s)}},w=function(n,t,i,u,f){var e,y,w=[],d="broadcast",b,k,g;if(c(f.eventBroadcast))if(l(f.eventBroadcast))if(c(f.eventBroadcast.path))if(l(f.eventBroadcast.paths))o.warn(s+"event-broadcast.path must be an object check your model.");else if(void 0!==f.eventBroadcast.path.logic&&null!==f.eventBroadcast.path.logic&&("emit"!==f.eventBroadcast.path.logic&&"broadcast"!==f.eventBroadcast.path.logic?o.warn(s+"Available event propagation logic are: 'emit' or 'broadcast'."):"emit"===f.eventBroadcast.path.logic&&(d="emit")),b=!1,k=!1,void 0!==f.eventBroadcast.path.enable&&null!==f.eventBroadcast.path.enable&&"object"===r(f.eventBroadcast.path.enable)&&(b=!0),void 0!==f.eventBroadcast.path.disable&&null!==f.eventBroadcast.path.disable&&"object"===r(f.eventBroadcast.path.disable)&&(k=!0),b&&k)o.warn(s+"can not enable and disable events at the same time");else if(b||k)if(b)for(e=0;e<f.eventBroadcast.path.enable.length;e++)y=f.eventBroadcast.path.enable[e],w.indexOf(y)!==-1?o.warn(s+"This event "+y+" is already enabled"):h().indexOf(y)===-1?o.warn(s+"This event "+y+" does not exist"):w.push(y);else for(w=h(),e=0;e<f.eventBroadcast.path.disable.length;e++)y=f.eventBroadcast.path.disable[e],g=w.indexOf(y),g===-1?o.warn(s+"This event "+y+" does not exist or has been already disabled"):w.splice(g,1);else o.warn(s+"must enable or disable events");else w=h();else o.error(s+"event-broadcast must be an object check your model.");else w=h();for(e=0;e<w.length;e++)y=w[e],t.on(y,p(n,y,d,f,w,i));a.LabelPlugin.isLoaded()&&c(t.label)&&v.genEvents(n,i,d,f,t,u)},h=function(){return["click","dblclick","mousedown","mouseover","mouseout","contextmenu","add","remove","popupopen","popupclose"]};return{getAvailablePathEvents:h,bindPathEvents:w}}])}(angular);!function(n,t,i){L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(n){L.Util.setOptions(this,n);this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction);this.options.clusterPane||(this.options.clusterPane=L.Marker.prototype.options.pane);this._featureGroup=L.featureGroup();this._featureGroup.addEventParent(this);this._nonPointGroup=L.featureGroup();this._nonPointGroup.addEventParent(this);this._inZoomAnimation=0;this._needsClustering=[];this._needsRemoving=[];this._currentShownBounds=null;this._queue=[];this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var t=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,t?this._withAnimation:this._noAnimation);this._markerCluster=t?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(n){if(n instanceof L.LayerGroup)return this.addLayers([n]);if(!n.getLatLng)return this._nonPointGroup.addLayer(n),this.fire("layeradd",{layer:n}),this;if(!this._map)return this._needsClustering.push(n),this.fire("layeradd",{layer:n}),this;if(this.hasLayer(n))return this;this._unspiderfy&&this._unspiderfy();this._addLayer(n,this._maxZoom);this.fire("layeradd",{layer:n});this._topClusterLevel._recalculateBounds();this._refreshClustersIcons();var t=n,i=this._zoom;if(n.__parent)for(;t.__parent._zoom>=i;)t=t.__parent;return this._currentShownBounds.contains(t.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(n,t):this._animationAddLayerNonAnimated(n,t)),this},removeLayer:function(n){return n instanceof L.LayerGroup?this.removeLayers([n]):n.getLatLng?this._map?n.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(n)),this._removeLayer(n,!0),this.fire("layerremove",{layer:n}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),n.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(n)&&(this._featureGroup.removeLayer(n),n.clusterShow&&n.clusterShow()),this):this:(!this._arraySplice(this._needsClustering,n)&&this.hasLayer(n)&&this._needsRemoving.push({layer:n,latlng:n._latlng}),this.fire("layerremove",{layer:n}),this):(this._nonPointGroup.removeLayer(n),this.fire("layerremove",{layer:n}),this)},addLayers:function(n,t){var h,e,c;if(!L.Util.isArray(n))return this.addLayer(n);var i,l=this._featureGroup,o=this._nonPointGroup,a=this.options.chunkedLoading,v=this.options.chunkInterval,s=this.options.chunkProgress,u=n.length,r=0,f=!0;if(this._map)h=(new Date).getTime(),e=L.bind(function(){for(var p,c,w,y=(new Date).getTime();u>r;r++){if(a&&0==r%200&&(p=(new Date).getTime()-y,p>v))break;(i=n[r],i instanceof L.LayerGroup)?(f&&(n=n.slice(),f=!1),this._extractNonGroupLayers(i,n),u=n.length):i.getLatLng?!this.hasLayer(i)&&(this._addLayer(i,this._maxZoom),t||this.fire("layeradd",{layer:i}),i.__parent&&2===i.__parent.getChildCount())&&(c=i.__parent.getAllChildMarkers(),w=c[0]===i?c[1]:c[0],l.removeLayer(w)):(o.addLayer(i),t||this.fire("layeradd",{layer:i}))}s&&s(r,u,(new Date).getTime()-h);r===u?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(e,this.options.chunkDelay)},this),e();else for(c=this._needsClustering;u>r;r++)i=n[r],i instanceof L.LayerGroup?(f&&(n=n.slice(),f=!1),this._extractNonGroupLayers(i,n),u=n.length):i.getLatLng?this.hasLayer(i)||c.push(i):o.addLayer(i);return this},removeLayers:function(n){var i,t,r=n.length,o=this._featureGroup,s=this._nonPointGroup,u=!0,f,e;if(!this._map){for(i=0;r>i;i++)t=n[i],t instanceof L.LayerGroup?(u&&(n=n.slice(),u=!1),this._extractNonGroupLayers(t,n),r=n.length):(this._arraySplice(this._needsClustering,t),s.removeLayer(t),this.hasLayer(t)&&this._needsRemoving.push({layer:t,latlng:t._latlng}),this.fire("layerremove",{layer:t}));return this}if(this._unspiderfy)for(this._unspiderfy(),f=n.slice(),e=r,i=0;e>i;i++)t=f[i],t instanceof L.LayerGroup?(this._extractNonGroupLayers(t,f),e=f.length):this._unspiderfyLayer(t);for(i=0;r>i;i++)t=n[i],t instanceof L.LayerGroup?(u&&(n=n.slice(),u=!1),this._extractNonGroupLayers(t,n),r=n.length):t.__parent?(this._removeLayer(t,!0,!0),this.fire("layerremove",{layer:t}),o.hasLayer(t)&&(o.removeLayer(t),t.clusterShow&&t.clusterShow())):(s.removeLayer(t),this.fire("layerremove",{layer:t}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(n){n.off(this._childMarkerEventHandlers,this);delete n.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var n=new L.LatLngBounds,t;for(this._topClusterLevel&&n.extend(this._topClusterLevel._bounds),t=this._needsClustering.length-1;t>=0;t--)n.extend(this._needsClustering[t].getLatLng());return n.extend(this._nonPointGroup.getBounds()),n},eachLayer:function(n,t){var f,i,r,u=this._needsClustering.slice(),e=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(u),i=u.length-1;i>=0;i--){for(f=!0,r=e.length-1;r>=0;r--)if(e[r].layer===u[i]){f=!1;break}f&&n.call(t,u[i])}this._nonPointGroup.eachLayer(n,t)},getLayers:function(){var n=[];return this.eachLayer(function(t){n.push(t)}),n},getLayer:function(n){var t=null;return n=parseInt(n,10),this.eachLayer(function(i){L.stamp(i)===n&&(t=i)}),t},hasLayer:function(n){if(!n)return!1;for(var i=this._needsClustering,t=i.length-1;t>=0;t--)if(i[t]===n)return!0;for(i=this._needsRemoving,t=i.length-1;t>=0;t--)if(i[t].layer===n)return!1;return!(!n.__parent||n.__parent._group!==this)||this._nonPointGroup.hasLayer(n)},zoomToShowLayer:function(n,t){"function"!=typeof t&&(t=function(){});var i=function(){(n._icon||n.__parent._icon)&&!this._inZoomAnimation&&(this._map.off("moveend",i,this),this.off("animationend",i,this),n._icon?t():n.__parent._icon&&(this.once("spiderfied",t,this),n.__parent.spiderfy()))};n._icon&&this._map.getBounds().contains(n.getLatLng())?t():n.__parent._zoom<Math.round(this._map._zoom)?(this._map.on("moveend",i,this),this._map.panTo(n.getLatLng())):(this._map.on("moveend",i,this),this.on("animationend",i,this),n.__parent.zoomToBounds())},onAdd:function(n){this._map=n;var i,r,t;if(!isFinite(this._map.getMaxZoom()))throw"Map has no maxZoom specified";for(this._featureGroup.addTo(n),this._nonPointGroup.addTo(n),this._gridClusters||this._generateInitialClusters(),this._maxLat=n.options.crs.projection.MAX_LATITUDE,i=0,r=this._needsRemoving.length;r>i;i++)t=this._needsRemoving[i],t.newlatlng=t.layer._latlng,t.layer._latlng=t.latlng;for(i=0,r=this._needsRemoving.length;r>i;i++)t=this._needsRemoving[i],this._removeLayer(t.layer,!0),t.layer._latlng=t.newlatlng;this._needsRemoving=[];this._zoom=Math.round(this._map._zoom);this._currentShownBounds=this._getExpandedVisibleBounds();this._map.on("zoomend",this._zoomEnd,this);this._map.on("moveend",this._moveEnd,this);this._spiderfierOnAdd&&this._spiderfierOnAdd();this._bindEvents();r=this._needsClustering;this._needsClustering=[];this.addLayers(r,!0)},onRemove:function(n){n.off("zoomend",this._zoomEnd,this);n.off("moveend",this._moveEnd,this);this._unbindEvents();this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","");this._spiderfierOnRemove&&this._spiderfierOnRemove();delete this._maxLat;this._hideCoverage();this._featureGroup.remove();this._nonPointGroup.remove();this._featureGroup.clearLayers();this._map=null},getVisibleParent:function(n){for(var t=n;t&&!t._icon;)t=t.__parent;return t||null},_arraySplice:function(n,t){for(var i=n.length-1;i>=0;i--)if(n[i]===t)return n.splice(i,1),!0},_removeFromGridUnclustered:function(n,t){for(var i=this._map,r=this._gridUnclustered,u=Math.floor(this._map.getMinZoom());t>=u&&r[t].removeObject(n,i.project(n.getLatLng(),t));t--);},_childMarkerDragStart:function(n){n.target.__dragStart=n.target._latlng},_childMarkerMoved:function(n){if(!this._ignoreMove&&!n.target.__dragStart){var t=n.target._popup&&n.target._popup.isOpen();this._moveChild(n.target,n.oldLatLng,n.latlng);t&&n.target.openPopup()}},_moveChild:function(n,t,i){n._latlng=t;this.removeLayer(n);n._latlng=i;this.addLayer(n)},_childMarkerDragEnd:function(n){n.target.__dragStart&&this._moveChild(n.target,n.target.__dragStart,n.target._latlng);delete n.target.__dragStart},_removeLayer:function(n,t,i){var s=this._gridClusters,h=this._gridUnclustered,f=this._featureGroup,e=this._map,c=Math.floor(this._map.getMinZoom()),u,r,o;for(t&&this._removeFromGridUnclustered(n,this._maxZoom),r=n.__parent,o=r._markers,this._arraySplice(o,n);r&&(r._childCount--,r._boundsNeedUpdate=!0,!(r._zoom<c));)t&&r._childCount<=1?(u=r._markers[0]===n?r._markers[1]:r._markers[0],s[r._zoom].removeObject(r,e.project(r._cLatLng,r._zoom)),h[r._zoom].addObject(u,e.project(u.getLatLng(),r._zoom)),this._arraySplice(r.__parent._childClusters,r),r.__parent._markers.push(u),u.__parent=r.__parent,r._icon&&(f.removeLayer(r),i||f.addLayer(u))):r._iconNeedsUpdate=!0,r=r.__parent;delete n.__parent},_isOrIsParent:function(n,t){for(;t;){if(n===t)return!0;t=t.parentNode}return!1},fire:function(n,t,i){if(t&&t.layer instanceof L.MarkerCluster){if(t.originalEvent&&this._isOrIsParent(t.layer._icon,t.originalEvent.relatedTarget))return;n="cluster"+n}L.FeatureGroup.prototype.fire.call(this,n,t,i)},listens:function(n,t){return L.FeatureGroup.prototype.listens.call(this,n,t)||L.FeatureGroup.prototype.listens.call(this,"cluster"+n,t)},_defaultIconCreateFunction:function(n){var t=n.getChildCount(),i=" marker-cluster-";return i+=10>t?"small":100>t?"medium":"large",new L.DivIcon({html:"<div><span>"+t+"<\/span><\/div>",className:"marker-cluster"+i,iconSize:new L.Point(40,40)})},_bindEvents:function(){var n=this._map,t=this.options.spiderfyOnMaxZoom,i=this.options.showCoverageOnHover,r=this.options.zoomToBoundsOnClick;(t||r)&&this.on("clusterclick",this._zoomOrSpiderfy,this);i&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),n.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(n){for(var i=n.layer,t=i;1===t._childClusters.length;)t=t._childClusters[0];t._zoom===this._maxZoom&&t._childCount===i._childCount&&this.options.spiderfyOnMaxZoom?i.spiderfy():this.options.zoomToBoundsOnClick&&i.zoomToBounds();n.originalEvent&&13===n.originalEvent.keyCode&&this._map._container.focus()},_showCoverage:function(n){var t=this._map;this._inZoomAnimation||(this._shownPolygon&&t.removeLayer(this._shownPolygon),n.layer.getChildCount()>2&&n.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(n.layer.getConvexHull(),this.options.polygonOptions),t.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var n=this.options.spiderfyOnMaxZoom,t=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,r=this._map;(n||i)&&this.off("clusterclick",this._zoomOrSpiderfy,this);t&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),r.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var n=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,n);this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),n);this._currentShownBounds=n}},_generateInitialClusters:function(){var t=Math.ceil(this._map.getMaxZoom()),u=Math.floor(this._map.getMinZoom()),i=this.options.maxClusterRadius,r=i,n;for("function"!=typeof i&&(r=function(){return i}),null!==this.options.disableClusteringAtZoom&&(t=this.options.disableClusteringAtZoom-1),this._maxZoom=t,this._gridClusters={},this._gridUnclustered={},n=t;n>=u;n--)this._gridClusters[n]=new L.DistanceGrid(r(n)),this._gridUnclustered[n]=new L.DistanceGrid(r(n));this._topClusterLevel=new this._markerCluster(this,u-1)},_addLayer:function(n,t){var e,r,s=this._gridClusters,h=this._gridUnclustered,c=Math.floor(this._map.getMinZoom()),i,o,u,f;for(this.options.singleMarkerMode&&this._overrideMarkerIcon(n),n.on(this._childMarkerEventHandlers,this);t>=c;t--){if(e=this._map.project(n.getLatLng(),t),i=s[t].getNearObject(e),i)return i._addChild(n),n.__parent=i,void 0;if(i=h[t].getNearObject(e)){for(o=i.__parent,o&&this._removeLayer(i,!1),u=new this._markerCluster(this,t,i,n),s[t].addObject(u,this._map.project(u._cLatLng,t)),i.__parent=u,n.__parent=u,f=u,r=t-1;r>o._zoom;r--)f=new this._markerCluster(this,r,f),s[r].addObject(f,this._map.project(i.getLatLng(),r));return o._addChild(f),this._removeFromGridUnclustered(i,t),void 0}h[t].addObject(n,e)}this._topClusterLevel._addChild(n);n.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(n){n instanceof L.MarkerCluster&&n._iconNeedsUpdate&&n._updateIcon()})},_enqueue:function(n){this._queue.push(n);this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var n=0;n<this._queue.length;n++)this._queue[n].call(this);this._queue.length=0;clearTimeout(this._queueTimeout);this._queueTimeout=null},_mergeSplitClusters:function(){var n=Math.round(this._map._zoom);this._processQueue();this._zoom<n&&this._currentShownBounds.intersects(this._getExpandedVisibleBounds())?(this._animationStart(),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,this._getExpandedVisibleBounds()),this._animationZoomIn(this._zoom,n)):this._zoom>n?(this._animationStart(),this._animationZoomOut(this._zoom,n)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(n){var t=this._maxLat;return t!==i&&(n.getNorth()>=t&&(n._northEast.lat=1/0),n.getSouth()<=-t&&(n._southWest.lat=-1/0)),n},_animationAddLayerNonAnimated:function(n,t){if(t===n)this._featureGroup.addLayer(n);else if(2===t._childCount){t._addToMap();var i=t.getAllChildMarkers();this._featureGroup.removeLayer(i[0]);this._featureGroup.removeLayer(i[1])}else t._updateIcon()},_extractNonGroupLayers:function(n,t){var i,u=n.getLayers(),r=0;for(t=t||[];r<u.length;r++)i=u[r],i instanceof L.LayerGroup?this._extractNonGroupLayers(i,t):t.push(i);return t},_overrideMarkerIcon:function(n){return n.options.icon=this.options.iconCreateFunction({getChildCount:function(){return 1},getAllChildMarkers:function(){return[n]}})}});L.MarkerClusterGroup.include({_mapBoundsInfinite:new L.LatLngBounds(new L.LatLng(-1/0,-1/0),new L.LatLng(1/0,1/0))});L.MarkerClusterGroup.include({_noAnimation:{_animationStart:function(){},_animationZoomIn:function(n,t){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),n);this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds());this.fire("animationend")},_animationZoomOut:function(n,t){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),n);this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds());this.fire("animationend")},_animationAddLayer:function(n,t){this._animationAddLayerNonAnimated(n,t)}},_withAnimation:{_animationStart:function(){this._map._mapPane.className+=" leaflet-cluster-anim";this._inZoomAnimation++},_animationZoomIn:function(n,t){var r,i=this._getExpandedVisibleBounds(),u=this._featureGroup,f=Math.floor(this._map.getMinZoom());this._ignoreMove=!0;this._topClusterLevel._recursively(i,n,f,function(f){var e,o=f._latlng,s=f._markers;for(i.contains(o)||(o=null),f._isSingleParent()&&n+1===t?(u.removeLayer(f),f._recursivelyAddChildrenToMap(null,t,i)):(f.clusterHide(),f._recursivelyAddChildrenToMap(o,t,i)),r=s.length-1;r>=0;r--)e=s[r],i.contains(e._latlng)||u.removeLayer(e)});this._forceLayout();this._topClusterLevel._recursivelyBecomeVisible(i,t);u.eachLayer(function(n){n instanceof L.MarkerCluster||!n._icon||n.clusterShow()});this._topClusterLevel._recursively(i,n,t,function(n){n._recursivelyRestoreChildPositions(t)});this._ignoreMove=!1;this._enqueue(function(){this._topClusterLevel._recursively(i,n,f,function(n){u.removeLayer(n);n.clusterShow()});this._animationEnd()})},_animationZoomOut:function(n,t){this._animationZoomOutSingle(this._topClusterLevel,n-1,t);this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds());this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),n,this._getExpandedVisibleBounds())},_animationAddLayer:function(n,t){var i=this,r=this._featureGroup;r.addLayer(n);t!==n&&(t._childCount>2?(t._updateIcon(),this._forceLayout(),this._animationStart(),n._setPos(this._map.latLngToLayerPoint(t.getLatLng())),n.clusterHide(),this._enqueue(function(){r.removeLayer(n);n.clusterShow();i._animationEnd()})):(this._forceLayout(),i._animationStart(),i._animationZoomOutSingle(t,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(n,t,i){var r=this._getExpandedVisibleBounds(),u=Math.floor(this._map.getMinZoom()),f;n._recursivelyAnimateChildrenInAndAddSelfToMap(r,u,t+1,i);f=this;this._forceLayout();n._recursivelyBecomeVisible(r,i);this._enqueue(function(){if(1===n._childCount){var e=n._markers[0];this._ignoreMove=!0;e.setLatLng(e.getLatLng());this._ignoreMove=!1;e.clusterShow&&e.clusterShow()}else n._recursively(r,i,u,function(n){n._recursivelyRemoveChildrenFromMap(r,u,t+1)});f._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""));this._inZoomAnimation--;this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(t.body.offsetWidth)}});L.markerClusterGroup=function(n){return new L.MarkerClusterGroup(n)};L.MarkerCluster=L.Marker.extend({initialize:function(n,t,i,r){L.Marker.prototype.initialize.call(this,i?i._cLatLng||i.getLatLng():new L.LatLng(0,0),{icon:this,pane:n.options.clusterPane});this._group=n;this._zoom=t;this._markers=[];this._childClusters=[];this._childCount=0;this._iconNeedsUpdate=!0;this._boundsNeedUpdate=!0;this._bounds=new L.LatLngBounds;i&&this._addChild(i);r&&this._addChild(r)},getAllChildMarkers:function(n){var t,i;for(n=n||[],t=this._childClusters.length-1;t>=0;t--)this._childClusters[t].getAllChildMarkers(n);for(i=this._markers.length-1;i>=0;i--)n.push(this._markers[i]);return n},getChildCount:function(){return this._childCount},zoomToBounds:function(n){for(var u,t,i=this._childClusters.slice(),e=this._group._map,f=e.getBoundsZoom(this._bounds),r=this._zoom+1,o=e.getZoom();i.length>0&&f>r;){for(r++,u=[],t=0;t<i.length;t++)u=u.concat(i[t]._childClusters);i=u}f>r?this._group._map.setView(this._latlng,r):o>=f?this._group._map.setView(this._latlng,o+1):this._group._map.fitBounds(this._bounds,n)},getBounds:function(){var n=new L.LatLngBounds;return n.extend(this._bounds),n},_updateIcon:function(){this._iconNeedsUpdate=!0;this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(n,t){this._iconNeedsUpdate=!0;this._boundsNeedUpdate=!0;this._setClusterCenter(n);n instanceof L.MarkerCluster?(t||(this._childClusters.push(n),n.__parent=this),this._childCount+=n._childCount):(t||this._markers.push(n),this._childCount++);this.__parent&&this.__parent._addChild(n,!0)},_setClusterCenter:function(n){this._cLatLng||(this._cLatLng=n._cLatLng||n._latlng)},_resetBounds:function(){var n=this._bounds;n._southWest&&(n._southWest.lat=1/0,n._southWest.lng=1/0);n._northEast&&(n._northEast.lat=-1/0,n._northEast.lng=-1/0)},_recalculateBounds:function(){var n,i,t,r,o=this._markers,s=this._childClusters,u=0,f=0,e=this._childCount;if(0!==e){for(this._resetBounds(),n=0;n<o.length;n++)t=o[n]._latlng,this._bounds.extend(t),u+=t.lat,f+=t.lng;for(n=0;n<s.length;n++)i=s[n],i._boundsNeedUpdate&&i._recalculateBounds(),this._bounds.extend(i._bounds),t=i._wLatLng,r=i._childCount,u+=t.lat*r,f+=t.lng*r;this._latlng=this._wLatLng=new L.LatLng(u/e,f/e);this._boundsNeedUpdate=!1}},_addToMap:function(n){n&&(this._backupLatlng=this._latlng,this.setLatLng(n));this._group._featureGroup.addLayer(this)},_recursivelyAnimateChildrenIn:function(n,t,i){this._recursively(n,this._group._map.getMinZoom(),i-1,function(n){for(var r,u=n._markers,i=u.length-1;i>=0;i--)r=u[i],r._icon&&(r._setPos(t),r.clusterHide())},function(n){for(var r,u=n._childClusters,i=u.length-1;i>=0;i--)r=u[i],r._icon&&(r._setPos(t),r.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(n,t,i,r){this._recursively(n,r,t,function(u){u._recursivelyAnimateChildrenIn(n,u._group._map.latLngToLayerPoint(u.getLatLng()).round(),i);u._isSingleParent()&&i-1===r?(u.clusterShow(),u._recursivelyRemoveChildrenFromMap(n,t,i)):u.clusterHide();u._addToMap()})},_recursivelyBecomeVisible:function(n,t){this._recursively(n,this._group._map.getMinZoom(),t,null,function(n){n.clusterShow()})},_recursivelyAddChildrenToMap:function(n,t,i){this._recursively(i,this._group._map.getMinZoom()-1,t,function(r){var f,u;if(t!==r._zoom)for(f=r._markers.length-1;f>=0;f--)u=r._markers[f],i.contains(u._latlng)&&(n&&(u._backupLatlng=u.getLatLng(),u.setLatLng(n),u.clusterHide&&u.clusterHide()),r._group._featureGroup.addLayer(u))},function(t){t._addToMap(n)})},_recursivelyRestoreChildPositions:function(n){for(var t,r,u,i=this._markers.length-1;i>=0;i--)t=this._markers[i],t._backupLatlng&&(t.setLatLng(t._backupLatlng),delete t._backupLatlng);if(n-1===this._zoom)for(r=this._childClusters.length-1;r>=0;r--)this._childClusters[r]._restorePosition();else for(u=this._childClusters.length-1;u>=0;u--)this._childClusters[u]._recursivelyRestoreChildPositions(n)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(n,t,i,r){var u,f;this._recursively(n,t-1,i-1,function(n){for(f=n._markers.length-1;f>=0;f--)u=n._markers[f],r&&r.contains(u._latlng)||(n._group._featureGroup.removeLayer(u),u.clusterShow&&u.clusterShow())},function(n){for(f=n._childClusters.length-1;f>=0;f--)u=n._childClusters[f],r&&r.contains(u._latlng)||(n._group._featureGroup.removeLayer(u),u.clusterShow&&u.clusterShow())})},_recursively:function(n,t,i,r,u){var f,o,s=this._childClusters,e=this._zoom;if(e>=t&&(r&&r(this),u&&e===i&&u(this)),t>e||i>e)for(f=s.length-1;f>=0;f--)o=s[f],n.intersects(o._bounds)&&o._recursively(n,t,i,r,u)},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){return this.options.opacityWhenUnclustered=this.options.opacity||1,this.setOpacity(0)},clusterShow:function(){var n=this.setOpacity(this.options.opacity||this.options.opacityWhenUnclustered);return delete this.options.opacityWhenUnclustered,n}});L.DistanceGrid=function(n){this._cellSize=n;this._sqCellSize=n*n;this._grid={};this._objectPoint={}};L.DistanceGrid.prototype={addObject:function(n,t){var i=this._getCoord(t.x),r=this._getCoord(t.y),u=this._grid,f=u[r]=u[r]||{},e=f[i]=f[i]||[],o=L.Util.stamp(n);this._objectPoint[o]=t;e.push(n)},updateObject:function(n,t){this.removeObject(n);this.addObject(n,t)},removeObject:function(n,t){var i,r,u=this._getCoord(t.x),o=this._getCoord(t.y),s=this._grid,f=s[o]=s[o]||{},e=f[u]=f[u]||[];for(delete this._objectPoint[L.Util.stamp(n)],i=0,r=e.length;r>i;i++)if(e[i]===n)return e.splice(i,1),1===r&&delete f[u],!0},eachObject:function(n,t){var e,o,i,r,u,f,s,h=this._grid;for(e in h){u=h[e];for(o in u)for(f=u[o],i=0,r=f.length;r>i;i++)s=n.call(t,f[i]),s&&(i--,r--)}},getNearObject:function(n){for(var i,r,o,u,s,f,e,h=this._getCoord(n.x),c=this._getCoord(n.y),v=this._objectPoint,l=this._sqCellSize,a=null,t=c-1;c+1>=t;t++)if(o=this._grid[t])for(i=h-1;h+1>=i;i++)if(u=o[i])for(r=0,s=u.length;s>r;r++)f=u[r],e=this._sqDist(v[L.Util.stamp(f)],n),l>e&&(l=e,a=f);return a},_getCoord:function(n){return Math.floor(n/this._cellSize)},_sqDist:function(n,t){var i=t.x-n.x,r=t.y-n.y;return i*i+r*r}},function(){L.QuickHull={getDistant:function(n,t){var i=t[1].lat-t[0].lat,r=t[0].lng-t[1].lng;return r*(n.lat-t[0].lat)+i*(n.lng-t[0].lng)},findMostDistantPointFromBaseLine:function(n,t){for(var r,u,f=0,e=null,o=[],i=t.length-1;i>=0;i--)r=t[i],u=this.getDistant(r,n),u>0&&(o.push(r),u>f&&(f=u,e=r));return{maxPoint:e,newPoints:o}},buildConvexHull:function(n,t){var r=[],i=this.findMostDistantPointFromBaseLine(n,t);return i.maxPoint?(r=r.concat(this.buildConvexHull([n[0],i.maxPoint],i.newPoints)),r=r.concat(this.buildConvexHull([i.maxPoint,n[1]],i.newPoints))):[n[0]]},getConvexHull:function(n){for(var r=!1,u=!1,o=!1,s=!1,h=null,c=null,l=null,a=null,f=null,e=null,t,i=n.length-1;i>=0;i--)t=n[i],(r===!1||t.lat>r)&&(h=t,r=t.lat),(u===!1||t.lat<u)&&(c=t,u=t.lat),(o===!1||t.lng>o)&&(l=t,o=t.lng),(s===!1||t.lng<s)&&(a=t,s=t.lng);return u!==r?(e=c,f=h):(e=a,f=l),[].concat(this.buildConvexHull([e,f],n),this.buildConvexHull([f,e],n))}}}();L.MarkerCluster.include({getConvexHull:function(){for(var t,i=this.getAllChildMarkers(),r=[],n=i.length-1;n>=0;n--)t=i[n].getLatLng(),r.push(t);return L.QuickHull.getConvexHull(r)}});L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:Math.PI/6,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var t,n=this.getAllChildMarkers(),r=this._group,u=r._map,i=u.latLngToLayerPoint(this._latlng);this._group._unspiderfy();this._group._spiderfied=this;n.length>=this._circleSpiralSwitchover?t=this._generatePointsSpiral(n.length,i):(i.y+=10,t=this._generatePointsCircle(n.length,i));this._animationSpiderfy(n,t)}},unspiderfy:function(n){this._group._inZoomAnimation||(this._animationUnspiderfy(n),this._group._spiderfied=null)},_generatePointsCircle:function(n,t){var i,r,e=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+n),f=e/this._2PI,o=this._2PI/n,u=[];for(u.length=n,i=n-1;i>=0;i--)r=this._circleStartAngle+i*o,u[i]=new L.Point(t.x+f*Math.cos(r),t.y+f*Math.sin(r))._round();return u},_generatePointsSpiral:function(n,t){var i,f=this._group.options.spiderfyDistanceMultiplier,r=f*this._spiralLengthStart,o=f*this._spiralFootSeparation,s=f*this._spiralLengthFactor*this._2PI,u=0,e=[];for(e.length=n,i=n-1;i>=0;i--)u+=o/r+.0005*i,e[i]=new L.Point(t.x+r*Math.cos(u),t.y+r*Math.sin(u))._round(),r+=s/u;return e},_noanimationUnspiderfy:function(){var n,i,t=this._group,u=t._map,f=t._featureGroup,r=this.getAllChildMarkers();for(t._ignoreMove=!0,this.setOpacity(1),i=r.length-1;i>=0;i--)n=r[i],f.removeLayer(n),n._preSpiderfyLatlng&&(n.setLatLng(n._preSpiderfyLatlng),delete n._preSpiderfyLatlng),n.setZIndexOffset&&n.setZIndexOffset(0),n._spiderLeg&&(u.removeLayer(n._spiderLeg),delete n._spiderLeg);t.fire("unspiderfied",{cluster:this,markers:r});t._ignoreMove=!1;t._spiderfied=null}});L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(n,t){var r,i,f,e,u=this._group,o=u._map,s=u._featureGroup,h=this._group.options.spiderLegPolylineOptions;for(u._ignoreMove=!0,r=0;r<n.length;r++)e=o.layerPointToLatLng(t[r]),i=n[r],f=new L.Polyline([this._latlng,e],h),o.addLayer(f),i._spiderLeg=f,i._preSpiderfyLatlng=i._latlng,i.setLatLng(e),i.setZIndexOffset&&i.setZIndexOffset(1e6),s.addLayer(i);this.setOpacity(.3);u._ignoreMove=!1;u.fire("spiderfied",{cluster:this,markers:n})},_animationUnspiderfy:function(){this._noanimationUnspiderfy()}});L.MarkerCluster.include({_animationSpiderfy:function(n,t){var u,r,e,o,a,h,p=this,f=this._group,c=f._map,w=f._featureGroup,y=this._latlng,b=c.latLngToLayerPoint(y),v=L.Path.SVG,s=L.extend({},this._group.options.spiderLegPolylineOptions),l=s.opacity;for(l===i&&(l=L.MarkerClusterGroup.prototype.options.spiderLegPolylineOptions.opacity),v?(s.opacity=0,s.className=(s.className||"")+" leaflet-cluster-spider-leg"):s.opacity=l,f._ignoreMove=!0,u=0;u<n.length;u++)r=n[u],h=c.layerPointToLatLng(t[u]),e=new L.Polyline([y,h],s),c.addLayer(e),r._spiderLeg=e,v&&(o=e._path,a=o.getTotalLength()+.1,o.style.strokeDasharray=a,o.style.strokeDashoffset=a),r.setZIndexOffset&&r.setZIndexOffset(1e6),r.clusterHide&&r.clusterHide(),w.addLayer(r),r._setPos&&r._setPos(b);for(f._forceLayout(),f._animationStart(),u=n.length-1;u>=0;u--)h=c.layerPointToLatLng(t[u]),r=n[u],r._preSpiderfyLatlng=r._latlng,r.setLatLng(h),r.clusterShow&&r.clusterShow(),v&&(e=r._spiderLeg,o=e._path,o.style.strokeDashoffset=0,e.setStyle({opacity:l}));this.setOpacity(.3);f._ignoreMove=!1;setTimeout(function(){f._animationEnd();f.fire("spiderfied",{cluster:p,markers:n})},200)},_animationUnspiderfy:function(n){var t,i,e,o,h,f,l=this,r=this._group,s=r._map,c=r._featureGroup,a=n?s._latLngToNewLayerPoint(this._latlng,n.zoom,n.center):s.latLngToLayerPoint(this._latlng),u=this.getAllChildMarkers(),v=L.Path.SVG;for(r._ignoreMove=!0,r._animationStart(),this.setOpacity(1),i=u.length-1;i>=0;i--)t=u[i],t._preSpiderfyLatlng&&(t.closePopup(),t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng,f=!0,t._setPos&&(t._setPos(a),f=!1),t.clusterHide&&(t.clusterHide(),f=!1),f&&c.removeLayer(t),v&&(e=t._spiderLeg,o=e._path,h=o.getTotalLength()+.1,o.style.strokeDashoffset=h,e.setStyle({opacity:0})));r._ignoreMove=!1;setTimeout(function(){var n=0;for(i=u.length-1;i>=0;i--)t=u[i],t._spiderLeg&&n++;for(i=u.length-1;i>=0;i--)t=u[i],t._spiderLeg&&(t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),n>1&&c.removeLayer(t),s.removeLayer(t._spiderLeg),delete t._spiderLeg);r._animationEnd();r.fire("unspiderfied",{cluster:l,markers:u})},200)}});L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this);this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this);this._map.on("zoomend",this._noanimationUnspiderfy,this);L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this);this._map.off("zoomstart",this._unspiderfyZoomStart,this);this._map.off("zoomanim",this._unspiderfyZoomAnim,this);this._map.off("zoomend",this._noanimationUnspiderfy,this);this._noanimationUnspiderfy()},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(n){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(n))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(n){this._spiderfied&&this._spiderfied.unspiderfy(n)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(n){n._spiderLeg&&(this._featureGroup.removeLayer(n),n.clusterShow&&n.clusterShow(),n.setZIndexOffset&&n.setZIndexOffset(0),this._map.removeLayer(n._spiderLeg),delete n._spiderLeg)}});L.MarkerClusterGroup.include({refreshClusters:function(n){return n?n instanceof L.MarkerClusterGroup?n=n._topClusterLevel.getAllChildMarkers():n instanceof L.LayerGroup?n=n._layers:n instanceof L.MarkerCluster?n=n.getAllChildMarkers():n instanceof L.Marker&&(n=[n]):n=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(n),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(n),this},_flagParentsIconsNeedUpdate:function(n){var i,t;for(i in n)for(t=n[i].__parent;t;)t._iconNeedsUpdate=!0,t=t.__parent},_refreshSingleMarkerModeMarkers:function(n){var i,t;for(i in n)t=n[i],this.hasLayer(t)&&t.setIcon(this._overrideMarkerIcon(t))}});L.Marker.include({refreshIconOptions:function(n,t){var i=this.options.icon;return L.setOptions(i,n),this.setIcon(i),t&&this.__parent&&this.__parent._group.refreshClusters(this),this}})}(window,document);!function(n){function t(r){if(i[r])return i[r].exports;var u=i[r]={i:r,l:!1,exports:{}};return n[r].call(u.exports,u,u.exports,t),u.l=!0,u.exports}var i={};t.m=n;t.c=i;t.d=function(n,i,r){t.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:r})};t.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(i,"a",i),i};t.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)};t.p="";t(t.s=7)}([function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=i(4),u=function(n){return n&&n.__esModule?n:{"default":n}}(r),f=L.Class.extend({includes:[u.default],options:{snappable:!0,snapDistance:20,cursorMarker:!0,finishOnDoubleClick:!1,finishOn:null,allowSelfIntersection:!0,templineStyle:{},hintlineStyle:{dashArray:[5,5]},markerStyle:{draggable:!0}},initialize:function(n){var t=this;this._map=n;this.shapes=["Marker","Line","Poly","Rectangle","Circle","Cut"];this.shapes.forEach(function(n){t[n]=new L.PM.Draw[n](t._map)})},setPathOptions:function(n){this.options.pathOptions=n},getShapes:function(){return this.shapes},enable:function(n,t){if(!n)throw new Error("Error: Please pass a shape as a parameter. Possible shapes are: "+this.getShapes().join(","));this.disable();this[n].enable(t)},disable:function(){var n=this;this.shapes.forEach(function(t){n[t].disable()})},addControls:function(){var n=this;this.shapes.forEach(function(t){n[t].addButton()})}});t.default=f},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}Object.defineProperty(t,"__esModule",{value:!0});var u=i(4),f=r(u),e=i(27),o=r(e),s=L.Class.extend({includes:[o.default,f.default],options:{snappable:!0,snapDistance:20,allowSelfIntersection:!0,draggable:!0},isPolygon:function(){return this._layer instanceof L.Polygon}});t.default=s},function(n){function t(n,t,i,r){if(void 0===n)throw new Error("geometry is required");if(t&&t.constructor!==Object)throw new Error("properties must be an Object");if(i&&4!==i.length)throw new Error("bbox must be an Array of 4 numbers");if(r&&-1===["string","number"].indexOf(typeof r))throw new Error("id must be a number or a string");var u={type:"Feature"};return r&&(u.id=r),i&&(u.bbox=i),u.properties=t||{},u.geometry=n,u}function y(n,t,i){if(!n)throw new Error("type is required");if(!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(i&&4!==i.length)throw new Error("bbox must be an Array of 4 numbers");var r;switch(n){case"Point":r=u(t).geometry;break;case"LineString":r=e(t).geometry;break;case"Polygon":r=f(t).geometry;break;case"MultiPoint":r=s(t).geometry;break;case"MultiLineString":r=o(t).geometry;break;case"MultiPolygon":r=h(t).geometry;break;default:throw new Error(n+" is invalid");}return i&&(r.bbox=i),r}function u(n,r,u,f){if(!n)throw new Error("No coordinates passed");if(void 0===n.length)throw new Error("Coordinates must be an array");if(n.length<2)throw new Error("Coordinates must be at least 2 numbers long");if(!i(n[0])||!i(n[1]))throw new Error("Coordinates must contain numbers");return t({type:"Point",coordinates:n},r,u,f)}function f(n,r,u,f){var s,e,o;if(!n)throw new Error("No coordinates passed");for(s=0;s<n.length;s++){if(e=n[s],e.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(o=0;o<e[e.length-1].length;o++){if(0===s&&0===o&&!i(e[0][0])||!i(e[0][1]))throw new Error("Coordinates must contain numbers");if(e[e.length-1][o]!==e[0][o])throw new Error("First and last Position are not equivalent.");}}return t({type:"Polygon",coordinates:n},r,u,f)}function e(n,r,u,f){if(!n)throw new Error("No coordinates passed");if(n.length<2)throw new Error("Coordinates must be an array of two or more positions");if(!i(n[0][1])||!i(n[0][1]))throw new Error("Coordinates must contain numbers");return t({type:"LineString",coordinates:n},r,u,f)}function p(n,t,i){if(!n)throw new Error("No features passed");if(!Array.isArray(n))throw new Error("features must be an Array");if(t&&4!==t.length)throw new Error("bbox must be an Array of 4 numbers");if(i&&-1===["string","number"].indexOf(typeof i))throw new Error("id must be a number or a string");var r={type:"FeatureCollection"};return i&&(r.id=i),t&&(r.bbox=t),r.features=n,r}function o(n,i,r,u){if(!n)throw new Error("No coordinates passed");return t({type:"MultiLineString",coordinates:n},i,r,u)}function s(n,i,r,u){if(!n)throw new Error("No coordinates passed");return t({type:"MultiPoint",coordinates:n},i,r,u)}function h(n,i,r,u){if(!n)throw new Error("No coordinates passed");return t({type:"MultiPolygon",coordinates:n},i,r,u)}function w(n,i,r,u){if(!n)throw new Error("geometries is required");if(!Array.isArray(n))throw new Error("geometries must be an Array");return t({type:"GeometryCollection",geometries:n},i,r,u)}function b(n,t){if(void 0===n||null===n||isNaN(n))throw new Error("num is required");if(t&&!(t>=0))throw new Error("precision must be a positive number");var i=Math.pow(10,t||0);return Math.round(n*i)/i}function c(n,t){if(void 0===n||null===n)throw new Error("radians is required");var i=a[t||"kilometers"];if(!i)throw new Error("units is invalid");return n*i}function r(n,t){if(void 0===n||null===n)throw new Error("distance is required");var i=a[t||"kilometers"];if(!i)throw new Error("units is invalid");return n/i}function k(n,t){return l(r(n,t))}function d(n){if(null===n||void 0===n)throw new Error("bearing is required");var t=n%360;return t<0&&(t+=360),t}function l(n){if(null===n||void 0===n)throw new Error("radians is required");return n%(2*Math.PI)*180/Math.PI}function g(n){if(null===n||void 0===n)throw new Error("degrees is required");return n%360*Math.PI/180}function nt(n,t,i){if(null===n||void 0===n)throw new Error("distance is required");if(!(n>=0))throw new Error("distance must be a positive number");return c(r(n,t),i||"kilometers")}function tt(n,t,i){var r,u;if(null===n||void 0===n)throw new Error("area is required");if(!(n>=0))throw new Error("area must be a positive number");if(r=v[t||"meters"],!r)throw new Error("invalid original units");if(u=v[i||"kilometers"],!u)throw new Error("invalid final units");return n/r*u}function i(n){return!isNaN(n)&&null!==n&&!Array.isArray(n)}var a={miles:3960,nauticalmiles:3441.145,degrees:57.2957795,radians:1,inches:250905600,yards:6969600,meters:6373e3,metres:6373e3,centimeters:6373e5,centimetres:6373e5,kilometers:6373,kilometres:6373,feet:20908792.65},v={kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,centimetres:1e4,millimeter:1e6,acres:.000247105,miles:386e-9,yards:1.195990046,feet:10.763910417,inches:1550.003100006};n.exports={feature:t,geometry:y,featureCollection:p,geometryCollection:w,point:u,multiPoint:s,lineString:e,multiLineString:o,polygon:f,multiPolygon:h,radiansToDistance:c,distanceToRadians:r,distanceToDegrees:k,radians2degrees:l,degrees2radians:g,bearingToAngle:d,convertDistance:nt,convertArea:tt,round:b,isNumber:i}},function(n,t){"use strict";function i(n,t,r){var e,c;if(null!==n)for(var v,u,o,y,a,b,f,l,p,w=0,h=0,k=n.type,d="FeatureCollection"===k,g="Feature"===k,nt=d?n.features.length:1,s=0;s<nt;s++)for(l=d?n.features[s].geometry:g?n.geometry:n,p=!!l&&"GeometryCollection"===l.type,b=p?l.geometries.length:1,v=0;v<b;v++)if(e=0,null!==(a=p?l.geometries[v]:l)){f=a.coordinates;c=a.type;switch(w=!r||"Polygon"!==c&&"MultiPolygon"!==c?0:1,c){case null:break;case"Point":t(f,h,s,e);h++;e++;break;case"LineString":case"MultiPoint":for(u=0;u<f.length;u++)t(f[u],h,s,e),h++,"MultiPoint"===c&&e++;"LineString"===c&&e++;break;case"Polygon":case"MultiLineString":for(u=0;u<f.length;u++){for(o=0;o<f[u].length-w;o++)t(f[u][o],h,s,e),h++;"MultiLineString"===c&&e++}"Polygon"===c&&e++;break;case"MultiPolygon":for(u=0;u<f.length;u++){for(o=0;o<f[u].length;o++)for(y=0;y<f[u][o].length-w;y++)t(f[u][o][y],h,s,e),h++;e++}break;case"GeometryCollection":for(u=0;u<a.geometries.length;u++)i(a.geometries[u],t,r);break;default:throw new Error("Unknown Geometry Type");}}}function e(n,t,r,u){var f=r;return i(n,function(n,i,u,e){f=0===i&&void 0===r?n:t(f,n,i,u,e)},u),f}function o(n,t){var i;switch(n.type){case"FeatureCollection":for(i=0;i<n.features.length;i++)t(n.features[i].properties,i);break;case"Feature":t(n.properties,0)}}function a(n,t,i){var r=i;return o(n,function(n,u){r=0===u&&void 0===i?n:t(r,n,u)}),r}function s(n,t){if("Feature"===n.type)t(n,0);else if("FeatureCollection"===n.type)for(var i=0;i<n.features.length;i++)t(n.features[i],i)}function v(n,t,i){var r=i;return s(n,function(n,u){r=0===u&&void 0===i?n:t(r,n,u)}),r}function y(n){var t=[];return i(n,function(n){t.push(n)}),t}function r(n,t){for(var f,e,u,l,i,h,o,s=0,c="FeatureCollection"===n.type,a="Feature"===n.type,v=c?n.features.length:1,r=0;r<v;r++){for(i=c?n.features[r].geometry:a?n.geometry:n,o=c?n.features[r].properties:a?n.properties:{},h=!!i&&"GeometryCollection"===i.type,l=h?i.geometries.length:1,e=0;e<l;e++)if(null!==(u=h?i.geometries[e]:i))switch(u.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":t(u,s,o);break;case"GeometryCollection":for(f=0;f<u.geometries.length;f++)t(u.geometries[f],s,o);break;default:throw new Error("Unknown Geometry Type");}else t(null,s,o);s++}}function p(n,t,i){var u=i;return r(n,function(n,r,f){u=0===r&&void 0===i?n:t(u,n,r,f)}),u}function u(n,t){r(n,function(n,i,r){var e=null===n?null:n.type,u;switch(e){case null:case"Point":case"LineString":case"Polygon":return void t(f(n,r),i,0)}switch(e){case"MultiPoint":u="Point";break;case"MultiLineString":u="LineString";break;case"MultiPolygon":u="Polygon"}n.coordinates.forEach(function(n,e){t(f({type:u,coordinates:n},r),i,e)})})}function w(n,t,i){var r=i;return u(n,function(n,u,f){r=0===u&&0===f&&void 0===i?n:t(r,n,u,f)}),r}function h(n,t){u(n,function(n,i,r){var f=0,u;n.geometry&&(u=n.geometry.type,"Point"!==u&&"MultiPoint"!==u&&e(n,function(u,e){var o=c([u,e],n.properties);return t(o,i,r,f),f++,e}))})}function b(n,t,i){var r=i,u=!1;return h(n,function(n,f,e,o){r=!1===u&&void 0===i?n:t(r,n,f,e,o);u=!0}),r}function f(n,t){if(void 0===n)throw new Error("No geometry passed");return{type:"Feature",properties:t||{},geometry:n}}function c(n,t){if(!n)throw new Error("No coordinates passed");if(n.length<2)throw new Error("Coordinates must be an array of two or more positions");return{type:"Feature",properties:t||{},geometry:{type:"LineString",coordinates:n}}}function l(n,t){var r,i,o,u,f,e;if(!n)throw new Error("geojson is required");if(r=n.geometry?n.geometry.type:n.type,!r)throw new Error("invalid geojson");if("FeatureCollection"===r)throw new Error("FeatureCollection is not supported");if("GeometryCollection"===r)throw new Error("GeometryCollection is not supported");if(i=n.geometry?n.geometry.coordinates:n.coordinates,!i)throw new Error("geojson must contain coordinates");switch(r){case"LineString":return void t(i,0,0);case"Polygon":case"MultiLineString":for(o=0,u=0;u<i.length;u++)"MultiLineString"===r&&(o=u),t(i[u],u,o);return;case"MultiPolygon":for(f=0;f<i.length;f++)for(e=0;e<i[f].length;e++)t(i[f][e],e,f);return;default:throw new Error(r+" geometry not supported");}}function k(n,t,i){var r=i;return l(n,function(n,u,f){r=0===u&&void 0===i?n:t(r,n,u,f)}),r}Object.defineProperty(t,"__esModule",{value:!0});t.coordEach=i;t.coordReduce=e;t.propEach=o;t.propReduce=a;t.featureEach=s;t.featureReduce=v;t.coordAll=y;t.geomEach=r;t.geomReduce=p;t.flattenEach=u;t.flattenReduce=w;t.segmentEach=h;t.segmentReduce=b;t.feature=f;t.lineString=c;t.lineEach=l;t.lineReduce=k},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i={_initSnappableMarkers:function(){this.options.snapDistance=this.options.snapDistance||30;this.isPolygon()?this._markers.map(this._assignEvents,this):this._assignEvents(this._markers);this._layer.off("pm:dragstart",this._unsnap,this);this._layer.on("pm:dragstart",this._unsnap,this)},_assignEvents:function(n){var t=this;n.forEach(function(n){n.off("drag",t._handleSnapping,t);n.on("drag",t._handleSnapping,t);n.off("dragend",t._cleanupSnapping,t);n.on("dragend",t._cleanupSnapping,t)})},_unsnap:function(){delete this._snapLatLng},_cleanupSnapping:function(){delete this._snapList;this._map.off("pm:remove",this._handleSnapLayerRemoval,this);this.debugIndicatorLines&&this.debugIndicatorLines.forEach(function(n){n.remove()})},_handleSnapLayerRemoval:function(n){var t=n.layer,i=this._snapList.findIndex(function(n){return n._leaflet_id===t._leaflet_id});this._snapList.splice(i,1)},_handleSnapping:function(n){var o=this,s,i,f,e;if(n.originalEvent.altKey||(void 0===this._snapList&&this._createSnapList(n),this._snapList.length<=0))return!1;var r=n.target,t=this._calcClosestLayer(r.getLatLng(),this._snapList),h=t.layer instanceof L.Marker||t.layer instanceof L.CircleMarker,u=void 0;return u=h?t.latlng:this._checkPrioritiySnapping(t),s=this.options.snapDistance,i={marker:r,snapLatLng:u,segment:t.segment,layer:this._layer,layerInteractedWith:t.layer},t.distance<s?(r.setLatLng(u),r._snapped=!0,f=this._snapLatLng||{},e=u||{},f.lat===e.lat&&f.lng===e.lng||function(){o._snapLatLng=u;r.fire("pm:snap",i);o._layer.fire("pm:snap",i)}()):this._snapLatLng&&(this._unsnap(i),r._snapped=!1,i.marker.fire("pm:unsnap",i),this._layer.fire("pm:unsnap",i)),!0},_checkPrioritiySnapping:function(n){var u=this._map,f=n.segment[0],e=n.segment[1],t=n.latlng,i=this._getDistance(u,f,t),r=this._getDistance(u,e,t),s=i<r?f:e,h=i<r?i:r,c=this.options.snapDistance,o=void 0;return o=h<c?s:t,Object.assign({},o)},_createSnapList:function(){var t=this,n=[],r=[],i=this._map;i.eachLayer(function(u){if(u instanceof L.Polyline||u instanceof L.Marker||u instanceof L.CircleMarker){n.push(u);i.off("pm:remove",t._handleSnapLayerRemoval,t);i.on("pm:remove",t._handleSnapLayerRemoval,t);var f=L.polyline([],{color:"red",pmIgnore:!0});r.push(f)}});n=n.filter(function(n){return t._layer!==n});n=n.filter(function(n){return n._latlng||n._latlngs&&n._latlngs.length>0});n=n.filter(function(n){return!n._pmTempLayer});this._snapList=this._otherSnapLayers?n.concat(this._otherSnapLayers):n;this.debugIndicatorLines=r},_calcClosestLayer:function(n,t){var r=this,i={};return t.forEach(function(t,u){var f=r._calcLayerDistances(n,t);r.debugIndicatorLines[u].setLatLngs([n,f.latlng]);(void 0===i.distance||f.distance<i.distance)&&(i=f,i.layer=t)}),i},_calcLayerDistances:function(n,t){var h=this,f=this._map,e=t instanceof L.Polygon,c=!(t instanceof L.Polygon)&&t instanceof L.Polyline,l=t instanceof L.Marker||t instanceof L.CircleMarker,o=n,i=void 0,r,u,s;if(e)i=t.getLatLngs()[0];else if(c)i=t.getLatLngs();else if(l)return i=t.getLatLng(),{latlng:Object.assign({},i),distance:this._getDistance(f,i,o)};return r=void 0,u=void 0,i.forEach(function(n,t){var l=n,a=void 0,s,c;return a=e?t+1===i.length?0:t+1:t+1===i.length?void 0:t+1,s=i[a],s&&(c=h._getDistanceToSegment(f,o,l,s),(void 0===u||c<u)&&(u=c,r=[l,s])),!0}),s=this._getClosestPointOnSegment(f,n,r[0],r[1]),{latlng:Object.assign({},s),segment:r,distance:u}},_getClosestPointOnSegment:function(n,t,i,r){var u=n.getMaxZoom();u===1/0&&(u=n.getZoom());var f=n.project(t,u),e=n.project(i,u),o=n.project(r,u),s=L.LineUtil.closestPointOnSegment(f,e,o);return n.unproject(s,u)},_getDistanceToSegment:function(n,t,i,r){var u=n.latLngToLayerPoint(t),f=n.latLngToLayerPoint(i),e=n.latLngToLayerPoint(r);return L.LineUtil.pointToSegmentDistance(u,f,e)},_getDistance:function(n,t,i){return n.latLngToLayerPoint(t).distanceTo(n.latLngToLayerPoint(i))}};t.default=i},function(n,t,i){function r(n,t,i,r,u,f,e,o){var l,h,c,a,v,s={x:null,y:null,onLine1:!1,onLine2:!1};return 0==(l=(o-f)*(i-n)-(e-u)*(r-t))?null!==s.x&&null!==s.y&&s:(h=t-f,c=n-u,a=(e-u)*h-(o-f)*c,v=(i-n)*h-(r-t)*c,h=a/l,c=v/l,s.x=n+h*(i-n),s.y=t+h*(r-t),h>=0&&h<=1&&(s.onLine1=!0),c>=0&&c<=1&&(s.onLine2=!0),!(!s.onLine1||!s.onLine2)&&[s.x,s.y])}var u=i(2).point;n.exports=function(n){var i,t,f={type:"FeatureCollection",features:[]};if(t="Feature"===n.type?n.geometry:n,"LineString"===t.type)i=[t.coordinates];else if("MultiLineString"===t.type)i=t.coordinates;else if("MultiPolygon"===t.type)i=[].concat.apply([],t.coordinates);else{if("Polygon"!==t.type)throw new Error("Input must be a LineString, MultiLineString, Polygon, or MultiPolygon Feature or Geometry");i=t.coordinates}return i.forEach(function(n){i.forEach(function(t){for(var e,o,i=0;i<n.length-1;i++)for(e=i;e<t.length-1;e++){if(n===t){if(1===Math.abs(i-e))continue;if(0===i&&e===n.length-2&&n[i][0]===n[n.length-1][0]&&n[i][1]===n[n.length-1][1])continue}o=r(n[i][0],n[i][1],n[i+1][0],n[i+1][1],t[e][0],t[e][1],t[e+1][0],t[e+1][1]);o&&f.features.push(u([o[0],o[1]]))}})}),f}},function(n,t){!function(n,i){i(t)}(0,function(n){"use strict";function i(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])}function as(){}function ct(){}function v(){}function sr(){}function ph(){}function ve(){}function ir(){}function ci(n){this.name="RuntimeException";this.message=n;this.stack=(new Error).stack;Error.call(this,n)}function y(n,t){n.prototype=Object.create(t.prototype);n.prototype.constructor=n}function lo(){if(0===arguments.length)ci.call(this);else if(1===arguments.length){var n=arguments[0];ci.call(this,n)}}function c(){}function r(){var n,t,i;if(this.x=null,this.y=null,this.z=null,0===arguments.length)r.call(this,0,0);else if(1===arguments.length)n=arguments[0],r.call(this,n.x,n.y,n.z);else if(2===arguments.length)t=arguments[0],i=arguments[1],r.call(this,t,i,r.NULL_ORDINATE);else if(3===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2];this.x=u;this.y=f;this.z=e}}function ye(){if(this.dimensionsToTest=2,0===arguments.length)ye.call(this,2);else if(1===arguments.length){var n=arguments[0];if(2!==n&&3!==n)throw new ct("only 2 or 3 dimensions may be specified");this.dimensionsToTest=n}}function wh(){}function yt(){}function gy(n){this.message=n||""}function ei(){}function vs(n){this.message=n||""}function bh(n){this.message=n||""}function u(){this.array_=[];arguments[0]instanceof yt&&this.addAll(arguments[0])}function ii(){var n,t,i;(u.apply(this),0===arguments.length)||(1===arguments.length?(n=arguments[0],this.ensureCapacity(n.length),this.add(n,!0)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.ensureCapacity(t.length),this.add(t,i)))}function p(){var n,u,t,i;if(this.minx=null,this.maxx=null,this.miny=null,this.maxy=null,0===arguments.length)this.init();else if(1===arguments.length)arguments[0]instanceof r?(n=arguments[0],this.init(n.x,n.x,n.y,n.y)):arguments[0]instanceof p&&(u=arguments[0],this.init(u));else if(2===arguments.length)t=arguments[0],i=arguments[1],this.init(t.x,i.x,t.y,i.y);else if(4===arguments.length){var f=arguments[0],e=arguments[1],o=arguments[2],s=arguments[3];this.init(f,e,o,s)}}function ra(){}function vf(){ra.call(this,"Projective point not representable on the Cartesian plane.")}function t(){}function l(n,t){return n.interfaces_&&n.interfaces_().indexOf(t)>-1}function br(){}function eu(n){this.str=n}function vu(n){this.value=n}function kh(){}function f(){var n,t,i,r,u;(this.hi=0,this.lo=0,0===arguments.length)?this.init(0):1===arguments.length?"number"==typeof arguments[0]?(n=arguments[0],this.init(n)):arguments[0]instanceof f?(t=arguments[0],this.init(t)):"string"==typeof arguments[0]&&(i=arguments[0],f.call(this,f.parse(i))):2===arguments.length&&(r=arguments[0],u=arguments[1],this.init(r,u))}function rr(){}function lt(){}function pt(){}function hr(){var h,c,l,n,t,i,u;if(this.x=null,this.y=null,this.w=null,0===arguments.length)this.x=0,this.y=0,this.w=1;else if(1===arguments.length)h=arguments[0],this.x=h.x,this.y=h.y,this.w=1;else if(2===arguments.length)"number"==typeof arguments[0]&&"number"==typeof arguments[1]?(c=arguments[0],l=arguments[1],this.x=c,this.y=l,this.w=1):arguments[0]instanceof hr&&arguments[1]instanceof hr?(n=arguments[0],t=arguments[1],this.x=n.y*t.w-t.y*n.w,this.y=t.x*n.w-n.x*t.w,this.w=n.x*t.y-t.x*n.y):arguments[0]instanceof r&&arguments[1]instanceof r&&(i=arguments[0],u=arguments[1],this.x=i.y-u.y,this.y=u.x-i.x,this.w=i.x*u.y-u.x*i.y);else if(3===arguments.length){var k=arguments[0],d=arguments[1],g=arguments[2];this.x=k;this.y=d;this.w=g}else if(4===arguments.length){var f=arguments[0],e=arguments[1],o=arguments[2],s=arguments[3],a=f.y-e.y,v=e.x-f.x,y=f.x*e.y-e.x*f.y,p=o.y-s.y,w=s.x-o.x,b=o.x*s.y-s.x*o.y;this.x=v*b-w*y;this.y=p*y-a*b;this.w=a*w-p*v}}function ua(){}function yu(){}function h(){this.envelope=null;this.factory=null;this.SRID=null;this.userData=null;var n=arguments[0];this.factory=n;this.SRID=n.getSRID()}function pe(){}function oi(){}function fa(){}function ea(){}function oa(){}function sa(){}function w(){}function np(){}function tp(){}function ao(){}function nb(){}function ha(){}function li(){this.array_=[];arguments[0]instanceof yt&&this.addAll(arguments[0])}function tb(n){return null==n?hf:n.color}function at(n){return null==n?null:n.parent}function yf(n,t){null!==n&&(n.color=t)}function ip(n){return null==n?null:n.left}function ib(n){return null==n?null:n.right}function ui(){this.root_=null;this.size_=0}function ca(){}function rb(){}function di(){this.array_=[];arguments[0]instanceof yt&&this.addAll(arguments[0])}function pf(){}function e(){}function wf(){}function vo(){}function nt(){this.geometries=null;var n=arguments[0],t=arguments[1];if(h.call(this,t),null===n&&(n=[]),h.hasNullElements(n))throw new ct("geometries must not contain null elements");this.geometries=n}function cr(){var n=arguments[0],t=arguments[1];nt.call(this,n,t)}function ee(){var t,n,i;(this.geom=null,this.geomFact=null,this.bnRule=null,this.endpointMap=null,1===arguments.length)?(t=arguments[0],ee.call(this,t,oi.MOD2_BOUNDARY_RULE)):2===arguments.length&&(n=arguments[0],i=arguments[1],this.geom=n,this.geomFact=n.getFactory(),this.bnRule=i)}function rp(){this.count=null}function fk(){}function ek(){}function ok(){}function sk(){}function hk(){}function ck(){}function kr(){}function ri(){}function d(){this.points=null;var n=arguments[0],t=arguments[1];h.call(this,t);this.init(n)}function la(){}function bt(){this.coordinates=null;var n=arguments[0],t=arguments[1];h.call(this,t);this.init(n)}function bf(){}function st(){this.shell=null;this.holes=null;var t=arguments[0],n=arguments[1],i=arguments[2];if(h.call(this,i),null===t&&(t=this.getFactory().createLinearRing()),null===n&&(n=[]),h.hasNullElements(n))throw new ct("holes must not contain null elements");if(t.isEmpty()&&h.hasNonEmptyElements(n))throw new ct("shell is empty but holes are not");this.shell=t;this.holes=n}function lr(){var n=arguments[0],t=arguments[1];nt.call(this,n,t)}function gt(){var t,n,i,u;arguments[0]instanceof r&&arguments[1]instanceof g?(t=arguments[0],n=arguments[1],gt.call(this,n.getCoordinateSequenceFactory().create(t),n)):l(arguments[0],lt)&&arguments[1]instanceof g&&(i=arguments[0],u=arguments[1],d.call(this,i,u),this.validateConstruction())}function ai(){var n=arguments[0],t=arguments[1];nt.call(this,n,t)}function dr(){if((this.factory=null,this.isUserDataCopied=!1,0!==arguments.length)&&1===arguments.length){var n=arguments[0];this.factory=n}}function aa(){}function up(){}function fp(){}function ep(){}function gr(){var e,i,t,u,o,f,s,n;if(this.dimension=3,this.coordinates=null,1===arguments.length){if(arguments[0]instanceof Array)e=arguments[0],gr.call(this,e,3);else if(Number.isInteger(arguments[0]))for(i=arguments[0],this.coordinates=new Array(i).fill(null),n=0;n<i;n++)this.coordinates[n]=new r;else if(l(arguments[0],lt)){if(t=arguments[0],null===t)return this.coordinates=new Array(0).fill(null),null;for(this.dimension=t.getDimension(),this.coordinates=new Array(t.size()).fill(null),n=0;n<this.coordinates.length;n++)this.coordinates[n]=t.getCoordinateCopy(n)}}else if(2===arguments.length)if(arguments[0]instanceof Array&&Number.isInteger(arguments[1]))u=arguments[0],o=arguments[1],this.coordinates=u,this.dimension=o,null===u&&(this.coordinates=new Array(0).fill(null));else if(Number.isInteger(arguments[0])&&Number.isInteger(arguments[1]))for(f=arguments[0],s=arguments[1],this.coordinates=new Array(f).fill(null),this.dimension=s,n=0;n<f;n++)this.coordinates[n]=new r}function oe(){}function lk(n,t){return n===t||n!==n&&t!==t}function ak(n){this.add?n.forEach(this.add,this):n.forEach(function(n){this.set(n[0],n[1])},this)}function vk(n){return this.has(n)&&(this._keys.splice(cf,1),this._values.splice(cf,1),this._itp.forEach(function(n){cf<n[0]&&n[0]--})),cf>-1}function yk(n){if(this.has(n))return this._values[cf]}function pk(n,t){if(this.objectOnly&&t!==Object(t))throw new TypeError("Invalid value used as weak collection key");if(t!==t||0===t)for(cf=n.length;cf--&&!lk(n[cf],t););else cf=n.indexOf(t);return cf>-1}function wk(n){return pk.call(this,this._keys,n)}function bk(n,t){return this.has(n)?this._values[cf]=t:this._values[this._keys.push(n)-1]=t,this}function kk(){(this._keys||0).length=this._values.length=0}function dk(){return op(this._itp,this._keys)}function gk(){return op(this._itp,this._values)}function nd(){return op(this._itp,this._keys,this._values)}function op(n,t,i){var r=[0],u=!1;return n.push(r),{next:function(){var e,f=r[0];return!u&&f<t.length?(e=i?[t[f],i[f]]:t[f],r[0]++):(u=!0,n.splice(n.indexOf(r),1)),{done:u,value:e}}}}function td(){return this._values.length}function id(n,t){for(var i,r=this.entries();;){if(i=r.next(),i.done)break;n.call(t,i.value[1],i.value[0],this)}}function kf(){this.map_=new od}function ft(){var n,i,t;(this.modelType=null,this.scale=null,0===arguments.length)?this.modelType=ft.FLOATING:1===arguments.length&&(arguments[0]instanceof nf?(n=arguments[0],this.modelType=n,n===ft.FIXED&&this.setScale(1)):"number"==typeof arguments[0]?(i=arguments[0],this.modelType=ft.FIXED,this.setScale(i)):arguments[0]instanceof ft&&(t=arguments[0],this.modelType=t.modelType,this.scale=t.scale))}function nf(){this.name=null;var n=arguments[0];this.name=n;nf.nameToTypeMap.put(n,this)}function g(){var n,t,i,r;if(this.precisionModel=null,this.coordinateSequenceFactory=null,this.SRID=null,0===arguments.length)g.call(this,new ft,0);else if(1===arguments.length)l(arguments[0],ua)?(n=arguments[0],g.call(this,new ft,0,n)):arguments[0]instanceof ft&&(t=arguments[0],g.call(this,t,0,g.getDefaultCoordinateSequenceFactory()));else if(2===arguments.length)i=arguments[0],r=arguments[1],g.call(this,i,r,g.getDefaultCoordinateSequenceFactory());else if(3===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2];this.precisionModel=u;this.coordinateSequenceFactory=e;this.SRID=f}}function sp(n){this.geometryFactory=n||new g}function pi(n){this.parser=new sp(n)}function ht(){this.result=null;this.inputLines=Array(2).fill().map(function(){return Array(2)});this.intPt=new Array(2).fill(null);this.intLineIndex=null;this._isProper=null;this.pa=null;this.pb=null;this.precisionModel=null;this.intPt[0]=new r;this.intPt[1]=new r;this.pa=this.intPt[0];this.pb=this.intPt[1];this.result=0}function si(){ht.apply(this)}function yo(){}function po(){this.p=null;this.crossingCount=0;this.isPointOnSegment=!1;var n=arguments[0];this.p=n}function s(){}function b(){var n,t,i;if(this.p0=null,this.p1=null,0===arguments.length)b.call(this,new r,new r);else if(1===arguments.length)n=arguments[0],b.call(this,n.p0,n.p1);else if(2===arguments.length)t=arguments[0],i=arguments[1],this.p0=t,this.p1=i;else if(4===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2],o=arguments[3];b.call(this,new r(u,f),new r(e,o))}}function ot(){var i,n;(this.matrix=null,0===arguments.length)?(this.matrix=Array(3).fill().map(function(){return Array(3)}),this.setAll(e.FALSE)):1===arguments.length&&("string"==typeof arguments[0]?(i=arguments[0],ot.call(this),this.set(i)):arguments[0]instanceof ot&&(n=arguments[0],ot.call(this),this.matrix[t.INTERIOR][t.INTERIOR]=n.matrix[t.INTERIOR][t.INTERIOR],this.matrix[t.INTERIOR][t.BOUNDARY]=n.matrix[t.INTERIOR][t.BOUNDARY],this.matrix[t.INTERIOR][t.EXTERIOR]=n.matrix[t.INTERIOR][t.EXTERIOR],this.matrix[t.BOUNDARY][t.INTERIOR]=n.matrix[t.BOUNDARY][t.INTERIOR],this.matrix[t.BOUNDARY][t.BOUNDARY]=n.matrix[t.BOUNDARY][t.BOUNDARY],this.matrix[t.BOUNDARY][t.EXTERIOR]=n.matrix[t.BOUNDARY][t.EXTERIOR],this.matrix[t.EXTERIOR][t.INTERIOR]=n.matrix[t.EXTERIOR][t.INTERIOR],this.matrix[t.EXTERIOR][t.BOUNDARY]=n.matrix[t.EXTERIOR][t.BOUNDARY],this.matrix[t.EXTERIOR][t.EXTERIOR]=n.matrix[t.EXTERIOR][t.EXTERIOR]))}function df(){this.areaBasePt=null;this.triangleCent3=new r;this.areasum2=0;this.cg3=new r;this.lineCentSum=new r;this.totalLength=0;this.ptCount=0;this.ptCentSum=new r;var n=arguments[0];this.areaBasePt=null;this.add(n)}function va(n){this.message=n||""}function gi(){this.array_=[]}function ys(){this.treeSet=new di;this.list=new u}function gf(){var n,t,i;(this.geomFactory=null,this.inputPts=null,1===arguments.length)?(n=arguments[0],gf.call(this,gf.extractCoordinates(n),n.getFactory())):2===arguments.length&&(t=arguments[0],i=arguments[1],this.inputPts=ys.filterCoordinates(t),this.geomFactory=i)}function ps(){this.origin=null;var n=arguments[0];this.origin=n}function ur(){this.inputGeom=null;this.factory=null;this.pruneEmptyGeometry=!0;this.preserveGeometryCollectionType=!0;this.preserveCollections=!1;this.preserveType=!1}function ws(){var t,i,n,r;(this.snapTolerance=0,this.srcPts=null,this.seg=new b,this.allowSnappingToSourceVertices=!1,this._isClosed=!1,arguments[0]instanceof d&&"number"==typeof arguments[1])?(t=arguments[0],i=arguments[1],ws.call(this,t.getCoordinates(),i)):arguments[0]instanceof Array&&"number"==typeof arguments[1]&&(n=arguments[0],r=arguments[1],this.srcPts=n,this._isClosed=ws.isClosed(n),this.snapTolerance=r)}function nr(){this.srcGeom=null;var n=arguments[0];this.srcGeom=n}function dh(){var n,t;if(ur.apply(this),this.snapTolerance=null,this.snapPts=null,this.isSelfSnap=!1,2===arguments.length)n=arguments[0],t=arguments[1],this.snapTolerance=n,this.snapPts=t;else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];this.snapTolerance=i;this.snapPts=r;this.isSelfSnap=u}}function nu(){this.isFirst=!0;this.commonMantissaBitsCount=53;this.commonBits=0;this.commonSignExp=null}function gh(){this.commonCoord=null;this.ccFilter=new ya}function ya(){this.commonBitsX=new nu;this.commonBitsY=new nu}function nc(){this.trans=null;var n=arguments[0];this.trans=n}function wo(){this.parent=null;this.atStart=null;this.max=null;this.index=null;this.subcollectionIterator=null;var n=arguments[0];this.parent=n;this.atStart=!0;this.index=0;this.max=n.getNumGeometries()}function bo(){if((this.boundaryRule=oi.OGC_SFS_BOUNDARY_RULE,this.isIn=null,this.numBoundaries=null,0!==arguments.length)&&1===arguments.length){var n=arguments[0];if(null===n)throw new ct("Rule must be non-null");this.boundaryRule=n}}function bs(){}function tc(){}function hp(){this.pts=null;this.data=null;var n=arguments[0],t=arguments[1];this.pts=n;this.data=t}function pa(){}function ne(){this.bounds=null;this.item=null;var n=arguments[0],t=arguments[1];this.bounds=n;this.item=t}function cp(){this._size=null;this.items=null;this._size=0;this.items=new u;this.items.add(null)}function we(){}function wa(){}function tr(){if((this.childBoundables=new u,this.bounds=null,this.level=null,0!==arguments.length)&&1===arguments.length){var n=arguments[0];this.level=n}}function fr(){this.boundable1=null;this.boundable2=null;this._distance=null;this.itemDistance=null;var n=arguments[0],t=arguments[1],i=arguments[2];this.boundable1=n;this.boundable2=t;this.itemDistance=i;this._distance=this.distance()}function ni(){if(this.root=null,this.built=!1,this.itemBoundables=new u,this.nodeCapacity=null,0===arguments.length)ni.call(this,ni.DEFAULT_NODE_CAPACITY);else if(1===arguments.length){var n=arguments[0];c.isTrue(n>1,"Node capacity must be greater than 1");this.nodeCapacity=n}}function rd(){}function ba(){}function kt(){if(0===arguments.length)kt.call(this,kt.DEFAULT_NODE_CAPACITY);else if(1===arguments.length){var n=arguments[0];ni.call(this,n)}}function ic(){var n=arguments[0];tr.call(this,n)}function er(){}function lp(){this.segString=null;this.coord=null;this.segmentIndex=null;this.segmentOctant=null;this._isInterior=null;var n=arguments[0],t=arguments[1],i=arguments[2],u=arguments[3];this.segString=n;this.coord=new r(t);this.segmentIndex=i;this.segmentOctant=u;this._isInterior=!t.equals2D(n.getCoordinate(i))}function ap(){this.nodeMap=new ui;this.edge=null;var n=arguments[0];this.edge=n}function ub(){this.nodeList=null;this.edge=null;this.nodeIt=null;this.currNode=null;this.nextNode=null;this.currSegIndex=0;var n=arguments[0];this.nodeList=n;this.edge=n.getEdge();this.nodeIt=n.iterator();this.readNextNode()}function vp(){}function tf(){this.nodeList=new ap(this);this.pts=null;this.data=null;var n=arguments[0],t=arguments[1];this.pts=n;this.data=t}function rc(){this.tempEnv1=new p;this.tempEnv2=new p;this.overlapSeg1=new b;this.overlapSeg2=new b}function yp(){this.pts=null;this.start=null;this.end=null;this.env=null;this.context=null;this.id=null;var n=arguments[0],t=arguments[1],i=arguments[2],r=arguments[3];this.pts=n;this.start=t;this.end=i;this.context=r}function it(){}function pu(){}function uc(){}function ka(){if((this.segInt=null,0!==arguments.length)&&1===arguments.length){var n=arguments[0];this.setSegmentIntersector(n)}}function be(){if((this.monoChains=new u,this.index=new kt,this.idCounter=0,this.nodedSegStrings=null,this.nOverlaps=0,0!==arguments.length)&&1===arguments.length){var n=arguments[0];ka.call(this,n)}}function fc(){rc.apply(this);this.si=null;var n=arguments[0];this.si=n}function ar(){var t,i,n;(this.pt=null,1===arguments.length)?(t=arguments[0],ci.call(this,t)):2===arguments.length&&(i=arguments[0],n=arguments[1],ci.call(this,ar.msgWithCoord(i,n)),this.name="TopologyException",this.pt=new r(n))}function ec(){}function se(){this.findAllIntersections=!1;this.isCheckEndSegmentsOnly=!1;this.li=null;this.interiorIntersection=null;this.intSegments=null;this.intersections=new u;this.intersectionCount=0;this.keepIntersections=!0;var n=arguments[0];this.li=n;this.interiorIntersection=null}function oc(){this.li=new si;this.segStrings=null;this.findAllIntersections=!1;this.segInt=null;this._isValid=!0;var n=arguments[0];this.segStrings=n}function ko(){this.nv=null;var n=arguments[0];this.nv=new oc(ko.toSegmentStrings(n))}function ks(){this.mapOp=null;var n=arguments[0];this.mapOp=n}function o(){}function vr(){var i,r,t,n;if(this.location=null,1===arguments.length){if(arguments[0]instanceof Array)i=arguments[0],this.init(i.length);else if(Number.isInteger(arguments[0]))r=arguments[0],this.init(1),this.location[o.ON]=r;else if(arguments[0]instanceof vr&&(t=arguments[0],this.init(t.location.length),null!==t))for(n=0;n<this.location.length;n++)this.location[n]=t.location[n]}else if(3===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2];this.init(3);this.location[o.ON]=u;this.location[o.LEFT]=f;this.location[o.RIGHT]=e}}function ti(){var n,i,r,u;if(this.elt=new Array(2).fill(null),1===arguments.length)Number.isInteger(arguments[0])?(n=arguments[0],this.elt[0]=new vr(n),this.elt[1]=new vr(n)):arguments[0]instanceof ti&&(i=arguments[0],this.elt[0]=new vr(i.elt[0]),this.elt[1]=new vr(i.elt[1]));else if(2===arguments.length)r=arguments[0],u=arguments[1],this.elt[0]=new vr(t.NONE),this.elt[1]=new vr(t.NONE),this.elt[r].setLocation(u);else if(3===arguments.length){var f=arguments[0],e=arguments[1],o=arguments[2];this.elt[0]=new vr(f,e,o);this.elt[1]=new vr(f,e,o)}else if(4===arguments.length){var s=arguments[0],h=arguments[1],c=arguments[2],l=arguments[3];this.elt[0]=new vr(t.NONE,t.NONE,t.NONE);this.elt[1]=new vr(t.NONE,t.NONE,t.NONE);this.elt[s].setLocations(h,c,l)}}function ds(){this.startDe=null;this.maxNodeDegree=-1;this.edges=new u;this.pts=new u;this.label=new ti(t.NONE);this.ring=null;this._isHole=null;this.shell=null;this.holes=new u;this.geometryFactory=null;var n=arguments[0],i=arguments[1];this.geometryFactory=i;this.computePoints(n);this.computeRing()}function da(){var n=arguments[0],t=arguments[1];ds.call(this,n,t)}function sc(){var n=arguments[0],t=arguments[1];ds.call(this,n,t)}function ke(){if((this.label=null,this._isInResult=!1,this._isCovered=!1,this._isCoveredSet=!1,this._isVisited=!1,0!==arguments.length)&&1===arguments.length){var n=arguments[0];this.label=n}}function te(){ke.apply(this);this.coord=null;this.edges=null;var n=arguments[0],i=arguments[1];this.coord=n;this.edges=i;this.label=new ti(0,t.NONE)}function gs(){this.nodeMap=new ui;this.nodeFact=null;var n=arguments[0];this.nodeFact=n}function rf(){var n;if(this.edge=null,this.label=null,this.node=null,this.p0=null,this.p1=null,this.dx=null,this.dy=null,this.quadrant=null,1===arguments.length)n=arguments[0],this.edge=n;else if(3===arguments.length){var t=arguments[0],i=arguments[1],r=arguments[2];rf.call(this,t,i,r,null)}else if(4===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2],o=arguments[3];rf.call(this,u);this.init(f,e);this.label=o}}function go(){var n,t,i;this._isForward=null;this._isInResult=!1;this._isVisited=!1;this.sym=null;this.next=null;this.nextMin=null;this.edgeRing=null;this.minEdgeRing=null;this.depth=[0,-999,-999];n=arguments[0];t=arguments[1];(rf.call(this,n),this._isForward=t,t)?this.init(n.getCoordinate(0),n.getCoordinate(1)):(i=n.getNumPoints()-1,this.init(n.getCoordinate(i),n.getCoordinate(i-1)));this.computeDirectedLabel()}function ns(){}function uf(){if(this.edges=new u,this.nodes=null,this.edgeEndList=new u,0===arguments.length)this.nodes=new gs(new ns);else if(1===arguments.length){var n=arguments[0];this.nodes=new gs(n)}}function ga(){this.geometryFactory=null;this.shellList=new u;var n=arguments[0];this.geometryFactory=n}function pp(){this.op=null;this.geometryFactory=null;this.ptLocator=null;this.lineEdgesList=new u;this.resultLineList=new u;var n=arguments[0],t=arguments[1],i=arguments[2];this.op=n;this.geometryFactory=t;this.ptLocator=i}function wp(){this.op=null;this.geometryFactory=null;this.resultPointList=new u;var n=arguments[0],t=arguments[1];arguments[2];this.op=n;this.geometryFactory=t}function nv(){}function tu(){this.geom=null;var n=arguments[0];this.geom=n}function ts(){this.edgeMap=new ui;this.edgeList=null;this.ptInAreaLocation=[t.NONE,t.NONE]}function tv(){ts.apply(this);this.resultAreaEdgeList=null;this.label=null;this.SCANNING_FOR_INCOMING=1;this.LINKING_TO_OUTGOING=2}function nh(){ns.apply(this)}function bp(){this.mce=null;this.chainIndex=null;var n=arguments[0],t=arguments[1];this.mce=n;this.chainIndex=t}function ie(){var n,t;if(this.label=null,this.xValue=null,this.eventType=null,this.insertEvent=null,this.deleteEventIndex=null,this.obj=null,2===arguments.length)n=arguments[0],t=arguments[1],this.eventType=ie.DELETE,this.xValue=n,this.insertEvent=t;else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];this.eventType=ie.INSERT;this.label=i;this.xValue=r;this.obj=u}}function iv(){}function de(){this._hasIntersection=!1;this.hasProper=!1;this.hasProperInterior=!1;this.properIntersectionPoint=null;this.li=null;this.includeProper=null;this.recordIsolated=null;this.isSelfIntersection=null;this.numIntersections=0;this.numTests=0;this.bdyNodes=null;this._isDone=!1;this.isDoneWhenProperInt=!1;var n=arguments[0],t=arguments[1],i=arguments[2];this.li=n;this.includeProper=t;this.recordIsolated=i}function rv(){iv.apply(this);this.events=new u;this.nOverlaps=null}function is(){this.min=v.POSITIVE_INFINITY;this.max=v.NEGATIVE_INFINITY}function kp(){}function uv(){is.apply(this);this.item=null;var n=arguments[0],t=arguments[1],i=arguments[2];this.min=n;this.max=t;this.item=i}function fv(){is.apply(this);this.node1=null;this.node2=null;var n=arguments[0],t=arguments[1];this.node1=n;this.node2=t;this.buildExtent(this.node1,this.node2)}function dp(){this.leaves=new u;this.root=null;this.level=0}function wi(){var n,t,i;(this.lines=null,this.isForcedToLineString=!1,1===arguments.length)?(n=arguments[0],this.lines=n):2===arguments.length&&(t=arguments[0],i=arguments[1],this.lines=t,this.isForcedToLineString=i)}function ev(){this.items=new u}function hc(){this.index=null;var n=arguments[0];if(!l(n,bf))throw new ct("Argument must be Polygonal");this.index=new sv(n)}function ov(){this.counter=null;var n=arguments[0];this.counter=n}function sv(){this.index=new dp;var n=arguments[0];this.init(n)}function gp(){this.coord=null;this.segmentIndex=null;this.dist=null;var n=arguments[0],t=arguments[1],i=arguments[2];this.coord=new r(n);this.segmentIndex=t;this.dist=i}function nw(){this.nodeMap=new ui;this.edge=null;var n=arguments[0];this.edge=n}function cc(){}function tw(){var n,t;this.e=null;this.pts=null;this.startIndex=null;this.env1=new p;this.env2=new p;n=arguments[0];this.e=n;this.pts=n.getCoordinates();t=new cc;this.startIndex=t.getChainStartIndices(this.pts)}function wu(){var n,t;for(this.depth=Array(2).fill().map(function(){return Array(3)}),n=0;n<2;n++)for(t=0;t<3;t++)this.depth[n][t]=wu.NULL_VALUE}function ou(){var n,t,i;(ke.apply(this),this.pts=null,this.env=null,this.eiList=new nw(this),this.name=null,this.mce=null,this._isIsolated=!0,this.depth=new wu,this.depthDelta=0,1===arguments.length)?(n=arguments[0],ou.call(this,n,null)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.pts=t,this.label=i)}function or(){var t,i;if(uf.apply(this),this.parentGeom=null,this.lineEdgeMap=new kf,this.boundaryNodeRule=null,this.useBoundaryDeterminationRule=!0,this.argIndex=null,this.boundaryNodes=null,this._hasTooFewPoints=!1,this.invalidPoint=null,this.areaPtLocator=null,this.ptLocator=new bo,2===arguments.length)t=arguments[0],i=arguments[1],or.call(this,t,i,oi.OGC_SFS_BOUNDARY_RULE);else if(3===arguments.length){var r=arguments[0],n=arguments[1],u=arguments[2];this.argIndex=r;this.parentGeom=n;this.boundaryNodeRule=u;null!==n&&this.add(n)}}function ge(){var n,r,u;if(this.li=new si,this.resultPrecisionModel=null,this.arg=null,1===arguments.length)n=arguments[0],this.setComputationPrecision(n.getPrecisionModel()),this.arg=new Array(1).fill(null),this.arg[0]=new or(0,n);else if(2===arguments.length)r=arguments[0],u=arguments[1],ge.call(this,r,u,oi.OGC_SFS_BOUNDARY_RULE);else if(3===arguments.length){var t=arguments[0],i=arguments[1],f=arguments[2];t.getPrecisionModel().compareTo(i.getPrecisionModel())>=0?this.setComputationPrecision(t.getPrecisionModel()):this.setComputationPrecision(i.getPrecisionModel());this.arg=new Array(2).fill(null);this.arg[0]=new or(0,t,f);this.arg[1]=new or(1,i,f)}}function no(){this.pts=null;this._orientation=null;var n=arguments[0];this.pts=n;this._orientation=no.orientation(n)}function hv(){this.edges=new u;this.ocaMap=new ui}function a(){this.ptLocator=new bo;this.geomFact=null;this.resultGeom=null;this.graph=null;this.edgeList=new hv;this.resultPolyList=new u;this.resultLineList=new u;this.resultPointList=new u;var n=arguments[0],t=arguments[1];ge.call(this,n,t);this.graph=new uf(new nh);this.geomFact=n.getFactory()}function su(){this.geom=new Array(2).fill(null);this.snapTolerance=null;this.cbr=null;var n=arguments[0],t=arguments[1];this.geom[0]=n;this.geom[1]=t;this.computeSnapTolerance()}function hi(){this.geom=new Array(2).fill(null);var n=arguments[0],t=arguments[1];this.geom[0]=n;this.geom[1]=t}function bu(){this.factory=null;this.interiorPoint=null;this.maxWidth=0;var n=arguments[0];this.factory=n.getFactory();this.add(n)}function th(){this.poly=null;this.centreY=null;this.hiY=v.MAX_VALUE;this.loY=-v.MAX_VALUE;var n=arguments[0];this.poly=n;this.hiY=n.getEnvelopeInternal().getMaxY();this.loY=n.getEnvelopeInternal().getMinY();this.centreY=bu.avg(this.loY,this.hiY)}function cv(){this.centroid=null;this.minDistance=v.MAX_VALUE;this.interiorPoint=null;var n=arguments[0];this.centroid=n.getCentroid().getCoordinate();this.addInterior(n);null===this.interiorPoint&&this.addEndpoints(n)}function lv(){this.centroid=null;this.minDistance=v.MAX_VALUE;this.interiorPoint=null;var n=arguments[0];this.centroid=n.getCentroid().getCoordinate();this.add(n)}function to(){this.tempEnv1=new p;this.selectedSegment=new b}function ff(){this.items=new u;this.subnode=[null,null]}function re(){var n,t,i;(this.min=null,this.max=null,0===arguments.length)?(this.min=0,this.max=0):1===arguments.length?(n=arguments[0],this.init(n.min,n.max)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.init(t,i))}function rs(){}function ud(n,t){var f,i,r,u,e={32:8,64:11}[n];if(u||(f=t<0||1/t<0,isFinite(t)||(u={32:{d:127,c:128,b:0,a:0},64:{d:32752,c:0,b:0,a:0}}[n],f&&(u.d+=1<<n/4-1),i=Math.pow(2,e)-1,r=0)),!u){for(i={32:127,64:1023}[n],r=Math.abs(t);r>=2;)i++,r/=2;for(;r<1&&i>0;)i--,r*=2;i<=0&&(r/=2);32===n&&i>254&&(u={d:f?255:127,c:128,b:0,a:0},i=Math.pow(2,e)-1,r=0)}return i}function lc(){this.pt=0;this.level=0;this.interval=null;var n=arguments[0];this.computeKey(n)}function he(){ff.apply(this);this.interval=null;this.centre=null;this.level=null;var n=arguments[0],t=arguments[1];this.interval=n;this.level=t;this.centre=(n.getMin()+n.getMax())/2}function io(){}function ih(){ff.apply(this)}function rh(){this.root=null;this.minExtent=1;this.root=new ih}function iw(){}function ac(){this.ring=null;this.tree=null;this.crossings=0;this.interval=new re;var n=arguments[0];this.ring=n;this.buildIndex()}function vc(){to.apply(this);this.mcp=null;this.p=null;var n=arguments[0],t=arguments[1];this.mcp=n;this.p=t}function k(){}function vt(){this.p0=null;this.p1=null;this.p2=null;var n=arguments[0],t=arguments[1],i=arguments[2];this.p0=n;this.p1=t;this.p2=i}function ce(){this.input=null;this.extremalPts=null;this.centre=null;this.radius=0;var n=arguments[0];this.input=n}function bi(){var n,t,i;(this.inputGeom=null,this.isConvex=null,this.convexHullPts=null,this.minBaseSeg=new b,this.minWidthPt=null,this.minPtIndex=null,this.minWidth=0,1===arguments.length)?(n=arguments[0],bi.call(this,n,!1)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.inputGeom=t,this.isConvex=i)}function ro(){this.inputGeom=null;this.distanceTolerance=null;var n=arguments[0];this.inputGeom=n}function yc(){ur.apply(this);this.distanceTolerance=null;var n=arguments[0];this.distanceTolerance=n}function ue(){this._orig=null;this._sym=null;this._next=null;var n=arguments[0];this._orig=n}function yr(){this._isMarked=!1;var n=arguments[0];ue.call(this,n)}function uh(){this.vertexMap=new kf}function av(){this._isStart=!1;var n=arguments[0];yr.call(this,n)}function vv(){uh.apply(this)}function pc(){this.result=null;this.factory=null;this.graph=null;this.lines=new u;this.nodeEdgeStack=new gi;this.ringStartEdge=null;this.graph=new vv}function ef(){this.items=new u;this.subnode=new Array(4).fill(null)}function wc(){this.pt=new r;this.level=0;this.env=null;var n=arguments[0];this.computeKey(n)}function le(){ef.apply(this);this.env=null;this.centrex=null;this.centrey=null;this.level=null;var n=arguments[0],t=arguments[1];this.env=n;this.level=t;this.centrex=(n.getMinX()+n.getMaxX())/2;this.centrey=(n.getMinY()+n.getMaxY())/2}function us(){ef.apply(this)}function uo(){this.root=null;this.minExtent=1;this.root=new us}function rw(n){this.geometryFactory=n||new g}function fb(n){this.geometryFactory=n||new g;this.precisionModel=this.geometryFactory.getPrecisionModel();this.parser=new rw(this.geometryFactory)}function eb(){this.parser=new rw(this.geometryFactory)}function ob(n){this.geometryFactory=n||new g;this.precisionModel=this.geometryFactory.getPrecisionModel();this.parser=new sp(this.geometryFactory)}function bc(n){return[n.x,n.y]}function sb(n,t){this.geometryFactory=n||new g;this.ol=t||"undefined"!=typeof ol&&ol}function kc(){var n,t,i,r;(this.noder=null,this.scaleFactor=null,this.offsetX=null,this.offsetY=null,this.isScaled=!1,2===arguments.length)?(n=arguments[0],t=arguments[1],kc.call(this,n,t,0,0)):4===arguments.length&&(i=arguments[0],r=arguments[1],arguments[2],arguments[3],this.noder=i,this.scaleFactor=r,this.isScaled=!this.isIntegerPrecision())}function dc(){var n,t,i;(this.inputGeom=null,this.isClosedEndpointsInInterior=!0,this.nonSimpleLocation=null,1===arguments.length)?(n=arguments[0],this.inputGeom=n):2===arguments.length&&(t=arguments[0],i=arguments[1],this.inputGeom=t,this.isClosedEndpointsInInterior=!i.isInBoundary(2))}function yv(){this.pt=null;this.isClosed=null;this.degree=null;var n=arguments[0];this.pt=n;this.isClosed=!1;this.degree=0}function rt(){var n,t,i;if(this.quadrantSegments=rt.DEFAULT_QUADRANT_SEGMENTS,this.endCapStyle=rt.CAP_ROUND,this.joinStyle=rt.JOIN_ROUND,this.mitreLimit=rt.DEFAULT_MITRE_LIMIT,this._isSingleSided=!1,this.simplifyFactor=rt.DEFAULT_SIMPLIFY_FACTOR,0!==arguments.length)if(1===arguments.length)n=arguments[0],this.setQuadrantSegments(n);else if(2===arguments.length)t=arguments[0],i=arguments[1],this.setQuadrantSegments(t),this.setEndCapStyle(i);else if(4===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2],e=arguments[3];this.setQuadrantSegments(r);this.setEndCapStyle(u);this.setJoinStyle(f);this.setMitreLimit(e)}}function uw(){this.minIndex=-1;this.minCoord=null;this.minDe=null;this.orientedDe=null}function pv(){this.array_=[]}function fw(){this.finder=null;this.dirEdgeList=new u;this.nodes=new u;this.rightMostCoord=null;this.env=null;this.finder=new uw}function vi(){this.inputLine=null;this.distanceTol=null;this.isDeleted=null;this.angleOrientation=s.COUNTERCLOCKWISE;var n=arguments[0];this.inputLine=n}function gc(){this.ptList=null;this.precisionModel=null;this.minimimVertexDistance=0;this.ptList=new u}function of(){this.maxCurveSegmentError=0;this.filletAngleQuantum=null;this.closingSegLengthFactor=1;this.segList=null;this.distance=0;this.precisionModel=null;this.bufParams=null;this.li=null;this.s0=null;this.s1=null;this.s2=null;this.seg0=new b;this.seg1=new b;this.offset0=new b;this.offset1=new b;this.side=0;this._hasNarrowConcaveAngle=!1;var t=arguments[0],n=arguments[1],i=arguments[2];this.precisionModel=t;this.bufParams=n;this.li=new si;this.filletAngleQuantum=Math.PI/2/n.getQuadrantSegments();n.getQuadrantSegments()>=8&&n.getJoinStyle()===rt.JOIN_ROUND&&(this.closingSegLengthFactor=of.MAX_CLOSING_SEG_LEN_FACTOR);this.init(i)}function nl(){this.distance=0;this.precisionModel=null;this.bufParams=null;var n=arguments[0],t=arguments[1];this.precisionModel=n;this.bufParams=t}function wv(){this.subgraphs=null;this.seg=new b;this.cga=new s;var n=arguments[0];this.subgraphs=n}function bv(){this.upwardSeg=null;this.leftDepth=null;var n=arguments[0],t=arguments[1];this.upwardSeg=new b(n);this.leftDepth=t}function ew(){this.inputGeom=null;this.distance=null;this.curveBuilder=null;this.curveList=new u;var n=arguments[0],t=arguments[1],i=arguments[2];this.inputGeom=n;this.distance=t;this.curveBuilder=i}function tl(){this._hasIntersection=!1;this.hasProper=!1;this.hasProperInterior=!1;this.hasInterior=!1;this.properIntersectionPoint=null;this.li=null;this.isSelfIntersection=null;this.numIntersections=0;this.numInteriorIntersections=0;this.numProperIntersections=0;this.numTests=0;var n=arguments[0];this.li=n}function fo(){this.bufParams=null;this.workingPrecisionModel=null;this.workingNoder=null;this.geomFact=null;this.graph=null;this.edgeList=new hv;var n=arguments[0];this.bufParams=n}function il(){this.li=new si;this.segStrings=null;var n=arguments[0];this.segStrings=n}function fh(){this.li=null;this.pt=null;this.originalPt=null;this.ptScaled=null;this.p0Scaled=null;this.p1Scaled=null;this.scaleFactor=null;this.minx=null;this.maxx=null;this.miny=null;this.maxy=null;this.corner=new Array(4).fill(null);this.safeEnv=null;var n=arguments[0],t=arguments[1],i=arguments[2];if(this.originalPt=n,this.pt=n,this.scaleFactor=t,this.li=i,t<=0)throw new ct("Scale factor must be non-zero");1!==t&&(this.pt=new r(this.scale(n.x),this.scale(n.y)),this.p0Scaled=new r,this.p1Scaled=new r);this.initCorners(this.pt)}function kv(){this.index=null;var n=arguments[0];this.index=n}function rl(){to.apply(this);this.hotPixel=null;this.parentEdge=null;this.hotPixelVertexIndex=null;this._isNodeAdded=!1;var n=arguments[0],t=arguments[1],i=arguments[2];this.hotPixel=n;this.parentEdge=t;this.hotPixelVertexIndex=i}function ow(){this.li=null;this.interiorIntersections=null;var n=arguments[0];this.li=n;this.interiorIntersections=new u}function sw(){this.pm=null;this.li=null;this.scaleFactor=null;this.noder=null;this.pointSnapper=null;this.nodedSegStrings=null;var n=arguments[0];this.pm=n;this.li=new si;this.li.setPrecisionModel(n);this.scaleFactor=n.getScale()}function yi(){var n,t,i;(this.argGeom=null,this.distance=null,this.bufParams=new rt,this.resultGeometry=null,this.saveException=null,1===arguments.length)?(n=arguments[0],this.argGeom=n):2===arguments.length&&(t=arguments[0],i=arguments[1],this.argGeom=t,this.bufParams=i)}function fs(){this.comps=null;var n=arguments[0];this.comps=n}function pr(){var n,t;if(this.component=null,this.segIndex=null,this.pt=null,2===arguments.length)n=arguments[0],t=arguments[1],pr.call(this,n,pr.INSIDE_AREA,t);else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];this.component=i;this.segIndex=r;this.pt=u}}function es(){this.pts=null;var n=arguments[0];this.pts=n}function ul(){this.locations=null;var n=arguments[0];this.locations=n}function ku(){var n,t;if(this.geom=null,this.terminateDistance=0,this.ptLocator=new bo,this.minDistanceLocation=null,this.minDistance=v.MAX_VALUE,2===arguments.length)n=arguments[0],t=arguments[1],ku.call(this,n,t,0);else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];this.geom=new Array(2).fill(null);this.geom[0]=i;this.geom[1]=r;this.terminateDistance=u}}function hw(){this.factory=null;this.directedEdges=new u;this.coordinates=null;var n=arguments[0];this.factory=n}function hu(){this._isMarked=!1;this._isVisited=!1;this.data=null}function iu(){var n,t;hu.apply(this);this.parentEdge=null;this.from=null;this.to=null;this.p0=null;this.p1=null;this.sym=null;this.edgeDirection=null;this.quadrant=null;this.angle=null;var i=arguments[0],r=arguments[1],u=arguments[2],f=arguments[3];this.from=i;this.to=r;this.edgeDirection=f;this.p0=i.getCoordinate();this.p1=u;n=this.p1.x-this.p0.x;t=this.p1.y-this.p0.y;this.quadrant=it.quadrant(n,t);this.angle=Math.atan2(t,n)}function fl(){var n=arguments[0],t=arguments[1],i=arguments[2],r=arguments[3];iu.call(this,n,t,i,r)}function sf(){if((hu.apply(this),this.dirEdge=null,0!==arguments.length)&&2===arguments.length){var n=arguments[0],t=arguments[1];this.setDirectedEdges(n,t)}}function cw(){this.outEdges=new u;this.sorted=!1}function fe(){var n,t,i;(hu.apply(this),this.pt=null,this.deStar=null,1===arguments.length)?(n=arguments[0],fe.call(this,n,new cw)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.pt=t,this.deStar=i)}function dv(){sf.apply(this);this.line=null;var n=arguments[0];this.line=n}function lw(){this.nodeMap=new ui}function eh(){this.edges=new li;this.dirEdges=new li;this.nodeMap=new lw}function gv(){eh.apply(this)}function aw(){this.graph=new gv;this.mergedLineStrings=null;this.factory=null;this.edgeStrings=null}function el(){this.edgeRing=null;this.next=null;this.label=-1;var n=arguments[0],t=arguments[1],i=arguments[2],r=arguments[3];iu.call(this,n,t,i,r)}function ny(){sf.apply(this);this.line=null;var n=arguments[0];this.line=n}function sl(){this.geometryFactory=new g;this.geomGraph=null;this.disconnectedRingcoord=null;var n=arguments[0];this.geomGraph=n}function ty(){}function hl(){var t,n;(this.edgeEnds=new u,1===arguments.length)?(t=arguments[0],hl.call(this,null,t)):2===arguments.length&&(n=(arguments[0],arguments[1]),rf.call(this,n.getEdge(),n.getCoordinate(),n.getDirectedCoordinate(),new ti(n.getLabel())),this.insert(n))}function iy(){ts.apply(this)}function ry(){var n=arguments[0],t=arguments[1];te.call(this,n,t)}function cl(){ns.apply(this)}function vw(){this.nodes=new gs(new cl)}function uy(){this.li=new si;this.geomGraph=null;this.nodeGraph=new vw;this.invalidPoint=null;var n=arguments[0];this.geomGraph=n}function yw(){this.graph=null;this.rings=new u;this.totalEnv=new p;this.index=null;this.nestedPt=null;var n=arguments[0];this.graph=n}function tt(){var t,i,n;(this.errorType=null,this.pt=null,1===arguments.length)?(t=arguments[0],tt.call(this,t,null)):2===arguments.length&&(i=arguments[0],n=arguments[1],this.errorType=i,null!==n&&(this.pt=n.copy()))}function ru(){this.parentGeometry=null;this.isSelfTouchingRingFormingHoleValid=!1;this.validErr=null;var n=arguments[0];this.parentGeometry=n}function du(){this.factory=null;this.deList=new u;this.lowestEdge=null;this.ring=null;this.ringPts=null;this.holes=null;this.shell=null;this._isHole=null;this._isProcessed=!1;this._isIncludedSet=!1;this._isIncluded=!1;var n=arguments[0];this.factory=n}function pw(){}function fi(){eh.apply(this);this.factory=null;var n=arguments[0];this.factory=n}function wr(){if(this.lineStringAdder=new fy(this),this.graph=null,this.dangles=new u,this.cutEdges=new u,this.invalidRingLines=new u,this.holeList=null,this.shellList=null,this.polyList=null,this.isCheckingRingsValid=!0,this.extractOnlyPolygonal=null,this.geomFactory=null,0===arguments.length)wr.call(this,!1);else if(1===arguments.length){var n=arguments[0];this.extractOnlyPolygonal=n}}function fy(){this.p=null;var n=arguments[0];this.p=n}function ey(){this.li=new si;this.ptLocator=new bo;this.arg=null;this.nodes=new gs(new cl);this.im=null;this.isolatedEdges=new u;this.invalidPoint=null;var n=arguments[0];this.arg=n}function ll(){this.rectEnv=null;var n=arguments[0];this.rectEnv=n.getEnvelopeInternal()}function ww(){this.li=new si;this.rectEnv=null;this.diagUp0=null;this.diagUp1=null;this.diagDown0=null;this.diagDown1=null;var n=arguments[0];this.rectEnv=n;this.diagUp0=new r(n.getMinX(),n.getMinY());this.diagUp1=new r(n.getMaxX(),n.getMaxY());this.diagDown0=new r(n.getMinX(),n.getMaxY());this.diagDown1=new r(n.getMaxX(),n.getMinY())}function eo(){this._isDone=!1}function oh(){this.rectangle=null;this.rectEnv=null;var n=arguments[0];this.rectangle=n;this.rectEnv=n.getEnvelopeInternal()}function oy(){eo.apply(this);this.rectEnv=null;this._intersects=!1;var n=arguments[0];this.rectEnv=n}function sy(){eo.apply(this);this.rectSeq=null;this.rectEnv=null;this._containsPoint=!1;var n=arguments[0];this.rectSeq=n.getExteriorRing().getCoordinateSequence();this.rectEnv=n.getEnvelopeInternal()}function hy(){eo.apply(this);this.rectEnv=null;this.rectIntersector=null;this.hasIntersection=!1;this.p0=new r;this.p1=new r;var n=arguments[0];this.rectEnv=n.getEnvelopeInternal();this.rectIntersector=new ww(this.rectEnv)}function ut(){var n,t;if(this._relate=null,2===arguments.length)n=arguments[0],t=arguments[1],ge.call(this,n,t),this._relate=new ey(this.arg);else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];ge.call(this,i,r,u);this._relate=new ey(this.arg)}}function uu(){this.geomFactory=null;this.skipEmpty=!1;this.inputGeoms=null;var n=arguments[0];this.geomFactory=uu.extractFactory(n);this.inputGeoms=n}function al(){this.pointGeom=null;this.otherGeom=null;this.geomFact=null;var t=arguments[0],n=arguments[1];this.pointGeom=t;this.otherGeom=n;this.geomFact=n.getFactory()}function oo(){this.sortIndex=-1;this.comps=null;var n=arguments[0],t=arguments[1];this.sortIndex=n;this.comps=t}function cu(){this.inputPolys=null;this.geomFactory=null;var n=arguments[0];this.inputPolys=n;null===this.inputPolys&&(this.inputPolys=new u)}function so(){var n,t,i,r;(this.polygons=new u,this.lines=new u,this.points=new u,this.geomFact=null,1===arguments.length)?l(arguments[0],yt)?(n=arguments[0],this.extract(n)):arguments[0]instanceof h&&(t=arguments[0],this.extract(t)):2===arguments.length&&(i=arguments[0],r=arguments[1],this.geomFact=r,this.extract(i))}function cy(){dr.CoordinateOperation.apply(this);this.targetPM=null;this.removeCollapsed=!0;var n=arguments[0],t=arguments[1];this.targetPM=n;this.removeCollapsed=t}function os(){this.targetPM=null;this.removeCollapsed=!0;this.changePrecisionModel=!1;this.isPointwise=!1;var n=arguments[0];this.targetPM=n}function vl(){this.pts=null;this.usePt=null;this.distanceTolerance=null;this.seg=new b;var n=arguments[0];this.pts=n}function sh(){this.inputGeom=null;this.distanceTolerance=null;this.isEnsureValidTopology=!0;var n=arguments[0];this.inputGeom=n}function yl(){ur.apply(this);this.isEnsureValidTopology=!0;this.distanceTolerance=null;var n=arguments[0],t=arguments[1];this.isEnsureValidTopology=n;this.distanceTolerance=t}function pl(){var n,t;if(this.parent=null,this.index=null,2===arguments.length)n=arguments[0],t=arguments[1],pl.call(this,n,t,null,-1);else if(4===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2],f=arguments[3];b.call(this,i,r);this.parent=u;this.index=f}}function ae(){var n,t,i;(this.parentLine=null,this.segs=null,this.resultSegs=new u,this.minimumSize=null,1===arguments.length)?(n=arguments[0],ae.call(this,n,2)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.parentLine=t,this.minimumSize=i,this.init())}function hh(){this.index=new uo}function bw(){this.querySeg=null;this.items=new u;var n=arguments[0];this.querySeg=n}function wl(){this.li=new si;this.inputIndex=new hh;this.outputIndex=new hh;this.line=null;this.linePts=null;this.distanceTolerance=0;var n=arguments[0],t=arguments[1];this.inputIndex=n;this.outputIndex=t}function kw(){this.inputIndex=new hh;this.outputIndex=new hh;this.distanceTolerance=0}function ss(){this.inputGeom=null;this.lineSimplifier=new kw;this.linestringMap=null;var n=arguments[0];this.inputGeom=n}function bl(){ur.apply(this);this.linestringMap=null;var n=arguments[0];this.linestringMap=n}function ly(){this.tps=null;var n=arguments[0];this.tps=n}function ch(){this.seg=null;this.segLen=null;this.splitPt=null;this.minimumLen=0;var n=arguments[0];this.seg=n;this.segLen=n.getLength()}function dw(){}function kl(){}function wt(){}function et(){var n,t,i;if(this.p=null,1===arguments.length)n=arguments[0],this.p=new r(n);else if(2===arguments.length)t=arguments[0],i=arguments[1],this.p=new r(t,i);else if(3===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2];this.p=new r(u,f,e)}}function ho(){this._isOnConstraint=null;this.constraint=null;var n=arguments[0];et.call(this,n)}function dt(){this._rot=null;this.vertex=null;this.next=null;this.data=null}function dl(){this.subdiv=null;this.isUsingTolerance=!1;var n=arguments[0];this.subdiv=n;this.isUsingTolerance=n.getTolerance()>0}function gw(){}function ay(){this.subdiv=null;this.lastEdge=null;var n=arguments[0];this.subdiv=n;this.init()}function lh(){var i,n,r,t;(this.seg=null,1===arguments.length)?"string"==typeof arguments[0]?(i=arguments[0],ci.call(this,i)):arguments[0]instanceof b&&(n=arguments[0],ci.call(this,"Locate failed to converge (at edge: "+n+").  Possible causes include invalid Subdivision topology or very close sites"),this.seg=new b(n)):2===arguments.length&&(r=arguments[0],t=arguments[1],ci.call(this,lh.msgWithSpatial(r,t)),this.seg=new b(t))}function ah(){}function fu(){this.visitedKey=0;this.quadEdges=new u;this.startingEdge=null;this.tolerance=null;this.edgeCoincidenceTolerance=null;this.frameVertex=new Array(3).fill(null);this.frameEnv=null;this.locator=null;this.seg=new b;this.triEdges=new Array(3).fill(null);var t=arguments[0],n=arguments[1];this.tolerance=n;this.edgeCoincidenceTolerance=n/fu.EDGE_COINCIDENCE_TOL_FACTOR;this.createFrame(t);this.startingEdge=this.initSubdiv();this.locator=new ay(this)}function vy(){}function yy(){this.triList=new u}function py(){this.triList=new u}function wy(){this.coordList=new ii;this.triCoords=new u}function hs(){var n,t;if(this.ls=null,this.data=null,2===arguments.length)n=arguments[0],t=arguments[1],this.ls=new b(n,t);else if(3===arguments.length){var i=arguments[0],u=arguments[1],f=arguments[2];this.ls=new b(i,u);this.data=f}else if(6===arguments.length){var e=arguments[0],o=arguments[1],s=arguments[2],h=arguments[3],c=arguments[4],l=arguments[5];hs.call(this,new r(e,o,s),new r(h,c,l))}else if(7===arguments.length){var a=arguments[0],v=arguments[1],y=arguments[2],p=arguments[3],w=arguments[4],k=arguments[5],d=arguments[6];hs.call(this,new r(a,v,y),new r(p,w,k),d)}}function gl(){}function by(){var n,t;if(this.p=null,this.data=null,this.left=null,this.right=null,this.count=null,2===arguments.length)n=arguments[0],t=arguments[1],this.p=new r(n),this.left=null,this.right=null,this.count=1,this.data=t;else if(3===arguments.length){var i=arguments[0],u=arguments[1],f=arguments[2];this.p=new r(i,u);this.left=null;this.right=null;this.count=1;this.data=f}}function cs(){if(this.root=null,this.numberOfNodes=null,this.tolerance=null,0===arguments.length)cs.call(this,0);else if(1===arguments.length){var n=arguments[0];this.tolerance=n}}function ky(){this.tolerance=null;this.matchNode=null;this.matchDist=0;this.p=null;var n=arguments[0],t=arguments[1];this.p=n;this.tolerance=t}function co(){this.initialVertices=null;this.segVertices=null;this.segments=new u;this.subdiv=null;this.incDel=null;this.convexHull=null;this.splitFinder=new kl;this.kdt=null;this.vertexFactory=null;this.computeAreaEnv=null;this.splitPt=null;this.tolerance=null;var t=arguments[0],n=arguments[1];this.initialVertices=new u(t);this.tolerance=n;this.kdt=new cs(n)}function ki(){this.siteCoords=null;this.tolerance=0;this.subdiv=null}function vh(){this.siteCoords=null;this.constraintLines=null;this.tolerance=0;this.subdiv=null;this.constraintVertexMap=new ui}function na(){this.siteCoords=null;this.tolerance=0;this.subdiv=null;this.clipEnv=null;this.diagramEnv=null}function dy(){}var yh,ta,hf,ia,lu,lf,ls,hb,gu,cb,lb,ab,vb,au,af,yb,pb,wb,bb,kb,db,gb,nk,tk,ik,rk,uk;"fill"in Array.prototype||Object.defineProperty(Array.prototype,"fill",{configurable:!0,value:function(n){var r;if(void 0===this||null===this)throw new TypeError(this+" is not an object");var u=Object(this),i=Math.max(Math.min(u.length,9007199254740991),0)||0,t=1 in arguments?parseInt(Number(arguments[1]),10)||0:0;for(t=t<0?Math.max(i+t,0):Math.min(t,i),r=(2 in arguments)&&void 0!==arguments[2]?parseInt(Number(arguments[2]),10)||0:i,r=r<0?Math.max(i+arguments[2],0):Math.min(r,i);t<r;)u[t]=n,++t;return u},writable:!0});Number.isFinite=Number.isFinite||function(n){return"number"==typeof n&&isFinite(n)};Number.isInteger=Number.isInteger||function(n){return"number"==typeof n&&isFinite(n)&&Math.floor(n)===n};Number.parseFloat=Number.parseFloat||parseFloat;Number.isNaN=Number.isNaN||function(n){return n!==n};Math.trunc=Math.trunc||function(n){return n<0?Math.ceil(n):Math.floor(n)};i(as.prototype,{interfaces_:function(){return[]},getClass:function(){return as}});as.equalsWithTolerance=function(n,t,i){return Math.abs(n-t)<=i};v.isNaN=function(n){return Number.isNaN(n)};v.doubleToLongBits=function(n){return n};v.longBitsToDouble=function(n){return n};v.isInfinite=function(n){return!Number.isFinite(n)};v.MAX_VALUE=Number.MAX_VALUE;ci.prototype=Object.create(Error.prototype);ci.prototype.constructor=Error;y(lo,ci);i(lo.prototype,{interfaces_:function(){return[]},getClass:function(){return lo}});i(c.prototype,{interfaces_:function(){return[]},getClass:function(){return c}});c.shouldNeverReachHere=function(){if(0===arguments.length)c.shouldNeverReachHere(null);else if(1===arguments.length){var n=arguments[0];throw new lo("Should never reach here"+(null!==n?": "+n:""));}};c.isTrue=function(){var t,i,n;if(1===arguments.length)t=arguments[0],c.isTrue(t,null);else if(2===arguments.length&&(i=arguments[0],n=arguments[1],!i))throw null===n?new lo:new lo(n);};c.equals=function(){var n,t;if(2===arguments.length)n=arguments[0],t=arguments[1],c.equals(n,t,null);else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];if(!r.equals(i))throw new lo("Expected "+i+" but encountered "+r+(null!==u?": "+u:""));}};i(r.prototype,{setOrdinate:function(n,t){switch(n){case r.X:this.x=t;break;case r.Y:this.y=t;break;case r.Z:this.z=t;break;default:throw new ct("Invalid ordinate index: "+n);}},equals2D:function(){var n,t,i;return 1===arguments.length?(n=arguments[0],this.x===n.x&&this.y===n.y):2===arguments.length?(t=arguments[0],i=arguments[1],!!as.equalsWithTolerance(this.x,t.x,i)&&!!as.equalsWithTolerance(this.y,t.y,i)):void 0},getOrdinate:function(n){switch(n){case r.X:return this.x;case r.Y:return this.y;case r.Z:return this.z}throw new ct("Invalid ordinate index: "+n);},equals3D:function(n){return this.x===n.x&&this.y===n.y&&(this.z===n.z||v.isNaN(this.z)&&v.isNaN(n.z))},equals:function(n){return n instanceof r&&this.equals2D(n)},equalInZ:function(n,t){return as.equalsWithTolerance(this.z,n.z,t)},compareTo:function(n){var t=n;return this.x<t.x?-1:this.x>t.x?1:this.y<t.y?-1:this.y>t.y?1:0},clone:function(){try{return null}catch(n){if(n instanceof CloneNotSupportedException)return c.shouldNeverReachHere("this shouldn't happen because this class is Cloneable"),null;throw n;}},copy:function(){return new r(this)},toString:function(){return"("+this.x+", "+this.y+", "+this.z+")"},distance3D:function(n){var t=this.x-n.x,i=this.y-n.y,r=this.z-n.z;return Math.sqrt(t*t+i*i+r*r)},distance:function(n){var t=this.x-n.x,i=this.y-n.y;return Math.sqrt(t*t+i*i)},hashCode:function(){var n=17;return n=37*n+r.hashCode(this.x),n=37*n+r.hashCode(this.y)},setCoordinate:function(n){this.x=n.x;this.y=n.y;this.z=n.z},interfaces_:function(){return[sr,ph,ir]},getClass:function(){return r}});r.hashCode=function(){if(1===arguments.length){var t=arguments[0],n=v.doubleToLongBits(t);return Math.trunc(n^n>>>32)}};i(ye.prototype,{compare:function(n,t){var i=n,r=t,f=ye.compare(i.x,r.x),u;return 0!==f?f:(u=ye.compare(i.y,r.y),0!==u?u:this.dimensionsToTest<=2?0:ye.compare(i.z,r.z))},interfaces_:function(){return[ve]},getClass:function(){return ye}});ye.compare=function(n,t){return n<t?-1:n>t?1:v.isNaN(n)?v.isNaN(t)?0:-1:v.isNaN(t)?1:0};r.DimensionalComparator=ye;r.serialVersionUID=0x5cbf2c235c7e5800;r.NULL_ORDINATE=v.NaN;r.X=0;r.Y=1;r.Z=2;wh.prototype.hasNext=function(){};wh.prototype.next=function(){};wh.prototype.remove=function(){};yt.prototype.add=function(){};yt.prototype.addAll=function(){};yt.prototype.isEmpty=function(){};yt.prototype.iterator=function(){};yt.prototype.size=function(){};yt.prototype.toArray=function(){};yt.prototype.remove=function(){};gy.prototype=new Error;gy.prototype.name="IndexOutOfBoundsException";ei.prototype=Object.create(yt.prototype);ei.prototype.constructor=ei;ei.prototype.get=function(){};ei.prototype.set=function(){};ei.prototype.isEmpty=function(){};vs.prototype=new Error;vs.prototype.name="NoSuchElementException";bh.prototype=new Error;bh.prototype.name="OperationNotSupported";u.prototype=Object.create(ei.prototype);u.prototype.constructor=u;u.prototype.ensureCapacity=function(){};u.prototype.interfaces_=function(){return[ei,yt]};u.prototype.add=function(n){return 1===arguments.length?this.array_.push(n):this.array_.splice(arguments[0],arguments[1]),!0};u.prototype.clear=function(){this.array_=[]};u.prototype.addAll=function(n){for(var t=n.iterator();t.hasNext();)this.add(t.next());return!0};u.prototype.set=function(n,t){var i=this.array_[n];return this.array_[n]=t,i};u.prototype.iterator=function(){return new yh(this)};u.prototype.get=function(n){if(n<0||n>=this.size())throw new gy;return this.array_[n]};u.prototype.isEmpty=function(){return 0===this.array_.length};u.prototype.size=function(){return this.array_.length};u.prototype.toArray=function(){for(var t=[],n=0,i=this.array_.length;n<i;n++)t.push(this.array_[n]);return t};u.prototype.remove=function(n){for(var i=!1,t=0,r=this.array_.length;t<r;t++)if(this.array_[t]===n){this.array_.splice(t,1);i=!0;break}return i};yh=function(n){this.arrayList_=n;this.position_=0};yh.prototype.next=function(){if(this.position_===this.arrayList_.size())throw new vs;return this.arrayList_.get(this.position_++)};yh.prototype.hasNext=function(){return this.position_<this.arrayList_.size()};yh.prototype.set=function(n){return this.arrayList_.set(this.position_-1,n)};yh.prototype.remove=function(){this.arrayList_.remove(this.arrayList_.get(this.position_))};y(ii,u);i(ii.prototype,{getCoordinate:function(n){return this.get(n)},addAll:function(){if(2===arguments.length){for(var i=arguments[0],r=arguments[1],n=!1,t=i.iterator();t.hasNext();)this.add(t.next(),r),n=!0;return n}return u.prototype.addAll.apply(this,arguments)},clone:function(){for(var t=u.prototype.clone.call(this),n=0;n<this.size();n++)t.add(n,this.get(n).copy());return t},toCoordinateArray:function(){return this.toArray(ii.coordArrayType)},add:function(){var s,h,c,f,l,a,v,y,o,w,b,n;if(1===arguments.length)s=arguments[0],u.prototype.add.call(this,s);else if(2===arguments.length){if(arguments[0]instanceof Array&&"boolean"==typeof arguments[1])return h=arguments[0],c=arguments[1],this.add(h,c,!0),!0;if(arguments[0]instanceof r&&"boolean"==typeof arguments[1]){if(f=arguments[0],l=arguments[1],!l&&this.size()>=1&&(a=this.get(this.size()-1),a.equals2D(f)))return null;u.prototype.add.call(this,f)}else if(arguments[0]instanceof Object&&"boolean"==typeof arguments[1])return v=arguments[0],y=arguments[1],this.add(v,y),!0}else if(3===arguments.length){if("boolean"==typeof arguments[2]&&arguments[0]instanceof Array&&"boolean"==typeof arguments[1]){var i=arguments[0],p=arguments[1],nt=arguments[2];if(nt)for(n=0;n<i.length;n++)this.add(i[n],p);else for(n=i.length-1;n>=0;n--)this.add(i[n],p);return!0}if("boolean"==typeof arguments[2]&&Number.isInteger(arguments[0])&&arguments[1]instanceof r){var t=arguments[0],e=arguments[1],tt=arguments[2];if(!tt&&(o=this.size(),o>0&&(t>0&&(w=this.get(t-1),w.equals2D(e))||t<o&&(b=this.get(t),b.equals2D(e)))))return null;u.prototype.add.call(this,t,e)}}else if(4===arguments.length){var it=arguments[0],rt=arguments[1],k=arguments[2],d=arguments[3],g=1;for(k>d&&(g=-1),n=k;n!==d;n+=g)this.add(it[n],rt);return!0}},closeRing:function(){this.size()>0&&this.add(new r(this.get(0)),!1)},interfaces_:function(){return[]},getClass:function(){return ii}});ii.coordArrayType=new Array(0).fill(null);i(p.prototype,{getArea:function(){return this.getWidth()*this.getHeight()},equals:function(n){if(!(n instanceof p))return!1;var t=n;return this.isNull()?t.isNull():this.maxx===t.getMaxX()&&this.maxy===t.getMaxY()&&this.minx===t.getMinX()&&this.miny===t.getMinY()},intersection:function(n){if(this.isNull()||n.isNull()||!this.intersects(n))return new p;var t=this.minx>n.minx?this.minx:n.minx,i=this.miny>n.miny?this.miny:n.miny;return new p(t,this.maxx<n.maxx?this.maxx:n.maxx,i,this.maxy<n.maxy?this.maxy:n.maxy)},isNull:function(){return this.maxx<this.minx},getMaxX:function(){return this.maxx},covers:function(){var t,n,i,u;if(1===arguments.length){if(arguments[0]instanceof r)return t=arguments[0],this.covers(t.x,t.y);if(arguments[0]instanceof p)return n=arguments[0],!this.isNull()&&!n.isNull()&&n.getMinX()>=this.minx&&n.getMaxX()<=this.maxx&&n.getMinY()>=this.miny&&n.getMaxY()<=this.maxy}else if(2===arguments.length)return i=arguments[0],u=arguments[1],!this.isNull()&&i>=this.minx&&i<=this.maxx&&u>=this.miny&&u<=this.maxy},intersects:function(){var n,t,i,u;if(1===arguments.length){if(arguments[0]instanceof p)return n=arguments[0],!this.isNull()&&!n.isNull()&&!(n.minx>this.maxx||n.maxx<this.minx||n.miny>this.maxy||n.maxy<this.miny);if(arguments[0]instanceof r)return t=arguments[0],this.intersects(t.x,t.y)}else if(2===arguments.length)return i=arguments[0],u=arguments[1],!this.isNull()&&!(i>this.maxx||i<this.minx||u>this.maxy||u<this.miny)},getMinY:function(){return this.miny},getMinX:function(){return this.minx},expandToInclude:function(){var u,n,t,i;if(1===arguments.length){if(arguments[0]instanceof r)u=arguments[0],this.expandToInclude(u.x,u.y);else if(arguments[0]instanceof p){if(n=arguments[0],n.isNull())return null;this.isNull()?(this.minx=n.getMinX(),this.maxx=n.getMaxX(),this.miny=n.getMinY(),this.maxy=n.getMaxY()):(n.minx<this.minx&&(this.minx=n.minx),n.maxx>this.maxx&&(this.maxx=n.maxx),n.miny<this.miny&&(this.miny=n.miny),n.maxy>this.maxy&&(this.maxy=n.maxy))}}else 2===arguments.length&&(t=arguments[0],i=arguments[1],this.isNull()?(this.minx=t,this.maxx=t,this.miny=i,this.maxy=i):(t<this.minx&&(this.minx=t),t>this.maxx&&(this.maxx=t),i<this.miny&&(this.miny=i),i>this.maxy&&(this.maxy=i)))},minExtent:function(){if(this.isNull())return 0;var n=this.getWidth(),t=this.getHeight();return n<t?n:t},getWidth:function(){return this.isNull()?0:this.maxx-this.minx},compareTo:function(n){var t=n;return this.isNull()?t.isNull()?0:-1:t.isNull()?1:this.minx<t.minx?-1:this.minx>t.minx?1:this.miny<t.miny?-1:this.miny>t.miny?1:this.maxx<t.maxx?-1:this.maxx>t.maxx?1:this.maxy<t.maxy?-1:this.maxy>t.maxy?1:0},translate:function(n,t){return this.isNull()?null:void this.init(this.getMinX()+n,this.getMaxX()+n,this.getMinY()+t,this.getMaxY()+t)},toString:function(){return"Env["+this.minx+" : "+this.maxx+", "+this.miny+" : "+this.maxy+"]"},setToNull:function(){this.minx=0;this.maxx=-1;this.miny=0;this.maxy=-1},getHeight:function(){return this.isNull()?0:this.maxy-this.miny},maxExtent:function(){if(this.isNull())return 0;var n=this.getWidth(),t=this.getHeight();return n>t?n:t},expandBy:function(){var n,t,i;if(1===arguments.length)n=arguments[0],this.expandBy(n,n);else if(2===arguments.length){if(t=arguments[0],i=arguments[1],this.isNull())return null;this.minx-=t;this.maxx+=t;this.miny-=i;this.maxy+=i;(this.minx>this.maxx||this.miny>this.maxy)&&this.setToNull()}},contains:function(){var n,t,i,u;if(1===arguments.length){if(arguments[0]instanceof p)return n=arguments[0],this.covers(n);if(arguments[0]instanceof r)return t=arguments[0],this.covers(t)}else if(2===arguments.length)return i=arguments[0],u=arguments[1],this.covers(i,u)},centre:function(){return this.isNull()?null:new r((this.getMinX()+this.getMaxX())/2,(this.getMinY()+this.getMaxY())/2)},init:function(){var n,t,i,u;if(0===arguments.length)this.setToNull();else if(1===arguments.length)arguments[0]instanceof r?(n=arguments[0],this.init(n.x,n.x,n.y,n.y)):arguments[0]instanceof p&&(t=arguments[0],this.minx=t.minx,this.maxx=t.maxx,this.miny=t.miny,this.maxy=t.maxy);else if(2===arguments.length)i=arguments[0],u=arguments[1],this.init(i.x,u.x,i.y,u.y);else if(4===arguments.length){var f=arguments[0],e=arguments[1],o=arguments[2],s=arguments[3];f<e?(this.minx=f,this.maxx=e):(this.minx=e,this.maxx=f);o<s?(this.miny=o,this.maxy=s):(this.miny=s,this.maxy=o)}},getMaxY:function(){return this.maxy},distance:function(n){var t,i;return this.intersects(n)?0:(t=0,this.maxx<n.minx?t=n.minx-this.maxx:this.minx>n.maxx&&(t=this.minx-n.maxx),i=0,this.maxy<n.miny?i=n.miny-this.maxy:this.miny>n.maxy&&(i=this.miny-n.maxy),0===t?i:0===i?t:Math.sqrt(t*t+i*i))},hashCode:function(){var n=17;return n=37*n+r.hashCode(this.minx),n=37*n+r.hashCode(this.maxx),n=37*n+r.hashCode(this.miny),n=37*n+r.hashCode(this.maxy)},interfaces_:function(){return[sr,ir]},getClass:function(){return p}});p.intersects=function(){if(3===arguments.length){var n=arguments[0],t=arguments[1],i=arguments[2];return i.x>=(n.x<t.x?n.x:t.x)&&i.x<=(n.x>t.x?n.x:t.x)&&i.y>=(n.y<t.y?n.y:t.y)&&i.y<=(n.y>t.y?n.y:t.y)}if(4===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2],e=arguments[3],o=Math.min(f.x,e.x),s=Math.max(f.x,e.x),h=Math.min(r.x,u.x),c=Math.max(r.x,u.x);return!(h>s||c<o||(o=Math.min(f.y,e.y),s=Math.max(f.y,e.y),h=Math.min(r.y,u.y),c=Math.max(r.y,u.y),h>s||c<o))}};p.serialVersionUID=0x51845cd552189800;y(vf,ra);i(vf.prototype,{interfaces_:function(){return[]},getClass:function(){return vf}});i(t.prototype,{interfaces_:function(){return[]},getClass:function(){return t}});t.toLocationSymbol=function(n){switch(n){case t.EXTERIOR:return"e";case t.BOUNDARY:return"b";case t.INTERIOR:return"i";case t.NONE:return"-"}throw new ct("Unknown location value: "+n);};t.INTERIOR=0;t.BOUNDARY=1;t.EXTERIOR=2;t.NONE=-1;i(br.prototype,{interfaces_:function(){return[]},getClass:function(){return br}});br.log10=function(n){var t=Math.log(n);return v.isInfinite(t)?t:v.isNaN(t)?t:t/br.LOG_10};br.min=function(n,t,i,r){var u=n;return t<u&&(u=t),i<u&&(u=i),r<u&&(u=r),u};br.clamp=function(){if("number"==typeof arguments[2]&&"number"==typeof arguments[0]&&"number"==typeof arguments[1]){var n=arguments[0],i=arguments[1],r=arguments[2];return n<i?i:n>r?r:n}if(Number.isInteger(arguments[2])&&Number.isInteger(arguments[0])&&Number.isInteger(arguments[1])){var t=arguments[0],u=arguments[1],f=arguments[2];return t<u?u:t>f?f:t}};br.wrap=function(n,t){return n<0?t- -n%t:n%t};br.max=function(){if(3===arguments.length){var e=arguments[0],t=arguments[1],i=arguments[2],n=e;return t>n&&(n=t),i>n&&(n=i),n}if(4===arguments.length){var o=arguments[0],r=arguments[1],u=arguments[2],f=arguments[3],n=o;return r>n&&(n=r),u>n&&(n=u),f>n&&(n=f),n}};br.average=function(n,t){return(n+t)/2};br.LOG_10=Math.log(10);eu.prototype.append=function(n){this.str+=n};eu.prototype.setCharAt=function(n,t){this.str=this.str.substr(0,n)+t+this.str.substr(n+1)};eu.prototype.toString=function(){return this.str};vu.prototype.intValue=function(){return this.value};vu.prototype.compareTo=function(n){return this.value<n?-1:this.value>n?1:0};vu.isNaN=function(n){return Number.isNaN(n)};kh.isWhitespace=function(n){return n<=32&&n>=0||127==n};kh.toUpperCase=function(n){return n.toUpperCase()};i(f.prototype,{le:function(n){return this.hi<n.hi||this.hi===n.hi&&this.lo<=n.lo},extractSignificantDigits:function(n,t){var i=this.abs(),r=f.magnitude(i.hi),v=f.TEN.pow(r),u,h,o,c,l;i=i.divide(v);i.gt(f.TEN)?(i=i.divide(f.TEN),r+=1):i.lt(f.ONE)&&(i=i.multiply(f.TEN),r-=1);for(var y=r+1,s=new eu,a=f.MAX_PRINT_DIGITS-1,e=0;e<=a;e++){if(n&&e===y&&s.append("."),u=Math.trunc(i.hi),u<0)break;if(h=!1,o=0,u>9?(h=!0,o="9"):o="0"+u,s.append(o),i=i.subtract(f.valueOf(u)).multiply(f.TEN),h&&i.selfAdd(f.TEN),c=!0,l=f.magnitude(i.hi),l<0&&Math.abs(l)>=a-e&&(c=!1),!c)break}return t[0]=r,s.toString()},sqr:function(){return this.multiply(this)},doubleValue:function(){return this.hi+this.lo},subtract:function(){var n,t;return arguments[0]instanceof f?(n=arguments[0],this.add(n.negate())):"number"==typeof arguments[0]?(t=arguments[0],this.add(-t)):void 0},equals:function(){if(1===arguments.length){var n=arguments[0];return this.hi===n.hi&&this.lo===n.lo}},isZero:function(){return 0===this.hi&&0===this.lo},selfSubtract:function(){var n,t;return arguments[0]instanceof f?(n=arguments[0],this.isNaN()?this:this.selfAdd(-n.hi,-n.lo)):"number"==typeof arguments[0]?(t=arguments[0],this.isNaN()?this:this.selfAdd(-t,0)):void 0},getSpecialNumberString:function(){return this.isZero()?"0.0":this.isNaN()?"NaN ":null},min:function(n){return this.le(n)?this:n},selfDivide:function(){var o,l;if(1===arguments.length){if(arguments[0]instanceof f)return o=arguments[0],this.selfDivide(o.hi,o.lo);if("number"==typeof arguments[0])return l=arguments[0],this.selfDivide(l,0)}else if(2===arguments.length){var i=arguments[0],a=arguments[1],r=null,s=null,u=null,h=null,n=null,e=null,c=null,t=null;return n=this.hi/i,e=f.SPLIT*n,r=e-n,t=f.SPLIT*i,r=e-r,s=n-r,u=t-i,c=n*i,u=t-u,h=i-u,t=r*u-c+r*h+s*u+s*h,e=(this.hi-c-t+this.lo-n*a)/i,t=n+e,this.hi=t,this.lo=n-t+e,this}},dump:function(){return"DD<"+this.hi+", "+this.lo+">"},divide:function(){var c;if(arguments[0]instanceof f){var i=arguments[0],r=null,o=null,u=null,s=null,n=null,e=null,h=null,t=null;return n=this.hi/i.hi,e=f.SPLIT*n,r=e-n,t=f.SPLIT*i.hi,r=e-r,o=n-r,u=t-i.hi,h=n*i.hi,u=t-u,s=i.hi-u,t=r*u-h+r*s+o*u+o*s,e=(this.hi-h-t+this.lo-n*i.lo)/i.hi,t=n+e,new f(t,n-t+e)}if("number"==typeof arguments[0])return c=arguments[0],v.isNaN(c)?f.createNaN():f.copy(this).selfDivide(c,0)},ge:function(n){return this.hi>n.hi||this.hi===n.hi&&this.lo>=n.lo},pow:function(n){if(0===n)return f.valueOf(1);var t=new f(this),i=f.valueOf(1),r=Math.abs(n);if(r>1)for(;r>0;)r%2==1&&i.selfMultiply(t),(r/=2)>0&&(t=t.sqr());else i=t;return n<0?i.reciprocal():i},ceil:function(){if(this.isNaN())return f.NaN;var n=Math.ceil(this.hi),t=0;return n===this.hi&&(t=Math.ceil(this.lo)),new f(n,t)},compareTo:function(n){var t=n;return this.hi<t.hi?-1:this.hi>t.hi?1:this.lo<t.lo?-1:this.lo>t.lo?1:0},rint:function(){return this.isNaN()?this:this.add(.5).floor()},setValue:function(){var n,t;return arguments[0]instanceof f?(n=arguments[0],this.init(n),this):"number"==typeof arguments[0]?(t=arguments[0],this.init(t),this):void 0},max:function(n){return this.ge(n)?this:n},sqrt:function(){if(this.isZero())return f.valueOf(0);if(this.isNegative())return f.NaN;var n=1/Math.sqrt(this.hi),i=this.hi*n,t=f.valueOf(i),r=this.subtract(t.sqr()),u=r.hi*.5*n;return t.add(u)},selfAdd:function(){var h,c,y;if(1===arguments.length){if(arguments[0]instanceof f)return h=arguments[0],this.selfAdd(h.hi,h.lo);if("number"==typeof arguments[0]){var l=arguments[0],i=null,e=null,t=null,r=null,n=null,u=null;return t=this.hi+l,n=t-this.hi,r=t-n,r=l-n+(this.hi-r),u=r+this.lo,i=t+u,e=u+(t-i),this.hi=i+e,this.lo=e+(i-this.hi),this}}else if(2===arguments.length){var a=arguments[0],v=arguments[1],i=null,e=null,o=null,s=null,t=null,r=null,n=null,u=null;return t=this.hi+a,o=this.lo+v,n=t-this.hi,u=o-this.lo,r=t-n,s=o-u,r=a-n+(this.hi-r),s=v-u+(this.lo-s),n=r+o,i=t+n,e=n+(t-i),n=s+e,c=i+n,y=n+(i-c),this.hi=c,this.lo=y,this}},selfMultiply:function(){var e,c,h,l;if(1===arguments.length){if(arguments[0]instanceof f)return e=arguments[0],this.selfMultiply(e.hi,e.lo);if("number"==typeof arguments[0])return c=arguments[0],this.selfMultiply(c,0)}else if(2===arguments.length){var u=arguments[0],a=arguments[1],n=null,o=null,i=null,s=null,t=null,r=null;return t=f.SPLIT*this.hi,n=t-this.hi,r=f.SPLIT*u,n=t-n,o=this.hi-n,i=r-u,t=this.hi*u,i=r-i,s=u-i,r=n*i-t+n*s+o*i+o*s+(this.hi*a+this.lo*u),h=t+r,n=t-h,l=r+n,this.hi=h,this.lo=l,this}},selfSqr:function(){return this.selfMultiply(this)},floor:function(){if(this.isNaN())return f.NaN;var n=Math.floor(this.hi),t=0;return n===this.hi&&(t=Math.floor(this.lo)),new f(n,t)},negate:function(){return this.isNaN()?this:new f(-this.hi,-this.lo)},clone:function(){try{return null}catch(n){if(n instanceof CloneNotSupportedException)return null;throw n;}},multiply:function(){var n,t;return arguments[0]instanceof f?(n=arguments[0],n.isNaN()?f.createNaN():f.copy(this).selfMultiply(n)):"number"==typeof arguments[0]?(t=arguments[0],v.isNaN(t)?f.createNaN():f.copy(this).selfMultiply(t,0)):void 0},isNaN:function(){return v.isNaN(this.hi)},intValue:function(){return Math.trunc(this.hi)},toString:function(){var n=f.magnitude(this.hi);return n>=-3&&n<=20?this.toStandardNotation():this.toSciNotation()},toStandardNotation:function(){var r=this.getSpecialNumberString(),e,o;if(null!==r)return r;var u=new Array(1).fill(null),n=this.extractSignificantDigits(!0,u),i=u[0]+1,t=n;return"."===n.charAt(0)?t="0"+n:i<0?t="0."+f.stringOfChar("0",-i)+n:-1===n.indexOf(".")&&(e=i-n.length,o=f.stringOfChar("0",e),t=n+o+".0"),this.isNegative()?"-"+t:t},reciprocal:function(){var t=null,e=null,i=null,o=null,n=null,r=null,s=null,u=null,h;return n=1/this.hi,r=f.SPLIT*n,t=r-n,u=f.SPLIT*this.hi,t=r-t,e=n-t,i=u-this.hi,s=n*this.hi,i=u-i,o=this.hi-i,u=t*i-s+t*o+e*i+e*o,r=(1-s-u-n*this.lo)/this.hi,h=n+r,new f(h,n-h+r)},toSciNotation:function(){var t,i,r;if(this.isZero())return f.SCI_NOT_ZERO;if(t=this.getSpecialNumberString(),null!==t)return t;var u=new Array(1).fill(null),n=this.extractSignificantDigits(!1,u),e=f.SCI_NOT_EXPONENT_CHAR+u[0];if("0"===n.charAt(0))throw new IllegalStateException("Found leading zero: "+n);return i="",n.length>1&&(i=n.substring(1)),r=n.charAt(0)+"."+i,this.isNegative()?"-"+r+e:r+e},abs:function(){return this.isNaN()?f.NaN:this.isNegative()?this.negate():new f(this)},isPositive:function(){return this.hi>0||0===this.hi&&this.lo>0},lt:function(n){return this.hi<n.hi||this.hi===n.hi&&this.lo<n.lo},add:function(){var n,t;return arguments[0]instanceof f?(n=arguments[0],f.copy(this).selfAdd(n)):"number"==typeof arguments[0]?(t=arguments[0],f.copy(this).selfAdd(t)):void 0},init:function(){var t,n,i,r;1===arguments.length?"number"==typeof arguments[0]?(t=arguments[0],this.hi=t,this.lo=0):arguments[0]instanceof f&&(n=arguments[0],this.hi=n.hi,this.lo=n.lo):2===arguments.length&&(i=arguments[0],r=arguments[1],this.hi=i,this.lo=r)},gt:function(n){return this.hi>n.hi||this.hi===n.hi&&this.lo>n.lo},isNegative:function(){return this.hi<0||0===this.hi&&this.lo<0},trunc:function(){return this.isNaN()?f.NaN:this.isPositive()?this.floor():this.ceil()},signum:function(){return this.hi>0?1:this.hi<0?-1:this.lo>0?1:this.lo<0?-1:0},interfaces_:function(){return[ir,sr,ph]},getClass:function(){return f}});f.sqr=function(n){return f.valueOf(n).selfMultiply(n)};f.valueOf=function(){if("string"==typeof arguments[0]){var n=arguments[0];return f.parse(n)}if("number"==typeof arguments[0])return new f(arguments[0])};f.sqrt=function(n){return f.valueOf(n).sqrt()};f.parse=function(n){for(var c,s,i,p,a,u,e,o,t=0,h=n.length;kh.isWhitespace(n.charAt(t));)t++;c=!1;t<h&&(s=n.charAt(t),"-"!==s&&"+"!==s||(t++,"-"===s&&(c=!0)));for(var r=new f,l=0,v=0,y=0;!(t>=h);)if(i=n.charAt(t),t++,kh.isDigit(i))p=i-"0",r.selfMultiply(f.TEN),r.selfAdd(p),l++;else{if("."!==i){if("e"===i||"E"===i){a=n.substring(t);try{y=vu.parseInt(a)}catch(t){throw t instanceof NumberFormatException?new NumberFormatException("Invalid exponent "+a+" in string "+n):t;}break}throw new NumberFormatException("Unexpected character '"+i+"' at position "+t+" in string "+n);}v=l}return u=r,e=l-v-y,0===e?u=r:e>0?(o=f.TEN.pow(e),u=r.divide(o)):e<0&&(o=f.TEN.pow(-e),u=r.multiply(o)),c?u.negate():u};f.createNaN=function(){return new f(v.NaN,v.NaN)};f.copy=function(n){return new f(n)};f.magnitude=function(n){var i=Math.abs(n),r=Math.log(i)/Math.log(10),t=Math.trunc(Math.floor(r));return 10*Math.pow(10,t)<=i&&(t+=1),t};f.stringOfChar=function(n,t){for(var i=new eu,r=0;r<t;r++)i.append(n);return i.toString()};f.PI=new f(3.1415926535897931,12246467991473532e-32);f.TWO_PI=new f(6.2831853071795862,24492935982947064e-32);f.PI_2=new f(1.5707963267948966,6123233995736766e-32);f.E=new f(2.7182818284590451,14456468917292502e-32);f.NaN=new f(v.NaN,v.NaN);f.EPS=123259516440783e-46;f.SPLIT=134217729;f.MAX_PRINT_DIGITS=32;f.TEN=f.valueOf(10);f.ONE=f.valueOf(1);f.SCI_NOT_EXPONENT_CHAR="E";f.SCI_NOT_ZERO="0.0E0";i(rr.prototype,{interfaces_:function(){return[]},getClass:function(){return rr}});rr.orientationIndex=function(n,t,i){var r=rr.orientationIndexFilter(n,t,i);if(r<=1)return r;var u=f.valueOf(t.x).selfAdd(-n.x),e=f.valueOf(t.y).selfAdd(-n.y),o=f.valueOf(i.x).selfAdd(-t.x),s=f.valueOf(i.y).selfAdd(-t.y);return u.selfMultiply(s).selfSubtract(e.selfMultiply(o)).signum()};rr.signOfDet2x2=function(n,t,i,r){return n.multiply(r).selfSubtract(t.multiply(i)).signum()};rr.intersection=function(n,t,i,u){var o=f.valueOf(u.y).selfSubtract(i.y).selfMultiply(f.valueOf(t.x).selfSubtract(n.x)),s=f.valueOf(u.x).selfSubtract(i.x).selfMultiply(f.valueOf(t.y).selfSubtract(n.y)),e=o.subtract(s),h=f.valueOf(u.x).selfSubtract(i.x).selfMultiply(f.valueOf(n.y).selfSubtract(i.y)),c=f.valueOf(u.y).selfSubtract(i.y).selfMultiply(f.valueOf(n.x).selfSubtract(i.x)),l=h.subtract(c),a=l.selfDivide(e).doubleValue(),v=f.valueOf(n.x).selfAdd(f.valueOf(t.x).selfSubtract(n.x).selfMultiply(a)).doubleValue(),y=f.valueOf(t.x).selfSubtract(n.x).selfMultiply(f.valueOf(n.y).selfSubtract(i.y)),p=f.valueOf(t.y).selfSubtract(n.y).selfMultiply(f.valueOf(n.x).selfSubtract(i.x)),w=y.subtract(p),b=w.selfDivide(e).doubleValue();return new r(v,f.valueOf(i.y).selfAdd(f.valueOf(u.y).selfSubtract(i.y).selfMultiply(b)).doubleValue())};rr.orientationIndexFilter=function(n,t,i){var e=null,r=(n.x-i.x)*(t.y-i.y),u=(n.y-i.y)*(t.x-i.x),f=r-u,o;if(r>0){if(u<=0)return rr.signum(f);e=r+u}else{if(!(r<0)||u>=0)return rr.signum(f);e=-r-u}return o=rr.DP_SAFE_EPSILON*e,f>=o||-f>=o?rr.signum(f):2};rr.signum=function(n){return n>0?1:n<0?-1:0};rr.DP_SAFE_EPSILON=1e-15;i(lt.prototype,{setOrdinate:function(){},size:function(){},getOrdinate:function(){},getCoordinate:function(){1===arguments.length?arguments[0]:2===arguments.length&&(arguments[0],arguments[1])},getCoordinateCopy:function(){},getDimension:function(){},getX:function(){},clone:function(){},expandEnvelope:function(){},copy:function(){},getY:function(){},toCoordinateArray:function(){},interfaces_:function(){return[ph]},getClass:function(){return lt}});lt.X=0;lt.Y=1;lt.Z=2;lt.M=3;pt.arraycopy=function(n,t,i,r,u){for(var e=0,f=t;f<t+u;f++)i[r+e]=n[f],e++};pt.getProperty=function(n){return{"line.separator":"\n"}[n]};i(hr.prototype,{getY:function(){var n=this.y/this.w;if(v.isNaN(n)||v.isInfinite(n))throw new vf;return n},getX:function(){var n=this.x/this.w;if(v.isNaN(n)||v.isInfinite(n))throw new vf;return n},getCoordinate:function(){var n=new r;return n.x=this.getX(),n.y=this.getY(),n},interfaces_:function(){return[]},getClass:function(){return hr}});hr.intersection=function(n,t,i,u){var o=n.y-t.y,s=t.x-n.x,h=n.x*t.y-t.x*n.y,c=i.y-u.y,l=u.x-i.x,a=i.x*u.y-u.x*i.y,p=s*a-l*h,w=c*h-o*a,y=o*l-c*s,f=p/y,e=w/y;if(v.isNaN(f)||v.isInfinite(f)||v.isNaN(e)||v.isInfinite(e))throw new vf;return new r(f,e)};i(ua.prototype,{create:function(){1===arguments.length?arguments[0]instanceof Array?arguments[0]:l(arguments[0],lt)&&arguments[0]:2===arguments.length&&(arguments[0],arguments[1])},interfaces_:function(){return[]},getClass:function(){return ua}});i(yu.prototype,{filter:function(){},interfaces_:function(){return[]},getClass:function(){return yu}});i(h.prototype,{isGeometryCollection:function(){return this.getSortIndex()===h.SORTINDEX_GEOMETRYCOLLECTION},getFactory:function(){return this.factory},getGeometryN:function(){return this},getArea:function(){return 0},isRectangle:function(){return!1},equals:function(){var n,t,i;if(1===arguments.length){if(arguments[0]instanceof h)return n=arguments[0],null!==n&&this.equalsTopo(n);if(arguments[0]instanceof Object)return(t=arguments[0],!(t instanceof h))?!1:(i=t,this.equalsExact(i))}},equalsExact:function(n){return this===n||this.equalsExact(n,0)},geometryChanged:function(){this.apply(h.geometryChangedFilter)},geometryChangedAction:function(){this.envelope=null},equalsNorm:function(n){return null!==n&&this.norm().equalsExact(n.norm())},getLength:function(){return 0},getNumGeometries:function(){return 1},compareTo:function(){var t,n;if(1===arguments.length)return t=arguments[0],n=t,this.getSortIndex()!==n.getSortIndex()?this.getSortIndex()-n.getSortIndex():this.isEmpty()&&n.isEmpty()?0:this.isEmpty()?-1:n.isEmpty()?1:this.compareToSameClass(t);if(2===arguments.length){var i=arguments[0],r=arguments[1],n=i;return this.getSortIndex()!==n.getSortIndex()?this.getSortIndex()-n.getSortIndex():this.isEmpty()&&n.isEmpty()?0:this.isEmpty()?-1:n.isEmpty()?1:this.compareToSameClass(i,r)}},getUserData:function(){return this.userData},getSRID:function(){return this.SRID},getEnvelope:function(){return this.getFactory().toGeometry(this.getEnvelopeInternal())},checkNotGeometryCollection:function(n){if(n.getSortIndex()===h.SORTINDEX_GEOMETRYCOLLECTION)throw new ct("This method does not support GeometryCollection arguments");},equal:function(n,t,i){return 0===i?n.equals(t):n.distance(t)<=i},norm:function(){var n=this.copy();return n.normalize(),n},getPrecisionModel:function(){return this.factory.getPrecisionModel()},getEnvelopeInternal:function(){return null===this.envelope&&(this.envelope=this.computeEnvelopeInternal()),new p(this.envelope)},setSRID:function(n){this.SRID=n},setUserData:function(n){this.userData=n},compare:function(n,t){for(var i=n.iterator(),r=t.iterator();i.hasNext()&&r.hasNext();){var f=i.next(),e=r.next(),u=f.compareTo(e);if(0!==u)return u}return i.hasNext()?1:r.hasNext()?-1:0},hashCode:function(){return this.getEnvelopeInternal().hashCode()},isGeometryCollectionOrDerived:function(){return this.getSortIndex()===h.SORTINDEX_GEOMETRYCOLLECTION||this.getSortIndex()===h.SORTINDEX_MULTIPOINT||this.getSortIndex()===h.SORTINDEX_MULTILINESTRING||this.getSortIndex()===h.SORTINDEX_MULTIPOLYGON},interfaces_:function(){return[ph,sr,ir]},getClass:function(){return h}});h.hasNonEmptyElements=function(n){for(var t=0;t<n.length;t++)if(!n[t].isEmpty())return!0;return!1};h.hasNullElements=function(n){for(var t=0;t<n.length;t++)if(null===n[t])return!0;return!1};h.serialVersionUID=0x799ea46522854c00;h.SORTINDEX_POINT=0;h.SORTINDEX_MULTIPOINT=1;h.SORTINDEX_LINESTRING=2;h.SORTINDEX_LINEARRING=3;h.SORTINDEX_MULTILINESTRING=4;h.SORTINDEX_POLYGON=5;h.SORTINDEX_MULTIPOLYGON=6;h.SORTINDEX_GEOMETRYCOLLECTION=7;h.geometryChangedFilter={interfaces_:function(){return[yu]},filter:function(n){n.geometryChangedAction()}};i(pe.prototype,{filter:function(){},interfaces_:function(){return[]},getClass:function(){return pe}});i(oi.prototype,{isInBoundary:function(){},interfaces_:function(){return[]},getClass:function(){return oi}});i(fa.prototype,{isInBoundary:function(n){return n%2==1},interfaces_:function(){return[oi]},getClass:function(){return fa}});i(ea.prototype,{isInBoundary:function(n){return n>0},interfaces_:function(){return[oi]},getClass:function(){return ea}});i(oa.prototype,{isInBoundary:function(n){return n>1},interfaces_:function(){return[oi]},getClass:function(){return oa}});i(sa.prototype,{isInBoundary:function(n){return 1===n},interfaces_:function(){return[oi]},getClass:function(){return sa}});oi.Mod2BoundaryNodeRule=fa;oi.EndPointBoundaryNodeRule=ea;oi.MultiValentEndPointBoundaryNodeRule=oa;oi.MonoValentEndPointBoundaryNodeRule=sa;oi.MOD2_BOUNDARY_RULE=new fa;oi.ENDPOINT_BOUNDARY_RULE=new ea;oi.MULTIVALENT_ENDPOINT_BOUNDARY_RULE=new oa;oi.MONOVALENT_ENDPOINT_BOUNDARY_RULE=new sa;oi.OGC_SFS_BOUNDARY_RULE=oi.MOD2_BOUNDARY_RULE;i(w.prototype,{interfaces_:function(){return[]},getClass:function(){return w}});w.isRing=function(n){return!(n.length<4||!n[0].equals2D(n[n.length-1]))};w.ptNotInList=function(n,t){for(var r,i=0;i<n.length;i++)if(r=n[i],w.indexOf(r,t)<0)return r;return null};w.scroll=function(n,t){var i=w.indexOf(t,n),r;if(i<0)return null;r=new Array(n.length).fill(null);pt.arraycopy(n,i,r,0,n.length-i);pt.arraycopy(n,0,r,n.length-i,i);pt.arraycopy(r,0,n,0,n.length)};w.equals=function(){var t,i,n;if(2===arguments.length){if(t=arguments[0],i=arguments[1],t===i)return!0;if(null===t||null===i||t.length!==i.length)return!1;for(n=0;n<t.length;n++)if(!t[n].equals(i[n]))return!1;return!0}if(3===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2];if(r===u)return!0;if(null===r||null===u||r.length!==u.length)return!1;for(n=0;n<r.length;n++)if(0!==f.compare(r[n],u[n]))return!1;return!0}};w.intersection=function(n,t){for(var r=new ii,i=0;i<n.length;i++)t.intersects(n[i])&&r.add(n[i],!0);return r.toCoordinateArray()};w.hasRepeatedPoints=function(n){for(var t=1;t<n.length;t++)if(n[t-1].equals(n[t]))return!0;return!1};w.removeRepeatedPoints=function(n){return w.hasRepeatedPoints(n)?new ii(n,!1).toCoordinateArray():n};w.reverse=function(n){for(var r,i=n.length-1,u=Math.trunc(i/2),t=0;t<=u;t++)r=n[t],n[t]=n[i-t],n[i-t]=r};w.removeNull=function(n){for(var r,u,i=0,t=0;t<n.length;t++)null!==n[t]&&i++;if(r=new Array(i).fill(null),0===i)return r;for(u=0,t=0;t<n.length;t++)null!==n[t]&&(r[u++]=n[t]);return r};w.copyDeep=function(){if(1===arguments.length){for(var t=arguments[0],i=new Array(t.length).fill(null),n=0;n<t.length;n++)i[n]=new r(t[n]);return i}if(5===arguments.length)for(var u=arguments[0],f=arguments[1],e=arguments[2],o=arguments[3],s=arguments[4],n=0;n<s;n++)e[o+n]=new r(u[f+n])};w.isEqualReversed=function(n,t){for(var r,u,i=0;i<n.length;i++)if(r=n[i],u=t[n.length-i-1],0!==r.compareTo(u))return!1;return!0};w.envelope=function(n){for(var i=new p,t=0;t<n.length;t++)i.expandToInclude(n[t]);return i};w.toCoordinateArray=function(n){return n.toArray(w.coordArrayType)};w.atLeastNCoordinatesOrNothing=function(n,t){return t.length>=n?t:[]};w.indexOf=function(n,t){for(var i=0;i<t.length;i++)if(n.equals(t[i]))return i;return-1};w.increasingDirection=function(n){for(var r,i,t=0;t<Math.trunc(n.length/2);t++)if(r=n.length-1-t,i=n[t].compareTo(n[r]),0!==i)return i;return 1};w.compare=function(n,t){for(var r,i=0;i<n.length&&i<t.length;){if(r=n[i].compareTo(t[i]),0!==r)return r;i++}return i<t.length?-1:i<n.length?1:0};w.minCoordinate=function(n){for(var t=null,i=0;i<n.length;i++)(null===t||t.compareTo(n[i])>0)&&(t=n[i]);return t};w.extract=function(n,t,i){var r,u,e,f;if(t=br.clamp(t,0,n.length),i=br.clamp(i,-1,n.length),r=i-t+1,i<0&&(r=0),t>=n.length&&(r=0),i<t&&(r=0),u=new Array(r).fill(null),0===r)return u;for(e=0,f=t;f<=i;f++)u[e++]=n[f];return u};i(np.prototype,{compare:function(n,t){var i=n,r=t;return w.compare(i,r)},interfaces_:function(){return[ve]},getClass:function(){return np}});i(tp.prototype,{compare:function(n,t){var i=n,r=t,u;return i.length<r.length?-1:i.length>r.length?1:0===i.length?0:(u=w.compare(i,r),w.isEqualReversed(i,r)?0:u)},OLDcompare:function(n,t){var i=n,r=t,u;if(i.length<r.length)return-1;if(i.length>r.length)return 1;if(0===i.length)return 0;for(var f=w.increasingDirection(i),e=w.increasingDirection(r),o=f>0?0:i.length-1,s=e>0?0:i.length-1,h=0;h<i.length;h++){if(u=i[o].compareTo(r[s]),0!==u)return u;o+=f;s+=e}return 0},interfaces_:function(){return[ve]},getClass:function(){return tp}});w.ForwardComparator=np;w.BidirectionalComparator=tp;w.coordArrayType=new Array(0).fill(null);ao.prototype.get=function(){};ao.prototype.put=function(){};ao.prototype.size=function(){};ao.prototype.values=function(){};ao.prototype.entrySet=function(){};nb.prototype=new ao;ha.prototype=new yt;ha.prototype.contains=function(){};li.prototype=new ha;li.prototype.contains=function(n){for(var t=0,i=this.array_.length;t<i;t++)if(this.array_[t]===n)return!0;return!1};li.prototype.add=function(n){return!this.contains(n)&&(this.array_.push(n),!0)};li.prototype.addAll=function(n){for(var t=n.iterator();t.hasNext();)this.add(t.next());return!0};li.prototype.remove=function(){throw new javascript.util.OperationNotSupported;};li.prototype.size=function(){return this.array_.length};li.prototype.isEmpty=function(){return 0===this.array_.length};li.prototype.toArray=function(){for(var t=[],n=0,i=this.array_.length;n<i;n++)t.push(this.array_[n]);return t};li.prototype.iterator=function(){return new ta(this)};ta=function(n){this.hashSet_=n;this.position_=0};ta.prototype.next=function(){if(this.position_===this.hashSet_.size())throw new vs;return this.hashSet_.array_[this.position_++]};ta.prototype.hasNext=function(){return this.position_<this.hashSet_.size()};ta.prototype.remove=function(){throw new bh;};hf=0;ui.prototype=new nb;ui.prototype.get=function(n){for(var i,t=this.root_;null!==t;)if(i=n.compareTo(t.key),i<0)t=t.left;else{if(!(i>0))return t.value;t=t.right}return null};ui.prototype.put=function(n,t){var r,f,i,e,u;if(null===this.root_)return this.root_={key:n,value:t,left:null,right:null,parent:null,color:hf,getValue:function(){return this.value},getKey:function(){return this.key}},this.size_=1,null;i=this.root_;do if(r=i,(f=n.compareTo(i.key))<0)i=i.left;else{if(!(f>0))return e=i.value,i.value=t,e;i=i.right}while(null!==i);return u={key:n,left:null,right:null,value:t,parent:r,color:hf,getValue:function(){return this.value},getKey:function(){return this.key}},f<0?r.left=u:r.right=u,this.fixAfterInsertion(u),this.size_++,null};ui.prototype.fixAfterInsertion=function(n){var t;for(n.color=1;null!=n&&n!=this.root_&&1==n.parent.color;)at(n)==ip(at(at(n)))?(t=ib(at(at(n))),1==tb(t)?(yf(at(n),hf),yf(t,hf),yf(at(at(n)),1),n=at(at(n))):(n==ib(at(n))&&(n=at(n),this.rotateLeft(n)),yf(at(n),hf),yf(at(at(n)),1),this.rotateRight(at(at(n))))):(t=ip(at(at(n))),1==tb(t)?(yf(at(n),hf),yf(t,hf),yf(at(at(n)),1),n=at(at(n))):(n==ip(at(n))&&(n=at(n),this.rotateRight(n)),yf(at(n),hf),yf(at(at(n)),1),this.rotateLeft(at(at(n)))));this.root_.color=hf};ui.prototype.values=function(){var t=new u,n=this.getFirstEntry();if(null!==n)for(t.add(n.value);null!==(n=ui.successor(n));)t.add(n.value);return t};ui.prototype.entrySet=function(){var t=new li,n=this.getFirstEntry();if(null!==n)for(t.add(n);null!==(n=ui.successor(n));)t.add(n);return t};ui.prototype.rotateLeft=function(n){if(null!=n){var t=n.right;n.right=t.left;null!=t.left&&(t.left.parent=n);t.parent=n.parent;null==n.parent?this.root_=t:n.parent.left==n?n.parent.left=t:n.parent.right=t;t.left=n;n.parent=t}};ui.prototype.rotateRight=function(n){if(null!=n){var t=n.left;n.left=t.right;null!=t.right&&(t.right.parent=n);t.parent=n.parent;null==n.parent?this.root_=t:n.parent.right==n?n.parent.right=t:n.parent.left=t;t.right=n;n.parent=t}};ui.prototype.getFirstEntry=function(){var n=this.root_;if(null!=n)for(;null!=n.left;)n=n.left;return n};ui.successor=function(n){var t,i;if(null===n)return null;if(null!==n.right){for(t=n.right;null!==t.left;)t=t.left;return t}for(t=n.parent,i=n;null!==t&&i===t.right;)i=t,t=t.parent;return t};ui.prototype.size=function(){return this.size_};i(ca.prototype,{interfaces_:function(){return[]},getClass:function(){return ca}});rb.prototype=new ha;di.prototype=new rb;di.prototype.contains=function(n){for(var t=0,i=this.array_.length;t<i;t++)if(0===this.array_[t].compareTo(n))return!0;return!1};di.prototype.add=function(n){if(this.contains(n))return!1;for(var t=0,i=this.array_.length;t<i;t++)if(1===this.array_[t].compareTo(n))return this.array_.splice(t,0,n),!0;return this.array_.push(n),!0};di.prototype.addAll=function(n){for(var t=n.iterator();t.hasNext();)this.add(t.next());return!0};di.prototype.remove=function(){throw new bh;};di.prototype.size=function(){return this.array_.length};di.prototype.isEmpty=function(){return 0===this.array_.length};di.prototype.toArray=function(){for(var t=[],n=0,i=this.array_.length;n<i;n++)t.push(this.array_[n]);return t};di.prototype.iterator=function(){return new ia(this)};ia=function(n){this.treeSet_=n;this.position_=0};ia.prototype.next=function(){if(this.position_===this.treeSet_.size())throw new vs;return this.treeSet_.array_[this.position_++]};ia.prototype.hasNext=function(){return this.position_<this.treeSet_.size()};ia.prototype.remove=function(){throw new bh;};pf.sort=function(){var t,i,f,r,n=arguments[0],u;if(1===arguments.length)return r=function(n,t){return n.compareTo(t)},void n.sort(r);if(2===arguments.length)f=arguments[1],r=function(n,t){return f.compare(n,t)},n.sort(r);else{if(3===arguments.length){for(i=n.slice(arguments[1],arguments[2]),i.sort(),u=n.slice(0,arguments[1]).concat(i,n.slice(arguments[2],n.length)),n.splice(0,n.length),t=0;t<u.length;t++)n.push(u[t]);return}if(4===arguments.length){for(i=n.slice(arguments[1],arguments[2]),f=arguments[3],r=function(n,t){return f.compare(n,t)},i.sort(r),u=n.slice(0,arguments[1]).concat(i,n.slice(arguments[2],n.length)),n.splice(0,n.length),t=0;t<u.length;t++)n.push(u[t]);return}}};pf.asList=function(n){for(var i=new u,t=0,r=n.length;t<r;t++)i.add(n[t]);return i};i(e.prototype,{interfaces_:function(){return[]},getClass:function(){return e}});e.toDimensionSymbol=function(n){switch(n){case e.FALSE:return e.SYM_FALSE;case e.TRUE:return e.SYM_TRUE;case e.DONTCARE:return e.SYM_DONTCARE;case e.P:return e.SYM_P;case e.L:return e.SYM_L;case e.A:return e.SYM_A}throw new ct("Unknown dimension value: "+n);};e.toDimensionValue=function(n){switch(kh.toUpperCase(n)){case e.SYM_FALSE:return e.FALSE;case e.SYM_TRUE:return e.TRUE;case e.SYM_DONTCARE:return e.DONTCARE;case e.SYM_P:return e.P;case e.SYM_L:return e.L;case e.SYM_A:return e.A}throw new ct("Unknown dimension symbol: "+n);};e.P=0;e.L=1;e.A=2;e.FALSE=-1;e.TRUE=-2;e.DONTCARE=-3;e.SYM_FALSE="F";e.SYM_TRUE="T";e.SYM_DONTCARE="*";e.SYM_P="0";e.SYM_L="1";e.SYM_A="2";i(wf.prototype,{filter:function(){},interfaces_:function(){return[]},getClass:function(){return wf}});i(vo.prototype,{filter:function(){},isDone:function(){},isGeometryChanged:function(){},interfaces_:function(){return[]},getClass:function(){return vo}});y(nt,h);i(nt.prototype,{computeEnvelopeInternal:function(){for(var t=new p,n=0;n<this.geometries.length;n++)t.expandToInclude(this.geometries[n].getEnvelopeInternal());return t},getGeometryN:function(n){return this.geometries[n]},getSortIndex:function(){return h.SORTINDEX_GEOMETRYCOLLECTION},getCoordinates:function(){for(var i,n,r=new Array(this.getNumPoints()).fill(null),u=-1,t=0;t<this.geometries.length;t++)for(i=this.geometries[t].getCoordinates(),n=0;n<i.length;n++)u++,r[u]=i[n];return r},getArea:function(){for(var t=0,n=0;n<this.geometries.length;n++)t+=this.geometries[n].getArea();return t},equalsExact:function(){var t,r,i,n;if(2===arguments.length){if((t=arguments[0],r=arguments[1],!this.isEquivalentClass(t))||(i=t,this.geometries.length!==i.geometries.length))return!1;for(n=0;n<this.geometries.length;n++)if(!this.geometries[n].equalsExact(i.geometries[n],r))return!1;return!0}return h.prototype.equalsExact.apply(this,arguments)},normalize:function(){for(var n=0;n<this.geometries.length;n++)this.geometries[n].normalize();pf.sort(this.geometries)},getCoordinate:function(){return this.isEmpty()?null:this.geometries[0].getCoordinate()},getBoundaryDimension:function(){for(var n=e.FALSE,t=0;t<this.geometries.length;t++)n=Math.max(n,this.geometries[t].getBoundaryDimension());return n},getDimension:function(){for(var n=e.FALSE,t=0;t<this.geometries.length;t++)n=Math.max(n,this.geometries[t].getDimension());return n},getLength:function(){for(var t=0,n=0;n<this.geometries.length;n++)t+=this.geometries[n].getLength();return t},getNumPoints:function(){for(var t=0,n=0;n<this.geometries.length;n++)t+=this.geometries[n].getNumPoints();return t},getNumGeometries:function(){return this.geometries.length},reverse:function(){for(var i=this.geometries.length,t=new Array(i).fill(null),n=0;n<this.geometries.length;n++)t[n]=this.geometries[n].reverse();return this.getFactory().createGeometryCollection(t)},compareToSameClass:function(){if(1===arguments.length){var f=arguments[0],e=new di(pf.asList(this.geometries)),o=new di(pf.asList(f.geometries));return this.compare(e,o)}if(2===arguments.length){for(var s=arguments[0],h=arguments[1],t=s,i=this.getNumGeometries(),r=t.getNumGeometries(),n=0;n<i&&n<r;){var c=this.getGeometryN(n),l=t.getGeometryN(n),u=c.compareToSameClass(l,h);if(0!==u)return u;n++}return n<i?1:n<r?-1:0}},apply:function(){var u,t,i,r,n;if(l(arguments[0],pe))for(u=arguments[0],n=0;n<this.geometries.length;n++)this.geometries[n].apply(u);else if(l(arguments[0],vo)){if(t=arguments[0],0===this.geometries.length)return null;for(n=0;n<this.geometries.length&&(this.geometries[n].apply(t),!t.isDone());n++);t.isGeometryChanged()&&this.geometryChanged()}else if(l(arguments[0],wf))for(i=arguments[0],i.filter(this),n=0;n<this.geometries.length;n++)this.geometries[n].apply(i);else if(l(arguments[0],yu))for(r=arguments[0],r.filter(this),n=0;n<this.geometries.length;n++)this.geometries[n].apply(r)},getBoundary:function(){return this.checkNotGeometryCollection(this),c.shouldNeverReachHere(),null},clone:function(){var t=h.prototype.clone.call(this),n;for(t.geometries=new Array(this.geometries.length).fill(null),n=0;n<this.geometries.length;n++)t.geometries[n]=this.geometries[n].clone();return t},getGeometryType:function(){return"GeometryCollection"},copy:function(){for(var t=new Array(this.geometries.length).fill(null),n=0;n<t.length;n++)t[n]=this.geometries[n].copy();return new nt(t,this.factory)},isEmpty:function(){for(var n=0;n<this.geometries.length;n++)if(!this.geometries[n].isEmpty())return!1;return!0},interfaces_:function(){return[]},getClass:function(){return nt}});nt.serialVersionUID=-0x4f07bcb1f857d800;y(cr,nt);i(cr.prototype,{getSortIndex:function(){return h.SORTINDEX_MULTILINESTRING},equalsExact:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return!!this.isEquivalentClass(n)&&nt.prototype.equalsExact.call(this,n,t)}return nt.prototype.equalsExact.apply(this,arguments)},getBoundaryDimension:function(){return this.isClosed()?e.FALSE:0},isClosed:function(){if(this.isEmpty())return!1;for(var n=0;n<this.geometries.length;n++)if(!this.geometries[n].isClosed())return!1;return!0},getDimension:function(){return 1},reverse:function(){for(var t=this.geometries.length,i=new Array(t).fill(null),n=0;n<this.geometries.length;n++)i[t-1-n]=this.geometries[n].reverse();return this.getFactory().createMultiLineString(i)},getBoundary:function(){return new ee(this).getBoundary()},getGeometryType:function(){return"MultiLineString"},copy:function(){for(var t=new Array(this.geometries.length).fill(null),n=0;n<t.length;n++)t[n]=this.geometries[n].copy();return new cr(t,this.factory)},interfaces_:function(){return[ca]},getClass:function(){return cr}});cr.serialVersionUID=0x7155d2ab4afa8000;i(ee.prototype,{boundaryMultiLineString:function(n){if(this.geom.isEmpty())return this.getEmptyMultiPoint();var t=this.computeBoundaryCoordinates(n);return 1===t.length?this.geomFact.createPoint(t[0]):this.geomFact.createMultiPointFromCoords(t)},getBoundary:function(){return this.geom instanceof d?this.boundaryLineString(this.geom):this.geom instanceof cr?this.boundaryMultiLineString(this.geom):this.geom.getBoundary()},boundaryLineString:function(n){return this.geom.isEmpty()?this.getEmptyMultiPoint():n.isClosed()?this.bnRule.isInBoundary(2)?n.getStartPoint():this.geomFact.createMultiPoint():this.geomFact.createMultiPoint([n.getStartPoint(),n.getEndPoint()])},getEmptyMultiPoint:function(){return this.geomFact.createMultiPoint()},computeBoundaryCoordinates:function(n){var f=new u,i,t,r;for(this.endpointMap=new ui,i=0;i<n.getNumGeometries();i++)t=n.getGeometryN(i),0!==t.getNumPoints()&&(this.addEndpoint(t.getCoordinateN(0)),this.addEndpoint(t.getCoordinateN(t.getNumPoints()-1)));for(r=this.endpointMap.entrySet().iterator();r.hasNext();){var e=r.next(),o=e.getValue(),s=o.count;this.bnRule.isInBoundary(s)&&f.add(e.getKey())}return w.toCoordinateArray(f)},addEndpoint:function(n){var t=this.endpointMap.get(n);null===t&&(t=new rp,this.endpointMap.put(n,t));t.count++},interfaces_:function(){return[]},getClass:function(){return ee}});ee.getBoundary=function(){var t,n;if(1===arguments.length)return t=arguments[0],n=new ee(t),n.getBoundary();if(2===arguments.length){var i=arguments[0],r=arguments[1],n=new ee(i,r);return n.getBoundary()}};i(rp.prototype,{interfaces_:function(){return[]},getClass:function(){return rp}});i(kr.prototype,{interfaces_:function(){return[]},getClass:function(){return kr}});kr.chars=function(n,t){for(var r=new Array(t).fill(null),i=0;i<t;i++)r[i]=n;return new String(r)};kr.getStackTrace=function(){if(1===arguments.length){var n=arguments[0],t=new sk,u=new fk(t);return n.printStackTrace(u),t.toString()}if(2===arguments.length){for(var f=arguments[0],e=arguments[1],i="",o=new ek(kr.getStackTrace(f)),s=new ck(o),r=0;r<e;r++)try{i+=s.readLine()+kr.NEWLINE}catch(n){if(!(n instanceof hk))throw n;c.shouldNeverReachHere()}return i}};kr.split=function(n,t){for(var s,o,r,h=t.length,f=new u,i=""+n,e=i.indexOf(t);e>=0;)s=i.substring(0,e),f.add(s),i=i.substring(e+h),e=i.indexOf(t);for(i.length>0&&f.add(i),o=new Array(f.size()).fill(null),r=0;r<o.length;r++)o[r]=f.get(r);return o};kr.toString=function(){if(1===arguments.length){var n=arguments[0];return kr.SIMPLE_ORDINATE_FORMAT.format(n)}};kr.spaces=function(n){return kr.chars(" ",n)};kr.NEWLINE=pt.getProperty("line.separator");kr.SIMPLE_ORDINATE_FORMAT=new ok("0.#");i(ri.prototype,{interfaces_:function(){return[]},getClass:function(){return ri}});ri.copyCoord=function(n,t,i,r){for(var f=Math.min(n.getDimension(),i.getDimension()),u=0;u<f;u++)i.setOrdinate(r,u,n.getOrdinate(t,u))};ri.isRing=function(n){var t=n.size();return 0===t||!(t<=3)&&n.getOrdinate(0,lt.X)===n.getOrdinate(t-1,lt.X)&&n.getOrdinate(0,lt.Y)===n.getOrdinate(t-1,lt.Y)};ri.isEqual=function(n,t){var u=n.size(),f,i,r,e,o;if(u!==t.size())return!1;for(f=Math.min(n.getDimension(),t.getDimension()),i=0;i<u;i++)for(r=0;r<f;r++)if(e=n.getOrdinate(i,r),o=t.getOrdinate(i,r),!(n.getOrdinate(i,r)===t.getOrdinate(i,r)||v.isNaN(e)&&v.isNaN(o)))return!1;return!0};ri.extend=function(n,t,i){var f=n.create(i,t.getDimension()),r=t.size(),u;if(ri.copy(t,0,f,0,r),r>0)for(u=r;u<i;u++)ri.copy(t,r-1,f,u,1);return f};ri.reverse=function(n){for(var i=n.size()-1,r=Math.trunc(i/2),t=0;t<=r;t++)ri.swap(n,t,i-t)};ri.swap=function(n,t,i){var r,u;if(t===i)return null;for(r=0;r<n.getDimension();r++)u=n.getOrdinate(t,r),n.setOrdinate(t,r,n.getOrdinate(i,r)),n.setOrdinate(i,r,u)};ri.copy=function(n,t,i,r,u){for(var f=0;f<u;f++)ri.copyCoord(n,t+f,i,r+f)};ri.toString=function(){var r,u,f,n,t,i;if(1===arguments.length){if(r=arguments[0],u=r.size(),0===u)return"()";for(f=r.getDimension(),n=new eu,n.append("("),t=0;t<u;t++)for(t>0&&n.append(" "),i=0;i<f;i++)i>0&&n.append(","),n.append(kr.toString(r.getOrdinate(t,i)));return n.append(")"),n.toString()}};ri.ensureValidRing=function(n,t){var i=t.size();return 0===i?t:i<=3?ri.createClosedRing(n,t,4):t.getOrdinate(0,lt.X)===t.getOrdinate(i-1,lt.X)&&t.getOrdinate(0,lt.Y)===t.getOrdinate(i-1,lt.Y)?t:ri.createClosedRing(n,t,i+1)};ri.createClosedRing=function(n,t,i){var u=n.create(i,t.getDimension()),f=t.size(),r;for(ri.copy(t,0,u,0,f),r=f;r<i;r++)ri.copy(t,0,u,r,1);return u};y(d,h);i(d.prototype,{computeEnvelopeInternal:function(){return this.isEmpty()?new p:this.points.expandEnvelope(new p)},isRing:function(){return this.isClosed()&&this.isSimple()},getSortIndex:function(){return h.SORTINDEX_LINESTRING},getCoordinates:function(){return this.points.toCoordinateArray()},equalsExact:function(){var t,r,i,n;if(2===arguments.length){if((t=arguments[0],r=arguments[1],!this.isEquivalentClass(t))||(i=t,this.points.size()!==i.points.size()))return!1;for(n=0;n<this.points.size();n++)if(!this.equal(this.points.getCoordinate(n),i.points.getCoordinate(n),r))return!1;return!0}return h.prototype.equalsExact.apply(this,arguments)},normalize:function(){for(var t,n=0;n<Math.trunc(this.points.size()/2);n++)if(t=this.points.size()-1-n,!this.points.getCoordinate(n).equals(this.points.getCoordinate(t)))return this.points.getCoordinate(n).compareTo(this.points.getCoordinate(t))>0&&ri.reverse(this.points),null},getCoordinate:function(){return this.isEmpty()?null:this.points.getCoordinate(0)},getBoundaryDimension:function(){return this.isClosed()?e.FALSE:0},isClosed:function(){return!this.isEmpty()&&this.getCoordinateN(0).equals2D(this.getCoordinateN(this.getNumPoints()-1))},getEndPoint:function(){return this.isEmpty()?null:this.getPointN(this.getNumPoints()-1)},getDimension:function(){return 1},getLength:function(){return s.computeLength(this.points)},getNumPoints:function(){return this.points.size()},reverse:function(){var n=this.points.copy();return ri.reverse(n),this.getFactory().createLineString(n)},compareToSameClass:function(){var r;if(1===arguments.length){for(var u=arguments[0],n=u,t=0,i=0;t<this.points.size()&&i<n.points.size();){if(r=this.points.getCoordinate(t).compareTo(n.points.getCoordinate(i)),0!==r)return r;t++;i++}return t<this.points.size()?1:i<n.points.size()?-1:0}if(2===arguments.length){var f=arguments[0],e=arguments[1],n=f;return e.compare(this.points,n.points)}},apply:function(){var i,t,n,r,u;if(l(arguments[0],pe))for(i=arguments[0],n=0;n<this.points.size();n++)i.filter(this.points.getCoordinate(n));else if(l(arguments[0],vo)){if(t=arguments[0],0===this.points.size())return null;for(n=0;n<this.points.size()&&(t.filter(this.points,n),!t.isDone());n++);t.isGeometryChanged()&&this.geometryChanged()}else l(arguments[0],wf)?(r=arguments[0],r.filter(this)):l(arguments[0],yu)&&(u=arguments[0],u.filter(this))},getBoundary:function(){return new ee(this).getBoundary()},isEquivalentClass:function(n){return n instanceof d},clone:function(){var n=h.prototype.clone.call(this);return n.points=this.points.clone(),n},getCoordinateN:function(n){return this.points.getCoordinate(n)},getGeometryType:function(){return"LineString"},copy:function(){return new d(this.points.copy(),this.factory)},getCoordinateSequence:function(){return this.points},isEmpty:function(){return 0===this.points.size()},init:function(n){if(null===n&&(n=this.getFactory().getCoordinateSequenceFactory().create([])),1===n.size())throw new ct("Invalid number of points in LineString (found "+n.size()+" - must be 0 or >= 2)");this.points=n},isCoordinate:function(n){for(var t=0;t<this.points.size();t++)if(this.points.getCoordinate(t).equals(n))return!0;return!1},getStartPoint:function(){return this.isEmpty()?null:this.getPointN(0)},getPointN:function(n){return this.getFactory().createPoint(this.points.getCoordinate(n))},interfaces_:function(){return[ca]},getClass:function(){return d}});d.serialVersionUID=0x2b2b51ba435c8e00;i(la.prototype,{interfaces_:function(){return[]},getClass:function(){return la}});y(bt,h);i(bt.prototype,{computeEnvelopeInternal:function(){if(this.isEmpty())return new p;var n=new p;return n.expandToInclude(this.coordinates.getX(0),this.coordinates.getY(0)),n},getSortIndex:function(){return h.SORTINDEX_POINT},getCoordinates:function(){return this.isEmpty()?[]:[this.getCoordinate()]},equalsExact:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return!!this.isEquivalentClass(n)&&(!(!this.isEmpty()||!n.isEmpty())||this.isEmpty()===n.isEmpty()&&this.equal(n.getCoordinate(),this.getCoordinate(),t))}return h.prototype.equalsExact.apply(this,arguments)},normalize:function(){},getCoordinate:function(){return 0!==this.coordinates.size()?this.coordinates.getCoordinate(0):null},getBoundaryDimension:function(){return e.FALSE},getDimension:function(){return 0},getNumPoints:function(){return this.isEmpty()?0:1},reverse:function(){return this.copy()},getX:function(){if(null===this.getCoordinate())throw new IllegalStateException("getX called on empty Point");return this.getCoordinate().x},compareToSameClass:function(){var t,n;if(1===arguments.length)return t=arguments[0],n=t,this.getCoordinate().compareTo(n.getCoordinate());if(2===arguments.length){var i=arguments[0],r=arguments[1],n=i;return r.compare(this.coordinates,n.coordinates)}},apply:function(){var t,n,i,r;if(l(arguments[0],pe)){if(t=arguments[0],this.isEmpty())return null;t.filter(this.getCoordinate())}else if(l(arguments[0],vo)){if(n=arguments[0],this.isEmpty())return null;n.filter(this.coordinates,0);n.isGeometryChanged()&&this.geometryChanged()}else l(arguments[0],wf)?(i=arguments[0],i.filter(this)):l(arguments[0],yu)&&(r=arguments[0],r.filter(this))},getBoundary:function(){return this.getFactory().createGeometryCollection(null)},clone:function(){var n=h.prototype.clone.call(this);return n.coordinates=this.coordinates.clone(),n},getGeometryType:function(){return"Point"},copy:function(){return new bt(this.coordinates.copy(),this.factory)},getCoordinateSequence:function(){return this.coordinates},getY:function(){if(null===this.getCoordinate())throw new IllegalStateException("getY called on empty Point");return this.getCoordinate().y},isEmpty:function(){return 0===this.coordinates.size()},init:function(n){null===n&&(n=this.getFactory().getCoordinateSequenceFactory().create([]));c.isTrue(n.size()<=1);this.coordinates=n},isSimple:function(){return!0},interfaces_:function(){return[la]},getClass:function(){return bt}});bt.serialVersionUID=0x44077bad161cbc00;i(bf.prototype,{interfaces_:function(){return[]},getClass:function(){return bf}});y(st,h);i(st.prototype,{computeEnvelopeInternal:function(){return this.shell.getEnvelopeInternal()},getSortIndex:function(){return h.SORTINDEX_POLYGON},getCoordinates:function(){var t,f,i;if(this.isEmpty())return[];for(var r=new Array(this.getNumPoints()).fill(null),n=-1,e=this.shell.getCoordinates(),u=0;u<e.length;u++)n++,r[n]=e[u];for(t=0;t<this.holes.length;t++)for(f=this.holes[t].getCoordinates(),i=0;i<f.length;i++)n++,r[n]=f[i];return r},getArea:function(){var t=0,n;for(t+=Math.abs(s.signedArea(this.shell.getCoordinateSequence())),n=0;n<this.holes.length;n++)t-=Math.abs(s.signedArea(this.holes[n].getCoordinateSequence()));return t},isRectangle:function(){var t,i;if(0!==this.getNumInteriorRing()||null===this.shell||5!==this.shell.getNumPoints())return!1;for(var r=this.shell.getCoordinateSequence(),u=this.getEnvelopeInternal(),n=0;n<5;n++)if((t=r.getX(n),t!==u.getMinX()&&t!==u.getMaxX())||(i=r.getY(n),i!==u.getMinY()&&i!==u.getMaxY()))return!1;for(var f=r.getX(0),e=r.getY(0),n=1;n<=4;n++){if(t=r.getX(n),i=r.getY(n),t!==f==(i!==e))return!1;f=t;e=i}return!0},equalsExact:function(){var t,i,n;if(2===arguments.length){if(t=arguments[0],i=arguments[1],!this.isEquivalentClass(t))return!1;var r=t,u=this.shell,f=r.shell;if(!u.equalsExact(f,i)||this.holes.length!==r.holes.length)return!1;for(n=0;n<this.holes.length;n++)if(!this.holes[n].equalsExact(r.holes[n],i))return!1;return!0}return h.prototype.equalsExact.apply(this,arguments)},normalize:function(){var i,n,r,t,u;if(0===arguments.length){for(this.normalize(this.shell,!0),i=0;i<this.holes.length;i++)this.normalize(this.holes[i],!1);pf.sort(this.holes)}else if(2===arguments.length){if(n=arguments[0],r=arguments[1],n.isEmpty())return null;t=new Array(n.getCoordinates().length-1).fill(null);pt.arraycopy(n.getCoordinates(),0,t,0,t.length);u=w.minCoordinate(n.getCoordinates());w.scroll(t,u);pt.arraycopy(t,0,n.getCoordinates(),0,t.length);n.getCoordinates()[t.length]=t[0];s.isCCW(n.getCoordinates())===r&&w.reverse(n.getCoordinates())}},getCoordinate:function(){return this.shell.getCoordinate()},getNumInteriorRing:function(){return this.holes.length},getBoundaryDimension:function(){return 1},getDimension:function(){return 2},getLength:function(){var t=0,n;for(t+=this.shell.getLength(),n=0;n<this.holes.length;n++)t+=this.holes[n].getLength();return t},getNumPoints:function(){for(var t=this.shell.getNumPoints(),n=0;n<this.holes.length;n++)t+=this.holes[n].getNumPoints();return t},reverse:function(){var t=this.copy(),n;for(t.shell=this.shell.copy().reverse(),t.holes=new Array(this.holes.length).fill(null),n=0;n<this.holes.length;n++)t.holes[n]=this.holes[n].copy().reverse();return t},convexHull:function(){return this.getExteriorRing().convexHull()},compareToSameClass:function(){if(1===arguments.length){var h=arguments[0],t=this.shell,i=h.shell;return t.compareToSameClass(i)}if(2===arguments.length){var c=arguments[0],u=arguments[1],r=c,t=this.shell,i=r.shell,f=t.compareToSameClass(i,u);if(0!==f)return f;for(var e=this.getNumInteriorRing(),o=r.getNumInteriorRing(),n=0;n<e&&n<o;){var l=this.getInteriorRingN(n),a=r.getInteriorRingN(n),s=l.compareToSameClass(a,u);if(0!==s)return s;n++}return n<e?1:n<o?-1:0}},apply:function(){var r,t,u,i,n;if(l(arguments[0],pe))for(r=arguments[0],this.shell.apply(r),n=0;n<this.holes.length;n++)this.holes[n].apply(r);else if(l(arguments[0],vo)){if(t=arguments[0],this.shell.apply(t),!t.isDone())for(n=0;n<this.holes.length&&(this.holes[n].apply(t),!t.isDone());n++);t.isGeometryChanged()&&this.geometryChanged()}else if(l(arguments[0],wf))u=arguments[0],u.filter(this);else if(l(arguments[0],yu))for(i=arguments[0],i.filter(this),this.shell.apply(i),n=0;n<this.holes.length;n++)this.holes[n].apply(i)},getBoundary:function(){var n,t;if(this.isEmpty())return this.getFactory().createMultiLineString();for(n=new Array(this.holes.length+1).fill(null),n[0]=this.shell,t=0;t<this.holes.length;t++)n[t+1]=this.holes[t];return n.length<=1?this.getFactory().createLinearRing(n[0].getCoordinateSequence()):this.getFactory().createMultiLineString(n)},clone:function(){var t=h.prototype.clone.call(this),n;for(t.shell=this.shell.clone(),t.holes=new Array(this.holes.length).fill(null),n=0;n<this.holes.length;n++)t.holes[n]=this.holes[n].clone();return t},getGeometryType:function(){return"Polygon"},copy:function(){for(var i=this.shell.copy(),t=new Array(this.holes.length).fill(null),n=0;n<t.length;n++)t[n]=this.holes[n].copy();return new st(i,t,this.factory)},getExteriorRing:function(){return this.shell},isEmpty:function(){return this.shell.isEmpty()},getInteriorRingN:function(n){return this.holes[n]},interfaces_:function(){return[bf]},getClass:function(){return st}});st.serialVersionUID=-0x307ffefd8dc97200;y(lr,nt);i(lr.prototype,{getSortIndex:function(){return h.SORTINDEX_MULTIPOINT},isValid:function(){return!0},equalsExact:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return!!this.isEquivalentClass(n)&&nt.prototype.equalsExact.call(this,n,t)}return nt.prototype.equalsExact.apply(this,arguments)},getCoordinate:function(){if(1===arguments.length){var n=arguments[0];return this.geometries[n].getCoordinate()}return nt.prototype.getCoordinate.apply(this,arguments)},getBoundaryDimension:function(){return e.FALSE},getDimension:function(){return 0},getBoundary:function(){return this.getFactory().createGeometryCollection(null)},getGeometryType:function(){return"MultiPoint"},copy:function(){for(var t=new Array(this.geometries.length).fill(null),n=0;n<t.length;n++)t[n]=this.geometries[n].copy();return new lr(t,this.factory)},interfaces_:function(){return[la]},getClass:function(){return lr}});lr.serialVersionUID=-0x6fb1ed4162e0fc00;y(gt,d);i(gt.prototype,{getSortIndex:function(){return h.SORTINDEX_LINEARRING},getBoundaryDimension:function(){return e.FALSE},isClosed:function(){return!!this.isEmpty()||d.prototype.isClosed.call(this)},reverse:function(){var n=this.points.copy();return ri.reverse(n),this.getFactory().createLinearRing(n)},validateConstruction:function(){if(!this.isEmpty()&&!d.prototype.isClosed.call(this))throw new ct("Points of LinearRing do not form a closed linestring");if(this.getCoordinateSequence().size()>=1&&this.getCoordinateSequence().size()<gt.MINIMUM_VALID_SIZE)throw new ct("Invalid number of points in LinearRing (found "+this.getCoordinateSequence().size()+" - must be 0 or >= 4)");},getGeometryType:function(){return"LinearRing"},copy:function(){return new gt(this.points.copy(),this.factory)},interfaces_:function(){return[]},getClass:function(){return gt}});gt.MINIMUM_VALID_SIZE=4;gt.serialVersionUID=-0x3b229e262367a600;y(ai,nt);i(ai.prototype,{getSortIndex:function(){return h.SORTINDEX_MULTIPOLYGON},equalsExact:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return!!this.isEquivalentClass(n)&&nt.prototype.equalsExact.call(this,n,t)}return nt.prototype.equalsExact.apply(this,arguments)},getBoundaryDimension:function(){return 1},getDimension:function(){return 2},reverse:function(){for(var i=this.geometries.length,t=new Array(i).fill(null),n=0;n<this.geometries.length;n++)t[n]=this.geometries[n].reverse();return this.getFactory().createMultiPolygon(t)},getBoundary:function(){var n,t,f;if(this.isEmpty())return this.getFactory().createMultiLineString();for(n=new u,t=0;t<this.geometries.length;t++)for(var e=this.geometries[t],r=e.getBoundary(),i=0;i<r.getNumGeometries();i++)n.add(r.getGeometryN(i));return f=new Array(n.size()).fill(null),this.getFactory().createMultiLineString(n.toArray(f))},getGeometryType:function(){return"MultiPolygon"},copy:function(){for(var t=new Array(this.geometries.length).fill(null),n=0;n<t.length;n++)t[n]=this.geometries[n].copy();return new ai(t,this.factory)},interfaces_:function(){return[bf]},getClass:function(){return ai}});ai.serialVersionUID=-0x7a5aa1369171980;i(dr.prototype,{setCopyUserData:function(n){this.isUserDataCopied=n},edit:function(n,t){if(null===n)return null;var i=this.editInternal(n,t);return this.isUserDataCopied&&i.setUserData(n.getUserData()),i},editInternal:function(n,t){return null===this.factory&&(this.factory=n.getFactory()),n instanceof nt?this.editGeometryCollection(n,t):n instanceof st?this.editPolygon(n,t):n instanceof bt?t.edit(n,this.factory):n instanceof d?t.edit(n,this.factory):(c.shouldNeverReachHere("Unsupported Geometry class: "+n.getClass().getName()),null)},editGeometryCollection:function(n,t){for(var f,i=t.edit(n,this.factory),r=new u,e=0;e<i.getNumGeometries();e++)f=this.edit(i.getGeometryN(e),t),null===f||f.isEmpty()||r.add(f);return i.getClass()===lr?this.factory.createMultiPoint(r.toArray([])):i.getClass()===cr?this.factory.createMultiLineString(r.toArray([])):i.getClass()===ai?this.factory.createMultiPolygon(r.toArray([])):this.factory.createGeometryCollection(r.toArray([]))},editPolygon:function(n,t){var i=t.edit(n,this.factory),r,o,f,e;if(null===i&&(i=this.factory.createPolygon(null)),i.isEmpty())return i;if(r=this.edit(i.getExteriorRing(),t),null===r||r.isEmpty())return this.factory.createPolygon();for(o=new u,f=0;f<i.getNumInteriorRing();f++)e=this.edit(i.getInteriorRingN(f),t),null===e||e.isEmpty()||o.add(e);return this.factory.createPolygon(r,o.toArray([]))},interfaces_:function(){return[]},getClass:function(){return dr}});dr.GeometryEditorOperation=aa;i(up.prototype,{edit:function(n){return n},interfaces_:function(){return[aa]},getClass:function(){return up}});i(fp.prototype,{edit:function(n,t){var i=this.editCoordinates(n.getCoordinates(),n);return null===i?n:n instanceof gt?t.createLinearRing(i):n instanceof d?t.createLineString(i):n instanceof bt?i.length>0?t.createPoint(i[0]):t.createPoint():n},interfaces_:function(){return[aa]},getClass:function(){return fp}});i(ep.prototype,{edit:function(n,t){return n instanceof gt?t.createLinearRing(this.edit(n.getCoordinateSequence(),n)):n instanceof d?t.createLineString(this.edit(n.getCoordinateSequence(),n)):n instanceof bt?t.createPoint(this.edit(n.getCoordinateSequence(),n)):n},interfaces_:function(){return[aa]},getClass:function(){return ep}});dr.NoOpGeometryOperation=up;dr.CoordinateOperation=fp;dr.CoordinateSequenceOperation=ep;i(gr.prototype,{setOrdinate:function(n,t,i){switch(t){case lt.X:this.coordinates[n].x=i;break;case lt.Y:this.coordinates[n].y=i;break;case lt.Z:this.coordinates[n].z=i;break;default:throw new ct("invalid ordinateIndex");}},size:function(){return this.coordinates.length},getOrdinate:function(n,t){switch(t){case lt.X:return this.coordinates[n].x;case lt.Y:return this.coordinates[n].y;case lt.Z:return this.coordinates[n].z}return v.NaN},getCoordinate:function(){var i,n,t;if(1===arguments.length)return i=arguments[0],this.coordinates[i];2===arguments.length&&(n=arguments[0],t=arguments[1],t.x=this.coordinates[n].x,t.y=this.coordinates[n].y,t.z=this.coordinates[n].z)},getCoordinateCopy:function(n){return new r(this.coordinates[n])},getDimension:function(){return this.dimension},getX:function(n){return this.coordinates[n].x},clone:function(){for(var t=new Array(this.size()).fill(null),n=0;n<this.coordinates.length;n++)t[n]=this.coordinates[n].clone();return new gr(t,this.dimension)},expandEnvelope:function(n){for(var t=0;t<this.coordinates.length;t++)n.expandToInclude(this.coordinates[t]);return n},copy:function(){for(var t=new Array(this.size()).fill(null),n=0;n<this.coordinates.length;n++)t[n]=this.coordinates[n].copy();return new gr(t,this.dimension)},toString:function(){var n,t;if(this.coordinates.length>0){for(n=new eu(17*this.coordinates.length),n.append("("),n.append(this.coordinates[0]),t=1;t<this.coordinates.length;t++)n.append(", "),n.append(this.coordinates[t]);return n.append(")"),n.toString()}return"()"},getY:function(n){return this.coordinates[n].y},toCoordinateArray:function(){return this.coordinates},interfaces_:function(){return[lt,ir]},getClass:function(){return gr}});gr.serialVersionUID=-0xcb44a778db18e00;i(oe.prototype,{readResolve:function(){return oe.instance()},create:function(){if(1===arguments.length){if(arguments[0]instanceof Array||l(arguments[0],lt))return new gr(arguments[0])}else if(2===arguments.length){var t=arguments[0],n=arguments[1];return n>3&&(n=3),n<2?new gr(t):new gr(t,n)}},interfaces_:function(){return[ua,ir]},getClass:function(){return oe}});oe.instance=function(){return oe.instanceObject};oe.serialVersionUID=-0x38e49fa6cf6f2e00;oe.instanceObject=new oe;var cf,fd=Object.defineProperty,ed=function(n,t){function i(n){return this&&this.constructor===i?(this._keys=[],this._values=[],this._itp=[],this.objectOnly=t,void(n&&ak.call(this,n))):new i(n)}return t||fd(n,"size",{get:td}),n.constructor=i,i.prototype=n,i}({"delete":vk,has:wk,get:yk,set:bk,keys:dk,values:gk,entries:nd,forEach:id,clear:kk}),od="undefined"!=typeof Map&&Map.prototype.values?Map:ed;kf.prototype=new ao;kf.prototype.get=function(n){return this.map_.get(n)||null};kf.prototype.put=function(n,t){return this.map_.set(n,t),t};kf.prototype.values=function(){for(var t=new u,i=this.map_.values(),n=i.next();!n.done;)t.add(n.value),n=i.next();return t};kf.prototype.entrySet=function(){var n=new li;return this.map_.entries().forEach(function(t){return n.add(t)}),n};kf.prototype.size=function(){return this.map_.size()};i(ft.prototype,{equals:function(n){if(!(n instanceof ft))return!1;var t=n;return this.modelType===t.modelType&&this.scale===t.scale},compareTo:function(n){var t=n,i=this.getMaximumSignificantDigits(),r=t.getMaximumSignificantDigits();return new vu(i).compareTo(new vu(r))},getScale:function(){return this.scale},isFloating:function(){return this.modelType===ft.FLOATING||this.modelType===ft.FLOATING_SINGLE},getType:function(){return this.modelType},toString:function(){var n="UNKNOWN";return this.modelType===ft.FLOATING?n="Floating":this.modelType===ft.FLOATING_SINGLE?n="Floating-Single":this.modelType===ft.FIXED&&(n="Fixed (Scale="+this.getScale()+")"),n},makePrecise:function(){var n,t;if("number"==typeof arguments[0])return(n=arguments[0],v.isNaN(n))?n:this.modelType===ft.FLOATING_SINGLE?n:this.modelType===ft.FIXED?Math.round(n*this.scale)/this.scale:n;if(arguments[0]instanceof r){if(t=arguments[0],this.modelType===ft.FLOATING)return null;t.x=this.makePrecise(t.x);t.y=this.makePrecise(t.y)}},getMaximumSignificantDigits:function(){var n=16;return this.modelType===ft.FLOATING?n=16:this.modelType===ft.FLOATING_SINGLE?n=6:this.modelType===ft.FIXED&&(n=1+Math.trunc(Math.ceil(Math.log(this.getScale())/Math.log(10)))),n},setScale:function(n){this.scale=Math.abs(n)},interfaces_:function(){return[ir,sr]},getClass:function(){return ft}});ft.mostPrecise=function(n,t){return n.compareTo(t)>=0?n:t};i(nf.prototype,{readResolve:function(){return nf.nameToTypeMap.get(this.name)},toString:function(){return this.name},interfaces_:function(){return[ir]},getClass:function(){return nf}});nf.serialVersionUID=-552860263173159e4;nf.nameToTypeMap=new kf;ft.Type=nf;ft.serialVersionUID=0x6bee6404e9a25c00;ft.FIXED=new nf("FIXED");ft.FLOATING=new nf("FLOATING");ft.FLOATING_SINGLE=new nf("FLOATING SINGLE");ft.maximumPreciseValue=9007199254740992;i(g.prototype,{toGeometry:function(n){return n.isNull()?this.createPoint(null):n.getMinX()===n.getMaxX()&&n.getMinY()===n.getMaxY()?this.createPoint(new r(n.getMinX(),n.getMinY())):n.getMinX()===n.getMaxX()||n.getMinY()===n.getMaxY()?this.createLineString([new r(n.getMinX(),n.getMinY()),new r(n.getMaxX(),n.getMaxY())]):this.createPolygon(this.createLinearRing([new r(n.getMinX(),n.getMinY()),new r(n.getMinX(),n.getMaxY()),new r(n.getMaxX(),n.getMaxY()),new r(n.getMaxX(),n.getMinY()),new r(n.getMinX(),n.getMinY())]),null)},createLineString:function(){if(0===arguments.length)return this.createLineString(this.getCoordinateSequenceFactory().create([]));if(1===arguments.length){if(arguments[0]instanceof Array){var n=arguments[0];return this.createLineString(null!==n?this.getCoordinateSequenceFactory().create(n):null)}if(l(arguments[0],lt))return new d(arguments[0],this)}},createMultiLineString:function(){return 0===arguments.length?new cr(null,this):1===arguments.length?new cr(arguments[0],this):void 0},buildGeometry:function(n){for(var r,u,t,i=null,f=!1,e=!1,o=n.iterator();o.hasNext();)r=o.next(),u=r.getClass(),null===i&&(i=u),u!==i&&(f=!0),r.isGeometryCollectionOrDerived()&&(e=!0);if(null===i)return this.createGeometryCollection();if(f||e)return this.createGeometryCollection(g.toGeometryArray(n));if(t=n.iterator().next(),n.size()>1){if(t instanceof st)return this.createMultiPolygon(g.toPolygonArray(n));if(t instanceof d)return this.createMultiLineString(g.toLineStringArray(n));if(t instanceof bt)return this.createMultiPoint(g.toPointArray(n));c.shouldNeverReachHere("Unhandled class: "+t.getClass().getName())}return t},createMultiPointFromCoords:function(n){return this.createMultiPoint(null!==n?this.getCoordinateSequenceFactory().create(n):null)},createPoint:function(){if(0===arguments.length)return this.createPoint(this.getCoordinateSequenceFactory().create([]));if(1===arguments.length){if(arguments[0]instanceof r){var n=arguments[0];return this.createPoint(null!==n?this.getCoordinateSequenceFactory().create([n]):null)}if(l(arguments[0],lt))return new bt(arguments[0],this)}},getCoordinateSequenceFactory:function(){return this.coordinateSequenceFactory},createPolygon:function(){var n,t,i,r,u;if(0===arguments.length)return new st(null,null,this);if(1===arguments.length){if(l(arguments[0],lt))return n=arguments[0],this.createPolygon(this.createLinearRing(n));if(arguments[0]instanceof Array)return t=arguments[0],this.createPolygon(this.createLinearRing(t));if(arguments[0]instanceof gt)return i=arguments[0],this.createPolygon(i,null)}else if(2===arguments.length)return r=arguments[0],u=arguments[1],new st(r,u,this)},getSRID:function(){return this.SRID},createGeometryCollection:function(){return 0===arguments.length?new nt(null,this):1===arguments.length?new nt(arguments[0],this):void 0},createGeometry:function(n){return new dr(this).edit(n,{edit:function(){if(2===arguments.length){var n=arguments[0];return arguments[1],this.coordinateSequenceFactory.create(n)}}})},getPrecisionModel:function(){return this.precisionModel},createLinearRing:function(){if(0===arguments.length)return this.createLinearRing(this.getCoordinateSequenceFactory().create([]));if(1===arguments.length){if(arguments[0]instanceof Array){var n=arguments[0];return this.createLinearRing(null!==n?this.getCoordinateSequenceFactory().create(n):null)}if(l(arguments[0],lt))return new gt(arguments[0],this)}},createMultiPolygon:function(){return 0===arguments.length?new ai(null,this):1===arguments.length?new ai(arguments[0],this):void 0},createMultiPoint:function(){var i,n,r,t,u;if(0===arguments.length)return new lr(null,this);if(1===arguments.length){if(arguments[0]instanceof Array)return new lr(arguments[0],this);if(arguments[0]instanceof Array)return i=arguments[0],this.createMultiPoint(null!==i?this.getCoordinateSequenceFactory().create(i):null);if(l(arguments[0],lt)){if(n=arguments[0],null===n)return this.createMultiPoint(new Array(0).fill(null));for(r=new Array(n.size()).fill(null),t=0;t<n.size();t++)u=this.getCoordinateSequenceFactory().create(1,n.getDimension()),ri.copy(n,t,u,0,1),r[t]=this.createPoint(u);return this.createMultiPoint(r)}}},interfaces_:function(){return[ir]},getClass:function(){return g}});g.toMultiPolygonArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toGeometryArray=function(n){if(null===n)return null;var t=new Array(n.size()).fill(null);return n.toArray(t)};g.getDefaultCoordinateSequenceFactory=function(){return oe.instance()};g.toMultiLineStringArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toLineStringArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toMultiPointArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toLinearRingArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toPointArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.toPolygonArray=function(n){var t=new Array(n.size()).fill(null);return n.toArray(t)};g.createPointFromInternalCoord=function(n,t){return t.getPrecisionModel().makePrecise(n),t.getFactory().createPoint(n)};g.serialVersionUID=-0x5ea75f2051eeb400;lu={typeStr:/^\s*(\w+)\s*\(\s*(.*)\s*\)\s*$/,emptyTypeStr:/^\s*(\w+)\s*EMPTY\s*$/,spaces:/\s+/,parenComma:/\)\s*,\s*\(/,doubleParenComma:/\)\s*\)\s*,\s*\(\s*\(/,trimParens:/^\s*\(?(.*?)\)?\s*$/};i(sp.prototype,{read:function(n){var i,r,u,t;if(n=n.replace(/[\n\r]/g," "),t=lu.typeStr.exec(n),-1!==n.search("EMPTY")&&(t=lu.emptyTypeStr.exec(n),t[2]=void 0),t&&(r=t[1].toLowerCase(),u=t[2],ls[r]&&(i=ls[r].apply(this,[u]))),void 0===i)throw new Error("Could not parse WKT "+n);return i},write:function(n){return this.extractGeometry(n)},extractGeometry:function(n){var t=n.getGeometryType().toLowerCase(),i;return lf[t]?(i=t.toUpperCase(),n.isEmpty()?i+" EMPTY":i+"("+lf[t].apply(this,[n])+")"):null}});lf={coordinate:function(n){return n.x+" "+n.y},point:function(n){return lf.coordinate.call(this,n.coordinates.coordinates[0])},multipoint:function(n){for(var i=[],t=0,r=n.geometries.length;t<r;++t)i.push("("+lf.point.apply(this,[n.geometries[t]])+")");return i.join(",")},linestring:function(n){for(var i=[],t=0,r=n.points.coordinates.length;t<r;++t)i.push(lf.coordinate.apply(this,[n.points.coordinates[t]]));return i.join(",")},linearring:function(n){for(var i=[],t=0,r=n.points.coordinates.length;t<r;++t)i.push(lf.coordinate.apply(this,[n.points.coordinates[t]]));return i.join(",")},multilinestring:function(n){for(var i=[],t=0,r=n.geometries.length;t<r;++t)i.push("("+lf.linestring.apply(this,[n.geometries[t]])+")");return i.join(",")},polygon:function(n){var i=[],t,r;for(i.push("("+lf.linestring.apply(this,[n.shell])+")"),t=0,r=n.holes.length;t<r;++t)i.push("("+lf.linestring.apply(this,[n.holes[t]])+")");return i.join(",")},multipolygon:function(n){for(var i=[],t=0,r=n.geometries.length;t<r;++t)i.push("("+lf.polygon.apply(this,[n.geometries[t]])+")");return i.join(",")},geometrycollection:function(n){for(var i=[],t=0,r=n.geometries.length;t<r;++t)i.push(this.extractGeometry(n.geometries[t]));return i.join(",")}};ls={point:function(n){if(void 0===n)return this.geometryFactory.createPoint();var t=n.trim().split(lu.spaces);return this.geometryFactory.createPoint(new r(Number.parseFloat(t[0]),Number.parseFloat(t[1])))},multipoint:function(n){if(void 0===n)return this.geometryFactory.createMultiPoint();for(var i,r=n.trim().split(","),u=[],t=0,f=r.length;t<f;++t)i=r[t].replace(lu.trimParens,"$1"),u.push(ls.point.apply(this,[i]));return this.geometryFactory.createMultiPoint(u)},linestring:function(n){if(void 0===n)return this.geometryFactory.createLineString();for(var t,u=n.trim().split(","),f=[],i=0,e=u.length;i<e;++i)t=u[i].trim().split(lu.spaces),f.push(new r(Number.parseFloat(t[0]),Number.parseFloat(t[1])));return this.geometryFactory.createLineString(f)},linearring:function(n){if(void 0===n)return this.geometryFactory.createLinearRing();for(var t,u=n.trim().split(","),f=[],i=0,e=u.length;i<e;++i)t=u[i].trim().split(lu.spaces),f.push(new r(Number.parseFloat(t[0]),Number.parseFloat(t[1])));return this.geometryFactory.createLinearRing(f)},multilinestring:function(n){if(void 0===n)return this.geometryFactory.createMultiLineString();for(var i,r=n.trim().split(lu.parenComma),u=[],t=0,f=r.length;t<f;++t)i=r[t].replace(lu.trimParens,"$1"),u.push(ls.linestring.apply(this,[i]));return this.geometryFactory.createMultiLineString(u)},polygon:function(n){if(void 0===n)return this.geometryFactory.createPolygon();for(var r,u,i,f,e=n.trim().split(lu.parenComma),o=[],t=0,s=e.length;t<s;++t)r=e[t].replace(lu.trimParens,"$1"),u=ls.linestring.apply(this,[r]),i=this.geometryFactory.createLinearRing(u.points),0===t?f=i:o.push(i);return this.geometryFactory.createPolygon(f,o)},multipolygon:function(n){if(void 0===n)return this.geometryFactory.createMultiPolygon();for(var i,r=n.trim().split(lu.doubleParenComma),u=[],t=0,f=r.length;t<f;++t)i=r[t].replace(lu.trimParens,"$1"),u.push(ls.polygon.apply(this,[i]));return this.geometryFactory.createMultiPolygon(u)},geometrycollection:function(n){if(void 0===n)return this.geometryFactory.createGeometryCollection();n=n.replace(/,\s*([A-Za-z])/g,"|$1");for(var i=n.trim().split("|"),r=[],t=0,u=i.length;t<u;++t)r.push(this.read(i[t]));return this.geometryFactory.createGeometryCollection(r)}};i(pi.prototype,{write:function(n){return this.parser.write(n)}});i(pi,{toLineString:function(n,t){if(2!==arguments.length)throw new Error("Not implemented");return"LINESTRING ( "+n.x+" "+n.y+", "+t.x+" "+t.y+" )"}});i(ht.prototype,{getIndexAlongSegment:function(n,t){return this.computeIntLineIndex(),this.intLineIndex[n][t]},getTopologySummary:function(){var n=new eu;return this.isEndPoint()&&n.append(" endpoint"),this._isProper&&n.append(" proper"),this.isCollinear()&&n.append(" collinear"),n.toString()},computeIntersection:function(n,t,i,r){this.inputLines[0][0]=n;this.inputLines[0][1]=t;this.inputLines[1][0]=i;this.inputLines[1][1]=r;this.result=this.computeIntersect(n,t,i,r)},getIntersectionNum:function(){return this.result},computeIntLineIndex:function(){if(0===arguments.length)null===this.intLineIndex&&(this.intLineIndex=Array(2).fill().map(function(){return Array(2)}),this.computeIntLineIndex(0),this.computeIntLineIndex(1));else if(1===arguments.length){var n=arguments[0],t=this.getEdgeDistance(n,0),i=this.getEdgeDistance(n,1);t>i?(this.intLineIndex[n][0]=0,this.intLineIndex[n][1]=1):(this.intLineIndex[n][0]=1,this.intLineIndex[n][1]=0)}},isProper:function(){return this.hasIntersection()&&this._isProper},setPrecisionModel:function(n){this.precisionModel=n},isInteriorIntersection:function(){if(0===arguments.length)return!!this.isInteriorIntersection(0)||!!this.isInteriorIntersection(1);if(1===arguments.length){for(var t=arguments[0],n=0;n<this.result;n++)if(!this.intPt[n].equals2D(this.inputLines[t][0])&&!this.intPt[n].equals2D(this.inputLines[t][1]))return!0;return!1}},getIntersection:function(n){return this.intPt[n]},isEndPoint:function(){return this.hasIntersection()&&!this._isProper},hasIntersection:function(){return this.result!==ht.NO_INTERSECTION},getEdgeDistance:function(n,t){return ht.computeEdgeDistance(this.intPt[t],this.inputLines[n][0],this.inputLines[n][1])},isCollinear:function(){return this.result===ht.COLLINEAR_INTERSECTION},toString:function(){return pi.toLineString(this.inputLines[0][0],this.inputLines[0][1])+" - "+pi.toLineString(this.inputLines[1][0],this.inputLines[1][1])+this.getTopologySummary()},getEndpoint:function(n,t){return this.inputLines[n][t]},isIntersection:function(n){for(var t=0;t<this.result;t++)if(this.intPt[t].equals2D(n))return!0;return!1},getIntersectionAlongSegment:function(n,t){return this.computeIntLineIndex(),this.intPt[this.intLineIndex[n][t]]},interfaces_:function(){return[]},getClass:function(){return ht}});ht.computeEdgeDistance=function(n,t,i){var u=Math.abs(i.x-t.x),f=Math.abs(i.y-t.y),r=-1,e,o;return n.equals(t)?r=0:n.equals(i)?r=u>f?u:f:(e=Math.abs(n.x-t.x),o=Math.abs(n.y-t.y),0!==(r=u>f?e:o)||n.equals(t)||(r=Math.max(e,o))),c.isTrue(!(0===r&&!n.equals(t)),"Bad distance calculation"),r};ht.nonRobustComputeEdgeDistance=function(n,t){var i=n.x-t.x,r=n.y-t.y,u=Math.sqrt(i*i+r*r);return c.isTrue(!(0===u&&!n.equals(t)),"Invalid distance calculation"),u};ht.DONT_INTERSECT=0;ht.DO_INTERSECT=1;ht.COLLINEAR=2;ht.NO_INTERSECTION=0;ht.POINT_INTERSECTION=1;ht.COLLINEAR_INTERSECTION=2;y(si,ht);i(si.prototype,{isInSegmentEnvelopes:function(n){var t=new p(this.inputLines[0][0],this.inputLines[0][1]),i=new p(this.inputLines[1][0],this.inputLines[1][1]);return t.contains(n)&&i.contains(n)},computeIntersection:function(){if(3!==arguments.length)return ht.prototype.computeIntersection.apply(this,arguments);var n=arguments[0],t=arguments[1],i=arguments[2];return this._isProper=!1,p.intersects(t,i,n)&&0===s.orientationIndex(t,i,n)&&0===s.orientationIndex(i,t,n)?(this._isProper=!0,(n.equals(t)||n.equals(i))&&(this._isProper=!1),this.result=ht.POINT_INTERSECTION,null):void(this.result=ht.NO_INTERSECTION)},normalizeToMinimum:function(n,t,i,r,u){u.x=this.smallestInAbsValue(n.x,t.x,i.x,r.x);u.y=this.smallestInAbsValue(n.y,t.y,i.y,r.y);n.x-=u.x;n.y-=u.y;t.x-=u.x;t.y-=u.y;i.x-=u.x;i.y-=u.y;r.x-=u.x;r.y-=u.y},safeHCoordinateIntersection:function(n,t,i,r){var u=null;try{u=hr.intersection(n,t,i,r)}catch(f){if(!(f instanceof vf))throw f;u=si.nearestEndpoint(n,t,i,r)}return u},intersection:function(n,t,i,u){var f=this.intersectionWithNormalization(n,t,i,u);return this.isInSegmentEnvelopes(f)||(f=new r(si.nearestEndpoint(n,t,i,u))),null!==this.precisionModel&&this.precisionModel.makePrecise(f),f},smallestInAbsValue:function(n,t,i,r){var u=n,f=Math.abs(u);return Math.abs(t)<f&&(u=t,f=Math.abs(t)),Math.abs(i)<f&&(u=i,f=Math.abs(i)),Math.abs(r)<f&&(u=r),u},checkDD:function(n,t,i,r,u){var f=rr.intersection(n,t,i,r),e=this.isInSegmentEnvelopes(f);pt.out.println("DD in env = "+e+"  --------------------- "+f);u.distance(f)>.0001&&pt.out.println("Distance = "+u.distance(f))},intersectionWithNormalization:function(n,t,i,u){var o=new r(n),s=new r(t),h=new r(i),c=new r(u),e=new r,f;return this.normalizeToEnvCentre(o,s,h,c,e),f=this.safeHCoordinateIntersection(o,s,h,c),f.x+=e.x,f.y+=e.y,f},computeCollinearIntersection:function(n,t,i,r){var u=p.intersects(n,t,i),f=p.intersects(n,t,r),e=p.intersects(i,r,n),o=p.intersects(i,r,t);return u&&f?(this.intPt[0]=i,this.intPt[1]=r,ht.COLLINEAR_INTERSECTION):e&&o?(this.intPt[0]=n,this.intPt[1]=t,ht.COLLINEAR_INTERSECTION):u&&e?(this.intPt[0]=i,this.intPt[1]=n,!i.equals(n)||f||o?ht.COLLINEAR_INTERSECTION:ht.POINT_INTERSECTION):u&&o?(this.intPt[0]=i,this.intPt[1]=t,!i.equals(t)||f||e?ht.COLLINEAR_INTERSECTION:ht.POINT_INTERSECTION):f&&e?(this.intPt[0]=r,this.intPt[1]=n,!r.equals(n)||u||o?ht.COLLINEAR_INTERSECTION:ht.POINT_INTERSECTION):f&&o?(this.intPt[0]=r,this.intPt[1]=t,!r.equals(t)||u||e?ht.COLLINEAR_INTERSECTION:ht.POINT_INTERSECTION):ht.NO_INTERSECTION},normalizeToEnvCentre:function(n,t,i,r,u){var f=n.x<t.x?n.x:t.x,e=n.y<t.y?n.y:t.y,o=n.x>t.x?n.x:t.x,s=n.y>t.y?n.y:t.y,h=i.x<r.x?i.x:r.x,c=i.y<r.y?i.y:r.y,l=i.x>r.x?i.x:r.x,a=i.y>r.y?i.y:r.y,v=f>h?f:h,y=o<l?o:l,p=e>c?e:c,w=s<a?s:a,b=(v+y)/2,k=(p+w)/2;u.x=b;u.y=k;n.x-=u.x;n.y-=u.y;t.x-=u.x;t.y-=u.y;i.x-=u.x;i.y-=u.y;r.x-=u.x;r.y-=u.y},computeIntersect:function(n,t,i,u){var f,e,o,h;return(this._isProper=!1,!p.intersects(n,t,i,u))?ht.NO_INTERSECTION:(f=s.orientationIndex(n,t,i),e=s.orientationIndex(n,t,u),f>0&&e>0||f<0&&e<0)?ht.NO_INTERSECTION:(o=s.orientationIndex(i,u,n),h=s.orientationIndex(i,u,t),o>0&&h>0||o<0&&h<0?ht.NO_INTERSECTION:0===f&&0===e&&0===o&&0===h?this.computeCollinearIntersection(n,t,i,u):(0===f||0===e||0===o||0===h?(this._isProper=!1,n.equals2D(i)||n.equals2D(u)?this.intPt[0]=n:t.equals2D(i)||t.equals2D(u)?this.intPt[0]=t:0===f?this.intPt[0]=new r(i):0===e?this.intPt[0]=new r(u):0===o?this.intPt[0]=new r(n):0===h&&(this.intPt[0]=new r(t))):(this._isProper=!0,this.intPt[0]=this.intersection(n,t,i,u)),ht.POINT_INTERSECTION))},interfaces_:function(){return[]},getClass:function(){return si}});si.nearestEndpoint=function(n,t,i,r){var e=n,f=s.distancePointLine(n,i,r),u=s.distancePointLine(t,i,r);return u<f&&(f=u,e=t),u=s.distancePointLine(i,n,t),u<f&&(f=u,e=i),u=s.distancePointLine(r,n,t),u<f&&(f=u,e=r),e};i(yo.prototype,{interfaces_:function(){return[]},getClass:function(){return yo}});yo.orientationIndex=function(n,t,i){var r=t.x-n.x,u=t.y-n.y,f=i.x-t.x,e=i.y-t.y;return yo.signOfDet2x2(r,u,f,e)};yo.signOfDet2x2=function(n,t,i,r){var u=null,f=null,e=null,o=0;if(u=1,0===n||0===r)return 0===t||0===i?0:t>0?i>0?-u:u:i>0?u:-u;if(0===t||0===i)return r>0?n>0?u:-u:n>0?-u:u;if(0<t?0<r?t<=r||(u=-u,f=n,n=i,i=f,f=t,t=r,r=f):t<=-r?(u=-u,i=-i,r=-r):(f=n,n=-i,i=f,f=t,t=-r,r=f):0<r?-t<=r?(u=-u,n=-n,t=-t):(f=-n,n=i,i=f,f=-t,t=r,r=f):t>=r?(n=-n,t=-t,i=-i,r=-r):(u=-u,f=-n,n=-i,i=f,f=-t,t=-r,r=f),0<n){if(!(0<i)||!(n<=i))return u}else{if(0<i||!(n>=i))return-u;u=-u;n=-n;i=-i}for(;;){if(o+=1,e=Math.floor(i/n),i-=e*n,(r-=e*t)<0)return-u;if(r>t)return u;if(n>i+i){if(t<r+r)return u}else{if(t>r+r)return-u;i=n-i;r=t-r;u=-u}if(0===r)return 0===i?0:-u;if(0===i||(e=Math.floor(n/i),n-=e*i,(t-=e*r)<0))return u;if(t>r)return-u;if(i>n+n){if(r<t+t)return-u}else{if(r>t+t)return u;n=i-n;t=r-t;u=-u}if(0===t)return 0===n?0:u;if(0===n)return-u}};i(po.prototype,{countSegment:function(n,t){var i,r;if(n.x<this.p.x&&t.x<this.p.x)return null;if(this.p.x===t.x&&this.p.y===t.y)return this.isPointOnSegment=!0,null;if(n.y===this.p.y&&t.y===this.p.y)return i=n.x,r=t.x,i>r&&(i=t.x,r=n.x),this.p.x>=i&&this.p.x<=r&&(this.isPointOnSegment=!0),null;if(n.y>this.p.y&&t.y<=this.p.y||t.y>this.p.y&&n.y<=this.p.y){var o=n.x-this.p.x,f=n.y-this.p.y,s=t.x-this.p.x,e=t.y-this.p.y,u=yo.signOfDet2x2(o,f,s,e);if(0===u)return this.isPointOnSegment=!0,null;e<f&&(u=-u);u>0&&this.crossingCount++}},isPointInPolygon:function(){return this.getLocation()!==t.EXTERIOR},getLocation:function(){return this.isPointOnSegment?t.BOUNDARY:this.crossingCount%2==1?t.INTERIOR:t.EXTERIOR},isOnSegment:function(){return this.isPointOnSegment},interfaces_:function(){return[]},getClass:function(){return po}});po.locatePointInRing=function(){var i,u;if(arguments[0]instanceof r&&l(arguments[1],lt)){for(var o=arguments[0],f=arguments[1],n=new po(o),i=new r,u=new r,t=1;t<f.size();t++)if(f.getCoordinate(t,i),f.getCoordinate(t-1,u),n.countSegment(i,u),n.isOnSegment())return n.getLocation();return n.getLocation()}if(arguments[0]instanceof r&&arguments[1]instanceof Array){for(var s=arguments[0],e=arguments[1],n=new po(s),t=1;t<e.length;t++)if(i=e[t],u=e[t-1],n.countSegment(i,u),n.isOnSegment())return n.getLocation();return n.getLocation()}};i(s.prototype,{interfaces_:function(){return[]},getClass:function(){return s}});s.orientationIndex=function(n,t,i){return rr.orientationIndex(n,t,i)};s.signedArea=function(){var t,h,c,o,s,e,u,n;if(arguments[0]instanceof Array){if(t=arguments[0],t.length<3)return 0;for(var u=0,e=t[0].x,n=1;n<t.length-1;n++)h=t[n].x-e,c=t[n+1].y,u+=h*(t[n-1].y-c);return u/2}if(l(arguments[0],lt)){if(o=arguments[0],s=o.size(),s<3)return 0;var a=new r,f=new r,i=new r;for(o.getCoordinate(0,f),o.getCoordinate(1,i),e=f.x,i.x-=e,u=0,n=1;n<s-1;n++)a.y=f.y,f.x=i.x,f.y=i.y,o.getCoordinate(n+1,i),i.x-=e,u+=f.x*(a.y-i.y);return u/2}};s.distanceLineLine=function(n,t,i,r){var u,f;if(n.equals(t))return s.distancePointLine(n,i,r);if(i.equals(r))return s.distancePointLine(r,n,t);if(u=!1,p.intersects(n,t,i,r))if(f=(t.x-n.x)*(r.y-i.y)-(t.y-n.y)*(r.x-i.x),0===f)u=!0;else{var h=(n.y-i.y)*(r.x-i.x)-(n.x-i.x)*(r.y-i.y),c=(n.y-i.y)*(t.x-n.x)-(n.x-i.x)*(t.y-n.y),e=c/f,o=h/f;(o<0||o>1||e<0||e>1)&&(u=!0)}else u=!0;return u?br.min(s.distancePointLine(n,i,r),s.distancePointLine(t,i,r),s.distancePointLine(i,n,t),s.distancePointLine(r,n,t)):0};s.isPointInRing=function(n,i){return s.locatePointInRing(n,i)!==t.EXTERIOR};s.computeLength=function(n){var f=n.size(),i,t;if(f<=1)return 0;i=0;t=new r;n.getCoordinate(0,t);for(var e=t.x,o=t.y,u=1;u<f;u++){n.getCoordinate(u,t);var s=t.x,h=t.y,c=s-e,l=h-o;i+=Math.sqrt(c*c+l*l);e=s;o=h}return i};s.isCCW=function(n){var o=n.length-1,c,i,r,f,e,l;if(o<3)throw new ct("Ring has fewer than 4 points, so orientation cannot be determined");for(var t=n[0],u=0,h=1;h<=o;h++)c=n[h],c.y>t.y&&(t=c,u=h);i=u;do(i-=1)<0&&(i=o);while(n[i].equals2D(t)&&i!==u);r=u;do r=(r+1)%o;while(n[r].equals2D(t)&&r!==u);return(f=n[i],e=n[r],f.equals2D(t)||e.equals2D(t)||f.equals2D(e))?!1:(l=s.computeOrientation(f,t,e),0===l?f.x>e.x:l>0)};s.locatePointInRing=function(n,t){return po.locatePointInRing(n,t)};s.distancePointLinePerpendicular=function(n,t,i){var r=(i.x-t.x)*(i.x-t.x)+(i.y-t.y)*(i.y-t.y),u=((t.y-n.y)*(i.x-t.x)-(t.x-n.x)*(i.y-t.y))/r;return Math.abs(u)*Math.sqrt(r)};s.computeOrientation=function(n,t,i){return s.orientationIndex(n,t,i)};s.distancePointLine=function(){var o,r,f,u,h,e,c,l;if(2===arguments.length){if(o=arguments[0],r=arguments[1],0===r.length)throw new ct("Line array must contain at least one vertex");for(f=o.distance(r[0]),u=0;u<r.length-1;u++)h=s.distancePointLine(o,r[u],r[u+1]),h<f&&(f=h);return f}if(3===arguments.length){var i=arguments[0],n=arguments[1],t=arguments[2];return n.x===t.x&&n.y===t.y?i.distance(n):(e=(t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y),c=((i.x-n.x)*(t.x-n.x)+(i.y-n.y)*(t.y-n.y))/e,c<=0)?i.distance(n):c>=1?i.distance(t):(l=((n.y-i.y)*(t.x-n.x)-(n.x-i.x)*(t.y-n.y))/e,Math.abs(l)*Math.sqrt(e))}};s.isOnLine=function(n,t){for(var u,f,r=new si,i=1;i<t.length;i++)if(u=t[i-1],f=t[i],r.computeIntersection(n,u,f),r.hasIntersection())return!0;return!1};s.CLOCKWISE=-1;s.RIGHT=s.CLOCKWISE;s.COUNTERCLOCKWISE=1;s.LEFT=s.COUNTERCLOCKWISE;s.COLLINEAR=0;s.STRAIGHT=s.COLLINEAR;i(b.prototype,{minX:function(){return Math.min(this.p0.x,this.p1.x)},orientationIndex:function(){var u;if(arguments[0]instanceof b){var i=arguments[0],n=s.orientationIndex(this.p0,this.p1,i.p0),t=s.orientationIndex(this.p0,this.p1,i.p1);return n>=0&&t>=0?Math.max(n,t):n<=0&&t<=0?Math.max(n,t):0}if(arguments[0]instanceof r)return u=arguments[0],s.orientationIndex(this.p0,this.p1,u)},toGeometry:function(n){return n.createLineString([this.p0,this.p1])},isVertical:function(){return this.p0.x===this.p1.x},equals:function(n){if(!(n instanceof b))return!1;var t=n;return this.p0.equals(t.p0)&&this.p1.equals(t.p1)},intersection:function(n){var t=new si;return t.computeIntersection(this.p0,this.p1,n.p0,n.p1),t.hasIntersection()?t.getIntersection(0):null},project:function(){var n,s,t,e,o;if(arguments[0]instanceof r)return(n=arguments[0],n.equals(this.p0)||n.equals(this.p1))?new r(n):(s=this.projectionFactor(n),t=new r,t.x=this.p0.x+s*(this.p1.x-this.p0.x),t.y=this.p0.y+s*(this.p1.y-this.p0.y),t);if(arguments[0]instanceof b){var i=arguments[0],u=this.projectionFactor(i.p0),f=this.projectionFactor(i.p1);return u>=1&&f>=1?null:u<=0&&f<=0?null:(e=this.project(i.p0),u<0&&(e=this.p0),u>1&&(e=this.p1),o=this.project(i.p1),f<0&&(o=this.p0),f>1&&(o=this.p1),new b(e,o))}},normalize:function(){this.p1.compareTo(this.p0)<0&&this.reverse()},angle:function(){return Math.atan2(this.p1.y-this.p0.y,this.p1.x-this.p0.x)},getCoordinate:function(n){return 0===n?this.p0:this.p1},distancePerpendicular:function(n){return s.distancePointLinePerpendicular(n,this.p0,this.p1)},minY:function(){return Math.min(this.p0.y,this.p1.y)},midPoint:function(){return b.midPoint(this.p0,this.p1)},projectionFactor:function(n){if(n.equals(this.p0))return 0;if(n.equals(this.p1))return 1;var t=this.p1.x-this.p0.x,i=this.p1.y-this.p0.y,r=t*t+i*i;return r<=0?v.NaN:((n.x-this.p0.x)*t+(n.y-this.p0.y)*i)/r},closestPoints:function(n){var u=this.intersection(n),f,e,o;if(null!==u)return[u,u];var t=new Array(2).fill(null),i=v.MAX_VALUE,r=null,s=this.closestPoint(n.p0);return i=s.distance(n.p0),t[0]=s,t[1]=n.p0,f=this.closestPoint(n.p1),(r=f.distance(n.p1))<i&&(i=r,t[0]=f,t[1]=n.p1),e=n.closestPoint(this.p0),(r=e.distance(this.p0))<i&&(i=r,t[0]=this.p0,t[1]=e),o=n.closestPoint(this.p1),r=o.distance(this.p1),r<i&&(i=r,t[0]=this.p1,t[1]=o),t},closestPoint:function(n){var t=this.projectionFactor(n);return t>0&&t<1?this.project(n):this.p0.distance(n)<this.p1.distance(n)?this.p0:this.p1},maxX:function(){return Math.max(this.p0.x,this.p1.x)},getLength:function(){return this.p0.distance(this.p1)},compareTo:function(n){var t=n,i=this.p0.compareTo(t.p0);return 0!==i?i:this.p1.compareTo(t.p1)},reverse:function(){var n=this.p0;this.p0=this.p1;this.p1=n},equalsTopo:function(n){return this.p0.equals(n.p0)&&this.p1.equals(n.p1)||this.p0.equals(n.p1)&&this.p1.equals(n.p0)},lineIntersection:function(n){try{return hr.intersection(this.p0,this.p1,n.p0,n.p1)}catch(n){if(!(n instanceof vf))throw n;}return null},maxY:function(){return Math.max(this.p0.y,this.p1.y)},pointAlongOffset:function(n,t){var s=this.p0.x+n*(this.p1.x-this.p0.x),h=this.p0.y+n*(this.p1.y-this.p0.y),i=this.p1.x-this.p0.x,u=this.p1.y-this.p0.y,f=Math.sqrt(i*i+u*u),e=0,o=0;if(0!==t){if(f<=0)throw new IllegalStateException("Cannot compute offset from zero-length line segment");e=t*i/f;o=t*u/f}return new r(s-o,h+e)},setCoordinates:function(){var n,t,i;1===arguments.length?(n=arguments[0],this.setCoordinates(n.p0,n.p1)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.p0.x=t.x,this.p0.y=t.y,this.p1.x=i.x,this.p1.y=i.y)},segmentFraction:function(n){var t=this.projectionFactor(n);return t<0?t=0:(t>1||v.isNaN(t))&&(t=1),t},toString:function(){return"LINESTRING( "+this.p0.x+" "+this.p0.y+", "+this.p1.x+" "+this.p1.y+")"},isHorizontal:function(){return this.p0.y===this.p1.y},distance:function(){var n,t;return arguments[0]instanceof b?(n=arguments[0],s.distanceLineLine(this.p0,this.p1,n.p0,n.p1)):arguments[0]instanceof r?(t=arguments[0],s.distancePointLine(t,this.p0,this.p1)):void 0},pointAlong:function(n){var t=new r;return t.x=this.p0.x+n*(this.p1.x-this.p0.x),t.y=this.p0.y+n*(this.p1.y-this.p0.y),t},hashCode:function(){var t=java.lang.Double.doubleToLongBits(this.p0.x),i,n;return t^=31*java.lang.Double.doubleToLongBits(this.p0.y),i=Math.trunc(t)^Math.trunc(t>>32),n=java.lang.Double.doubleToLongBits(this.p1.x),n^=31*java.lang.Double.doubleToLongBits(this.p1.y),i^Math.trunc(n)^Math.trunc(n>>32)},interfaces_:function(){return[sr,ir]},getClass:function(){return b}});b.midPoint=function(n,t){return new r((n.x+t.x)/2,(n.y+t.y)/2)};b.serialVersionUID=0x2d2172135f411c00;i(ot.prototype,{isIntersects:function(){return!this.isDisjoint()},isCovers:function(){return(ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])||ot.isTrue(this.matrix[t.INTERIOR][t.BOUNDARY])||ot.isTrue(this.matrix[t.BOUNDARY][t.INTERIOR])||ot.isTrue(this.matrix[t.BOUNDARY][t.BOUNDARY]))&&this.matrix[t.EXTERIOR][t.INTERIOR]===e.FALSE&&this.matrix[t.EXTERIOR][t.BOUNDARY]===e.FALSE},isCoveredBy:function(){return(ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])||ot.isTrue(this.matrix[t.INTERIOR][t.BOUNDARY])||ot.isTrue(this.matrix[t.BOUNDARY][t.INTERIOR])||ot.isTrue(this.matrix[t.BOUNDARY][t.BOUNDARY]))&&this.matrix[t.INTERIOR][t.EXTERIOR]===e.FALSE&&this.matrix[t.BOUNDARY][t.EXTERIOR]===e.FALSE},set:function(){var t,n,i,r;if(1===arguments.length)for(t=arguments[0],n=0;n<t.length;n++)i=Math.trunc(n/3),r=n%3,this.matrix[i][r]=e.toDimensionValue(t.charAt(n));else if(3===arguments.length){var u=arguments[0],f=arguments[1],o=arguments[2];this.matrix[u][f]=o}},isContains:function(){return ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&this.matrix[t.EXTERIOR][t.INTERIOR]===e.FALSE&&this.matrix[t.EXTERIOR][t.BOUNDARY]===e.FALSE},setAtLeast:function(){var t,n,i,r;if(1===arguments.length)for(t=arguments[0],n=0;n<t.length;n++)i=Math.trunc(n/3),r=n%3,this.setAtLeast(i,r,e.toDimensionValue(t.charAt(n)));else if(3===arguments.length){var u=arguments[0],f=arguments[1],o=arguments[2];this.matrix[u][f]<o&&(this.matrix[u][f]=o)}},setAtLeastIfValid:function(n,t,i){n>=0&&t>=0&&this.setAtLeast(n,t,i)},isWithin:function(){return ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&this.matrix[t.INTERIOR][t.EXTERIOR]===e.FALSE&&this.matrix[t.BOUNDARY][t.EXTERIOR]===e.FALSE},isTouches:function(n,i){return n>i?this.isTouches(i,n):(n===e.A&&i===e.A||n===e.L&&i===e.L||n===e.L&&i===e.A||n===e.P&&i===e.A||n===e.P&&i===e.L)&&this.matrix[t.INTERIOR][t.INTERIOR]===e.FALSE&&(ot.isTrue(this.matrix[t.INTERIOR][t.BOUNDARY])||ot.isTrue(this.matrix[t.BOUNDARY][t.INTERIOR])||ot.isTrue(this.matrix[t.BOUNDARY][t.BOUNDARY]))},isOverlaps:function(n,i){return n===e.P&&i===e.P||n===e.A&&i===e.A?ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&ot.isTrue(this.matrix[t.INTERIOR][t.EXTERIOR])&&ot.isTrue(this.matrix[t.EXTERIOR][t.INTERIOR]):n===e.L&&i===e.L&&1===this.matrix[t.INTERIOR][t.INTERIOR]&&ot.isTrue(this.matrix[t.INTERIOR][t.EXTERIOR])&&ot.isTrue(this.matrix[t.EXTERIOR][t.INTERIOR])},isEquals:function(n,i){return n===i&&ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&this.matrix[t.INTERIOR][t.EXTERIOR]===e.FALSE&&this.matrix[t.BOUNDARY][t.EXTERIOR]===e.FALSE&&this.matrix[t.EXTERIOR][t.INTERIOR]===e.FALSE&&this.matrix[t.EXTERIOR][t.BOUNDARY]===e.FALSE},toString:function(){for(var t,i=new eu("123456789"),n=0;n<3;n++)for(t=0;t<3;t++)i.setCharAt(3*n+t,e.toDimensionSymbol(this.matrix[n][t]));return i.toString()},setAll:function(n){for(var i,t=0;t<3;t++)for(i=0;i<3;i++)this.matrix[t][i]=n},get:function(n,t){return this.matrix[n][t]},transpose:function(){var n=this.matrix[1][0];return this.matrix[1][0]=this.matrix[0][1],this.matrix[0][1]=n,n=this.matrix[2][0],this.matrix[2][0]=this.matrix[0][2],this.matrix[0][2]=n,n=this.matrix[2][1],this.matrix[2][1]=this.matrix[1][2],this.matrix[1][2]=n,this},matches:function(n){var t,i;if(9!==n.length)throw new ct("Should be length 9: "+n);for(t=0;t<3;t++)for(i=0;i<3;i++)if(!ot.matches(this.matrix[t][i],n.charAt(3*t+i)))return!1;return!0},add:function(n){for(var i,t=0;t<3;t++)for(i=0;i<3;i++)this.setAtLeast(t,i,n.get(t,i))},isDisjoint:function(){return this.matrix[t.INTERIOR][t.INTERIOR]===e.FALSE&&this.matrix[t.INTERIOR][t.BOUNDARY]===e.FALSE&&this.matrix[t.BOUNDARY][t.INTERIOR]===e.FALSE&&this.matrix[t.BOUNDARY][t.BOUNDARY]===e.FALSE},isCrosses:function(n,i){return n===e.P&&i===e.L||n===e.P&&i===e.A||n===e.L&&i===e.A?ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&ot.isTrue(this.matrix[t.INTERIOR][t.EXTERIOR]):n===e.L&&i===e.P||n===e.A&&i===e.P||n===e.A&&i===e.L?ot.isTrue(this.matrix[t.INTERIOR][t.INTERIOR])&&ot.isTrue(this.matrix[t.EXTERIOR][t.INTERIOR]):n===e.L&&i===e.L&&0===this.matrix[t.INTERIOR][t.INTERIOR]},interfaces_:function(){return[ph]},getClass:function(){return ot}});ot.matches=function(){var n,t,i,r;return Number.isInteger(arguments[0])&&"string"==typeof arguments[1]?(n=arguments[0],t=arguments[1],t===e.SYM_DONTCARE||t===e.SYM_TRUE&&(n>=0||n===e.TRUE)||t===e.SYM_FALSE&&n===e.FALSE||t===e.SYM_P&&n===e.P||t===e.SYM_L&&n===e.L||t===e.SYM_A&&n===e.A):"string"==typeof arguments[0]&&"string"==typeof arguments[1]?(i=arguments[0],r=arguments[1],new ot(i).matches(r)):void 0};ot.isTrue=function(n){return n>=0||n===e.TRUE};hb=Object.freeze({Coordinate:r,CoordinateList:ii,Envelope:p,LineSegment:b,GeometryFactory:g,Geometry:h,Point:bt,LineString:d,LinearRing:gt,Polygon:st,GeometryCollection:nt,MultiPoint:lr,MultiLineString:cr,MultiPolygon:ai,Dimension:e,IntersectionMatrix:ot,PrecisionModel:ft});i(df.prototype,{addPoint:function(n){this.ptCount+=1;this.ptCentSum.x+=n.x;this.ptCentSum.y+=n.y},setBasePoint:function(n){null===this.areaBasePt&&(this.areaBasePt=n)},addLineSegments:function(n){for(var i,u,f,r=0,t=0;t<n.length-1;t++)i=n[t].distance(n[t+1]),0!==i&&(r+=i,u=(n[t].x+n[t+1].x)/2,this.lineCentSum.x+=i*u,f=(n[t].y+n[t+1].y)/2,this.lineCentSum.y+=i*f);this.totalLength+=r;0===r&&n.length>0&&this.addPoint(n[0])},addHole:function(n){for(var i=s.isCCW(n),t=0;t<n.length-1;t++)this.addTriangle(this.areaBasePt,n[t],n[t+1],i);this.addLineSegments(n)},getCentroid:function(){var n=new r;if(Math.abs(this.areasum2)>0)n.x=this.cg3.x/3/this.areasum2,n.y=this.cg3.y/3/this.areasum2;else if(this.totalLength>0)n.x=this.lineCentSum.x/this.totalLength,n.y=this.lineCentSum.y/this.totalLength;else{if(!(this.ptCount>0))return null;n.x=this.ptCentSum.x/this.ptCount;n.y=this.ptCentSum.y/this.ptCount}return n},addShell:function(n){n.length>0&&this.setBasePoint(n[0]);for(var i=!s.isCCW(n),t=0;t<n.length-1;t++)this.addTriangle(this.areaBasePt,n[t],n[t+1],i);this.addLineSegments(n)},addTriangle:function(n,t,i,r){var f=r?1:-1,u;df.centroid3(n,t,i,this.triangleCent3);u=df.area2(n,t,i);this.cg3.x+=f*u*this.triangleCent3.x;this.cg3.y+=f*u*this.triangleCent3.y;this.areasum2+=f*u},add:function(){var i,n,u,r,t;if(arguments[0]instanceof st)for(i=arguments[0],this.addShell(i.getExteriorRing().getCoordinates()),t=0;t<i.getNumInteriorRing();t++)this.addHole(i.getInteriorRingN(t).getCoordinates());else if(arguments[0]instanceof h){if(n=arguments[0],n.isEmpty())return null;if(n instanceof bt)this.addPoint(n.getCoordinate());else if(n instanceof d)this.addLineSegments(n.getCoordinates());else if(n instanceof st)u=n,this.add(u);else if(n instanceof nt)for(r=n,t=0;t<r.getNumGeometries();t++)this.add(r.getGeometryN(t))}},interfaces_:function(){return[]},getClass:function(){return df}});df.area2=function(n,t,i){return(t.x-n.x)*(i.y-n.y)-(i.x-n.x)*(t.y-n.y)};df.centroid3=function(n,t,i,r){return r.x=n.x+t.x+i.x,r.y=n.y+t.y+i.y,null};df.getCentroid=function(n){return new df(n).getCentroid()};va.prototype=new Error;va.prototype.name="EmptyStackException";gi.prototype=new ei;gi.prototype.add=function(n){return this.array_.push(n),!0};gi.prototype.get=function(n){if(n<0||n>=this.size())throw new IndexOutOfBoundsException;return this.array_[n]};gi.prototype.push=function(n){return this.array_.push(n),n};gi.prototype.pop=function(){if(0===this.array_.length)throw new va;return this.array_.pop()};gi.prototype.peek=function(){if(0===this.array_.length)throw new va;return this.array_[this.array_.length-1]};gi.prototype.empty=function(){return 0===this.array_.length};gi.prototype.isEmpty=function(){return this.empty()};gi.prototype.search=function(n){return this.array_.indexOf(n)};gi.prototype.size=function(){return this.array_.length};gi.prototype.toArray=function(){for(var t=[],n=0,i=this.array_.length;n<i;n++)t.push(this.array_[n]);return t};i(ys.prototype,{filter:function(n){this.treeSet.contains(n)||(this.list.add(n),this.treeSet.add(n))},getCoordinates:function(){var n=new Array(this.list.size()).fill(null);return this.list.toArray(n)},interfaces_:function(){return[pe]},getClass:function(){return ys}});ys.filterCoordinates=function(n){for(var i=new ys,t=0;t<n.length;t++)i.filter(n[t]);return i.getCoordinates()};i(gf.prototype,{preSort:function(n){for(var i=null,t=1;t<n.length;t++)(n[t].y<n[0].y||n[t].y===n[0].y&&n[t].x<n[0].x)&&(i=n[0],n[0]=n[t],n[t]=i);return pf.sort(n,1,n.length,new ps(n[0])),n},computeOctRing:function(n){var i=this.computeOctPts(n),t=new ii;return t.add(i,!1),t.size()<3?null:(t.closeRing(),t.toCoordinateArray())},lineOrPolygon:function(n){if(n=this.cleanRing(n),3===n.length)return this.geomFactory.createLineString([n[0],n[1]]);var t=this.geomFactory.createLinearRing(n);return this.geomFactory.createPolygon(t,null)},cleanRing:function(n){var t,e,o;c.equals(n[0],n[n.length-1]);for(var i=new u,f=null,r=0;r<=n.length-2;r++)t=n[r],e=n[r+1],t.equals(e)||null!==f&&this.isBetween(f,t,e)||(i.add(t),f=t);return i.add(n[n.length-1]),o=new Array(i.size()).fill(null),i.toArray(o)},isBetween:function(n,t,i){return 0!==s.computeOrientation(n,t,i)?!1:n.x!==i.x&&(n.x<=t.x&&t.x<=i.x||i.x<=t.x&&t.x<=n.x)?!0:n.y!==i.y&&(n.y<=t.y&&t.y<=i.y||i.y<=t.y&&t.y<=n.y)?!0:!1},reduce:function(n){var i=this.computeOctRing(n),r,t,u;if(null===i)return n;for(r=new di,t=0;t<i.length;t++)r.add(i[t]);for(t=0;t<n.length;t++)s.isPointInRing(n[t],i)||r.add(n[t]);return u=w.toCoordinateArray(r),u.length<3?this.padArray3(u):u},getConvexHull:function(){var n;if(0===this.inputPts.length)return this.geomFactory.createGeometryCollection(null);if(1===this.inputPts.length)return this.geomFactory.createPoint(this.inputPts[0]);if(2===this.inputPts.length)return this.geomFactory.createLineString(this.inputPts);n=this.inputPts;this.inputPts.length>50&&(n=this.reduce(this.inputPts));var t=this.preSort(n),i=this.grahamScan(t),r=this.toCoordinateArray(i);return this.lineOrPolygon(r)},padArray3:function(n){for(var i=new Array(3).fill(null),t=0;t<i.length;t++)i[t]=t<n.length?n[t]:n[0];return i},computeOctPts:function(n){for(var i,t=new Array(8).fill(null),r=0;r<t.length;r++)t[r]=n[0];for(i=1;i<n.length;i++)n[i].x<t[0].x&&(t[0]=n[i]),n[i].x-n[i].y<t[1].x-t[1].y&&(t[1]=n[i]),n[i].y>t[2].y&&(t[2]=n[i]),n[i].x+n[i].y>t[3].x+t[3].y&&(t[3]=n[i]),n[i].x>t[4].x&&(t[4]=n[i]),n[i].x-n[i].y>t[5].x-t[5].y&&(t[5]=n[i]),n[i].y<t[6].y&&(t[6]=n[i]),n[i].x+n[i].y<t[7].x+t[7].y&&(t[7]=n[i]);return t},toCoordinateArray:function(n){for(var r,i=new Array(n.size()).fill(null),t=0;t<n.size();t++)r=n.get(t),i[t]=r;return i},grahamScan:function(n){var i=null,t=new gi,r;for(i=t.push(n[0]),i=t.push(n[1]),i=t.push(n[2]),r=3;r<n.length;r++){for(i=t.pop();!t.empty()&&s.computeOrientation(t.peek(),i,n[r])>0;)i=t.pop();i=t.push(i);i=t.push(n[r])}return i=t.push(n[0]),t},interfaces_:function(){return[]},getClass:function(){return gf}});gf.extractCoordinates=function(n){var t=new ys;return n.apply(t),t.getCoordinates()};i(ps.prototype,{compare:function(n,t){var i=n,r=t;return ps.polarCompare(this.origin,i,r)},interfaces_:function(){return[ve]},getClass:function(){return ps}});ps.polarCompare=function(n,t,i){var f=t.x-n.x,e=t.y-n.y,o=i.x-n.x,h=i.y-n.y,c=s.computeOrientation(n,t,i),r,u;return c===s.COUNTERCLOCKWISE?1:c===s.CLOCKWISE?-1:(r=f*f+e*e,u=o*o+h*h,r<u?-1:r>u?1:0)};gf.RadialComparator=ps;i(ur.prototype,{transformPoint:function(n){return this.factory.createPoint(this.transformCoordinates(n.getCoordinateSequence(),n))},transformPolygon:function(n){var o=!0,t=this.transformLinearRing(n.getExteriorRing(),n),r,f,i,e;for(null!==t&&t instanceof gt&&!t.isEmpty()||(o=!1),r=new u,f=0;f<n.getNumInteriorRing();f++)i=this.transformLinearRing(n.getInteriorRingN(f),n),null===i||i.isEmpty()||(i instanceof gt||(o=!1),r.add(i));return o?this.factory.createPolygon(t,r.toArray([])):(e=new u,null!==t&&e.add(t),e.addAll(r),this.factory.buildGeometry(e))},createCoordinateSequence:function(n){return this.factory.getCoordinateSequenceFactory().create(n)},getInputGeometry:function(){return this.inputGeom},transformMultiLineString:function(n){for(var i,r=new u,t=0;t<n.getNumGeometries();t++)i=this.transformLineString(n.getGeometryN(t),n),null!==i&&(i.isEmpty()||r.add(i));return this.factory.buildGeometry(r)},transformCoordinates:function(n){return this.copy(n)},transformLineString:function(n){return this.factory.createLineString(this.transformCoordinates(n.getCoordinateSequence(),n))},transformMultiPoint:function(n){for(var i,r=new u,t=0;t<n.getNumGeometries();t++)i=this.transformPoint(n.getGeometryN(t),n),null!==i&&(i.isEmpty()||r.add(i));return this.factory.buildGeometry(r)},transformMultiPolygon:function(n){for(var i,r=new u,t=0;t<n.getNumGeometries();t++)i=this.transformPolygon(n.getGeometryN(t),n),null!==i&&(i.isEmpty()||r.add(i));return this.factory.buildGeometry(r)},copy:function(n){return n.copy()},transformGeometryCollection:function(n){for(var r,t=new u,i=0;i<n.getNumGeometries();i++)r=this.transform(n.getGeometryN(i)),null!==r&&(this.pruneEmptyGeometry&&r.isEmpty()||t.add(r));return this.preserveGeometryCollectionType?this.factory.createGeometryCollection(g.toGeometryArray(t)):this.factory.buildGeometry(t)},transform:function(n){if(this.inputGeom=n,this.factory=n.getFactory(),n instanceof bt)return this.transformPoint(n,null);if(n instanceof lr)return this.transformMultiPoint(n,null);if(n instanceof gt)return this.transformLinearRing(n,null);if(n instanceof d)return this.transformLineString(n,null);if(n instanceof cr)return this.transformMultiLineString(n,null);if(n instanceof st)return this.transformPolygon(n,null);if(n instanceof ai)return this.transformMultiPolygon(n,null);if(n instanceof nt)return this.transformGeometryCollection(n,null);throw new ct("Unknown Geometry subtype: "+n.getClass().getName());},transformLinearRing:function(n){var t=this.transformCoordinates(n.getCoordinateSequence(),n),i;return null===t?this.factory.createLinearRing(null):(i=t.size(),i>0&&i<4&&!this.preserveType?this.factory.createLineString(t):this.factory.createLinearRing(t))},interfaces_:function(){return[]},getClass:function(){return ur}});i(ws.prototype,{snapVertices:function(n,t){for(var e,u,f=this._isClosed?n.size()-1:n.size(),i=0;i<f;i++)e=n.get(i),u=this.findSnapForVertex(e,t),null!==u&&(n.set(i,new r(u)),0===i&&this._isClosed&&n.set(n.size()-1,new r(u)))},findSnapForVertex:function(n,t){for(var i=0;i<t.length;i++){if(n.equals2D(t[i]))return null;if(n.distance(t[i])<this.snapTolerance)return t[i]}return null},snapTo:function(n){var t=new ii(this.srcPts);return this.snapVertices(t,n),this.snapSegments(t,n),t.toCoordinateArray()},snapSegments:function(n,t){var u,i,f,e;if(0===t.length)return null;for(u=t.length,t[0].equals2D(t[t.length-1])&&(u=t.length-1),i=0;i<u;i++)f=t[i],e=this.findSegmentIndexToSnap(f,n),e>=0&&n.add(e+1,new r(f),!1)},findSegmentIndexToSnap:function(n,t){for(var r,u=v.MAX_VALUE,f=-1,i=0;i<t.size()-1;i++){if(this.seg.p0=t.get(i),this.seg.p1=t.get(i+1),this.seg.p0.equals2D(n)||this.seg.p1.equals2D(n)){if(this.allowSnappingToSourceVertices)continue;return-1}r=this.seg.distance(n);r<this.snapTolerance&&r<u&&(u=r,f=i)}return f},setAllowSnappingToSourceVertices:function(n){this.allowSnappingToSourceVertices=n},interfaces_:function(){return[]},getClass:function(){return ws}});ws.isClosed=function(n){return!(n.length<=1)&&n[0].equals2D(n[n.length-1])};i(nr.prototype,{snapTo:function(n,t){return new dh(t,this.extractTargetCoordinates(n)).transform(this.srcGeom)},snapToSelf:function(n,t){var u=this.extractTargetCoordinates(this.srcGeom),f=new dh(n,u,!0),r=f.transform(this.srcGeom),i=r;return t&&l(i,bf)&&(i=r.buffer(0)),i},computeSnapTolerance:function(n){return this.computeMinimumSegmentLength(n)/10},extractTargetCoordinates:function(n){for(var i=new di,r=n.getCoordinates(),t=0;t<r.length;t++)i.add(r[t]);return i.toArray(new Array(0).fill(null))},computeMinimumSegmentLength:function(n){for(var r,i=v.MAX_VALUE,t=0;t<n.length-1;t++)r=n[t].distance(n[t+1]),r<i&&(i=r);return i},interfaces_:function(){return[]},getClass:function(){return nr}});nr.snap=function(n,t,i){var r=new Array(2).fill(null),f=new nr(n),u;return r[0]=f.snapTo(t,i),u=new nr(t),r[1]=u.snapTo(r[0],i),r};nr.computeOverlaySnapTolerance=function(){var t,u,f;if(1===arguments.length){var i=arguments[0],n=nr.computeSizeBasedSnapTolerance(i),r=i.getPrecisionModel();return r.getType()===ft.FIXED&&(t=2/r.getScale()/1.415,t>n&&(n=t)),n}if(2===arguments.length)return u=arguments[0],f=arguments[1],Math.min(nr.computeOverlaySnapTolerance(u),nr.computeOverlaySnapTolerance(f))};nr.computeSizeBasedSnapTolerance=function(n){var t=n.getEnvelopeInternal();return Math.min(t.getHeight(),t.getWidth())*nr.SNAP_PRECISION_FACTOR};nr.snapToSelf=function(n,t,i){return new nr(n).snapToSelf(t,i)};nr.SNAP_PRECISION_FACTOR=1e-9;y(dh,ur);i(dh.prototype,{snapLine:function(n,t){var i=new ws(n,this.snapTolerance);return i.setAllowSnappingToSourceVertices(this.isSelfSnap),i.snapTo(t)},transformCoordinates:function(n){var t=n.toCoordinateArray(),i=this.snapLine(t,this.snapPts);return this.factory.getCoordinateSequenceFactory().create(i)},interfaces_:function(){return[]},getClass:function(){return dh}});i(nu.prototype,{getCommon:function(){return v.longBitsToDouble(this.commonBits)},add:function(n){var t=v.doubleToLongBits(n);return this.isFirst?(this.commonBits=t,this.commonSignExp=nu.signExpBits(this.commonBits),this.isFirst=!1,null):nu.signExpBits(t)!==this.commonSignExp?(this.commonBits=0,null):(this.commonMantissaBitsCount=nu.numCommonMostSigMantissaBits(this.commonBits,t),void(this.commonBits=nu.zeroLowerBits(this.commonBits,64-(12+this.commonMantissaBitsCount))))},toString:function(){if(1===arguments.length){var t=arguments[0],r=v.longBitsToDouble(t),u=Long.toBinaryString(t),i="0000000000000000000000000000000000000000000000000000000000000000"+u,n=i.substring(i.length-64);return n.substring(0,1)+"  "+n.substring(1,12)+"(exp) "+n.substring(12)+" [ "+r+" ]"}},interfaces_:function(){return[]},getClass:function(){return nu}});nu.getBit=function(n,t){return 0!=(n&1<<t)?1:0};nu.signExpBits=function(n){return n>>52};nu.zeroLowerBits=function(n,t){return n&~((1<<t)-1)};nu.numCommonMostSigMantissaBits=function(n,t){for(var r=0,i=52;i>=0;i--){if(nu.getBit(n,i)!==nu.getBit(t,i))return r;r++}return 52};i(gh.prototype,{addCommonBits:function(n){var t=new nc(this.commonCoord);n.apply(t);n.geometryChanged()},removeCommonBits:function(n){var t,i;return 0===this.commonCoord.x&&0===this.commonCoord.y?n:(t=new r(this.commonCoord),t.x=-t.x,t.y=-t.y,i=new nc(t),n.apply(i),n.geometryChanged(),n)},getCommonCoordinate:function(){return this.commonCoord},add:function(n){n.apply(this.ccFilter);this.commonCoord=this.ccFilter.getCommonCoordinate()},interfaces_:function(){return[]},getClass:function(){return gh}});i(ya.prototype,{filter:function(n){this.commonBitsX.add(n.x);this.commonBitsY.add(n.y)},getCommonCoordinate:function(){return new r(this.commonBitsX.getCommon(),this.commonBitsY.getCommon())},interfaces_:function(){return[pe]},getClass:function(){return ya}});i(nc.prototype,{filter:function(n,t){var i=n.getOrdinate(t,0)+this.trans.x,r=n.getOrdinate(t,1)+this.trans.y;n.setOrdinate(t,0,i);n.setOrdinate(t,1,r)},isDone:function(){return!1},isGeometryChanged:function(){return!0},interfaces_:function(){return[vo]},getClass:function(){return nc}});gh.CommonCoordinateFilter=ya;gh.Translater=nc;i(wo.prototype,{next:function(){if(this.atStart)return this.atStart=!1,wo.isAtomic(this.parent)&&this.index++,this.parent;if(null!==this.subcollectionIterator){if(this.subcollectionIterator.hasNext())return this.subcollectionIterator.next();this.subcollectionIterator=null}if(this.index>=this.max)throw new vs;var n=this.parent.getGeometryN(this.index++);return n instanceof nt?(this.subcollectionIterator=new wo(n),this.subcollectionIterator.next()):n},remove:function(){throw new UnsupportedOperationException(this.getClass().getName());},hasNext:function(){if(this.atStart)return!0;if(null!==this.subcollectionIterator){if(this.subcollectionIterator.hasNext())return!0;this.subcollectionIterator=null}return!(this.index>=this.max)},interfaces_:function(){return[wh]},getClass:function(){return wo}});wo.isAtomic=function(n){return!(n instanceof nt)};i(bo.prototype,{locateInternal:function(){var o,n,l,h,f,a,c,i,e,u,v;if(arguments[0]instanceof r&&arguments[1]instanceof st){if((o=arguments[0],n=arguments[1],n.isEmpty())||(l=n.getExteriorRing(),h=this.locateInPolygonRing(o,l),h===t.EXTERIOR))return t.EXTERIOR;if(h===t.BOUNDARY)return t.BOUNDARY;for(f=0;f<n.getNumInteriorRing();f++){if(a=n.getInteriorRingN(f),c=this.locateInPolygonRing(o,a),c===t.INTERIOR)return t.EXTERIOR;if(c===t.BOUNDARY)return t.BOUNDARY}return t.INTERIOR}return arguments[0]instanceof r&&arguments[1]instanceof d?(i=arguments[0],e=arguments[1],!e.getEnvelopeInternal().intersects(i))?t.EXTERIOR:(u=e.getCoordinates(),e.isClosed()||!i.equals(u[0])&&!i.equals(u[u.length-1])?s.isOnLine(i,u)?t.INTERIOR:t.EXTERIOR:t.BOUNDARY):arguments[0]instanceof r&&arguments[1]instanceof bt?(v=arguments[0],arguments[1].getCoordinate().equals2D(v)?t.INTERIOR:t.EXTERIOR):void 0},locateInPolygonRing:function(n,i){return i.getEnvelopeInternal().intersects(n)?s.locatePointInRing(n,i.getCoordinates()):t.EXTERIOR},intersects:function(n,i){return this.locate(n,i)!==t.EXTERIOR},updateLocationInfo:function(n){n===t.INTERIOR&&(this.isIn=!0);n===t.BOUNDARY&&this.numBoundaries++},computeLocation:function(n,t){var r,o,u,i,s,f,e;if(t instanceof bt&&this.updateLocationInfo(this.locateInternal(n,t)),t instanceof d)this.updateLocationInfo(this.locateInternal(n,t));else if(t instanceof st)this.updateLocationInfo(this.locateInternal(n,t));else if(t instanceof cr)for(r=t,i=0;i<r.getNumGeometries();i++)o=r.getGeometryN(i),this.updateLocationInfo(this.locateInternal(n,o));else if(t instanceof ai)for(u=t,i=0;i<u.getNumGeometries();i++)s=u.getGeometryN(i),this.updateLocationInfo(this.locateInternal(n,s));else if(t instanceof nt)for(f=new wo(t);f.hasNext();)e=f.next(),e!==t&&this.computeLocation(n,e)},locate:function(n,i){return i.isEmpty()?t.EXTERIOR:i instanceof d?this.locateInternal(n,i):i instanceof st?this.locateInternal(n,i):(this.isIn=!1,this.numBoundaries=0,this.computeLocation(n,i),this.boundaryRule.isInBoundary(this.numBoundaries)?t.BOUNDARY:this.numBoundaries>0||this.isIn?t.INTERIOR:t.EXTERIOR)},interfaces_:function(){return[]},getClass:function(){return bo}});i(bs.prototype,{interfaces_:function(){return[]},getClass:function(){return bs}});bs.octant=function(){var t,n,i,u;if("number"==typeof arguments[0]&&"number"==typeof arguments[1]){if(t=arguments[0],n=arguments[1],0===t&&0===n)throw new ct("Cannot compute the octant for point ( "+t+", "+n+" )");return i=Math.abs(t),u=Math.abs(n),t>=0?n>=0?i>=u?0:1:i>=u?7:6:n>=0?i>=u?3:2:i>=u?4:5}if(arguments[0]instanceof r&&arguments[1]instanceof r){var f=arguments[0],e=arguments[1],o=e.x-f.x,s=e.y-f.y;if(0===o&&0===s)throw new ct("Cannot compute the octant for two identical points "+f);return bs.octant(o,s)}};i(tc.prototype,{getCoordinates:function(){},size:function(){},getCoordinate:function(){},isClosed:function(){},setData:function(){},getData:function(){},interfaces_:function(){return[]},getClass:function(){return tc}});i(hp.prototype,{getCoordinates:function(){return this.pts},size:function(){return this.pts.length},getCoordinate:function(n){return this.pts[n]},isClosed:function(){return this.pts[0].equals(this.pts[this.pts.length-1])},getSegmentOctant:function(n){return n===this.pts.length-1?-1:bs.octant(this.getCoordinate(n),this.getCoordinate(n+1))},setData:function(n){this.data=n},getData:function(){return this.data},toString:function(){return pi.toLineString(new gr(this.pts))},interfaces_:function(){return[tc]},getClass:function(){return hp}});i(pa.prototype,{getBounds:function(){},interfaces_:function(){return[]},getClass:function(){return pa}});i(ne.prototype,{getItem:function(){return this.item},getBounds:function(){return this.bounds},interfaces_:function(){return[pa,ir]},getClass:function(){return ne}});i(cp.prototype,{poll:function(){if(this.isEmpty())return null;var n=this.items.get(1);return this.items.set(1,this.items.get(this._size)),this._size-=1,this.reorder(1),n},size:function(){return this._size},reorder:function(n){for(var t=null,i=this.items.get(n);2*n<=this._size&&(t=2*n,t!==this._size&&this.items.get(t+1).compareTo(this.items.get(t))<0&&t++,this.items.get(t).compareTo(i)<0);n=t)this.items.set(n,this.items.get(t));this.items.set(n,i)},clear:function(){this._size=0;this.items.clear()},isEmpty:function(){return 0===this._size},add:function(n){this.items.add(null);this._size+=1;var t=this._size;for(this.items.set(0,n);n.compareTo(this.items.get(Math.trunc(t/2)))<0;t/=2)this.items.set(t,this.items.get(Math.trunc(t/2)));this.items.set(t,n)},interfaces_:function(){return[]},getClass:function(){return cp}});i(we.prototype,{visitItem:function(){},interfaces_:function(){return[]},getClass:function(){return we}});i(wa.prototype,{insert:function(){},remove:function(){},query:function(){1===arguments.length?arguments[0]:2===arguments.length&&(arguments[0],arguments[1])},interfaces_:function(){return[]},getClass:function(){return wa}});i(tr.prototype,{getLevel:function(){return this.level},size:function(){return this.childBoundables.size()},getChildBoundables:function(){return this.childBoundables},addChildBoundable:function(n){c.isTrue(null===this.bounds);this.childBoundables.add(n)},isEmpty:function(){return this.childBoundables.isEmpty()},getBounds:function(){return null===this.bounds&&(this.bounds=this.computeBounds()),this.bounds},interfaces_:function(){return[pa,ir]},getClass:function(){return tr}});tr.serialVersionUID=0x5a1e55ec41369800;gu={reverseOrder:function(){return{compare:function(n,t){return t.compareTo(n)}}},min:function(n){return gu.sort(n),n.get(0)},sort:function(n,t){var i=n.toArray();t?pf.sort(i,t):pf.sort(i);for(var u=n.iterator(),r=0,f=i.length;r<f;r++)u.next(),u.set(i[r])},singletonList:function(n){var t=new u;return t.add(n),t}};i(fr.prototype,{expandToQueue:function(n,t){var i=fr.isComposite(this.boundable1),r=fr.isComposite(this.boundable2);if(i&&r)return fr.area(this.boundable1)>fr.area(this.boundable2)?(this.expand(this.boundable1,this.boundable2,n,t),null):(this.expand(this.boundable2,this.boundable1,n,t),null);if(i)return this.expand(this.boundable1,this.boundable2,n,t),null;if(r)return this.expand(this.boundable2,this.boundable1,n,t),null;throw new ct("neither boundable is composite");},isLeaves:function(){return!(fr.isComposite(this.boundable1)||fr.isComposite(this.boundable2))},compareTo:function(n){var t=n;return this._distance<t._distance?-1:this._distance>t._distance?1:0},expand:function(n,t,i,r){for(var o,f,e=n.getChildBoundables(),u=e.iterator();u.hasNext();)o=u.next(),f=new fr(o,t,this.itemDistance),f.getDistance()<r&&i.add(f)},getBoundable:function(n){return 0===n?this.boundable1:this.boundable2},getDistance:function(){return this._distance},distance:function(){return this.isLeaves()?this.itemDistance.distance(this.boundable1,this.boundable2):this.boundable1.getBounds().distance(this.boundable2.getBounds())},interfaces_:function(){return[sr]},getClass:function(){return fr}});fr.area=function(n){return n.getBounds().getArea()};fr.isComposite=function(n){return n instanceof tr};i(ni.prototype,{getNodeCapacity:function(){return this.nodeCapacity},lastNode:function(n){return n.get(n.size()-1)},size:function(){var n;if(0===arguments.length)return this.isEmpty()?0:(this.build(),this.size(this.root));if(1===arguments.length){for(var r=arguments[0],t=0,i=r.getChildBoundables().iterator();i.hasNext();)n=i.next(),n instanceof tr?t+=this.size(n):n instanceof ne&&(t+=1);return t}},removeItem:function(n,t){for(var r,i=null,u=n.getChildBoundables().iterator();u.hasNext();)r=u.next(),r instanceof ne&&r.getItem()===t&&(i=r);return null!==i&&(n.getChildBoundables().remove(i),!0)},itemsTree:function(){var i,n,r;if(0===arguments.length)return this.build(),i=this.itemsTree(this.root),null===i?new u:i;if(1===arguments.length){for(var e=arguments[0],t=new u,f=e.getChildBoundables().iterator();f.hasNext();)n=f.next(),n instanceof tr?(r=this.itemsTree(n),null!==r&&t.add(r)):n instanceof ne?t.add(n.getItem()):c.shouldNeverReachHere();return t.size()<=0?null:t}},insert:function(n,t){c.isTrue(!this.built,"Cannot insert items into an STR packed R-tree after it has been built.");this.itemBoundables.add(new ne(n,t))},boundablesAtLevel:function(){var o,i,e,n;if(1===arguments.length)return o=arguments[0],i=new u,this.boundablesAtLevel(o,this.root,i),i;if(3===arguments.length){var t=arguments[0],r=arguments[1],f=arguments[2];if(c.isTrue(t>-2),r.getLevel()===t)return f.add(r),null;for(e=r.getChildBoundables().iterator();e.hasNext();)n=e.next(),n instanceof tr?this.boundablesAtLevel(t,n,f):(c.isTrue(n instanceof ne),-1===t&&f.add(n));return null}},query:function(){var f,r,e,o,n;if(1===arguments.length)return f=arguments[0],this.build(),r=new u,this.isEmpty()?r:(this.getIntersectsOp().intersects(this.root.getBounds(),f)&&this.query(f,this.root,r),r);if(2===arguments.length){if(e=arguments[0],o=arguments[1],this.build(),this.isEmpty())return null;this.getIntersectsOp().intersects(this.root.getBounds(),e)&&this.query(e,this.root,o)}else if(3===arguments.length)if(l(arguments[2],we)&&arguments[0]instanceof Object&&arguments[1]instanceof tr)for(var s=arguments[0],y=arguments[1],h=arguments[2],i=y.getChildBoundables(),t=0;t<i.size();t++)n=i.get(t),this.getIntersectsOp().intersects(n.getBounds(),s)&&(n instanceof tr?this.query(s,n,h):n instanceof ne?h.visitItem(n.getItem()):c.shouldNeverReachHere());else if(l(arguments[2],ei)&&arguments[0]instanceof Object&&arguments[1]instanceof tr)for(var a=arguments[0],p=arguments[1],v=arguments[2],i=p.getChildBoundables(),t=0;t<i.size();t++)n=i.get(t),this.getIntersectsOp().intersects(n.getBounds(),a)&&(n instanceof tr?this.query(a,n,v):n instanceof ne?v.add(n.getItem()):c.shouldNeverReachHere())},build:function(){return this.built?null:(this.root=this.itemBoundables.isEmpty()?this.createNode(0):this.createHigherLevels(this.itemBoundables,-1),this.itemBoundables=null,void(this.built=!0))},getRoot:function(){return this.build(),this.root},remove:function(){var i,e,n,f,t;if(2===arguments.length)return i=arguments[0],e=arguments[1],this.build(),!!this.getIntersectsOp().intersects(this.root.getBounds(),i)&&this.remove(i,this.root,e);if(3===arguments.length){var o=arguments[0],r=arguments[1],s=arguments[2],u=this.removeItem(r,s);if(u)return!0;for(n=null,f=r.getChildBoundables().iterator();f.hasNext();)if(t=f.next(),this.getIntersectsOp().intersects(t.getBounds(),o)&&t instanceof tr&&(u=this.remove(o,t,s))){n=t;break}return null!==n&&n.getChildBoundables().isEmpty()&&r.getChildBoundables().remove(n),u}},createHigherLevels:function(n,t){c.isTrue(!n.isEmpty());var i=this.createParentBoundables(n,t+1);return 1===i.size()?i.get(0):this.createHigherLevels(i,t+1)},depth:function(){var t,i;if(0===arguments.length)return this.isEmpty()?0:(this.build(),this.depth(this.root));if(1===arguments.length){for(var u=arguments[0],n=0,r=u.getChildBoundables().iterator();r.hasNext();)t=r.next(),t instanceof tr&&(i=this.depth(t),i>n&&(n=i));return n+1}},createParentBoundables:function(n,t){var i,r,f,e;for(c.isTrue(!n.isEmpty()),i=new u,i.add(this.createNode(t)),r=new u(n),gu.sort(r,this.getComparator()),f=r.iterator();f.hasNext();)e=f.next(),this.lastNode(i).getChildBoundables().size()===this.getNodeCapacity()&&i.add(this.createNode(t)),this.lastNode(i).addChildBoundable(e);return i},isEmpty:function(){return this.built?this.root.isEmpty():this.itemBoundables.isEmpty()},interfaces_:function(){return[ir]},getClass:function(){return ni}});ni.compareDoubles=function(n,t){return n>t?1:n<t?-1:0};ni.IntersectsOp=rd;ni.serialVersionUID=-0x35ef64c82d4c5400;ni.DEFAULT_NODE_CAPACITY=10;i(ba.prototype,{distance:function(){},interfaces_:function(){return[]},getClass:function(){return ba}});y(kt,ni);i(kt.prototype,{createParentBoundablesFromVerticalSlices:function(n,t){c.isTrue(n.length>0);for(var r=new u,i=0;i<n.length;i++)r.addAll(this.createParentBoundablesFromVerticalSlice(n[i],t));return r},createNode:function(n){return new ic(n)},size:function(){return 0===arguments.length?ni.prototype.size.call(this):ni.prototype.size.apply(this,arguments)},insert:function(){if(2!==arguments.length)return ni.prototype.insert.apply(this,arguments);var n=arguments[0],t=arguments[1];return n.isNull()?null:void ni.prototype.insert.call(this,n,t)},getIntersectsOp:function(){return kt.intersectsOp},verticalSlices:function(n,t){for(var f,o,s=Math.trunc(Math.ceil(n.size()/t)),r=new Array(t).fill(null),e=n.iterator(),i=0;i<t;i++)for(r[i]=new u,f=0;e.hasNext()&&f<s;)o=e.next(),r[i].add(o),f++;return r},query:function(){var n,t,i;if(1===arguments.length)return n=arguments[0],ni.prototype.query.call(this,n);if(2===arguments.length)t=arguments[0],i=arguments[1],ni.prototype.query.call(this,t,i);else if(3===arguments.length)if(l(arguments[2],we)&&arguments[0]instanceof Object&&arguments[1]instanceof tr){var r=arguments[0],u=arguments[1],f=arguments[2];ni.prototype.query.call(this,r,u,f)}else if(l(arguments[2],ei)&&arguments[0]instanceof Object&&arguments[1]instanceof tr){var e=arguments[0],o=arguments[1],s=arguments[2];ni.prototype.query.call(this,e,o,s)}},getComparator:function(){return kt.yComparator},createParentBoundablesFromVerticalSlice:function(n,t){return ni.prototype.createParentBoundables.call(this,n,t)},remove:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return ni.prototype.remove.call(this,n,t)}return ni.prototype.remove.apply(this,arguments)},depth:function(){return 0===arguments.length?ni.prototype.depth.call(this):ni.prototype.depth.apply(this,arguments)},createParentBoundables:function(n,t){var r,i,f;return c.isTrue(!n.isEmpty()),r=Math.trunc(Math.ceil(n.size()/this.getNodeCapacity())),i=new u(n),gu.sort(i,kt.xComparator),f=this.verticalSlices(i,Math.trunc(Math.ceil(Math.sqrt(r)))),this.createParentBoundablesFromVerticalSlices(f,t)},nearestNeighbour:function(){var e,n,o,t,f;if(1===arguments.length){if(l(arguments[0],ba))return e=arguments[0],n=new fr(this.getRoot(),this.getRoot(),e),this.nearestNeighbour(n);if(arguments[0]instanceof fr)return o=arguments[0],this.nearestNeighbour(o,v.POSITIVE_INFINITY)}else if(2===arguments.length){if(arguments[0]instanceof kt&&l(arguments[1],ba)){var s=arguments[0],h=arguments[1],n=new fr(this.getRoot(),s.getRoot(),h);return this.nearestNeighbour(n)}if(arguments[0]instanceof fr&&"number"==typeof arguments[1]){var c=arguments[0],a=arguments[1],i=a,u=null,r=new cp;for(r.add(c);!r.isEmpty()&&i>0;){if(t=r.poll(),f=t.getDistance(),f>=i)break;t.isLeaves()?(i=f,u=t):t.expandToQueue(r,i)}return[u.getBoundable(0).getItem(),u.getBoundable(1).getItem()]}}else if(3===arguments.length){var y=arguments[0],p=arguments[1],w=arguments[2],b=new ne(y,p),n=new fr(this.getRoot(),b,w);return this.nearestNeighbour(n)[0]}},interfaces_:function(){return[wa,ir]},getClass:function(){return kt}});kt.centreX=function(n){return kt.avg(n.getMinX(),n.getMaxX())};kt.avg=function(n,t){return(n+t)/2};kt.centreY=function(n){return kt.avg(n.getMinY(),n.getMaxY())};y(ic,tr);i(ic.prototype,{computeBounds:function(){for(var i,n=null,t=this.getChildBoundables().iterator();t.hasNext();)i=t.next(),null===n?n=new p(i.getBounds()):n.expandToInclude(i.getBounds());return n},interfaces_:function(){return[]},getClass:function(){return ic}});kt.STRtreeNode=ic;kt.serialVersionUID=0x39920f7d5f261e0;kt.xComparator={interfaces_:function(){return[ve]},compare:function(n,t){return ni.compareDoubles(kt.centreX(n.getBounds()),kt.centreX(t.getBounds()))}};kt.yComparator={interfaces_:function(){return[ve]},compare:function(n,t){return ni.compareDoubles(kt.centreY(n.getBounds()),kt.centreY(t.getBounds()))}};kt.intersectsOp={interfaces_:function(){return[IntersectsOp]},intersects:function(n,t){return n.intersects(t)}};kt.DEFAULT_NODE_CAPACITY=10;i(er.prototype,{interfaces_:function(){return[]},getClass:function(){return er}});er.relativeSign=function(n,t){return n<t?-1:n>t?1:0};er.compare=function(n,t,i){if(t.equals2D(i))return 0;var r=er.relativeSign(t.x,i.x),u=er.relativeSign(t.y,i.y);switch(n){case 0:return er.compareValue(r,u);case 1:return er.compareValue(u,r);case 2:return er.compareValue(u,-r);case 3:return er.compareValue(-r,u);case 4:return er.compareValue(-r,-u);case 5:return er.compareValue(-u,-r);case 6:return er.compareValue(-u,r);case 7:return er.compareValue(r,-u)}return c.shouldNeverReachHere("invalid octant value"),0};er.compareValue=function(n,t){return n<0?-1:n>0?1:t<0?-1:t>0?1:0};i(lp.prototype,{getCoordinate:function(){return this.coord},print:function(n){n.print(this.coord);n.print(" seg # = "+this.segmentIndex)},compareTo:function(n){var t=n;return this.segmentIndex<t.segmentIndex?-1:this.segmentIndex>t.segmentIndex?1:this.coord.equals2D(t.coord)?0:er.compare(this.segmentOctant,this.coord,t.coord)},isEndPoint:function(n){return 0===this.segmentIndex&&!this._isInterior||this.segmentIndex===n},isInterior:function(){return this._isInterior},interfaces_:function(){return[sr]},getClass:function(){return lp}});i(ap.prototype,{getSplitCoordinates:function(){var r=new ii,n,t,i;for(this.addEndpoints(),n=this.iterator(),t=n.next();n.hasNext();)i=n.next(),this.addEdgeCoordinates(t,i,r),t=i;return r.toCoordinateArray()},addCollapsedNodes:function(){var n=new u,t,i;for(this.findCollapsesFromInsertedNodes(n),this.findCollapsesFromExistingVertices(n),t=n.iterator();t.hasNext();)i=t.next().intValue(),this.add(this.edge.getCoordinate(i),i)},print:function(n){n.println("Intersections:");for(var t=this.iterator();t.hasNext();)t.next().print(n)},findCollapsesFromExistingVertices:function(n){for(var i,r,t=0;t<this.edge.size()-2;t++)i=this.edge.getCoordinate(t),r=(this.edge.getCoordinate(t+1),this.edge.getCoordinate(t+2)),i.equals2D(r)&&n.add(new vu(t+1))},addEdgeCoordinates:function(n,t,i){var e=t.segmentIndex-n.segmentIndex+2,o=this.edge.getCoordinate(t.segmentIndex),f=t.isInterior()||!t.coord.equals2D(o),u;for(f||e--,i.add(new r(n.coord),!1),u=n.segmentIndex+1;u<=t.segmentIndex;u++)i.add(this.edge.getCoordinate(u));f&&i.add(new r(t.coord))},iterator:function(){return this.nodeMap.values().iterator()},addSplitEdges:function(n){var t,i,r,u;for(this.addEndpoints(),this.addCollapsedNodes(),t=this.iterator(),i=t.next();t.hasNext();)r=t.next(),u=this.createSplitEdge(i,r),n.add(u),i=r},findCollapseIndex:function(n,t,i){if(!n.coord.equals2D(t.coord))return!1;var r=t.segmentIndex-n.segmentIndex;return t.isInterior()||r--,1===r&&(i[0]=n.segmentIndex+1,!0)},findCollapsesFromInsertedNodes:function(n){for(var i,r=new Array(1).fill(null),t=this.iterator(),u=t.next();t.hasNext();)i=t.next(),this.findCollapseIndex(u,i,r)&&n.add(new vu(r[0])),u=i},getEdge:function(){return this.edge},addEndpoints:function(){var n=this.edge.size()-1;this.add(this.edge.getCoordinate(0),0);this.add(this.edge.getCoordinate(n),n)},createSplitEdge:function(n,t){var e=t.segmentIndex-n.segmentIndex+2,s=this.edge.getCoordinate(t.segmentIndex),o=t.isInterior()||!t.coord.equals2D(s),i,u,f;for(o||e--,i=new Array(e).fill(null),u=0,i[u++]=new r(n.coord),f=n.segmentIndex+1;f<=t.segmentIndex;f++)i[u++]=this.edge.getCoordinate(f);return o&&(i[u]=new r(t.coord)),new tf(i,this.edge.getData())},add:function(n,t){var i=new lp(this.edge,n,t,this.edge.getSegmentOctant(t)),r=this.nodeMap.get(i);return null!==r?(c.isTrue(r.coord.equals2D(n),"Found equal nodes with different coordinates"),r):(this.nodeMap.put(i,i),i)},checkSplitEdgesCorrectness:function(n){var t=this.edge.getCoordinates(),f=n.get(0),i=f.getCoordinate(0);if(!i.equals2D(t[0]))throw new ci("bad split edge start point at "+i);var e=n.get(n.size()-1),r=e.getCoordinates(),u=r[r.length-1];if(!u.equals2D(t[t.length-1]))throw new ci("bad split edge end point at "+u);},interfaces_:function(){return[]},getClass:function(){return ap}});i(ub.prototype,{next:function(){return null===this.currNode?(this.currNode=this.nextNode,this.currSegIndex=this.currNode.segmentIndex,this.readNextNode(),this.currNode):null===this.nextNode?null:this.nextNode.segmentIndex===this.currNode.segmentIndex?(this.currNode=this.nextNode,this.currSegIndex=this.currNode.segmentIndex,this.readNextNode(),this.currNode):(this.nextNode.segmentIndex,this.currNode.segmentIndex,null)},remove:function(){throw new UnsupportedOperationException(this.getClass().getName());},hasNext:function(){return null!==this.nextNode},readNextNode:function(){this.nextNode=this.nodeIt.hasNext()?this.nodeIt.next():null},interfaces_:function(){return[wh]},getClass:function(){return ub}});i(vp.prototype,{addIntersection:function(){},interfaces_:function(){return[tc]},getClass:function(){return vp}});i(tf.prototype,{getCoordinates:function(){return this.pts},size:function(){return this.pts.length},getCoordinate:function(n){return this.pts[n]},isClosed:function(){return this.pts[0].equals(this.pts[this.pts.length-1])},getSegmentOctant:function(n){return n===this.pts.length-1?-1:this.safeOctant(this.getCoordinate(n),this.getCoordinate(n+1))},setData:function(n){this.data=n},safeOctant:function(n,t){return n.equals2D(t)?0:bs.octant(n,t)},getData:function(){return this.data},addIntersection:function(){var n,t;if(2===arguments.length)n=arguments[0],t=arguments[1],this.addIntersectionNode(n,t);else if(4===arguments.length){var i=arguments[0],u=arguments[1],f=(arguments[2],arguments[3]),e=new r(i.getIntersection(f));this.addIntersection(e,u)}},toString:function(){return pi.toLineString(new gr(this.pts))},getNodeList:function(){return this.nodeList},addIntersectionNode:function(n,t){var i=t,r=i+1,u;return r<this.pts.length&&(u=this.pts[r],n.equals2D(u)&&(i=r)),this.nodeList.add(n,i)},addIntersections:function(n,t,i){for(var r=0;r<n.getIntersectionNum();r++)this.addIntersection(n,t,i,r)},interfaces_:function(){return[vp]},getClass:function(){return tf}});tf.getNodedSubstrings=function(){var t,n,r;if(1===arguments.length)return t=arguments[0],n=new u,tf.getNodedSubstrings(t,n),n;if(2===arguments.length)for(var f=arguments[0],e=arguments[1],i=f.iterator();i.hasNext();)r=i.next(),r.getNodeList().addSplitEdges(e)};i(rc.prototype,{overlap:function(){if(2===arguments.length)arguments[0],arguments[1];else if(4===arguments.length){var n=arguments[0],t=arguments[1],i=arguments[2],r=arguments[3];n.getLineSegment(t,this.overlapSeg1);i.getLineSegment(r,this.overlapSeg2);this.overlap(this.overlapSeg1,this.overlapSeg2)}},interfaces_:function(){return[]},getClass:function(){return rc}});i(yp.prototype,{getLineSegment:function(n,t){t.p0=this.pts[n];t.p1=this.pts[n+1]},computeSelect:function(n,t,i,r){var f=this.pts[t],e=this.pts[i],u;if(r.tempEnv1.init(f,e),i-t==1)return r.select(this,t),null;if(!n.intersects(r.tempEnv1))return null;u=Math.trunc((t+i)/2);t<u&&this.computeSelect(n,t,u,r);u<i&&this.computeSelect(n,u,i,r)},getCoordinates:function(){for(var t=new Array(this.end-this.start+1).fill(null),i=0,n=this.start;n<=this.end;n++)t[i++]=this.pts[n];return t},computeOverlaps:function(n,t){this.computeOverlapsInternal(this.start,this.end,n,n.start,n.end,t)},setId:function(n){this.id=n},select:function(n,t){this.computeSelect(n,this.start,this.end,t)},getEnvelope:function(){if(null===this.env){var n=this.pts[this.start],t=this.pts[this.end];this.env=new p(n,t)}return this.env},getEndIndex:function(){return this.end},getStartIndex:function(){return this.start},getContext:function(){return this.context},getId:function(){return this.id},computeOverlapsInternal:function(n,t,i,r,u,f){var s=this.pts[n],h=this.pts[t],c=i.pts[r],l=i.pts[u],o,e;if(t-n==1&&u-r==1)return f.overlap(this,n,i,r),null;if(f.tempEnv1.init(s,h),f.tempEnv2.init(c,l),!f.tempEnv1.intersects(f.tempEnv2))return null;o=Math.trunc((n+t)/2);e=Math.trunc((r+u)/2);n<o&&(r<e&&this.computeOverlapsInternal(n,o,i,r,e,f),e<u&&this.computeOverlapsInternal(n,o,i,e,u,f));o<t&&(r<e&&this.computeOverlapsInternal(o,t,i,r,e,f),e<u&&this.computeOverlapsInternal(o,t,i,e,u,f))},interfaces_:function(){return[]},getClass:function(){return yp}});i(it.prototype,{interfaces_:function(){return[]},getClass:function(){return it}});it.isNorthern=function(n){return n===it.NE||n===it.NW};it.isOpposite=function(n,t){return n!==t&&2==(n-t+4)%4};it.commonHalfPlane=function(n,t){if(n===t)return n;if(2==(n-t+4)%4)return-1;var i=n<t?n:t,r=n>t?n:t;return 0===i&&3===r?3:i};it.isInHalfPlane=function(n,t){return t===it.SE?n===it.SE||n===it.SW:n===t||n===t+1};it.quadrant=function(){var u,i,n,t;if("number"==typeof arguments[0]&&"number"==typeof arguments[1]){if(u=arguments[0],i=arguments[1],0===u&&0===i)throw new ct("Cannot compute the quadrant for point ( "+u+", "+i+" )");return u>=0?i>=0?it.NE:it.SE:i>=0?it.NW:it.SW}if(arguments[0]instanceof r&&arguments[1]instanceof r){if(n=arguments[0],t=arguments[1],t.x===n.x&&t.y===n.y)throw new ct("Cannot compute the quadrant for two identical points "+n);return t.x>=n.x?t.y>=n.y?it.NE:it.SE:t.y>=n.y?it.NW:it.SW}};it.NE=0;it.NW=1;it.SW=2;it.SE=3;i(pu.prototype,{interfaces_:function(){return[]},getClass:function(){return pu}});pu.getChainStartIndices=function(n){var t=0,i=new u,r;i.add(new vu(t));do r=pu.findChainEnd(n,t),i.add(new vu(r)),t=r;while(t<n.length-1);return pu.toIntArray(i)};pu.findChainEnd=function(n,t){for(var u,r,i=t;i<n.length-1&&n[i].equals2D(n[i+1]);)i++;if(i>=n.length-1)return n.length-1;for(u=it.quadrant(n[i],n[i+1]),r=t+1;r<n.length;){if(!n[r-1].equals2D(n[r])&&it.quadrant(n[r-1],n[r])!==u)break;r++}return r-1};pu.getChains=function(){var i,e;if(1===arguments.length)return i=arguments[0],pu.getChains(i,null);if(2===arguments.length){for(var r=arguments[0],o=arguments[1],f=new u,t=pu.getChainStartIndices(r),n=0;n<t.length-1;n++)e=new yp(r,t[n],t[n+1],o),f.add(e);return f}};pu.toIntArray=function(n){for(var i=new Array(n.size()).fill(null),t=0;t<i.length;t++)i[t]=n.get(t).intValue();return i};i(uc.prototype,{computeNodes:function(){},getNodedSubstrings:function(){},interfaces_:function(){return[]},getClass:function(){return uc}});i(ka.prototype,{setSegmentIntersector:function(n){this.segInt=n},interfaces_:function(){return[uc]},getClass:function(){return ka}});y(be,ka);i(be.prototype,{getMonotoneChains:function(){return this.monoChains},getNodedSubstrings:function(){return tf.getNodedSubstrings(this.nodedSegStrings)},getIndex:function(){return this.index},add:function(n){for(var t,r=pu.getChains(n.getCoordinates(),n),i=r.iterator();i.hasNext();)t=i.next(),t.setId(this.idCounter++),this.index.insert(t.getEnvelope(),t),this.monoChains.add(t)},computeNodes:function(n){this.nodedSegStrings=n;for(var t=n.iterator();t.hasNext();)this.add(t.next());this.intersectChains()},intersectChains:function(){for(var i,r=new fc(this.segInt),n=this.monoChains.iterator();n.hasNext();)for(var t=n.next(),f=this.index.query(t.getEnvelope()),u=f.iterator();u.hasNext();)if(i=u.next(),i.getId()>t.getId()&&(t.computeOverlaps(i,r),this.nOverlaps++),this.segInt.isDone())return null},interfaces_:function(){return[]},getClass:function(){return be}});y(fc,rc);i(fc.prototype,{overlap:function(){if(4!==arguments.length)return rc.prototype.overlap.apply(this,arguments);var n=arguments[0],t=arguments[1],i=arguments[2],r=arguments[3],u=n.getContext(),f=i.getContext();this.si.processIntersections(u,t,f,r)},interfaces_:function(){return[]},getClass:function(){return fc}});be.SegmentOverlapAction=fc;y(ar,ci);i(ar.prototype,{getCoordinate:function(){return this.pt},interfaces_:function(){return[]},getClass:function(){return ar}});ar.msgWithCoord=function(n,t){return null!==t?n+" [ "+t+" ]":n};i(ec.prototype,{processIntersections:function(){},isDone:function(){},interfaces_:function(){return[]},getClass:function(){return ec}});i(se.prototype,{getInteriorIntersection:function(){return this.interiorIntersection},setCheckEndSegmentsOnly:function(n){this.isCheckEndSegmentsOnly=n},getIntersectionSegments:function(){return this.intSegments},count:function(){return this.intersectionCount},getIntersections:function(){return this.intersections},setFindAllIntersections:function(n){this.findAllIntersections=n},setKeepIntersections:function(n){this.keepIntersections=n},processIntersections:function(n,t,i,r){if(!this.findAllIntersections&&this.hasIntersection()||n===i&&t===r||this.isCheckEndSegmentsOnly&&!(this.isEndSegment(n,t)||this.isEndSegment(i,r)))return null;var u=n.getCoordinates()[t],f=n.getCoordinates()[t+1],e=i.getCoordinates()[r],o=i.getCoordinates()[r+1];this.li.computeIntersection(u,f,e,o);this.li.hasIntersection()&&this.li.isInteriorIntersection()&&(this.intSegments=new Array(4).fill(null),this.intSegments[0]=u,this.intSegments[1]=f,this.intSegments[2]=e,this.intSegments[3]=o,this.interiorIntersection=this.li.getIntersection(0),this.keepIntersections&&this.intersections.add(this.interiorIntersection),this.intersectionCount++)},isEndSegment:function(n,t){return 0===t||t>=n.size()-2},hasIntersection:function(){return null!==this.interiorIntersection},isDone:function(){return!this.findAllIntersections&&null!==this.interiorIntersection},interfaces_:function(){return[ec]},getClass:function(){return se}});se.createAllIntersectionsFinder=function(n){var t=new se(n);return t.setFindAllIntersections(!0),t};se.createAnyIntersectionFinder=function(n){return new se(n)};se.createIntersectionCounter=function(n){var t=new se(n);return t.setFindAllIntersections(!0),t.setKeepIntersections(!1),t};i(oc.prototype,{execute:function(){return null!==this.segInt?null:void this.checkInteriorIntersections()},getIntersections:function(){return this.segInt.getIntersections()},isValid:function(){return this.execute(),this._isValid},setFindAllIntersections:function(n){this.findAllIntersections=n},checkInteriorIntersections:function(){this._isValid=!0;this.segInt=new se(this.li);this.segInt.setFindAllIntersections(this.findAllIntersections);var n=new be;if(n.setSegmentIntersector(this.segInt),n.computeNodes(this.segStrings),this.segInt.hasIntersection())return this._isValid=!1,null},checkValid:function(){if(this.execute(),!this._isValid)throw new ar(this.getErrorMessage(),this.segInt.getInteriorIntersection());},getErrorMessage:function(){if(this._isValid)return"no intersections found";var n=this.segInt.getIntersectionSegments();return"found non-noded intersection between "+pi.toLineString(n[0],n[1])+" and "+pi.toLineString(n[2],n[3])},interfaces_:function(){return[]},getClass:function(){return oc}});oc.computeIntersections=function(n){var t=new oc(n);return t.setFindAllIntersections(!0),t.isValid(),t.getIntersections()};i(ko.prototype,{checkValid:function(){this.nv.checkValid()},interfaces_:function(){return[]},getClass:function(){return ko}});ko.toSegmentStrings=function(n){for(var r,t=new u,i=n.iterator();i.hasNext();)r=i.next(),t.add(new hp(r.getCoordinates(),r));return t};ko.checkValid=function(n){new ko(n).checkValid()};i(ks.prototype,{map:function(n){for(var r,i=new u,t=0;t<n.getNumGeometries();t++)r=this.mapOp.map(n.getGeometryN(t)),r.isEmpty()||i.add(r);return n.getFactory().createGeometryCollection(g.toGeometryArray(i))},interfaces_:function(){return[]},getClass:function(){return ks}});ks.map=function(n,t){return new ks(t).map(n)};i(o.prototype,{interfaces_:function(){return[]},getClass:function(){return o}});o.opposite=function(n){return n===o.LEFT?o.RIGHT:n===o.RIGHT?o.LEFT:n};o.ON=0;o.LEFT=1;o.RIGHT=2;i(vr.prototype,{setAllLocations:function(n){for(var t=0;t<this.location.length;t++)this.location[t]=n},isNull:function(){for(var n=0;n<this.location.length;n++)if(this.location[n]!==t.NONE)return!1;return!0},setAllLocationsIfNull:function(n){for(var i=0;i<this.location.length;i++)this.location[i]===t.NONE&&(this.location[i]=n)},isLine:function(){return 1===this.location.length},merge:function(n){var r,i;for(n.location.length>this.location.length&&(r=new Array(3).fill(null),r[o.ON]=this.location[o.ON],r[o.LEFT]=t.NONE,r[o.RIGHT]=t.NONE,this.location=r),i=0;i<this.location.length;i++)this.location[i]===t.NONE&&i<n.location.length&&(this.location[i]=n.location[i])},getLocations:function(){return this.location},flip:function(){if(this.location.length<=1)return null;var n=this.location[o.LEFT];this.location[o.LEFT]=this.location[o.RIGHT];this.location[o.RIGHT]=n},toString:function(){var n=new eu;return this.location.length>1&&n.append(t.toLocationSymbol(this.location[o.LEFT])),n.append(t.toLocationSymbol(this.location[o.ON])),this.location.length>1&&n.append(t.toLocationSymbol(this.location[o.RIGHT])),n.toString()},setLocations:function(n,t,i){this.location[o.ON]=n;this.location[o.LEFT]=t;this.location[o.RIGHT]=i},get:function(n){return n<this.location.length?this.location[n]:t.NONE},isArea:function(){return this.location.length>1},isAnyNull:function(){for(var n=0;n<this.location.length;n++)if(this.location[n]===t.NONE)return!0;return!1},setLocation:function(){var n,t,i;1===arguments.length?(n=arguments[0],this.setLocation(o.ON,n)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.location[t]=i)},init:function(n){this.location=new Array(n).fill(null);this.setAllLocations(t.NONE)},isEqualOnSide:function(n,t){return this.location[t]===n.location[t]},allPositionsEqual:function(n){for(var t=0;t<this.location.length;t++)if(this.location[t]!==n)return!1;return!0},interfaces_:function(){return[]},getClass:function(){return vr}});i(ti.prototype,{getGeometryCount:function(){var n=0;return this.elt[0].isNull()||n++,this.elt[1].isNull()||n++,n},setAllLocations:function(n,t){this.elt[n].setAllLocations(t)},isNull:function(n){return this.elt[n].isNull()},setAllLocationsIfNull:function(){var n,t,i;1===arguments.length?(n=arguments[0],this.setAllLocationsIfNull(0,n),this.setAllLocationsIfNull(1,n)):2===arguments.length&&(t=arguments[0],i=arguments[1],this.elt[t].setAllLocationsIfNull(i))},isLine:function(n){return this.elt[n].isLine()},merge:function(n){for(var t=0;t<2;t++)null===this.elt[t]&&null!==n.elt[t]?this.elt[t]=new vr(n.elt[t]):this.elt[t].merge(n.elt[t])},flip:function(){this.elt[0].flip();this.elt[1].flip()},getLocation:function(){var n,t,i;return 1===arguments.length?(n=arguments[0],this.elt[n].get(o.ON)):2===arguments.length?(t=arguments[0],i=arguments[1],this.elt[t].get(i)):void 0},toString:function(){var n=new eu;return null!==this.elt[0]&&(n.append("A:"),n.append(this.elt[0].toString())),null!==this.elt[1]&&(n.append(" B:"),n.append(this.elt[1].toString())),n.toString()},isArea:function(){if(0===arguments.length)return this.elt[0].isArea()||this.elt[1].isArea();if(1===arguments.length){var n=arguments[0];return this.elt[n].isArea()}},isAnyNull:function(n){return this.elt[n].isAnyNull()},setLocation:function(){var n,t;if(2===arguments.length)n=arguments[0],t=arguments[1],this.elt[n].setLocation(o.ON,t);else if(3===arguments.length){var i=arguments[0],r=arguments[1],u=arguments[2];this.elt[i].setLocation(r,u)}},isEqualOnSide:function(n,t){return this.elt[0].isEqualOnSide(n.elt[0],t)&&this.elt[1].isEqualOnSide(n.elt[1],t)},allPositionsEqual:function(n,t){return this.elt[n].allPositionsEqual(t)},toLine:function(n){this.elt[n].isArea()&&(this.elt[n]=new vr(this.elt[n].location[0]))},interfaces_:function(){return[]},getClass:function(){return ti}});ti.toLineLabel=function(n){for(var r=new ti(t.NONE),i=0;i<2;i++)r.setLocation(i,n.getLocation(i));return r};i(ds.prototype,{computeRing:function(){if(null!==this.ring)return null;for(var t=new Array(this.pts.size()).fill(null),n=0;n<this.pts.size();n++)t[n]=this.pts.get(n);this.ring=this.geometryFactory.createLinearRing(t);this._isHole=s.isCCW(this.ring.getCoordinates())},isIsolated:function(){return 1===this.label.getGeometryCount()},computePoints:function(n){var t,i,r;this.startDe=n;t=n;i=!0;do{if(null===t)throw new ar("Found null DirectedEdge");if(t.getEdgeRing()===this)throw new ar("Directed Edge visited twice during ring-building at "+t.getCoordinate());this.edges.add(t);r=t.getLabel();c.isTrue(r.isArea());this.mergeLabel(r);this.addPoints(t.getEdge(),t.isForward(),i);i=!1;this.setEdgeRing(t,this);t=this.getNext(t)}while(t!==this.startDe)},getLinearRing:function(){return this.ring},getCoordinate:function(n){return this.pts.get(n)},computeMaxNodeDegree:function(){var n,i,t;this.maxNodeDegree=0;n=this.startDe;do i=n.getNode(),t=i.getEdges().getOutgoingDegree(this),t>this.maxNodeDegree&&(this.maxNodeDegree=t),n=this.getNext(n);while(n!==this.startDe);this.maxNodeDegree*=2},addPoints:function(n,t,i){var f=n.getCoordinates(),u,r;if(t)for(u=1,i&&(u=0),r=u;r<f.length;r++)this.pts.add(f[r]);else for(u=f.length-2,i&&(u=f.length-1),r=u;r>=0;r--)this.pts.add(f[r])},isHole:function(){return this._isHole},setInResult:function(){var n=this.startDe;do n.getEdge().setInResult(!0),n=n.getNext();while(n!==this.startDe)},containsPoint:function(n){var i=this.getLinearRing(),t;if(!i.getEnvelopeInternal().contains(n)||!s.isPointInRing(n,i.getCoordinates()))return!1;for(t=this.holes.iterator();t.hasNext();)if(t.next().containsPoint(n))return!1;return!0},addHole:function(n){this.holes.add(n)},isShell:function(){return null===this.shell},getLabel:function(){return this.label},getEdges:function(){return this.edges},getMaxNodeDegree:function(){return this.maxNodeDegree<0&&this.computeMaxNodeDegree(),this.maxNodeDegree},getShell:function(){return this.shell},mergeLabel:function(){var n;if(1===arguments.length)n=arguments[0],this.mergeLabel(n,0),this.mergeLabel(n,1);else if(2===arguments.length){var u=arguments[0],i=arguments[1],r=u.getLocation(i,o.RIGHT);if(r===t.NONE)return null;if(this.label.getLocation(i)===t.NONE)return this.label.setLocation(i,r),null}},setShell:function(n){this.shell=n;null!==n&&n.addHole(this)},toPolygon:function(n){for(var i=new Array(this.holes.size()).fill(null),t=0;t<this.holes.size();t++)i[t]=this.holes.get(t).getLinearRing();return n.createPolygon(this.getLinearRing(),i)},interfaces_:function(){return[]},getClass:function(){return ds}});y(da,ds);i(da.prototype,{setEdgeRing:function(n,t){n.setMinEdgeRing(t)},getNext:function(n){return n.getNextMin()},interfaces_:function(){return[]},getClass:function(){return da}});y(sc,ds);i(sc.prototype,{buildMinimalRings:function(){var t=new u,n=this.startDe,i;do null===n.getMinEdgeRing()&&(i=new da(n,this.geometryFactory),t.add(i)),n=n.getNext();while(n!==this.startDe);return t},setEdgeRing:function(n,t){n.setEdgeRing(t)},linkDirectedEdgesForMinimalEdgeRings:function(){var n=this.startDe;do n.getNode().getEdges().linkMinimalDirectedEdges(this),n=n.getNext();while(n!==this.startDe)},getNext:function(n){return n.getNext()},interfaces_:function(){return[]},getClass:function(){return sc}});i(ke.prototype,{setVisited:function(n){this._isVisited=n},setInResult:function(n){this._isInResult=n},isCovered:function(){return this._isCovered},isCoveredSet:function(){return this._isCoveredSet},setLabel:function(n){this.label=n},getLabel:function(){return this.label},setCovered:function(n){this._isCovered=n;this._isCoveredSet=!0},updateIM:function(n){c.isTrue(this.label.getGeometryCount()>=2,"found partial label");this.computeIM(n)},isInResult:function(){return this._isInResult},isVisited:function(){return this._isVisited},interfaces_:function(){return[]},getClass:function(){return ke}});y(te,ke);i(te.prototype,{isIncidentEdgeInResult:function(){for(var n=this.getEdges().getEdges().iterator();n.hasNext();)if(n.next().getEdge().isInResult())return!0;return!1},isIsolated:function(){return 1===this.label.getGeometryCount()},getCoordinate:function(){return this.coord},print:function(n){n.println("node "+this.coord+" lbl: "+this.label)},computeIM:function(){},computeMergedLocation:function(n,i){var r=t.NONE,u;return(r=this.label.getLocation(i),n.isNull(i))||(u=n.getLocation(i),r!==t.BOUNDARY&&(r=u)),r},setLabel:function(){if(2!==arguments.length)return ke.prototype.setLabel.apply(this,arguments);var n=arguments[0],t=arguments[1];null===this.label?this.label=new ti(n,t):this.label.setLocation(n,t)},getEdges:function(){return this.edges},mergeLabel:function(){var i,r,n,u,f;if(arguments[0]instanceof te)i=arguments[0],this.mergeLabel(i.label);else if(arguments[0]instanceof ti)for(r=arguments[0],n=0;n<2;n++)u=this.computeMergedLocation(r,n),f=this.label.getLocation(n),f===t.NONE&&this.label.setLocation(n,u)},add:function(n){this.edges.insert(n);n.setNode(this)},setLabelBoundary:function(n){var r,i;if(null===this.label)return null;r=t.NONE;null!==this.label&&(r=this.label.getLocation(n));i=null;switch(r){case t.BOUNDARY:i=t.INTERIOR;break;case t.INTERIOR:i=t.BOUNDARY;break;default:i=t.BOUNDARY}this.label.setLocation(n,i)},interfaces_:function(){return[]},getClass:function(){return te}});i(gs.prototype,{find:function(n){return this.nodeMap.get(n)},addNode:function(){var i,t,n;return arguments[0]instanceof r?(i=arguments[0],n=this.nodeMap.get(i),null===n&&(n=this.nodeFact.createNode(i),this.nodeMap.put(i,n)),n):arguments[0]instanceof te?(t=arguments[0],n=this.nodeMap.get(t.getCoordinate()),null===n?(this.nodeMap.put(t.getCoordinate(),t),t):(n.mergeLabel(t),n)):void 0},print:function(n){for(var t=this.iterator();t.hasNext();)t.next().print(n)},iterator:function(){return this.nodeMap.values().iterator()},values:function(){return this.nodeMap.values()},getBoundaryNodes:function(n){for(var f,i=new u,r=this.iterator();r.hasNext();)f=r.next(),f.getLabel().getLocation(n)===t.BOUNDARY&&i.add(f);return i},add:function(n){var t=n.getCoordinate();this.addNode(t).add(n)},interfaces_:function(){return[]},getClass:function(){return gs}});i(rf.prototype,{compareDirection:function(n){return this.dx===n.dx&&this.dy===n.dy?0:this.quadrant>n.quadrant?1:this.quadrant<n.quadrant?-1:s.computeOrientation(n.p0,n.p1,this.p1)},getDy:function(){return this.dy},getCoordinate:function(){return this.p0},setNode:function(n){this.node=n},print:function(n){var i=Math.atan2(this.dy,this.dx),t=this.getClass().getName(),r=t.lastIndexOf("."),u=t.substring(r+1);n.print("  "+u+": "+this.p0+" - "+this.p1+" "+this.quadrant+":"+i+"   "+this.label)},compareTo:function(n){var t=n;return this.compareDirection(t)},getDirectedCoordinate:function(){return this.p1},getDx:function(){return this.dx},getLabel:function(){return this.label},getEdge:function(){return this.edge},getQuadrant:function(){return this.quadrant},getNode:function(){return this.node},toString:function(){var t=Math.atan2(this.dy,this.dx),n=this.getClass().getName(),i=n.lastIndexOf(".");return"  "+n.substring(i+1)+": "+this.p0+" - "+this.p1+" "+this.quadrant+":"+t+"   "+this.label},computeLabel:function(){},init:function(n,t){this.p0=n;this.p1=t;this.dx=t.x-n.x;this.dy=t.y-n.y;this.quadrant=it.quadrant(this.dx,this.dy);c.isTrue(!(0===this.dx&&0===this.dy),"EdgeEnd with identical endpoints found")},interfaces_:function(){return[sr]},getClass:function(){return rf}});y(go,rf);i(go.prototype,{getNextMin:function(){return this.nextMin},getDepth:function(n){return this.depth[n]},setVisited:function(n){this._isVisited=n},computeDirectedLabel:function(){this.label=new ti(this.edge.getLabel());this._isForward||this.label.flip()},getNext:function(){return this.next},setDepth:function(n,t){if(-999!==this.depth[n]&&this.depth[n]!==t)throw new ar("assigned depths do not match",this.getCoordinate());this.depth[n]=t},isInteriorAreaEdge:function(){for(var i=!0,n=0;n<2;n++)this.label.isArea(n)&&this.label.getLocation(n,o.LEFT)===t.INTERIOR&&this.label.getLocation(n,o.RIGHT)===t.INTERIOR||(i=!1);return i},setNextMin:function(n){this.nextMin=n},print:function(n){rf.prototype.print.call(this,n);n.print(" "+this.depth[o.LEFT]+"/"+this.depth[o.RIGHT]);n.print(" ("+this.getDepthDelta()+")");this._isInResult&&n.print(" inResult")},setMinEdgeRing:function(n){this.minEdgeRing=n},isLineEdge:function(){var n=this.label.isLine(0)||this.label.isLine(1),i=!this.label.isArea(0)||this.label.allPositionsEqual(0,t.EXTERIOR),r=!this.label.isArea(1)||this.label.allPositionsEqual(1,t.EXTERIOR);return n&&i&&r},setEdgeRing:function(n){this.edgeRing=n},getMinEdgeRing:function(){return this.minEdgeRing},getDepthDelta:function(){var n=this.edge.getDepthDelta();return this._isForward||(n=-n),n},setInResult:function(n){this._isInResult=n},getSym:function(){return this.sym},isForward:function(){return this._isForward},getEdge:function(){return this.edge},printEdge:function(n){this.print(n);n.print(" ");this._isForward?this.edge.print(n):this.edge.printReverse(n)},setSym:function(n){this.sym=n},setVisitedEdge:function(n){this.setVisited(n);this.sym.setVisited(n)},setEdgeDepths:function(n,t){var i=this.getEdge().getDepthDelta(),r;this._isForward||(i=-i);r=1;n===o.LEFT&&(r=-1);var u=o.opposite(n),f=i*r,e=t+f;this.setDepth(n,t);this.setDepth(u,e)},getEdgeRing:function(){return this.edgeRing},isInResult:function(){return this._isInResult},setNext:function(n){this.next=n},isVisited:function(){return this._isVisited},interfaces_:function(){return[]},getClass:function(){return go}});go.depthFactor=function(n,i){return n===t.EXTERIOR&&i===t.INTERIOR?1:n===t.INTERIOR&&i===t.EXTERIOR?-1:0};i(ns.prototype,{createNode:function(n){return new te(n,null)},interfaces_:function(){return[]},getClass:function(){return ns}});i(uf.prototype,{printEdges:function(n){var t,i;for(n.println("Edges:"),t=0;t<this.edges.size();t++)n.println("edge "+t+":"),i=this.edges.get(t),i.print(n),i.eiList.print(n)},find:function(n){return this.nodes.find(n)},addNode:function(){var n,t;return arguments[0]instanceof te?(n=arguments[0],this.nodes.addNode(n)):arguments[0]instanceof r?(t=arguments[0],this.nodes.addNode(t)):void 0},getNodeIterator:function(){return this.nodes.iterator()},linkResultDirectedEdges:function(){for(var n=this.nodes.iterator();n.hasNext();)n.next().getEdges().linkResultDirectedEdges()},debugPrintln:function(n){pt.out.println(n)},isBoundaryNode:function(n,i){var u=this.nodes.find(i),r;return null===u?!1:(r=u.getLabel(),null!==r&&r.getLocation(n)===t.BOUNDARY)},linkAllDirectedEdges:function(){for(var n=this.nodes.iterator();n.hasNext();)n.next().getEdges().linkAllDirectedEdges()},matchInSameDirection:function(n,t,i,r){return!!n.equals(i)&&s.computeOrientation(n,t,r)===s.COLLINEAR&&it.quadrant(n,t)===it.quadrant(i,r)},getEdgeEnds:function(){return this.edgeEndList},debugPrint:function(n){pt.out.print(n)},getEdgeIterator:function(){return this.edges.iterator()},findEdgeInSameDirection:function(n,t){for(var u,i,r=0;r<this.edges.size();r++)if((u=this.edges.get(r),i=u.getCoordinates(),this.matchInSameDirection(n,t,i[0],i[1]))||this.matchInSameDirection(n,t,i[i.length-1],i[i.length-2]))return u;return null},insertEdge:function(n){this.edges.add(n)},findEdgeEnd:function(n){for(var i,t=this.getEdgeEnds().iterator();t.hasNext();)if(i=t.next(),i.getEdge()===n)return i;return null},addEdges:function(n){for(var t,i,r,u=n.iterator();u.hasNext();)t=u.next(),this.edges.add(t),i=new go(t,!0),r=new go(t,!1),i.setSym(r),r.setSym(i),this.add(i),this.add(r)},add:function(n){this.nodes.add(n);this.edgeEndList.add(n)},getNodes:function(){return this.nodes.values()},findEdge:function(n,t){for(var r,u,i=0;i<this.edges.size();i++)if(r=this.edges.get(i),u=r.getCoordinates(),n.equals(u[0])&&t.equals(u[1]))return r;return null},interfaces_:function(){return[]},getClass:function(){return uf}});uf.linkResultDirectedEdges=function(n){for(var t=n.iterator();t.hasNext();)t.next().getEdges().linkResultDirectedEdges()};i(ga.prototype,{sortShellsAndHoles:function(n,t,i){for(var r,u=n.iterator();u.hasNext();)r=u.next(),r.isHole()?i.add(r):t.add(r)},computePolygons:function(n){for(var r,f,t=new u,i=n.iterator();i.hasNext();)r=i.next(),f=r.toPolygon(this.geometryFactory),t.add(f);return t},placeFreeHoles:function(n,t){for(var i,u,r=t.iterator();r.hasNext();)if(i=r.next(),null===i.getShell()){if(u=this.findEdgeRingContaining(i,n),null===u)throw new ar("unable to assign hole to a shell",i.getCoordinate(0));i.setShell(u)}},buildMinimalEdgeRings:function(n,t,i){for(var r,f,e,o=new u,s=n.iterator();s.hasNext();)r=s.next(),r.getMaxNodeDegree()>2?(r.linkDirectedEdgesForMinimalEdgeRings(),f=r.buildMinimalRings(),e=this.findShell(f),null!==e?(this.placePolygonHoles(e,f),t.add(e)):i.addAll(f)):o.add(r);return o},containsPoint:function(n){for(var t=this.shellList.iterator();t.hasNext();)if(t.next().containsPoint(n))return!0;return!1},buildMaximalEdgeRings:function(n){for(var t,f,i=new u,r=n.iterator();r.hasNext();)t=r.next(),t.isInResult()&&t.getLabel().isArea()&&null===t.getEdgeRing()&&(f=new sc(t,this.geometryFactory),i.add(f),f.setInResult());return i},placePolygonHoles:function(n,t){for(var r,i=t.iterator();i.hasNext();)r=i.next(),r.isHole()&&r.setShell(n)},getPolygons:function(){return this.computePolygons(this.shellList)},findEdgeRingContaining:function(n,t){for(var r,u=n.getLinearRing(),l=u.getEnvelopeInternal(),a=u.getCoordinateN(0),i=null,f=null,e=t.iterator();e.hasNext();){var o=e.next(),h=o.getLinearRing(),c=h.getEnvelopeInternal();null!==i&&(f=i.getLinearRing().getEnvelopeInternal());r=!1;c.contains(l)&&s.isPointInRing(a,h.getCoordinates())&&(r=!0);r&&(null===i||f.contains(c))&&(i=o)}return i},findShell:function(n){for(var t,i=0,r=null,u=n.iterator();u.hasNext();)t=u.next(),t.isHole()||(r=t,i++);return c.isTrue(i<=1,"found two shells in MinimalEdgeRing list"),r},add:function(){var n,i,r;if(1===arguments.length)n=arguments[0],this.add(n.getEdgeEnds(),n.getNodes());else if(2===arguments.length){i=arguments[0];r=arguments[1];uf.linkResultDirectedEdges(r);var f=this.buildMaximalEdgeRings(i),t=new u,e=this.buildMinimalEdgeRings(f,this.shellList,t);this.sortShellsAndHoles(e,this.shellList,t);this.placeFreeHoles(this.shellList,t)}},interfaces_:function(){return[]},getClass:function(){return ga}});i(pp.prototype,{collectLines:function(n){for(var i,t=this.op.getGraph().getEdgeEnds().iterator();t.hasNext();)i=t.next(),this.collectLineEdge(i,n,this.lineEdgesList),this.collectBoundaryTouchEdge(i,n,this.lineEdgesList)},labelIsolatedLine:function(n,t){var i=this.ptLocator.locate(n.getCoordinate(),this.op.getArgGeometry(t));n.getLabel().setLocation(t,i)},build:function(n){return this.findCoveredLineEdges(),this.collectLines(n),this.buildLines(n),this.resultLineList},collectLineEdge:function(n,t,i){var u=n.getLabel(),r=n.getEdge();n.isLineEdge()&&(n.isVisited()||!a.isResultOfOp(u,t)||r.isCovered()||(i.add(r),n.setVisitedEdge(!0)))},findCoveredLineEdges:function(){for(var i,n,r,u,t=this.op.getGraph().getNodes().iterator();t.hasNext();)t.next().getEdges().findCoveredLineEdges();for(i=this.op.getGraph().getEdgeEnds().iterator();i.hasNext();)n=i.next(),r=n.getEdge(),n.isLineEdge()&&!r.isCoveredSet()&&(u=this.op.isCoveredByA(n.getCoordinate()),r.setCovered(u))},labelIsolatedLines:function(n){for(var t,r,i=n.iterator();i.hasNext();)t=i.next(),r=t.getLabel(),t.isIsolated()&&(r.isNull(0)?this.labelIsolatedLine(t,0):this.labelIsolatedLine(t,1))},buildLines:function(){for(var n,i,t=this.lineEdgesList.iterator();t.hasNext();)n=t.next(),i=(n.getLabel(),this.geometryFactory.createLineString(n.getCoordinates())),this.resultLineList.add(i),n.setInResult(!0)},collectBoundaryTouchEdge:function(n,t,i){var r=n.getLabel();return n.isLineEdge()?null:n.isVisited()?null:n.isInteriorAreaEdge()?null:n.getEdge().isInResult()?null:(c.isTrue(!(n.isInResult()||n.getSym().isInResult())||!n.getEdge().isInResult()),void(a.isResultOfOp(r,t)&&t===a.INTERSECTION&&(i.add(n.getEdge()),n.setVisitedEdge(!0))))},interfaces_:function(){return[]},getClass:function(){return pp}});i(wp.prototype,{filterCoveredNodeToPoint:function(n){var t=n.getCoordinate(),i;this.op.isCoveredByLA(t)||(i=this.geometryFactory.createPoint(t),this.resultPointList.add(i))},extractNonCoveredResultNodes:function(n){for(var t,r,i=this.op.getGraph().getNodes().iterator();i.hasNext();)t=i.next(),t.isInResult()||t.isIncidentEdgeInResult()||0!==t.getEdges().getDegree()&&n!==a.INTERSECTION||(r=t.getLabel(),a.isResultOfOp(r,n)&&this.filterCoveredNodeToPoint(t))},build:function(n){return this.extractNonCoveredResultNodes(n),this.resultPointList},interfaces_:function(){return[]},getClass:function(){return wp}});i(nv.prototype,{locate:function(){},interfaces_:function(){return[]},getClass:function(){return nv}});i(tu.prototype,{locate:function(n){return tu.locate(n,this.geom)},interfaces_:function(){return[nv]},getClass:function(){return tu}});tu.isPointInRing=function(n,t){return!!t.getEnvelopeInternal().intersects(n)&&s.isPointInRing(n,t.getCoordinates())};tu.containsPointInPolygon=function(n,t){var r,i,u;if(t.isEmpty()||(r=t.getExteriorRing(),!tu.isPointInRing(n,r)))return!1;for(i=0;i<t.getNumInteriorRing();i++)if(u=t.getInteriorRingN(i),tu.isPointInRing(n,u))return!1;return!0};tu.containsPoint=function(n,t){var i,r;if(t instanceof st)return tu.containsPointInPolygon(n,t);if(t instanceof nt)for(i=new wo(t);i.hasNext();)if(r=i.next(),r!==t&&tu.containsPoint(n,r))return!0;return!1};tu.locate=function(n,i){return i.isEmpty()?t.EXTERIOR:tu.containsPoint(n,i)?t.INTERIOR:t.EXTERIOR};i(ts.prototype,{getNextCW:function(n){this.getEdges();var t=this.edgeList.indexOf(n),i=t-1;return 0===t&&(i=this.edgeList.size()-1),this.edgeList.get(i)},propagateSideLabels:function(n){for(var f,u,i,s,h,e=t.NONE,r=this.iterator();r.hasNext();)u=r.next(),i=u.getLabel(),i.isArea(n)&&i.getLocation(n,o.LEFT)!==t.NONE&&(e=i.getLocation(n,o.LEFT));if(e===t.NONE)return null;for(f=e,r=this.iterator();r.hasNext();)if(u=r.next(),i=u.getLabel(),i.getLocation(n,o.ON)===t.NONE&&i.setLocation(n,o.ON,f),i.isArea(n))if(s=i.getLocation(n,o.LEFT),h=i.getLocation(n,o.RIGHT),h!==t.NONE){if(h!==f)throw new ar("side location conflict",u.getCoordinate());s===t.NONE&&c.shouldNeverReachHere("found single null side (at "+u.getCoordinate()+")");f=s}else c.isTrue(i.getLocation(n,o.LEFT)===t.NONE,"found single null side"),i.setLocation(n,o.RIGHT,f),i.setLocation(n,o.LEFT,f)},getCoordinate:function(){var n=this.iterator();return n.hasNext()?n.next().getCoordinate():null},print:function(n){pt.out.println("EdgeEndStar:   "+this.getCoordinate());for(var t=this.iterator();t.hasNext();)t.next().print(n)},isAreaLabelsConsistent:function(n){return this.computeEdgeEndLabels(n.getBoundaryNodeRule()),this.checkAreaLabelsConsistent(0)},checkAreaLabelsConsistent:function(n){var r=this.getEdges(),u,f,l,i,e,s;if(r.size()<=0)return!0;var a=r.size()-1,v=r.get(a).getLabel(),h=v.getLocation(n,o.LEFT);for(c.isTrue(h!==t.NONE,"Found unlabelled area edge"),u=h,f=this.iterator();f.hasNext();){if((l=f.next(),i=l.getLabel(),c.isTrue(i.isArea(n),"Found non-area edge"),e=i.getLocation(n,o.LEFT),s=i.getLocation(n,o.RIGHT),e===s)||s!==u)return!1;u=e}return!0},findIndex:function(n){this.iterator();for(var t=0;t<this.edgeList.size();t++)if(this.edgeList.get(t)===n)return t;return-1},iterator:function(){return this.getEdges().iterator()},getEdges:function(){return null===this.edgeList&&(this.edgeList=new u(this.edgeMap.values())),this.edgeList},getLocation:function(n,i,r){return this.ptInAreaLocation[n]===t.NONE&&(this.ptInAreaLocation[n]=tu.locate(i,r[n].getGeometry())),this.ptInAreaLocation[n]},toString:function(){var n=new eu,t,i;for(n.append("EdgeEndStar:   "+this.getCoordinate()),n.append("\n"),t=this.iterator();t.hasNext();)i=t.next(),n.append(i),n.append("\n");return n.toString()},computeEdgeEndLabels:function(n){for(var t=this.iterator();t.hasNext();)t.next().computeLabel(n)},computeLabelling:function(n){var o,r,e,s;for(this.computeEdgeEndLabels(n[0].getBoundaryNodeRule()),this.propagateSideLabels(0),this.propagateSideLabels(1),o=[!1,!1],r=this.iterator();r.hasNext();)for(var f=r.next(),u=f.getLabel(),i=0;i<2;i++)u.isLine(i)&&u.getLocation(i)===t.BOUNDARY&&(o[i]=!0);for(r=this.iterator();r.hasNext();)for(var f=r.next(),u=f.getLabel(),i=0;i<2;i++)u.isAnyNull(i)&&(e=t.NONE,o[i]?e=t.EXTERIOR:(s=f.getCoordinate(),e=this.getLocation(i,s,n)),u.setAllLocationsIfNull(i,e))},getDegree:function(){return this.edgeMap.size()},insertEdgeEnd:function(n,t){this.edgeMap.put(n,t);this.edgeList=null},interfaces_:function(){return[]},getClass:function(){return ts}});y(tv,ts);i(tv.prototype,{linkResultDirectedEdges:function(){var n,f;this.getResultAreaEdges();for(var t=null,r=null,i=this.SCANNING_FOR_INCOMING,u=0;u<this.resultAreaEdgeList.size();u++)if(n=this.resultAreaEdgeList.get(u),f=n.getSym(),n.getLabel().isArea())switch(null===t&&n.isInResult()&&(t=n),i){case this.SCANNING_FOR_INCOMING:if(!f.isInResult())continue;r=f;i=this.LINKING_TO_OUTGOING;break;case this.LINKING_TO_OUTGOING:if(!n.isInResult())continue;r.setNext(n);i=this.SCANNING_FOR_INCOMING}if(i===this.LINKING_TO_OUTGOING){if(null===t)throw new ar("no outgoing dirEdge found",this.getCoordinate());c.isTrue(t.isInResult(),"unable to link last incoming dirEdge");r.setNext(t)}},insert:function(n){var t=n;this.insertEdgeEnd(t,t)},getRightmostEdge:function(){var i=this.getEdges(),r=i.size(),n;if(r<1)return null;if(n=i.get(0),1===r)return n;var t=i.get(r-1),u=n.getQuadrant(),f=t.getQuadrant();return it.isNorthern(u)&&it.isNorthern(f)?n:it.isNorthern(u)||it.isNorthern(f)?0!==n.getDy()?n:0!==t.getDy()?t:(c.shouldNeverReachHere("found two horizontal edges incident on node"),null):t},print:function(n){var t,i;for(pt.out.println("DirectedEdgeStar: "+this.getCoordinate()),t=this.iterator();t.hasNext();)i=t.next(),n.print("out "),i.print(n),n.println(),n.print("in "),i.getSym().print(n),n.println()},getResultAreaEdges:function(){var t,n;if(null!==this.resultAreaEdgeList)return this.resultAreaEdgeList;for(this.resultAreaEdgeList=new u,t=this.iterator();t.hasNext();)n=t.next(),(n.isInResult()||n.getSym().isInResult())&&this.resultAreaEdgeList.add(n);return this.resultAreaEdgeList},updateLabelling:function(n){for(var r,i,t=this.iterator();t.hasNext();)r=t.next(),i=r.getLabel(),i.setAllLocationsIfNull(0,n.getLocation(0)),i.setAllLocationsIfNull(1,n.getLocation(1))},linkAllDirectedEdges:function(){var r,u;this.getEdges();for(var n=null,t=null,i=this.edgeList.size()-1;i>=0;i--)r=this.edgeList.get(i),u=r.getSym(),null===t&&(t=u),null!==n&&u.setNext(n),n=r;t.setNext(n)},computeDepths:function(){var t;if(1===arguments.length){var n=arguments[0],u=this.findIndex(n),f=(n.getLabel(),n.getDepth(o.LEFT)),e=n.getDepth(o.RIGHT),s=this.computeDepths(u+1,this.edgeList.size(),f);if(this.computeDepths(0,u,s)!==e)throw new ar("depth mismatch at "+n.getCoordinate());}else if(3===arguments.length){for(var h=arguments[0],c=arguments[1],l=arguments[2],i=l,r=h;r<c;r++)t=this.edgeList.get(r),t.getLabel(),t.setEdgeDepths(o.RIGHT,i),i=t.getDepth(o.LEFT);return i}},mergeSymLabels:function(){for(var t,n=this.iterator();n.hasNext();)t=n.next(),t.getLabel().merge(t.getSym().getLabel())},linkMinimalDirectedEdges:function(n){for(var t,e,i=null,u=null,r=this.SCANNING_FOR_INCOMING,f=this.resultAreaEdgeList.size()-1;f>=0;f--){t=this.resultAreaEdgeList.get(f);e=t.getSym();switch(null===i&&t.getEdgeRing()===n&&(i=t),r){case this.SCANNING_FOR_INCOMING:if(e.getEdgeRing()!==n)continue;u=e;r=this.LINKING_TO_OUTGOING;break;case this.LINKING_TO_OUTGOING:if(t.getEdgeRing()!==n)continue;u.setNextMin(t);r=this.SCANNING_FOR_INCOMING}}r===this.LINKING_TO_OUTGOING&&(c.isTrue(null!==i,"found null for first outgoing dirEdge"),c.isTrue(i.getEdgeRing()===n,"unable to link last incoming dirEdge"),u.setNextMin(i))},getOutgoingDegree:function(){var n,t,i;if(0===arguments.length){for(n=0,t=this.iterator();t.hasNext();)i=t.next(),i.isInResult()&&n++;return n}if(1===arguments.length){for(var r=arguments[0],n=0,t=this.iterator();t.hasNext();)i=t.next(),i.getEdgeRing()===r&&n++;return n}},getLabel:function(){return this.label},findCoveredLineEdges:function(){for(var f,n,u,r=t.NONE,i=this.iterator();i.hasNext();)if(n=i.next(),u=n.getSym(),!n.isLineEdge()){if(n.isInResult()){r=t.INTERIOR;break}if(u.isInResult()){r=t.EXTERIOR;break}}if(r===t.NONE)return null;for(f=r,i=this.iterator();i.hasNext();)n=i.next(),u=n.getSym(),n.isLineEdge()?n.getEdge().setCovered(f===t.INTERIOR):(n.isInResult()&&(f=t.EXTERIOR),u.isInResult()&&(f=t.INTERIOR))},computeLabelling:function(n){var r,u;for(ts.prototype.computeLabelling.call(this,n),this.label=new ti(t.NONE),r=this.iterator();r.hasNext();)for(var f=r.next(),e=f.getEdge(),o=e.getLabel(),i=0;i<2;i++)u=o.getLocation(i),u!==t.INTERIOR&&u!==t.BOUNDARY||this.label.setLocation(i,t.INTERIOR)},interfaces_:function(){return[]},getClass:function(){return tv}});y(nh,ns);i(nh.prototype,{createNode:function(n){return new te(n,new tv)},interfaces_:function(){return[]},getClass:function(){return nh}});i(bp.prototype,{computeIntersections:function(n,t){this.mce.computeIntersectsForChain(this.chainIndex,n.mce,n.chainIndex,t)},interfaces_:function(){return[]},getClass:function(){return bp}});i(ie.prototype,{isDelete:function(){return this.eventType===ie.DELETE},setDeleteEventIndex:function(n){this.deleteEventIndex=n},getObject:function(){return this.obj},compareTo:function(n){var t=n;return this.xValue<t.xValue?-1:this.xValue>t.xValue?1:this.eventType<t.eventType?-1:this.eventType>t.eventType?1:0},getInsertEvent:function(){return this.insertEvent},isInsert:function(){return this.eventType===ie.INSERT},isSameLabel:function(n){return null!==this.label&&this.label===n.label},getDeleteEventIndex:function(){return this.deleteEventIndex},interfaces_:function(){return[sr]},getClass:function(){return ie}});ie.INSERT=1;ie.DELETE=2;i(iv.prototype,{interfaces_:function(){return[]},getClass:function(){return iv}});i(de.prototype,{isTrivialIntersection:function(n,t,i,r){if(n===i&&1===this.li.getIntersectionNum()){if(de.isAdjacentSegments(t,r))return!0;if(n.isClosed()){var u=n.getNumPoints()-1;if(0===t&&r===u||0===r&&t===u)return!0}}return!1},getProperIntersectionPoint:function(){return this.properIntersectionPoint},setIsDoneIfProperInt:function(n){this.isDoneWhenProperInt=n},hasProperInteriorIntersection:function(){return this.hasProperInterior},isBoundaryPointInternal:function(n,t){for(var r,u,i=t.iterator();i.hasNext();)if(r=i.next(),u=r.getCoordinate(),n.isIntersection(u))return!0;return!1},hasProperIntersection:function(){return this.hasProper},hasIntersection:function(){return this._hasIntersection},isDone:function(){return this._isDone},isBoundaryPoint:function(n,t){return!(null===t||!this.isBoundaryPointInternal(n,t[0])&&!this.isBoundaryPointInternal(n,t[1]))},setBoundaryNodes:function(n,t){this.bdyNodes=new Array(2).fill(null);this.bdyNodes[0]=n;this.bdyNodes[1]=t},addIntersections:function(n,t,i,r){if(n===i&&t===r)return null;this.numTests++;var u=n.getCoordinates()[t],f=n.getCoordinates()[t+1],e=i.getCoordinates()[r],o=i.getCoordinates()[r+1];this.li.computeIntersection(u,f,e,o);this.li.hasIntersection()&&(this.recordIsolated&&(n.setIsolated(!1),i.setIsolated(!1)),this.numIntersections++,this.isTrivialIntersection(n,t,i,r)||(this._hasIntersection=!0,!this.includeProper&&this.li.isProper()||(n.addIntersections(this.li,t,0),i.addIntersections(this.li,r,1)),this.li.isProper()&&(this.properIntersectionPoint=this.li.getIntersection(0).copy(),this.hasProper=!0,this.isDoneWhenProperInt&&(this._isDone=!0),this.isBoundaryPoint(this.li,this.bdyNodes)||(this.hasProperInterior=!0))))},interfaces_:function(){return[]},getClass:function(){return de}});de.isAdjacentSegments=function(n,t){return 1===Math.abs(n-t)};y(rv,iv);i(rv.prototype,{prepareEvents:function(){var n,t;for(gu.sort(this.events),n=0;n<this.events.size();n++)t=this.events.get(n),t.isDelete()&&t.getInsertEvent().setDeleteEventIndex(n)},computeIntersections:function(){var i,n,t;if(1===arguments.length){for(i=arguments[0],this.nOverlaps=0,this.prepareEvents(),n=0;n<this.events.size();n++)if(t=this.events.get(n),t.isInsert()&&this.processOverlaps(n,t.getDeleteEventIndex(),t,i),i.isDone())break}else if(3===arguments.length)if(arguments[2]instanceof de&&l(arguments[0],ei)&&l(arguments[1],ei)){var r=arguments[0],u=arguments[1],e=arguments[2];this.addEdges(r,r);this.addEdges(u,u);this.computeIntersections(e)}else if("boolean"==typeof arguments[2]&&l(arguments[0],ei)&&arguments[1]instanceof de){var f=arguments[0],o=arguments[1],s=arguments[2];s?this.addEdges(f,null):this.addEdges(f);this.computeIntersections(o)}},addEdge:function(n,t){for(var f,u,r=n.getMonotoneChainEdge(),e=r.getStartIndexes(),i=0;i<e.length-1;i++)f=new bp(r,i),u=new ie(t,r.getMinX(i),f),this.events.add(u),this.events.add(new ie(r.getMaxX(i),u))},processOverlaps:function(n,t,i,r){for(var f,o,e=i.getObject(),u=n;u<t;u++)f=this.events.get(u),f.isInsert()&&(o=f.getObject(),i.isSameLabel(f)||(e.computeIntersections(o,r),this.nOverlaps++))},addEdges:function(){var i,n,t;if(1===arguments.length)for(i=arguments[0],n=i.iterator();n.hasNext();)t=n.next(),this.addEdge(t,t);else if(2===arguments.length)for(var r=arguments[0],u=arguments[1],n=r.iterator();n.hasNext();)t=n.next(),this.addEdge(t,u)},interfaces_:function(){return[]},getClass:function(){return rv}});i(is.prototype,{getMin:function(){return this.min},intersects:function(n,t){return!(this.min>t||this.max<n)},getMax:function(){return this.max},toString:function(){return pi.toLineString(new r(this.min,0),new r(this.max,0))},interfaces_:function(){return[]},getClass:function(){return is}});i(kp.prototype,{compare:function(n,t){var i=n,r=t,u=(i.min+i.max)/2,f=(r.min+r.max)/2;return u<f?-1:u>f?1:0},interfaces_:function(){return[ve]},getClass:function(){return kp}});is.NodeComparator=kp;y(uv,is);i(uv.prototype,{query:function(n,t,i){return this.intersects(n,t)?void i.visitItem(this.item):null},interfaces_:function(){return[]},getClass:function(){return uv}});y(fv,is);i(fv.prototype,{buildExtent:function(n,t){this.min=Math.min(n.min,t.min);this.max=Math.max(n.max,t.max)},query:function(n,t,i){return this.intersects(n,t)?(null!==this.node1&&this.node1.query(n,t,i),void(null!==this.node2&&this.node2.query(n,t,i))):null},interfaces_:function(){return[]},getClass:function(){return fv}});i(dp.prototype,{buildTree:function(){gu.sort(this.leaves,new IntervalRTreeNode.NodeComparator);for(var t=this.leaves,i=null,n=new u;;){if(this.buildLevel(t,n),1===n.size())return n.get(0);i=t;t=n;n=i}},insert:function(n,t,i){if(null!==this.root)throw new IllegalStateException("Index cannot be added to once it has been queried");this.leaves.add(new uv(n,t,i))},query:function(n,t,i){this.init();this.root.query(n,t,i)},buildRoot:function(){return null!==this.root?null:void(this.root=this.buildTree())},printNode:function(n){pt.out.println(pi.toLineString(new r(n.min,this.level),new r(n.max,this.level)))},init:function(){return null!==this.root?null:void this.buildRoot()},buildLevel:function(n,t){var i,r,u;for(this.level++,t.clear(),i=0;i<n.size();i+=2)r=n.get(i),null===(i+1<n.size()?n.get(i):null)?t.add(r):(u=new fv(n.get(i),n.get(i+1)),t.add(u))},interfaces_:function(){return[]},getClass:function(){return dp}});i(wi.prototype,{filter:function(n){if(this.isForcedToLineString&&n instanceof gt){var t=n.getFactory().createLineString(n.getCoordinateSequence());return this.lines.add(t),null}n instanceof d&&this.lines.add(n)},setForceToLineString:function(n){this.isForcedToLineString=n},interfaces_:function(){return[yu]},getClass:function(){return wi}});wi.getGeometry=function(){var n,t,i;return 1===arguments.length?(n=arguments[0],n.getFactory().buildGeometry(wi.getLines(n))):2===arguments.length?(t=arguments[0],i=arguments[1],t.getFactory().buildGeometry(wi.getLines(t,i))):void 0};wi.getLines=function(){var f,i,r,t;if(1===arguments.length)return f=arguments[0],wi.getLines(f,!1);if(2===arguments.length){if(l(arguments[0],yt)&&l(arguments[1],yt)){for(var a=arguments[0],e=arguments[1],n=a.iterator();n.hasNext();)t=n.next(),wi.getLines(t,e);return e}if(arguments[0]instanceof h&&"boolean"==typeof arguments[1]){var v=arguments[0],y=arguments[1],o=new u;return v.apply(new wi(o,y)),o}if(arguments[0]instanceof h&&l(arguments[1],yt))return i=arguments[0],r=arguments[1],i instanceof d?r.add(i):i.apply(new wi(r)),r}else if(3===arguments.length){if("boolean"==typeof arguments[2]&&l(arguments[0],yt)&&l(arguments[1],yt)){for(var p=arguments[0],s=arguments[1],w=arguments[2],n=p.iterator();n.hasNext();)t=n.next(),wi.getLines(t,s,w);return s}if("boolean"==typeof arguments[2]&&arguments[0]instanceof h&&l(arguments[1],yt)){var b=arguments[0],c=arguments[1],k=arguments[2];return b.apply(new wi(c,k)),c}}};i(ev.prototype,{visitItem:function(n){this.items.add(n)},getItems:function(){return this.items},interfaces_:function(){return[we]},getClass:function(){return ev}});i(hc.prototype,{locate:function(n){var t=new po(n),i=new ov(t);return this.index.query(n.y,n.y,i),t.getLocation()},interfaces_:function(){return[nv]},getClass:function(){return hc}});i(ov.prototype,{visitItem:function(n){var t=n;this.counter.countSegment(t.getCoordinate(0),t.getCoordinate(1))},interfaces_:function(){return[we]},getClass:function(){return ov}});i(sv.prototype,{init:function(n){for(var r,u,i=wi.getLines(n),t=i.iterator();t.hasNext();)r=t.next(),u=r.getCoordinates(),this.addLine(u)},addLine:function(n){for(var t=1;t<n.length;t++){var i=new b(n[t-1],n[t]),r=Math.min(i.p0.y,i.p1.y),u=Math.max(i.p0.y,i.p1.y);this.index.insert(r,u,i)}},query:function(){if(2===arguments.length){var t=arguments[0],i=arguments[1],n=new ev;return this.index.query(t,i,n),n.getItems()}if(3===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2];this.index.query(r,u,f)}},interfaces_:function(){return[]},getClass:function(){return sv}});hc.SegmentVisitor=ov;hc.IntervalIndexedGeometry=sv;i(gp.prototype,{getSegmentIndex:function(){return this.segmentIndex},getCoordinate:function(){return this.coord},print:function(n){n.print(this.coord);n.print(" seg # = "+this.segmentIndex);n.println(" dist = "+this.dist)},compareTo:function(n){var t=n;return this.compare(t.segmentIndex,t.dist)},isEndPoint:function(n){return 0===this.segmentIndex&&0===this.dist||this.segmentIndex===n},toString:function(){return this.coord+" seg # = "+this.segmentIndex+" dist = "+this.dist},getDistance:function(){return this.dist},compare:function(n,t){return this.segmentIndex<n?-1:this.segmentIndex>n?1:this.dist<t?-1:this.dist>t?1:0},interfaces_:function(){return[sr]},getClass:function(){return gp}});i(nw.prototype,{print:function(n){n.println("Intersections:");for(var t=this.iterator();t.hasNext();)t.next().print(n)},iterator:function(){return this.nodeMap.values().iterator()},addSplitEdges:function(n){var t,i,r,u;for(this.addEndpoints(),t=this.iterator(),i=t.next();t.hasNext();)r=t.next(),u=this.createSplitEdge(i,r),n.add(u),i=r},addEndpoints:function(){var n=this.edge.pts.length-1;this.add(this.edge.pts[0],0,0);this.add(this.edge.pts[n],n,0)},createSplitEdge:function(n,t){var e=t.segmentIndex-n.segmentIndex+2,s=this.edge.pts[t.segmentIndex],o=t.dist>0||!t.coord.equals2D(s),i,u,f;for(o||e--,i=new Array(e).fill(null),u=0,i[u++]=new r(n.coord),f=n.segmentIndex+1;f<=t.segmentIndex;f++)i[u++]=this.edge.pts[f];return o&&(i[u]=t.coord),new ou(i,new ti(this.edge.label))},add:function(n,t,i){var r=new gp(n,t,i),u=this.nodeMap.get(r);return null!==u?u:(this.nodeMap.put(r,r),r)},isIntersection:function(n){for(var t=this.iterator();t.hasNext();)if(t.next().coord.equals(n))return!0;return!1},interfaces_:function(){return[]},getClass:function(){return nw}});i(cc.prototype,{getChainStartIndices:function(n){var t=0,i=new u,r;i.add(new vu(t));do r=this.findChainEnd(n,t),i.add(new vu(r)),t=r;while(t<n.length-1);return cc.toIntArray(i)},findChainEnd:function(n,t){for(var r=it.quadrant(n[t],n[t+1]),i=t+1;i<n.length;){if(it.quadrant(n[i-1],n[i])!==r)break;i++}return i-1},interfaces_:function(){return[]},getClass:function(){return cc}});cc.toIntArray=function(n){for(var i=new Array(n.size()).fill(null),t=0;t<i.length;t++)i[t]=n.get(t).intValue();return i};i(tw.prototype,{getCoordinates:function(){return this.pts},getMaxX:function(n){var t=this.pts[this.startIndex[n]].x,i=this.pts[this.startIndex[n+1]].x;return t>i?t:i},getMinX:function(n){var t=this.pts[this.startIndex[n]].x,i=this.pts[this.startIndex[n+1]].x;return t<i?t:i},computeIntersectsForChain:function(){var f,n;if(4===arguments.length){var h=arguments[0],s=arguments[1],c=arguments[2],l=arguments[3];this.computeIntersectsForChain(this.startIndex[h],this.startIndex[h+1],s,s.startIndex[c],s.startIndex[c+1],l)}else if(6===arguments.length){var i=arguments[0],e=arguments[1],r=arguments[2],t=arguments[3],u=arguments[4],o=arguments[5],a=this.pts[i],v=this.pts[e],y=r.pts[t],p=r.pts[u];if(e-i==1&&u-t==1)return o.addIntersections(this.e,i,r.e,t),null;if(this.env1.init(a,v),this.env2.init(y,p),!this.env1.intersects(this.env2))return null;f=Math.trunc((i+e)/2);n=Math.trunc((t+u)/2);i<f&&(t<n&&this.computeIntersectsForChain(i,f,r,t,n,o),n<u&&this.computeIntersectsForChain(i,f,r,n,u,o));f<e&&(t<n&&this.computeIntersectsForChain(f,e,r,t,n,o),n<u&&this.computeIntersectsForChain(f,e,r,n,u,o))}},getStartIndexes:function(){return this.startIndex},computeIntersects:function(n,t){for(var r,i=0;i<this.startIndex.length-1;i++)for(r=0;r<n.startIndex.length-1;r++)this.computeIntersectsForChain(i,n,r,t)},interfaces_:function(){return[]},getClass:function(){return tw}});i(wu.prototype,{getDepth:function(n,t){return this.depth[n][t]},setDepth:function(n,t,i){this.depth[n][t]=i},isNull:function(){var n,t,i,r,u;if(0===arguments.length){for(n=0;n<2;n++)for(t=0;t<3;t++)if(this.depth[n][t]!==wu.NULL_VALUE)return!1;return!0}return 1===arguments.length?(i=arguments[0],this.depth[i][1]===wu.NULL_VALUE):2===arguments.length?(r=arguments[0],u=arguments[1],this.depth[r][u]===wu.NULL_VALUE):void 0},normalize:function(){for(var t,i,r,n=0;n<2;n++)if(!this.isNull(n))for(t=this.depth[n][1],this.depth[n][2]<t&&(t=this.depth[n][2]),t<0&&(t=0),i=1;i<3;i++)r=0,this.depth[n][i]>t&&(r=1),this.depth[n][i]=r},getDelta:function(n){return this.depth[n][o.RIGHT]-this.depth[n][o.LEFT]},getLocation:function(n,i){return this.depth[n][i]<=0?t.EXTERIOR:t.INTERIOR},toString:function(){return"A: "+this.depth[0][1]+","+this.depth[0][2]+" B: "+this.depth[1][1]+","+this.depth[1][2]},add:function(){var u,n,i,r;if(1===arguments.length)for(u=arguments[0],n=0;n<2;n++)for(i=1;i<3;i++)r=u.getLocation(n,i),r!==t.EXTERIOR&&r!==t.INTERIOR||(this.isNull(n,i)?this.depth[n][i]=wu.depthAtLocation(r):this.depth[n][i]+=wu.depthAtLocation(r));else if(3===arguments.length){var f=arguments[0],e=arguments[1],o=arguments[2];o===t.INTERIOR&&this.depth[f][e]++}},interfaces_:function(){return[]},getClass:function(){return wu}});wu.depthAtLocation=function(n){return n===t.EXTERIOR?0:n===t.INTERIOR?1:wu.NULL_VALUE};wu.NULL_VALUE=-1;y(ou,ke);i(ou.prototype,{getDepth:function(){return this.depth},getCollapsedEdge:function(){var n=new Array(2).fill(null);return n[0]=this.pts[0],n[1]=this.pts[1],new ou(n,ti.toLineLabel(this.label))},isIsolated:function(){return this._isIsolated},getCoordinates:function(){return this.pts},setIsolated:function(n){this._isIsolated=n},setName:function(n){this.name=n},equals:function(n){var i;if(!(n instanceof ou)||(i=n,this.pts.length!==i.pts.length))return!1;for(var r=!0,u=!0,f=this.pts.length,t=0;t<this.pts.length;t++)if(this.pts[t].equals2D(i.pts[t])||(r=!1),this.pts[t].equals2D(i.pts[--f])||(u=!1),!r&&!u)return!1;return!0},getCoordinate:function(){if(0===arguments.length)return this.pts.length>0?this.pts[0]:null;if(1===arguments.length){var n=arguments[0];return this.pts[n]}},print:function(n){n.print("edge "+this.name+": ");n.print("LINESTRING (");for(var t=0;t<this.pts.length;t++)t>0&&n.print(","),n.print(this.pts[t].x+" "+this.pts[t].y);n.print(")  "+this.label+" "+this.depthDelta)},computeIM:function(n){ou.updateIM(this.label,n)},isCollapsed:function(){return!!this.label.isArea()&&3===this.pts.length&&!!this.pts[0].equals(this.pts[2])},isClosed:function(){return this.pts[0].equals(this.pts[this.pts.length-1])},getMaximumSegmentIndex:function(){return this.pts.length-1},getDepthDelta:function(){return this.depthDelta},getNumPoints:function(){return this.pts.length},printReverse:function(n){n.print("edge "+this.name+": ");for(var t=this.pts.length-1;t>=0;t--)n.print(this.pts[t]+" ");n.println("")},getMonotoneChainEdge:function(){return null===this.mce&&(this.mce=new tw(this)),this.mce},getEnvelope:function(){if(null===this.env){this.env=new p;for(var n=0;n<this.pts.length;n++)this.env.expandToInclude(this.pts[n])}return this.env},addIntersection:function(n,t,i,u){var o=new r(n.getIntersection(u)),f=t,s=n.getEdgeDistance(i,u),e=f+1,h;e<this.pts.length&&(h=this.pts[e],o.equals2D(h)&&(f=e,s=0));this.eiList.add(o,f,s)},toString:function(){var n=new eu,t;for(n.append("edge "+this.name+": "),n.append("LINESTRING ("),t=0;t<this.pts.length;t++)t>0&&n.append(","),n.append(this.pts[t].x+" "+this.pts[t].y);return n.append(")  "+this.label+" "+this.depthDelta),n.toString()},isPointwiseEqual:function(n){if(this.pts.length!==n.pts.length)return!1;for(var t=0;t<this.pts.length;t++)if(!this.pts[t].equals2D(n.pts[t]))return!1;return!0},setDepthDelta:function(n){this.depthDelta=n},getEdgeIntersectionList:function(){return this.eiList},addIntersections:function(n,t,i){for(var r=0;r<n.getIntersectionNum();r++)this.addIntersection(n,t,i,r)},interfaces_:function(){return[]},getClass:function(){return ou}});ou.updateIM=function(){if(2!==arguments.length)return ke.prototype.updateIM.apply(this,arguments);var n=arguments[0],t=arguments[1];t.setAtLeastIfValid(n.getLocation(0,o.ON),n.getLocation(1,o.ON),1);n.isArea()&&(t.setAtLeastIfValid(n.getLocation(0,o.LEFT),n.getLocation(1,o.LEFT),2),t.setAtLeastIfValid(n.getLocation(0,o.RIGHT),n.getLocation(1,o.RIGHT),2))};y(or,uf);i(or.prototype,{insertBoundaryPoint:function(n,i){var e=this.nodes.addNode(i),r=e.getLabel(),u=1,f;t.NONE;r.getLocation(n,o.ON)===t.BOUNDARY&&u++;f=or.determineBoundary(this.boundaryNodeRule,u);r.setLocation(n,f)},computeSelfNodes:function(){var t,i;if(2===arguments.length)return t=arguments[0],i=arguments[1],this.computeSelfNodes(t,i,!1);if(3===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2],n=new de(r,!0,!1);n.setIsDoneIfProperInt(f);var e=this.createEdgeSetIntersector(),o=this.parentGeom instanceof gt||this.parentGeom instanceof st||this.parentGeom instanceof ai,s=u||!o;return e.computeIntersections(this.edges,n,s),this.addSelfIntersectionNodes(this.argIndex),n}},computeSplitEdges:function(n){for(var t=this.edges.iterator();t.hasNext();)t.next().eiList.addSplitEdges(n)},computeEdgeIntersections:function(n,t,i){var r=new de(t,i,!0);return r.setBoundaryNodes(this.getBoundaryNodes(),n.getBoundaryNodes()),this.createEdgeSetIntersector().computeIntersections(this.edges,n.edges,r),r},getGeometry:function(){return this.parentGeom},getBoundaryNodeRule:function(){return this.boundaryNodeRule},hasTooFewPoints:function(){return this._hasTooFewPoints},addPoint:function(){var n,i,u;arguments[0]instanceof bt?(n=arguments[0],i=n.getCoordinate(),this.insertPoint(this.argIndex,i,t.INTERIOR)):arguments[0]instanceof r&&(u=arguments[0],this.insertPoint(this.argIndex,u,t.INTERIOR))},addPolygon:function(n){var i,r;for(this.addPolygonRing(n.getExteriorRing(),t.EXTERIOR,t.INTERIOR),i=0;i<n.getNumInteriorRing();i++)r=n.getInteriorRingN(i),this.addPolygonRing(r,t.INTERIOR,t.EXTERIOR)},addEdge:function(n){this.insertEdge(n);var i=n.getCoordinates();this.insertPoint(this.argIndex,i[0],t.BOUNDARY);this.insertPoint(this.argIndex,i[i.length-1],t.BOUNDARY)},addLineString:function(n){var i=w.removeRepeatedPoints(n.getCoordinates()),r;if(i.length<2)return this._hasTooFewPoints=!0,this.invalidPoint=i[0],null;r=new ou(i,new ti(this.argIndex,t.INTERIOR));this.lineEdgeMap.put(n,r);this.insertEdge(r);c.isTrue(i.length>=2,"found LineString with single point");this.insertBoundaryPoint(this.argIndex,i[0]);this.insertBoundaryPoint(this.argIndex,i[i.length-1])},getInvalidPoint:function(){return this.invalidPoint},getBoundaryPoints:function(){for(var r,n=this.getBoundaryNodes(),t=new Array(n.size()).fill(null),u=0,i=n.iterator();i.hasNext();)r=i.next(),t[u++]=r.getCoordinate().copy();return t},getBoundaryNodes:function(){return null===this.boundaryNodes&&(this.boundaryNodes=this.nodes.getBoundaryNodes(this.argIndex)),this.boundaryNodes},addSelfIntersectionNode:function(n,i,r){return this.isBoundaryNode(n,i)?null:void(r===t.BOUNDARY&&this.useBoundaryDeterminationRule?this.insertBoundaryPoint(n,i):this.insertPoint(n,i,r))},addPolygonRing:function(n,i,r){var u,f,e,o;if(n.isEmpty())return null;if(u=w.removeRepeatedPoints(n.getCoordinates()),u.length<4)return this._hasTooFewPoints=!0,this.invalidPoint=u[0],null;f=i;e=r;s.isCCW(u)&&(f=r,e=i);o=new ou(u,new ti(this.argIndex,t.BOUNDARY,f,e));this.lineEdgeMap.put(n,o);this.insertEdge(o);this.insertPoint(this.argIndex,u[0],t.BOUNDARY)},insertPoint:function(n,t,i){var r=this.nodes.addNode(t),u=r.getLabel();null===u?r.label=new ti(n,i):u.setLocation(n,i)},createEdgeSetIntersector:function(){return new rv},addSelfIntersectionNodes:function(n){for(var u,t=this.edges.iterator();t.hasNext();)for(var i=t.next(),f=i.getLabel().getLocation(n),r=i.eiList.iterator();r.hasNext();)u=r.next(),this.addSelfIntersectionNode(n,u.coord,f)},add:function(){if(1!==arguments.length)return uf.prototype.add.apply(this,arguments);var n=arguments[0];if(n.isEmpty())return null;if(n instanceof ai&&(this.useBoundaryDeterminationRule=!1),n instanceof st)this.addPolygon(n);else if(n instanceof d)this.addLineString(n);else if(n instanceof bt)this.addPoint(n);else if(n instanceof lr)this.addCollection(n);else if(n instanceof cr)this.addCollection(n);else if(n instanceof ai)this.addCollection(n);else{if(!(n instanceof nt))throw new UnsupportedOperationException(n.getClass().getName());this.addCollection(n)}},addCollection:function(n){for(var i,t=0;t<n.getNumGeometries();t++)i=n.getGeometryN(t),this.add(i)},locate:function(n){return l(this.parentGeom,bf)&&this.parentGeom.getNumGeometries()>50?(null===this.areaPtLocator&&(this.areaPtLocator=new hc(this.parentGeom)),this.areaPtLocator.locate(n)):this.ptLocator.locate(n,this.parentGeom)},findEdge:function(){if(1===arguments.length){var n=arguments[0];return this.lineEdgeMap.get(n)}return uf.prototype.findEdge.apply(this,arguments)},interfaces_:function(){return[]},getClass:function(){return or}});or.determineBoundary=function(n,i){return n.isInBoundary(i)?t.BOUNDARY:t.INTERIOR};i(ge.prototype,{getArgGeometry:function(n){return this.arg[n].getGeometry()},setComputationPrecision:function(n){this.resultPrecisionModel=n;this.li.setPrecisionModel(this.resultPrecisionModel)},interfaces_:function(){return[]},getClass:function(){return ge}});i(no.prototype,{compareTo:function(n){var t=n;return no.compareOriented(this.pts,this._orientation,t.pts,t._orientation)},interfaces_:function(){return[sr]},getClass:function(){return no}});no.orientation=function(n){return 1===w.increasingDirection(n)};no.compareOriented=function(n,t,i,r){for(var s,u,f,h=t?1:-1,c=r?1:-1,l=t?n.length:-1,a=r?i.length:-1,e=t?0:n.length-1,o=r?0:i.length-1;;){if(s=n[e].compareTo(i[o]),0!==s)return s;if(e+=h,o+=c,u=e===l,f=o===a,u&&!f)return-1;if(!u&&f)return 1;if(u&&f)return 0}};i(hv.prototype,{print:function(n){var i,u,r,t;for(n.print("MULTILINESTRING ( "),i=0;i<this.edges.size();i++){for(u=this.edges.get(i),i>0&&n.print(","),n.print("("),r=u.getCoordinates(),t=0;t<r.length;t++)t>0&&n.print(","),n.print(r[t].x+" "+r[t].y);n.println(")")}n.print(")  ")},addAll:function(n){for(var t=n.iterator();t.hasNext();)this.add(t.next())},findEdgeIndex:function(n){for(var t=0;t<this.edges.size();t++)if(this.edges.get(t).equals(n))return t;return-1},iterator:function(){return this.edges.iterator()},getEdges:function(){return this.edges},get:function(n){return this.edges.get(n)},findEqualEdge:function(n){var t=new no(n.getCoordinates());return this.ocaMap.get(t)},add:function(n){this.edges.add(n);var t=new no(n.getCoordinates());this.ocaMap.put(t,n)},interfaces_:function(){return[]},getClass:function(){return hv}});y(a,ge);i(a.prototype,{insertUniqueEdge:function(n){var i=this.edgeList.findEqualEdge(n),u,t,r;null!==i?(u=i.getLabel(),t=n.getLabel(),i.isPointwiseEqual(n)||(t=new ti(n.getLabel()),t.flip()),r=i.getDepth(),r.isNull()&&r.add(u),r.add(t),u.merge(t)):this.edgeList.add(n)},getGraph:function(){return this.graph},cancelDuplicateResultEdges:function(){for(var n,i,t=this.graph.getEdgeEnds().iterator();t.hasNext();)n=t.next(),i=n.getSym(),n.isInResult()&&i.isInResult()&&(n.setInResult(!1),i.setInResult(!1))},isCoveredByLA:function(n){return!!this.isCovered(n,this.resultLineList)||!!this.isCovered(n,this.resultPolyList)},computeGeometry:function(n,t,i,r){var f=new u;return f.addAll(n),f.addAll(t),f.addAll(i),f.isEmpty()?a.createEmptyResult(r,this.arg[0].getGeometry(),this.arg[1].getGeometry(),this.geomFact):this.geomFact.buildGeometry(f)},mergeSymLabels:function(){for(var n=this.graph.getNodes().iterator();n.hasNext();)n.next().getEdges().mergeSymLabels()},isCovered:function(n,i){for(var u,r=i.iterator();r.hasNext();)if(u=r.next(),this.ptLocator.locate(n,u)!==t.EXTERIOR)return!0;return!1},replaceCollapsedEdges:function(){for(var i,t=new u,n=this.edgeList.iterator();n.hasNext();)i=n.next(),i.isCollapsed()&&(n.remove(),t.add(i.getCollapsedEdge()));this.edgeList.addAll(t)},updateNodeLabelling:function(){for(var t,i,n=this.graph.getNodes().iterator();n.hasNext();)t=n.next(),i=t.getEdges().getLabel(),t.getLabel().merge(i)},getResultGeometry:function(n){return this.computeOverlay(n),this.resultGeom},insertUniqueEdges:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),this.insertUniqueEdge(i)},computeOverlay:function(n){var t,i,r,f;this.copyPoints(0);this.copyPoints(1);this.arg[0].computeSelfNodes(this.li,!1);this.arg[1].computeSelfNodes(this.li,!1);this.arg[0].computeEdgeIntersections(this.arg[1],this.li,!0);t=new u;this.arg[0].computeSplitEdges(t);this.arg[1].computeSplitEdges(t);this.insertUniqueEdges(t);this.computeLabelsFromDepths();this.replaceCollapsedEdges();ko.checkValid(this.edgeList.getEdges());this.graph.addEdges(this.edgeList.getEdges());this.computeLabelling();this.labelIncompleteNodes();this.findResultAreaEdges(n);this.cancelDuplicateResultEdges();i=new ga(this.geomFact);i.add(this.graph);this.resultPolyList=i.getPolygons();r=new pp(this,this.geomFact,this.ptLocator);this.resultLineList=r.build(n);f=new wp(this,this.geomFact,this.ptLocator);this.resultPointList=f.build(n);this.resultGeom=this.computeGeometry(this.resultPointList,this.resultLineList,this.resultPolyList,n)},labelIncompleteNode:function(n,t){var i=this.ptLocator.locate(n.getCoordinate(),this.arg[t].getGeometry());n.getLabel().setLocation(t,i)},copyPoints:function(n){for(var i,t=this.arg[n].getNodeIterator();t.hasNext();)i=t.next(),this.graph.addNode(i.getCoordinate()).setLabel(n,i.getLabel().getLocation(n))},findResultAreaEdges:function(n){for(var t,i,r=this.graph.getEdgeEnds().iterator();r.hasNext();)t=r.next(),i=t.getLabel(),i.isArea()&&!t.isInteriorAreaEdge()&&a.isResultOfOp(i.getLocation(0,o.RIGHT),i.getLocation(1,o.RIGHT),n)&&t.setInResult(!0)},computeLabelsFromDepths:function(){for(var n,r=this.edgeList.iterator();r.hasNext();){var u=r.next(),i=u.getLabel(),t=u.getDepth();if(!t.isNull())for(t.normalize(),n=0;n<2;n++)i.isNull(n)||!i.isArea()||t.isNull(n)||(0===t.getDelta(n)?i.toLine(n):(c.isTrue(!t.isNull(n,o.LEFT),"depth of LEFT side has not been initialized"),i.setLocation(n,o.LEFT,t.getLocation(n,o.LEFT)),c.isTrue(!t.isNull(n,o.RIGHT),"depth of RIGHT side has not been initialized"),i.setLocation(n,o.RIGHT,t.getLocation(n,o.RIGHT))))}},computeLabelling:function(){for(var n=this.graph.getNodes().iterator();n.hasNext();)n.next().getEdges().computeLabelling(this.arg);this.mergeSymLabels();this.updateNodeLabelling()},labelIncompleteNodes:function(){for(var n,i,r=0,t=this.graph.getNodes().iterator();t.hasNext();)n=t.next(),i=n.getLabel(),n.isIsolated()&&(r++,i.isNull(0)?this.labelIncompleteNode(n,0):this.labelIncompleteNode(n,1)),n.getEdges().updateLabelling(i)},isCoveredByA:function(n){return!!this.isCovered(n,this.resultPolyList)},interfaces_:function(){return[]},getClass:function(){return a}});a.overlayOp=function(n,t,i){return new a(n,t).getResultGeometry(i)};a.intersection=function(n,t){if(n.isEmpty()||t.isEmpty())return a.createEmptyResult(a.INTERSECTION,n,t,n.getFactory());if(n.isGeometryCollection()){var i=t;return ks.map(n,{interfaces_:function(){return[MapOp]},map:function(n){return n.intersection(i)}})}return n.checkNotGeometryCollection(n),n.checkNotGeometryCollection(t),hi.overlayOp(n,t,a.INTERSECTION)};a.symDifference=function(n,t){if(n.isEmpty()||t.isEmpty()){if(n.isEmpty()&&t.isEmpty())return a.createEmptyResult(a.SYMDIFFERENCE,n,t,n.getFactory());if(n.isEmpty())return t.copy();if(t.isEmpty())return n.copy()}return n.checkNotGeometryCollection(n),n.checkNotGeometryCollection(t),hi.overlayOp(n,t,a.SYMDIFFERENCE)};a.resultDimension=function(n,t,i){var u=t.getDimension(),f=i.getDimension(),r=-1;switch(n){case a.INTERSECTION:r=Math.min(u,f);break;case a.UNION:r=Math.max(u,f);break;case a.DIFFERENCE:r=u;break;case a.SYMDIFFERENCE:r=Math.max(u,f)}return r};a.createEmptyResult=function(n,t,i,r){var u=null;switch(a.resultDimension(n,t,i)){case-1:u=r.createGeometryCollection(new Array(0).fill(null));break;case 0:u=r.createPoint();break;case 1:u=r.createLineString();break;case 2:u=r.createPolygon()}return u};a.difference=function(n,t){return n.isEmpty()?a.createEmptyResult(a.DIFFERENCE,n,t,n.getFactory()):t.isEmpty()?n.copy():(n.checkNotGeometryCollection(n),n.checkNotGeometryCollection(t),hi.overlayOp(n,t,a.DIFFERENCE))};a.isResultOfOp=function(){if(2===arguments.length){var r=arguments[0],u=arguments[1],f=r.getLocation(0),e=r.getLocation(1);return a.isResultOfOp(f,e,u)}if(3===arguments.length){var n=arguments[0],i=arguments[1],o=arguments[2];switch(n===t.BOUNDARY&&(n=t.INTERIOR),i===t.BOUNDARY&&(i=t.INTERIOR),o){case a.INTERSECTION:return n===t.INTERIOR&&i===t.INTERIOR;case a.UNION:return n===t.INTERIOR||i===t.INTERIOR;case a.DIFFERENCE:return n===t.INTERIOR&&i!==t.INTERIOR;case a.SYMDIFFERENCE:return n===t.INTERIOR&&i!==t.INTERIOR||n!==t.INTERIOR&&i===t.INTERIOR}return!1}};a.INTERSECTION=1;a.UNION=2;a.DIFFERENCE=3;a.SYMDIFFERENCE=4;i(su.prototype,{selfSnap:function(n){return new nr(n).snapTo(n,this.snapTolerance)},removeCommonBits:function(n){this.cbr=new gh;this.cbr.add(n[0]);this.cbr.add(n[1]);var t=new Array(2).fill(null);return t[0]=this.cbr.removeCommonBits(n[0].copy()),t[1]=this.cbr.removeCommonBits(n[1].copy()),t},prepareResult:function(n){return this.cbr.addCommonBits(n),n},getResultGeometry:function(n){var t=this.snap(this.geom),i=a.overlayOp(t[0],t[1],n);return this.prepareResult(i)},checkValid:function(n){n.isValid()||pt.out.println("Snapped geometry is invalid")},computeSnapTolerance:function(){this.snapTolerance=nr.computeOverlaySnapTolerance(this.geom[0],this.geom[1])},snap:function(n){var t=this.removeCommonBits(n);return nr.snap(t[0],t[1],this.snapTolerance)},interfaces_:function(){return[]},getClass:function(){return su}});su.overlayOp=function(n,t,i){return new su(n,t).getResultGeometry(i)};su.union=function(n,t){return su.overlayOp(n,t,a.UNION)};su.intersection=function(n,t){return su.overlayOp(n,t,a.INTERSECTION)};su.symDifference=function(n,t){return su.overlayOp(n,t,a.SYMDIFFERENCE)};su.difference=function(n,t){return su.overlayOp(n,t,a.DIFFERENCE)};i(hi.prototype,{getResultGeometry:function(n){var t=null,i=!1,r=null;try{t=a.overlayOp(this.geom[0],this.geom[1],n);i=!0}catch(n){if(!(n instanceof ci))throw n;r=n}if(!i)try{t=su.overlayOp(this.geom[0],this.geom[1],n)}catch(n){throw n instanceof ci?r:n;}return t},interfaces_:function(){return[]},getClass:function(){return hi}});hi.overlayOp=function(n,t,i){return new hi(n,t).getResultGeometry(i)};hi.union=function(n,t){return hi.overlayOp(n,t,a.UNION)};hi.intersection=function(n,t){return hi.overlayOp(n,t,a.INTERSECTION)};hi.symDifference=function(n,t){return hi.overlayOp(n,t,a.SYMDIFFERENCE)};hi.difference=function(n,t){return hi.overlayOp(n,t,a.DIFFERENCE)};i(bu.prototype,{addPolygon:function(n){var f,u;if(n.isEmpty())return null;var i=null,t=0,r=this.horizontalBisector(n);0===r.getLength()?(t=0,i=r.getCoordinate()):(f=hi.overlayOp(r,n,a.INTERSECTION),u=this.widestGeometry(f),t=u.getEnvelopeInternal().getWidth(),i=bu.centre(u.getEnvelopeInternal()));(null===this.interiorPoint||t>this.maxWidth)&&(this.interiorPoint=i,this.maxWidth=t)},getInteriorPoint:function(){return this.interiorPoint},widestGeometry:function(){var n,i,t,r;if(arguments[0]instanceof nt){if(n=arguments[0],n.isEmpty())return n;for(i=n.getGeometryN(0),t=1;t<n.getNumGeometries();t++)n.getGeometryN(t).getEnvelopeInternal().getWidth()>i.getEnvelopeInternal().getWidth()&&(i=n.getGeometryN(t));return i}if(arguments[0]instanceof h)return r=arguments[0],r instanceof nt?this.widestGeometry(r):r},horizontalBisector:function(n){var t=n.getEnvelopeInternal(),i=th.getBisectorY(n);return this.factory.createLineString([new r(t.getMinX(),i),new r(t.getMaxX(),i)])},add:function(n){if(n instanceof st)this.addPolygon(n);else if(n instanceof nt)for(var i=n,t=0;t<i.getNumGeometries();t++)this.add(i.getGeometryN(t))},interfaces_:function(){return[]},getClass:function(){return bu}});bu.centre=function(n){return new r(bu.avg(n.getMinX(),n.getMaxX()),bu.avg(n.getMinY(),n.getMaxY()))};bu.avg=function(n,t){return(n+t)/2};i(th.prototype,{updateInterval:function(n){n<=this.centreY?n>this.loY&&(this.loY=n):n>this.centreY&&n<this.hiY&&(this.hiY=n)},getBisectorY:function(){this.process(this.poly.getExteriorRing());for(var n=0;n<this.poly.getNumInteriorRing();n++)this.process(this.poly.getInteriorRingN(n));return bu.avg(this.hiY,this.loY)},process:function(n){for(var r,i=n.getCoordinateSequence(),t=0;t<i.size();t++)r=i.getY(t),this.updateInterval(r)},interfaces_:function(){return[]},getClass:function(){return th}});th.getBisectorY=function(n){return new th(n).getBisectorY()};bu.SafeBisectorFinder=th;i(cv.prototype,{addEndpoints:function(){var n,r,t,i;if(arguments[0]instanceof h){if(n=arguments[0],n instanceof d)this.addEndpoints(n.getCoordinates());else if(n instanceof nt)for(r=n,t=0;t<r.getNumGeometries();t++)this.addEndpoints(r.getGeometryN(t))}else arguments[0]instanceof Array&&(i=arguments[0],this.add(i[0]),this.add(i[i.length-1]))},getInteriorPoint:function(){return this.interiorPoint},addInterior:function(){var t,i,r,n;if(arguments[0]instanceof h){if(t=arguments[0],t instanceof d)this.addInterior(t.getCoordinates());else if(t instanceof nt)for(i=t,n=0;n<i.getNumGeometries();n++)this.addInterior(i.getGeometryN(n))}else if(arguments[0]instanceof Array)for(r=arguments[0],n=1;n<r.length-1;n++)this.add(r[n])},add:function(n){var t=n.distance(this.centroid);t<this.minDistance&&(this.interiorPoint=new r(n),this.minDistance=t)},interfaces_:function(){return[]},getClass:function(){return cv}});i(lv.prototype,{getInteriorPoint:function(){return this.interiorPoint},add:function(){var n,i,t,u,f;if(arguments[0]instanceof h){if(n=arguments[0],n instanceof bt)this.add(n.getCoordinate());else if(n instanceof nt)for(i=n,t=0;t<i.getNumGeometries();t++)this.add(i.getGeometryN(t))}else arguments[0]instanceof r&&(u=arguments[0],f=u.distance(this.centroid),f<this.minDistance&&(this.interiorPoint=new r(u),this.minDistance=f))},interfaces_:function(){return[]},getClass:function(){return lv}});i(to.prototype,{select:function(){if(1===arguments.length)arguments[0];else if(2===arguments.length){var n=arguments[0],t=arguments[1];n.getLineSegment(t,this.selectedSegment);this.select(this.selectedSegment)}},interfaces_:function(){return[]},getClass:function(){return to}});i(ff.prototype,{hasChildren:function(){for(var n=0;n<2;n++)if(null!==this.subnode[n])return!0;return!1},isPrunable:function(){return!(this.hasChildren()||this.hasItems())},addAllItems:function(n){n.addAll(this.items);for(var t=0;t<2;t++)null!==this.subnode[t]&&this.subnode[t].addAllItems(n);return n},size:function(){for(var t=0,n=0;n<2;n++)null!==this.subnode[n]&&(t+=this.subnode[n].size());return t+this.items.size()},addAllItemsFromOverlapping:function(n,t){return null===n||this.isSearchMatch(n)?(t.addAll(this.items),null!==this.subnode[0]&&this.subnode[0].addAllItemsFromOverlapping(n,t),void(null!==this.subnode[1]&&this.subnode[1].addAllItemsFromOverlapping(n,t))):null},hasItems:function(){return!this.items.isEmpty()},remove:function(n,t){if(!this.isSearchMatch(n))return!1;for(var r=!1,i=0;i<2;i++)if(null!==this.subnode[i]&&(r=this.subnode[i].remove(n,t))){this.subnode[i].isPrunable()&&(this.subnode[i]=null);break}return r||(r=this.items.remove(t))},getItems:function(){return this.items},depth:function(){for(var i,t=0,n=0;n<2;n++)null!==this.subnode[n]&&(i=this.subnode[n].depth(),i>t&&(t=i));return t+1},nodeSize:function(){for(var t=0,n=0;n<2;n++)null!==this.subnode[n]&&(t+=this.subnode[n].nodeSize());return t+1},add:function(n){this.items.add(n)},interfaces_:function(){return[]},getClass:function(){return ff}});ff.getSubnodeIndex=function(n,t){var i=-1;return n.min>=t&&(i=1),n.max<=t&&(i=0),i};i(re.prototype,{expandToInclude:function(n){n.max>this.max&&(this.max=n.max);n.min<this.min&&(this.min=n.min)},getWidth:function(){return this.max-this.min},overlaps:function(){var n,t,i;return 1===arguments.length?(n=arguments[0],this.overlaps(n.min,n.max)):2===arguments.length?(t=arguments[0],i=arguments[1],!(this.min>i||this.max<t)):void 0},getMin:function(){return this.min},toString:function(){return"["+this.min+", "+this.max+"]"},contains:function(){var n,t,i,r;if(1===arguments.length){if(arguments[0]instanceof re)return n=arguments[0],this.contains(n.min,n.max);if("number"==typeof arguments[0])return t=arguments[0],t>=this.min&&t<=this.max}else if(2===arguments.length)return i=arguments[0],r=arguments[1],i>=this.min&&r<=this.max},init:function(n,t){this.min=n;this.max=t;n>t&&(this.min=t,this.max=n)},getMax:function(){return this.max},interfaces_:function(){return[]},getClass:function(){return re}});rs.exponent=function(n){return ud(64,n)-1023};rs.powerOf2=function(n){return Math.pow(2,n)};i(lc.prototype,{getInterval:function(){return this.interval},getLevel:function(){return this.level},computeKey:function(n){for(this.level=lc.computeLevel(n),this.interval=new re,this.computeInterval(this.level,n);!this.interval.contains(n);)this.level+=1,this.computeInterval(this.level,n)},computeInterval:function(n,t){var i=rs.powerOf2(n);this.pt=Math.floor(t.getMin()/i)*i;this.interval.init(this.pt,this.pt+i)},getPoint:function(){return this.pt},interfaces_:function(){return[]},getClass:function(){return lc}});lc.computeLevel=function(n){var t=n.getWidth();return rs.exponent(t)+1};y(he,ff);i(he.prototype,{getInterval:function(){return this.interval},find:function(n){var t=ff.getSubnodeIndex(n,this.centre);return-1===t?this:null!==this.subnode[t]?this.subnode[t].find(n):this},insert:function(n){var t,i;c.isTrue(null===this.interval||this.interval.contains(n.interval));t=ff.getSubnodeIndex(n.interval,this.centre);n.level===this.level-1?this.subnode[t]=n:(i=this.createSubnode(t),i.insert(n),this.subnode[t]=i)},isSearchMatch:function(n){return n.overlaps(this.interval)},getSubnode:function(n){return null===this.subnode[n]&&(this.subnode[n]=this.createSubnode(n)),this.subnode[n]},getNode:function(n){var t=ff.getSubnodeIndex(n,this.centre);return-1!==t?this.getSubnode(t).getNode(n):this},createSubnode:function(n){var t=0,i=0;switch(n){case 0:t=this.interval.getMin();i=this.centre;break;case 1:t=this.centre;i=this.interval.getMax()}return new he(new re(t,i),this.level-1)},interfaces_:function(){return[]},getClass:function(){return he}});he.createNode=function(n){var t=new lc(n);return new he(t.getInterval(),t.getLevel())};he.createExpanded=function(n,t){var r=new re(t),i;return null!==n&&r.expandToInclude(n.interval),i=he.createNode(r),null!==n&&i.insert(n),i};i(io.prototype,{interfaces_:function(){return[]},getClass:function(){return io}});io.isZeroWidth=function(n,t){var i=t-n,r,u;return 0===i?!0:(r=Math.max(Math.abs(n),Math.abs(t)),u=i/r,rs.exponent(u)<=io.MIN_BINARY_EXPONENT)};io.MIN_BINARY_EXPONENT=-50;y(ih,ff);i(ih.prototype,{insert:function(n,t){var i=ff.getSubnodeIndex(n,ih.origin),r,u;if(-1===i)return this.add(t),null;r=this.subnode[i];null!==r&&r.getInterval().contains(n)||(u=he.createExpanded(r,n),this.subnode[i]=u);this.insertContained(this.subnode[i],n,t)},isSearchMatch:function(){return!0},insertContained:function(n,t,i){c.isTrue(n.getInterval().contains(t));var u=io.isZeroWidth(t.getMin(),t.getMax()),r=null;r=u?n.find(t):n.getNode(t);r.add(i)},interfaces_:function(){return[]},getClass:function(){return ih}});ih.origin=0;i(rh.prototype,{size:function(){return null!==this.root?this.root.size():0},insert:function(n,t){this.collectStats(n);var i=rh.ensureExtent(n,this.minExtent);this.root.insert(i,t)},query:function(){var n,i,t,r,f;if(1===arguments.length){if("number"==typeof arguments[0])return n=arguments[0],this.query(new re(n,n));if(arguments[0]instanceof re)return i=arguments[0],t=new u,this.query(i,t),t}else 2===arguments.length&&(r=arguments[0],f=arguments[1],this.root.addAllItemsFromOverlapping(r,f))},iterator:function(){var n=new u;return this.root.addAllItems(n),n.iterator()},remove:function(n,t){var i=rh.ensureExtent(n,this.minExtent);return this.root.remove(i,t)},collectStats:function(n){var t=n.getWidth();t<this.minExtent&&t>0&&(this.minExtent=t)},depth:function(){return null!==this.root?this.root.depth():0},nodeSize:function(){return null!==this.root?this.root.nodeSize():0},interfaces_:function(){return[]},getClass:function(){return rh}});rh.ensureExtent=function(n,t){var i=n.getMin(),r=n.getMax();return i!==r?n:(i===r&&(i-=t/2,r=i+t/2),new re(i,r))};i(iw.prototype,{isInside:function(){},interfaces_:function(){return[]},getClass:function(){return iw}});i(ac.prototype,{testLineSegment:function(n,t){var u=null,i=null,f=null,r=null,e=t.p0,o=t.p1;u=e.x-n.x;i=e.y-n.y;f=o.x-n.x;r=o.y-n.y;(i>0&&r<=0||r>0&&i<=0)&&0<yo.signOfDet2x2(u,i,f,r)/(r-i)&&this.crossings++},buildIndex:function(){var t,i;this.tree=new rh;for(var u=w.removeRepeatedPoints(this.ring.getCoordinates()),r=pu.getChains(u),n=0;n<r.size();n++)t=r.get(n),i=t.getEnvelope(),this.interval.min=i.getMinY(),this.interval.max=i.getMaxY(),this.tree.insert(this.interval,t)},testMonotoneChain:function(n,t,i){i.select(n,t)},isInside:function(n){var t,r;this.crossings=0;t=new p(v.NEGATIVE_INFINITY,v.POSITIVE_INFINITY,n.y,n.y);this.interval.min=n.y;this.interval.max=n.y;for(var u=this.tree.query(this.interval),f=new vc(this,n),i=u.iterator();i.hasNext();)r=i.next(),this.testMonotoneChain(t,f,r);return this.crossings%2==1},interfaces_:function(){return[iw]},getClass:function(){return ac}});y(vc,to);i(vc.prototype,{select:function(){if(1!==arguments.length)return to.prototype.select.apply(this,arguments);var n=arguments[0];this.mcp.testLineSegment(this.p,n)},interfaces_:function(){return[]},getClass:function(){return vc}});ac.MCSelecter=vc;i(k.prototype,{interfaces_:function(){return[]},getClass:function(){return k}});k.toDegrees=function(n){return 180*n/Math.PI};k.normalize=function(n){for(;n>Math.PI;)n-=k.PI_TIMES_2;for(;n<=-Math.PI;)n+=k.PI_TIMES_2;return n};k.angle=function(){var n;if(1===arguments.length)return n=arguments[0],Math.atan2(n.y,n.x);if(2===arguments.length){var t=arguments[0],i=arguments[1],r=i.x-t.x,u=i.y-t.y;return Math.atan2(u,r)}};k.isAcute=function(n,t,i){var r=n.x-t.x,u=n.y-t.y;return r*(i.x-t.x)+u*(i.y-t.y)>0};k.isObtuse=function(n,t,i){var r=n.x-t.x,u=n.y-t.y;return r*(i.x-t.x)+u*(i.y-t.y)<0};k.interiorAngle=function(n,t,i){var r=k.angle(t,n),u=k.angle(t,i);return Math.abs(u-r)};k.normalizePositive=function(n){if(n<0){for(;n<0;)n+=k.PI_TIMES_2;n>=k.PI_TIMES_2&&(n=0)}else{for(;n>=k.PI_TIMES_2;)n-=k.PI_TIMES_2;n<0&&(n=0)}return n};k.angleBetween=function(n,t,i){var r=k.angle(t,n),u=k.angle(t,i);return k.diff(r,u)};k.diff=function(n,t){var i=null;return i=n<t?t-n:n-t,i>Math.PI&&(i=2*Math.PI-i),i};k.toRadians=function(n){return n*Math.PI/180};k.getTurn=function(n,t){var i=Math.sin(t-n);return i>0?k.COUNTERCLOCKWISE:i<0?k.CLOCKWISE:k.NONE};k.angleBetweenOriented=function(n,t,i){var u=k.angle(t,n),f=k.angle(t,i),r=f-u;return r<=-Math.PI?r+k.PI_TIMES_2:r>Math.PI?r-k.PI_TIMES_2:r};k.PI_TIMES_2=2*Math.PI;k.PI_OVER_2=Math.PI/2;k.PI_OVER_4=Math.PI/4;k.COUNTERCLOCKWISE=s.COUNTERCLOCKWISE;k.CLOCKWISE=s.CLOCKWISE;k.NONE=s.COLLINEAR;i(vt.prototype,{area:function(){return vt.area(this.p0,this.p1,this.p2)},signedArea:function(){return vt.signedArea(this.p0,this.p1,this.p2)},interpolateZ:function(n){if(null===n)throw new ct("Supplied point is null.");return vt.interpolateZ(n,this.p0,this.p1,this.p2)},longestSideLength:function(){return vt.longestSideLength(this.p0,this.p1,this.p2)},isAcute:function(){return vt.isAcute(this.p0,this.p1,this.p2)},circumcentre:function(){return vt.circumcentre(this.p0,this.p1,this.p2)},area3D:function(){return vt.area3D(this.p0,this.p1,this.p2)},centroid:function(){return vt.centroid(this.p0,this.p1,this.p2)},inCentre:function(){return vt.inCentre(this.p0,this.p1,this.p2)},interfaces_:function(){return[]},getClass:function(){return vt}});vt.area=function(n,t,i){return Math.abs(((i.x-n.x)*(t.y-n.y)-(t.x-n.x)*(i.y-n.y))/2)};vt.signedArea=function(n,t,i){return((i.x-n.x)*(t.y-n.y)-(t.x-n.x)*(i.y-n.y))/2};vt.det=function(n,t,i,r){return n*r-t*i};vt.interpolateZ=function(n,t,i,r){var u=t.x,f=t.y,e=i.x-u,o=r.x-u,s=i.y-f,h=r.y-f,c=e*h-o*s,l=n.x-u,a=n.y-f,v=(h*l-o*a)/c,y=(-s*l+e*a)/c;return t.z+v*(i.z-t.z)+y*(r.z-t.z)};vt.longestSideLength=function(n,t,i){var e=n.distance(t),u=t.distance(i),f=i.distance(n),r=e;return u>r&&(r=u),f>r&&(r=f),r};vt.isAcute=function(n,t,i){return!!k.isAcute(n,t,i)&&!!k.isAcute(t,i,n)&&!!k.isAcute(i,n,t)};vt.circumcentre=function(n,t,i){var s=i.x,h=i.y,u=n.x-s,f=n.y-h,e=t.x-s,o=t.y-h,c=2*vt.det(u,f,e,o);return new r(s-vt.det(f,u*u+f*f,o,e*e+o*o)/c,h+vt.det(u,u*u+f*f,e,e*e+o*o)/c)};vt.perpendicularBisector=function(n,t){var i=t.x-n.x,r=t.y-n.y;return new hr(new hr(n.x+i/2,n.y+r/2,1),new hr(n.x-r+i/2,n.y+i+r/2,1))};vt.angleBisector=function(n,t,i){var u=t.distance(n),e=t.distance(i),f=u/(u+e),o=i.x-n.x,s=i.y-n.y;return new r(n.x+f*o,n.y+f*s)};vt.area3D=function(n,t,i){var r=t.x-n.x,u=t.y-n.y,f=t.z-n.z,e=i.x-n.x,o=i.y-n.y,s=i.z-n.z,h=u*s-f*o,c=f*e-r*s,l=r*o-u*e,a=h*h+c*c+l*l;return Math.sqrt(a)/2};vt.centroid=function(n,t,i){return new r((n.x+t.x+i.x)/3,(n.y+t.y+i.y)/3)};vt.inCentre=function(n,t,i){var u=t.distance(i),f=n.distance(i),e=n.distance(t),o=u+f+e;return new r((u*n.x+f*t.x+e*i.x)/o,(u*n.y+f*t.y+e*i.y)/o)};i(ce.prototype,{getRadius:function(){return this.compute(),this.radius},getDiameter:function(){switch(this.compute(),this.extremalPts.length){case 0:return this.input.getFactory().createLineString();case 1:return this.input.getFactory().createPoint(this.centre)}var n=this.extremalPts[0],t=this.extremalPts[1];return this.input.getFactory().createLineString([n,t])},getExtremalPoints:function(){return this.compute(),this.extremalPts},computeCirclePoints:function(){var n,f;if(this.input.isEmpty())return this.extremalPts=new Array(0).fill(null),null;if(1===this.input.getNumPoints())return n=this.input.getCoordinates(),this.extremalPts=[new r(n[0])],null;var o=this.input.convexHull(),i=o.getCoordinates(),n=i;if(i[0].equals2D(i[i.length-1])&&(n=new Array(i.length-1).fill(null),w.copyDeep(i,0,n,0,i.length-1)),n.length<=2)return this.extremalPts=w.copyDeep(n),null;for(var t=ce.lowestPoint(n),u=ce.pointWitMinAngleWithX(n,t),e=0;e<n.length;e++){if(f=ce.pointWithMinAngleWithSegment(n,t,u),k.isObtuse(t,f,u))return this.extremalPts=[new r(t),new r(u)],null;if(k.isObtuse(f,t,u))t=f;else{if(!k.isObtuse(f,u,t))return this.extremalPts=[new r(t),new r(u),new r(f)],null;u=f}}c.shouldNeverReachHere("Logic failure in Minimum Bounding Circle algorithm!")},compute:function(){return null!==this.extremalPts?null:(this.computeCirclePoints(),this.computeCentre(),void(null!==this.centre&&(this.radius=this.centre.distance(this.extremalPts[0]))))},getFarthestPoints:function(){switch(this.compute(),this.extremalPts.length){case 0:return this.input.getFactory().createLineString();case 1:return this.input.getFactory().createPoint(this.centre)}var n=this.extremalPts[0],t=this.extremalPts[this.extremalPts.length-1];return this.input.getFactory().createLineString([n,t])},getCircle:function(){if(this.compute(),null===this.centre)return this.input.getFactory().createPolygon();var n=this.input.getFactory().createPoint(this.centre);return 0===this.radius?n:n.buffer(this.radius)},getCentre:function(){return this.compute(),this.centre},computeCentre:function(){switch(this.extremalPts.length){case 0:this.centre=null;break;case 1:this.centre=this.extremalPts[0];break;case 2:this.centre=new r((this.extremalPts[0].x+this.extremalPts[1].x)/2,(this.extremalPts[0].y+this.extremalPts[1].y)/2);break;case 3:this.centre=vt.circumcentre(this.extremalPts[0],this.extremalPts[1],this.extremalPts[2])}},interfaces_:function(){return[]},getClass:function(){return ce}});ce.pointWitMinAngleWithX=function(n,t){for(var r,f,i,h,e,o=v.MAX_VALUE,s=null,u=0;u<n.length;u++)r=n[u],r!==t&&(f=r.x-t.x,i=r.y-t.y,i<0&&(i=-i),h=Math.sqrt(f*f+i*i),e=i/h,e<o&&(o=e,s=r));return s};ce.lowestPoint=function(n){for(var i=n[0],t=1;t<n.length;t++)n[t].y<i.y&&(i=n[t]);return i};ce.pointWithMinAngleWithSegment=function(n,t,i){for(var r,f,e=v.MAX_VALUE,o=null,u=0;u<n.length;u++)r=n[u],r!==t&&r!==i&&(f=k.angleBetween(t,r,i),f<e&&(e=f,o=r));return o};i(bi.prototype,{getWidthCoordinate:function(){return this.computeMinimumDiameter(),this.minWidthPt},getSupportingSegment:function(){return this.computeMinimumDiameter(),this.inputGeom.getFactory().createLineString([this.minBaseSeg.p0,this.minBaseSeg.p1])},getDiameter:function(){if(this.computeMinimumDiameter(),null===this.minWidthPt)return this.inputGeom.getFactory().createLineString(null);var n=this.minBaseSeg.project(this.minWidthPt);return this.inputGeom.getFactory().createLineString([n,this.minWidthPt])},computeWidthConvex:function(n){this.convexHullPts=n instanceof st?n.getExteriorRing().getCoordinates():n.getCoordinates();0===this.convexHullPts.length?(this.minWidth=0,this.minWidthPt=null,this.minBaseSeg=null):1===this.convexHullPts.length?(this.minWidth=0,this.minWidthPt=this.convexHullPts[0],this.minBaseSeg.p0=this.convexHullPts[0],this.minBaseSeg.p1=this.convexHullPts[0]):2===this.convexHullPts.length||3===this.convexHullPts.length?(this.minWidth=0,this.minWidthPt=this.convexHullPts[0],this.minBaseSeg.p0=this.convexHullPts[0],this.minBaseSeg.p1=this.convexHullPts[1]):this.computeConvexRingMinDiameter(this.convexHullPts)},computeConvexRingMinDiameter:function(n){this.minWidth=v.MAX_VALUE;for(var r=1,i=new b,t=0;t<n.length-1;t++)i.p0=n[t],i.p1=n[t+1],r=this.findMaxPerpDistance(n,i,r)},computeMinimumDiameter:function(){if(null!==this.minWidthPt)return null;if(this.isConvex)this.computeWidthConvex(this.inputGeom);else{var n=new gf(this.inputGeom).getConvexHull();this.computeWidthConvex(n)}},getLength:function(){return this.computeMinimumDiameter(),this.minWidth},findMaxPerpDistance:function(n,t,i){for(var r=t.distancePerpendicular(n[i]),f=r,u=i,e=u;f>=r;)r=f,u=e,e=bi.nextIndex(n,u),f=t.distancePerpendicular(n[e]);return r<this.minWidth&&(this.minPtIndex=u,this.minWidth=r,this.minWidthPt=n[this.minPtIndex],this.minBaseSeg=new b(t)),u},getMinimumRectangle:function(){var i,r;if(this.computeMinimumDiameter(),0===this.minWidth)return this.minBaseSeg.p0.equals2D(this.minBaseSeg.p1)?this.inputGeom.getFactory().createPoint(this.minBaseSeg.p0):this.minBaseSeg.toGeometry(this.inputGeom.getFactory());for(var n=this.minBaseSeg.p1.x-this.minBaseSeg.p0.x,t=this.minBaseSeg.p1.y-this.minBaseSeg.p0.y,f=v.MAX_VALUE,e=-v.MAX_VALUE,o=v.MAX_VALUE,s=-v.MAX_VALUE,u=0;u<this.convexHullPts.length;u++)i=bi.computeC(n,t,this.convexHullPts[u]),i>e&&(e=i),i<f&&(f=i),r=bi.computeC(-t,n,this.convexHullPts[u]),r>s&&(s=r),r<o&&(o=r);var h=bi.computeSegmentForLine(-n,-t,s),c=bi.computeSegmentForLine(-n,-t,o),l=bi.computeSegmentForLine(-t,n,e),a=bi.computeSegmentForLine(-t,n,f),y=l.lineIntersection(h),p=a.lineIntersection(h),w=a.lineIntersection(c),b=l.lineIntersection(c),k=this.inputGeom.getFactory().createLinearRing([y,p,w,b,y]);return this.inputGeom.getFactory().createPolygon(k,null)},interfaces_:function(){return[]},getClass:function(){return bi}});bi.nextIndex=function(n,t){return t++,t>=n.length&&(t=0),t};bi.computeC=function(n,t,i){return n*i.y-t*i.x};bi.getMinimumDiameter=function(n){return new bi(n).getDiameter()};bi.getMinimumRectangle=function(n){return new bi(n).getMinimumRectangle()};bi.computeSegmentForLine=function(n,t,i){var u=null,f=null;return Math.abs(t)>Math.abs(n)?(u=new r(0,i/t),f=new r(1,i/t-n/t)):(u=new r(i/n,0),f=new r(i/n-t/n,1)),new b(u,f)};cb=Object.freeze({Centroid:df,CGAlgorithms:s,ConvexHull:gf,InteriorPointArea:bu,InteriorPointLine:cv,InteriorPointPoint:lv,RobustLineIntersector:si,MCPointInRing:ac,MinimumBoundingCircle:ce,MinimumDiameter:bi});i(ro.prototype,{getResultGeometry:function(){return new yc(this.distanceTolerance).transform(this.inputGeom)},setDistanceTolerance:function(n){if(n<=0)throw new ct("Tolerance must be positive");this.distanceTolerance=n},interfaces_:function(){return[]},getClass:function(){return ro}});ro.densifyPoints=function(n,t,i){for(var e,o,c,s,l,h,r=new b,u=new ii,f=0;f<n.length-1;f++)if(r.p0=n[f],r.p1=n[f+1],u.add(r.p0,!1),e=r.getLength(),o=Math.trunc(e/t)+1,o>1)for(c=e/o,s=1;s<o;s++)l=s*c/e,h=r.pointAlong(l),i.makePrecise(h),u.add(h,!1);return u.add(n[n.length-1],!1),u.toCoordinateArray()};ro.densify=function(n,t){var i=new ro(n);return i.setDistanceTolerance(t),i.getResultGeometry()};y(yc,ur);i(yc.prototype,{transformMultiPolygon:function(n,t){var i=ur.prototype.transformMultiPolygon.call(this,n,t);return this.createValidArea(i)},transformPolygon:function(n,t){var i=ur.prototype.transformPolygon.call(this,n,t);return t instanceof ai?i:this.createValidArea(i)},transformCoordinates:function(n,t){var r=n.toCoordinateArray(),i=ro.densifyPoints(r,this.distanceTolerance,t.getPrecisionModel());return t instanceof d&&1===i.length&&(i=new Array(0).fill(null)),this.factory.getCoordinateSequenceFactory().create(i)},createValidArea:function(n){return n.buffer(0)},interfaces_:function(){return[]},getClass:function(){return yc}});ro.DensifyTransformer=yc;lb=Object.freeze({Densifier:ro});i(ue.prototype,{find:function(n){var t=this;do{if(null===t)return null;if(t.dest().equals2D(n))return t;t=t.oNext()}while(t!==this);return null},dest:function(){return this._sym._orig},oNext:function(){return this._sym._next},insert:function(n){var r,t,i;if(this.oNext()===this)return this.insertAfter(n),null;r=this.compareTo(n);t=this;do{if(i=t.oNext(),i.compareTo(n)!==r||i===this)return t.insertAfter(n),null;t=i}while(t!==this);c.shouldNeverReachHere()},insertAfter:function(n){c.equals(this._orig,n.orig());var t=this.oNext();this._sym.setNext(n);n.sym().setNext(t)},degree:function(){var t=0,n=this;do t++,n=n.oNext();while(n!==this);return t},equals:function(){if(2===arguments.length){var n=arguments[0],t=arguments[1];return this._orig.equals2D(n)&&this._sym._orig.equals(t)}},deltaY:function(){return this._sym._orig.y-this._orig.y},sym:function(){return this._sym},prev:function(){return this._sym.next()._sym},compareAngularDirection:function(n){var r=this.deltaX(),u=this.deltaY(),f=n.deltaX(),e=n.deltaY(),t,i;return r===f&&u===e?0:(t=it.quadrant(r,u),i=it.quadrant(f,e),t>i?1:t<i?-1:s.computeOrientation(n._orig,n.dest(),this.dest()))},prevNode:function(){for(var n=this;2===n.degree();)if((n=n.prev())===this)return null;return n},compareTo:function(n){var t=n;return this.compareAngularDirection(t)},next:function(){return this._next},setSym:function(n){this._sym=n},orig:function(){return this._orig},toString:function(){return"HE("+this._orig.x+" "+this._orig.y+", "+this._sym._orig.x+" "+this._sym._orig.y+")"},setNext:function(n){this._next=n},init:function(n){this.setSym(n);n.setSym(this);this.setNext(n);n.setNext(this)},deltaX:function(){return this._sym._orig.x-this._orig.x},interfaces_:function(){return[]},getClass:function(){return ue}});ue.init=function(n,t){if(null!==n._sym||null!==t._sym||null!==n._next||null!==t._next)throw new IllegalStateException("Edges are already initialized");return n.init(t),n};ue.create=function(n,t){var i=new ue(n),r=new ue(t);return i.init(r),i};y(yr,ue);i(yr.prototype,{mark:function(){this._isMarked=!0},setMark:function(n){this._isMarked=n},isMarked:function(){return this._isMarked},interfaces_:function(){return[]},getClass:function(){return yr}});yr.setMarkBoth=function(n,t){n.setMark(t);n.sym().setMark(t)};yr.isMarked=function(n){return n.isMarked()};yr.setMark=function(n,t){n.setMark(t)};yr.markBoth=function(n){n.mark();n.sym().mark()};yr.mark=function(n){n.mark()};i(uh.prototype,{insert:function(n,t,i){var r=this.create(n,t),u;return null!==i?i.insert(r):this.vertexMap.put(n,r),u=this.vertexMap.get(t),null!==u?u.insert(r.sym()):this.vertexMap.put(t,r.sym()),r},create:function(n,t){var i=this.createEdge(n),r=this.createEdge(t);return ue.init(i,r),i},createEdge:function(n){return new ue(n)},addEdge:function(n,t){if(!uh.isValidEdge(n,t))return null;var i=this.vertexMap.get(n),r=null;return null!==i&&(r=i.find(t)),null!==r?r:this.insert(n,t,i)},getVertexEdges:function(){return this.vertexMap.values()},findEdge:function(n,t){var i=this.vertexMap.get(n);return null===i?null:i.find(t)},interfaces_:function(){return[]},getClass:function(){return uh}});uh.isValidEdge=function(n,t){return 0!==t.compareTo(n)};y(av,yr);i(av.prototype,{setStart:function(){this._isStart=!0},isStart:function(){return this._isStart},interfaces_:function(){return[]},getClass:function(){return av}});y(vv,uh);i(vv.prototype,{createEdge:function(n){return new av(n)},interfaces_:function(){return[]},getClass:function(){return vv}});i(pc.prototype,{addLine:function(n){this.lines.add(this.factory.createLineString(n.toCoordinateArray()))},updateRingStartEdge:function(n){return n.isStart()||(n=n.sym(),n.isStart())?null===this.ringStartEdge?(this.ringStartEdge=n,null):void(n.orig().compareTo(this.ringStartEdge.orig())<0&&(this.ringStartEdge=n)):null},getResult:function(){return null===this.result&&this.computeResult(),this.result},process:function(n){var t=n.prevNode();null===t&&(t=n);this.stackEdges(t);this.buildLines()},buildRing:function(n){var i=new ii,t=n,r;for(i.add(t.orig().copy(),!1);2===t.sym().degree();){if(r=t.next(),r===n)break;i.add(r.orig().copy(),!1);t=r}i.add(t.dest().copy(),!1);this.addLine(i)},buildLine:function(n){var i=new ii,t=n,r;for(this.ringStartEdge=null,yr.markBoth(t),i.add(t.orig().copy(),!1);2===t.sym().degree();){if(this.updateRingStartEdge(t),r=t.next(),r===n)return this.buildRing(this.ringStartEdge),null;i.add(r.orig().copy(),!1);t=r;yr.markBoth(t)}i.add(t.dest().copy(),!1);this.stackEdges(t.sym());this.addLine(i)},stackEdges:function(n){var t=n;do yr.isMarked(t)||this.nodeEdgeStack.add(t),t=t.oNext();while(t!==n)},computeResult:function(){for(var t,i=this.graph.getVertexEdges(),n=i.iterator();n.hasNext();)t=n.next(),yr.isMarked(t)||this.process(t);this.result=this.factory.buildGeometry(this.lines)},buildLines:function(){for(;!this.nodeEdgeStack.empty();){var n=this.nodeEdgeStack.pop();yr.isMarked(n)||this.buildLine(n)}},add:function(){var u,n,f,t,r;if(arguments[0]instanceof h)arguments[0].apply({interfaces_:function(){return[yu]},filter:function(n){n instanceof d&&this.add(n)}});else if(l(arguments[0],yt))for(u=arguments[0],n=u.iterator();n.hasNext();)f=n.next(),this.add(f);else if(arguments[0]instanceof d){t=arguments[0];null===this.factory&&(this.factory=t.getFactory());for(var i=t.getCoordinateSequence(),e=!1,n=1;n<i.size();n++)r=this.graph.addEdge(i.getCoordinate(n-1),i.getCoordinate(n)),null!==r&&(e||(r.setStart(),e=!0))}},interfaces_:function(){return[]},getClass:function(){return pc}});pc.dissolve=function(n){var t=new pc;return t.add(n),t.getResult()};ab=Object.freeze({LineDissolver:pc});vb=Object.freeze({GeometryGraph:or});i(ef.prototype,{hasChildren:function(){for(var n=0;n<4;n++)if(null!==this.subnode[n])return!0;return!1},isPrunable:function(){return!(this.hasChildren()||this.hasItems())},addAllItems:function(n){n.addAll(this.items);for(var t=0;t<4;t++)null!==this.subnode[t]&&this.subnode[t].addAllItems(n);return n},getNodeCount:function(){for(var t=0,n=0;n<4;n++)null!==this.subnode[n]&&(t+=this.subnode[n].size());return t+1},size:function(){for(var t=0,n=0;n<4;n++)null!==this.subnode[n]&&(t+=this.subnode[n].size());return t+this.items.size()},addAllItemsFromOverlapping:function(n,t){if(!this.isSearchMatch(n))return null;t.addAll(this.items);for(var i=0;i<4;i++)null!==this.subnode[i]&&this.subnode[i].addAllItemsFromOverlapping(n,t)},visitItems:function(n,t){for(var i=this.items.iterator();i.hasNext();)t.visitItem(i.next())},hasItems:function(){return!this.items.isEmpty()},remove:function(n,t){if(!this.isSearchMatch(n))return!1;for(var r=!1,i=0;i<4;i++)if(null!==this.subnode[i]&&(r=this.subnode[i].remove(n,t))){this.subnode[i].isPrunable()&&(this.subnode[i]=null);break}return r||(r=this.items.remove(t))},visit:function(n,t){if(!this.isSearchMatch(n))return null;this.visitItems(n,t);for(var i=0;i<4;i++)null!==this.subnode[i]&&this.subnode[i].visit(n,t)},getItems:function(){return this.items},depth:function(){for(var i,t=0,n=0;n<4;n++)null!==this.subnode[n]&&(i=this.subnode[n].depth(),i>t&&(t=i));return t+1},isEmpty:function(){var t=!0,n;for(this.items.isEmpty()||(t=!1),n=0;n<4;n++)null!==this.subnode[n]&&(this.subnode[n].isEmpty()||(t=!1));return t},add:function(n){this.items.add(n)},interfaces_:function(){return[ir]},getClass:function(){return ef}});ef.getSubnodeIndex=function(n,t,i){var r=-1;return n.getMinX()>=t&&(n.getMinY()>=i&&(r=3),n.getMaxY()<=i&&(r=1)),n.getMaxX()<=t&&(n.getMinY()>=i&&(r=2),n.getMaxY()<=i&&(r=0)),r};i(wc.prototype,{getLevel:function(){return this.level},computeKey:function(){var t;if(1===arguments.length)for(t=arguments[0],this.level=wc.computeQuadLevel(t),this.env=new p,this.computeKey(this.level,t);!this.env.contains(t);)this.level+=1,this.computeKey(this.level,t);else if(2===arguments.length){var r=arguments[0],i=arguments[1],n=rs.powerOf2(r);this.pt.x=Math.floor(i.getMinX()/n)*n;this.pt.y=Math.floor(i.getMinY()/n)*n;this.env.init(this.pt.x,this.pt.x+n,this.pt.y,this.pt.y+n)}},getEnvelope:function(){return this.env},getCentre:function(){return new r((this.env.getMinX()+this.env.getMaxX())/2,(this.env.getMinY()+this.env.getMaxY())/2)},getPoint:function(){return this.pt},interfaces_:function(){return[]},getClass:function(){return wc}});wc.computeQuadLevel=function(n){var t=n.getWidth(),i=n.getHeight(),r=t>i?t:i;return rs.exponent(r)+1};y(le,ef);i(le.prototype,{find:function(n){var t=ef.getSubnodeIndex(n,this.centrex,this.centrey);return-1===t?this:null!==this.subnode[t]?this.subnode[t].find(n):this},isSearchMatch:function(n){return this.env.intersects(n)},getSubnode:function(n){return null===this.subnode[n]&&(this.subnode[n]=this.createSubnode(n)),this.subnode[n]},getEnvelope:function(){return this.env},getNode:function(n){var t=ef.getSubnodeIndex(n,this.centrex,this.centrey);return-1!==t?this.getSubnode(t).getNode(n):this},createSubnode:function(n){var t=0,i=0,r=0,u=0;switch(n){case 0:t=this.env.getMinX();i=this.centrex;r=this.env.getMinY();u=this.centrey;break;case 1:t=this.centrex;i=this.env.getMaxX();r=this.env.getMinY();u=this.centrey;break;case 2:t=this.env.getMinX();i=this.centrex;r=this.centrey;u=this.env.getMaxY();break;case 3:t=this.centrex;i=this.env.getMaxX();r=this.centrey;u=this.env.getMaxY()}return new le(new p(t,i,r,u),this.level-1)},insertNode:function(n){var t,i;c.isTrue(null===this.env||this.env.contains(n.env));t=ef.getSubnodeIndex(n.env,this.centrex,this.centrey);n.level===this.level-1?this.subnode[t]=n:(i=this.createSubnode(t),i.insertNode(n),this.subnode[t]=i)},interfaces_:function(){return[]},getClass:function(){return le}});le.createNode=function(n){var t=new wc(n);return new le(t.getEnvelope(),t.getLevel())};le.createExpanded=function(n,t){var r=new p(t),i;return null!==n&&r.expandToInclude(n.env),i=le.createNode(r),null!==n&&i.insertNode(n),i};y(us,ef);i(us.prototype,{insert:function(n,t){var i=ef.getSubnodeIndex(n,us.origin.x,us.origin.y),r,u;if(-1===i)return this.add(t),null;r=this.subnode[i];null!==r&&r.getEnvelope().contains(n)||(u=le.createExpanded(r,n),this.subnode[i]=u);this.insertContained(this.subnode[i],n,t)},isSearchMatch:function(){return!0},insertContained:function(n,t,i){c.isTrue(n.getEnvelope().contains(t));var u=io.isZeroWidth(t.getMinX(),t.getMaxX()),f=io.isZeroWidth(t.getMinY(),t.getMaxY()),r=null;r=u||f?n.find(t):n.getNode(t);r.add(i)},interfaces_:function(){return[]},getClass:function(){return us}});us.origin=new r(0,0);i(uo.prototype,{size:function(){return null!==this.root?this.root.size():0},insert:function(n,t){this.collectStats(n);var i=uo.ensureExtent(n,this.minExtent);this.root.insert(i,t)},query:function(){var t,n,i,r;if(1===arguments.length)return t=arguments[0],n=new ev,this.query(t,n),n.getItems();2===arguments.length&&(i=arguments[0],r=arguments[1],this.root.visit(i,r))},queryAll:function(){var n=new u;return this.root.addAllItems(n),n},remove:function(n,t){var i=uo.ensureExtent(n,this.minExtent);return this.root.remove(i,t)},collectStats:function(n){var i=n.getWidth(),t;i<this.minExtent&&i>0&&(this.minExtent=i);t=n.getHeight();t<this.minExtent&&t>0&&(this.minExtent=t)},depth:function(){return null!==this.root?this.root.depth():0},isEmpty:function(){return null===this.root},interfaces_:function(){return[wa,ir]},getClass:function(){return uo}});uo.ensureExtent=function(n,t){var i=n.getMinX(),u=n.getMaxX(),r=n.getMinY(),f=n.getMaxY();return i!==u&&r!==f?n:(i===u&&(i-=t/2,u=i+t/2),r===f&&(r-=t/2,f=r+t/2),new p(i,u,r,f))};uo.serialVersionUID=-0x678b60c967a25400;var sd=Object.freeze({Quadtree:uo}),hd=Object.freeze({STRtree:kt}),cd=Object.freeze({quadtree:sd,strtree:hd}),ld=["Point","MultiPoint","LineString","MultiLineString","Polygon","MultiPolygon"];i(rw.prototype,{read:function(n){var i=void 0,t;if(i="string"==typeof n?JSON.parse(n):n,t=i.type,!au[t])throw new Error("Unknown GeoJSON type: "+i.type);return-1!==ld.indexOf(t)?au[t].apply(this,[i.coordinates]):"GeometryCollection"===t?au[t].apply(this,[i.geometries]):au[t].apply(this,[i])},write:function(n){var t=n.getGeometryType();if(!af[t])throw new Error("Geometry is not supported");return af[t].apply(this,[n])}});au={Feature:function(n){var t={},i,r;for(i in n)t[i]=n[i];if(n.geometry){if(r=n.geometry.type,!au[r])throw new Error("Unknown GeoJSON type: "+n.type);t.geometry=this.read(n.geometry)}return n.bbox&&(t.bbox=au.bbox.apply(this,[n.bbox])),t},FeatureCollection:function(n){var t={},i;if(n.features)for(t.features=[],i=0;i<n.features.length;++i)t.features.push(this.read(n.features[i]));return n.bbox&&(t.bbox=this.parse.bbox.apply(this,[n.bbox])),t},coordinates:function(n){for(var u,i=[],t=0;t<n.length;++t)u=n[t],i.push(new r(u[0],u[1]));return i},bbox:function(n){return this.geometryFactory.createLinearRing([new r(n[0],n[1]),new r(n[2],n[1]),new r(n[2],n[3]),new r(n[0],n[3]),new r(n[0],n[1])])},Point:function(n){var t=new r(n[0],n[1]);return this.geometryFactory.createPoint(t)},MultiPoint:function(n){for(var i=[],t=0;t<n.length;++t)i.push(au.Point.apply(this,[n[t]]));return this.geometryFactory.createMultiPoint(i)},LineString:function(n){var t=au.coordinates.apply(this,[n]);return this.geometryFactory.createLineString(t)},MultiLineString:function(n){for(var i=[],t=0;t<n.length;++t)i.push(au.LineString.apply(this,[n[t]]));return this.geometryFactory.createMultiLineString(i)},Polygon:function(n){for(var r=au.coordinates.apply(this,[n[0]]),u=this.geometryFactory.createLinearRing(r),i=[],t=1;t<n.length;++t){var f=n[t],e=au.coordinates.apply(this,[f]),o=this.geometryFactory.createLinearRing(e);i.push(o)}return this.geometryFactory.createPolygon(u,i)},MultiPolygon:function(n){for(var r,i=[],t=0;t<n.length;++t)r=n[t],i.push(au.Polygon.apply(this,[r]));return this.geometryFactory.createMultiPolygon(i)},GeometryCollection:function(n){for(var r,i=[],t=0;t<n.length;++t)r=n[t],i.push(this.read(r));return this.geometryFactory.createGeometryCollection(i)}};af={coordinate:function(n){return[n.x,n.y]},Point:function(n){return{type:"Point",coordinates:af.coordinate.apply(this,[n.getCoordinate()])}},MultiPoint:function(n){for(var r,u,i=[],t=0;t<n.geometries.length;++t)r=n.geometries[t],u=af.Point.apply(this,[r]),i.push(u.coordinates);return{type:"MultiPoint",coordinates:i}},LineString:function(n){for(var u,i=[],r=n.getCoordinates(),t=0;t<r.length;++t)u=r[t],i.push(af.coordinate.apply(this,[u]));return{type:"LineString",coordinates:i}},MultiLineString:function(n){for(var r,u,i=[],t=0;t<n.geometries.length;++t)r=n.geometries[t],u=af.LineString.apply(this,[r]),i.push(u.coordinates);return{type:"MultiLineString",coordinates:i}},Polygon:function(n){var i=[],f=af.LineString.apply(this,[n.shell]),t,r,u;for(i.push(f.coordinates),t=0;t<n.holes.length;++t)r=n.holes[t],u=af.LineString.apply(this,[r]),i.push(u.coordinates);return{type:"Polygon",coordinates:i}},MultiPolygon:function(n){for(var r,u,i=[],t=0;t<n.geometries.length;++t)r=n.geometries[t],u=af.Polygon.apply(this,[r]),i.push(u.coordinates);return{type:"MultiPolygon",coordinates:i}},GeometryCollection:function(n){for(var r,u,i=[],t=0;t<n.geometries.length;++t)r=n.geometries[t],u=r.getGeometryType(),i.push(af[u].apply(this,[r]));return{type:"GeometryCollection",geometries:i}}};i(fb.prototype,{read:function(n){var t=this.parser.read(n);return this.precisionModel.getType()===ft.FIXED&&this.reducePrecision(t),t},reducePrecision:function(n){var t,i;if(n.coordinate)this.precisionModel.makePrecise(n.coordinate);else if(n.points)for(t=0,i=n.points.length;t<i;t++)this.precisionModel.makePrecise(n.points[t]);else if(n.geometries)for(t=0,i=n.geometries.length;t<i;t++)this.reducePrecision(n.geometries[t])}});i(eb.prototype,{write:function(n){return this.parser.write(n)}});i(ob.prototype,{read:function(n){var t=this.parser.read(n);return this.precisionModel.getType()===ft.FIXED&&this.reducePrecision(t),t},reducePrecision:function(n){var t,r,i,u;if(n.coordinate)this.precisionModel.makePrecise(n.coordinate);else if(n.points)for(t=0,r=n.points.coordinates.length;t<r;t++)this.precisionModel.makePrecise(n.points.coordinates[t]);else if(n.geometries)for(i=0,u=n.geometries.length;i<u;i++)this.reducePrecision(n.geometries[i])}});i(sb.prototype,{read:function(n){var t=this.ol;return n instanceof t.geom.Point?this.convertFromPoint(n):n instanceof t.geom.LineString?this.convertFromLineString(n):n instanceof t.geom.LinearRing?this.convertFromLinearRing(n):n instanceof t.geom.Polygon?this.convertFromPolygon(n):n instanceof t.geom.MultiPoint?this.convertFromMultiPoint(n):n instanceof t.geom.MultiLineString?this.convertFromMultiLineString(n):n instanceof t.geom.MultiPolygon?this.convertFromMultiPolygon(n):n instanceof t.geom.GeometryCollection?this.convertFromCollection(n):void 0},convertFromPoint:function(n){var t=n.getCoordinates();return this.geometryFactory.createPoint(new r(t[0],t[1]))},convertFromLineString:function(n){return this.geometryFactory.createLineString(n.getCoordinates().map(function(n){return new r(n[0],n[1])}))},convertFromLinearRing:function(n){return this.geometryFactory.createLinearRing(n.getCoordinates().map(function(n){return new r(n[0],n[1])}))},convertFromPolygon:function(n){for(var i,r=n.getLinearRings(),u=null,f=[],t=0;t<r.length;t++)i=this.convertFromLinearRing(r[t]),0===t?u=i:f.push(i);return this.geometryFactory.createPolygon(u,f)},convertFromMultiPoint:function(n){var t=n.getPoints().map(function(n){return this.convertFromPoint(n)},this);return this.geometryFactory.createMultiPoint(t)},convertFromMultiLineString:function(n){var t=n.getLineStrings().map(function(n){return this.convertFromLineString(n)},this);return this.geometryFactory.createMultiLineString(t)},convertFromMultiPolygon:function(n){var t=n.getPolygons().map(function(n){return this.convertFromPolygon(n)},this);return this.geometryFactory.createMultiPolygon(t)},convertFromCollection:function(n){var t=n.getGeometries().map(function(n){return this.read(n)},this);return this.geometryFactory.createGeometryCollection(t)},write:function(n){return"Point"===n.getGeometryType()?this.convertToPoint(n.getCoordinate()):"LineString"===n.getGeometryType()?this.convertToLineString(n):"LinearRing"===n.getGeometryType()?this.convertToLinearRing(n):"Polygon"===n.getGeometryType()?this.convertToPolygon(n):"MultiPoint"===n.getGeometryType()?this.convertToMultiPoint(n):"MultiLineString"===n.getGeometryType()?this.convertToMultiLineString(n):"MultiPolygon"===n.getGeometryType()?this.convertToMultiPolygon(n):"GeometryCollection"===n.getGeometryType()?this.convertToCollection(n):void 0},convertToPoint:function(n){return new this.ol.geom.Point([n.x,n.y])},convertToLineString:function(n){var t=n.points.coordinates.map(bc);return new this.ol.geom.LineString(t)},convertToLinearRing:function(n){var t=n.points.coordinates.map(bc);return new this.ol.geom.LinearRing(t)},convertToPolygon:function(n){for(var i=[n.shell.points.coordinates.map(bc)],t=0;t<n.holes.length;t++)i.push(n.holes[t].points.coordinates.map(bc));return new this.ol.geom.Polygon(i)},convertToMultiPoint:function(n){return new this.ol.geom.MultiPoint(n.getCoordinates().map(bc))},convertToMultiLineString:function(n){for(var i=[],t=0;t<n.geometries.length;t++)i.push(this.convertToLineString(n.geometries[t]).getCoordinates());return new this.ol.geom.MultiLineString(i)},convertToMultiPolygon:function(n){for(var i=[],t=0;t<n.geometries.length;t++)i.push(this.convertToPolygon(n.geometries[t]).getCoordinates());return new this.ol.geom.MultiPolygon(i)},convertToCollection:function(n){for(var r,i=[],t=0;t<n.geometries.length;t++)r=n.geometries[t],i.push(this.write(r));return new this.ol.geom.GeometryCollection(i)}});yb=Object.freeze({GeoJSONReader:fb,GeoJSONWriter:eb,OL3Parser:sb,WKTReader:ob,WKTWriter:pi});i(kc.prototype,{rescale:function(){var i,u,n,t;if(l(arguments[0],yt))for(i=arguments[0],t=i.iterator();t.hasNext();)u=t.next(),this.rescale(u.getCoordinates());else if(arguments[0]instanceof Array){for(n=arguments[0],2===n.length&&(new r(n[0]),new r(n[1])),t=0;t<n.length;t++)n[t].x=n[t].x/this.scaleFactor+this.offsetX,n[t].y=n[t].y/this.scaleFactor+this.offsetY;2===n.length&&n[0].equals2D(n[1])&&pt.out.println(n)}},scale:function(){var i;if(l(arguments[0],yt)){for(var o=arguments[0],f=new u,n=o.iterator();n.hasNext();)i=n.next(),f.add(new tf(this.scale(i.getCoordinates()),i.getData()));return f}if(arguments[0]instanceof Array){for(var t=arguments[0],e=new Array(t.length).fill(null),n=0;n<t.length;n++)e[n]=new r(Math.round((t[n].x-this.offsetX)*this.scaleFactor),Math.round((t[n].y-this.offsetY)*this.scaleFactor),t[n].z);return w.removeRepeatedPoints(e)}},isIntegerPrecision:function(){return 1===this.scaleFactor},getNodedSubstrings:function(){var n=this.noder.getNodedSubstrings();return this.isScaled&&this.rescale(n),n},computeNodes:function(n){var t=n;this.isScaled&&(t=this.scale(n));this.noder.computeNodes(t)},interfaces_:function(){return[uc]},getClass:function(){return kc}});pb=Object.freeze({MCIndexNoder:be,ScaledNoder:kc,SegmentString:tc});i(dc.prototype,{isSimpleMultiPoint:function(n){var r,t,u,i;if(n.isEmpty())return!0;for(r=new di,t=0;t<n.getNumGeometries();t++){if(u=n.getGeometryN(t),i=u.getCoordinate(),r.contains(i))return this.nonSimpleLocation=i,!1;r.add(i)}return!0},isSimplePolygonal:function(n){for(var r,i=wi.getLines(n),t=i.iterator();t.hasNext();)if(r=t.next(),!this.isSimpleLinearGeometry(r))return!1;return!0},hasClosedEndpointIntersection:function(n){for(var e,u,r=new ui,t=n.getEdgeIterator();t.hasNext();){var i=t.next(),f=(i.getMaximumSegmentIndex(),i.isClosed()),o=i.getCoordinate(0);this.addEndpoint(r,o,f);e=i.getCoordinate(i.getNumPoints()-1);this.addEndpoint(r,e,f)}for(t=r.values().iterator();t.hasNext();)if(u=t.next(),u.isClosed&&2!==u.degree)return this.nonSimpleLocation=u.getCoordinate(),!0;return!1},getNonSimpleLocation:function(){return this.nonSimpleLocation},isSimpleLinearGeometry:function(n){if(n.isEmpty())return!0;var t=new or(0,n),r=new si,i=t.computeSelfNodes(r,!0);return!(i.hasIntersection()&&(i.hasProperIntersection()?(this.nonSimpleLocation=i.getProperIntersectionPoint(),1):this.hasNonEndpointIntersection(t)||this.isClosedEndpointsInInterior&&this.hasClosedEndpointIntersection(t)))},hasNonEndpointIntersection:function(n){for(var i,t=n.getEdgeIterator();t.hasNext();)for(var r=t.next(),f=r.getMaximumSegmentIndex(),u=r.getEdgeIntersectionList().iterator();u.hasNext();)if(i=u.next(),!i.isEndPoint(f))return this.nonSimpleLocation=i.getCoordinate(),!0;return!1},addEndpoint:function(n,t,i){var r=n.get(t);null===r&&(r=new yv(t),n.put(t,r));r.addEndpoint(i)},computeSimple:function(n){return this.nonSimpleLocation=null,!!n.isEmpty()||(n instanceof d?this.isSimpleLinearGeometry(n):n instanceof cr?this.isSimpleLinearGeometry(n):n instanceof lr?this.isSimpleMultiPoint(n):l(n,bf)?this.isSimplePolygonal(n):!(n instanceof nt)||this.isSimpleGeometryCollection(n))},isSimple:function(){return this.nonSimpleLocation=null,this.computeSimple(this.inputGeom)},isSimpleGeometryCollection:function(n){for(var i,t=0;t<n.getNumGeometries();t++)if(i=n.getGeometryN(t),!this.computeSimple(i))return!1;return!0},interfaces_:function(){return[]},getClass:function(){return dc}});i(yv.prototype,{addEndpoint:function(n){this.degree++;this.isClosed|=n},getCoordinate:function(){return this.pt},interfaces_:function(){return[]},getClass:function(){return yv}});dc.EndpointInfo=yv;i(rt.prototype,{getEndCapStyle:function(){return this.endCapStyle},isSingleSided:function(){return this._isSingleSided},setQuadrantSegments:function(n){this.quadrantSegments=n;0===this.quadrantSegments&&(this.joinStyle=rt.JOIN_BEVEL);this.quadrantSegments<0&&(this.joinStyle=rt.JOIN_MITRE,this.mitreLimit=Math.abs(this.quadrantSegments));n<=0&&(this.quadrantSegments=1);this.joinStyle!==rt.JOIN_ROUND&&(this.quadrantSegments=rt.DEFAULT_QUADRANT_SEGMENTS)},getJoinStyle:function(){return this.joinStyle},setJoinStyle:function(n){this.joinStyle=n},setSimplifyFactor:function(n){this.simplifyFactor=n<0?0:n},getSimplifyFactor:function(){return this.simplifyFactor},getQuadrantSegments:function(){return this.quadrantSegments},setEndCapStyle:function(n){this.endCapStyle=n},getMitreLimit:function(){return this.mitreLimit},setMitreLimit:function(n){this.mitreLimit=n},setSingleSided:function(n){this._isSingleSided=n},interfaces_:function(){return[]},getClass:function(){return rt}});rt.bufferDistanceError=function(n){var t=Math.PI/2/n;return 1-Math.cos(t/2)};rt.CAP_ROUND=1;rt.CAP_FLAT=2;rt.CAP_SQUARE=3;rt.JOIN_ROUND=1;rt.JOIN_MITRE=2;rt.JOIN_BEVEL=3;rt.DEFAULT_QUADRANT_SEGMENTS=8;rt.DEFAULT_MITRE_LIMIT=5;rt.DEFAULT_SIMPLIFY_FACTOR=.01;i(uw.prototype,{getCoordinate:function(){return this.minCoord},getRightmostSide:function(n,t){var i=this.getRightmostSideOfSegment(n,t);return i<0&&(i=this.getRightmostSideOfSegment(n,t-1)),i<0&&(this.minCoord=null,this.checkForRightmostCoordinate(n)),i},findRightmostEdgeAtVertex:function(){var n=this.minDe.getEdge().getCoordinates();c.isTrue(this.minIndex>0&&this.minIndex<n.length,"rightmost point expected to be interior vertex of edge");var t=n[this.minIndex-1],i=n[this.minIndex+1],u=s.computeOrientation(this.minCoord,i,t),r=!1;t.y<this.minCoord.y&&i.y<this.minCoord.y&&u===s.COUNTERCLOCKWISE?r=!0:t.y>this.minCoord.y&&i.y>this.minCoord.y&&u===s.CLOCKWISE&&(r=!0);r&&(this.minIndex=this.minIndex-1)},getRightmostSideOfSegment:function(n,t){var u=n.getEdge(),i=u.getCoordinates(),r;return t<0||t+1>=i.length?-1:i[t].y===i[t+1].y?-1:(r=o.LEFT,i[t].y<i[t+1].y&&(r=o.RIGHT),r)},getEdge:function(){return this.orientedDe},checkForRightmostCoordinate:function(n){for(var i=n.getEdge().getCoordinates(),t=0;t<i.length-1;t++)(null===this.minCoord||i[t].x>this.minCoord.x)&&(this.minDe=n,this.minIndex=t,this.minCoord=i[t])},findRightmostEdgeAtNode:function(){var n=this.minDe.getNode(),t=n.getEdges();this.minDe=t.getRightmostEdge();this.minDe.isForward()||(this.minDe=this.minDe.getSym(),this.minIndex=this.minDe.getEdge().getCoordinates().length-1)},findEdge:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),i.isForward()&&this.checkForRightmostCoordinate(i);c.isTrue(0!==this.minIndex||this.minCoord.equals(this.minDe.getCoordinate()),"inconsistency in rightmost processing");0===this.minIndex?this.findRightmostEdgeAtNode():this.findRightmostEdgeAtVertex();this.orientedDe=this.minDe;this.getRightmostSide(this.minDe,this.minIndex)===o.LEFT&&(this.orientedDe=this.minDe.getSym())},interfaces_:function(){return[]},getClass:function(){return uw}});pv.prototype.addLast=function(n){this.array_.push(n)};pv.prototype.removeFirst=function(){return this.array_.shift()};pv.prototype.isEmpty=function(){return 0===this.array_.length};i(fw.prototype,{clearVisitedEdges:function(){for(var n=this.dirEdgeList.iterator();n.hasNext();)n.next().setVisited(!1)},getRightmostCoordinate:function(){return this.rightMostCoord},computeNodeDepth:function(n){for(var t,r=null,i=n.getEdges().iterator();i.hasNext();)if(t=i.next(),t.isVisited()||t.getSym().isVisited()){r=t;break}if(null===r)throw new ar("unable to find edge to compute depths at "+n.getCoordinate());for(n.getEdges().computeDepths(r),i=n.getEdges().iterator();i.hasNext();)t=i.next(),t.setVisited(!0),this.copySymDepths(t)},computeDepth:function(n){this.clearVisitedEdges();var t=this.finder.getEdge();t.getNode();t.getLabel();t.setEdgeDepths(o.RIGHT,n);this.copySymDepths(t);this.computeDepths(t)},create:function(n){this.addReachable(n);this.finder.findEdge(this.dirEdgeList);this.rightMostCoord=this.finder.getCoordinate()},findResultEdges:function(){for(var n,t=this.dirEdgeList.iterator();t.hasNext();)n=t.next(),n.getDepth(o.RIGHT)>=1&&n.getDepth(o.LEFT)<=0&&!n.isInteriorAreaEdge()&&n.setInResult(!0)},computeDepths:function(n){var t=new li,i=new pv,o=n.getNode(),r,f,s,e,u;for(i.addLast(o),t.add(o),n.setVisited(!0);!i.isEmpty();)for(r=i.removeFirst(),t.add(r),this.computeNodeDepth(r),f=r.getEdges().iterator();f.hasNext();)s=f.next(),e=s.getSym(),e.isVisited()||(u=e.getNode(),t.contains(u)||(i.addLast(u),t.add(u)))},compareTo:function(n){var t=n;return this.rightMostCoord.x<t.rightMostCoord.x?-1:this.rightMostCoord.x>t.rightMostCoord.x?1:0},getEnvelope:function(){var n,t;if(null===this.env){for(n=new p,t=this.dirEdgeList.iterator();t.hasNext();)for(var u=t.next(),r=u.getEdge().getCoordinates(),i=0;i<r.length-1;i++)n.expandToInclude(r[i]);this.env=n}return this.env},addReachable:function(n){var t=new gi,i;for(t.add(n);!t.empty();)i=t.pop(),this.add(i,t)},copySymDepths:function(n){var t=n.getSym();t.setDepth(o.LEFT,n.getDepth(o.RIGHT));t.setDepth(o.RIGHT,n.getDepth(o.LEFT))},add:function(n,t){var i,r,f,u;for(n.setVisited(!0),this.nodes.add(n),i=n.getEdges().iterator();i.hasNext();)r=i.next(),this.dirEdgeList.add(r),f=r.getSym(),u=f.getNode(),u.isVisited()||t.push(u)},getNodes:function(){return this.nodes},getDirectedEdges:function(){return this.dirEdgeList},interfaces_:function(){return[sr]},getClass:function(){return fw}});i(vi.prototype,{isDeletable:function(n,t,i,r){var u=this.inputLine[n],f=this.inputLine[t],e=this.inputLine[i];return!!this.isConcave(u,f,e)&&!!this.isShallow(u,f,e,r)&&this.isShallowSampled(u,f,n,i,r)},deleteShallowConcavities:function(){for(var r,t=1,n=(this.inputLine.length,this.findNextNonDeletedIndex(t)),i=this.findNextNonDeletedIndex(n),u=!1;i<this.inputLine.length;)r=!1,this.isDeletable(t,n,i,this.distanceTol)&&(this.isDeleted[n]=vi.DELETE,r=!0,u=!0),t=r?i:n,n=this.findNextNonDeletedIndex(t),i=this.findNextNonDeletedIndex(n);return u},isShallowConcavity:function(n,t,i,r){return s.computeOrientation(n,t,i)===this.angleOrientation&&s.distancePointLine(t,n,i)<r},isShallowSampled:function(n,t,i,r,u){var e=Math.trunc((r-i)/vi.NUM_PTS_TO_CHECK),f;for(e<=0&&(e=1),f=i;f<r;f+=e)if(!this.isShallow(n,t,this.inputLine[f],u))return!1;return!0},isConcave:function(n,t,i){return s.computeOrientation(n,t,i)===this.angleOrientation},simplify:function(n){this.distanceTol=Math.abs(n);n<0&&(this.angleOrientation=s.CLOCKWISE);this.isDeleted=new Array(this.inputLine.length).fill(null);var t=!1;do t=this.deleteShallowConcavities();while(t);return this.collapseLine()},findNextNonDeletedIndex:function(n){for(var t=n+1;t<this.inputLine.length&&this.isDeleted[t]===vi.DELETE;)t++;return t},isShallow:function(n,t,i,r){return s.distancePointLine(t,n,i)<r},collapseLine:function(){for(var t=new ii,n=0;n<this.inputLine.length;n++)this.isDeleted[n]!==vi.DELETE&&t.add(this.inputLine[n]);return t.toCoordinateArray()},interfaces_:function(){return[]},getClass:function(){return vi}});vi.simplify=function(n,t){return new vi(n).simplify(t)};vi.INIT=0;vi.DELETE=1;vi.KEEP=1;vi.NUM_PTS_TO_CHECK=10;i(gc.prototype,{getCoordinates:function(){return this.ptList.toArray(gc.COORDINATE_ARRAY_TYPE)},setPrecisionModel:function(n){this.precisionModel=n},addPt:function(n){var t=new r(n);return this.precisionModel.makePrecise(t),this.isRedundant(t)?null:void this.ptList.add(t)},reverse:function(){},addPts:function(n,t){var i;if(t)for(i=0;i<n.length;i++)this.addPt(n[i]);else for(i=n.length-1;i>=0;i--)this.addPt(n[i])},isRedundant:function(n){if(this.ptList.size()<1)return!1;var t=this.ptList.get(this.ptList.size()-1);return n.distance(t)<this.minimimVertexDistance},toString:function(){return(new g).createLineString(this.getCoordinates()).toString()},closeRing:function(){if(this.ptList.size()<1)return null;var n=new r(this.ptList.get(0)),t=this.ptList.get(this.ptList.size()-1);return this.ptList.size()>=2&&this.ptList.get(this.ptList.size()-2),n.equals(t)?null:void this.ptList.add(n)},setMinimumVertexDistance:function(n){this.minimimVertexDistance=n},interfaces_:function(){return[]},getClass:function(){return gc}});gc.COORDINATE_ARRAY_TYPE=new Array(0).fill(null);i(of.prototype,{addNextSegment:function(n,t){if(this.s0=this.s1,this.s1=this.s2,this.s2=n,this.seg0.setCoordinates(this.s0,this.s1),this.computeOffsetSegment(this.seg0,this.side,this.distance,this.offset0),this.seg1.setCoordinates(this.s1,this.s2),this.computeOffsetSegment(this.seg1,this.side,this.distance,this.offset1),this.s1.equals(this.s2))return null;var i=s.computeOrientation(this.s0,this.s1,this.s2),r=i===s.CLOCKWISE&&this.side===o.LEFT||i===s.COUNTERCLOCKWISE&&this.side===o.RIGHT;0===i?this.addCollinear(t):r?this.addOutsideTurn(i,t):this.addInsideTurn(i,t)},addLineEndCap:function(n,t){var h=new b(n,t),f=new b,u,i,c,l;this.computeOffsetSegment(h,o.LEFT,this.distance,f);u=new b;this.computeOffsetSegment(h,o.RIGHT,this.distance,u);var a=t.x-n.x,v=t.y-n.y,e=Math.atan2(v,a);switch(this.bufParams.getEndCapStyle()){case rt.CAP_ROUND:this.segList.addPt(f.p1);this.addFilletArc(t,e+Math.PI/2,e-Math.PI/2,s.CLOCKWISE,this.distance);this.segList.addPt(u.p1);break;case rt.CAP_FLAT:this.segList.addPt(f.p1);this.segList.addPt(u.p1);break;case rt.CAP_SQUARE:i=new r;i.x=Math.abs(this.distance)*Math.cos(e);i.y=Math.abs(this.distance)*Math.sin(e);c=new r(f.p1.x+i.x,f.p1.y+i.y);l=new r(u.p1.x+i.x,u.p1.y+i.y);this.segList.addPt(c);this.segList.addPt(l)}},getCoordinates:function(){return this.segList.getCoordinates()},addMitreJoin:function(n,t,i,u){var e=!0,f=null;try{f=hr.intersection(t.p0,t.p1,i.p0,i.p1);(u<=0?1:f.distance(n)/Math.abs(u))>this.bufParams.getMitreLimit()&&(e=!1)}catch(n){if(!(n instanceof vf))throw n;f=new r(0,0);e=!1}e?this.segList.addPt(f):this.addLimitedMitreJoin(t,i,u,this.bufParams.getMitreLimit())},addFilletCorner:function(n,t,i,r,u){var o=t.x-n.x,h=t.y-n.y,f=Math.atan2(h,o),c=i.x-n.x,l=i.y-n.y,e=Math.atan2(l,c);r===s.CLOCKWISE?f<=e&&(f+=2*Math.PI):f>=e&&(f-=2*Math.PI);this.segList.addPt(t);this.addFilletArc(n,f,e,r,u);this.segList.addPt(i)},addOutsideTurn:function(n,t){return this.offset0.p1.distance(this.offset1.p0)<this.distance*of.OFFSET_SEGMENT_SEPARATION_FACTOR?(this.segList.addPt(this.offset0.p1),null):void(this.bufParams.getJoinStyle()===rt.JOIN_MITRE?this.addMitreJoin(this.s1,this.offset0,this.offset1,this.distance):this.bufParams.getJoinStyle()===rt.JOIN_BEVEL?this.addBevelJoin(this.offset0,this.offset1):(t&&this.segList.addPt(this.offset0.p1),this.addFilletCorner(this.s1,this.offset0.p1,this.offset1.p0,n,this.distance),this.segList.addPt(this.offset1.p0)))},createSquare:function(n){this.segList.addPt(new r(n.x+this.distance,n.y+this.distance));this.segList.addPt(new r(n.x+this.distance,n.y-this.distance));this.segList.addPt(new r(n.x-this.distance,n.y-this.distance));this.segList.addPt(new r(n.x-this.distance,n.y+this.distance));this.segList.closeRing()},addSegments:function(n,t){this.segList.addPts(n,t)},addFirstSegment:function(){this.segList.addPt(this.offset1.p0)},addLastSegment:function(){this.segList.addPt(this.offset1.p1)},initSideSegments:function(n,t,i){this.s1=n;this.s2=t;this.side=i;this.seg1.setCoordinates(n,t);this.computeOffsetSegment(this.seg1,i,this.distance,this.offset1)},addLimitedMitreJoin:function(n,t,i,u){var f=this.seg0.p1,y=k.angle(f,this.seg0.p0),p=(k.angle(f,this.seg1.p1),k.angleBetweenOriented(this.seg0.p0,f,this.seg1.p1)),s=p/2,w=k.normalize(y+s),h=k.normalize(w+Math.PI),e=u*i,d=e*Math.abs(Math.sin(s)),c=i-d,g=f.x+e*Math.cos(h),nt=f.y+e*Math.sin(h),tt=new r(g,nt),l=new b(f,tt),a=l.pointAlongOffset(1,c),v=l.pointAlongOffset(1,-c);this.side===o.LEFT?(this.segList.addPt(a),this.segList.addPt(v)):(this.segList.addPt(v),this.segList.addPt(a))},computeOffsetSegment:function(n,t,i,r){var e=t===o.LEFT?1:-1,u=n.p1.x-n.p0.x,f=n.p1.y-n.p0.y,s=Math.sqrt(u*u+f*f),h=e*i*u/s,c=e*i*f/s;r.p0.x=n.p0.x-c;r.p0.y=n.p0.y+h;r.p1.x=n.p1.x-c;r.p1.y=n.p1.y+h},addFilletArc:function(n,t,i,u,f){var y=u===s.CLOCKWISE?-1:1,h=Math.abs(t-i),v=Math.trunc(h/this.filletAngleQuantum+.5),c,l,e,o,a;if(v<1)return null;for(c=null,l=null,c=0,l=h/v,e=c,o=new r;e<h;)a=t+y*e,o.x=n.x+f*Math.cos(a),o.y=n.y+f*Math.sin(a),this.segList.addPt(o),e+=l},addInsideTurn:function(){var n,t;(this.li.computeIntersection(this.offset0.p0,this.offset0.p1,this.offset1.p0,this.offset1.p1),this.li.hasIntersection())?this.segList.addPt(this.li.getIntersection(0)):(this._hasNarrowConcaveAngle=!0,this.offset0.p1.distance(this.offset1.p0)<this.distance*of.INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR)?this.segList.addPt(this.offset0.p1):((this.segList.addPt(this.offset0.p1),this.closingSegLengthFactor>0)?(n=new r((this.closingSegLengthFactor*this.offset0.p1.x+this.s1.x)/(this.closingSegLengthFactor+1),(this.closingSegLengthFactor*this.offset0.p1.y+this.s1.y)/(this.closingSegLengthFactor+1)),this.segList.addPt(n),t=new r((this.closingSegLengthFactor*this.offset1.p0.x+this.s1.x)/(this.closingSegLengthFactor+1),(this.closingSegLengthFactor*this.offset1.p0.y+this.s1.y)/(this.closingSegLengthFactor+1)),this.segList.addPt(t)):this.segList.addPt(this.s1),this.segList.addPt(this.offset1.p0))},createCircle:function(n){var t=new r(n.x+this.distance,n.y);this.segList.addPt(t);this.addFilletArc(n,0,2*Math.PI,-1,this.distance);this.segList.closeRing()},addBevelJoin:function(n,t){this.segList.addPt(n.p1);this.segList.addPt(t.p0)},init:function(n){this.distance=n;this.maxCurveSegmentError=n*(1-Math.cos(this.filletAngleQuantum/2));this.segList=new gc;this.segList.setPrecisionModel(this.precisionModel);this.segList.setMinimumVertexDistance(n*of.CURVE_VERTEX_SNAP_DISTANCE_FACTOR)},addCollinear:function(n){this.li.computeIntersection(this.s0,this.s1,this.s1,this.s2);this.li.getIntersectionNum()>=2&&(this.bufParams.getJoinStyle()===rt.JOIN_BEVEL||this.bufParams.getJoinStyle()===rt.JOIN_MITRE?(n&&this.segList.addPt(this.offset0.p1),this.segList.addPt(this.offset1.p0)):this.addFilletCorner(this.s1,this.offset0.p1,this.offset1.p0,s.CLOCKWISE,this.distance))},closeRing:function(){this.segList.closeRing()},hasNarrowConcaveAngle:function(){return this._hasNarrowConcaveAngle},interfaces_:function(){return[]},getClass:function(){return of}});of.OFFSET_SEGMENT_SEPARATION_FACTOR=.001;of.INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR=.001;of.CURVE_VERTEX_SNAP_DISTANCE_FACTOR=1e-6;of.MAX_CLOSING_SEG_LEN_FACTOR=80;i(nl.prototype,{getOffsetCurve:function(n,t){var r;if(this.distance=t,0===t)return null;var u=t<0,f=Math.abs(t),i=this.getSegGen(f);return n.length<=1?this.computePointCurve(n[0],i):this.computeOffsetCurve(n,u,i),r=i.getCoordinates(),u&&w.reverse(r),r},computeSingleSidedBufferCurve:function(n,t,i){var s=this.simplifyTolerance(this.distance),u,e,f,h,r;if(t)for(i.addSegments(n,!0),u=vi.simplify(n,-s),e=u.length-1,i.initSideSegments(u[e],u[e-1],o.LEFT),i.addFirstSegment(),r=e-2;r>=0;r--)i.addNextSegment(u[r],!0);else for(i.addSegments(n,!1),f=vi.simplify(n,s),h=f.length-1,i.initSideSegments(f[0],f[1],o.LEFT),i.addFirstSegment(),r=2;r<=h;r++)i.addNextSegment(f[r],!0);i.addLastSegment();i.closeRing()},computeRingBufferCurve:function(n,t,i){var f=this.simplifyTolerance(this.distance),r,e,u,s;for(t===o.RIGHT&&(f=-f),r=vi.simplify(n,f),e=r.length-1,i.initSideSegments(r[e-1],r[0],t),u=1;u<=e;u++)s=1!==u,i.addNextSegment(r[u],s);i.closeRing()},computeLineBufferCurve:function(n,t){var s=this.simplifyTolerance(this.distance),u=vi.simplify(n,s),e=u.length-1,r,f,i;for(t.initSideSegments(u[0],u[1],o.LEFT),i=2;i<=e;i++)t.addNextSegment(u[i],!0);for(t.addLastSegment(),t.addLineEndCap(u[e-1],u[e]),r=vi.simplify(n,-s),f=r.length-1,t.initSideSegments(r[f],r[f-1],o.LEFT),i=f-2;i>=0;i--)t.addNextSegment(r[i],!0);t.addLastSegment();t.addLineEndCap(r[1],r[0]);t.closeRing()},computePointCurve:function(n,t){switch(this.bufParams.getEndCapStyle()){case rt.CAP_ROUND:t.createCircle(n);break;case rt.CAP_SQUARE:t.createSquare(n)}},getLineCurve:function(n,t){var r,i,u;return(this.distance=t,t<0&&!this.bufParams.isSingleSided())?null:0===t?null:(r=Math.abs(t),i=this.getSegGen(r),n.length<=1?this.computePointCurve(n[0],i):this.bufParams.isSingleSided()?(u=t<0,this.computeSingleSidedBufferCurve(n,u,i)):this.computeLineBufferCurve(n,i),i.getCoordinates())},getBufferParameters:function(){return this.bufParams},simplifyTolerance:function(n){return n*this.bufParams.getSimplifyFactor()},getRingCurve:function(n,t,i){if(this.distance=i,n.length<=2)return this.getLineCurve(n,i);if(0===i)return nl.copyCoordinates(n);var r=this.getSegGen(i);return this.computeRingBufferCurve(n,t,r),r.getCoordinates()},computeOffsetCurve:function(n,t,i){var s=this.simplifyTolerance(this.distance),u,e,f,h,r;if(t)for(u=vi.simplify(n,-s),e=u.length-1,i.initSideSegments(u[e],u[e-1],o.LEFT),i.addFirstSegment(),r=e-2;r>=0;r--)i.addNextSegment(u[r],!0);else for(f=vi.simplify(n,s),h=f.length-1,i.initSideSegments(f[0],f[1],o.LEFT),i.addFirstSegment(),r=2;r<=h;r++)i.addNextSegment(f[r],!0);i.addLastSegment()},getSegGen:function(n){return new of(this.precisionModel,this.bufParams,n)},interfaces_:function(){return[]},getClass:function(){return nl}});nl.copyCoordinates=function(n){for(var i=new Array(n.length).fill(null),t=0;t<i.length;t++)i[t]=new r(n[t]);return i};i(wv.prototype,{findStabbedSegments:function(){var e,h,p,a,w,v;if(1===arguments.length){for(var f=arguments[0],y=new u,n=this.subgraphs.iterator();n.hasNext();)e=n.next(),h=e.getEnvelope(),f.y<h.getMinY()||f.y>h.getMaxY()||this.findStabbedSegments(f,e.getDirectedEdges(),y);return y}if(3===arguments.length)if(l(arguments[2],ei)&&arguments[0]instanceof r&&arguments[1]instanceof go)for(var t=arguments[0],c=arguments[1],b=arguments[2],i=c.getEdge().getCoordinates(),n=0;n<i.length-1;n++)this.seg.p0=i[n],this.seg.p1=i[n+1],this.seg.p0.y>this.seg.p1.y&&this.seg.reverse(),p=Math.max(this.seg.p0.x,this.seg.p1.x),p<t.x||this.seg.isHorizontal()||t.y<this.seg.p0.y||t.y>this.seg.p1.y||s.computeOrientation(this.seg.p0,this.seg.p1,t)===s.RIGHT||(a=c.getDepth(o.LEFT),this.seg.p0.equals(i[n])||(a=c.getDepth(o.RIGHT)),w=new bv(this.seg,a),b.add(w));else if(l(arguments[2],ei)&&arguments[0]instanceof r&&l(arguments[1],ei))for(var k=arguments[0],d=arguments[1],g=arguments[2],n=d.iterator();n.hasNext();)v=n.next(),v.isForward()&&this.findStabbedSegments(k,v,g)},getDepth:function(n){var t=this.findStabbedSegments(n);return 0===t.size()?0:gu.min(t).leftDepth},interfaces_:function(){return[]},getClass:function(){return wv}});i(bv.prototype,{compareTo:function(n){var i=n,t;return this.upwardSeg.minX()>=i.upwardSeg.maxX()?1:this.upwardSeg.maxX()<=i.upwardSeg.minX()?-1:(t=this.upwardSeg.orientationIndex(i.upwardSeg),0!==t?t:(t=-1*i.upwardSeg.orientationIndex(this.upwardSeg),0!==t?t:this.upwardSeg.compareTo(i.upwardSeg)))},compareX:function(n,t){var i=n.p0.compareTo(t.p0);return 0!==i?i:n.p1.compareTo(t.p1)},toString:function(){return this.upwardSeg.toString()},interfaces_:function(){return[sr]},getClass:function(){return bv}});wv.DepthSegment=bv;i(ew.prototype,{addPoint:function(n){if(this.distance<=0)return null;var i=n.getCoordinates(),r=this.curveBuilder.getLineCurve(i,this.distance);this.addCurve(r,t.EXTERIOR,t.INTERIOR)},addPolygon:function(n){var r=this.distance,u=o.LEFT,f,e,i,s,h;if((this.distance<0&&(r=-this.distance,u=o.RIGHT),f=n.getExteriorRing(),e=w.removeRepeatedPoints(f.getCoordinates()),this.distance<0&&this.isErodedCompletely(f,this.distance))||this.distance<=0&&e.length<3)return null;for(this.addPolygonRing(e,r,u,t.EXTERIOR,t.INTERIOR),i=0;i<n.getNumInteriorRing();i++)s=n.getInteriorRingN(i),h=w.removeRepeatedPoints(s.getCoordinates()),this.distance>0&&this.isErodedCompletely(s,-this.distance)||this.addPolygonRing(h,r,o.opposite(u),t.INTERIOR,t.EXTERIOR)},isTriangleErodedCompletely:function(n,t){var i=new vt(n[0],n[1],n[2]),r=i.inCentre();return s.distancePointLine(r,i.p0,i.p1)<Math.abs(t)},addLineString:function(n){if(this.distance<=0&&!this.curveBuilder.getBufferParameters().isSingleSided())return null;var i=w.removeRepeatedPoints(n.getCoordinates()),r=this.curveBuilder.getLineCurve(i,this.distance);this.addCurve(r,t.EXTERIOR,t.INTERIOR)},addCurve:function(n,i,r){if(null===n||n.length<2)return null;var u=new tf(n,new ti(0,t.BOUNDARY,i,r));this.curveList.add(u)},getCurves:function(){return this.add(this.inputGeom),this.curveList},addPolygonRing:function(n,t,i,r,u){var f,e,h;if(0===t&&n.length<gt.MINIMUM_VALID_SIZE)return null;f=r;e=u;n.length>=gt.MINIMUM_VALID_SIZE&&s.isCCW(n)&&(f=u,e=r,i=o.opposite(i));h=this.curveBuilder.getRingCurve(n,i,t);this.addCurve(h,f,e)},add:function(n){if(n.isEmpty())return null;if(n instanceof st)this.addPolygon(n);else if(n instanceof d)this.addLineString(n);else if(n instanceof bt)this.addPoint(n);else if(n instanceof lr)this.addCollection(n);else if(n instanceof cr)this.addCollection(n);else if(n instanceof ai)this.addCollection(n);else{if(!(n instanceof nt))throw new UnsupportedOperationException(n.getClass().getName());this.addCollection(n)}},isErodedCompletely:function(n,t){var i=n.getCoordinates(),r,u;return i.length<4?t<0:4===i.length?this.isTriangleErodedCompletely(i,t):(r=n.getEnvelopeInternal(),u=Math.min(r.getHeight(),r.getWidth()),t<0&&2*Math.abs(t)>u)},addCollection:function(n){for(var i,t=0;t<n.getNumGeometries();t++)i=n.getGeometryN(t),this.add(i)},interfaces_:function(){return[]},getClass:function(){return ew}});i(tl.prototype,{isTrivialIntersection:function(n,t,i,r){if(n===i&&1===this.li.getIntersectionNum()){if(tl.isAdjacentSegments(t,r))return!0;if(n.isClosed()){var u=n.size()-1;if(0===t&&r===u||0===r&&t===u)return!0}}return!1},getProperIntersectionPoint:function(){return this.properIntersectionPoint},hasProperInteriorIntersection:function(){return this.hasProperInterior},getLineIntersector:function(){return this.li},hasProperIntersection:function(){return this.hasProper},processIntersections:function(n,t,i,r){if(n===i&&t===r)return null;this.numTests++;var u=n.getCoordinates()[t],f=n.getCoordinates()[t+1],e=i.getCoordinates()[r],o=i.getCoordinates()[r+1];this.li.computeIntersection(u,f,e,o);this.li.hasIntersection()&&(this.numIntersections++,this.li.isInteriorIntersection()&&(this.numInteriorIntersections++,this.hasInterior=!0),this.isTrivialIntersection(n,t,i,r)||(this._hasIntersection=!0,n.addIntersections(this.li,t,0),i.addIntersections(this.li,r,1),this.li.isProper()&&(this.numProperIntersections++,this.hasProper=!0,this.hasProperInterior=!0)))},hasIntersection:function(){return this._hasIntersection},isDone:function(){return!1},hasInteriorIntersection:function(){return this.hasInterior},interfaces_:function(){return[ec]},getClass:function(){return tl}});tl.isAdjacentSegments=function(n,t){return 1===Math.abs(n-t)};i(fo.prototype,{setWorkingPrecisionModel:function(n){this.workingPrecisionModel=n},insertUniqueEdge:function(n){var t=this.edgeList.findEqualEdge(n),r,i;if(null!==t){r=t.getLabel();i=n.getLabel();t.isPointwiseEqual(n)||(i=new ti(n.getLabel()),i.flip());r.merge(i);var u=fo.depthDelta(i),f=t.getDepthDelta(),e=f+u;t.setDepthDelta(e)}else this.edgeList.add(n),n.setDepthDelta(fo.depthDelta(n.getLabel()))},buildSubgraphs:function(n,t){for(var r=new u,f=n.iterator();f.hasNext();){var i=f.next(),e=i.getRightmostCoordinate(),o=new wv(r),s=o.getDepth(e);i.computeDepth(s);i.findResultEdges();r.add(i);t.add(i.getDirectedEdges(),i.getNodes())}},createSubgraphs:function(n){for(var r,f,t=new u,i=n.getNodes().iterator();i.hasNext();)r=i.next(),r.isVisited()||(f=new fw,f.create(r),t.add(f));return gu.sort(t,gu.reverseOrder()),t},createEmptyResultGeometry:function(){return this.geomFact.createPolygon()},getNoder:function(n){if(null!==this.workingNoder)return this.workingNoder;var t=new be,i=new si;return i.setPrecisionModel(n),t.setSegmentIntersector(new tl(i)),t},buffer:function(n,t){var i=this.workingPrecisionModel,e,r,u;null===i&&(i=n.getPrecisionModel());this.geomFact=n.getFactory();var o=new nl(i,this.bufParams),s=new ew(n,t,o),f=s.getCurves();return f.size()<=0?this.createEmptyResultGeometry():(this.computeNodedEdges(f,i),this.graph=new uf(new nh),this.graph.addEdges(this.edgeList.getEdges()),e=this.createSubgraphs(this.graph),r=new ga(this.geomFact),this.buildSubgraphs(e,r),u=r.getPolygons(),u.size()<=0?this.createEmptyResultGeometry():this.geomFact.buildGeometry(u))},computeNodedEdges:function(n,t){var f=this.getNoder(t),e,u,i,r,o,s;for(f.computeNodes(n),e=f.getNodedSubstrings(),u=e.iterator();u.hasNext();)i=u.next(),r=i.getCoordinates(),2===r.length&&r[0].equals2D(r[1])||(o=i.getData(),s=new ou(i.getCoordinates(),new ti(o)),this.insertUniqueEdge(s))},setNoder:function(n){this.workingNoder=n},interfaces_:function(){return[]},getClass:function(){return fo}});fo.depthDelta=function(n){var i=n.getLocation(0,o.LEFT),r=n.getLocation(0,o.RIGHT);return i===t.INTERIOR&&r===t.EXTERIOR?1:i===t.EXTERIOR&&r===t.INTERIOR?-1:0};fo.convertSegStrings=function(n){for(var r,f,t=new g,i=new u;n.hasNext();)r=n.next(),f=t.createLineString(r.getCoordinates()),i.add(f);return t.buildGeometry(i)};i(il.prototype,{checkEndPtVertexIntersections:function(){var t,i,n;if(0===arguments.length)for(t=this.segStrings.iterator();t.hasNext();)i=t.next(),n=i.getCoordinates(),this.checkEndPtVertexIntersections(n[0],this.segStrings),this.checkEndPtVertexIntersections(n[n.length-1],this.segStrings);else if(2===arguments.length)for(var u=arguments[0],f=arguments[1],t=f.iterator();t.hasNext();)for(var i=t.next(),n=i.getCoordinates(),r=1;r<n.length-1;r++)if(n[r].equals(u))throw new ci("found endpt/interior pt intersection at index "+r+" :pt "+u);},checkInteriorIntersections:function(){var t,a,i,v,n;if(0===arguments.length)for(t=this.segStrings.iterator();t.hasNext();)for(a=t.next(),i=this.segStrings.iterator();i.hasNext();)v=i.next(),this.checkInteriorIntersections(a,v);else if(2===arguments.length)for(var y=arguments[0],p=arguments[1],w=y.getCoordinates(),b=p.getCoordinates(),r=0;r<w.length-1;r++)for(n=0;n<b.length-1;n++)this.checkInteriorIntersections(y,r,p,n);else if(4===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2],o=arguments[3];if(u===e&&f===o)return null;var s=u.getCoordinates()[f],h=u.getCoordinates()[f+1],c=e.getCoordinates()[o],l=e.getCoordinates()[o+1];if(this.li.computeIntersection(s,h,c,l),this.li.hasIntersection()&&(this.li.isProper()||this.hasInteriorIntersection(this.li,s,h)||this.hasInteriorIntersection(this.li,c,l)))throw new ci("found non-noded intersection at "+s+"-"+h+" and "+c+"-"+l);}},checkValid:function(){this.checkEndPtVertexIntersections();this.checkInteriorIntersections();this.checkCollapses()},checkCollapses:function(){var n,i;if(0===arguments.length)for(n=this.segStrings.iterator();n.hasNext();)i=n.next(),this.checkCollapses(i);else if(1===arguments.length)for(var r=arguments[0],t=r.getCoordinates(),n=0;n<t.length-2;n++)this.checkCollapse(t[n],t[n+1],t[n+2])},hasInteriorIntersection:function(n,t,i){for(var u,r=0;r<n.getIntersectionNum();r++)if(u=n.getIntersection(r),!u.equals(t)&&!u.equals(i))return!0;return!1},checkCollapse:function(n,t,i){if(n.equals(i))throw new ci("found non-noded collapse at "+il.fact.createLineString([n,t,i]));},interfaces_:function(){return[]},getClass:function(){return il}});il.fact=new g;i(fh.prototype,{intersectsScaled:function(n,t){var u=Math.min(n.x,t.x),f=Math.max(n.x,t.x),e=Math.min(n.y,t.y),o=Math.max(n.y,t.y),r=this.maxx<u||this.minx>f||this.maxy<e||this.miny>o,i;return r?!1:(i=this.intersectsToleranceSquare(n,t),c.isTrue(!(r&&i),"Found bad envelope test"),i)},initCorners:function(n){this.minx=n.x-.5;this.maxx=n.x+.5;this.miny=n.y-.5;this.maxy=n.y+.5;this.corner[0]=new r(this.maxx,this.maxy);this.corner[1]=new r(this.minx,this.maxy);this.corner[2]=new r(this.minx,this.miny);this.corner[3]=new r(this.maxx,this.miny)},intersects:function(n,t){return 1===this.scaleFactor?this.intersectsScaled(n,t):(this.copyScaled(n,this.p0Scaled),this.copyScaled(t,this.p1Scaled),this.intersectsScaled(this.p0Scaled,this.p1Scaled))},scale:function(n){return Math.round(n*this.scaleFactor)},getCoordinate:function(){return this.originalPt},copyScaled:function(n,t){t.x=this.scale(n.x);t.y=this.scale(n.y)},getSafeEnvelope:function(){if(null===this.safeEnv){var n=fh.SAFE_ENV_EXPANSION_FACTOR/this.scaleFactor;this.safeEnv=new p(this.originalPt.x-n,this.originalPt.x+n,this.originalPt.y-n,this.originalPt.y+n)}return this.safeEnv},intersectsPixelClosure:function(n,t){return this.li.computeIntersection(n,t,this.corner[0],this.corner[1]),!!(this.li.hasIntersection()||(this.li.computeIntersection(n,t,this.corner[1],this.corner[2]),this.li.hasIntersection()||(this.li.computeIntersection(n,t,this.corner[2],this.corner[3]),this.li.hasIntersection()||(this.li.computeIntersection(n,t,this.corner[3],this.corner[0]),this.li.hasIntersection()))))},intersectsToleranceSquare:function(n,t){var i=!1,r=!1;return this.li.computeIntersection(n,t,this.corner[0],this.corner[1]),!!(this.li.isProper()||(this.li.computeIntersection(n,t,this.corner[1],this.corner[2]),this.li.isProper()||(this.li.hasIntersection()&&(i=!0),this.li.computeIntersection(n,t,this.corner[2],this.corner[3]),this.li.isProper()||(this.li.hasIntersection()&&(r=!0),this.li.computeIntersection(n,t,this.corner[3],this.corner[0]),this.li.isProper()||i&&r||n.equals(this.pt)||t.equals(this.pt)))))},addSnappedNode:function(n,t){var i=n.getCoordinate(t),r=n.getCoordinate(t+1);return!!this.intersects(i,r)&&(n.addIntersection(this.getCoordinate(),t),!0)},interfaces_:function(){return[]},getClass:function(){return fh}});fh.SAFE_ENV_EXPANSION_FACTOR=.75;i(kv.prototype,{snap:function(){var n;if(1===arguments.length)return n=arguments[0],this.snap(n,null,-1);if(3===arguments.length){var t=arguments[0],u=arguments[1],f=arguments[2],i=t.getSafeEnvelope(),r=new rl(t,u,f);return this.index.query(i,{interfaces_:function(){return[we]},visitItem:function(n){n.select(i,r)}}),r.isNodeAdded()}},interfaces_:function(){return[]},getClass:function(){return kv}});y(rl,to);i(rl.prototype,{isNodeAdded:function(){return this._isNodeAdded},select:function(){if(2!==arguments.length)return to.prototype.select.apply(this,arguments);var i=arguments[0],n=arguments[1],t=i.getContext();return null!==this.parentEdge&&t===this.parentEdge&&n===this.hotPixelVertexIndex?null:void(this._isNodeAdded=this.hotPixel.addSnappedNode(t,n))},interfaces_:function(){return[]},getClass:function(){return rl}});kv.HotPixelSnapAction=rl;i(ow.prototype,{processIntersections:function(n,t,i,r){var u;if(n===i&&t===r)return null;var f=n.getCoordinates()[t],e=n.getCoordinates()[t+1],o=i.getCoordinates()[r],s=i.getCoordinates()[r+1];if(this.li.computeIntersection(f,e,o,s),this.li.hasIntersection()&&this.li.isInteriorIntersection()){for(u=0;u<this.li.getIntersectionNum();u++)this.interiorIntersections.add(this.li.getIntersection(u));n.addIntersections(this.li,t,0);i.addIntersections(this.li,r,1)}},isDone:function(){return!1},getInteriorIntersections:function(){return this.interiorIntersections},interfaces_:function(){return[ec]},getClass:function(){return ow}});i(sw.prototype,{checkCorrectness:function(n){var t=tf.getNodedSubstrings(n),i=new il(t);try{i.checkValid()}catch(n){if(!(n instanceof ra))throw n;n.printStackTrace()}},getNodedSubstrings:function(){return tf.getNodedSubstrings(this.nodedSegStrings)},snapRound:function(n,t){var i=this.findInteriorIntersections(n,t);this.computeIntersectionSnaps(i);this.computeVertexSnaps(n)},findInteriorIntersections:function(n,t){var i=new ow(t);return this.noder.setSegmentIntersector(i),this.noder.computeNodes(n),i.getInteriorIntersections()},computeVertexSnaps:function(){var u,t,f,e,o;if(l(arguments[0],yt))for(u=arguments[0],t=u.iterator();t.hasNext();)f=t.next(),this.computeVertexSnaps(f);else if(arguments[0]instanceof tf)for(var i=arguments[0],r=i.getCoordinates(),n=0;n<r.length;n++)e=new fh(r[n],this.scaleFactor,this.li),o=this.pointSnapper.snap(e,i,n),o&&i.addIntersection(r[n],n)},computeNodes:function(n){this.nodedSegStrings=n;this.noder=new be;this.pointSnapper=new kv(this.noder.getIndex());this.snapRound(n,this.li)},computeIntersectionSnaps:function(n){for(var i,r,t=n.iterator();t.hasNext();)i=t.next(),r=new fh(i,this.scaleFactor,this.li),this.pointSnapper.snap(r)},interfaces_:function(){return[uc]},getClass:function(){return sw}});i(yi.prototype,{bufferFixedPrecision:function(n){var i=new kc(new sw(new ft(1)),n.getScale()),t=new fo(this.bufParams);t.setWorkingPrecisionModel(n);t.setNoder(i);this.resultGeometry=t.buffer(this.argGeom,this.distance)},bufferReducedPrecision:function(){var n;if(0===arguments.length){for(n=yi.MAX_PRECISION_DIGITS;n>=0;n--){try{this.bufferReducedPrecision(n)}catch(n){if(!(n instanceof ar))throw n;this.saveException=n}if(null!==this.resultGeometry)return null}throw this.saveException;}if(1===arguments.length){var t=arguments[0],i=yi.precisionScaleFactor(this.argGeom,this.distance,t),r=new ft(i);this.bufferFixedPrecision(r)}},computeGeometry:function(){if(this.bufferOriginalPrecision(),null!==this.resultGeometry)return null;var n=this.argGeom.getFactory().getPrecisionModel();n.getType()===ft.FIXED?this.bufferFixedPrecision(n):this.bufferReducedPrecision()},setQuadrantSegments:function(n){this.bufParams.setQuadrantSegments(n)},bufferOriginalPrecision:function(){try{var n=new fo(this.bufParams);this.resultGeometry=n.buffer(this.argGeom,this.distance)}catch(n){if(!(n instanceof ci))throw n;this.saveException=n}},getResultGeometry:function(n){return this.distance=n,this.computeGeometry(),this.resultGeometry},setEndCapStyle:function(n){this.bufParams.setEndCapStyle(n)},interfaces_:function(){return[]},getClass:function(){return yi}});yi.bufferOp=function(){var t;if(2===arguments.length){var i=arguments[0],r=arguments[1],u=new yi(i),t=u.getResultGeometry(r);return t}if(3===arguments.length){if(Number.isInteger(arguments[2])&&arguments[0]instanceof h&&"number"==typeof arguments[1]){var f=arguments[0],e=arguments[1],o=arguments[2],n=new yi(f);return n.setQuadrantSegments(o),n.getResultGeometry(e)}if(arguments[2]instanceof rt&&arguments[0]instanceof h&&"number"==typeof arguments[1]){var s=arguments[0],c=arguments[1],l=arguments[2],n=new yi(s,l),t=n.getResultGeometry(c);return t}}else if(4===arguments.length){var a=arguments[0],v=arguments[1],y=arguments[2],p=arguments[3],n=new yi(a);return n.setQuadrantSegments(y),n.setEndCapStyle(p),n.getResultGeometry(v)}};yi.precisionScaleFactor=function(n,t,i){var r=n.getEnvelopeInternal(),u=br.max(Math.abs(r.getMaxX()),Math.abs(r.getMaxY()),Math.abs(r.getMinX()),Math.abs(r.getMinY())),f=t>0?t:0,e=u+2*f,o=Math.trunc(Math.log(e)/Math.log(10)+1),s=i-o;return Math.pow(10,s)};yi.CAP_ROUND=rt.CAP_ROUND;yi.CAP_BUTT=rt.CAP_FLAT;yi.CAP_FLAT=rt.CAP_FLAT;yi.CAP_SQUARE=rt.CAP_SQUARE;yi.MAX_PRECISION_DIGITS=12;wb=Object.freeze({BufferOp:yi,BufferParameters:rt});i(fs.prototype,{filter:function(n){n instanceof st&&this.comps.add(n)},interfaces_:function(){return[wf]},getClass:function(){return fs}});fs.getPolygons=function(){var i,n,t;return 1===arguments.length?(i=arguments[0],fs.getPolygons(i,new u)):2===arguments.length?(n=arguments[0],t=arguments[1],n instanceof st?t.add(n):n instanceof nt&&n.apply(new fs(t)),t):void 0};i(pr.prototype,{isInsideArea:function(){return this.segIndex===pr.INSIDE_AREA},getCoordinate:function(){return this.pt},getGeometryComponent:function(){return this.component},getSegmentIndex:function(){return this.segIndex},interfaces_:function(){return[]},getClass:function(){return pr}});pr.INSIDE_AREA=-1;i(es.prototype,{filter:function(n){n instanceof bt&&this.pts.add(n)},interfaces_:function(){return[wf]},getClass:function(){return es}});es.getPoints=function(){var t,n,i;return 1===arguments.length?(t=arguments[0],t instanceof bt?gu.singletonList(t):es.getPoints(t,new u)):2===arguments.length?(n=arguments[0],i=arguments[1],n instanceof bt?i.add(n):n instanceof nt&&n.apply(new es(i)),i):void 0};i(ul.prototype,{filter:function(n){(n instanceof bt||n instanceof d||n instanceof st)&&this.locations.add(new pr(n,0,n.getCoordinate()))},interfaces_:function(){return[wf]},getClass:function(){return ul}});ul.getLocations=function(n){var t=new u;return n.apply(new ul(t)),t};i(ku.prototype,{computeContainmentDistance:function(){var i,s,a,n;if(0===arguments.length){if(i=new Array(2).fill(null),this.computeContainmentDistance(0,i),this.minDistance<=this.terminateDistance)return null;this.computeContainmentDistance(1,i)}else if(2===arguments.length){var r=arguments[0],u=arguments[1],e=1-r,o=fs.getPolygons(this.geom[r]);if(o.size()>0&&(s=ul.getLocations(this.geom[e]),this.computeContainmentDistance(s,o,u),this.minDistance<=this.terminateDistance))return this.minDistanceLocation[e]=u[0],this.minDistanceLocation[r]=u[1],null}else if(3===arguments.length)if(arguments[2]instanceof Array&&l(arguments[0],ei)&&l(arguments[1],ei)){for(var h=arguments[0],c=arguments[1],b=arguments[2],f=0;f<h.size();f++)for(a=h.get(f),n=0;n<c.size();n++)if(this.computeContainmentDistance(a,c.get(n),b),this.minDistance<=this.terminateDistance)return null}else if(arguments[2]instanceof Array&&arguments[0]instanceof pr&&arguments[1]instanceof st){var v=arguments[0],y=arguments[1],p=arguments[2],w=v.getCoordinate();if(t.EXTERIOR!==this.ptLocator.locate(w,y))return this.minDistance=0,p[0]=v,p[1]=new pr(y,w),null}},computeMinDistanceLinesPoints:function(n,t,i){for(var f,u,e,r=0;r<n.size();r++)for(f=n.get(r),u=0;u<t.size();u++)if(e=t.get(u),this.computeMinDistance(f,e,i),this.minDistance<=this.terminateDistance)return null},computeFacetDistance:function(){var n=new Array(2).fill(null),t=wi.getLines(this.geom[0]),i=wi.getLines(this.geom[1]),r=es.getPoints(this.geom[0]),u=es.getPoints(this.geom[1]);return this.computeMinDistanceLines(t,i,n),this.updateMinDistance(n,!1),this.minDistance<=this.terminateDistance?null:(n[0]=null,n[1]=null,this.computeMinDistanceLinesPoints(t,u,n),this.updateMinDistance(n,!1),this.minDistance<=this.terminateDistance?null:(n[0]=null,n[1]=null,this.computeMinDistanceLinesPoints(i,r,n),this.updateMinDistance(n,!0),this.minDistance<=this.terminateDistance?null:(n[0]=null,n[1]=null,this.computeMinDistancePoints(r,u,n),void this.updateMinDistance(n,!1))))},nearestLocations:function(){return this.computeMinDistance(),this.minDistanceLocation},updateMinDistance:function(n,t){return null===n[0]?null:void(t?(this.minDistanceLocation[0]=n[1],this.minDistanceLocation[1]=n[0]):(this.minDistanceLocation[0]=n[0],this.minDistanceLocation[1]=n[1]))},nearestPoints:function(){return this.computeMinDistance(),[this.minDistanceLocation[0].getCoordinate(),this.minDistanceLocation[1].getCoordinate()]},computeMinDistance:function(){var a,v,i,r;if(0===arguments.length){if(null!==this.minDistanceLocation||(this.minDistanceLocation=new Array(2).fill(null),this.computeContainmentDistance(),this.minDistance<=this.terminateDistance))return null;this.computeFacetDistance()}else if(3===arguments.length)if(arguments[2]instanceof Array&&arguments[0]instanceof d&&arguments[1]instanceof bt){var f=arguments[0],e=arguments[1],l=arguments[2];if(f.getEnvelopeInternal().distance(e.getEnvelopeInternal())>this.minDistance)return null;for(var t=f.getCoordinates(),o=e.getCoordinate(),n=0;n<t.length-1;n++)if(r=s.distancePointLine(o,t[n],t[n+1]),r<this.minDistance&&(this.minDistance=r,a=new b(t[n],t[n+1]),v=a.closestPoint(o),l[0]=new pr(f,n,v),l[1]=new pr(e,0,o)),this.minDistance<=this.terminateDistance)return null}else if(arguments[2]instanceof Array&&arguments[0]instanceof d&&arguments[1]instanceof d){var h=arguments[0],c=arguments[1],y=arguments[2];if(h.getEnvelopeInternal().distance(c.getEnvelopeInternal())>this.minDistance)return null;for(var t=h.getCoordinates(),u=c.getCoordinates(),n=0;n<t.length-1;n++)for(i=0;i<u.length-1;i++){if(r=s.distanceLineLine(t[n],t[n+1],u[i],u[i+1]),r<this.minDistance){this.minDistance=r;var w=new b(t[n],t[n+1]),k=new b(u[i],u[i+1]),p=w.closestPoints(k);y[0]=new pr(h,n,p[0]);y[1]=new pr(c,i,p[1])}if(this.minDistance<=this.terminateDistance)return null}}},computeMinDistancePoints:function(n,t,i){for(var u,f,e,o,r=0;r<n.size();r++)for(u=n.get(r),f=0;f<t.size();f++)if(e=t.get(f),o=u.getCoordinate().distance(e.getCoordinate()),o<this.minDistance&&(this.minDistance=o,i[0]=new pr(u,0,u.getCoordinate()),i[1]=new pr(e,0,e.getCoordinate())),this.minDistance<=this.terminateDistance)return null},distance:function(){if(null===this.geom[0]||null===this.geom[1])throw new ct("null geometries are not supported");return this.geom[0].isEmpty()||this.geom[1].isEmpty()?0:(this.computeMinDistance(),this.minDistance)},computeMinDistanceLines:function(n,t,i){for(var f,u,e,r=0;r<n.size();r++)for(f=n.get(r),u=0;u<t.size();u++)if(e=t.get(u),this.computeMinDistance(f,e,i),this.minDistance<=this.terminateDistance)return null},interfaces_:function(){return[]},getClass:function(){return ku}});ku.distance=function(n,t){return new ku(n,t).distance()};ku.isWithinDistance=function(n,t,i){return new ku(n,t,i).distance()<=i};ku.nearestPoints=function(n,t){return new ku(n,t).nearestPoints()};bb=Object.freeze({DistanceOp:ku});i(hw.prototype,{getCoordinates:function(){var n;if(null===this.coordinates){for(var t=0,i=0,r=new ii,u=this.directedEdges.iterator();u.hasNext();)n=u.next(),n.getEdgeDirection()?t++:i++,r.add(n.getEdge().getLine().getCoordinates(),!1,n.getEdgeDirection());this.coordinates=r.toCoordinateArray();i>t&&w.reverse(this.coordinates)}return this.coordinates},toLineString:function(){return this.factory.createLineString(this.getCoordinates())},add:function(n){this.directedEdges.add(n)},interfaces_:function(){return[]},getClass:function(){return hw}});i(hu.prototype,{setVisited:function(n){this._isVisited=n},isMarked:function(){return this._isMarked},setData:function(n){this.data=n},getData:function(){return this.data},setMarked:function(n){this._isMarked=n},getContext:function(){return this.data},isVisited:function(){return this._isVisited},setContext:function(n){this.data=n},interfaces_:function(){return[]},getClass:function(){return hu}});hu.getComponentWithVisitedState=function(n,t){for(;n.hasNext();){var i=n.next();if(i.isVisited()===t)return i}return null};hu.setVisited=function(n,t){for(;n.hasNext();)n.next().setVisited(t)};hu.setMarked=function(n,t){for(;n.hasNext();)n.next().setMarked(t)};y(iu,hu);i(iu.prototype,{isRemoved:function(){return null===this.parentEdge},compareDirection:function(n){return this.quadrant>n.quadrant?1:this.quadrant<n.quadrant?-1:s.computeOrientation(n.p0,n.p1,this.p1)},getCoordinate:function(){return this.from.getCoordinate()},print:function(n){var t=this.getClass().getName(),i=t.lastIndexOf("."),r=t.substring(i+1);n.print("  "+r+": "+this.p0+" - "+this.p1+" "+this.quadrant+":"+this.angle)},getDirectionPt:function(){return this.p1},getAngle:function(){return this.angle},compareTo:function(n){var t=n;return this.compareDirection(t)},getFromNode:function(){return this.from},getSym:function(){return this.sym},setEdge:function(n){this.parentEdge=n},remove:function(){this.sym=null;this.parentEdge=null},getEdge:function(){return this.parentEdge},getQuadrant:function(){return this.quadrant},setSym:function(n){this.sym=n},getToNode:function(){return this.to},getEdgeDirection:function(){return this.edgeDirection},interfaces_:function(){return[sr]},getClass:function(){return iu}});iu.toEdges=function(n){for(var t=new u,i=n.iterator();i.hasNext();)t.add(i.next().parentEdge);return t};y(fl,iu);i(fl.prototype,{getNext:function(){return 2!==this.getToNode().getDegree()?null:this.getToNode().getOutEdges().getEdges().get(0)===this.getSym()?this.getToNode().getOutEdges().getEdges().get(1):(c.isTrue(this.getToNode().getOutEdges().getEdges().get(1)===this.getSym()),this.getToNode().getOutEdges().getEdges().get(0))},interfaces_:function(){return[]},getClass:function(){return fl}});y(sf,hu);i(sf.prototype,{isRemoved:function(){return null===this.dirEdge},setDirectedEdges:function(n,t){this.dirEdge=[n,t];n.setEdge(this);t.setEdge(this);n.setSym(t);t.setSym(n);n.getFromNode().addOutEdge(n);t.getFromNode().addOutEdge(t)},getDirEdge:function(){var t,n;return Number.isInteger(arguments[0])?(t=arguments[0],this.dirEdge[t]):arguments[0]instanceof fe?(n=arguments[0],this.dirEdge[0].getFromNode()===n?this.dirEdge[0]:this.dirEdge[1].getFromNode()===n?this.dirEdge[1]:null):void 0},remove:function(){this.dirEdge=null},getOppositeNode:function(n){return this.dirEdge[0].getFromNode()===n?this.dirEdge[0].getToNode():this.dirEdge[1].getFromNode()===n?this.dirEdge[1].getToNode():null},interfaces_:function(){return[]},getClass:function(){return sf}});i(cw.prototype,{getNextEdge:function(n){var t=this.getIndex(n);return this.outEdges.get(this.getIndex(t+1))},getCoordinate:function(){var n=this.iterator();return n.hasNext()?n.next().getCoordinate():null},iterator:function(){return this.sortEdges(),this.outEdges.iterator()},sortEdges:function(){this.sorted||(gu.sort(this.outEdges),this.sorted=!0)},remove:function(n){this.outEdges.remove(n)},getEdges:function(){return this.sortEdges(),this.outEdges},getNextCWEdge:function(n){var t=this.getIndex(n);return this.outEdges.get(this.getIndex(t-1))},getIndex:function(){var r,u,n,t,f,i;if(arguments[0]instanceof sf){for(r=arguments[0],this.sortEdges(),n=0;n<this.outEdges.size();n++)if(t=this.outEdges.get(n),t.getEdge()===r)return n;return-1}if(arguments[0]instanceof iu){for(u=arguments[0],this.sortEdges(),n=0;n<this.outEdges.size();n++)if(t=this.outEdges.get(n),t===u)return n;return-1}if(Number.isInteger(arguments[0]))return f=arguments[0],i=f%this.outEdges.size(),i<0&&(i+=this.outEdges.size()),i},add:function(n){this.outEdges.add(n);this.sorted=!1},getDegree:function(){return this.outEdges.size()},interfaces_:function(){return[]},getClass:function(){return cw}});y(fe,hu);i(fe.prototype,{isRemoved:function(){return null===this.pt},addOutEdge:function(n){this.deStar.add(n)},getCoordinate:function(){return this.pt},getOutEdges:function(){return this.deStar},remove:function(){if(0===arguments.length)this.pt=null;else if(1===arguments.length){var n=arguments[0];this.deStar.remove(n)}},getIndex:function(n){return this.deStar.getIndex(n)},getDegree:function(){return this.deStar.getDegree()},interfaces_:function(){return[]},getClass:function(){return fe}});fe.getEdgesBetween=function(n,t){var r=iu.toEdges(n.getOutEdges().getEdges()),i=new li(r),u=iu.toEdges(t.getOutEdges().getEdges());return i.retainAll(u),i};y(dv,sf);i(dv.prototype,{getLine:function(){return this.line},interfaces_:function(){return[]},getClass:function(){return dv}});i(lw.prototype,{find:function(n){return this.nodeMap.get(n)},iterator:function(){return this.nodeMap.values().iterator()},remove:function(n){return this.nodeMap.remove(n)},values:function(){return this.nodeMap.values()},add:function(n){return this.nodeMap.put(n.getCoordinate(),n),n},interfaces_:function(){return[]},getClass:function(){return lw}});i(eh.prototype,{findNodesOfDegree:function(n){for(var r,t=new u,i=this.nodeIterator();i.hasNext();)r=i.next(),r.getDegree()===n&&t.add(r);return t},dirEdgeIterator:function(){return this.dirEdges.iterator()},edgeIterator:function(){return this.edges.iterator()},remove:function(){var i,t,r,n,f;if(arguments[0]instanceof sf)i=arguments[0],this.remove(i.getDirEdge(0)),this.remove(i.getDirEdge(1)),this.edges.remove(i),i.remove();else if(arguments[0]instanceof iu)t=arguments[0],n=t.getSym(),null!==n&&n.setSym(null),t.getFromNode().remove(t),t.remove(),this.dirEdges.remove(t);else if(arguments[0]instanceof fe){for(var u=arguments[0],o=u.getOutEdges().getEdges(),e=o.iterator();e.hasNext();)r=e.next(),n=r.getSym(),null!==n&&this.remove(n),this.dirEdges.remove(r),f=r.getEdge(),null!==f&&this.edges.remove(f);this.nodeMap.remove(u.getCoordinate());u.remove()}},findNode:function(n){return this.nodeMap.find(n)},getEdges:function(){return this.edges},nodeIterator:function(){return this.nodeMap.iterator()},contains:function(){var n,t;return arguments[0]instanceof sf?(n=arguments[0],this.edges.contains(n)):arguments[0]instanceof iu?(t=arguments[0],this.dirEdges.contains(t)):void 0},add:function(){var t,n,i;arguments[0]instanceof fe?(t=arguments[0],this.nodeMap.add(t)):arguments[0]instanceof sf?(n=arguments[0],this.edges.add(n),this.add(n.getDirEdge(0)),this.add(n.getDirEdge(1))):arguments[0]instanceof iu&&(i=arguments[0],this.dirEdges.add(i))},getNodes:function(){return this.nodeMap.values()},interfaces_:function(){return[]},getClass:function(){return eh}});y(gv,eh);i(gv.prototype,{addEdge:function(n){var t;if(n.isEmpty()||(t=w.removeRepeatedPoints(n.getCoordinates()),t.length<=1))return null;var f=t[0],e=t[t.length-1],i=this.getNode(f),r=this.getNode(e),o=new fl(i,r,t[1],!0),s=new fl(r,i,t[t.length-2],!1),u=new dv(n);u.setDirectedEdges(o,s);this.add(u)},getNode:function(n){var t=this.findNode(n);return null===t&&(t=new fe(n),this.add(t)),t},interfaces_:function(){return[]},getClass:function(){return gv}});i(aw.prototype,{buildEdgeStringsForUnprocessedNodes:function(){for(var n,t=this.graph.getNodes().iterator();t.hasNext();)n=t.next(),n.isMarked()||(c.isTrue(2===n.getDegree()),this.buildEdgeStringsStartingAt(n),n.setMarked(!0))},buildEdgeStringsForNonDegree2Nodes:function(){for(var n,t=this.graph.getNodes().iterator();t.hasNext();)n=t.next(),2!==n.getDegree()&&(this.buildEdgeStringsStartingAt(n),n.setMarked(!0))},buildEdgeStringsForObviousStartNodes:function(){this.buildEdgeStringsForNonDegree2Nodes()},getMergedLineStrings:function(){return this.merge(),this.mergedLineStrings},buildEdgeStringsStartingAt:function(n){for(var i,t=n.getOutEdges().iterator();t.hasNext();)i=t.next(),i.getEdge().isMarked()||this.edgeStrings.add(this.buildEdgeStringStartingWith(i))},merge:function(){var n,t;if(null!==this.mergedLineStrings)return null;for(hu.setMarked(this.graph.nodeIterator(),!1),hu.setMarked(this.graph.edgeIterator(),!1),this.edgeStrings=new u,this.buildEdgeStringsForObviousStartNodes(),this.buildEdgeStringsForIsolatedLoops(),this.mergedLineStrings=new u,n=this.edgeStrings.iterator();n.hasNext();)t=n.next(),this.mergedLineStrings.add(t.toLineString())},buildEdgeStringStartingWith:function(n){var i=new hw(this.factory),t=n;do i.add(t),t.getEdge().setMarked(!0),t=t.getNext();while(null!==t&&t!==n);return i},add:function(){var i,n,r,t;if(arguments[0]instanceof h)arguments[0].apply({interfaces_:function(){return[yu]},filter:function(n){n instanceof d&&this.add(n)}});else if(l(arguments[0],yt))for(i=arguments[0],this.mergedLineStrings=null,n=i.iterator();n.hasNext();)r=n.next(),this.add(r);else arguments[0]instanceof d&&(t=arguments[0],null===this.factory&&(this.factory=t.getFactory()),this.graph.addEdge(t))},buildEdgeStringsForIsolatedLoops:function(){this.buildEdgeStringsForUnprocessedNodes()},interfaces_:function(){return[]},getClass:function(){return aw}});kb=Object.freeze({LineMerger:aw});db=Object.freeze({OverlayOp:a});y(el,iu);i(el.prototype,{getNext:function(){return this.next},isInRing:function(){return null!==this.edgeRing},setRing:function(n){this.edgeRing=n},setLabel:function(n){this.label=n},getLabel:function(){return this.label},setNext:function(n){this.next=n},getRing:function(){return this.edgeRing},interfaces_:function(){return[]},getClass:function(){return el}});y(ny,sf);i(ny.prototype,{getLine:function(){return this.line},interfaces_:function(){return[]},getClass:function(){return ny}});i(sl.prototype,{visitInteriorRing:function(n,i){var f=n.getCoordinates(),e=f[0],s=sl.findDifferentPoint(f,e),h=i.findEdgeInSameDirection(e,s),r=i.findEdgeEnd(h),u=null;r.getLabel().getLocation(0,o.RIGHT)===t.INTERIOR?u=r:r.getSym().getLabel().getLocation(0,o.RIGHT)===t.INTERIOR&&(u=r.getSym());c.isTrue(null!==u,"unable to find dirEdge with Interior on RHS");this.visitLinkedDirectedEdges(u)},visitShellInteriors:function(n,t){var u,r,i;if(n instanceof st&&(i=n,this.visitInteriorRing(i.getExteriorRing(),t)),n instanceof ai)for(u=n,r=0;r<u.getNumGeometries();r++)i=u.getGeometryN(r),this.visitInteriorRing(i.getExteriorRing(),t)},getCoordinate:function(){return this.disconnectedRingcoord},setInteriorEdgesInResult:function(n){for(var r,i=n.getEdgeEnds().iterator();i.hasNext();)r=i.next(),r.getLabel().getLocation(0,o.RIGHT)===t.INTERIOR&&r.setInResult(!0)},visitLinkedDirectedEdges:function(n){var i=n,t=n;do c.isTrue(null!==t,"found null Directed Edge"),t.setVisited(!0),t=t.getNext();while(t!==i)},buildEdgeRings:function(n){for(var t,f,e,i=new u,r=n.iterator();r.hasNext();)t=r.next(),t.isInResult()&&null===t.getEdgeRing()&&(f=new sc(t,this.geometryFactory),f.linkDirectedEdgesForMinimalEdgeRings(),e=f.buildMinimalRings(),i.addAll(e));return i},hasUnvisitedShellEdge:function(n){for(var e,u,i,f,r=0;r<n.size();r++)if(e=n.get(r),!e.isHole()&&(u=e.getEdges(),i=u.get(0),i.getLabel().getLocation(0,o.RIGHT)===t.INTERIOR))for(f=0;f<u.size();f++)if(i=u.get(f),!i.isVisited())return this.disconnectedRingcoord=i.getCoordinate(),!0;return!1},isInteriorsConnected:function(){var t=new u,n,i;return this.geomGraph.computeSplitEdges(t),n=new uf(new nh),n.addEdges(t),this.setInteriorEdgesInResult(n),n.linkResultDirectedEdges(),i=this.buildEdgeRings(n.getEdgeEnds()),this.visitShellInteriors(this.geomGraph.getGeometry(),n),!this.hasUnvisitedShellEdge(i)},interfaces_:function(){return[]},getClass:function(){return sl}});sl.findDifferentPoint=function(n,t){for(var i=0;i<n.length;i++)if(!n[i].equals(t))return n[i];return null};i(ty.prototype,{createEdgeEndForNext:function(n,t,i,r){var f=i.segmentIndex+1,u,e;if(f>=n.getNumPoints()&&null===r)return null;u=n.getCoordinate(f);null!==r&&r.segmentIndex===i.segmentIndex&&(u=r.coord);e=new rf(n,i.coord,u,new ti(n.getLabel()));t.add(e)},createEdgeEndForPrev:function(n,t,i,r){var u=i.segmentIndex,f,e,o;if(0===i.dist){if(0===u)return null;u--}f=n.getCoordinate(u);null!==r&&r.segmentIndex>=u&&(f=r.coord);e=new ti(n.getLabel());e.flip();o=new rf(n,i.coord,f,e);t.add(o)},computeEdgeEnds:function(){var o,t;if(1===arguments.length){for(var l=arguments[0],f=new u,e=l;e.hasNext();)o=e.next(),this.computeEdgeEnds(o,f);return f}if(2===arguments.length){var r=arguments[0],s=arguments[1],h=r.getEdgeIntersectionList();h.addEndpoints();var i=h.iterator(),c=null,n=null;if(!i.hasNext())return null;t=i.next();do c=n,n=t,t=null,i.hasNext()&&(t=i.next()),null!==n&&(this.createEdgeEndForPrev(r,s,n,c),this.createEdgeEndForNext(r,s,n,t));while(null!==n)}},interfaces_:function(){return[]},getClass:function(){return ty}});y(hl,rf);i(hl.prototype,{insert:function(n){this.edgeEnds.add(n)},print:function(n){n.println("EdgeEndBundle--> Label: "+this.label);for(var t=this.iterator();t.hasNext();)t.next().print(n),n.println()},iterator:function(){return this.edgeEnds.iterator()},getEdgeEnds:function(){return this.edgeEnds},computeLabelOn:function(n,i){for(var o,r,u=0,f=!1,e=this.iterator();e.hasNext();)o=e.next(),r=o.getLabel().getLocation(n),r===t.BOUNDARY&&u++,r===t.INTERIOR&&(f=!0);r=t.NONE;f&&(r=t.INTERIOR);u>0&&(r=or.determineBoundary(i,u));this.label.setLocation(n,r)},computeLabelSide:function(n,i){for(var u,f,r=this.iterator();r.hasNext();)if(u=r.next(),u.getLabel().isArea()){if(f=u.getLabel().getLocation(n,i),f===t.INTERIOR)return this.label.setLocation(n,i,t.INTERIOR),null;f===t.EXTERIOR&&this.label.setLocation(n,i,t.EXTERIOR)}},getLabel:function(){return this.label},computeLabelSides:function(n){this.computeLabelSide(n,o.LEFT);this.computeLabelSide(n,o.RIGHT)},updateIM:function(n){ou.updateIM(this.label,n)},computeLabel:function(n){for(var i,r=!1,u=this.iterator();u.hasNext();)u.next().getLabel().isArea()&&(r=!0);for(this.label=r?new ti(t.NONE,t.NONE,t.NONE):new ti(t.NONE),i=0;i<2;i++)this.computeLabelOn(i,n),r&&this.computeLabelSides(i)},interfaces_:function(){return[]},getClass:function(){return hl}});y(iy,ts);i(iy.prototype,{updateIM:function(n){for(var t=this.iterator();t.hasNext();)t.next().updateIM(n)},insert:function(n){var t=this.edgeMap.get(n);null===t?(t=new hl(n),this.insertEdgeEnd(n,t)):t.insert(n)},interfaces_:function(){return[]},getClass:function(){return iy}});y(ry,te);i(ry.prototype,{updateIMFromEdges:function(n){this.edges.updateIM(n)},computeIM:function(n){n.setAtLeastIfValid(this.label.getLocation(0),this.label.getLocation(1),0)},interfaces_:function(){return[]},getClass:function(){return ry}});y(cl,ns);i(cl.prototype,{createNode:function(n){return new ry(n,new iy)},interfaces_:function(){return[]},getClass:function(){return cl}});i(vw.prototype,{insertEdgeEnds:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),this.nodes.add(i)},getNodeIterator:function(){return this.nodes.iterator()},copyNodesAndLabels:function(n,t){for(var r,i=n.getNodeIterator();i.hasNext();)r=i.next(),this.nodes.addNode(r.getCoordinate()).setLabel(t,r.getLabel().getLocation(t))},build:function(n){this.computeIntersectionNodes(n,0);this.copyNodesAndLabels(n,0);var t=new ty,i=t.computeEdgeEnds(n.getEdgeIterator());this.insertEdgeEnds(i)},computeIntersectionNodes:function(n,i){for(var o,r,u=n.getEdgeIterator();u.hasNext();)for(var f=u.next(),s=f.getLabel().getLocation(i),e=f.getEdgeIntersectionList().iterator();e.hasNext();)o=e.next(),r=this.nodes.addNode(o.coord),s===t.BOUNDARY?r.setLabelBoundary(i):r.getLabel().isNull(i)&&r.setLabel(i,t.INTERIOR)},interfaces_:function(){return[]},getClass:function(){return vw}});i(uy.prototype,{isNodeEdgeAreaLabelsConsistent:function(){for(var t,n=this.nodeGraph.getNodeIterator();n.hasNext();)if(t=n.next(),!t.getEdges().isAreaLabelsConsistent(this.geomGraph))return this.invalidPoint=t.getCoordinate().copy(),!1;return!0},getInvalidPoint:function(){return this.invalidPoint},hasDuplicateRings:function(){for(var r,t,i,n=this.nodeGraph.getNodeIterator();n.hasNext();)for(r=n.next(),t=r.getEdges().iterator();t.hasNext();)if(i=t.next(),i.getEdgeEnds().size()>1)return this.invalidPoint=i.getEdge().getCoordinate(0),!0;return!1},isNodeConsistentArea:function(){var n=this.geomGraph.computeSelfNodes(this.li,!0,!0);return n.hasProperIntersection()?(this.invalidPoint=n.getProperIntersectionPoint(),!1):(this.nodeGraph.build(this.geomGraph),this.isNodeEdgeAreaLabelsConsistent())},interfaces_:function(){return[]},getClass:function(){return uy}});i(yw.prototype,{buildIndex:function(){var n,t,i;for(this.index=new kt,n=0;n<this.rings.size();n++)t=this.rings.get(n),i=t.getEnvelopeInternal(),this.index.insert(i,t)},getNestedPoint:function(){return this.nestedPt},isNonNested:function(){var t,n,e,r,o;for(this.buildIndex(),t=0;t<this.rings.size();t++)for(var i=this.rings.get(t),h=i.getCoordinates(),f=this.index.query(i.getEnvelopeInternal()),u=0;u<f.size();u++)if(n=f.get(u),e=n.getCoordinates(),i!==n&&i.getEnvelopeInternal().intersects(n.getEnvelopeInternal())&&(r=ru.findPtNotNode(h,n,this.graph),null!==r&&(o=s.isPointInRing(r,e),o)))return this.nestedPt=r,!1;return!0},add:function(n){this.rings.add(n);this.totalEnv.expandToInclude(n.getEnvelopeInternal())},interfaces_:function(){return[]},getClass:function(){return yw}});i(tt.prototype,{getErrorType:function(){return this.errorType},getMessage:function(){return tt.errMsg[this.errorType]},getCoordinate:function(){return this.pt},toString:function(){var n="";return null!==this.pt&&(n=" at or near point "+this.pt),this.getMessage()+n},interfaces_:function(){return[]},getClass:function(){return tt}});tt.ERROR=0;tt.REPEATED_POINT=1;tt.HOLE_OUTSIDE_SHELL=2;tt.NESTED_HOLES=3;tt.DISCONNECTED_INTERIOR=4;tt.SELF_INTERSECTION=5;tt.RING_SELF_INTERSECTION=6;tt.NESTED_SHELLS=7;tt.DUPLICATE_RINGS=8;tt.TOO_FEW_POINTS=9;tt.INVALID_COORDINATE=10;tt.RING_NOT_CLOSED=11;tt.errMsg=["Topology Validation Error","Repeated Point","Hole lies outside shell","Holes are nested","Interior is disconnected","Self-intersection","Ring Self-intersection","Nested shells","Duplicate Rings","Too few distinct points in geometry component","Invalid Coordinate","Ring is not closed"];i(ru.prototype,{checkInvalidCoordinates:function(){var t,i,n;if(arguments[0]instanceof Array){for(t=arguments[0],n=0;n<t.length;n++)if(!ru.isValid(t[n]))return this.validErr=new tt(tt.INVALID_COORDINATE,t[n]),null}else if(arguments[0]instanceof st){if(i=arguments[0],this.checkInvalidCoordinates(i.getExteriorRing().getCoordinates()),null!==this.validErr)return null;for(n=0;n<i.getNumInteriorRing();n++)if(this.checkInvalidCoordinates(i.getInteriorRingN(n).getCoordinates()),null!==this.validErr)return null}},checkHolesNotNested:function(n,t){for(var u,i=new yw(t),r=0;r<n.getNumInteriorRing();r++)u=n.getInteriorRingN(r),i.add(u);i.isNonNested()||(this.validErr=new tt(tt.NESTED_HOLES,i.getNestedPoint()))},checkConsistentArea:function(n){var t=new uy(n);return t.isNodeConsistentArea()?void(t.hasDuplicateRings()&&(this.validErr=new tt(tt.DUPLICATE_RINGS,t.getInvalidPoint()))):(this.validErr=new tt(tt.SELF_INTERSECTION,t.getInvalidPoint()),null)},isValid:function(){return this.checkValid(this.parentGeometry),null===this.validErr},checkShellInsideHole:function(n,t,i){var f=n.getCoordinates(),e=t.getCoordinates(),u=ru.findPtNotNode(f,t,i),r;return null!==u&&!s.isPointInRing(u,e)?u:(r=ru.findPtNotNode(e,n,i),null!==r)?s.isPointInRing(r,f)?r:null:(c.shouldNeverReachHere("points in shell and hole appear to be equal"),null)},checkNoSelfIntersectingRings:function(n){for(var i,t=n.getEdgeIterator();t.hasNext();)if(i=t.next(),this.checkNoSelfIntersectingRing(i.getEdgeIntersectionList()),null!==this.validErr)return null},checkConnectedInteriors:function(n){var t=new sl(n);t.isInteriorsConnected()||(this.validErr=new tt(tt.DISCONNECTED_INTERIOR,t.getCoordinate()))},checkNoSelfIntersectingRing:function(n){for(var t,i=new di,r=!0,u=n.iterator();u.hasNext();)if(t=u.next(),r)r=!1;else{if(i.contains(t.coord))return this.validErr=new tt(tt.RING_SELF_INTERSECTION,t.coord),null;i.add(t.coord)}},checkHolesInShell:function(n,t){for(var f,i,u=n.getExteriorRing(),e=new ac(u),r=0;r<n.getNumInteriorRing();r++){if(f=n.getInteriorRingN(r),i=ru.findPtNotNode(f.getCoordinates(),u,t),null===i)return null;if(!e.isInside(i))return this.validErr=new tt(tt.HOLE_OUTSIDE_SHELL,i),null}},checkTooFewPoints:function(n){if(n.hasTooFewPoints())return this.validErr=new tt(tt.TOO_FEW_POINTS,n.getInvalidPoint()),null},getValidationError:function(){return this.checkValid(this.parentGeometry),this.validErr},checkValid:function(){var c,l,e,a,o,f,r,n,u,s,t,v,i;if(arguments[0]instanceof bt)c=arguments[0],this.checkInvalidCoordinates(c.getCoordinates());else if(arguments[0]instanceof lr)l=arguments[0],this.checkInvalidCoordinates(l.getCoordinates());else if(arguments[0]instanceof gt){if((e=arguments[0],this.checkInvalidCoordinates(e.getCoordinates()),null!==this.validErr)||(this.checkClosedRing(e),null!==this.validErr)||(n=new or(0,e),this.checkTooFewPoints(n),null!==this.validErr))return null;a=new si;n.computeSelfNodes(a,!0,!0);this.checkNoSelfIntersectingRings(n)}else if(arguments[0]instanceof d){if(o=arguments[0],this.checkInvalidCoordinates(o.getCoordinates()),null!==this.validErr)return null;n=new or(0,o);this.checkTooFewPoints(n)}else if(arguments[0]instanceof st){if((f=arguments[0],this.checkInvalidCoordinates(f),null!==this.validErr)||(this.checkClosedRings(f),null!==this.validErr)||(n=new or(0,f),this.checkTooFewPoints(n),null!==this.validErr)||(this.checkConsistentArea(n),null!==this.validErr)||!this.isSelfTouchingRingFormingHoleValid&&(this.checkNoSelfIntersectingRings(n),null!==this.validErr)||(this.checkHolesInShell(f,n),null!==this.validErr)||(this.checkHolesNotNested(f,n),null!==this.validErr))return null;this.checkConnectedInteriors(n)}else if(arguments[0]instanceof ai){for(r=arguments[0],t=0;t<r.getNumGeometries();t++)if((u=r.getGeometryN(t),this.checkInvalidCoordinates(u),null!==this.validErr)||(this.checkClosedRings(u),null!==this.validErr))return null;if((n=new or(0,r),this.checkTooFewPoints(n),null!==this.validErr)||(this.checkConsistentArea(n),null!==this.validErr)||!this.isSelfTouchingRingFormingHoleValid&&(this.checkNoSelfIntersectingRings(n),null!==this.validErr))return null;for(t=0;t<r.getNumGeometries();t++)if(u=r.getGeometryN(t),this.checkHolesInShell(u,n),null!==this.validErr)return null;for(t=0;t<r.getNumGeometries();t++)if(u=r.getGeometryN(t),this.checkHolesNotNested(u,n),null!==this.validErr)return null;if(this.checkShellsNotNested(r,n),null!==this.validErr)return null;this.checkConnectedInteriors(n)}else if(arguments[0]instanceof nt){for(s=arguments[0],t=0;t<s.getNumGeometries();t++)if(v=s.getGeometryN(t),this.checkValid(v),null!==this.validErr)return null}else if(arguments[0]instanceof h){if(i=arguments[0],this.validErr=null,i.isEmpty())return null;if(i instanceof bt)this.checkValid(i);else if(i instanceof lr)this.checkValid(i);else if(i instanceof gt)this.checkValid(i);else if(i instanceof d)this.checkValid(i);else if(i instanceof st)this.checkValid(i);else if(i instanceof ai)this.checkValid(i);else{if(!(i instanceof nt))throw new UnsupportedOperationException(i.getClass().getName());this.checkValid(i)}}},setSelfTouchingRingFormingHoleValid:function(n){this.isSelfTouchingRingFormingHoleValid=n},checkShellNotNested:function(n,t,i){var h=n.getCoordinates(),e=t.getExteriorRing(),c=e.getCoordinates(),u=ru.findPtNotNode(h,e,i),f,r,o;if(null===u||!s.isPointInRing(u,c))return null;if(t.getNumInteriorRing()<=0)return this.validErr=new tt(tt.NESTED_SHELLS,u),null;for(f=null,r=0;r<t.getNumInteriorRing();r++)if(o=t.getInteriorRingN(r),null===(f=this.checkShellInsideHole(n,o,i)))return null;this.validErr=new tt(tt.NESTED_SHELLS,f)},checkClosedRings:function(n){if(this.checkClosedRing(n.getExteriorRing()),null!==this.validErr)return null;for(var t=0;t<n.getNumInteriorRing();t++)if(this.checkClosedRing(n.getInteriorRingN(t)),null!==this.validErr)return null},checkClosedRing:function(n){if(!n.isClosed()){var t=null;n.getNumPoints()>=1&&(t=n.getCoordinateN(0));this.validErr=new tt(tt.RING_NOT_CLOSED,t)}},checkShellsNotNested:function(n,t){for(var u,i=0;i<n.getNumGeometries();i++)for(var f=n.getGeometryN(i),e=f.getExteriorRing(),r=0;r<n.getNumGeometries();r++)if(i!==r&&(u=n.getGeometryN(r),this.checkShellNotNested(e,u,t),null!==this.validErr))return null},interfaces_:function(){return[]},getClass:function(){return ru}});ru.findPtNotNode=function(n,t,i){for(var u,f=i.findEdge(t),e=f.getEdgeIntersectionList(),r=0;r<n.length;r++)if(u=n[r],!e.isIntersection(u))return u;return null};ru.isValid=function(){if(arguments[0]instanceof h)return new ru(arguments[0]).isValid();if(arguments[0]instanceof r){var n=arguments[0];return!(v.isNaN(n.x)||v.isInfinite(n.x)||v.isNaN(n.y)||v.isInfinite(n.y))}};i(du.prototype,{isIncluded:function(){return this._isIncluded},getCoordinates:function(){var n,t,i,r;if(null===this.ringPts){for(n=new ii,t=this.deList.iterator();t.hasNext();)i=t.next(),r=i.getEdge(),du.addEdge(r.getLine().getCoordinates(),i.getEdgeDirection(),n);this.ringPts=n.toCoordinateArray()}return this.ringPts},isIncludedSet:function(){return this._isIncludedSet},isValid:function(){return this.getCoordinates(),!(this.ringPts.length<=3)&&(this.getRing(),ru.isValid(this.ring))},build:function(n){var t=n;do this.add(t),t.setRing(this),t=t.getNext(),c.isTrue(null!==t,"found null DE in ring"),c.isTrue(t===n||!t.isInRing(),"found DE already in ring");while(t!==n)},isOuterHole:function(){return!!this._isHole&&!this.hasShell()},getPolygon:function(){var t=null,n;if(null!==this.holes)for(t=new Array(this.holes.size()).fill(null),n=0;n<this.holes.size();n++)t[n]=this.holes.get(n);return this.factory.createPolygon(this.ring,t)},isHole:function(){return this._isHole},isProcessed:function(){return this._isProcessed},addHole:function(){var t,n,i;arguments[0]instanceof gt?(t=arguments[0],null===this.holes&&(this.holes=new u),this.holes.add(t)):arguments[0]instanceof du&&(n=arguments[0],n.setShell(this),i=n.getRing(),null===this.holes&&(this.holes=new u),this.holes.add(i))},setIncluded:function(n){this._isIncluded=n;this._isIncludedSet=!0},getOuterHole:function(){var n,i,t;if(this.isHole())return null;for(n=0;n<this.deList.size();n++)if(i=this.deList.get(n),t=i.getSym().getRing(),t.isOuterHole())return t;return null},computeHole:function(){var n=this.getRing();this._isHole=s.isCCW(n.getCoordinates())},hasShell:function(){return null!==this.shell},isOuterShell:function(){return null!==this.getOuterHole()},getLineString:function(){return this.getCoordinates(),this.factory.createLineString(this.ringPts)},toString:function(){return pi.toLineString(new gr(this.getCoordinates()))},getShell:function(){return this.isHole()?this.shell:this},add:function(n){this.deList.add(n)},getRing:function(){if(null!==this.ring)return this.ring;this.getCoordinates();this.ringPts.length<3&&pt.out.println(this.ringPts);try{this.ring=this.factory.createLinearRing(this.ringPts)}catch(n){if(!(n instanceof ra))throw n;pt.out.println(this.ringPts)}return this.ring},updateIncluded:function(){var n,i,t;if(this.isHole())return null;for(n=0;n<this.deList.size();n++)if(i=this.deList.get(n),t=i.getSym().getRing().getShell(),null!==t&&t.isIncludedSet())return this.setIncluded(!t.isIncluded()),null},setShell:function(n){this.shell=n},setProcessed:function(n){this._isProcessed=n},interfaces_:function(){return[]},getClass:function(){return du}});du.findDirEdgesInRing=function(n){var t=n,i=new u;do i.add(t),t=t.getNext(),c.isTrue(null!==t,"found null DE in ring"),c.isTrue(t===n||!t.isInRing(),"found DE already in ring");while(t!==n);return i};du.addEdge=function(n,t,i){var r;if(t)for(r=0;r<n.length;r++)i.add(n[r],!1);else for(r=n.length-1;r>=0;r--)i.add(n[r],!1)};du.findEdgeRingContaining=function(n,t){for(var e,r=n.getRing(),o=r.getEnvelopeInternal(),h=r.getCoordinateN(0),i=null,c=null,l=t.iterator();l.hasNext();){var a=l.next(),u=a.getRing(),f=u.getEnvelopeInternal();!f.equals(o)&&f.contains(o)&&(h=w.ptNotInList(r.getCoordinates(),u.getCoordinates()),e=!1,s.isPointInRing(h,u.getCoordinates())&&(e=!0),e&&(null===i||c.contains(f))&&(i=a,c=i.getRing().getEnvelopeInternal()))}return i};i(pw.prototype,{compare:function(n,t){var i=n,r=t;return i.getRing().getEnvelope().compareTo(r.getRing().getEnvelope())},interfaces_:function(){return[ve]},getClass:function(){return pw}});du.EnvelopeComparator=pw;y(fi,eh);i(fi.prototype,{findEdgeRing:function(n){var t=new du(this.factory);return t.build(n),t},computeDepthParity:function(){if(0===arguments.length)for(;;)return null;else 1===arguments.length&&arguments[0]},computeNextCWEdges:function(){for(var t,n=this.nodeIterator();n.hasNext();)t=n.next(),fi.computeNextCWEdges(t)},addEdge:function(n){var t;if(n.isEmpty()||(t=w.removeRepeatedPoints(n.getCoordinates()),t.length<2))return null;var f=t[0],e=t[t.length-1],i=this.getNode(f),r=this.getNode(e),o=new el(i,r,t[1],!0),s=new el(r,i,t[t.length-2],!1),u=new ny(n);u.setDirectedEdges(o,s);this.add(u)},deleteCutEdges:function(){var t,i,n,r,f;for(this.computeNextCWEdges(),fi.findLabeledEdgeRings(this.dirEdges),t=new u,i=this.dirEdges.iterator();i.hasNext();)n=i.next(),n.isMarked()||(r=n.getSym(),n.getLabel()===r.getLabel()&&(n.setMarked(!0),r.setMarked(!0),f=n.getEdge(),t.add(f.getLine())));return t},getEdgeRings:function(){var r,t,i,n,f;for(this.computeNextCWEdges(),fi.label(this.dirEdges,-1),r=fi.findLabeledEdgeRings(this.dirEdges),this.convertMaximalToMinimalEdgeRings(r),t=new u,i=this.dirEdges.iterator();i.hasNext();)n=i.next(),n.isMarked()||n.isInRing()||(f=this.findEdgeRing(n),t.add(f));return t},getNode:function(n){var t=this.findNode(n);return null===t&&(t=new fe(n),this.add(t)),t},convertMaximalToMinimalEdgeRings:function(n){for(var i,e,t=n.iterator();t.hasNext();){var r=t.next(),u=r.getLabel(),f=fi.findIntersectionNodes(r,u);if(null!==f)for(i=f.iterator();i.hasNext();)e=i.next(),fi.computeNextCCWEdges(e,u)}},deleteDangles:function(){for(var r,o,t,u,s,f,h=this.findNodesOfDegree(1),e=new li,i=new gi,n=h.iterator();n.hasNext();)i.push(n.next());for(;!i.isEmpty();)for(r=i.pop(),fi.deleteAllEdges(r),o=r.getOutEdges().getEdges(),n=o.iterator();n.hasNext();)t=n.next(),t.setMarked(!0),u=t.getSym(),null!==u&&u.setMarked(!0),s=t.getEdge(),e.add(s.getLine()),f=t.getToNode(),1===fi.getDegreeNonDeleted(f)&&i.push(f);return e},interfaces_:function(){return[]},getClass:function(){return fi}});fi.findLabeledEdgeRings=function(n){for(var t,e,i=new u,r=1,f=n.iterator();f.hasNext();)t=f.next(),t.isMarked()||t.getLabel()>=0||(i.add(t),e=du.findDirEdgesInRing(t),fi.label(e,r),r++);return i};fi.getDegreeNonDeleted=function(n){for(var r=n.getOutEdges().getEdges(),t=0,i=r.iterator();i.hasNext();)i.next().isMarked()||t++;return t};fi.deleteAllEdges=function(n){for(var i,r,u=n.getOutEdges().getEdges(),t=u.iterator();t.hasNext();)i=t.next(),i.setMarked(!0),r=i.getSym(),null!==r&&r.setMarked(!0)};fi.label=function(n,t){for(var i=n.iterator();i.hasNext();)i.next().setLabel(t)};fi.computeNextCWEdges=function(n){for(var i,r,e=n.getOutEdges(),u=null,t=null,f=e.getEdges().iterator();f.hasNext();)i=f.next(),i.isMarked()||((null===u&&(u=i),null!==t)&&(r=t.getSym(),r.setNext(i)),t=i);null!==t&&(r=t.getSym(),r.setNext(u))};fi.computeNextCCWEdges=function(n,t){for(var u,l=n.getOutEdges(),f=null,i=null,s=l.getEdges(),e=s.size()-1;e>=0;e--){var o=s.get(e),h=o.getSym(),r=null;o.getLabel()===t&&(r=o);u=null;h.getLabel()===t&&(u=h);null===r&&null===u||(null!==u&&(i=u),null!==r&&(null!==i&&(i.setNext(r),i=null),null===f&&(f=r)))}null!==i&&(c.isTrue(null!==f),i.setNext(f))};fi.getDegree=function(n,t){for(var u=n.getOutEdges().getEdges(),i=0,r=u.iterator();r.hasNext();)r.next().getLabel()===t&&i++;return i};fi.findIntersectionNodes=function(n,t){var i=n,r=null,f;do f=i.getFromNode(),fi.getDegree(f,t)>1&&(null===r&&(r=new u),r.add(f)),i=i.getNext(),c.isTrue(null!==i,"found null DE in ring"),c.isTrue(i===n||!i.isInRing(),"found DE already in ring");while(i!==n);return r};i(wr.prototype,{getGeometry:function(){return null===this.geomFactory&&(this.geomFactory=new g),this.polygonize(),this.extractOnlyPolygonal?this.geomFactory.buildGeometry(this.polyList):this.geomFactory.createGeometryCollection(g.toGeometryArray(this.polyList))},getInvalidRingLines:function(){return this.polygonize(),this.invalidRingLines},findValidRings:function(n,t,i){for(var r,u=n.iterator();u.hasNext();)r=u.next(),r.isValid()?t.add(r):i.add(r.getLineString())},polygonize:function(){var t,n,i;if(null!==this.polyList||(this.polyList=new u,null===this.graph))return null;this.dangles=this.graph.deleteDangles();this.cutEdges=this.graph.deleteCutEdges();t=this.graph.getEdgeRings();n=new u;this.invalidRingLines=new u;this.isCheckingRingsValid?this.findValidRings(t,n,this.invalidRingLines):n=t;this.findShellsAndHoles(n);wr.assignHolesToShells(this.holeList,this.shellList);gu.sort(this.shellList,new du.EnvelopeComparator);i=!0;this.extractOnlyPolygonal&&(wr.findDisjointShells(this.shellList),i=!1);this.polyList=wr.extractPolygons(this.shellList,i)},getDangles:function(){return this.polygonize(),this.dangles},getCutEdges:function(){return this.polygonize(),this.cutEdges},getPolygons:function(){return this.polygonize(),this.polyList},add:function(){var i,n,r,t,u;if(l(arguments[0],yt))for(i=arguments[0],n=i.iterator();n.hasNext();)r=n.next(),this.add(r);else arguments[0]instanceof d?(t=arguments[0],this.geomFactory=t.getFactory(),null===this.graph&&(this.graph=new fi(this.geomFactory)),this.graph.addEdge(t)):arguments[0]instanceof h&&(u=arguments[0],u.apply(this.lineStringAdder))},setCheckRingsValid:function(n){this.isCheckingRingsValid=n},findShellsAndHoles:function(n){var i,t;for(this.holeList=new u,this.shellList=new u,i=n.iterator();i.hasNext();)t=i.next(),t.computeHole(),t.isHole()?this.holeList.add(t):this.shellList.add(t)},interfaces_:function(){return[]},getClass:function(){return wr}});wr.findOuterShells=function(n){for(var r,t,i=n.iterator();i.hasNext();)r=i.next(),t=r.getOuterHole(),null===t||t.isProcessed()||(r.setIncluded(!0),t.setProcessed(!0))};wr.extractPolygons=function(n,t){for(var f,i=new u,r=n.iterator();r.hasNext();)f=r.next(),(t||f.isIncluded())&&i.add(f.getPolygon());return i};wr.assignHolesToShells=function(n,t){for(var r,i=n.iterator();i.hasNext();)r=i.next(),wr.assignHoleToShell(r,t)};wr.assignHoleToShell=function(n,t){var i=du.findEdgeRingContaining(n,t);null!==i&&i.addHole(n)};wr.findDisjointShells=function(n){var t,r,i;wr.findOuterShells(n);t=null;do for(t=!1,r=n.iterator();r.hasNext();)i=r.next(),i.isIncludedSet()||(i.updateIncluded(),i.isIncludedSet()||(t=!0));while(t)};i(fy.prototype,{filter:function(n){n instanceof d&&this.p.add(n)},interfaces_:function(){return[yu]},getClass:function(){return fy}});wr.LineStringAdder=fy;gb=Object.freeze({Polygonizer:wr});i(ey.prototype,{insertEdgeEnds:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),this.nodes.add(i)},computeProperIntersectionIM:function(n,t){var i=this.arg[0].getGeometry().getDimension(),r=this.arg[1].getGeometry().getDimension(),u=n.hasProperIntersection(),f=n.hasProperInteriorIntersection();2===i&&2===r?u&&t.setAtLeast("212101212"):2===i&&1===r?(u&&t.setAtLeast("FFF0FFFF2"),f&&t.setAtLeast("1FFFFF1FF")):1===i&&2===r?(u&&t.setAtLeast("F0FFFFFF2"),f&&t.setAtLeast("1F1FFFFFF")):1===i&&1===r&&f&&t.setAtLeast("0FFFFFFFF")},labelIsolatedEdges:function(n,t){for(var i,r=this.arg[n].getEdgeIterator();r.hasNext();)i=r.next(),i.isIsolated()&&(this.labelIsolatedEdge(i,t,this.arg[t].getGeometry()),this.isolatedEdges.add(i))},labelIsolatedEdge:function(n,i,r){if(r.getDimension()>0){var u=this.ptLocator.locate(n.getCoordinate(),r);n.getLabel().setAllLocations(i,u)}else n.getLabel().setAllLocations(i,t.EXTERIOR)},computeIM:function(){var n=new ot,r,i,u,f;return(n.set(t.EXTERIOR,t.EXTERIOR,2),!this.arg[0].getGeometry().getEnvelopeInternal().intersects(this.arg[1].getGeometry().getEnvelopeInternal()))?(this.computeDisjointIM(n),n):(this.arg[0].computeSelfNodes(this.li,!1),this.arg[1].computeSelfNodes(this.li,!1),r=this.arg[0].computeEdgeIntersections(this.arg[1],this.li,!1),this.computeIntersectionNodes(0),this.computeIntersectionNodes(1),this.copyNodesAndLabels(0),this.copyNodesAndLabels(1),this.labelIsolatedNodes(),this.computeProperIntersectionIM(r,n),i=new ty,u=i.computeEdgeEnds(this.arg[0].getEdgeIterator()),this.insertEdgeEnds(u),f=i.computeEdgeEnds(this.arg[1].getEdgeIterator()),this.insertEdgeEnds(f),this.labelNodeEdges(),this.labelIsolatedEdges(0,1),this.labelIsolatedEdges(1,0),this.updateIM(n),n)},labelNodeEdges:function(){for(var n=this.nodes.iterator();n.hasNext();)n.next().getEdges().computeLabelling(this.arg)},copyNodesAndLabels:function(n){for(var i,t=this.arg[n].getNodeIterator();t.hasNext();)i=t.next(),this.nodes.addNode(i.getCoordinate()).setLabel(n,i.getLabel().getLocation(n))},labelIntersectionNodes:function(n){for(var e,i,r=this.arg[n].getEdgeIterator();r.hasNext();)for(var u=r.next(),o=u.getLabel().getLocation(n),f=u.getEdgeIntersectionList().iterator();f.hasNext();)e=f.next(),i=this.nodes.find(e.coord),i.getLabel().isNull(n)&&(o===t.BOUNDARY?i.setLabelBoundary(n):i.setLabel(n,t.INTERIOR))},labelIsolatedNode:function(n,t){var i=this.ptLocator.locate(n.getCoordinate(),this.arg[t].getGeometry());n.getLabel().setAllLocations(t,i)},computeIntersectionNodes:function(n){for(var e,i,r=this.arg[n].getEdgeIterator();r.hasNext();)for(var u=r.next(),o=u.getLabel().getLocation(n),f=u.getEdgeIntersectionList().iterator();f.hasNext();)e=f.next(),i=this.nodes.addNode(e.coord),o===t.BOUNDARY?i.setLabelBoundary(n):i.getLabel().isNull(n)&&i.setLabel(n,t.INTERIOR)},labelIsolatedNodes:function(){for(var n,i,t=this.nodes.iterator();t.hasNext();)n=t.next(),i=n.getLabel(),c.isTrue(i.getGeometryCount()>0,"node with empty label found"),n.isIsolated()&&(i.isNull(0)?this.labelIsolatedNode(n,0):this.labelIsolatedNode(n,1))},updateIM:function(n){for(var i,r,t=this.isolatedEdges.iterator();t.hasNext();)t.next().updateIM(n);for(i=this.nodes.iterator();i.hasNext();)r=i.next(),r.updateIM(n),r.updateIMFromEdges(n)},computeDisjointIM:function(n){var r=this.arg[0].getGeometry(),i;r.isEmpty()||(n.set(t.INTERIOR,t.EXTERIOR,r.getDimension()),n.set(t.BOUNDARY,t.EXTERIOR,r.getBoundaryDimension()));i=this.arg[1].getGeometry();i.isEmpty()||(n.set(t.EXTERIOR,t.INTERIOR,i.getDimension()),n.set(t.EXTERIOR,t.BOUNDARY,i.getBoundaryDimension()))},interfaces_:function(){return[]},getClass:function(){return ey}});i(ll.prototype,{isContainedInBoundary:function(n){var t,i;if(n instanceof st)return!1;if(n instanceof bt)return this.isPointContainedInBoundary(n);if(n instanceof d)return this.isLineStringContainedInBoundary(n);for(t=0;t<n.getNumGeometries();t++)if(i=n.getGeometryN(t),!this.isContainedInBoundary(i))return!1;return!0},isLineSegmentContainedInBoundary:function(n,t){if(n.equals(t))return this.isPointContainedInBoundary(n);if(n.x===t.x){if(n.x===this.rectEnv.getMinX()||n.x===this.rectEnv.getMaxX())return!0}else if(n.y===t.y&&(n.y===this.rectEnv.getMinY()||n.y===this.rectEnv.getMaxY()))return!0;return!1},isLineStringContainedInBoundary:function(n){for(var i=n.getCoordinateSequence(),u=new r,f=new r,t=0;t<i.size()-1;t++)if(i.getCoordinate(t,u),i.getCoordinate(t+1,f),!this.isLineSegmentContainedInBoundary(u,f))return!1;return!0},isPointContainedInBoundary:function(){var t,n;return arguments[0]instanceof bt?(t=arguments[0],this.isPointContainedInBoundary(t.getCoordinate())):arguments[0]instanceof r?(n=arguments[0],n.x===this.rectEnv.getMinX()||n.x===this.rectEnv.getMaxX()||n.y===this.rectEnv.getMinY()||n.y===this.rectEnv.getMaxY()):void 0},contains:function(n){return!!this.rectEnv.contains(n.getEnvelopeInternal())&&!this.isContainedInBoundary(n)},interfaces_:function(){return[]},getClass:function(){return ll}});ll.contains=function(n,t){return new ll(n).contains(t)};i(ww.prototype,{intersects:function(n,t){var u=new p(n,t),r,i;return this.rectEnv.intersects(u)?this.rectEnv.intersects(n)?!0:this.rectEnv.intersects(t)?!0:(n.compareTo(t)>0&&(r=n,n=t,t=r),i=!1,t.y>n.y&&(i=!0),i?this.li.computeIntersection(n,t,this.diagDown0,this.diagDown1):this.li.computeIntersection(n,t,this.diagUp0,this.diagUp1),!!this.li.hasIntersection()):!1},interfaces_:function(){return[]},getClass:function(){return ww}});i(eo.prototype,{applyTo:function(n){for(var i,t=0;t<n.getNumGeometries()&&!this._isDone;t++)if(i=n.getGeometryN(t),i instanceof nt)this.applyTo(i);else if(this.visit(i),this.isDone())return this._isDone=!0,null},interfaces_:function(){return[]},getClass:function(){return eo}});i(oh.prototype,{intersects:function(n){var t,i,r;return this.rectEnv.intersects(n.getEnvelopeInternal())?(t=new oy(this.rectEnv),t.applyTo(n),t.intersects())?!0:(i=new sy(this.rectangle),i.applyTo(n),i.containsPoint())?!0:(r=new hy(this.rectangle),r.applyTo(n),!!r.intersects()):!1},interfaces_:function(){return[]},getClass:function(){return oh}});oh.intersects=function(n,t){return new oh(n).intersects(t)};y(oy,eo);i(oy.prototype,{isDone:function(){return!0===this._intersects},visit:function(n){var t=n.getEnvelopeInternal();return this.rectEnv.intersects(t)?this.rectEnv.contains(t)?(this._intersects=!0,null):t.getMinX()>=this.rectEnv.getMinX()&&t.getMaxX()<=this.rectEnv.getMaxX()?(this._intersects=!0,null):t.getMinY()>=this.rectEnv.getMinY()&&t.getMaxY()<=this.rectEnv.getMaxY()?(this._intersects=!0,null):void 0:null},intersects:function(){return this._intersects},interfaces_:function(){return[]},getClass:function(){return oy}});y(sy,eo);i(sy.prototype,{isDone:function(){return!0===this._containsPoint},visit:function(n){var u,t,i;if(!(n instanceof st)||(u=n.getEnvelopeInternal(),!this.rectEnv.intersects(u)))return null;for(t=new r,i=0;i<4;i++)if(this.rectSeq.getCoordinate(i,t),u.contains(t)&&tu.containsPointInPolygon(t,n))return this._containsPoint=!0,null},containsPoint:function(){return this._containsPoint},interfaces_:function(){return[]},getClass:function(){return sy}});y(hy,eo);i(hy.prototype,{intersects:function(){return this.hasIntersection},isDone:function(){return!0===this.hasIntersection},visit:function(n){var i=n.getEnvelopeInternal(),t;if(!this.rectEnv.intersects(i))return null;t=wi.getLines(n);this.checkIntersectionWithLineStrings(t)},checkIntersectionWithLineStrings:function(n){for(var i,t=n.iterator();t.hasNext();)if(i=t.next(),this.checkIntersectionWithSegments(i),this.hasIntersection)return null},checkIntersectionWithSegments:function(n){for(var i=n.getCoordinateSequence(),t=1;t<i.size();t++)if(i.getCoordinate(t-1,this.p0),i.getCoordinate(t,this.p1),this.rectIntersector.intersects(this.p0,this.p1))return this.hasIntersection=!0,null},interfaces_:function(){return[]},getClass:function(){return hy}});y(ut,ge);i(ut.prototype,{getIntersectionMatrix:function(){return this._relate.computeIM()},interfaces_:function(){return[]},getClass:function(){return ut}});ut.covers=function(n,t){return!!n.getEnvelopeInternal().covers(t.getEnvelopeInternal())&&(!!n.isRectangle()||ut.relate(n,t).isCovers())};ut.intersects=function(n,t){return!!n.getEnvelopeInternal().intersects(t.getEnvelopeInternal())&&(n.isRectangle()?oh.intersects(n,t):t.isRectangle()?oh.intersects(t,n):ut.relate(n,t).isIntersects())};ut.touches=function(n,t){return!!n.getEnvelopeInternal().intersects(t.getEnvelopeInternal())&&ut.relate(n,t).isTouches(n.getDimension(),t.getDimension())};ut.within=function(n,t){return t.contains(n)};ut.coveredBy=function(n,t){return ut.covers(t,n)};ut.relate=function(){if(2===arguments.length){var i=arguments[0],r=arguments[1],n=new ut(i,r),t=n.getIntersectionMatrix();return t}if(3===arguments.length){if("string"==typeof arguments[2]&&arguments[0]instanceof h&&arguments[1]instanceof h){var u=arguments[0],f=arguments[1],e=arguments[2];return ut.relateWithCheck(u,f).matches(e)}if(l(arguments[2],oi)&&arguments[0]instanceof h&&arguments[1]instanceof h){var o=arguments[0],s=arguments[1],c=arguments[2],n=new ut(o,s,c),t=n.getIntersectionMatrix();return t}}};ut.overlaps=function(n,t){return!!n.getEnvelopeInternal().intersects(t.getEnvelopeInternal())&&ut.relate(n,t).isOverlaps(n.getDimension(),t.getDimension())};ut.disjoint=function(n,t){return!n.intersects(t)};ut.relateWithCheck=function(n,t){return n.checkNotGeometryCollection(n),n.checkNotGeometryCollection(t),ut.relate(n,t)};ut.crosses=function(n,t){return!!n.getEnvelopeInternal().intersects(t.getEnvelopeInternal())&&ut.relate(n,t).isCrosses(n.getDimension(),t.getDimension())};ut.contains=function(n,t){return!!n.getEnvelopeInternal().contains(t.getEnvelopeInternal())&&(n.isRectangle()?ll.contains(n,t):ut.relate(n,t).isContains())};nk=Object.freeze({RelateOp:ut});i(uu.prototype,{extractElements:function(n,t){var i,r;if(null===n)return null;for(i=0;i<n.getNumGeometries();i++)r=n.getGeometryN(i),this.skipEmpty&&r.isEmpty()||t.add(r)},combine:function(){for(var i,n=new u,t=this.inputGeoms.iterator();t.hasNext();)i=t.next(),this.extractElements(i,n);return 0===n.size()?null!==this.geomFactory?this.geomFactory.createGeometryCollection(null):null:this.geomFactory.buildGeometry(n)},interfaces_:function(){return[]},getClass:function(){return uu}});uu.combine=function(){var t,n;if(1===arguments.length)return t=arguments[0],n=new uu(t),n.combine();if(2===arguments.length){var i=arguments[0],r=arguments[1],n=new uu(uu.createList(i,r));return n.combine()}if(3===arguments.length){var u=arguments[0],f=arguments[1],e=arguments[2],n=new uu(uu.createList(u,f,e));return n.combine()}};uu.extractFactory=function(n){return n.isEmpty()?null:n.iterator().next().getFactory()};uu.createList=function(){if(2===arguments.length){var t=arguments[0],i=arguments[1],n=new u;return n.add(t),n.add(i),n}if(3===arguments.length){var r=arguments[0],f=arguments[1],e=arguments[2],n=new u;return n.add(r),n.add(f),n.add(e),n}};i(al.prototype,{union:function(){for(var e,u,f,n,o=new bo,i=new di,r=0;r<this.pointGeom.getNumGeometries();r++)e=this.pointGeom.getGeometryN(r),u=e.getCoordinate(),o.locate(u,this.otherGeom)===t.EXTERIOR&&i.add(u);return 0===i.size()?this.otherGeom:(f=null,n=w.toCoordinateArray(i),f=1===n.length?this.geomFact.createPoint(n[0]):this.geomFact.createMultiPointFromCoords(n),uu.combine(f,this.otherGeom))},interfaces_:function(){return[]},getClass:function(){return al}});al.union=function(n,t){return new al(n,t).union()};i(oo.prototype,{filter:function(n){-1!==this.sortIndex&&n.getSortIndex()!==this.sortIndex||this.comps.add(n)},interfaces_:function(){return[wf]},getClass:function(){return oo}});oo.extract=function(){var i,r;if(2===arguments.length)return i=arguments[0],r=arguments[1],oo.extract(i,r,new u);if(3===arguments.length){var n=arguments[0],f=arguments[1],t=arguments[2];return n.getSortIndex()===f?t.add(n):n instanceof nt&&n.apply(new oo(f,t)),t}};i(cu.prototype,{reduceToGeometries:function(n){for(var t,i,r=new u,f=n.iterator();f.hasNext();)t=f.next(),i=null,l(t,ei)?i=this.unionTree(t):t instanceof h&&(i=t),r.add(i);return r},extractByEnvelope:function(n,t,i){for(var f,e=new u,r=0;r<t.getNumGeometries();r++)f=t.getGeometryN(r),f.getEnvelopeInternal().intersects(n)?e.add(f):i.add(f);return this.geomFactory.buildGeometry(e)},unionOptimized:function(n,t){var i=n.getEnvelopeInternal(),r=t.getEnvelopeInternal(),u;return i.intersects(r)?n.getNumGeometries()<=1&&t.getNumGeometries()<=1?this.unionActual(n,t):(u=i.intersection(r),this.unionUsingEnvelopeIntersection(n,t,u)):uu.combine(n,t)},union:function(){var n,t,i,r;if(null===this.inputPolys)throw new IllegalStateException("union() method cannot be called twice");if(this.inputPolys.isEmpty())return null;for(this.geomFactory=this.inputPolys.iterator().next().getFactory(),n=new kt(cu.STRTREE_NODE_CAPACITY),t=this.inputPolys.iterator();t.hasNext();)i=t.next(),n.insert(i.getEnvelopeInternal(),i);return this.inputPolys=null,r=n.itemsTree(),this.unionTree(r)},binaryUnion:function(){var u,r;if(1===arguments.length)return u=arguments[0],this.binaryUnion(u,0,u.size());if(3===arguments.length){var t=arguments[0],n=arguments[1],i=arguments[2];if(i-n<=1)return r=cu.getGeometry(t,n),this.unionSafe(r,null);if(i-n==2)return this.unionSafe(cu.getGeometry(t,n),cu.getGeometry(t,n+1));var f=Math.trunc((i+n)/2),r=this.binaryUnion(t,n,f),e=this.binaryUnion(t,f,i);return this.unionSafe(r,e)}},repeatedUnion:function(n){for(var r,t=null,i=n.iterator();i.hasNext();)r=i.next(),t=null===t?r.copy():t.union(r);return t},unionSafe:function(n,t){return null===n&&null===t?null:null===n?t.copy():null===t?n.copy():this.unionOptimized(n,t)},unionActual:function(n,t){return cu.restrictToPolygons(n.union(t))},unionTree:function(n){var t=this.reduceToGeometries(n);return this.binaryUnion(t)},unionUsingEnvelopeIntersection:function(n,t,i){var r=new u,f=this.extractByEnvelope(i,n,r),e=this.extractByEnvelope(i,t,r),o=this.unionActual(f,e);return r.add(o),uu.combine(r)},bufferUnion:function(){if(1===arguments.length){var r=arguments[0],n=r.get(0).getFactory(),t=n.buildGeometry(r),i=t.buffer(0);return i}if(2===arguments.length){var u=arguments[0],f=arguments[1],n=u.getFactory(),t=n.createGeometryCollection([u,f]),i=t.buffer(0);return i}},interfaces_:function(){return[]},getClass:function(){return cu}});cu.restrictToPolygons=function(n){if(l(n,bf))return n;var t=fs.getPolygons(n);return 1===t.size()?t.get(0):n.getFactory().createMultiPolygon(g.toPolygonArray(t))};cu.getGeometry=function(n,t){return t>=n.size()?null:n.get(t)};cu.union=function(n){return new cu(n).union()};cu.STRTREE_NODE_CAPACITY=4;i(so.prototype,{unionNoOpt:function(n){var t=this.geomFact.createPoint();return hi.overlayOp(n,t,a.UNION)},unionWithNull:function(n,t){return null===n&&null===t?null:null===t?n:null===n?t:n.union(t)},extract:function(){var i,t,r,n;if(l(arguments[0],yt))for(i=arguments[0],t=i.iterator();t.hasNext();)r=t.next(),this.extract(r);else arguments[0]instanceof h&&(n=arguments[0],null===this.geomFact&&(this.geomFact=n.getFactory()),oo.extract(n,h.SORTINDEX_POLYGON,this.polygons),oo.extract(n,h.SORTINDEX_LINESTRING,this.lines),oo.extract(n,h.SORTINDEX_POINT,this.points))},union:function(){var n,f,r,e,u,t,i;return null===this.geomFact?null:(n=null,this.points.size()>0&&(f=this.geomFact.buildGeometry(this.points),n=this.unionNoOpt(f)),r=null,this.lines.size()>0&&(e=this.geomFact.buildGeometry(this.lines),r=this.unionNoOpt(e)),u=null,this.polygons.size()>0&&(u=cu.union(this.polygons)),t=this.unionWithNull(r,u),i=null,i=null===n?t:null===t?n:al.union(n,t),null===i?this.geomFact.createGeometryCollection():i)},interfaces_:function(){return[]},getClass:function(){return so}});so.union=function(){var t,i,n;if(1===arguments.length){if(l(arguments[0],yt))return t=arguments[0],n=new so(t),n.union();if(arguments[0]instanceof h)return i=arguments[0],n=new so(i),n.union()}else if(2===arguments.length){var r=arguments[0],u=arguments[1],n=new so(r,u);return n.union()}};var ad=Object.freeze({UnaryUnionOp:so}),vd=Object.freeze({IsValidOp:ru,ConsistentAreaTester:uy}),yd=Object.freeze({BoundaryOp:ee,IsSimpleOp:dc,buffer:wb,distance:bb,linemerge:kb,overlay:db,polygonize:gb,relate:nk,union:ad,valid:vd});y(cy,dr.CoordinateOperation);i(cy.prototype,{editCoordinates:function(n,t){var u,i,f,o;if(0===n.length)return null;for(u=new Array(n.length).fill(null),i=0;i<n.length;i++)f=new r(n[i]),this.targetPM.makePrecise(f),u[i]=f;var h=new ii(u,!1),s=h.toCoordinateArray(),e=0;return t instanceof d&&(e=2),t instanceof gt&&(e=4),o=u,this.removeCollapsed&&(o=null),s.length<e?o:s},interfaces_:function(){return[]},getClass:function(){return cy}});i(os.prototype,{fixPolygonalTopology:function(n){var r=n,t,i;return this.changePrecisionModel||(r=this.changePM(n,this.targetPM)),t=r.buffer(0),i=t,this.changePrecisionModel||(i=this.changePM(t,n.getPrecisionModel())),i},reducePointwise:function(n){var i=null,t;return i=this.changePrecisionModel?new dr(this.createFactory(n.getFactory(),this.targetPM)):new dr,t=this.removeCollapsed,n.getDimension()>=2&&(t=!0),i.edit(n,new cy(this.targetPM,t))},changePM:function(n,t){return this.createEditor(n.getFactory(),t).edit(n,new dr.NoOpGeometryOperation)},setRemoveCollapsedComponents:function(n){this.removeCollapsed=n},createFactory:function(n,t){return new g(t,n.getSRID(),n.getCoordinateSequenceFactory())},setChangePrecisionModel:function(n){this.changePrecisionModel=n},reduce:function(n){var t=this.reducePointwise(n);return this.isPointwise?t:l(t,bf)?t.isValid()?t:this.fixPolygonalTopology(t):t},setPointwise:function(n){this.isPointwise=n},createEditor:function(n,t){return n.getPrecisionModel()===t?new dr:new dr(this.createFactory(n,t))},interfaces_:function(){return[]},getClass:function(){return os}});os.reduce=function(n,t){return new os(t).reduce(n)};os.reducePointwise=function(n,t){var i=new os(t);return i.setPointwise(!0),i.reduce(n)};tk=Object.freeze({GeometryPrecisionReducer:os});i(vl.prototype,{simplifySection:function(n,t){var f,i;if(n+1===t)return null;this.seg.p0=this.pts[n];this.seg.p1=this.pts[t];for(var r=-1,u=n,i=n+1;i<t;i++)f=this.seg.distance(this.pts[i]),f>r&&(r=f,u=i);if(r<=this.distanceTolerance)for(i=n+1;i<t;i++)this.usePt[i]=!1;else this.simplifySection(n,u),this.simplifySection(u,t)},setDistanceTolerance:function(n){this.distanceTolerance=n},simplify:function(){var t,n;for(this.usePt=new Array(this.pts.length).fill(null),n=0;n<this.pts.length;n++)this.usePt[n]=!0;for(this.simplifySection(0,this.pts.length-1),t=new ii,n=0;n<this.pts.length;n++)this.usePt[n]&&t.add(new r(this.pts[n]));return t.toCoordinateArray()},interfaces_:function(){return[]},getClass:function(){return vl}});vl.simplify=function(n,t){var i=new vl(n);return i.setDistanceTolerance(t),i.simplify()};i(sh.prototype,{setEnsureValid:function(n){this.isEnsureValidTopology=n},getResultGeometry:function(){return this.inputGeom.isEmpty()?this.inputGeom.copy():new yl(this.isEnsureValidTopology,this.distanceTolerance).transform(this.inputGeom)},setDistanceTolerance:function(n){if(n<0)throw new ct("Tolerance must be non-negative");this.distanceTolerance=n},interfaces_:function(){return[]},getClass:function(){return sh}});sh.simplify=function(n,t){var i=new sh(n);return i.setDistanceTolerance(t),i.getResultGeometry()};y(yl,ur);i(yl.prototype,{transformPolygon:function(n,t){if(n.isEmpty())return null;var i=ur.prototype.transformPolygon.call(this,n,t);return t instanceof ai?i:this.createValidArea(i)},createValidArea:function(n){return this.isEnsureValidTopology?n.buffer(0):n},transformCoordinates:function(n){var t=n.toCoordinateArray(),i=null;return i=0===t.length?new Array(0).fill(null):vl.simplify(t,this.distanceTolerance),this.factory.getCoordinateSequenceFactory().create(i)},transformMultiPolygon:function(n,t){var i=ur.prototype.transformMultiPolygon.call(this,n,t);return this.createValidArea(i)},transformLinearRing:function(n,t){var r=t instanceof st,i=ur.prototype.transformLinearRing.call(this,n,t);return!r||i instanceof gt?i:null},interfaces_:function(){return[]},getClass:function(){return yl}});sh.DPTransformer=yl;y(pl,b);i(pl.prototype,{getIndex:function(){return this.index},getParent:function(){return this.parent},interfaces_:function(){return[]},getClass:function(){return pl}});i(ae.prototype,{addToResult:function(n){this.resultSegs.add(n)},asLineString:function(){return this.parentLine.getFactory().createLineString(ae.extractCoordinates(this.resultSegs))},getResultSize:function(){var n=this.resultSegs.size();return 0===n?0:n+1},getParent:function(){return this.parentLine},getSegment:function(n){return this.segs[n]},getParentCoordinates:function(){return this.parentLine.getCoordinates()},getMinimumSize:function(){return this.minimumSize},asLinearRing:function(){return this.parentLine.getFactory().createLinearRing(ae.extractCoordinates(this.resultSegs))},getSegments:function(){return this.segs},init:function(){var t=this.parentLine.getCoordinates(),n,i;for(this.segs=new Array(t.length-1).fill(null),n=0;n<t.length-1;n++)i=new pl(t[n],t[n+1],this.parentLine,n),this.segs[n]=i},getResultCoordinates:function(){return ae.extractCoordinates(this.resultSegs)},interfaces_:function(){return[]},getClass:function(){return ae}});ae.extractCoordinates=function(n){for(var t=new Array(n.size()+1).fill(null),r=null,i=0;i<n.size();i++)r=n.get(i),t[i]=r.p0;return t[t.length-1]=r.p1,t};i(hh.prototype,{remove:function(n){this.index.remove(new p(n.p0,n.p1),n)},add:function(){var r,n;if(arguments[0]instanceof ae)for(var u=arguments[0],i=u.getSegments(),t=0;t<i.length;t++)r=i[t],this.add(r);else arguments[0]instanceof b&&(n=arguments[0],this.index.insert(new p(n.p0,n.p1),n))},query:function(n){var i=new p(n.p0,n.p1),t=new bw(n);return this.index.query(i,t),t.getItems()},interfaces_:function(){return[]},getClass:function(){return hh}});i(bw.prototype,{visitItem:function(n){var t=n;p.intersects(t.p0,t.p1,this.querySeg.p0,this.querySeg.p1)&&this.items.add(n)},getItems:function(){return this.items},interfaces_:function(){return[we]},getClass:function(){return bw}});i(wl.prototype,{flatten:function(n,t){var r=this.linePts[n],u=this.linePts[t],i=new b(r,u);return this.remove(this.line,n,t),this.outputIndex.add(i),i},hasBadIntersection:function(n,t,i){return!!this.hasBadOutputIntersection(i)||!!this.hasBadInputIntersection(n,t,i)},setDistanceTolerance:function(n){this.distanceTolerance=n},simplifySection:function(n,t,i){var f,u,o,s,e,r;if(i+=1,f=new Array(2).fill(null),n+1===t)return r=this.line.getSegment(n),this.line.addToResult(r),null;if(u=!0,this.line.getResultSize()<this.line.getMinimumSize()&&i+1<this.line.getMinimumSize()&&(u=!1),o=new Array(1).fill(null),s=this.findFurthestPoint(this.linePts,n,t,o),o[0]>this.distanceTolerance&&(u=!1),e=new b,e.p0=this.linePts[n],e.p1=this.linePts[t],f[0]=n,f[1]=t,this.hasBadIntersection(this.line,f,e)&&(u=!1),u)return r=this.flatten(n,t),this.line.addToResult(r),null;this.simplifySection(n,s,i);this.simplifySection(s,t,i)},hasBadOutputIntersection:function(n){for(var r,i=this.outputIndex.query(n),t=i.iterator();t.hasNext();)if(r=t.next(),this.hasInteriorIntersection(r,n))return!0;return!1},findFurthestPoint:function(n,t,i,r){var f=new b,h,o;f.p0=n[t];f.p1=n[i];for(var e=-1,s=t,u=t+1;u<i;u++)h=n[u],o=f.distance(h),o>e&&(e=o,s=u);return r[0]=e,s},simplify:function(n){this.line=n;this.linePts=n.getParentCoordinates();this.simplifySection(0,this.linePts.length-1,0)},remove:function(n,t,i){for(var u,r=t;r<i;r++)u=n.getSegment(r),this.inputIndex.remove(u)},hasInteriorIntersection:function(n,t){return this.li.computeIntersection(n.p0,n.p1,t.p0,t.p1),this.li.isInteriorIntersection()},hasBadInputIntersection:function(n,t,i){for(var u,f=this.inputIndex.query(i),r=f.iterator();r.hasNext();)if(u=r.next(),this.hasInteriorIntersection(u,i)){if(wl.isInLineSection(n,t,u))continue;return!0}return!1},interfaces_:function(){return[]},getClass:function(){return wl}});wl.isInLineSection=function(n,t,i){if(i.getParent()!==n.getParent())return!1;var r=i.getIndex();return r>=t[0]&&r<t[1]};i(kw.prototype,{setDistanceTolerance:function(n){this.distanceTolerance=n},simplify:function(n){for(var i,t=n.iterator();t.hasNext();)this.inputIndex.add(t.next());for(t=n.iterator();t.hasNext();)i=new wl(this.inputIndex,this.outputIndex),i.setDistanceTolerance(this.distanceTolerance),i.simplify(t.next())},interfaces_:function(){return[]},getClass:function(){return kw}});i(ss.prototype,{getResultGeometry:function(){return this.inputGeom.isEmpty()?this.inputGeom.copy():(this.linestringMap=new kf,this.inputGeom.apply(new ly(this)),this.lineSimplifier.simplify(this.linestringMap.values()),new bl(this.linestringMap).transform(this.inputGeom))},setDistanceTolerance:function(n){if(n<0)throw new ct("Tolerance must be non-negative");this.lineSimplifier.setDistanceTolerance(n)},interfaces_:function(){return[]},getClass:function(){return ss}});ss.simplify=function(n,t){var i=new ss(n);return i.setDistanceTolerance(t),i.getResultGeometry()};y(bl,ur);i(bl.prototype,{transformCoordinates:function(n,t){if(0===n.size())return null;if(t instanceof d){var i=this.linestringMap.get(t);return this.createCoordinateSequence(i.getResultCoordinates())}return ur.prototype.transformCoordinates.call(this,n,t)},interfaces_:function(){return[]},getClass:function(){return bl}});i(ly.prototype,{filter:function(n){var t,i,r;if(n instanceof d){if(t=n,t.isEmpty())return null;i=t.isClosed()?4:2;r=new ae(t,i);this.tps.linestringMap.put(t,r)}},interfaces_:function(){return[yu]},getClass:function(){return ly}});ss.LineStringTransformer=bl;ss.LineStringMapBuilderFilter=ly;ik=Object.freeze({DouglasPeuckerSimplifier:sh,TopologyPreservingSimplifier:ss});i(ch.prototype,{splitAt:function(){var n,t;if(1===arguments.length){if(n=arguments[0],t=this.minimumLen/this.segLen,n.distance(this.seg.p0)<this.minimumLen)return this.splitPt=this.seg.pointAlong(t),null;if(n.distance(this.seg.p1)<this.minimumLen)return this.splitPt=ch.pointAlongReverse(this.seg,t),null;this.splitPt=n}else if(2===arguments.length){var r=arguments[0],u=arguments[1],f=this.getConstrainedLength(r),i=f/this.segLen;this.splitPt=u.equals2D(this.seg.p0)?this.seg.pointAlong(i):ch.pointAlongReverse(this.seg,i)}},setMinimumLength:function(n){this.minimumLen=n},getConstrainedLength:function(n){return n<this.minimumLen?this.minimumLen:n},getSplitPoint:function(){return this.splitPt},interfaces_:function(){return[]},getClass:function(){return ch}});ch.pointAlongReverse=function(n,t){var i=new r;return i.x=n.p1.x-t*(n.p1.x-n.p0.x),i.y=n.p1.y-t*(n.p1.y-n.p0.y),i};i(dw.prototype,{findSplitPoint:function(){},interfaces_:function(){return[]},getClass:function(){return dw}});i(kl.prototype,{findSplitPoint:function(n,t){var u=n.getLineSegment(),o=u.getLength(),f=o/2,i=new ch(u),e=kl.projectedSplitPoint(n,t),s=2*e.distance(t)*.8,r=s;return r>f&&(r=f),i.setMinimumLength(r),i.splitAt(e),i.getSplitPoint()},interfaces_:function(){return[dw]},getClass:function(){return kl}});kl.projectedSplitPoint=function(n,t){return n.getLineSegment().project(t)};i(wt.prototype,{interfaces_:function(){return[]},getClass:function(){return wt}});wt.triArea=function(n,t,i){return(t.x-n.x)*(i.y-n.y)-(t.y-n.y)*(i.x-n.x)};wt.isInCircleDDNormalized=function(n,t,i,r){var u=f.valueOf(n.x).selfSubtract(r.x),e=f.valueOf(n.y).selfSubtract(r.y),o=f.valueOf(t.x).selfSubtract(r.x),s=f.valueOf(t.y).selfSubtract(r.y),h=f.valueOf(i.x).selfSubtract(r.x),c=f.valueOf(i.y).selfSubtract(r.y),l=u.multiply(s).selfSubtract(o.multiply(e)),a=o.multiply(c).selfSubtract(h.multiply(s)),v=h.multiply(e).selfSubtract(u.multiply(c)),y=u.multiply(u).selfAdd(e.multiply(e)),p=o.multiply(o).selfAdd(s.multiply(s)),w=h.multiply(h).selfAdd(c.multiply(c));return y.selfMultiply(a).selfAdd(p.selfMultiply(v)).selfAdd(w.selfMultiply(l)).doubleValue()>0};wt.checkRobustInCircle=function(n,t,i,r){var f=wt.isInCircleNonRobust(n,t,i,r),e=wt.isInCircleDDSlow(n,t,i,r),o=wt.isInCircleCC(n,t,i,r),u=vt.circumcentre(n,t,i);pt.out.println("p radius diff a = "+Math.abs(r.distance(u)-n.distance(u))/n.distance(u));f===e&&f===o||(pt.out.println("inCircle robustness failure (double result = "+f+", DD result = "+e+", CC result = "+o+")"),pt.out.println(pi.toLineString(new gr([n,t,i,r]))),pt.out.println("Circumcentre = "+pi.toPoint(u)+" radius = "+n.distance(u)),pt.out.println("p radius diff a = "+Math.abs(r.distance(u)/n.distance(u)-1)),pt.out.println("p radius diff b = "+Math.abs(r.distance(u)/t.distance(u)-1)),pt.out.println("p radius diff c = "+Math.abs(r.distance(u)/i.distance(u)-1)),pt.out.println())};wt.isInCircleDDFast=function(n,t,i,r){var u=f.sqr(n.x).selfAdd(f.sqr(n.y)).selfMultiply(wt.triAreaDDFast(t,i,r)),e=f.sqr(t.x).selfAdd(f.sqr(t.y)).selfMultiply(wt.triAreaDDFast(n,i,r)),o=f.sqr(i.x).selfAdd(f.sqr(i.y)).selfMultiply(wt.triAreaDDFast(n,t,r)),s=f.sqr(r.x).selfAdd(f.sqr(r.y)).selfMultiply(wt.triAreaDDFast(n,t,i));return u.selfSubtract(e).selfAdd(o).selfSubtract(s).doubleValue()>0};wt.isInCircleCC=function(n,t,i,r){var u=vt.circumcentre(n,t,i),f=n.distance(u);return r.distance(u)-f<=0};wt.isInCircleNormalized=function(n,t,i,r){var u=n.x-r.x,f=n.y-r.y,e=t.x-r.x,o=t.y-r.y,s=i.x-r.x,h=i.y-r.y;return(u*u+f*f)*(e*h-s*o)+(e*e+o*o)*(s*f-u*h)+(s*s+h*h)*(u*o-e*f)>0};wt.isInCircleDDSlow=function(n,t,i,r){var u=f.valueOf(r.x),e=f.valueOf(r.y),o=f.valueOf(n.x),s=f.valueOf(n.y),h=f.valueOf(t.x),c=f.valueOf(t.y),l=f.valueOf(i.x),a=f.valueOf(i.y),v=o.multiply(o).add(s.multiply(s)).multiply(wt.triAreaDDSlow(h,c,l,a,u,e)),y=h.multiply(h).add(c.multiply(c)).multiply(wt.triAreaDDSlow(o,s,l,a,u,e)),p=l.multiply(l).add(a.multiply(a)).multiply(wt.triAreaDDSlow(o,s,h,c,u,e)),w=u.multiply(u).add(e.multiply(e)).multiply(wt.triAreaDDSlow(o,s,h,c,l,a));return v.subtract(y).add(p).subtract(w).doubleValue()>0};wt.isInCircleNonRobust=function(n,t,i,r){return(n.x*n.x+n.y*n.y)*wt.triArea(t,i,r)-(t.x*t.x+t.y*t.y)*wt.triArea(n,i,r)+(i.x*i.x+i.y*i.y)*wt.triArea(n,t,r)-(r.x*r.x+r.y*r.y)*wt.triArea(n,t,i)>0};wt.isInCircleRobust=function(n,t,i,r){return wt.isInCircleNormalized(n,t,i,r)};wt.triAreaDDSlow=function(n,t,i,r,u,f){return i.subtract(n).multiply(f.subtract(t)).subtract(r.subtract(t).multiply(u.subtract(n)))};wt.triAreaDDFast=function(n,t,i){var r=f.valueOf(t.x).selfSubtract(n.x).selfMultiply(f.valueOf(i.y).selfSubtract(n.y)),u=f.valueOf(t.y).selfSubtract(n.y).selfMultiply(f.valueOf(i.x).selfSubtract(n.x));return r.selfSubtract(u)};i(et.prototype,{circleCenter:function(n,t){var r=new et(this.getX(),this.getY()),i=this.bisector(r,n),e=this.bisector(n,t),u=new hr(i,e),f=null;try{f=new et(u.getX(),u.getY())}catch(i){if(!(i instanceof vf))throw i;pt.err.println("a: "+r+"  b: "+n+"  c: "+t);pt.err.println(i)}return f},dot:function(n){return this.p.x*n.getX()+this.p.y*n.getY()},magn:function(){return Math.sqrt(this.p.x*this.p.x+this.p.y*this.p.y)},getZ:function(){return this.p.z},bisector:function(n,t){var i=t.getX()-n.getX(),r=t.getY()-n.getY();return new hr(new hr(n.getX()+i/2,n.getY()+r/2,1),new hr(n.getX()-r+i/2,n.getY()+i+r/2,1))},equals:function(){var n,t,i;return 1===arguments.length?(n=arguments[0],this.p.x===n.getX()&&this.p.y===n.getY()):2===arguments.length?(t=arguments[0],i=arguments[1],this.p.distance(t.getCoordinate())<i):void 0},getCoordinate:function(){return this.p},isInCircle:function(n,t,i){return wt.isInCircleRobust(n.p,t.p,i.p,this.p)},interpolateZValue:function(n,t,i){var r=n.getX(),u=n.getY(),f=t.getX()-r,e=i.getX()-r,o=t.getY()-u,s=i.getY()-u,h=f*s-e*o,c=this.getX()-r,l=this.getY()-u,a=(s*c-e*l)/h,v=(-o*c+f*l)/h;return n.getZ()+a*(t.getZ()-n.getZ())+v*(i.getZ()-n.getZ())},midPoint:function(n){return new et((this.p.x+n.getX())/2,(this.p.y+n.getY())/2,(this.p.z+n.getZ())/2)},rightOf:function(n){return this.isCCW(n.dest(),n.orig())},isCCW:function(n,t){return(n.p.x-this.p.x)*(t.p.y-this.p.y)-(n.p.y-this.p.y)*(t.p.x-this.p.x)>0},getX:function(){return this.p.x},crossProduct:function(n){return this.p.x*n.getY()-this.p.y*n.getX()},setZ:function(n){this.p.z=n},times:function(n){return new et(n*this.p.x,n*this.p.y)},cross:function(){return new et(this.p.y,-this.p.x)},leftOf:function(n){return this.isCCW(n.orig(),n.dest())},toString:function(){return"POINT ("+this.p.x+" "+this.p.y+")"},sub:function(n){return new et(this.p.x-n.getX(),this.p.y-n.getY())},getY:function(){return this.p.y},classify:function(n,t){var u=this,i=t.sub(n),r=u.sub(n),f=i.crossProduct(r);return f>0?et.LEFT:f<0?et.RIGHT:i.getX()*r.getX()<0||i.getY()*r.getY()<0?et.BEHIND:i.magn()<r.magn()?et.BEYOND:n.equals(u)?et.ORIGIN:t.equals(u)?et.DESTINATION:et.BETWEEN},sum:function(n){return new et(this.p.x+n.getX(),this.p.y+n.getY())},distance:function(n,t){return Math.sqrt(Math.pow(t.getX()-n.getX(),2)+Math.pow(t.getY()-n.getY(),2))},circumRadiusRatio:function(n,t){var u=this.circleCenter(n,t),f=this.distance(u,n),i=this.distance(this,n),r=this.distance(n,t);return r<i&&(i=r),r=this.distance(t,this),r<i&&(i=r),f/i},interfaces_:function(){return[]},getClass:function(){return et}});et.interpolateZ=function(){if(3===arguments.length){var p=arguments[0],t=arguments[1],e=arguments[2],w=t.distance(e),b=p.distance(t),k=e.z-t.z;return t.z+k*(b/w)}if(4===arguments.length){var o=arguments[0],n=arguments[1],i=arguments[2],r=arguments[3],u=n.x,f=n.y,s=i.x-u,h=r.x-u,c=i.y-f,l=r.y-f,a=s*l-h*c,v=o.x-u,y=o.y-f,d=(l*v-h*y)/a,g=(-c*v+s*y)/a;return n.z+d*(i.z-n.z)+g*(r.z-n.z)}};et.LEFT=0;et.RIGHT=1;et.BEYOND=2;et.BEHIND=3;et.BETWEEN=4;et.ORIGIN=5;et.DESTINATION=6;y(ho,et);i(ho.prototype,{getConstraint:function(){return this.constraint},setOnConstraint:function(n){this._isOnConstraint=n},merge:function(n){n._isOnConstraint&&(this._isOnConstraint=!0,this.constraint=n.constraint)},isOnConstraint:function(){return this._isOnConstraint},setConstraint:function(n){this._isOnConstraint=!0;this.constraint=n},interfaces_:function(){return[]},getClass:function(){return ho}});i(dt.prototype,{equalsNonOriented:function(n){return!!this.equalsOriented(n)||!!this.equalsOriented(n.sym())},toLineSegment:function(){return new b(this.vertex.getCoordinate(),this.dest().getCoordinate())},dest:function(){return this.sym().orig()},oNext:function(){return this.next},equalsOriented:function(n){return!(!this.orig().getCoordinate().equals2D(n.orig().getCoordinate())||!this.dest().getCoordinate().equals2D(n.dest().getCoordinate()))},dNext:function(){return this.sym().oNext().sym()},lPrev:function(){return this.next.sym()},rPrev:function(){return this.sym().oNext()},rot:function(){return this._rot},oPrev:function(){return this._rot.next._rot},sym:function(){return this._rot._rot},setOrig:function(n){this.vertex=n},lNext:function(){return this.invRot().oNext().rot()},getLength:function(){return this.orig().getCoordinate().distance(this.dest().getCoordinate())},invRot:function(){return this._rot.sym()},setDest:function(n){this.sym().setOrig(n)},setData:function(n){this.data=n},getData:function(){return this.data},"delete":function(){this._rot=null},orig:function(){return this.vertex},rNext:function(){return this._rot.next.invRot()},toString:function(){var n=this.vertex.getCoordinate(),t=this.dest().getCoordinate();return pi.toLineString(n,t)},isLive:function(){return null!==this._rot},getPrimary:function(){return this.orig().getCoordinate().compareTo(this.dest().getCoordinate())<=0?this:this.sym()},dPrev:function(){return this.invRot().oNext().invRot()},setNext:function(n){this.next=n},interfaces_:function(){return[]},getClass:function(){return dt}});dt.makeEdge=function(n,t){var i=new dt,r=new dt,u=new dt,f=new dt,e;return i._rot=r,r._rot=u,u._rot=f,f._rot=i,i.setNext(i),r.setNext(f),u.setNext(u),f.setNext(r),e=i,e.setOrig(n),e.setDest(t),e};dt.swap=function(n){var t=n.oPrev(),i=n.sym().oPrev();dt.splice(n,t);dt.splice(n.sym(),i);dt.splice(n,t.lNext());dt.splice(n.sym(),i.lNext());n.setOrig(t.dest());n.setDest(i.dest())};dt.splice=function(n,t){var i=n.oNext().rot(),r=t.oNext().rot(),u=t.oNext(),f=n.oNext(),e=r.oNext(),o=i.oNext();n.setNext(u);t.setNext(f);i.setNext(e);r.setNext(o)};dt.connect=function(n,t){var i=dt.makeEdge(n.dest(),t.orig());return dt.splice(i,n.lNext()),dt.splice(i.sym(),t),i};i(dl.prototype,{insertSite:function(n){var t=this.subdiv.locate(n),i,r,u;if(this.subdiv.isVertexOfEdge(t,n))return t;this.subdiv.isOnEdge(t,n.getCoordinate())&&(t=t.oPrev(),this.subdiv.delete(t.oNext()));i=this.subdiv.makeEdge(t.orig(),n);dt.splice(i,t);r=i;do i=this.subdiv.connect(t,i.sym()),t=i.oPrev();while(t.lNext()!==r);for(;;)if(u=t.oPrev(),u.dest().rightOf(t)&&n.isInCircle(t.orig(),u.dest(),t.dest()))dt.swap(t),t=t.oPrev();else{if(t.oNext()===r)return i;t=t.oNext().lPrev()}},insertSites:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),this.insertSite(i)},interfaces_:function(){return[]},getClass:function(){return dl}});i(gw.prototype,{locate:function(){},interfaces_:function(){return[]},getClass:function(){return gw}});i(ay.prototype,{init:function(){this.lastEdge=this.findEdge()},locate:function(n){this.lastEdge.isLive()||this.init();var t=this.subdiv.locateFromEdge(n,this.lastEdge);return this.lastEdge=t,t},findEdge:function(){return this.subdiv.getEdges().iterator().next()},interfaces_:function(){return[gw]},getClass:function(){return ay}});y(lh,ci);i(lh.prototype,{getSegment:function(){return this.seg},interfaces_:function(){return[]},getClass:function(){return lh}});lh.msgWithSpatial=function(n,t){return null!==t?n+" [ "+t+" ]":n};i(ah.prototype,{visit:function(){},interfaces_:function(){return[]},getClass:function(){return ah}});i(fu.prototype,{getTriangleVertices:function(n){var t=new py;return this.visitTriangles(t,n),t.getTriangleVertices()},isFrameVertex:function(n){return!!n.equals(this.frameVertex[0])||!!n.equals(this.frameVertex[1])||!!n.equals(this.frameVertex[2])},isVertexOfEdge:function(n,t){return!(!t.equals(n.orig(),this.tolerance)&&!t.equals(n.dest(),this.tolerance))},connect:function(n,t){var i=dt.connect(n,t);return this.quadEdges.add(i),i},getVoronoiCellPolygon:function(n,t){var r=new u,f=n,e,i;do e=n.rot().orig().getCoordinate(),r.add(e),n=n.oPrev();while(n!==f);i=new ii;i.addAll(r,!1);i.closeRing();i.size()<4&&(pt.out.println(i),i.add(i.get(i.size()-1),!0));var s=i.toCoordinateArray(),o=t.createPolygon(t.createLinearRing(s),null),h=f.orig();return o.setUserData(h.getCoordinate()),o},setLocator:function(n){this.locator=n},initSubdiv:function(){var n=this.makeEdge(this.frameVertex[0],this.frameVertex[1]),i=this.makeEdge(this.frameVertex[1],this.frameVertex[2]),t;return dt.splice(n.sym(),i),t=this.makeEdge(this.frameVertex[2],this.frameVertex[0]),dt.splice(i.sym(),t),dt.splice(t.sym(),n),n},isFrameBorderEdge:function(n){var u=new Array(3).fill(null),t,i,r;return(fu.getTriangleEdges(n,u),t=new Array(3).fill(null),fu.getTriangleEdges(n.sym(),t),i=n.lNext().dest(),this.isFrameVertex(i))?!0:(r=n.sym().lNext().dest(),!!this.isFrameVertex(r))},makeEdge:function(n,t){var i=dt.makeEdge(n,t);return this.quadEdges.add(i),i},visitTriangles:function(n,t){var i,r,u,f;for(this.visitedKey++,i=new gi,i.push(this.startingEdge),r=new li;!i.empty();)u=i.pop(),r.contains(u)||(f=this.fetchTriangleToVisit(u,i,t,r),null!==f&&n.visit(f))},isFrameEdge:function(n){return!(!this.isFrameVertex(n.orig())&&!this.isFrameVertex(n.dest()))},isOnEdge:function(n,t){return this.seg.setCoordinates(n.orig().getCoordinate(),n.dest().getCoordinate()),this.seg.distance(t)<this.edgeCoincidenceTolerance},getEnvelope:function(){return new p(this.frameEnv)},createFrame:function(n){var i=n.getWidth(),r=n.getHeight(),t=0;t=i>r?10*i:10*r;this.frameVertex[0]=new et((n.getMaxX()+n.getMinX())/2,n.getMaxY()+t);this.frameVertex[1]=new et(n.getMinX()-t,n.getMinY()-t);this.frameVertex[2]=new et(n.getMaxX()+t,n.getMinY()-t);this.frameEnv=new p(this.frameVertex[0].getCoordinate(),this.frameVertex[1].getCoordinate());this.frameEnv.expandToInclude(this.frameVertex[2].getCoordinate())},getTriangleCoordinates:function(n){var t=new wy;return this.visitTriangles(t,n),t.getTriangles()},getVertices:function(n){for(var r,u,f,t=new li,i=this.quadEdges.iterator();i.hasNext();)r=i.next(),u=r.orig(),!n&&this.isFrameVertex(u)||t.add(u),f=r.dest(),!n&&this.isFrameVertex(f)||t.add(f);return t},fetchTriangleToVisit:function(n,t,i,r){var u=n,e=0,o=!1,f;do this.triEdges[e]=u,this.isFrameEdge(u)&&(o=!0),f=u.sym(),r.contains(f)||t.push(f),r.add(u),e++,u=u.lNext();while(u!==n);return o&&!i?null:this.triEdges},getEdges:function(){var n;if(0===arguments.length)return this.quadEdges;if(1===arguments.length){for(var t=arguments[0],i=this.getPrimaryEdges(!1),r=new Array(i.size()).fill(null),f=0,u=i.iterator();u.hasNext();)n=u.next(),r[f++]=t.createLineString([n.orig().getCoordinate(),n.dest().getCoordinate()]);return t.createMultiLineString(r)}},getVertexUniqueEdges:function(n){for(var i,r,o,f,e=new u,t=new li,s=this.quadEdges.iterator();s.hasNext();)i=s.next(),r=i.orig(),t.contains(r)||(t.add(r),!n&&this.isFrameVertex(r)||e.add(i)),o=i.sym(),f=o.orig(),t.contains(f)||(t.add(f),!n&&this.isFrameVertex(f)||e.add(o));return e},getTriangleEdges:function(n){var t=new yy;return this.visitTriangles(t,n),t.getTriangleEdges()},getPrimaryEdges:function(n){var f,i,r,t,e;for(this.visitedKey++,f=new u,i=new gi,i.push(this.startingEdge),r=new li;!i.empty();)t=i.pop(),r.contains(t)||(e=t.getPrimary(),!n&&this.isFrameEdge(e)||f.add(e),i.push(t.oNext()),i.push(t.sym().oNext()),r.add(t),r.add(t.sym()));return f},"delete":function(n){dt.splice(n,n.oPrev());dt.splice(n.sym(),n.sym().oPrev());var t=n.sym(),i=n.rot(),r=n.rot().sym();this.quadEdges.remove(n);this.quadEdges.remove(t);this.quadEdges.remove(i);this.quadEdges.remove(r);n.delete();t.delete();i.delete();r.delete()},locateFromEdge:function(n,t){for(var r=0,u=this.quadEdges.size(),i=t;;){if(++r>u)throw new lh(i.toLineSegment());if(n.equals(i.orig())||n.equals(i.dest()))break;if(n.rightOf(i))i=i.sym();else if(n.rightOf(i.oNext())){if(n.rightOf(i.dPrev()))break;i=i.dPrev()}else i=i.oNext()}return i},getTolerance:function(){return this.tolerance},getVoronoiCellPolygons:function(n){var r;this.visitTriangles(new vy,!0);for(var t=new u,f=this.getVertexUniqueEdges(!1),i=f.iterator();i.hasNext();)r=i.next(),t.add(this.getVoronoiCellPolygon(r,n));return t},getVoronoiDiagram:function(n){var t=this.getVoronoiCellPolygons(n);return n.createGeometryCollection(g.toGeometryArray(t))},getTriangles:function(n){for(var u,t=this.getTriangleCoordinates(!1),i=new Array(t.size()).fill(null),f=0,r=t.iterator();r.hasNext();)u=r.next(),i[f++]=n.createPolygon(n.createLinearRing(u),null);return n.createGeometryCollection(i)},insertSite:function(n){var t=this.locate(n),i,r;if(n.equals(t.orig(),this.tolerance)||n.equals(t.dest(),this.tolerance))return t;i=this.makeEdge(t.orig(),n);dt.splice(i,t);r=i;do i=this.connect(t,i.sym()),t=i.oPrev();while(t.lNext()!==r);return r},locate:function(){var u,f,i,n;if(1===arguments.length){if(arguments[0]instanceof et)return u=arguments[0],this.locator.locate(u);if(arguments[0]instanceof r)return f=arguments[0],this.locator.locate(new et(f))}else if(2===arguments.length){var e=arguments[0],o=arguments[1],t=this.locator.locate(new et(e));if(null===t)return null;i=t;t.dest().getCoordinate().equals2D(e)&&(i=t.sym());n=i;do{if(n.dest().getCoordinate().equals2D(o))return n;n=n.oNext()}while(n!==i);return null}},interfaces_:function(){return[]},getClass:function(){return fu}});fu.getTriangleEdges=function(n,t){if(t[0]=n,t[1]=t[0].lNext(),t[2]=t[1].lNext(),t[2].lNext()!==t[0])throw new ct("Edges do not form a triangle");};i(vy.prototype,{visit:function(n){for(var i=n[0].orig().getCoordinate(),r=n[1].orig().getCoordinate(),u=n[2].orig().getCoordinate(),f=vt.circumcentre(i,r,u),e=new et(f),t=0;t<3;t++)n[t].rot().setOrig(e)},interfaces_:function(){return[ah]},getClass:function(){return vy}});i(yy.prototype,{getTriangleEdges:function(){return this.triList},visit:function(n){this.triList.add(n.clone())},interfaces_:function(){return[ah]},getClass:function(){return yy}});i(py.prototype,{visit:function(n){this.triList.add([n[0].orig(),n[1].orig(),n[2].orig()])},getTriangleVertices:function(){return this.triList},interfaces_:function(){return[ah]},getClass:function(){return py}});i(wy.prototype,{checkTriangleSize:function(n){n.length>=2?pi.toLineString(n[0],n[1]):n.length>=1&&pi.toPoint(n[0])},visit:function(n){var t,r,i;for(this.coordList.clear(),t=0;t<3;t++)r=n[t].orig(),this.coordList.add(r.getCoordinate());if(this.coordList.size()>0){if(this.coordList.closeRing(),i=this.coordList.toCoordinateArray(),4!==i.length)return null;this.triCoords.add(i)}},getTriangles:function(){return this.triCoords},interfaces_:function(){return[ah]},getClass:function(){return wy}});fu.TriangleCircumcentreVisitor=vy;fu.TriangleEdgesListVisitor=yy;fu.TriangleVertexListVisitor=py;fu.TriangleCoordinatesVisitor=wy;fu.EDGE_COINCIDENCE_TOL_FACTOR=1e3;i(hs.prototype,{getLineSegment:function(){return this.ls},getEndZ:function(){return this.ls.getCoordinate(1).z},getStartZ:function(){return this.ls.getCoordinate(0).z},intersection:function(n){return this.ls.intersection(n.getLineSegment())},getStart:function(){return this.ls.getCoordinate(0)},getEnd:function(){return this.ls.getCoordinate(1)},getEndY:function(){return this.ls.getCoordinate(1).y},getStartX:function(){return this.ls.getCoordinate(0).x},equalsTopo:function(n){return this.ls.equalsTopo(n.getLineSegment())},getStartY:function(){return this.ls.getCoordinate(0).y},setData:function(n){this.data=n},getData:function(){return this.data},getEndX:function(){return this.ls.getCoordinate(1).x},toString:function(){return this.ls.toString()},interfaces_:function(){return[]},getClass:function(){return hs}});i(gl.prototype,{visit:function(){},interfaces_:function(){return[]},getClass:function(){return gl}});i(by.prototype,{isRepeated:function(){return this.count>1},getRight:function(){return this.right},getCoordinate:function(){return this.p},setLeft:function(n){this.left=n},getX:function(){return this.p.x},getData:function(){return this.data},getCount:function(){return this.count},getLeft:function(){return this.left},getY:function(){return this.p.y},increment:function(){this.count=this.count+1},setRight:function(n){this.right=n},interfaces_:function(){return[]},getClass:function(){return by}});i(cs.prototype,{insert:function(){var r,n,i,t;return 1===arguments.length?(r=arguments[0],this.insert(r,null)):2===arguments.length?(n=arguments[0],i=arguments[1],null===this.root)?(this.root=new by(n,i),this.root):this.tolerance>0&&(t=this.findBestMatchNode(n),null!==t)?(t.increment(),t):this.insertExact(n,i):void 0},query:function(){var t=arguments,i=this,r,n,f,e;if(1===arguments.length)return r=arguments[0],n=new u,this.query(r,n),n;2===arguments.length&&(arguments[0]instanceof p&&l(arguments[1],ei)?!function(){var n=t[0],r=t[1];i.queryNode(i.root,n,!0,{interfaces_:function(){return[gl]},visit:function(n){r.add(n)}})}():arguments[0]instanceof p&&l(arguments[1],gl)&&(f=arguments[0],e=arguments[1],this.queryNode(this.root,f,!0,e)))},queryNode:function(n,t,i,r){var o,s;if(null===n)return null;var f=null,e=null,u=null;i?(f=t.getMinX(),e=t.getMaxX(),u=n.getX()):(f=t.getMinY(),e=t.getMaxY(),u=n.getY());o=f<u;s=u<=e;o&&this.queryNode(n.getLeft(),t,!i,r);t.contains(n.getCoordinate())&&r.visit(n);s&&this.queryNode(n.getRight(),t,!i,r)},findBestMatchNode:function(n){var t=new ky(n,this.tolerance);return this.query(t.queryEnvelope(),t),t.getNode()},isEmpty:function(){return null===this.root},insertExact:function(n,t){for(var r,i=this.root,u=this.root,f=!0,e=!0;null!==i;){if(null!==i&&n.distance(i.getCoordinate())<=this.tolerance)return i.increment(),i;e=f?n.x<i.getX():n.y<i.getY();u=i;i=e?i.getLeft():i.getRight();f=!f}return this.numberOfNodes=this.numberOfNodes+1,r=new by(n,t),e?u.setLeft(r):u.setRight(r),r},interfaces_:function(){return[]},getClass:function(){return cs}});cs.toCoordinates=function(){var n;if(1===arguments.length)return n=arguments[0],cs.toCoordinates(n,!1);if(2===arguments.length){for(var f=arguments[0],e=arguments[1],t=new ii,i=f.iterator();i.hasNext();)for(var r=i.next(),o=e?r.getCount():1,u=0;u<o;u++)t.add(r.getCoordinate(),!0);return t.toCoordinateArray()}};i(ky.prototype,{visit:function(n){var t=this.p.distance(n.getCoordinate()),i;if(!(t<=this.tolerance))return null;i=!1;(null===this.matchNode||t<this.matchDist||null!==this.matchNode&&t===this.matchDist&&n.getCoordinate().compareTo(this.matchNode.getCoordinate())<1)&&(i=!0);i&&(this.matchNode=n,this.matchDist=t)},queryEnvelope:function(){var n=new p(this.p);return n.expandBy(this.tolerance),n},getNode:function(){return this.matchNode},interfaces_:function(){return[gl]},getClass:function(){return ky}});cs.BestMatchVisitor=ky;i(co.prototype,{getInitialVertices:function(){return this.initialVertices},getKDT:function(){return this.kdt},enforceConstraints:function(){this.addConstraintVertices();var n=0,t=0;do t=this.enforceGabriel(this.segments),n++;while(t>0&&n<co.MAX_SPLIT_ITER)},insertSites:function(n){for(var i,t=n.iterator();t.hasNext();)i=t.next(),this.insertSite(i)},getVertexFactory:function(){return this.vertexFactory},getPointArray:function(){for(var i,n,t=new Array(this.initialVertices.size()+this.segVertices.size()).fill(null),r=0,u=this.initialVertices.iterator();u.hasNext();)n=u.next(),t[r++]=n.getCoordinate();for(i=this.segVertices.iterator();i.hasNext();)n=i.next(),t[r++]=n.getCoordinate();return t},setConstraints:function(n,t){this.segments=n;this.segVertices=t},computeConvexHull:function(){var n=new g,t=this.getPointArray(),i=new gf(t,n);this.convexHull=i.getConvexHull()},addConstraintVertices:function(){this.computeConvexHull();this.insertSites(this.segVertices)},findNonGabrielPoint:function(n){var i=n.getStart(),u=n.getEnd(),f=new r((i.x+u.x)/2,(i.y+u.y)/2),h=i.distance(f),c=new p(f),y,t,o,s;c.expandBy(h);for(var w=this.kdt.query(c),e=null,l=v.MAX_VALUE,a=w.iterator();a.hasNext();)y=a.next(),t=y.getCoordinate(),t.equals2D(i)||t.equals2D(u)||(o=f.distance(t),o<h&&(s=o,(null===e||s<l)&&(e=t,l=s)));return e},getConstraintSegments:function(){return this.segments},setSplitPointFinder:function(n){this.splitFinder=n},getConvexHull:function(){return this.convexHull},getTolerance:function(){return this.tolerance},enforceGabriel:function(n){for(var t,f,r=new u,e=0,o=new u,s=n.iterator();s.hasNext();)if(t=s.next(),f=this.findNonGabrielPoint(t),null!==f){this.splitPt=this.splitFinder.findSplitPoint(t,f);var i=this.createVertex(this.splitPt,t),h=(this.insertSite(i),new hs(t.getStartX(),t.getStartY(),t.getStartZ(),i.getX(),i.getY(),i.getZ(),t.getData())),c=new hs(i.getX(),i.getY(),i.getZ(),t.getEndX(),t.getEndY(),t.getEndZ(),t.getData());r.add(h);r.add(c);o.add(t);e+=1}return n.removeAll(o),n.addAll(r),e},createVertex:function(){var t,n;if(1===arguments.length)return t=arguments[0],n=null,null!==this.vertexFactory?this.vertexFactory.createVertex(t,null):new ho(t);if(2===arguments.length){var i=arguments[0],r=arguments[1],n=null;return n=null!==this.vertexFactory?this.vertexFactory.createVertex(i,r):new ho(i),n.setOnConstraint(!0),n}},getSubdivision:function(){return this.subdiv},computeBoundingBox:function(){var t=co.computeVertexEnvelope(this.initialVertices),i=co.computeVertexEnvelope(this.segVertices),n=new p(t);n.expandToInclude(i);var r=.2*n.getWidth(),u=.2*n.getHeight(),f=Math.max(r,u);this.computeAreaEnv=new p(n);this.computeAreaEnv.expandBy(f)},setVertexFactory:function(n){this.vertexFactory=n},formInitialDelaunay:function(){this.computeBoundingBox();this.subdiv=new fu(this.computeAreaEnv,this.tolerance);this.subdiv.setLocator(new ay(this.subdiv));this.incDel=new dl(this.subdiv);this.insertSites(this.initialVertices)},insertSite:function(){var n,t,i,u;if(arguments[0]instanceof ho)return(n=arguments[0],t=this.kdt.insert(n.getCoordinate(),n),t.isRepeated())?(i=t.getData(),i.merge(n),i):(this.incDel.insertSite(n),n);arguments[0]instanceof r&&(u=arguments[0],this.insertSite(this.createVertex(u)))},interfaces_:function(){return[]},getClass:function(){return co}});co.computeVertexEnvelope=function(n){for(var r,t=new p,i=n.iterator();i.hasNext();)r=i.next(),t.expandToInclude(r.getCoordinate());return t};co.MAX_SPLIT_ITER=99;i(ki.prototype,{create:function(){if(null!==this.subdiv)return null;var n=ki.envelope(this.siteCoords),t=ki.toVertices(this.siteCoords);this.subdiv=new fu(n,this.tolerance);new dl(this.subdiv).insertSites(t)},setTolerance:function(n){this.tolerance=n},setSites:function(){var n,t;arguments[0]instanceof h?(n=arguments[0],this.siteCoords=ki.extractUniqueCoordinates(n)):l(arguments[0],yt)&&(t=arguments[0],this.siteCoords=ki.unique(w.toCoordinateArray(t)))},getEdges:function(n){return this.create(),this.subdiv.getEdges(n)},getSubdivision:function(){return this.create(),this.subdiv},getTriangles:function(n){return this.create(),this.subdiv.getTriangles(n)},interfaces_:function(){return[]},getClass:function(){return ki}});ki.extractUniqueCoordinates=function(n){if(null===n)return new ii;var t=n.getCoordinates();return ki.unique(t)};ki.envelope=function(n){for(var r,t=new p,i=n.iterator();i.hasNext();)r=i.next(),t.expandToInclude(r);return t};ki.unique=function(n){var t=w.copyDeep(n);return pf.sort(t),new ii(t,!1)};ki.toVertices=function(n){for(var r,t=new u,i=n.iterator();i.hasNext();)r=i.next(),t.add(new et(r));return t};i(vh.prototype,{createSiteVertices:function(n){for(var r,t=new u,i=n.iterator();i.hasNext();)r=i.next(),this.constraintVertexMap.containsKey(r)||t.add(new ho(r));return t},create:function(){var i,t,r,n;if(null!==this.subdiv)return null;i=ki.envelope(this.siteCoords);t=new u;null!==this.constraintLines&&(i.expandToInclude(this.constraintLines.getEnvelopeInternal()),this.createVertices(this.constraintLines),t=vh.createConstraintSegments(this.constraintLines));r=this.createSiteVertices(this.siteCoords);n=new co(r,this.tolerance);n.setConstraints(t,new u(this.constraintVertexMap.values()));n.formInitialDelaunay();n.enforceConstraints();this.subdiv=n.getSubdivision()},setTolerance:function(n){this.tolerance=n},setConstraints:function(n){this.constraintLines=n},setSites:function(n){this.siteCoords=ki.extractUniqueCoordinates(n)},getEdges:function(n){return this.create(),this.subdiv.getEdges(n)},getSubdivision:function(){return this.create(),this.subdiv},getTriangles:function(n){return this.create(),this.subdiv.getTriangles(n)},createVertices:function(n){for(var r,i=n.getCoordinates(),t=0;t<i.length;t++)r=new ho(i[t]),this.constraintVertexMap.put(i[t],r)},interfaces_:function(){return[]},getClass:function(){return vh}});vh.createConstraintSegments=function(){var r;if(1===arguments.length){for(var f=arguments[0],e=wi.getLines(f),i=new u,n=e.iterator();n.hasNext();)r=n.next(),vh.createConstraintSegments(r,i);return i}if(2===arguments.length)for(var o=arguments[0],s=arguments[1],t=o.getCoordinates(),n=1;n<t.length;n++)s.add(new hs(t[n-1],t[n]))};i(na.prototype,{create:function(){var n,t,i;if(null!==this.subdiv)return null;n=ki.envelope(this.siteCoords);this.diagramEnv=n;t=Math.max(this.diagramEnv.getWidth(),this.diagramEnv.getHeight());this.diagramEnv.expandBy(t);null!==this.clipEnv&&this.diagramEnv.expandToInclude(this.clipEnv);i=ki.toVertices(this.siteCoords);this.subdiv=new fu(n,this.tolerance);new dl(this.subdiv).insertSites(i)},getDiagram:function(n){this.create();var t=this.subdiv.getVoronoiDiagram(n);return na.clipGeometryCollection(t,this.diagramEnv)},setTolerance:function(n){this.tolerance=n},setSites:function(){var n,t;arguments[0]instanceof h?(n=arguments[0],this.siteCoords=ki.extractUniqueCoordinates(n)):l(arguments[0],yt)&&(t=arguments[0],this.siteCoords=ki.unique(w.toCoordinateArray(t)))},setClipEnvelope:function(n){this.clipEnv=n},getSubdivision:function(){return this.create(),this.subdiv},interfaces_:function(){return[]},getClass:function(){return na}});na.clipGeometryCollection=function(n,t){for(var r,i,o=n.getFactory().toGeometry(t),e=new u,f=0;f<n.getNumGeometries();f++)r=n.getGeometryN(f),i=null,t.contains(r.getEnvelopeInternal())?i=r:t.intersects(r.getEnvelopeInternal())&&(i=o.intersection(r),i.setUserData(r.getUserData())),null===i||i.isEmpty()||e.add(i);return n.getFactory().createGeometryCollection(g.toGeometryArray(e))};rk=Object.freeze({Vertex:et});uk=Object.freeze({ConformingDelaunayTriangulationBuilder:vh,DelaunayTriangulationBuilder:ki,VoronoiDiagramBuilder:na,quadedge:rk});i(dy.prototype,{interfaces_:function(){return[]},getClass:function(){return dy}});dy.union=function(n,t){if(n.isEmpty()||t.isEmpty()){if(n.isEmpty()&&t.isEmpty())return a.createEmptyResult(a.UNION,n,t,n.getFactory());if(n.isEmpty())return t.copy();if(t.isEmpty())return n.copy()}return n.checkNotGeometryCollection(n),n.checkNotGeometryCollection(t),hi.overlayOp(n,t,a.UNION)};i(h.prototype,{equalsTopo:function(n){return!!this.getEnvelopeInternal().equals(n.getEnvelopeInternal())&&ut.relate(this,n).isEquals(this.getDimension(),n.getDimension())},union:function(){if(0===arguments.length)return so.union(this);if(1===arguments.length){var n=arguments[0];return dy.union(this,n)}},isValid:function(){return ru.isValid(this)},intersection:function(n){if(this.isEmpty()||n.isEmpty())return a.createEmptyResult(a.INTERSECTION,this,n,this.factory);if(this.isGeometryCollection()){var t=n;return ks.map(this,{interfaces_:function(){return[MapOp]},map:function(n){return n.intersection(t)}})}return this.checkNotGeometryCollection(this),this.checkNotGeometryCollection(n),hi.overlayOp(this,n,a.INTERSECTION)},covers:function(n){return ut.covers(this,n)},coveredBy:function(n){return ut.coveredBy(this,n)},touches:function(n){return ut.touches(this,n)},intersects:function(n){return ut.intersects(this,n)},within:function(n){return ut.within(this,n)},overlaps:function(n){return ut.overlaps(this,n)},disjoint:function(n){return ut.disjoint(this,n)},crosses:function(n){return ut.crosses(this,n)},buffer:function(){var n,t,i;if(1===arguments.length)return n=arguments[0],yi.bufferOp(this,n);if(2===arguments.length)return t=arguments[0],i=arguments[1],yi.bufferOp(this,t,i);if(3===arguments.length){var r=arguments[0],u=arguments[1],f=arguments[2];return yi.bufferOp(this,r,u,f)}},convexHull:function(){return new gf(this).getConvexHull()},relate:function(){for(var t=arguments.length,i=Array(t),n=0;n<t;n++)i[n]=arguments[n];return ut.relate.apply(ut,[this].concat(i))},getCentroid:function(){if(this.isEmpty())return this.factory.createPoint();var n=df.getCentroid(this);return this.createPointFromInternalCoord(n,this)},getInteriorPoint:function(){var t,i,n;return this.isEmpty()?this.factory.createPoint():(t=null,i=this.getDimension(),0===i?(n=new lv(this),t=n.getInteriorPoint()):1===i?(n=new cv(this),t=n.getInteriorPoint()):(n=new bu(this),t=n.getInteriorPoint()),this.createPointFromInternalCoord(t,this))},symDifference:function(n){if(this.isEmpty()||n.isEmpty()){if(this.isEmpty()&&n.isEmpty())return a.createEmptyResult(a.SYMDIFFERENCE,this,n,this.factory);if(this.isEmpty())return n.copy();if(n.isEmpty())return this.copy()}return this.checkNotGeometryCollection(this),this.checkNotGeometryCollection(n),hi.overlayOp(this,n,a.SYMDIFFERENCE)},createPointFromInternalCoord:function(n,t){return t.getPrecisionModel().makePrecise(n),t.getFactory().createPoint(n)},toText:function(){return(new pi).write(this)},toString:function(){this.toText()},contains:function(n){return ut.contains(this,n)},difference:function(n){return this.isEmpty()?a.createEmptyResult(a.DIFFERENCE,this,n,this.factory):n.isEmpty()?this.copy():(this.checkNotGeometryCollection(this),this.checkNotGeometryCollection(n),hi.overlayOp(this,n,a.DIFFERENCE))},isSimple:function(){return new dc(this).isSimple()},isWithinDistance:function(n,t){return!(this.getEnvelopeInternal().distance(n.getEnvelopeInternal())>t)&&ku.isWithinDistance(this,n,t)},distance:function(n){return ku.distance(this,n)},isEquivalentClass:function(n){return this.getClass()===n.getClass()}});n.version="1.3.0 (6e65adb)";n.algorithm=cb;n.densify=lb;n.dissolve=ab;n.geom=hb;n.geomgraph=vb;n.index=cd;n.io=yb;n.noding=pb;n.operation=yd;n.precision=tk;n.simplify=ik;n.triangulate=uk;Object.defineProperty(n,"__esModule",{value:!0})})},function(n,t,i){n.exports=i(8)},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}var u,f;i(9);var e=i(10),o=i(11),s=r(o),h=i(12),c=r(h),l=i(0),a=r(l);i(14);i(15);i(16);i(17);i(18);i(19);u=i(1);f=r(u);i(28);i(29);i(30);i(31);i(32);i(33);i(34);i(35);L.PM=L.PM||{Map:s.default,Toolbar:c.default,Draw:a.default,Edit:f.default,version:e.version,initialize:function(){this.addInitHooks()},addInitHooks:function(){function n(){this.options.pmIgnore||(this.pm=new L.PM.Map(this))}function t(){this.pm=new L.PM.Edit.LayerGroup(this)}function i(){this.options.pmIgnore||(this.pm=new L.PM.Edit.Marker(this))}function r(){this.options.pmIgnore||(this.pm=new L.PM.Edit.Line(this))}function u(){this.options.pmIgnore||(this.pm=new L.PM.Edit.Poly(this))}function f(){this.options.pmIgnore||(this.pm=new L.PM.Edit.Rectangle(this))}function e(){this.options.pmIgnore||(this.pm=new L.PM.Edit.Circle(this))}L.Map.addInitHook(n);L.LayerGroup.addInitHook(t);L.Marker.addInitHook(i);L.Polyline.addInitHook(r);L.Polygon.addInitHook(u);L.Rectangle.addInitHook(f);L.Circle.addInitHook(e)}};L.PM.initialize()},function(){"use strict";Array.prototype.findIndex=Array.prototype.findIndex||function(n){if(null===this)throw new TypeError("Array.prototype.findIndex called on null or undefined");if("function"!=typeof n)throw new TypeError("callback must be a function");for(var i=Object(this),r=i.length>>>0,u=arguments[1],t=0;t<r;t++)if(n.call(u,i[t],t,i))return t;return-1};Array.prototype.find=Array.prototype.find||function(n){var r;if(null===this)throw new TypeError("Array.prototype.find called on null or undefined");if("function"!=typeof n)throw new TypeError("callback must be a function");for(var i=Object(this),u=i.length>>>0,f=arguments[1],t=0;t<u;t++)if(r=i[t],n.call(f,r,t,i))return r};"function"!=typeof Object.assign&&(Object.assign=function(n){var i,t,r;if(null==n)throw new TypeError("Cannot convert undefined or null to object");for(n=Object(n),i=1;i<arguments.length;i++)if(t=arguments[i],null!=t)for(r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}),function(n){n.forEach(function(n){n.hasOwnProperty("remove")||Object.defineProperty(n,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})})}([Element.prototype,CharacterData.prototype,DocumentType.prototype])},function(n){n.exports={name:"leaflet.pm",version:"0.22.0",description:"A Leaflet Plugin For Editing Geometry Layers in Leaflet 1.0",keywords:["leaflet","polygon management","geometry editing","map data","map overlay","polygon","geojson","leaflet-draw","data-field-geojson","ui-leaflet-draw"],files:["dist"],main:"dist/leaflet.pm.min.js",dependencies:{"@turf/difference":"^4.7.4","@turf/intersect":"^4.7.4","@turf/kinks":"^4.7.3"},devDependencies:{"babel-core":"^6.24.1","babel-loader":"^7.0.0","babel-preset-env":"^1.4.0","css-loader":"^0.28.0",eslint:"^3.5.0","eslint-config-airbnb-base":"^7.1.0","eslint-plugin-import":"^1.15.0","extract-text-webpack-plugin":"^2.1.0","file-loader":"^0.11.1",leaflet:"^1.2.0","style-loader":"^0.16.1",tape:"^4.6.2","tape-run":"^2.1.4","url-loader":"^0.5.8",webpack:"^3.6.0"},peerDependencies:{leaflet:"^1.2.0"},scripts:{start:"npm run dev",dev:"./node_modules/.bin/webpack --config=webpack.dev.js",test:"browserify ./spec/test.spec.js | tape-run",build:"./node_modules/.bin/webpack --config=webpack.build.js",prepare:"npm run build"},repository:{type:"git",url:"git+https://github.com/codeofsumit/leaflet.pm.git"},author:{name:"Sumit Kumar",email:"sk@outlook.com",url:"http://twitter.com/TweetsOfSumit"},license:"MIT",bugs:{url:"https://github.com/codeofsumit/leaflet.pm/issues"},homepage:"https://leafletpm.now.sh"}},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=L.Class.extend({initialize:function(n){var t=this;this.map=n;this.Draw=new L.PM.Draw(n);this.Toolbar=new L.PM.Toolbar(n);this.map.on("layerremove",function(n){n.layer.pm&&!n.layer._pmTempLayer&&t.map.fire("pm:remove",n)})},addControls:function(n){this.Toolbar.addControls(n)},removeControls:function(){this.Toolbar.removeControls()},toggleControls:function(){this.Toolbar.toggleControls()},controlsVisible:function(){return this.Toolbar.isVisible},enableDraw:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Poly",t=arguments[1];this.Draw.enable(n,t)},disableDraw:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Poly";this.Draw.disable(n)},setPathOptions:function(n){this.Draw.setPathOptions(n)},removeLayer:function(n){var t=n.target;t._layers||t.pm&&t.pm.dragging()||n.target.remove()},toggleGlobalRemovalMode:function(){var n=this;this.globalRemovalEnabled()?(this._globalRemovalMode=!1,this.map.eachLayer(function(t){t.off("click",n.removeLayer)})):(this._globalRemovalMode=!0,this.map.eachLayer(function(t){t.pm&&t.on("click",n.removeLayer)}));this.Toolbar.toggleButton("deleteLayer",this._globalRemovalMode)},globalRemovalEnabled:function(){return this._globalRemovalMode},globalEditEnabled:function(){return this._globalEditMode},enableGlobalEditMode:function(n){var t=[];this.map.eachLayer(function(n){(n instanceof L.Polyline||n instanceof L.Marker||n instanceof L.Circle)&&t.push(n)});t=t.filter(function(n){return!!n.pm});t=t.filter(function(n){return!n._pmTempLayer});this._globalEditMode=!0;t.forEach(function(t){t.pm.enable(n)});this.Toolbar.toggleButton("editPolygon",this._globalEditMode)},disableGlobalEditMode:function(){var n=[];this.map.eachLayer(function(t){(t instanceof L.Polyline||t instanceof L.Marker||t instanceof L.Circle)&&n.push(t)});n=n.filter(function(n){return!!n.pm});n=n.filter(function(n){return!n._pmTempLayer});this._globalEditMode=!1;n.forEach(function(n){n.pm.disable()});this.Toolbar.toggleButton("editPolygon",this._globalEditMode)},toggleGlobalEditMode:function(n){this.globalEditEnabled()?this.disableGlobalEditMode():this.enableGlobalEditMode(n)}});t.default=i},function(n,t,i){"use strict";var r,u,f;Object.defineProperty(t,"__esModule",{value:!0});r=i(13);u=function(n){return n&&n.__esModule?n:{"default":n}}(r);L.Control.PMButton=u.default;f=L.Class.extend({options:{drawMarker:!0,drawPolygon:!0,drawPolyline:!0,drawCircle:!0,drawRectangle:!0,editMode:!0,cutPolygon:!0,dragPolygon:!1,removalMode:!0,position:"topleft"},initialize:function(n){this.map=n;this.buttons={};this.isVisible=!1;this.container=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-bar leaflet-control");this._defineButtons()},getButtons:function(){return this.buttons},addControls:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options;void 0!==n.editPolygon&&(n.editMode=n.editPolygon);void 0!==n.deleteLayer&&(n.removalMode=n.deleteLayer);L.Util.setOptions(this,n);this._showHideButtons();this.isVisible=!0},removeControls:function(){var n=this.getButtons(),t;for(t in n)n[t].remove();this.isVisible=!1},toggleControls:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options;this.isVisible?this.removeControls():this.addControls(n)},_addButton:function(n,t){return this.buttons[n]=t,this.options[n]=this.options[n]||!1,this.buttons[n]},triggerClickOnToggledButtons:function(n){for(var t in this.buttons)this.buttons[t]!==n&&this.buttons[t].toggled()&&this.buttons[t]._triggerClick()},toggleButton:function(n,t){return"editPolygon"===n&&(n="editMode"),"deleteLayer"===n&&(n="removalMode"),this.triggerClickOnToggledButtons(this.buttons[n]),this.buttons[n].toggle(t)},_defineButtons:function(){var n=this,t={className:" leaflet-pm-icon-delete",onClick:function(){},afterClick:function(){n.map.pm.toggleGlobalRemovalMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},i={className:"leaflet-pm-icon-polygon",onClick:function(){},afterClick:function(){n.map.pm.Draw.Poly.toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},r={className:"leaflet-pm-icon-cut",onClick:function(){},afterClick:function(){n.map.pm.Draw.Cut.toggle({snappable:!0,cursorMarker:!0,allowSelfIntersection:!1})},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},u={className:"leaflet-pm-icon-marker",onClick:function(){},afterClick:function(){n.map.pm.Draw.Marker.toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},f={className:"leaflet-pm-icon-polyline",onClick:function(){},afterClick:function(){n.map.pm.Draw.Line.toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},e={className:"leaflet-pm-icon-circle",onClick:function(){},afterClick:function(){n.map.pm.Draw.Circle.toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},o={className:"leaflet-pm-icon-rectangle",onClick:function(){},afterClick:function(){n.map.pm.Draw.Rectangle.toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},s={className:"leaflet-pm-icon-edit",onClick:function(){},afterClick:function(){n.map.pm.toggleGlobalEditMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position},h={className:"leaflet-pm-icon-drag",onClick:function(){},afterClick:function(){},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position};this._addButton("drawMarker",new L.Control.PMButton(u));this._addButton("drawPolyline",new L.Control.PMButton(f));this._addButton("drawRectangle",new L.Control.PMButton(o));this._addButton("drawPolygon",new L.Control.PMButton(i));this._addButton("drawCircle",new L.Control.PMButton(e));this._addButton("cutPolygon",new L.Control.PMButton(r));this._addButton("editMode",new L.Control.PMButton(s));this._addButton("dragPolygon",new L.Control.PMButton(h));this._addButton("removalMode",new L.Control.PMButton(t))},_showHideButtons:function(){var n,t;this.removeControls();n=this.getButtons();for(t in n)this.options[t]&&(n[t].setPosition(this.options.position),n[t].addTo(this.map))}});t.default=f},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=L.Control.extend({options:{position:"topleft"},initialize:function(n){this._button=L.Util.setOptions(this,n)},onAdd:function(n){return this._map=n,this._container=this._map.pm.Toolbar.container,this.buttonsDomNode=this._makeButton(this._button),this._container.appendChild(this.buttonsDomNode),this._container},onRemove:function(){return this.buttonsDomNode.remove(),this._container},getText:function(){return this._button.text},getIconUrl:function(){return this._button.iconUrl},destroy:function(){this._button={};this._update()},toggle:function(n){return this._button.toggleStatus="boolean"==typeof n?n:!this._button.toggleStatus,this._applyStyleClasses(),this._button.toggleStatus},toggled:function(){return this._button.toggleStatus},onCreate:function(){this.toggle(!1)},_triggerClick:function(n){this._button.onClick(n);this._clicked(n);this._button.afterClick(n)},_makeButton:function(n){var i=this,t=L.DomUtil.create("a","leaflet-buttons-control-button",this._container),r;return n.toggleStatus&&L.DomUtil.addClass(t,"active"),r=L.DomUtil.create("div","control-icon",t),n.iconUrl&&r.setAttribute("src",n.iconUrl),n.className&&L.DomUtil.addClass(r,n.className),L.DomEvent.addListener(t,"click",function(){i._button.disableOtherButtons&&i._map.pm.Toolbar.triggerClickOnToggledButtons(i)}),L.DomEvent.addListener(t,"click",this._triggerClick,this),L.DomEvent.disableClickPropagation(t),t},_applyStyleClasses:function(){this._container&&(this._button.toggleStatus?L.DomUtil.addClass(this.buttonsDomNode,"active"):L.DomUtil.removeClass(this.buttonsDomNode,"active"))},_clicked:function(){this._button.doToggle&&this.toggle()}});t.default=i},function(n,t,i){"use strict";var u=i(0),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Marker=r.default.extend({initialize:function(n){this._map=n;this._shape="Marker";this.toolbarButtonName="drawMarker"},enable:function(n){L.Util.setOptions(this,n);this._enabled=!0;this._map.on("click",this._createMarker,this);this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0);this._hintMarker=L.marker([0,0],this.options.markerStyle);this._hintMarker._pmTempLayer=!0;this._hintMarker.addTo(this._map);this._layer=this._hintMarker;this._map.on("mousemove",this._syncHintMarker,this);this._map.fire("pm:drawstart",{shape:this._shape,workingLayer:this._layer});this._map.eachLayer(function(n){n instanceof L.Marker&&n.pm&&n.pm.enable()})},disable:function(){this._enabled&&(this._map.off("click",this._createMarker,this),this._hintMarker.remove(),this._map.off("mousemove",this._syncHintMarker,this),this._map.eachLayer(function(n){n instanceof L.Marker&&n.pm&&!n._pmTempLayer&&n.pm.disable()}),this._map.fire("pm:drawend",{shape:this._shape}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this._enabled=!1)},enabled:function(){return this._enabled},toggle:function(n){this.enabled()?this.disable():this.enable(n)},_createMarker:function(n){if(n.latlng){this._hintMarker._snapped||this._hintMarker.setLatLng(n.latlng);var i=this._hintMarker.getLatLng(),t=new L.Marker(i,this.options.markerStyle);t.addTo(this._map);t.pm.enable();this._map.fire("pm:create",{shape:this._shape,marker:t,layer:t});this._cleanupSnapping()}},_syncHintMarker:function(n){if(this._hintMarker.setLatLng(n.latlng),this.options.snappable){var t=n;t.target=this._hintMarker;this._handleSnapping(t)}}})},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}var e=i(5),u=r(e),o=i(0),f=r(o);f.default.Line=f.default.extend({initialize:function(n){this._map=n;this._shape="Line";this.toolbarButtonName="drawPolyline";this._doesSelfIntersect=!1},enable:function(n){L.Util.setOptions(this,n);this.options.finishOnDoubleClick&&!this.options.finishOn&&(this.options.finishOn="dblclick");this._enabled=!0;this._layerGroup=new L.LayerGroup;this._layerGroup._pmTempLayer=!0;this._layerGroup.addTo(this._map);this._layer=L.polyline([],this.options.templineStyle);this._layer._pmTempLayer=!0;this._layerGroup.addLayer(this._layer);this._hintline=L.polyline([],this.options.hintlineStyle);this._hintline._pmTempLayer=!0;this._layerGroup.addLayer(this._hintline);this._hintMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon cursor-marker"})});this._hintMarker._pmTempLayer=!0;this._layerGroup.addLayer(this._hintMarker);this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible");this._map._container.style.cursor="crosshair";this._map.on("click",this._createVertex,this);this.options.finishOn&&this._map.on(this.options.finishOn,this._finishShape,this);"dblclick"===this.options.finishOn&&(this.tempMapDoubleClickZoomState=this._map.doubleClickZoom._enabled,this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.disable());this._map.on("mousemove",this._syncHintMarker,this);this._hintMarker.on("move",this._syncHintLine,this);this._map.fire("pm:drawstart",{shape:this._shape,workingLayer:this._layer});this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0);this._otherSnapLayers=[]},disable:function(){this._enabled&&(this._enabled=!1,this._map._container.style.cursor="default",this._map.off("click",this._createVertex,this),this._map.off("mousemove",this._syncHintMarker,this),this.options.finishOn&&this._map.off(this.options.finishOn,this._finishShape,this),this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.enable(),this._map.removeLayer(this._layerGroup),this._map.fire("pm:drawend",{shape:this._shape}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping())},enabled:function(){return this._enabled},toggle:function(n){this.enabled()?this.disable():this.enable(n)},hasSelfIntersection:function(){return u.default(this._layer.toGeoJSON()).features.length>0},_syncHintLine:function(){var n=this._layer.getLatLngs(),t;n.length>0&&(t=n[n.length-1],this._hintline.setLatLngs([t,this._hintMarker.getLatLng()]))},_syncHintMarker:function(n){if(this._hintMarker.setLatLng(n.latlng),this.options.snappable){var t=n;t.target=this._hintMarker;this._handleSnapping(t)}this.options.allowSelfIntersection||this._handleSelfIntersection()},_handleSelfIntersection:function(){var n=L.polyline(this._layer.getLatLngs()),t;n.addLatLng(this._hintMarker.getLatLng());t=u.default(n.toGeoJSON());this._doesSelfIntersect=t.features.length>0;this._doesSelfIntersect?this._hintline.setStyle({color:"red"}):this._hintline.setStyle({color:"#3388ff"})},_createVertex:function(n){var t,i,r;if(this.options.allowSelfIntersection||!this._doesSelfIntersect){if(this._hintMarker._snapped||this._hintMarker.setLatLng(n.latlng),t=this._hintMarker.getLatLng(),t.equals(this._layer.getLatLngs()[0]))return void this._finishShape(n);i=0===this._layer.getLatLngs().length;this._layer.addLatLng(t);r=this._createMarker(t,i);this._hintline.setLatLngs([t,t]);this._layer.fire("pm:vertexadded",{shape:this._shape,workingLayer:this._layer,marker:r,latlng:t})}},_finishShape:function(){if(this.options.allowSelfIntersection||!this._doesSelfIntersect){var n=this._layer.getLatLngs(),t=L.polyline(n,this.options.pathOptions).addTo(this._map);this.disable();this._map.fire("pm:create",{shape:this._shape,layer:t});this.options.snappable&&this._cleanupSnapping()}},_createMarker:function(n){var t=new L.Marker(n,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return t._pmTempLayer=!0,this._layerGroup.addLayer(t),t.on("click",this._finishShape,this),t}})},function(n,t,i){"use strict";var u=i(0),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Poly=r.default.Line.extend({initialize:function(n){this._map=n;this._shape="Poly";this.toolbarButtonName="drawPolygon"},_finishShape:function(){if(this.options.allowSelfIntersection||!this._doesSelfIntersect){var n=this._layer.getLatLngs(),t=L.polygon(n,this.options.pathOptions).addTo(this._map);this.disable();this._map.fire("pm:create",{shape:this._shape,layer:t});this._cleanupSnapping();this._otherSnapLayers.splice(this._tempSnapLayerIndex,1);delete this._tempSnapLayerIndex}},_createMarker:function(n,t){var i=new L.Marker(n,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return i._pmTempLayer=!0,this._layerGroup.addLayer(i),t&&(i.on("click",this._finishShape,this),this._tempSnapLayerIndex=this._otherSnapLayers.push(i)-1,this.options.snappable&&this._cleanupSnapping()),i}})},function(n,t,i){"use strict";var u=i(0),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Rectangle=r.default.extend({initialize:function(n){this._map=n;this._shape="Rectangle";this.toolbarButtonName="drawRectangle"},enable:function(n){var i,t;if(L.Util.setOptions(this,n),this._enabled=!0,this._layerGroup=new L.LayerGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=L.rectangle([[0,0],[0,0]]).addTo(this._map),this._layer._pmTempLayer=!0,this._layerGroup.addLayer(this._layer),this._startMarker=L.marker([0,0],{icon:L.divIcon({className:"marker-icon"}),draggable:!0,zIndexOffset:100,opacity:this.options.cursorMarker?1:0}),this._startMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._startMarker),this._hintMarker=L.marker([0,0],{icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker)for(L.DomUtil.addClass(this._hintMarker._icon,"visible"),this._styleMarkers=[],i=0;i<2;i++)t=L.marker([0,0],{icon:L.divIcon({className:"marker-icon"}),draggable:!0,zIndexOffset:100}),t._pmTempLayer=!0,this._layerGroup.addLayer(t),this._styleMarkers.push(t);this._map._container.style.cursor="crosshair";this._map.on("click",this._placeStartingMarkers,this);this._map.on("mousemove",this._syncHintMarker,this);this._map.fire("pm:drawstart",{shape:this._shape,workingLayer:this._layer});this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0);this._otherSnapLayers=[]},disable:function(){this._enabled&&(this._enabled=!1,this._map._container.style.cursor="default",this._map.off("click",this._finishShape,this),this._map.off("click",this._placeStartingMarkers,this),this._map.off("mousemove",this._syncHintMarker,this),this._map.removeLayer(this._layerGroup),this._map.fire("pm:drawend",{shape:this._shape}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping())},enabled:function(){return this._enabled},toggle:function(n){this.enabled()?this.disable():this.enable(n)},_placeStartingMarkers:function(n){this._hintMarker._snapped||this._hintMarker.setLatLng(n.latlng);var t=this._hintMarker.getLatLng();this._startMarker.setLatLng(t);this.options.cursorMarker&&this._styleMarkers&&this._styleMarkers.forEach(function(n){n.setLatLng(t)});this._map.off("click",this._placeStartingMarkers,this);this._map.on("click",this._finishShape,this);this._setRectangleOrigin()},_setRectangleOrigin:function(){var n=this._startMarker.getLatLng();n&&(this._layer.setLatLngs([n,n]),this._hintMarker.on("move",this._syncRectangleSize,this))},_syncHintMarker:function(n){if(this._hintMarker.setLatLng(n.latlng),this.options.snappable){var t=n;t.target=this._hintMarker;this._handleSnapping(t)}},_syncRectangleSize:function(){var n=this,r=this._startMarker.getLatLng(),u=this._hintMarker.getLatLng(),i,t;(this._layer.setBounds([r,u]),this.options.cursorMarker&&this._styleMarkers)&&(i=this._findCorners(),t=[],i.forEach(function(i){i.equals(n._startMarker.getLatLng())||i.equals(n._hintMarker.getLatLng())||t.push(i)}),t.forEach(function(t,i){n._styleMarkers[i].setLatLng(t)}))},_finishShape:function(){var n=this._startMarker.getLatLng(),t=this._hintMarker.getLatLng(),i=L.rectangle([n,t]).addTo(this._map);this.disable();this._map.fire("pm:create",{shape:this._shape,layer:i})},_findCorners:function(){var n=this._layer.getBounds();return[n.getNorthWest(),n.getNorthEast(),n.getSouthEast(),n.getSouthWest()]}})},function(n,t,i){"use strict";var u=i(0),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Circle=r.default.extend({initialize:function(n){this._map=n;this._shape="Circle";this.toolbarButtonName="drawCircle"},enable:function(n){L.Util.setOptions(this,n);this.options.radius=0;this._enabled=!0;this._layerGroup=new L.LayerGroup;this._layerGroup._pmTempLayer=!0;this._layerGroup.addTo(this._map);this._layer=L.circle([0,0],this.options.templineStyle);this._layer._pmTempLayer=!0;this._layerGroup.addLayer(this._layer);this._centerMarker=L.marker([0,0],{icon:L.divIcon({className:"marker-icon"}),draggable:!1,zIndexOffset:100});this._centerMarker._pmTempLayer=!0;this._layerGroup.addLayer(this._centerMarker);this._hintMarker=L.marker([0,0],{icon:L.divIcon({className:"marker-icon cursor-marker"})});this._hintMarker._pmTempLayer=!0;this._layerGroup.addLayer(this._hintMarker);this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible");this._hintline=L.polyline([],this.options.hintlineStyle);this._hintline._pmTempLayer=!0;this._layerGroup.addLayer(this._hintline);this._map._container.style.cursor="crosshair";this._map.on("click",this._placeCenterMarker,this);this._map.on("mousemove",this._syncHintMarker,this);this._map.fire("pm:drawstart",{shape:this._shape,workingLayer:this._layer});this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0);this._otherSnapLayers=[]},disable:function(){this._enabled&&(this._enabled=!1,this._map._container.style.cursor="default",this._map.off("click",this._finishShape,this),this._map.off("click",this._placeCenterMarker,this),this._map.off("mousemove",this._syncHintMarker,this),this._map.removeLayer(this._layerGroup),this._map.fire("pm:drawend",{shape:this._shape}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping())},enabled:function(){return this._enabled},toggle:function(n){this.enabled()?this.disable():this.enable(n)},_syncHintLine:function(){var n=this._centerMarker.getLatLng();this._hintline.setLatLngs([n,this._hintMarker.getLatLng()])},_syncCircleRadius:function(){var n=this._centerMarker.getLatLng(),t=this._hintMarker.getLatLng(),i=n.distanceTo(t);this._layer.setRadius(i)},_syncHintMarker:function(n){if(this._hintMarker.setLatLng(n.latlng),this.options.snappable){var t=n;t.target=this._hintMarker;this._handleSnapping(t)}},_placeCenterMarker:function(n){this._hintMarker._snapped||this._hintMarker.setLatLng(n.latlng);var t=this._hintMarker.getLatLng();this._centerMarker.setLatLng(t);this._map.off("click",this._placeCenterMarker,this);this._map.on("click",this._finishShape,this);this._placeCircleCenter()},_placeCircleCenter:function(){var n=this._centerMarker.getLatLng();n&&(this._layer.setLatLng(n),this._hintMarker.on("move",this._syncHintLine,this),this._hintMarker.on("move",this._syncCircleRadius,this))},_finishShape:function(){var n=this._centerMarker.getLatLng(),t=this._hintMarker.getLatLng(),i=n.distanceTo(t),r=L.circle(n,{radius:i}).addTo(this._map);this.disable();this._map.fire("pm:create",{shape:this._shape,layer:r})},_createMarker:function(n){var t=new L.Marker(n,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return t._pmTempLayer=!0,this._layerGroup.addLayer(t),t}})},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}var f=i(20),e=r(f),o=i(22),s=r(o),h=i(0),u=r(h);u.default.Cut=u.default.Poly.extend({initialize:function(n){this._map=n;this._shape="Cut";this.toolbarButtonName="cutPolygon"},_cut:function(n){var t=this,r=this._map._layers,u=Object.keys(r).map(function(n){return r[n]}).filter(function(n){return n.pm}).filter(function(n){return n instanceof L.Polygon}).filter(function(t){return t!==n}).filter(function(t){try{return!!e.default(n.toGeoJSON(),t.toGeoJSON())}catch(n){return console.error("You cant cut polygons with self-intersections"),!1}}),i=[];u.forEach(function(r){var f=s.default(r.toGeoJSON(),n.toGeoJSON()),u;"MultiPolygon"===f.geometry.type?f.geometry.coordinates.reduce(function(n,t){return n.push({type:"Polygon",coordinates:t}),n},[]).forEach(function(n){var u=L.geoJSON(n,r.options);i.push(u);u.addTo(t._map);u.pm.enable(t.options);u.pm.disable()}):(u=L.geoJSON(f,r.options).addTo(t._map),i.push(u),u.addTo(t._map),u.pm.enable(t.options),u.pm.disable());r.fire("pm:cut",{shape:t._shape,layer:r,resultingLayers:i});t._map.fire("pm:cut",{shape:t._shape,cuttedLayer:r,resultingLayers:i});r._pmTempLayer=!0;n._pmTempLayer=!0;r.remove();n.remove()})},_finishShape:function(){var n=this._layer.getLatLngs(),t=L.polygon(n,this.options.pathOptions);this._cut(t);this.disable();this._cleanupSnapping();this._otherSnapLayers.splice(this._tempSnapLayerIndex,1);delete this._tempSnapLayerIndex}})},function(n,t,i){var r=i(6),u=i(21),f=i(2).feature;n.exports=function(n,t){var h="Feature"===n.type?n.geometry:n,c="Feature"===t.type?t.geometry:t,i=new r.io.GeoJSONReader,l=i.read(u(h)),a=i.read(u(c)),e=l.intersection(a),o,s;return e.isEmpty()?null:(o=new r.io.GeoJSONWriter,s=o.write(e),f(s))}},function(n,t,i){function r(n,t,i){n.length>i&&n.splice(i,n.length);for(var r=0;r<n.length;r++)n[r]=Math.round(n[r]*t)/t;return n}var u=i(3).coordEach;n.exports=function(n,t,i,f){if(t=void 0===t||null===t||isNaN(t)?6:t,i=void 0===i||null===i||isNaN(i)?3:i,!n)throw new Error("<geojson> is required");if("number"!=typeof t)throw new Error("<precision> must be a number");if("number"!=typeof i)throw new Error("<coordinates> must be a number");!1!==f&&void 0!==f||(n=JSON.parse(JSON.stringify(n)));var e=Math.pow(10,t);return u(n,function(n){r(n,e,i)}),n}},function(n,t,i){function r(n){switch(n.type){case"Polygon":return f(n)>1?n:null;case"MultiPolygon":var t=[];if(s(n,function(n){f(n)>1&&t.push(n.geometry.coordinates)}),t.length)return{type:"MultiPolygon",coordinates:t}}}var u=i(6),f=i(23),e=i(2).feature,o=i(26).getGeom,s=i(3).flattenEach;n.exports=function(n,t){var i=o(n),f=o(t),s=n.properties||{},l,a;if(i=r(i),f=r(f),!i)return null;if(!f)return e(i,s);var h=new u.io.GeoJSONReader,v=h.read(i),y=h.read(f),c=v.difference(y);return c.isEmpty()?null:(l=new u.io.GeoJSONWriter,a=l.write(c),e(a,s))}},function(n,t,i){var r=i(24).geometry,u=i(3).geomReduce;n.exports=function(n){return u(n,function(n,t){return n+r(t)},0)}},function(n,t,i){function f(n){var t,i=0;switch(n.type){case"Polygon":return e(n.coordinates);case"MultiPolygon":for(t=0;t<n.coordinates.length;t++)i+=e(n.coordinates[t]);return i;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0;case"GeometryCollection":for(t=0;t<n.geometries.length;t++)i+=f(n.geometries[t]);return i}}function e(n){var i=0,t;if(n&&n.length>0)for(i+=Math.abs(r(n[0])),t=1;t<n.length;t++)i-=Math.abs(r(n[t]));return i}function r(n){var h,c,l,r,f,e,t,s=0,i=n.length;if(i>2){for(t=0;t<i;t++)t===i-2?(r=i-2,f=i-1,e=0):t===i-1?(r=i-1,f=0,e=1):(r=t,f=t+1,e=t+2),h=n[r],c=n[f],l=n[e],s+=(u(l[0])-u(h[0]))*Math.sin(u(c[1]));s=s*o.RADIUS*o.RADIUS/2}return s}function u(n){return n*Math.PI/180}var o=i(25);n.exports.geometry=f;n.exports.ring=r},function(n){n.exports.RADIUS=6378137;n.exports.FLATTENING=1/298.257223563;n.exports.POLAR_RADIUS=6356752.3142},function(n){function u(n){if(!n)throw new Error("obj is required");var t=i(n);if(t.length>1&&"number"==typeof t[0]&&"number"==typeof t[1])return t;throw new Error("Coordinate is not a valid Point");}function i(n){if(!n)throw new Error("obj is required");var i;if(n.length?i=n:n.coordinates?i=n.coordinates:n.geometry&&n.geometry.coordinates&&(i=n.geometry.coordinates),i)return t(i),i;throw new Error("No valid coordinates");}function t(n){if(n.length>1&&"number"==typeof n[0]&&"number"==typeof n[1])return!0;if(Array.isArray(n[0])&&n[0].length)return t(n[0]);throw new Error("coordinates must only contain numbers");}function f(n,t,i){if(!t||!i)throw new Error("type and name required");if(!n||n.type!==t)throw new Error("Invalid input to "+i+": must be a "+t+", given "+n.type);}function e(n,t,i){if(!n)throw new Error("No feature passed");if(!i)throw new Error(".featureOf() requires a name");if(!n||"Feature"!==n.type||!n.geometry)throw new Error("Invalid input to "+i+", Feature with geometry required");if(!n.geometry||n.geometry.type!==t)throw new Error("Invalid input to "+i+": must be a "+t+", given "+n.geometry.type);}function o(n,t,i){var u,r;if(!n)throw new Error("No featureCollection passed");if(!i)throw new Error(".collectionOf() requires a name");if(!n||"FeatureCollection"!==n.type)throw new Error("Invalid input to "+i+", FeatureCollection required");for(u=0;u<n.features.length;u++){if(r=n.features[u],!r||"Feature"!==r.type||!r.geometry)throw new Error("Invalid input to "+i+", Feature with geometry required");if(!r.geometry||r.geometry.type!==t)throw new Error("Invalid input to "+i+": must be a "+t+", given "+r.geometry.type);}}function r(n){if(!n)throw new Error("geojson is required");if(void 0!==n.geometry)return n.geometry;if(n.coordinates||n.geometries)return n;throw new Error("geojson must be a valid Feature or Geometry Object");}function s(n){if(!n)throw new Error("geojson is required");var t=r(n);if(t)return t.type}n.exports={geojsonType:f,collectionOf:o,featureOf:e,getCoord:u,getCoords:i,containsNumber:t,getGeom:r,getGeomType:s}},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i={_initDraggableLayer:function(){this._tempDragCoord=null;var n=this._layer._path;L.DomUtil.addClass(n,"leaflet-pm-draggable");this._originalMapDragState=this._layer._map.dragging._enabled;this._safeToCacheDragState=!0;this._layer.on("mousedown",this._dragMixinOnMouseDown,this)},_dragMixinOnMouseUp:function(){var n=this,t=this._layer._path;return this._originalMapDragState&&this._layer._map.dragging.enable(),this._safeToCacheDragState=!0,this._layer._map.off("mousemove",this._dragMixinOnMouseMove,this),this._layer.off("mouseup",this._dragMixinOnMouseUp,this),!!this._dragging&&(this._initMarkers(),window.setTimeout(function(){n._dragging=!1;L.DomUtil.removeClass(t,"leaflet-pm-dragging");n._layer.fire("pm:dragend");n._fireEdit()},10),!0)},_dragMixinOnMouseMove:function(n){var t=this._layer._path;this._dragging||(this._dragging=!0,L.DomUtil.addClass(t,"leaflet-pm-dragging"),this._layer.bringToFront(),this._originalMapDragState&&this._layer._map.dragging.disable(),this._markerGroup.clearLayers(),this._layer.fire("pm:dragstart"));this._onLayerDrag(n)},_dragMixinOnMouseDown:function(n){this._safeToCacheDragState&&(this._originalMapDragState=this._layer._map.dragging._enabled,this._safeToCacheDragState=!1);this._tempDragCoord=n.latlng;this._layer.on("mouseup",this._dragMixinOnMouseUp,this);this._layer._map.on("mousemove",this._dragMixinOnMouseMove,this)},dragging:function(){return this._dragging},_onLayerDrag:function(n){var t=n.latlng,i={lat:t.lat-this._tempDragCoord.lat,lng:t.lng-this._tempDragCoord.lng},r=function(n){return n.map(function(n){return{lat:n.lat+i.lat,lng:n.lng+i.lng}})},u=void 0;u=this.isPolygon()?this._layer._latlngs.map(r,this):r(this._layer._latlngs);this._layer.setLatLngs(u).redraw();this._tempDragCoord=t;this._layer.fire("pm:drag")}};t.default=i},function(n,t,i){"use strict";var r=i(1);(function(n){return n&&n.__esModule?n:{"default":n}})(r).default.LayerGroup=L.Class.extend({initialize:function(n){var t=this;this._layerGroup=n;this._layers=this.findLayers();this._layers.forEach(function(n){return t._initLayer(n)});this._layerGroup.on("layeradd",function(n){t._layers=t.findLayers();n.layer.pm&&t._initLayer(n.layer);n.target.pm.enabled()&&t.enable(t.getOptions())})},findLayers:function(){var n=this._layerGroup.getLayers();return n.filter(function(n){return!!n.pm})},_initLayer:function(n){var t=this;["pm:edit","pm:remove","pm:dragstart","pm:drag","pm:dragend","pm:snap","pm:unsnap","pm:cut","pm:raiseMarkers","pm:markerdragend","pm:markerdragstart"].forEach(function(i){n.on(i,t._fireEvent,t)});n.pm._layerGroup=this._layerGroup},_fireEvent:function(n){this._layerGroup.fireEvent(n.type,n)},toggleEdit:function(n){this._options=n;this._layers.forEach(function(t){t.pm.toggleEdit(n)})},enable:function(n){this._options=n;this._layers.forEach(function(t){t.pm.enable(n)})},disable:function(){this._layers.forEach(function(n){n.pm.disable()})},enabled:function(){return!!this._layers.find(function(n){return n.pm.enabled()})},dragging:function(){return!!this._layers.find(function(n){return n.pm.dragging()})},getOptions:function(){return this._options}})},function(n,t,i){"use strict";var u=i(1),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Marker=r.default.extend({initialize:function(n){this._layer=n;this._enabled=!1;this._layer.on("dragend",this._onDragEnd,this)},toggleEdit:function(n){this.enabled()?this.disable():this.enable(n)},enable:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{draggable:!0,snappable:!0};this.options=n;this._map=this._layer._map;this.enabled()||(this._enabled=!0,this._layer.on("contextmenu",this._removeMarker,this),this.options.draggable&&this._layer.dragging.enable(),this.options.snappable&&this._initSnappableMarkers())},enabled:function(){return this._enabled},disable:function(){this._enabled=!1;this._layer.dragging.disable();this._layer.off("contextmenu",this._removeMarker,this)},_removeMarker:function(n){var t=n.target;t.remove();t.fire("pm:remove")},_onDragEnd:function(n){n.target.fire("pm:edit")},_initSnappableMarkers:function(){var n=this._layer;this.options.snapDistance=this.options.snapDistance||30;n.off("drag",this._handleSnapping,this);n.on("drag",this._handleSnapping,this);n.off("dragend",this._cleanupSnapping,this);n.on("dragend",this._cleanupSnapping,this);n.off("pm:dragstart",this._unsnap,this);n.on("pm:dragstart",this._unsnap,this)}})},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}var e=i(5),u=r(e),o=i(1),f=r(o);f.default.Line=f.default.extend({initialize:function(n){this._layer=n;this._enabled=!1},toggleEdit:function(n){this.enabled()?this.disable():this.enable(n)},enable:function(n){L.Util.setOptions(this,n);this._map=this._layer._map;this._map&&(this.enabled()||this.disable(),this._enabled=!0,this._initMarkers(),this._layer.on("remove",this._onLayerRemove,this),this.options.allowSelfIntersection||this._layer.on("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval,this),this.options.draggable&&this._initDraggableLayer(),this.options.allowSelfIntersection||this._handleLayerStyle())},_onLayerRemove:function(n){this.disable(n.target)},enabled:function(){return this._enabled},disable:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this._layer,t;return this.enabled()?n.pm._dragging?!1:(n.pm._enabled=!1,n.pm._markerGroup.clearLayers(),n.off("mousedown"),n.off("mouseup"),this._layer.off("remove",this._onLayerRemove),this.options.allowSelfIntersection||this._layer.off("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval),t=n._path,L.DomUtil.removeClass(t,"leaflet-pm-draggable"),this.hasSelfIntersection()&&L.DomUtil.removeClass(t,"leaflet-pm-invalid"),!0):!1},hasSelfIntersection:function(){return u.default(this._layer.toGeoJSON()).features.length>0},_handleSelfIntersectionOnVertexRemoval:function(){this._handleLayerStyle(!0);this.hasSelfIntersection()&&(this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers())},_handleLayerStyle:function(n){var t=this._layer._path;if(this.hasSelfIntersection()){if(L.DomUtil.hasClass(t,"leaflet-pm-invalid"))return;n?(L.DomUtil.addClass(t,"leaflet-pm-invalid"),window.setTimeout(function(){L.DomUtil.removeClass(t,"leaflet-pm-invalid")},200)):L.DomUtil.addClass(t,"leaflet-pm-invalid");this._layer.fire("pm:intersect",{intersection:u.default(this._layer.toGeoJSON())})}else L.DomUtil.removeClass(t,"leaflet-pm-invalid")},_initMarkers:function(){var n=this,r=this._map,i=this._layer.getLatLngs(),t;this._markerGroup&&this._markerGroup.clearLayers();this._markerGroup=new L.LayerGroup;this._markerGroup._pmTempLayer=!0;r.addLayer(this._markerGroup);t=function(t){var i=t.map(n._createMarker,n);return t.map(function(r,u){var f=void 0;return f=n.isPolygon()?(u+1)%t.length:u+1,n._createMiddleMarker(i[u],i[f])}),i};this._markers=[];this._markers=this.isPolygon()?i.map(t,this):t(i);this.options.snappable&&this._initSnappableMarkers()},_createMarker:function(n){var t=new L.Marker(n,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return t._pmTempLayer=!0,t.on("dragstart",this._onMarkerDragStart,this),t.on("move",this._onMarkerDrag,this),t.on("dragend",this._onMarkerDragEnd,this),t.on("contextmenu",this._removeMarker,this),this._markerGroup.addLayer(t),t},_createMiddleMarker:function(n,t){var r=this;if(!n||!t)return!1;var u=this._calcMiddleLatLng(n.getLatLng(),t.getLatLng()),i=this._createMarker(u),f=L.divIcon({className:"marker-icon marker-icon-middle"});return i.setIcon(f),n._middleMarkerNext=i,t._middleMarkerPrev=i,i.on("click",function(){var u=L.divIcon({className:"marker-icon"});i.setIcon(u);r._addMarker(i,n,t)}),i.on("movestart",function(){i.on("moveend",function(){var n=L.divIcon({className:"marker-icon"});i.setIcon(n);i.off("moveend")});r._addMarker(i,n,t)}),i},_addMarker:function(n,t,i){n.off("movestart");n.off("click");var o=n.getLatLng(),u=this._layer._latlngs,e=this.findMarkerIndex(this._markers,i),r=e.ringIndex,f=e.index,s=r>-1?u[r]:u,h=r>-1?this._markers[r]:this._markers;s.splice(f,0,o);h.splice(f,0,n);this._layer.setLatLngs(u);this._createMiddleMarker(t,n);this._createMiddleMarker(n,i);this._fireEdit();this._layer.fire("pm:vertexadded",{layer:this._layer,marker:n,index:f,ringIndex:r});this.options.snappable&&this._initSnappableMarkers()},_removeMarker:function(n){var s,e,o,l,a;this.options.allowSelfIntersection||(s=this._layer.getLatLngs(),this._coordsBeforeEdit=JSON.parse(JSON.stringify(s)));var i=n.target,u=this._layer.getLatLngs(),h=this.findMarkerIndex(this._markers,i),f=h.ringIndex,t=h.index,c=f>-1?u[f]:u,r=f>-1?this._markers[f]:this._markers;-1!==this.findMarkerIndex(this._markers,i).index&&(c.splice(t,1),this._layer.setLatLngs(u),c.length<=1&&(u.splice(f,1),this._layer.setLatLngs(u),this.disable(),this.enable(this.options)),u.length<1&&this._layer.remove(),i._middleMarkerPrev&&this._markerGroup.removeLayer(i._middleMarkerPrev),i._middleMarkerNext&&this._markerGroup.removeLayer(i._middleMarkerNext),this._markerGroup.removeLayer(i),e=void 0,o=void 0,(this.isPolygon()?(e=(t+1)%r.length,o=(t+(r.length-1))%r.length):(o=t-1<0?void 0:t-1,e=t+1>=r.length?void 0:t+1),e!==o)&&(l=r[o],a=r[e],this._createMiddleMarker(l,a)),r.splice(t,1),this._fireEdit(),this._layer.fire("pm:vertexremoved",{layer:this._layer,marker:i,index:t,ringIndex:f}))},findMarkerIndex:function(n,t){var i=void 0,r=void 0;return this.isPolygon()?r=n.findIndex(function(n){return(i=n.findIndex(function(n){return t._leaflet_id===n._leaflet_id}))>-1}):i=n.findIndex(function(n){return t._leaflet_id===n._leaflet_id}),{index:i,ringIndex:r}},updatePolygonCoordsFromMarkerDrag:function(n){var t=this._layer.getLatLngs(),i=this.findMarkerIndex(this._markers,n),r=i.ringIndex,u=i.index;(r>-1?t[r]:t).splice(u,1,n.getLatLng());this._layer.setLatLngs(t).redraw()},_onMarkerDrag:function(n){var t=n.target,o,s;if(-1!==this.findMarkerIndex(this._markers,t).index){this.updatePolygonCoordsFromMarkerDrag(t);var r=this.findMarkerIndex(this._markers,t),u=r.ringIndex,f=r.index,i=u>-1?this._markers[u]:this._markers,h=(f+1)%i.length,c=(f+i.length-1)%i.length,e=t.getLatLng(),l=i[c].getLatLng(),a=i[h].getLatLng();t._middleMarkerNext&&(o=this._calcMiddleLatLng(e,a),t._middleMarkerNext.setLatLng(o));t._middleMarkerPrev&&(s=this._calcMiddleLatLng(e,l),t._middleMarkerPrev.setLatLng(s));this.options.allowSelfIntersection||this._handleLayerStyle()}},_onMarkerDragEnd:function(n){var i=n.target,t=this.findMarkerIndex(this._markers,i),r=t.ringIndex,u=t.index;if(!this.options.allowSelfIntersection&&this.hasSelfIntersection())return this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers(),void this._handleLayerStyle();this._layer.fire("pm:markerdragend",{markerEvent:n,ringIndex:r,index:u});this._fireEdit()},_onMarkerDragStart:function(n){var i=n.target,t=this.findMarkerIndex(this._markers,i),r=t.ringIndex,u=t.index;this._layer.fire("pm:markerdragstart",{markerEvent:n,ringIndex:r,index:u});this.options.allowSelfIntersection||(this._coordsBeforeEdit=this._layer.getLatLngs())},_fireEdit:function(){this._layer.edited=!0;this._layer.fire("pm:edit")},_calcMiddleLatLng:function(n,t){var i=this._map,r=i.project(n),u=i.project(t);return i.unproject(r._add(u)._divideBy(2))}})},function(n,t,i){"use strict";var u=i(1),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Poly=r.default.Line.extend({})},function(n,t,i){"use strict";var u=i(1),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Rectangle=r.default.Poly.extend({_initMarkers:function(){var n=this._map,t=this._findCorners();this._markerGroup&&this._markerGroup.clearLayers();this._markerGroup=new L.LayerGroup;this._markerGroup._pmTempLayer=!0;n.addLayer(this._markerGroup);this._markers=[];this._markers[0]=t.map(this._createMarker,this);this._cornerMarkers=this._markers[0];this.options.snappable&&this._initSnappableMarkers()},_createMarker:function(n,t){var i=new L.Marker(n,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return i._origLatLng=n,i._index=t,i._pmTempLayer=!0,i.on("dragstart",this._onMarkerDragStart,this),i.on("drag",this._onMarkerDrag,this),i.on("dragend",this._onMarkerDragEnd,this),i.on("contextmenu",this._removeMarker,this),i.on("pm:snap",this._adjustRectangleForMarkerSnap,this),this._markerGroup.addLayer(i),i},_removeMarker:function(){return null},_onMarkerDragStart:function(n){var t=n.target,i=this._findCorners();t._oppositeCornerLatLng=i[(t._index+2)%4];t._snapped=!1},_onMarkerDrag:function(n){var t=n.target;void 0!==t._index&&(t._snapped||this._adjustRectangleForMarkerMove(t))},_onMarkerDragEnd:function(){var n=this._findCorners();this._adjustAllMarkers(n);this._cornerMarkers.forEach(function(n){delete n._oppositeCornerLatLng});this._layer.setLatLngs(n);this._layer.redraw()},_adjustRectangleForMarkerMove:function(n){L.extend(n._origLatLng,n._latlng);var t=n.getLatLng();this._layer.setBounds(L.latLngBounds(t,n._oppositeCornerLatLng));this._adjustAdjacentMarkers(n);this._layer.redraw()},_adjustRectangleForMarkerSnap:function(n){if(this.options.snappable){var t=n.target;this._adjustRectangleForMarkerMove(t)}},_adjustAllMarkers:function(n){if(!n.length||4!=n.length)return void console.error("_adjustAllMarkers() requires an array of EXACTLY 4 LatLng coordinates");this._cornerMarkers.forEach(function(t,i){t.setLatLng(n[i])})},_adjustAdjacentMarkers:function(n){var i;if(!n||!n.getLatLng||!n._oppositeCornerLatLng)return void console.error("_adjustAdjacentMarkers() requires a valid Marker object");var r=n.getLatLng(),u=n._oppositeCornerLatLng,t=[];this._findCorners().forEach(function(n){n.equals(r)||n.equals(u)||t.push(n)});i=0;2==t.length&&this._cornerMarkers.forEach(function(n){var f=n.getLatLng();f.equals(r)||f.equals(u)||(n.setLatLng(t[i]),i++)})},_findCorners:function(){var n=this._layer.getBounds();return[n.getNorthWest(),n.getNorthEast(),n.getSouthEast(),n.getSouthWest()]}})},function(n,t,i){"use strict";var u=i(1),r=function(n){return n&&n.__esModule?n:{"default":n}}(u);r.default.Circle=r.default.extend({initialize:function(n){this._layer=n;this._enabled=!1},toggleEdit:function(n){this.enabled()?this.disable():this.enable(n)},enabled:function(){return this._enabled},enable:function(){var n=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=t;this._map=this._layer._map;this.enabled()||this.disable();this._enabled=!0;this._initMarkers();this._layer.on("remove",function(t){n.disable(t.target)})},disable:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this._layer,t;return this.enabled()?n.pm._dragging?!1:(n.pm._enabled=!1,n.pm._layerGroup.clearLayers(),n.off("mousedown"),n.off("mouseup"),t=n._path,L.DomUtil.removeClass(t,"leaflet-pm-draggable"),!0):!1},_initMarkers:function(){var t=this._map;this._layerGroup&&this._layerGroup.clearLayers();this._layerGroup=new L.LayerGroup;t.addLayer(this._layerGroup);var n=this._layer.getLatLng(),i=this._layer._radius,r=this._getLatLngOnCircle(n,i);this._centerMarker=this._createCenterMarker(n);this._outerMarker=this._createOuterMarker(r);this._markers=[this._centerMarker,this._outerMarker];this._createHintLine(this._centerMarker,this._outerMarker);this.options.snappable&&this._initSnappableMarkers()},_getLatLngOnCircle:function(n,t){var i=this._map.project(n),r=L.point(i.x+t,i.y);return this._map.unproject(r)},_resizeCircle:function(){this._syncHintLine();this._syncCircleRadius();this._fireEdit()},_moveCircle:function(n){var t=n.latlng,i,r;this._layer.setLatLng(t);i=this._layer._radius;r=this._getLatLngOnCircle(t,i);this._outerMarker.setLatLng(r);this._syncHintLine();this._fireEdit()},_syncCircleRadius:function(){var n=this._centerMarker.getLatLng(),t=this._outerMarker.getLatLng(),i=n.distanceTo(t);this._layer.setRadius(i)},_syncHintLine:function(){var n=this._centerMarker.getLatLng(),t=this._outerMarker.getLatLng();this._hintline.setLatLngs([n,t])},_createHintLine:function(n,t){var i=n.getLatLng(),r=t.getLatLng();this._hintline=L.polyline([i,r],this.options.hintlineStyle);this._hintline._pmTempLayer=!0;this._layerGroup.addLayer(this._hintline)},_createCenterMarker:function(n){var t=this._createMarker(n);return t.on("move",this._moveCircle,this),t},_createOuterMarker:function(n){var t=this._createMarker(n);return t.on("move",this._resizeCircle,this),t},_createMarker:function(n){var t=new L.Marker(n,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return t._origLatLng=n,t._pmTempLayer=!0,this._layerGroup.addLayer(t),t},_fireEdit:function(){this._layer.fire("pm:edit")}})},function(){},function(){}]);L.Map.mergeOptions({touchExtend:!0});L.Map.TouchExtend=L.Handler.extend({initialize:function(n){this._map=n;this._container=n._container;this._pane=n._panes.overlayPane},addHooks:function(){L.DomEvent.on(this._container,"touchstart",this._onTouchStart,this);L.DomEvent.on(this._container,"touchend",this._onTouchEnd,this);L.DomEvent.on(this._container,"touchmove",this._onTouchMove,this);if(this._detectIE()){L.DomEvent.on(this._container,"MSPointerDown",this._onTouchStart,this);L.DomEvent.on(this._container,"MSPointerUp",this._onTouchEnd,this);L.DomEvent.on(this._container,"MSPointerMove",this._onTouchMove,this);L.DomEvent.on(this._container,"MSPointerCancel",this._onTouchCancel,this)}else{L.DomEvent.on(this._container,"touchcancel",this._onTouchCancel,this);L.DomEvent.on(this._container,"touchleave",this._onTouchLeave,this)}},removeHooks:function(){L.DomEvent.off(this._container,"touchstart",this._onTouchStart);L.DomEvent.off(this._container,"touchend",this._onTouchEnd);L.DomEvent.off(this._container,"touchmove",this._onTouchMove);this._detectIE()?(L.DomEvent.off(this._container,"MSPointerDowm",this._onTouchStart),L.DomEvent.off(this._container,"MSPointerUp",this._onTouchEnd),L.DomEvent.off(this._container,"MSPointerMove",this._onTouchMove),L.DomEvent.off(this._container,"MSPointerCancel",this._onTouchCancel)):(L.DomEvent.off(this._container,"touchcancel",this._onTouchCancel),L.DomEvent.off(this._container,"touchleave",this._onTouchLeave))},_touchEvent:function(n,t){var i={};if(typeof n.touches!="undefined"){if(!n.touches.length)return;i=n.touches[0]}else if(n.pointerType==="touch"){if(i=n,!this._filterClick(n))return}else return;var u=this._map.mouseEventToContainerPoint(i),r=this._map.mouseEventToLayerPoint(i),f=this._map.layerPointToLatLng(r);this._map.fire(t,{latlng:f,layerPoint:r,containerPoint:u,pageX:i.pageX,pageY:i.pageY,originalEvent:n})},_filterClick:function(n){var i=n.timeStamp||n.originalEvent.timeStamp,t=L.DomEvent._lastClick&&i-L.DomEvent._lastClick;return t&&t>100&&t<500||n.target._simulatedClick&&!n._simulated?(L.DomEvent.stop(n),!1):(L.DomEvent._lastClick=i,!0)},_onTouchStart:function(n){if(this._map._loaded)this._touchEvent(n,"touchstart")},_onTouchEnd:function(n){if(this._map._loaded)this._touchEvent(n,"touchend")},_onTouchCancel:function(n){if(this._map._loaded){var t="touchcancel";this._detectIE()&&(t="pointercancel");this._touchEvent(n,t)}},_onTouchLeave:function(n){if(this._map._loaded)this._touchEvent(n,"touchleave")},_onTouchMove:function(n){if(this._map._loaded)this._touchEvent(n,"touchmove")},_detectIE:function(){var n=window.navigator.userAgent,i=n.indexOf("MSIE "),u,r,t;return i>0?parseInt(n.substring(i+5,n.indexOf(".",i)),10):(u=n.indexOf("Trident/"),u>0)?(r=n.indexOf("rv:"),parseInt(n.substring(r+3,n.indexOf(".",r)),10)):(t=n.indexOf("Edge/"),t>0)?parseInt(n.substring(t+5,n.indexOf(".",t)),10):!1}});L.Map.addInitHook("addHandler","touchExtend",L.Map.TouchExtend);L.Marker.Touch=L.Marker.extend({_initInteraction:function(){return this.addInteractiveTarget?L.Marker.prototype._initInteraction.apply(this):this._initInteractionLegacy()},_initInteractionLegacy:function(){var n,t,i;if(this.options.clickable){n=this._icon;t=["dblclick","mousedown","mouseover","mouseout","contextmenu","touchstart","touchend","touchmove"];this._detectIE?t.concat(["MSPointerDown","MSPointerUp","MSPointerMove","MSPointerCancel"]):t.concat(["touchcancel"]);L.DomUtil.addClass(n,"leaflet-clickable");L.DomEvent.on(n,"click",this._onMouseClick,this);L.DomEvent.on(n,"keypress",this._onKeyPress,this);for(i=0;i<t.length;i++)L.DomEvent.on(n,t[i],this._fireMouseEvent,this);L.Handler.MarkerDrag&&(this.dragging=new L.Handler.MarkerDrag(this),this.options.draggable&&this.dragging.enable())}},_detectIE:function(){var n=window.navigator.userAgent,i=n.indexOf("MSIE "),u,r,t;return i>0?parseInt(n.substring(i+5,n.indexOf(".",i)),10):(u=n.indexOf("Trident/"),u>0)?(r=n.indexOf("rv:"),parseInt(n.substring(r+3,n.indexOf(".",r)),10)):(t=n.indexOf("Edge/"),t>0)?parseInt(n.substring(t+5,n.indexOf(".",t)),10):!1}});L.AreaSelect=L.Class.extend({includes:L.Mixin.Events,options:{width:200,height:300,keepAspectRatio:!1},initialize:function(n){L.Util.setOptions(this,n);this._width=this.options.width;this._height=this.options.height},addTo:function(n){return this.map=n,this._createElements(),this._render(),this},getBounds:function(){var n=this.map.getSize(),t=new L.Point,i=new L.Point,r,u;return i.x=Math.round((n.x-this._width)/2),t.y=Math.round((n.y-this._height)/2),t.x=n.x-i.x,i.y=n.y-t.y,r=this.map.containerPointToLatLng(i),u=this.map.containerPointToLatLng(t),new L.LatLngBounds(r,u)},remove:function(){this.map.off("moveend",this._onMapChange);this.map.off("zoomend",this._onMapChange);this.map.off("resize",this._onMapResize);this._container.parentNode.removeChild(this._container)},setDimensions:function(n){n&&(this._height=parseInt(n.height)||this._height,this._width=parseInt(n.width)||this._width,this._render(),this.fire("change"))},_createElements:function(){if(!this._container){this._container=L.DomUtil.create("div","leaflet-areaselect-container",this.map._controlContainer);this._topShade=L.DomUtil.create("div","leaflet-areaselect-shade leaflet-control",this._container);this._bottomShade=L.DomUtil.create("div","leaflet-areaselect-shade leaflet-control",this._container);this._leftShade=L.DomUtil.create("div","leaflet-areaselect-shade leaflet-control",this._container);this._rightShade=L.DomUtil.create("div","leaflet-areaselect-shade leaflet-control",this._container);this._nwHandle=L.DomUtil.create("div","leaflet-areaselect-handle leaflet-control",this._container);this._swHandle=L.DomUtil.create("div","leaflet-areaselect-handle leaflet-control",this._container);this._neHandle=L.DomUtil.create("div","leaflet-areaselect-handle leaflet-control",this._container);this._seHandle=L.DomUtil.create("div","leaflet-areaselect-handle leaflet-control",this._container);this._setUpHandlerEvents(this._nwHandle);this._setUpHandlerEvents(this._neHandle,-1,1);this._setUpHandlerEvents(this._swHandle,1,-1);this._setUpHandlerEvents(this._seHandle,-1,-1);this.map.on("moveend",this._onMapChange,this);this.map.on("zoomend",this._onMapChange,this);this.map.on("resize",this._onMapResize,this);this.fire("change")}},_setUpHandlerEvents:function(n,t,i){function u(f){function c(n){if(r.options.keepAspectRatio){var u=(r._height>=r._width?e.y:e.x/h)-30;r._height+=(o-n.originalEvent.pageY)*2*i;r._height=Math.max(30,r._height);r._height=Math.min(u,r._height);r._width=r._height*h}else r._width+=(s-n.originalEvent.pageX)*2*t,r._height+=(o-n.originalEvent.pageY)*2*i,r._width=Math.max(30,r._width),r._height=Math.max(30,r._height),r._width=Math.min(e.x-30,r._width),r._height=Math.min(e.y-30,r._height);s=n.originalEvent.pageX;o=n.originalEvent.pageY;r._render()}function l(){r.map.dragging.enable();L.DomEvent.removeListener(r.map,"mouseup",l);L.DomEvent.removeListener(r.map,"mousemove",c);L.DomEvent.addListener(n,"mousedown",u);r.fire("change")}f.stopPropagation();r.map.dragging.disable();L.DomEvent.removeListener(this,"mousedown",u);var s=f.pageX,o=f.pageY,h=r._width/r._height,e=r.map.getSize();L.DomEvent.addListener(r.map,"mousemove",c);L.DomEvent.addListener(r.map,"mouseup",l)}t=t||1;i=i||1;var r=this;L.DomEvent.addListener(n,"mousedown",u)},_onMapResize:function(){this._render()},_onMapChange:function(){this.fire("change")},_render:function(){function t(n,t,i){n.style.width=i?t.width:t.width+"px";n.style.height=t.height+"px";n.style.top=t.top+"px";n.style.left=t.left+"px";n.style.bottom=t.bottom+"px";n.style.right=t.right+"px"}var r=this.map.getSize(),u=Math.round(this._nwHandle.offsetWidth/2),n=Math.round((r.y-this._height)/2),i=Math.round((r.x-this._width)/2);t(this._topShade,{width:"100%",height:n,top:0,left:0},!0);t(this._bottomShade,{width:"100%",height:n,bottom:0,left:0},!0);t(this._leftShade,{width:i,height:r.y-n*2,top:n,left:0});t(this._rightShade,{width:i,height:r.y-n*2,top:n,right:0});t(this._nwHandle,{left:i-u,top:n-7});t(this._neHandle,{right:i-u,top:n-7});t(this._swHandle,{left:i-u,bottom:n-7});t(this._seHandle,{right:i-u,bottom:n-7})}});L.areaSelect=function(n){return new L.AreaSelect(n)};Wkt.Wkt.prototype.isRectangle=!1;Wkt.Wkt.prototype.trunc=function(n){for(var i=[],t=0;t<n.length;t+=1)Wkt.isArray(n[t])?i.push(this.trunc(n[t])):t!==0&&this.sameCoords(n[0],n[t])||i.push(n[t]);return i};Wkt.Wkt.prototype.construct={point:function(n,t){var i=t||this.components;return i instanceof Array&&(i=i[0]),L.marker(this.coordsToLatLng(i),n)},multipoint:function(n){for(var i=[],r=this.components,t=0;t<r.length;t+=1)i.push(this.construct.point.call(this,n,r[t]));return L.featureGroup(i,n)},linestring:function(n,t){var i=t||this.components,r=this.coordsToLatLngs(i);return L.polyline(r,n)},multilinestring:function(n){var i=this.components,t=this.coordsToLatLngs(i,1);return L.multiPolyline?L.multiPolyline(t,n):L.polyline(t,n)},polygon:function(n){var t=this.trunc(this.components),i=this.coordsToLatLngs(t,1);return L.polygon(i,n)},multipolygon:function(n){var i=this.trunc(this.components),t=this.coordsToLatLngs(i,2);return L.multiPolygon?L.multiPolygon(t,n):L.polygon(t,n)},geometrycollection:function(n){var i,t,r;for(i=this.trunc(this.components),r=[],t=0;t<this.components.length;t+=1)r.push(this.construct[i[t].type].call(this,i[t]));return L.featureGroup(r,n)}};L.Util.extend(Wkt.Wkt.prototype,{coordsToLatLngs:L.GeoJSON.coordsToLatLngs,coordsToLatLng:function(n,t){var i=t?n.x:n.y,r=t?n.y:n.x;return L.latLng(i,r,!0)}});Wkt.Wkt.prototype.deconstruct=function(n){var u,o,f,i,r,e,t;if(o=function(n){for(var i=[],t=0;t<n.length;t+=1)Wkt.isArray(n[t])?i.push(o(n[t])):i.push({x:n[t].lng,y:n[t].lat});return i},n.constructor===L.Marker||n.constructor===L.marker)return{type:"point",components:[{x:n.getLatLng().lng,y:n.getLatLng().lat}]};if(n.constructor===L.Rectangle||n.constructor===L.rectangle)return t=n.getBounds(),{type:"polygon",isRectangle:!0,components:[[{x:t.getSouthWest().lng,y:t.getNorthEast().lat},{x:t.getNorthEast().lng,y:t.getNorthEast().lat},{x:t.getNorthEast().lng,y:t.getSouthWest().lat},{x:t.getSouthWest().lng,y:t.getSouthWest().lat},{x:t.getSouthWest().lng,y:t.getNorthEast().lat}]]};if((n.constructor===L.Polyline||n.constructor===L.polyline)&&(r=[],t=n.getLatLngs(),!t[0].equals(t[t.length-1]))){for(i=0;i<t.length;i+=1)r.push({x:t[i].lng,y:t[i].lat});return{type:"linestring",components:r}}if(n.constructor===L.Polygon||n.constructor===L.polygon){for(e=[],r=[],t=n.getLatLngs(),i=0;i<n._latlngs.length;i+=1)r.push({x:t[i].lng,y:t[i].lat});if(r.push({x:t[0].lng,y:t[0].lat}),e.push(r),n._holes&&n._holes.length>0)for(r=o(n._holes),i=0;i<r.length;i++)r[i].push(r[i][0]),e.push(r[i]);return{type:"polygon",components:e}}if(n.constructor===L.MultiPolyline||n.constructor===L.MultiPolygon||n.constructor===L.LayerGroup||n.constructor===L.FeatureGroup){f=[];t=n._layers;for(u in t)t.hasOwnProperty(u)&&(t[u].getLatLngs||t[u].getLatLng)&&f.push(this.deconstruct(t[u]));return{type:function(){switch(n.constructor){case L.MultiPolyline:return"multilinestring";case L.MultiPolygon:return"multipolygon";case L.FeatureGroup:return function(){var t,i,r,u;i=!0;r=!0;u=!0;for(t in n._layers)n._layers.hasOwnProperty(t)&&(n._layers[t].constructor!==L.Marker&&(u=!1),n._layers[t].constructor!==L.Polyline&&(r=!1),n._layers[t].constructor!==L.Polygon&&(i=!1));return u?"multipoint":r?"multilinestring":i?"multipolygon":"geometrycollection"}();default:return"geometrycollection"}}(),components:function(){for(var t=[],n=0;n<f.length;n+=1)f[n].components&&t.push(f[n].components);return t}()}}n.constructor===L.Circle||n.constructor===L.circle?console.log("Deconstruction of L.Circle objects is not yet supported"):console.log("The passed object does not have any recognizable properties.")},function(n,t){typeof module=="object"&&typeof module.exports=="object"&&(exports=module.exports=t());typeof window=="object"&&(n.Terraformer=t())}(this,function(){function o(n){return Object.prototype.toString.call(n)==="[object Array]"}function gt(){var n=Array.prototype.slice.apply(arguments);typeof console!==undefined&&console.warn&&console.warn.apply(console,n)}function u(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i]);return n}function h(n){if(n.type)switch(n.type){case"Point":return[n.coordinates[0],n.coordinates[1],n.coordinates[0],n.coordinates[1]];case"MultiPoint":return nt(n.coordinates);case"LineString":return nt(n.coordinates);case"MultiLineString":return at(n.coordinates);case"Polygon":return at(n.coordinates);case"MultiPolygon":return ni(n.coordinates);case"Feature":return n.geometry?h(n.geometry):null;case"FeatureCollection":return ti(n);case"GeometryCollection":return ii(n);default:throw new Error("Unknown type: "+n.type);}return null}function at(n){for(var r=null,u=null,f=null,e=null,h,s,o=0;o<n.length;o++)for(h=n[o],s=0;s<h.length;s++){var c=h[s],t=c[0],i=c[1];r===null?r=t:t<r&&(r=t);u===null?u=t:t>u&&(u=t);f===null?f=i:i<f&&(f=i);e===null?e=i:i>e&&(e=i)}return[r,f,u,e]}function ni(n){for(var r=null,u=null,f=null,e=null,c,s,l,h,o=0;o<n.length;o++)for(c=n[o],s=0;s<c.length;s++)for(l=c[s],h=0;h<l.length;h++){var a=l[h],t=a[0],i=a[1];r===null?r=t:t<r&&(r=t);u===null?u=t:t>u&&(u=t);f===null?f=i:i<f&&(f=i);e===null?e=i:i>e&&(e=i)}return[r,f,u,e]}function nt(n){for(var r=null,u=null,f=null,e=null,o=0;o<n.length;o++){var s=n[o],t=s[0],i=s[1];r===null?r=t:t<r&&(r=t);u===null?u=t:t>u&&(u=t);f===null?f=i:i<f&&(f=i);e===null?e=i:i>e&&(e=i)}return[r,f,u,e]}function ti(n){for(var r=[],t,i=n.features.length-1;i>=0;i--)t=h(n.features[i].geometry),r.push([t[0],t[1]]),r.push([t[2],t[3]]);return nt(r)}function ii(n){for(var r=[],t,i=n.geometries.length-1;i>=0;i--)t=h(n.geometries[i]),r.push([t[0],t[1]]),r.push([t[2],t[3]]);return nt(r)}function vt(n){var t=h(n);return{x:t[0],y:t[1],w:Math.abs(t[0]-t[2]),h:Math.abs(t[1]-t[3])}}function rt(n){return n*kt}function ut(n){return n*dt}function yt(n,t){for(var i=0;i<n.length;i++)typeof n[i][0]=="number"&&(n[i]=t(n[i])),typeof n[i]=="object"&&(n[i]=yt(n[i],t));return n}function ft(n){var t=n[0],i=n[1];return[rt(t/d)-Math.floor((rt(t/d)+180)/360)*360,rt(Math.PI/2-2*Math.atan(Math.exp(-1*i/d)))]}function tt(n){var i=n[0],t=Math.max(Math.min(n[1],89.99999),-89.99999);return[ut(i)*d,d/2*Math.log((1+Math.sin(ut(t)))/(1-Math.sin(ut(t))))]}function p(n,t,i){var r,u;if(n.type==="Point")n.coordinates=t(n.coordinates);else if(n.type==="Feature")n.geometry=p(n.geometry,t,!0);else if(n.type==="FeatureCollection")for(r=0;r<n.features.length;r++)n.features[r]=p(n.features[r],t,!0);else if(n.type==="GeometryCollection")for(u=0;u<n.geometries.length;u++)n.geometries[u]=p(n.geometries[u],t,!0);else n.coordinates=yt(n.coordinates,t);return i||t===tt&&(n.crs=lt),t===ft&&delete n.crs,n}function et(n){return p(n,tt)}function it(n){return p(n,ft)}function ri(n,t){return n<t?-1:n>t?1:0}function ot(n,t){return n[0]>t[0]?-1:n[0]<t[0]?1:n[1]>t[1]?-1:n[1]<t[1]?1:0}function ui(n,t,i){return ri((t[0]-n[0])*(i[1]-n[1])-(i[0]-n[0])*(t[1]-n[1]),0)}function pt(n,t){var i=t[0]-n[0],r=t[1]-n[1];return i*i+r*r}function fi(n,t){var i=t,r,u;for(r in n)u=ui(t,i,n[r]),(u===-1||u===0&&pt(t,n[r])>pt(t,i))&&(i=n[r]);return i}function wt(n){var t,i,r;if(n.length===0)return[];if(n.length===1)return n;for(t=[n.sort(ot)[0]],i=0;i<t.length;i++)r=fi(n,t[i]),r!==t[0]&&t.push(r);return t}function ei(n){for(var u,t=0;t<n.length-3;t++){var i=n[t],e=n[t+1],o=n[t+2],r=[e[0]-i[0],e[1]-i[1]],f=o[0]*r[1]-o[1]*r[0]+r[0]*i[1]-r[1]*i[0];if(t===0)u=f<0?!0:!1;else if(u&&f>0||!u&&f<0)return!1}return!0}function g(n,t){for(var u=!1,i=-1,f=n.length,r=f-1;++i<f;r=i)(n[i][1]<=t[1]&&t[1]<n[r][1]||n[r][1]<=t[1]&&t[1]<n[i][1])&&t[0]<(n[r][0]-n[i][0])*(t[1]-n[i][1])/(n[r][1]-n[i][1])+n[i][0]&&(u=!u);return u}function w(n,t){if(n&&n.length){if(n.length===1)return g(n[0],t);if(g(n[0],t)){for(var i=1;i<n.length;i++)if(g(n[i],t))return!1;return!0}return!1}return!1}function oi(n,t,i,r){var o=(r[0]-i[0])*(n[1]-i[1])-(r[1]-i[1])*(n[0]-i[0]),s=(t[0]-n[0])*(n[1]-i[1])-(t[1]-n[1])*(n[0]-i[0]),u=(r[1]-i[1])*(t[0]-n[0])-(r[0]-i[0])*(t[1]-n[1]),f,e;return u!==0&&(f=o/u,e=s/u,0<=f&&f<=1&&0<=e&&e<=1)?!0:!1}function bt(n){return!isNaN(parseFloat(n))&&isFinite(n)}function c(n,t){var i,r,u,f;if(bt(n[0][0])){if(bt(t[0][0])){for(i=0;i<n.length-1;i++)for(r=0;r<t.length-1;r++)if(oi(n[i],n[i+1],t[r],t[r+1]))return!0}else for(u=0;u<t.length;u++)if(c(n,t[u]))return!0}else for(f=0;f<n.length;f++)if(c(n[f],t))return!0;return!1}function b(n){for(var r=[],t,i=0;i<n.length;i++)t=n[i].slice(),st(t[0],t[t.length-1])===!1&&t.push(t[0]),r.push(t);return r}function st(n,t){for(var i=0;i<n.length;i++)if(n[i]!==t[i])return!1;return!0}function ht(n,t){var r,f,i,u;if(n.length!==t.length)return!1;for(r=n.slice().sort(ot),f=t.slice().sort(ot),i=0;i<r.length;i++){if(r[i].length!==f[i].length)return!1;for(u=0;u<r.length;u++)if(r[i][u]!==f[i][u])return!1}return!0}function t(n){if(n)switch(n.type){case"Point":return new k(n);case"MultiPoint":return new f(n);case"LineString":return new r(n);case"MultiLineString":return new l(n);case"Polygon":return new i(n);case"MultiPolygon":return new s(n);case"Feature":return new a(n);case"FeatureCollection":return new v(n);case"GeometryCollection":return new y(n);default:throw new Error("Unknown type: "+n.type);}}function k(n){var t=Array.prototype.slice.call(arguments);if(n&&n.type==="Point"&&n.coordinates)u(this,n);else if(n&&o(n))this.coordinates=n;else if(t.length>=2)this.coordinates=t;else throw"Terraformer: invalid input for Terraformer.Point";this.type="Point"}function f(n){if(n&&n.type==="MultiPoint"&&n.coordinates)u(this,n);else if(o(n))this.coordinates=n;else throw"Terraformer: invalid input for Terraformer.MultiPoint";this.type="MultiPoint"}function r(n){if(n&&n.type==="LineString"&&n.coordinates)u(this,n);else if(o(n))this.coordinates=n;else throw"Terraformer: invalid input for Terraformer.LineString";this.type="LineString"}function l(n){if(n&&n.type==="MultiLineString"&&n.coordinates)u(this,n);else if(o(n))this.coordinates=n;else throw"Terraformer: invalid input for Terraformer.MultiLineString";this.type="MultiLineString"}function i(n){if(n&&n.type==="Polygon"&&n.coordinates)u(this,n);else if(o(n))this.coordinates=n;else throw"Terraformer: invalid input for Terraformer.Polygon";this.type="Polygon"}function s(n){if(n&&n.type==="MultiPolygon"&&n.coordinates)u(this,n);else if(o(n))this.coordinates=n;else throw"Terraformer: invalid input for Terraformer.MultiPolygon";this.type="MultiPolygon"}function a(n){if(n&&n.type==="Feature")u(this,n);else if(n&&n.type&&n.coordinates)this.geometry=n;else throw"Terraformer: invalid input for Terraformer.Feature";this.type="Feature"}function v(n){if(n&&n.type==="FeatureCollection"&&n.features)u(this,n);else if(o(n))this.features=n;else throw"Terraformer: invalid input for Terraformer.FeatureCollection";this.type="FeatureCollection"}function y(n){if(n&&n.type==="GeometryCollection"&&n.geometries)u(this,n);else if(o(n))this.geometries=n;else if(n.coordinates&&n.type)this.type="GeometryCollection",this.geometries=[n];else throw"Terraformer: invalid input for Terraformer.GeometryCollection";this.type="GeometryCollection"}function ct(n,t,i){for(var e=tt(n),o=i||64,r={type:"Polygon",coordinates:[[]]},f,u=1;u<=o;u++)f=u*(360/o)*Math.PI/180,r.coordinates[0].push([e[0]+t*Math.cos(f),e[1]+t*Math.sin(f)]);return r.coordinates=b(r.coordinates),it(r)}function e(n,t,i){var r=i||64,f=t||250;if(!n||n.length<2||!f||!r)throw new Error("Terraformer: missing parameter for Terraformer.Circle");u(this,new a({type:"Feature",geometry:ct(n,f,r),properties:{radius:f,center:n,steps:r}}))}var n={},d=6378137,kt=57.295779513082323,dt=.017453292519943,lt={type:"link",properties:{href:"http://spatialreference.org/ref/sr-org/6928/ogcwkt/",type:"ogcwkt"}},si=["length"];return t.prototype.toMercator=function(){return et(this)},t.prototype.toGeographic=function(){return it(this)},t.prototype.envelope=function(){return vt(this)},t.prototype.bbox=function(){return h(this)},t.prototype.convexHull=function(){var r=[],n,u,f;if(this.type==="Point")return null;if(this.type==="LineString"||this.type==="MultiPoint")if(this.coordinates&&this.coordinates.length>=3)r=this.coordinates;else return null;else if(this.type==="Polygon"||this.type==="MultiLineString")if(this.coordinates&&this.coordinates.length>0){for(n=0;n<this.coordinates.length;n++)r=r.concat(this.coordinates[n]);if(r.length<3)return null}else return null;else if(this.type==="MultiPolygon")if(this.coordinates&&this.coordinates.length>0){for(n=0;n<this.coordinates.length;n++)for(u=0;u<this.coordinates[n].length;u++)r=r.concat(this.coordinates[n][u]);if(r.length<3)return null}else return null;else if(this.type==="Feature")return f=new t(this.geometry),f.convexHull();return new i({type:"Polygon",coordinates:b([wt(r)])})},t.prototype.toJSON=function(){var t={},n;for(n in this)this.hasOwnProperty(n)&&si.indexOf(n)===-1&&(t[n]=this[n]);return t.bbox=h(this),t},t.prototype.contains=function(n){return new t(n).within(this)},t.prototype.within=function(n){var u,i,f,e,o,s,h,l,a;if(n.type==="Feature"&&(n=n.geometry),n.type==="Point"&&this.type==="Point")return st(this.coordinates,n.coordinates);if(n.type==="MultiLineString"&&this.type==="Point")for(i=0;i<n.coordinates.length;i++)if(e={type:"LineString",coordinates:n.coordinates[i]},this.within(e))return!0;if((n.type==="LineString"||n.type==="MultiPoint")&&this.type==="Point")for(i=0;i<n.coordinates.length;i++){if(this.coordinates.length!==n.coordinates[i].length)return!1;if(st(this.coordinates,n.coordinates[i]))return!0}if(n.type==="Polygon"){if(this.type==="Polygon"){if(n.coordinates.length===this.coordinates.length)for(i=0;i<this.coordinates.length;i++)if(ht(this.coordinates[i],n.coordinates[i]))return!0;return this.coordinates.length&&w(n.coordinates,this.coordinates[0][0])?!c(b(this.coordinates),b(n.coordinates)):!1}if(this.type==="Point")return w(n.coordinates,this.coordinates);if(this.type==="LineString"||this.type==="MultiPoint"){if(!this.coordinates||this.coordinates.length===0)return!1;for(i=0;i<this.coordinates.length;i++)if(w(n.coordinates,this.coordinates[i])===!1)return!1;return!0}if(this.type==="MultiLineString"){for(i=0;i<this.coordinates.length;i++)if(o=new r(this.coordinates[i]),o.within(n)===!1)return f++,!1;return!0}if(this.type==="MultiPolygon"){for(i=0;i<this.coordinates.length;i++)if(s=new t({type:"Polygon",coordinates:this.coordinates[i]}),s.within(n)===!1)return!1;return!0}}if(n.type==="MultiPolygon"){if(this.type==="Point"){if(n.coordinates.length)for(i=0;i<n.coordinates.length;i++)if(u=n.coordinates[i],w(u,this.coordinates)&&c([this.coordinates],n.coordinates)===!1)return!0;return!1}if(this.type==="Polygon"){for(i=0;i<this.coordinates.length;i++)if(n.coordinates[i].length===this.coordinates.length)for(j=0;j<this.coordinates.length;j++)if(ht(this.coordinates[j],n.coordinates[i][j]))return!0;if(c(this.coordinates,n.coordinates)===!1&&n.coordinates.length){for(i=0;i<n.coordinates.length;i++)u=n.coordinates[i],f=w(u,this.coordinates[0][0])===!1?!1:!0;return f}}else if(this.type==="LineString"||this.type==="MultiPoint")for(i=0;i<n.coordinates.length;i++)return(h={type:"Polygon",coordinates:n.coordinates[i]},this.within(h))?!0:!1;else{if(this.type==="MultiLineString"){for(i=0;i<this.coordinates.length;i++)if(l=new r(this.coordinates[i]),l.within(n)===!1)return!1;return!0}if(this.type==="MultiPolygon"){for(i=0;i<n.coordinates.length;i++)if(a={type:"Polygon",coordinates:n.coordinates[i]},this.within(a)===!1)return!1;return!0}}}return!1},t.prototype.intersects=function(n){var i,r;return(n.type==="Feature"&&(n=n.geometry),i=new t(n),this.within(n)||i.within(this))?!0:this.type!=="Point"&&this.type!=="MultiPoint"&&n.type!=="Point"&&n.type!=="MultiPoint"?c(this.coordinates,n.coordinates):this.type==="Feature"?(r=new t(this.geometry),r.intersects(n)):(gt("Type "+this.type+" to "+n.type+" intersection is not supported by intersects"),!1)},k.prototype=new t,k.prototype.constructor=k,f.prototype=new t,f.prototype.constructor=f,f.prototype.forEach=function(n){for(var t=0;t<this.coordinates.length;t++)n.apply(this,[this.coordinates[t],t,this.coordinates]);return this},f.prototype.addPoint=function(n){return this.coordinates.push(n),this},f.prototype.insertPoint=function(n,t){return this.coordinates.splice(t,0,n),this},f.prototype.removePoint=function(n){return typeof n=="number"?this.coordinates.splice(n,1):this.coordinates.splice(this.coordinates.indexOf(n),1),this},f.prototype.get=function(n){return new k(this.coordinates[n])},r.prototype=new t,r.prototype.constructor=r,r.prototype.addVertex=function(n){return this.coordinates.push(n),this},r.prototype.insertVertex=function(n,t){return this.coordinates.splice(t,0,n),this},r.prototype.removeVertex=function(n){return this.coordinates.splice(n,1),this},l.prototype=new t,l.prototype.constructor=l,l.prototype.forEach=function(n){for(var t=0;t<this.coordinates.length;t++)n.apply(this,[this.coordinates[t],t,this.coordinates])},l.prototype.get=function(n){return new r(this.coordinates[n])},i.prototype=new t,i.prototype.constructor=i,i.prototype.addVertex=function(n){return this.insertVertex(n,this.coordinates[0].length-1),this},i.prototype.insertVertex=function(n,t){return this.coordinates[0].splice(t,0,n),this},i.prototype.removeVertex=function(n){return this.coordinates[0].splice(n,1),this},i.prototype.close=function(){this.coordinates=b(this.coordinates)},i.prototype.hasHoles=function(){return this.coordinates.length>1},i.prototype.holes=function(){if(holes=[],this.hasHoles())for(var n=1;n<this.coordinates.length;n++)holes.push(new i([this.coordinates[n]]));return holes},s.prototype=new t,s.prototype.constructor=s,s.prototype.forEach=function(n){for(var t=0;t<this.coordinates.length;t++)n.apply(this,[this.coordinates[t],t,this.coordinates])},s.prototype.get=function(n){return new i(this.coordinates[n])},s.prototype.close=function(){var n=[];return this.forEach(function(t){n.push(b(t))}),this.coordinates=n,this},a.prototype=new t,a.prototype.constructor=a,v.prototype=new t,v.prototype.constructor=v,v.prototype.forEach=function(n){for(var t=0;t<this.features.length;t++)n.apply(this,[this.features[t],t,this.features])},v.prototype.get=function(n){var t;return this.forEach(function(i){i.id===n&&(t=i)}),new a(t)},y.prototype=new t,y.prototype.constructor=y,y.prototype.forEach=function(n){for(var t=0;t<this.geometries.length;t++)n.apply(this,[this.geometries[t],t,this.geometries])},y.prototype.get=function(n){return new t(this.geometries[n])},e.prototype=new t,e.prototype.constructor=e,e.prototype.recalculate=function(){return this.geometry=ct(this.properties.center,this.properties.radius,this.properties.steps),this},e.prototype.center=function(n){return n&&(this.properties.center=n,this.recalculate()),this.properties.center},e.prototype.radius=function(n){return n&&(this.properties.radius=n,this.recalculate()),this.properties.radius},e.prototype.steps=function(n){return n&&(this.properties.steps=n,this.recalculate()),this.properties.steps},e.prototype.toJSON=function(){return t.prototype.toJSON.call(this)},n.Primitive=t,n.Point=k,n.MultiPoint=f,n.LineString=r,n.MultiLineString=l,n.Polygon=i,n.MultiPolygon=s,n.Feature=a,n.FeatureCollection=v,n.GeometryCollection=y,n.Circle=e,n.toMercator=et,n.toGeographic=it,n.Tools={},n.Tools.positionToMercator=tt,n.Tools.positionToGeographic=ft,n.Tools.applyConverter=p,n.Tools.toMercator=et,n.Tools.toGeographic=it,n.Tools.createCircle=ct,n.Tools.calculateBounds=h,n.Tools.calculateEnvelope=vt,n.Tools.coordinatesContainPoint=g,n.Tools.polygonContainsPoint=w,n.Tools.arraysIntersectArrays=c,n.Tools.coordinatesContainPoint=g,n.Tools.coordinatesEqual=ht,n.Tools.convexHull=wt,n.Tools.isConvex=ei,n.MercatorCRS=lt,n.GeographicCRS={type:"link",properties:{href:"http://spatialreference.org/ref/epsg/4326/ogcwkt/",type:"ogcwkt"}},n}),function(n,t){if(typeof module=="object"&&typeof module.exports=="object")exports=module.exports=t(require("terraformer"));else if(typeof navigator=="object"){if(!n.Terraformer)throw new Error("Terraformer.WKT requires the core Terraformer library. http://github.com/esri/terraformer");n.Terraformer.WKT=t(n.Terraformer)}}(this,function(n){function r(n){this.data=[n];this.type="PointArray"}function o(n){this.data=n;this.type="Ring"}function f(n){this.data=[n];this.type="RingList"}function e(n){this.data=[n];this.type="PolygonList"}function s(t){var r;try{r=i.parse(t)}catch(u){throw Error("Unable to parse: "+u);}return n.Primitive(r)}function u(n){for(var i=[],t=0;t<n.length;t++)i.push(n[t].join(" "));return""+("("+i.join(", ")+")")}function h(n){var t="POINT ";return n.coordinates===undefined||n.coordinates.length===0?t+"EMPTY":(n.coordinates.length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates.length===4&&(t+="ZM "),t+("("+n.coordinates.join(" ")+")"))}function c(n){var t="LINESTRING ";return n.coordinates===undefined||n.coordinates.length===0||n.coordinates[0].length===0?t+"EMPTY":(n.coordinates[0].length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates[0].length===4&&(t+="ZM "),t+u(n.coordinates))}function l(n){var t="POLYGON ",r,i;if(n.coordinates===undefined||n.coordinates.length===0||n.coordinates[0].length===0)return t+"EMPTY";for(n.coordinates[0][0].length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates[0][0].length===4&&(t+="ZM "),t+="(",r=[],i=0;i<n.coordinates.length;i++)r.push(u(n.coordinates[i]));return t+=r.join(", "),t+")"}function a(n){var t="MULTIPOINT ";return n.coordinates===undefined||n.coordinates.length===0||n.coordinates[0].length===0?t+"EMPTY":(n.coordinates[0].length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates[0].length===4&&(t+="ZM "),t+u(n.coordinates))}function v(n){var t="MULTILINESTRING ",r,i;if(n.coordinates===undefined||n.coordinates.length===0||n.coordinates[0].length===0)return t+"EMPTY";for(n.coordinates[0][0].length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates[0][0].length===4&&(t+="ZM "),t+="(",r=[],i=0;i<n.coordinates.length;i++)r.push(u(n.coordinates[i]));return t+=r.join(", "),t+")"}function y(n){var t="MULTIPOLYGON ",e,i,r,o,f;if(n.coordinates===undefined||n.coordinates.length===0||n.coordinates[0].length===0)return t+"EMPTY";for(n.coordinates[0][0][0].length===3?t+=n.properties&&n.properties.m===!0?"M ":"Z ":n.coordinates[0][0][0].length===4&&(t+="ZM "),t+="(",e=[],i=0;i<n.coordinates.length;i++){for(r="(",o=[],f=0;f<n.coordinates[i].length;f++)o.push(u(n.coordinates[i][f]));r+=o.join(", ");r+=")";e.push(r)}return t+=e.join(", "),t+")"}function p(n){switch(n.type){case"Point":return h(n);case"LineString":return c(n);case"Polygon":return l(n);case"MultiPoint":return a(n);case"MultiLineString":return v(n);case"MultiPolygon":return y(n);default:throw Error("Unknown Type: "+n.type);}}var t={},i=function(){function t(){this.yy={}}var n={trace:function(){},yy:{},symbols_:{error:2,expressions:3,point:4,EOF:5,linestring:6,polygon:7,multipoint:8,multilinestring:9,multipolygon:10,coordinate:11,DOUBLE_TOK:12,ptarray:13,COMMA:14,ring_list:15,ring:16,"(":17,")":18,POINT:19,Z:20,ZM:21,M:22,EMPTY:23,point_untagged:24,polygon_list:25,polygon_untagged:26,point_list:27,LINESTRING:28,POLYGON:29,MULTIPOINT:30,MULTILINESTRING:31,MULTIPOLYGON:32,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",12:"DOUBLE_TOK",14:"COMMA",17:"(",18:")",19:"POINT",20:"Z",21:"ZM",22:"M",23:"EMPTY",28:"LINESTRING",29:"POLYGON",30:"MULTIPOINT",31:"MULTILINESTRING",32:"MULTIPOLYGON"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[3,2],[3,2],[11,2],[11,3],[11,4],[13,3],[13,1],[15,3],[15,1],[16,3],[4,4],[4,5],[4,5],[4,5],[4,2],[24,1],[24,3],[25,3],[25,1],[26,3],[27,3],[27,1],[6,4],[6,5],[6,5],[6,5],[6,2],[7,4],[7,5],[7,5],[7,5],[7,2],[8,4],[8,5],[8,5],[8,5],[8,2],[9,4],[9,5],[9,5],[9,5],[9,2],[10,4],[10,5],[10,5],[10,5],[10,2]],performAction:function(n,t,i,u,s,h){var c=h.length-1;switch(s){case 1:return h[c-1];case 2:return h[c-1];case 3:return h[c-1];case 4:return h[c-1];case 5:return h[c-1];case 6:return h[c-1];case 7:this.$=new r([Number(h[c-1]),Number(h[c])]);break;case 8:this.$=new r([Number(h[c-2]),Number(h[c-1]),Number(h[c])]);break;case 9:this.$=new r([Number(h[c-3]),Number(h[c-2]),Number(h[c-1]),Number(h[c])]);break;case 10:this.$=h[c-2].addPoint(h[c]);break;case 11:this.$=h[c];break;case 12:this.$=h[c-2].addRing(h[c]);break;case 13:this.$=new f(h[c]);break;case 14:this.$=new o(h[c-1]);break;case 15:this.$={type:"Point",coordinates:h[c-1].data[0]};break;case 16:this.$={type:"Point",coordinates:h[c-1].data[0],properties:{z:!0}};break;case 17:this.$={type:"Point",coordinates:h[c-1].data[0],properties:{z:!0,m:!0}};break;case 18:this.$={type:"Point",coordinates:h[c-1].data[0],properties:{m:!0}};break;case 19:this.$={type:"Point",coordinates:[]};break;case 20:this.$=h[c];break;case 21:this.$=h[c-1];break;case 22:this.$=h[c-2].addPolygon(h[c]);break;case 23:this.$=new e(h[c]);break;case 24:this.$=h[c-1];break;case 25:this.$=h[c-2].addPoint(h[c]);break;case 26:this.$=h[c];break;case 27:this.$={type:"LineString",coordinates:h[c-1].data};break;case 28:this.$={type:"LineString",coordinates:h[c-1].data,properties:{z:!0}};break;case 29:this.$={type:"LineString",coordinates:h[c-1].data,properties:{m:!0}};break;case 30:this.$={type:"LineString",coordinates:h[c-1].data,properties:{z:!0,m:!0}};break;case 31:this.$={type:"LineString",coordinates:[]};break;case 32:this.$={type:"Polygon",coordinates:h[c-1].toJSON()};break;case 33:this.$={type:"Polygon",coordinates:h[c-1].toJSON(),properties:{z:!0}};break;case 34:this.$={type:"Polygon",coordinates:h[c-1].toJSON(),properties:{m:!0}};break;case 35:this.$={type:"Polygon",coordinates:h[c-1].toJSON(),properties:{z:!0,m:!0}};break;case 36:this.$={type:"Polygon",coordinates:[]};break;case 37:this.$={type:"MultiPoint",coordinates:h[c-1].data};break;case 38:this.$={type:"MultiPoint",coordinates:h[c-1].data,properties:{z:!0}};break;case 39:this.$={type:"MultiPoint",coordinates:h[c-1].data,properties:{m:!0}};break;case 40:this.$={type:"MultiPoint",coordinates:h[c-1].data,properties:{z:!0,m:!0}};break;case 41:this.$={type:"MultiPoint",coordinates:[]};break;case 42:this.$={type:"MultiLineString",coordinates:h[c-1].toJSON()};break;case 43:this.$={type:"MultiLineString",coordinates:h[c-1].toJSON(),properties:{z:!0}};break;case 44:this.$={type:"MultiLineString",coordinates:h[c-1].toJSON(),properties:{m:!0}};break;case 45:this.$={type:"MultiLineString",coordinates:h[c-1].toJSON(),properties:{z:!0,m:!0}};break;case 46:this.$={type:"MultiLineString",coordinates:[]};break;case 47:this.$={type:"MultiPolygon",coordinates:h[c-1].toJSON()};break;case 48:this.$={type:"MultiPolygon",coordinates:h[c-1].toJSON(),properties:{z:!0}};break;case 49:this.$={type:"MultiPolygon",coordinates:h[c-1].toJSON(),properties:{m:!0}};break;case 50:this.$={type:"MultiPolygon",coordinates:h[c-1].toJSON(),properties:{z:!0,m:!0}};break;case 51:this.$={type:"MultiPolygon",coordinates:[]}}},table:[{3:1,4:2,6:3,7:4,8:5,9:6,10:7,19:[1,8],28:[1,9],29:[1,10],30:[1,11],31:[1,12],32:[1,13]},{1:[3]},{5:[1,14]},{5:[1,15]},{5:[1,16]},{5:[1,17]},{5:[1,18]},{5:[1,19]},{17:[1,20],20:[1,21],21:[1,22],22:[1,23],23:[1,24]},{17:[1,25],20:[1,26],21:[1,28],22:[1,27],23:[1,29]},{17:[1,30],20:[1,31],21:[1,33],22:[1,32],23:[1,34]},{17:[1,35],20:[1,36],21:[1,38],22:[1,37],23:[1,39]},{17:[1,40],20:[1,41],21:[1,43],22:[1,42],23:[1,44]},{17:[1,45],20:[1,46],21:[1,48],22:[1,47],23:[1,49]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{11:51,12:[1,52],13:50},{17:[1,53]},{17:[1,54]},{17:[1,55]},{5:[2,19]},{11:58,12:[1,52],17:[1,59],24:57,27:56},{17:[1,60]},{17:[1,61]},{17:[1,62]},{5:[2,31]},{15:63,16:64,17:[1,65]},{17:[1,66]},{17:[1,67]},{17:[1,68]},{5:[2,36]},{11:58,12:[1,52],17:[1,59],24:57,27:69},{17:[1,70]},{17:[1,71]},{17:[1,72]},{5:[2,41]},{15:73,16:64,17:[1,65]},{17:[1,74]},{17:[1,75]},{17:[1,76]},{5:[2,46]},{17:[1,79],25:77,26:78},{17:[1,80]},{17:[1,81]},{17:[1,82]},{5:[2,51]},{14:[1,84],18:[1,83]},{14:[2,11],18:[2,11]},{12:[1,85]},{11:51,12:[1,52],13:86},{11:51,12:[1,52],13:87},{11:51,12:[1,52],13:88},{14:[1,90],18:[1,89]},{14:[2,26],18:[2,26]},{14:[2,20],18:[2,20]},{11:91,12:[1,52]},{11:58,12:[1,52],17:[1,59],24:57,27:92},{11:58,12:[1,52],17:[1,59],24:57,27:93},{11:58,12:[1,52],17:[1,59],24:57,27:94},{14:[1,96],18:[1,95]},{14:[2,13],18:[2,13]},{11:51,12:[1,52],13:97},{15:98,16:64,17:[1,65]},{15:99,16:64,17:[1,65]},{15:100,16:64,17:[1,65]},{14:[1,90],18:[1,101]},{11:58,12:[1,52],17:[1,59],24:57,27:102},{11:58,12:[1,52],17:[1,59],24:57,27:103},{11:58,12:[1,52],17:[1,59],24:57,27:104},{14:[1,96],18:[1,105]},{15:106,16:64,17:[1,65]},{15:107,16:64,17:[1,65]},{15:108,16:64,17:[1,65]},{14:[1,110],18:[1,109]},{14:[2,23],18:[2,23]},{15:111,16:64,17:[1,65]},{17:[1,79],25:112,26:78},{17:[1,79],25:113,26:78},{17:[1,79],25:114,26:78},{5:[2,15]},{11:115,12:[1,52]},{12:[1,116],14:[2,7],18:[2,7]},{14:[1,84],18:[1,117]},{14:[1,84],18:[1,118]},{14:[1,84],18:[1,119]},{5:[2,27]},{11:58,12:[1,52],17:[1,59],24:120},{18:[1,121]},{14:[1,90],18:[1,122]},{14:[1,90],18:[1,123]},{14:[1,90],18:[1,124]},{5:[2,32]},{16:125,17:[1,65]},{14:[1,84],18:[1,126]},{14:[1,96],18:[1,127]},{14:[1,96],18:[1,128]},{14:[1,96],18:[1,129]},{5:[2,37]},{14:[1,90],18:[1,130]},{14:[1,90],18:[1,131]},{14:[1,90],18:[1,132]},{5:[2,42]},{14:[1,96],18:[1,133]},{14:[1,96],18:[1,134]},{14:[1,96],18:[1,135]},{5:[2,47]},{17:[1,79],26:136},{14:[1,96],18:[1,137]},{14:[1,110],18:[1,138]},{14:[1,110],18:[1,139]},{14:[1,110],18:[1,140]},{14:[2,10],18:[2,10]},{12:[1,141],14:[2,8],18:[2,8]},{5:[2,16]},{5:[2,17]},{5:[2,18]},{14:[2,25],18:[2,25]},{14:[2,21],18:[2,21]},{5:[2,28]},{5:[2,29]},{5:[2,30]},{14:[2,12],18:[2,12]},{14:[2,14],18:[2,14]},{5:[2,33]},{5:[2,34]},{5:[2,35]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,43]},{5:[2,44]},{5:[2,45]},{14:[2,22],18:[2,22]},{14:[2,24],18:[2,24]},{5:[2,48]},{5:[2,49]},{5:[2,50]},{14:[2,9],18:[2,9]}],defaultActions:{14:[2,1],15:[2,2],16:[2,3],17:[2,4],18:[2,5],19:[2,6],24:[2,19],29:[2,31],34:[2,36],39:[2,41],44:[2,46],49:[2,51],83:[2,15],89:[2,27],95:[2,32],101:[2,37],105:[2,42],109:[2,47],117:[2,16],118:[2,17],119:[2,18],122:[2,28],123:[2,29],124:[2,30],127:[2,33],128:[2,34],129:[2,35],130:[2,38],131:[2,39],132:[2,40],133:[2,43],134:[2,44],135:[2,45],138:[2,48],139:[2,49],140:[2,50]},parseError:function(n){throw new Error(n);},parse:function(n){function it(){var n;return n=k.lexer.lex()||1,typeof n!="number"&&(n=k.symbols_[n]||n),n}var k=this,r=[0],f=[null],t=[],h=this.table,d="",c=0,g=0,y=0,l,nt,i,p,o,u,w,s,a,e,tt,v,b;for(this.lexer.setInput(n),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc=="undefined"&&(this.lexer.yylloc={}),l=this.lexer.yylloc,t.push(l),nt=this.lexer.options&&this.lexer.options.ranges,typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError),s={};;){if(o=r[r.length-1],this.defaultActions[o]?u=this.defaultActions[o]:((i===null||typeof i=="undefined")&&(i=it()),u=h[o]&&h[o][i]),(typeof u=="undefined"||!u.length||!u[0])&&(b="",!y)){v=[];for(a in h[o])this.terminals_[a]&&a>2&&v.push("'"+this.terminals_[a]+"'");b=this.lexer.showPosition?"Parse error on line "+(c+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+v.join(", ")+", got '"+(this.terminals_[i]||i)+"'":"Parse error on line "+(c+1)+": Unexpected "+(i==1?"end of input":"'"+(this.terminals_[i]||i)+"'");this.parseError(b,{text:this.lexer.match,token:this.terminals_[i]||i,line:this.lexer.yylineno,loc:l,expected:v})}if(u[0]instanceof Array&&u.length>1)throw new Error("Parse Error: multiple actions possible at state: "+o+", token: "+i);switch(u[0]){case 1:r.push(i);f.push(this.lexer.yytext);t.push(this.lexer.yylloc);r.push(u[1]);i=null;p?(i=p,p=null):(g=this.lexer.yyleng,d=this.lexer.yytext,c=this.lexer.yylineno,l=this.lexer.yylloc,y>0&&y--);break;case 2:if(e=this.productions_[u[1]][1],s.$=f[f.length-e],s._$={first_line:t[t.length-(e||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(e||1)].first_column,last_column:t[t.length-1].last_column},nt&&(s._$.range=[t[t.length-(e||1)].range[0],t[t.length-1].range[1]]),w=this.performAction.call(s,d,g,c,this.yy,u[1],f,t),typeof w!="undefined")return w;e&&(r=r.slice(0,-2*e),f=f.slice(0,-1*e),t=t.slice(0,-1*e));r.push(this.productions_[u[1]][0]);f.push(s.$);t.push(s._$);tt=h[r[r.length-2]][r[r.length-1]];r.push(tt);break;case 3:return!0}}return!0}},i;return undefined,i=function(){var n={EOF:1,parseError:function(n,t){if(this.yy.parser)this.yy.parser.parseError(n,t);else throw new Error(n);},setInput:function(n){return this._input=n,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var n=this._input[0],t;return this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n,t=n.match(/(?:\r\n?|\n).*/g),t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},unput:function(n){var i=n.length,t=n.split(/(?:\r\n?|\n)/g),r,u;return this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i-1),this.offset-=i,r=this.match.split(/(?:\r\n?|\n)/g),this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),t.length-1&&(this.yylineno-=t.length-1),u=this.yylloc.range,this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:t?(t.length===r.length?this.yylloc.first_column:0)+r[r.length-t.length].length-t[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-i]),this},more:function(){return this._more=!0,this},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var n=this.pastInput(),t=new Array(n.length+1).join("-");return n+this.upcomingInput()+"\n"+t+"^"},next:function(){var f,n,r,e,t,u,i;if(this.done)return this.EOF;for(this._input||(this.done=!0),this._more||(this.yytext="",this.match=""),u=this._currentRules(),i=0;i<u.length;i++)if(r=this._input.match(this.rules[u[i]]),r&&(!n||r[0].length>n[0].length)&&(n=r,e=i,!this.options.flex))break;return n?(t=n[0].match(/(?:\r\n?|\n).*/g),t&&(this.yylineno+=t.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:t?t[t.length-1].length-t[t.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+n[0].length},this.yytext+=n[0],this.match+=n[0],this.matches=n,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(n[0].length),this.matched+=n[0],f=this.performAction.call(this,this.yy,this,u[e],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)?f:void 0:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var n=this.next();return typeof n!="undefined"?n:this.lex()},begin:function(n){this.conditionStack.push(n)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(n){this.begin(n)}};return n.options={},n.performAction=function(n,t,i,r){var u=r;switch(i){case 1:return 17;case 2:return 18;case 3:return 12;case 4:return 19;case 5:return 28;case 6:return 29;case 7:return 30;case 8:return 31;case 9:return 32;case 10:return 14;case 11:return 23;case 12:return 22;case 13:return 20;case 14:return 21;case 15:return 5;case 16:return"INVALID"}},n.rules=[/^(?:\s+)/,/^(?:\()/,/^(?:\))/,/^(?:-?[0-9]+(\.[0-9]+)?([eE][\-\+]?[0-9]+)?)/,/^(?:POINT\b)/,/^(?:LINESTRING\b)/,/^(?:POLYGON\b)/,/^(?:MULTIPOINT\b)/,/^(?:MULTILINESTRING\b)/,/^(?:MULTIPOLYGON\b)/,/^(?:,)/,/^(?:EMPTY\b)/,/^(?:M\b)/,/^(?:Z\b)/,/^(?:ZM\b)/,/^(?:$)/,/^(?:.)/],n.conditions={INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],inclusive:!0}},n}(),n.lexer=i,t.prototype=n,n.Parser=t,new t}();return r.prototype.addPoint=function(n){return n.type==="PointArray"?this.data=this.data.concat(n.data):this.data.push(n),this},r.prototype.toJSON=function(){return this.data},o.prototype.toJSON=function(){for(var t=[],n=0;n<this.data.data.length;n++)t.push(this.data.data[n]);return t},f.prototype.addRing=function(n){return this.data.push(n),this},f.prototype.toJSON=function(){for(var n=[],t=0;t<this.data.length;t++)n.push(this.data[t].toJSON());return n.length===1?n:n},e.prototype.addPolygon=function(n){return this.data.push(n),this},e.prototype.toJSON=function(){for(var t=[],n=0;n<this.data.length;n++)t=t.concat([this.data[n].toJSON()]);return t},t.parser=i,t.Parser=i.Parser,t.parse=s,t.convert=p,t});L.controlCredits=function(n){return new L.CreditsControl(n)};L.CreditsControl=L.Control.extend({options:{position:"bottomright"},initialize:function(n){if(!n.text)throw"L.CreditsControl missing required option: text";if(!n.image)throw"L.CreditsControl missing required option: image";if(!n.link)throw"L.CreditsControl missing required option: link";L.setOptions(this,n)},onAdd:function(n){var t,i;return this._map=n,t=L.DomUtil.create("div","leaflet-credits-control",t),t.style.backgroundImage="url("+this.options.image+")",this.options.width&&(t.style.paddingRight=this.options.width+"px"),this.options.height&&(t.style.height=this.options.height+"px"),i=L.DomUtil.create("a","",t),i.target="_blank",i.href=this.options.link,i.innerHTML=this.options.text,t.link=i,L.DomEvent.addListener(t,"mousedown",L.DomEvent.stopPropagation).addListener(t,"click",L.DomEvent.stopPropagation).addListener(t,"dblclick",L.DomEvent.stopPropagation).addListener(t,"click",function(){var n=this.link;L.DomUtil.hasClass(n,"leaflet-credits-showlink")?L.DomUtil.removeClass(n,"leaflet-credits-showlink"):L.DomUtil.addClass(n,"leaflet-credits-showlink")}),this._container=t,this._link=i,t},setText:function(n){this._link.innerHTML=n}})