var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(t){var e,i,s,n,o,a,r,h="",l=0;for(t=Base64._utf8_encode(t);l<t.length;)e=t.charCodeAt(l++),i=t.charCodeAt(l++),s=t.charCodeAt(l++),n=e>>2,o=(3&e)<<4|i>>4,a=(15&i)<<2|s>>6,r=63&s,isNaN(i)?a=r=64:isNaN(s)&&(r=64),h=h+this._keyStr.charAt(n)+this._keyStr.charAt(o)+this._keyStr.charAt(a)+this._keyStr.charAt(r);return h},decode:function(t){var e,i,s,n,o,a,r,h="",l=0;for(t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");l<t.length;)n=this._keyStr.indexOf(t.charAt(l++)),o=this._keyStr.indexOf(t.charAt(l++)),a=this._keyStr.indexOf(t.charAt(l++)),r=this._keyStr.indexOf(t.charAt(l++)),e=n<<2|o>>4,i=(15&o)<<4|a>>2,s=(3&a)<<6|r,h+=String.fromCharCode(e),64!=a&&(h+=String.fromCharCode(i)),64!=r&&(h+=String.fromCharCode(s));return h=Base64._utf8_decode(h)},_utf8_encode:function(t){t=t.replace(/\r\n/g,"\n");for(var e="",i=0;i<t.length;i++){var s=t.charCodeAt(i);s<128?e+=String.fromCharCode(s):s>127&&s<2048?(e+=String.fromCharCode(s>>6|192),e+=String.fromCharCode(63&s|128)):(e+=String.fromCharCode(s>>12|224),e+=String.fromCharCode(s>>6&63|128),e+=String.fromCharCode(63&s|128))}return e},_utf8_decode:function(t){for(var e="",i=0,s=c1=c2=0;i<t.length;)s=t.charCodeAt(i),s<128?(e+=String.fromCharCode(s),i++):s>191&&s<224?(c2=t.charCodeAt(i+1),e+=String.fromCharCode((31&s)<<6|63&c2),i+=2):(c2=t.charCodeAt(i+1),c3=t.charCodeAt(i+2),e+=String.fromCharCode((15&s)<<12|(63&c2)<<6|63&c3),i+=3);return e}};!function(t){function e(t,e){if(!(t.originalEvent.touches.length>1)){t.preventDefault();var i=t.originalEvent.changedTouches[0],s=document.createEvent("MouseEvents");s.initMouseEvent(e,!0,!0,window,1,i.screenX,i.screenY,i.clientX,i.clientY,!1,!1,!1,!1,0,null),t.target.dispatchEvent(s)}}if(t.support.touch="ontouchend"in document,t.support.touch){var i,s=t.ui.mouse.prototype,n=s._mouseInit,o=s._mouseDestroy;s._touchStart=function(t){var s=this;!i&&s._mouseCapture(t.originalEvent.changedTouches[0])&&(i=!0,s._touchMoved=!1,e(t,"mouseover"),e(t,"mousemove"),e(t,"mousedown"))},s._touchMove=function(t){i&&(this._touchMoved=!0,e(t,"mousemove"))},s._touchEnd=function(t){i&&(e(t,"mouseup"),e(t,"mouseout"),this._touchMoved||e(t,"click"),i=!1)},s._mouseInit=function(){var e=this;e.element.bind({touchstart:t.proxy(e,"_touchStart"),touchmove:t.proxy(e,"_touchMove"),touchend:t.proxy(e,"_touchEnd")}),n.call(e)},s._mouseDestroy=function(){var e=this;e.element.unbind({touchstart:t.proxy(e,"_touchStart"),touchmove:t.proxy(e,"_touchMove"),touchend:t.proxy(e,"_touchEnd")}),o.call(e)}}}(jQuery),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t("object"==typeof exports?require("jquery"):jQuery)}(function(t,e){function i(){return new Date(Date.UTC.apply(Date,arguments))}function s(){var t=new Date;return i(t.getFullYear(),t.getMonth(),t.getDate())}function n(t,e){return t.getUTCFullYear()===e.getUTCFullYear()&&t.getUTCMonth()===e.getUTCMonth()&&t.getUTCDate()===e.getUTCDate()}function o(i,s){return function(){return s!==e&&t.fn.datepicker.deprecated(s),this[i].apply(this,arguments)}}function a(t){return t&&!isNaN(t.getTime())}function r(e,i){function s(t,e){return e.toLowerCase()}var n,o=t(e).data(),a={},r=new RegExp("^"+i.toLowerCase()+"([A-Z])");i=new RegExp("^"+i.toLowerCase());for(var h in o)i.test(h)&&(n=h.replace(r,s),a[n]=o[h]);return a}function h(e){var i={};if(m[e]||(e=e.split("-")[0],m[e])){var s=m[e];return t.each(g,function(t,e){e in s&&(i[e]=s[e])}),i}}var l=function(){var e={get:function(t){return this.slice(t)[0]},contains:function(t){for(var e=t&&t.valueOf(),i=0,s=this.length;i<s;i++)if(0<=this[i].valueOf()-e&&this[i].valueOf()-e<864e5)return i;return-1},remove:function(t){this.splice(t,1)},replace:function(e){e&&(t.isArray(e)||(e=[e]),this.clear(),this.push.apply(this,e))},clear:function(){this.length=0},copy:function(){var t=new l;return t.replace(this),t}};return function(){var i=[];return i.push.apply(i,arguments),t.extend(i,e),i}}(),c=function(e,i){t.data(e,"datepicker",this),this._events=[],this._secondaryEvents=[],this._process_options(i),this.dates=new l,this.viewDate=this.o.defaultViewDate,this.focusDate=null,this.element=t(e),this.isInput=this.element.is("input"),this.inputField=this.isInput?this.element:this.element.find("input"),this.component=!!this.element.hasClass("date")&&this.element.find(".add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn"),this.component&&0===this.component.length&&(this.component=!1),this.isInline=!this.component&&this.element.is("div"),this.picker=t(v.template),this._check_template(this.o.templates.leftArrow)&&this.picker.find(".prev").html(this.o.templates.leftArrow),this._check_template(this.o.templates.rightArrow)&&this.picker.find(".next").html(this.o.templates.rightArrow),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu"),this.o.rtl&&this.picker.addClass("datepicker-rtl"),this.o.calendarWeeks&&this.picker.find(".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear").attr("colspan",function(t,e){return Number(e)+1}),this._process_options({startDate:this._o.startDate,endDate:this._o.endDate,daysOfWeekDisabled:this.o.daysOfWeekDisabled,daysOfWeekHighlighted:this.o.daysOfWeekHighlighted,datesDisabled:this.o.datesDisabled}),this._allow_update=!1,this.setViewMode(this.o.startView),this._allow_update=!0,this.fillDow(),this.fillMonths(),this.update(),this.isInline&&this.show()};c.prototype={constructor:c,_resolveViewName:function(e){return t.each(v.viewModes,function(i,s){if(e===i||-1!==t.inArray(e,s.names))return e=i,!1}),e},_resolveDaysOfWeek:function(e){return t.isArray(e)||(e=e.split(/[,\s]*/)),t.map(e,Number)},_check_template:function(i){try{return i!==e&&""!==i&&((i.match(/[<>]/g)||[]).length<=0||t(i).length>0)}catch(t){return!1}},_process_options:function(e){this._o=t.extend({},this._o,e);var n=this.o=t.extend({},this._o),o=n.language;m[o]||(o=o.split("-")[0],m[o]||(o=f.language)),n.language=o,n.startView=this._resolveViewName(n.startView),n.minViewMode=this._resolveViewName(n.minViewMode),n.maxViewMode=this._resolveViewName(n.maxViewMode),n.startView=Math.max(this.o.minViewMode,Math.min(this.o.maxViewMode,n.startView)),!0!==n.multidate&&(n.multidate=Number(n.multidate)||!1,!1!==n.multidate&&(n.multidate=Math.max(0,n.multidate))),n.multidateSeparator=String(n.multidateSeparator),n.weekStart%=7,n.weekEnd=(n.weekStart+6)%7;var a=v.parseFormat(n.format);n.startDate!==-1/0&&(n.startDate?n.startDate instanceof Date?n.startDate=this._local_to_utc(this._zero_time(n.startDate)):n.startDate=v.parseDate(n.startDate,a,n.language,n.assumeNearbyYear):n.startDate=-1/0),n.endDate!==1/0&&(n.endDate?n.endDate instanceof Date?n.endDate=this._local_to_utc(this._zero_time(n.endDate)):n.endDate=v.parseDate(n.endDate,a,n.language,n.assumeNearbyYear):n.endDate=1/0),n.daysOfWeekDisabled=this._resolveDaysOfWeek(n.daysOfWeekDisabled||[]),n.daysOfWeekHighlighted=this._resolveDaysOfWeek(n.daysOfWeekHighlighted||[]),n.datesDisabled=n.datesDisabled||[],t.isArray(n.datesDisabled)||(n.datesDisabled=n.datesDisabled.split(",")),n.datesDisabled=t.map(n.datesDisabled,function(t){return v.parseDate(t,a,n.language,n.assumeNearbyYear)});var r=String(n.orientation).toLowerCase().split(/\s+/g),h=n.orientation.toLowerCase();if(r=t.grep(r,function(t){return/^auto|left|right|top|bottom$/.test(t)}),n.orientation={x:"auto",y:"auto"},h&&"auto"!==h)if(1===r.length)switch(r[0]){case"top":case"bottom":n.orientation.y=r[0];break;case"left":case"right":n.orientation.x=r[0]}else h=t.grep(r,function(t){return/^left|right$/.test(t)}),n.orientation.x=h[0]||"auto",h=t.grep(r,function(t){return/^top|bottom$/.test(t)}),n.orientation.y=h[0]||"auto";if(n.defaultViewDate instanceof Date||"string"==typeof n.defaultViewDate)n.defaultViewDate=v.parseDate(n.defaultViewDate,a,n.language,n.assumeNearbyYear);else if(n.defaultViewDate){var l=n.defaultViewDate.year||(new Date).getFullYear(),c=n.defaultViewDate.month||0,d=n.defaultViewDate.day||1;n.defaultViewDate=i(l,c,d)}else n.defaultViewDate=s()},_applyEvents:function(t){for(var i,s,n,o=0;o<t.length;o++)i=t[o][0],2===t[o].length?(s=e,n=t[o][1]):3===t[o].length&&(s=t[o][1],n=t[o][2]),i.on(n,s)},_unapplyEvents:function(t){for(var i,s,n,o=0;o<t.length;o++)i=t[o][0],2===t[o].length?(n=e,s=t[o][1]):3===t[o].length&&(n=t[o][1],s=t[o][2]),i.off(s,n)},_buildEvents:function(){var e={keyup:t.proxy(function(e){-1===t.inArray(e.keyCode,[27,37,39,38,40,32,13,9])&&this.update()},this),keydown:t.proxy(this.keydown,this),paste:t.proxy(this.paste,this)};!0===this.o.showOnFocus&&(e.focus=t.proxy(this.show,this)),this.isInput?this._events=[[this.element,e]]:this.component&&this.inputField.length?this._events=[[this.inputField,e],[this.component,{click:t.proxy(this.show,this)}]]:this._events=[[this.element,{click:t.proxy(this.show,this),keydown:t.proxy(this.keydown,this)}]],this._events.push([this.element,"*",{blur:t.proxy(function(t){this._focused_from=t.target},this)}],[this.element,{blur:t.proxy(function(t){this._focused_from=t.target},this)}]),this.o.immediateUpdates&&this._events.push([this.element,{"changeYear changeMonth":t.proxy(function(t){this.update(t.date)},this)}]),this._secondaryEvents=[[this.picker,{click:t.proxy(this.click,this)}],[this.picker,".prev, .next",{click:t.proxy(this.navArrowsClick,this)}],[this.picker,".day:not(.disabled)",{click:t.proxy(this.dayCellClick,this)}],[t(window),{resize:t.proxy(this.place,this)}],[t(document),{"mousedown touchstart":t.proxy(function(t){this.element.is(t.target)||this.element.find(t.target).length||this.picker.is(t.target)||this.picker.find(t.target).length||this.isInline||this.hide()},this)}]]},_attachEvents:function(){this._detachEvents(),this._applyEvents(this._events)},_detachEvents:function(){this._unapplyEvents(this._events)},_attachSecondaryEvents:function(){this._detachSecondaryEvents(),this._applyEvents(this._secondaryEvents)},_detachSecondaryEvents:function(){this._unapplyEvents(this._secondaryEvents)},_trigger:function(e,i){var s=i||this.dates.get(-1),n=this._utc_to_local(s);this.element.trigger({type:e,date:n,viewMode:this.viewMode,dates:t.map(this.dates,this._utc_to_local),format:t.proxy(function(t,e){0===arguments.length?(t=this.dates.length-1,e=this.o.format):"string"==typeof t&&(e=t,t=this.dates.length-1),e=e||this.o.format;var i=this.dates.get(t);return v.formatDate(i,e,this.o.language)},this)})},show:function(){if(!(this.inputField.is(":disabled")||this.inputField.prop("readonly")&&!1===this.o.enableOnReadonly))return this.isInline||this.picker.appendTo(this.o.container),this.place(),this.picker.show(),this._attachSecondaryEvents(),this._trigger("show"),(window.navigator.msMaxTouchPoints||"ontouchstart"in document)&&this.o.disableTouchKeyboard&&t(this.element).blur(),this},hide:function(){return this.isInline||!this.picker.is(":visible")?this:(this.focusDate=null,this.picker.hide().detach(),this._detachSecondaryEvents(),this.setViewMode(this.o.startView),this.o.forceParse&&this.inputField.val()&&this.setValue(),this._trigger("hide"),this)},destroy:function(){return this.hide(),this._detachEvents(),this._detachSecondaryEvents(),this.picker.remove(),delete this.element.data().datepicker,this.isInput||delete this.element.data().date,this},paste:function(e){var i;if(e.originalEvent.clipboardData&&e.originalEvent.clipboardData.types&&-1!==t.inArray("text/plain",e.originalEvent.clipboardData.types))i=e.originalEvent.clipboardData.getData("text/plain");else{if(!window.clipboardData)return;i=window.clipboardData.getData("Text")}this.setDate(i),this.update(),e.preventDefault()},_utc_to_local:function(t){if(!t)return t;var e=new Date(t.getTime()+6e4*t.getTimezoneOffset());return e.getTimezoneOffset()!==t.getTimezoneOffset()&&(e=new Date(t.getTime()+6e4*e.getTimezoneOffset())),e},_local_to_utc:function(t){return t&&new Date(t.getTime()-6e4*t.getTimezoneOffset())},_zero_time:function(t){return t&&new Date(t.getFullYear(),t.getMonth(),t.getDate())},_zero_utc_time:function(t){return t&&i(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate())},getDates:function(){return t.map(this.dates,this._utc_to_local)},getUTCDates:function(){return t.map(this.dates,function(t){return new Date(t)})},getDate:function(){return this._utc_to_local(this.getUTCDate())},getUTCDate:function(){var t=this.dates.get(-1);return t!==e?new Date(t):null},clearDates:function(){this.inputField.val(""),this.update(),this._trigger("changeDate"),this.o.autoclose&&this.hide()},setDates:function(){var e=t.isArray(arguments[0])?arguments[0]:arguments;return this.update.apply(this,e),this._trigger("changeDate"),this.setValue(),this},setUTCDates:function(){var e=t.isArray(arguments[0])?arguments[0]:arguments;return this.setDates.apply(this,t.map(e,this._utc_to_local)),this},setDate:o("setDates"),setUTCDate:o("setUTCDates"),remove:o("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead"),setValue:function(){var t=this.getFormattedDate();return this.inputField.val(t),this},getFormattedDate:function(i){i===e&&(i=this.o.format);var s=this.o.language;return t.map(this.dates,function(t){return v.formatDate(t,i,s)}).join(this.o.multidateSeparator)},getStartDate:function(){return this.o.startDate},setStartDate:function(t){return this._process_options({startDate:t}),this.update(),this.updateNavArrows(),this},getEndDate:function(){return this.o.endDate},setEndDate:function(t){return this._process_options({endDate:t}),this.update(),this.updateNavArrows(),this},setDaysOfWeekDisabled:function(t){return this._process_options({daysOfWeekDisabled:t}),this.update(),this},setDaysOfWeekHighlighted:function(t){return this._process_options({daysOfWeekHighlighted:t}),this.update(),this},setDatesDisabled:function(t){return this._process_options({datesDisabled:t}),this.update(),this},place:function(){if(this.isInline)return this;var e=this.picker.outerWidth(),i=this.picker.outerHeight(),s=t(this.o.container),n=s.width(),o="body"===this.o.container?t(document).scrollTop():s.scrollTop(),a=s.offset(),r=[0];this.element.parents().each(function(){var e=t(this).css("z-index");"auto"!==e&&0!==Number(e)&&r.push(Number(e))});var h=Math.max.apply(Math,r)+this.o.zIndexOffset,l=this.component?this.component.parent().offset():this.element.offset(),c=this.component?this.component.outerHeight(!0):this.element.outerHeight(!1),d=this.component?this.component.outerWidth(!0):this.element.outerWidth(!1),p=l.left-a.left,u=l.top-a.top;"body"!==this.o.container&&(u+=o),this.picker.removeClass("datepicker-orient-top datepicker-orient-bottom datepicker-orient-right datepicker-orient-left"),"auto"!==this.o.orientation.x?(this.picker.addClass("datepicker-orient-"+this.o.orientation.x),"right"===this.o.orientation.x&&(p-=e-d)):l.left<0?(this.picker.addClass("datepicker-orient-left"),p-=l.left-10):p+e>n?(this.picker.addClass("datepicker-orient-right"),p+=d-e):this.o.rtl?this.picker.addClass("datepicker-orient-right"):this.picker.addClass("datepicker-orient-left");var f,g=this.o.orientation.y;if("auto"===g&&(f=-o+u-i,g=f<0?"bottom":"top"),this.picker.addClass("datepicker-orient-"+g),"top"===g?u-=i+parseInt(this.picker.css("padding-top")):u+=c,this.o.rtl){var m=n-(p+d);this.picker.css({top:u,right:m,zIndex:h})}else this.picker.css({top:u,left:p,zIndex:h});return this},_allow_update:!0,update:function(){if(!this._allow_update)return this;var e=this.dates.copy(),i=[],s=!1;return arguments.length?(t.each(arguments,t.proxy(function(t,e){e instanceof Date&&(e=this._local_to_utc(e)),i.push(e)},this)),s=!0):(i=this.isInput?this.element.val():this.element.data("date")||this.inputField.val(),i=i&&this.o.multidate?i.split(this.o.multidateSeparator):[i],delete this.element.data().date),i=t.map(i,t.proxy(function(t){return v.parseDate(t,this.o.format,this.o.language,this.o.assumeNearbyYear)},this)),i=t.grep(i,t.proxy(function(t){return!this.dateWithinRange(t)||!t},this),!0),this.dates.replace(i),this.o.updateViewDate&&(this.dates.length?this.viewDate=new Date(this.dates.get(-1)):this.viewDate<this.o.startDate?this.viewDate=new Date(this.o.startDate):this.viewDate>this.o.endDate?this.viewDate=new Date(this.o.endDate):this.viewDate=this.o.defaultViewDate),s?(this.setValue(),this.element.change()):this.dates.length&&String(e)!==String(this.dates)&&s&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&e.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var e=this.o.weekStart,i="<tr>";for(this.o.calendarWeeks&&(i+='<th class="cw">&#160;</th>');e<this.o.weekStart+7;)i+='<th class="dow',-1!==t.inArray(e,this.o.daysOfWeekDisabled)&&(i+=" disabled"),i+='">'+m[this.o.language].daysMin[e++%7]+"</th>";i+="</tr>",this.picker.find(".datepicker-days thead").append(i)}},fillMonths:function(){for(var t,e=this._utc_to_local(this.viewDate),i="",s=0;s<12;s++)t=e&&e.getMonth()===s?" focused":"",i+='<span class="month'+t+'">'+m[this.o.language].monthsShort[s]+"</span>";this.picker.find(".datepicker-months td").html(i)},setRange:function(e){e&&e.length?this.range=t.map(e,function(t){return t.valueOf()}):delete this.range,this.fill()},getClassNames:function(e){var i=[],o=this.viewDate.getUTCFullYear(),a=this.viewDate.getUTCMonth(),r=s();return e.getUTCFullYear()<o||e.getUTCFullYear()===o&&e.getUTCMonth()<a?i.push("old"):(e.getUTCFullYear()>o||e.getUTCFullYear()===o&&e.getUTCMonth()>a)&&i.push("new"),this.focusDate&&e.valueOf()===this.focusDate.valueOf()&&i.push("focused"),this.o.todayHighlight&&n(e,r)&&i.push("today"),-1!==this.dates.contains(e)&&i.push("active"),this.dateWithinRange(e)||i.push("disabled"),this.dateIsDisabled(e)&&i.push("disabled","disabled-date"),-1!==t.inArray(e.getUTCDay(),this.o.daysOfWeekHighlighted)&&i.push("highlighted"),this.range&&(e>this.range[0]&&e<this.range[this.range.length-1]&&i.push("range"),-1!==t.inArray(e.valueOf(),this.range)&&i.push("selected"),e.valueOf()===this.range[0]&&i.push("range-start"),e.valueOf()===this.range[this.range.length-1]&&i.push("range-end")),i},_fill_yearsView:function(i,s,n,o,a,r,h){for(var l,c,d,p="",u=n/10,f=this.picker.find(i),g=Math.floor(o/n)*n,m=g+9*u,v=Math.floor(this.viewDate.getFullYear()/u)*u,y=t.map(this.dates,function(t){return Math.floor(t.getUTCFullYear()/u)*u}),x=g-u;x<=m+u;x+=u)l=[s],c=null,x===g-u?l.push("old"):x===m+u&&l.push("new"),-1!==t.inArray(x,y)&&l.push("active"),(x<a||x>r)&&l.push("disabled"),x===v&&l.push("focused"),h!==t.noop&&(d=h(new Date(x,0,1)),d===e?d={}:"boolean"==typeof d?d={enabled:d}:"string"==typeof d&&(d={classes:d}),!1===d.enabled&&l.push("disabled"),d.classes&&(l=l.concat(d.classes.split(/\s+/))),d.tooltip&&(c=d.tooltip)),p+='<span class="'+l.join(" ")+'"'+(c?' title="'+c+'"':"")+">"+x+"</span>";f.find(".datepicker-switch").text(g+"-"+m),f.find("td").html(p)},fill:function(){var n,o,a=new Date(this.viewDate),r=a.getUTCFullYear(),h=a.getUTCMonth(),l=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,c=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,d=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,p=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,u=m[this.o.language].today||m.en.today||"",f=m[this.o.language].clear||m.en.clear||"",g=m[this.o.language].titleFormat||m.en.titleFormat,y=s(),x=(!0===this.o.todayBtn||"linked"===this.o.todayBtn)&&y>=this.o.startDate&&y<=this.o.endDate&&!this.weekOfDateIsDisabled(y);if(!isNaN(r)&&!isNaN(h)){this.picker.find(".datepicker-days .datepicker-switch").text(v.formatDate(a,g,this.o.language)),this.picker.find("tfoot .today").text(u).css("display",x?"table-cell":"none"),this.picker.find("tfoot .clear").text(f).css("display",!0===this.o.clearBtn?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display","string"==typeof this.o.title&&""!==this.o.title?"table-cell":"none"),this.updateNavArrows(),this.fillMonths();var b=i(r,h,0),w=b.getUTCDate();b.setUTCDate(w-(b.getUTCDay()-this.o.weekStart+7)%7);var k=new Date(b);b.getUTCFullYear()<100&&k.setUTCFullYear(b.getUTCFullYear()),k.setUTCDate(k.getUTCDate()+42),k=k.valueOf();for(var M,S,T=[];b.valueOf()<k;){if((M=b.getUTCDay())===this.o.weekStart&&(T.push("<tr>"),this.o.calendarWeeks)){var C=new Date(+b+(this.o.weekStart-M-7)%7*864e5),A=new Date(Number(C)+(11-C.getUTCDay())%7*864e5),D=new Date(Number(D=i(A.getUTCFullYear(),0,1))+(11-D.getUTCDay())%7*864e5),E=(A-D)/864e5/7+1;T.push('<td class="cw">'+E+"</td>")}S=this.getClassNames(b),S.push("day");var O=b.getUTCDate();this.o.beforeShowDay!==t.noop&&(o=this.o.beforeShowDay(this._utc_to_local(b)),o===e?o={}:"boolean"==typeof o?o={enabled:o}:"string"==typeof o&&(o={classes:o}),!1===o.enabled&&S.push("disabled"),o.classes&&(S=S.concat(o.classes.split(/\s+/))),o.tooltip&&(n=o.tooltip),o.content&&(O=o.content)),S=t.isFunction(t.uniqueSort)?t.uniqueSort(S):t.unique(S),T.push('<td class="'+S.join(" ")+'"'+(n?' title="'+n+'"':"")+' data-date="'+b.getTime().toString()+'">'+O+"</td>"),n=null,M===this.o.weekEnd&&T.push("</tr>"),b.setUTCDate(b.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(T.join(""));var L=m[this.o.language].monthsTitle||m.en.monthsTitle||"Months",I=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?L:r).end().find("tbody span").removeClass("active");if(t.each(this.dates,function(t,e){e.getUTCFullYear()===r&&I.eq(e.getUTCMonth()).addClass("active")}),(r<l||r>d)&&I.addClass("disabled"),r===l&&I.slice(0,c).addClass("disabled"),r===d&&I.slice(p+1).addClass("disabled"),this.o.beforeShowMonth!==t.noop){var P=this;t.each(I,function(i,s){var n=new Date(r,i,1),o=P.o.beforeShowMonth(n);o===e?o={}:"boolean"==typeof o?o={enabled:o}:"string"==typeof o&&(o={classes:o}),!1!==o.enabled||t(s).hasClass("disabled")||t(s).addClass("disabled"),o.classes&&t(s).addClass(o.classes),o.tooltip&&t(s).prop("title",o.tooltip)})}this._fill_yearsView(".datepicker-years","year",10,r,l,d,this.o.beforeShowYear),this._fill_yearsView(".datepicker-decades","decade",100,r,l,d,this.o.beforeShowDecade),this._fill_yearsView(".datepicker-centuries","century",1e3,r,l,d,this.o.beforeShowCentury)}},updateNavArrows:function(){if(this._allow_update){var t,e,i=new Date(this.viewDate),s=i.getUTCFullYear(),n=i.getUTCMonth(),o=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,a=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,r=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,h=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,l=1;switch(this.viewMode){case 4:l*=10;case 3:l*=10;case 2:l*=10;case 1:t=Math.floor(s/l)*l<=o,e=Math.floor(s/l)*l+l>r;break;case 0:t=s<=o&&n<=a,e=s>=r&&n>=h}this.picker.find(".prev").toggleClass("disabled",t),this.picker.find(".next").toggleClass("disabled",e)}},click:function(e){e.preventDefault(),e.stopPropagation();var n,o,a,r;n=t(e.target),n.hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1),n.hasClass("today")&&!n.hasClass("day")&&(this.setViewMode(0),this._setDate(s(),"linked"===this.o.todayBtn?null:"view")),n.hasClass("clear")&&this.clearDates(),n.hasClass("disabled")||(n.hasClass("month")||n.hasClass("year")||n.hasClass("decade")||n.hasClass("century"))&&(this.viewDate.setUTCDate(1),o=1,1===this.viewMode?(r=n.parent().find("span").index(n),a=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(r)):(r=0,a=Number(n.text()),this.viewDate.setUTCFullYear(a)),this._trigger(v.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(i(a,r,o)):(this.setViewMode(this.viewMode-1),this.fill())),this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus(),delete this._focused_from},dayCellClick:function(e){var i=t(e.currentTarget),s=i.data("date"),n=new Date(s);this.o.updateViewDate&&(n.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),n.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate)),this._setDate(n)},navArrowsClick:function(e){var i=t(e.currentTarget),s=i.hasClass("prev")?-1:1;0!==this.viewMode&&(s*=12*v.viewModes[this.viewMode].navStep),this.viewDate=this.moveMonth(this.viewDate,s),this._trigger(v.viewModes[this.viewMode].e,this.viewDate),this.fill()},_toggle_multidate:function(t){var e=this.dates.contains(t);if(t||this.dates.clear(),-1!==e?(!0===this.o.multidate||this.o.multidate>1||this.o.toggleActive)&&this.dates.remove(e):!1===this.o.multidate?(this.dates.clear(),this.dates.push(t)):this.dates.push(t),"number"==typeof this.o.multidate)for(;this.dates.length>this.o.multidate;)this.dates.remove(0)},_setDate:function(t,e){e&&"date"!==e||this._toggle_multidate(t&&new Date(t)),(!e&&this.o.updateViewDate||"view"===e)&&(this.viewDate=t&&new Date(t)),this.fill(),this.setValue(),e&&"view"===e||this._trigger("changeDate"),this.inputField.trigger("change"),!this.o.autoclose||e&&"date"!==e||this.hide()},moveDay:function(t,e){var i=new Date(t);return i.setUTCDate(t.getUTCDate()+e),i},moveWeek:function(t,e){return this.moveDay(t,7*e)},moveMonth:function(t,e){if(!a(t))return this.o.defaultViewDate;if(!e)return t;var i,s,n=new Date(t.valueOf()),o=n.getUTCDate(),r=n.getUTCMonth(),h=Math.abs(e);if(e=e>0?1:-1,1===h)s=-1===e?function(){return n.getUTCMonth()===r}:function(){return n.getUTCMonth()!==i},i=r+e,n.setUTCMonth(i),i=(i+12)%12;else{for(var l=0;l<h;l++)n=this.moveMonth(n,e);i=n.getUTCMonth(),n.setUTCDate(o),s=function(){return i!==n.getUTCMonth()}}for(;s();)n.setUTCDate(--o),n.setUTCMonth(i);return n},moveYear:function(t,e){return this.moveMonth(t,12*e)},moveAvailableDate:function(t,e,i){do{if(t=this[i](t,e),!this.dateWithinRange(t))return!1;i="moveDay"}while(this.dateIsDisabled(t));return t},weekOfDateIsDisabled:function(e){return-1!==t.inArray(e.getUTCDay(),this.o.daysOfWeekDisabled)},dateIsDisabled:function(e){return this.weekOfDateIsDisabled(e)||t.grep(this.o.datesDisabled,function(t){return n(e,t)}).length>0},dateWithinRange:function(t){return t>=this.o.startDate&&t<=this.o.endDate},keydown:function(t){if(!this.picker.is(":visible"))return void(40!==t.keyCode&&27!==t.keyCode||(this.show(),t.stopPropagation()));var e,i,s=!1,n=this.focusDate||this.viewDate;switch(t.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),t.preventDefault(),t.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||7===this.o.daysOfWeekDisabled.length)break;e=37===t.keyCode||38===t.keyCode?-1:1,0===this.viewMode?t.ctrlKey?(i=this.moveAvailableDate(n,e,"moveYear"))&&this._trigger("changeYear",this.viewDate):t.shiftKey?(i=this.moveAvailableDate(n,e,"moveMonth"))&&this._trigger("changeMonth",this.viewDate):37===t.keyCode||39===t.keyCode?i=this.moveAvailableDate(n,e,"moveDay"):this.weekOfDateIsDisabled(n)||(i=this.moveAvailableDate(n,e,"moveWeek")):1===this.viewMode?(38!==t.keyCode&&40!==t.keyCode||(e*=4),i=this.moveAvailableDate(n,e,"moveMonth")):2===this.viewMode&&(38!==t.keyCode&&40!==t.keyCode||(e*=4),i=this.moveAvailableDate(n,e,"moveYear")),i&&(this.focusDate=this.viewDate=i,this.setValue(),this.fill(),t.preventDefault());break;case 13:if(!this.o.forceParse)break;n=this.focusDate||this.dates.get(-1)||this.viewDate,this.o.keyboardNavigation&&(this._toggle_multidate(n),s=!0),this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(t.preventDefault(),t.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}s&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))},setViewMode:function(t){this.viewMode=t,this.picker.children("div").hide().filter(".datepicker-"+v.viewModes[this.viewMode].clsName).show(),this.updateNavArrows(),this._trigger("changeViewMode",new Date(this.viewDate))}};var d=function(e,i){t.data(e,"datepicker",this),this.element=t(e),this.inputs=t.map(i.inputs,function(t){return t.jquery?t[0]:t}),delete i.inputs,this.keepEmptyValues=i.keepEmptyValues,delete i.keepEmptyValues,u.call(t(this.inputs),i).on("changeDate",t.proxy(this.dateUpdated,this)),this.pickers=t.map(this.inputs,function(e){return t.data(e,"datepicker")}),this.updateDates()};d.prototype={updateDates:function(){this.dates=t.map(this.pickers,function(t){return t.getUTCDate()}),this.updateRanges()},updateRanges:function(){var e=t.map(this.dates,function(t){return t.valueOf()});t.each(this.pickers,function(t,i){i.setRange(e)})},clearDates:function(){t.each(this.pickers,function(t,e){e.clearDates()})},dateUpdated:function(i){if(!this.updating){this.updating=!0;var s=t.data(i.target,"datepicker");if(s!==e){var n=s.getUTCDate(),o=this.keepEmptyValues,a=t.inArray(i.target,this.inputs),r=a-1,h=a+1,l=this.inputs.length;if(-1!==a){if(t.each(this.pickers,function(t,e){e.getUTCDate()||e!==s&&o||e.setUTCDate(n)}),n<this.dates[r])for(;r>=0&&n<this.dates[r];)this.pickers[r--].setUTCDate(n);else if(n>this.dates[h])for(;h<l&&n>this.dates[h];)this.pickers[h++].setUTCDate(n);this.updateDates(),delete this.updating}}}},destroy:function(){t.map(this.pickers,function(t){t.destroy()}),t(this.inputs).off("changeDate",this.dateUpdated),delete this.element.data().datepicker},remove:o("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};var p=t.fn.datepicker,u=function(i){var s=Array.apply(null,arguments);s.shift();var n;if(this.each(function(){var e=t(this),o=e.data("datepicker"),a="object"==typeof i&&i;if(!o){var l=r(this,"date"),p=t.extend({},f,l,a),u=h(p.language),g=t.extend({},f,u,l,a);e.hasClass("input-daterange")||g.inputs?(t.extend(g,{inputs:g.inputs||e.find("input").toArray()}),o=new d(this,g)):o=new c(this,g),e.data("datepicker",o)}"string"==typeof i&&"function"==typeof o[i]&&(n=o[i].apply(o,s))}),n===e||n instanceof c||n instanceof d)return this;if(this.length>1)throw new Error("Using only allowed for the collection of a single element ("+i+" function)");return n};t.fn.datepicker=u;var f=t.fn.datepicker.defaults={assumeNearbyYear:!1,autoclose:!1,beforeShowDay:t.noop,beforeShowMonth:t.noop,beforeShowYear:t.noop,beforeShowDecade:t.noop,beforeShowCentury:t.noop,calendarWeeks:!1,clearBtn:!1,toggleActive:!1,daysOfWeekDisabled:[],daysOfWeekHighlighted:[],datesDisabled:[],endDate:1/0,forceParse:!0,format:"mm/dd/yyyy",keepEmptyValues:!1,keyboardNavigation:!0,language:"en",minViewMode:0,maxViewMode:4,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-1/0,startView:0,todayBtn:!1,todayHighlight:!1,updateViewDate:!0,weekStart:0,disableTouchKeyboard:!1,enableOnReadonly:!0,showOnFocus:!0,zIndexOffset:10,container:"body",immediateUpdates:!1,title:"",templates:{leftArrow:"&#x00AB;",rightArrow:"&#x00BB;"},showWeekDays:!0},g=t.fn.datepicker.locale_opts=["format","rtl","weekStart"];t.fn.datepicker.Constructor=c;var m=t.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear",titleFormat:"MM yyyy"}},v={viewModes:[{names:["days","month"],clsName:"days",e:"changeMonth"},{names:["months","year"],clsName:"months",e:"changeYear",navStep:1},{names:["years","decade"],clsName:"years",e:"changeDecade",navStep:10},{names:["decades","century"],clsName:"decades",e:"changeCentury",navStep:100},{names:["centuries","millennium"],clsName:"centuries",e:"changeMillennium",navStep:1e3}],validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,
nonpunctuation:/[^ -\/:-@\u5e74\u6708\u65e5\[-`{-~\t\n\r]+/g,parseFormat:function(t){if("function"==typeof t.toValue&&"function"==typeof t.toDisplay)return t;var e=t.replace(this.validParts,"\0").split("\0"),i=t.match(this.validParts);if(!e||!e.length||!i||0===i.length)throw new Error("Invalid date format.");return{separators:e,parts:i}},parseDate:function(i,n,o,a){function r(t,e){return!0===e&&(e=10),t<100&&(t+=2e3)>(new Date).getFullYear()+e&&(t-=100),t}function h(){var t=this.slice(0,l[u].length),e=l[u].slice(0,t.length);return t.toLowerCase()===e.toLowerCase()}if(!i)return e;if(i instanceof Date)return i;if("string"==typeof n&&(n=v.parseFormat(n)),n.toValue)return n.toValue(i,n,o);var l,d,p,u,f,g={d:"moveDay",m:"moveMonth",w:"moveWeek",y:"moveYear"},y={yesterday:"-1d",today:"+0d",tomorrow:"+1d"};if(i in y&&(i=y[i]),/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(i)){for(l=i.match(/([\-+]\d+)([dmwy])/gi),i=new Date,u=0;u<l.length;u++)d=l[u].match(/([\-+]\d+)([dmwy])/i),p=Number(d[1]),f=g[d[2].toLowerCase()],i=c.prototype[f](i,p);return c.prototype._zero_utc_time(i)}l=i&&i.match(this.nonpunctuation)||[];var x,b,w={},k=["yyyy","yy","M","MM","m","mm","d","dd"],M={yyyy:function(t,e){return t.setUTCFullYear(a?r(e,a):e)},m:function(t,e){if(isNaN(t))return t;for(e-=1;e<0;)e+=12;for(e%=12,t.setUTCMonth(e);t.getUTCMonth()!==e;)t.setUTCDate(t.getUTCDate()-1);return t},d:function(t,e){return t.setUTCDate(e)}};M.yy=M.yyyy,M.M=M.MM=M.mm=M.m,M.dd=M.d,i=s();var S=n.parts.slice();if(l.length!==S.length&&(S=t(S).filter(function(e,i){return-1!==t.inArray(i,k)}).toArray()),l.length===S.length){var T;for(u=0,T=S.length;u<T;u++){if(x=parseInt(l[u],10),d=S[u],isNaN(x))switch(d){case"MM":b=t(m[o].months).filter(h),x=t.inArray(b[0],m[o].months)+1;break;case"M":b=t(m[o].monthsShort).filter(h),x=t.inArray(b[0],m[o].monthsShort)+1}w[d]=x}var C,A;for(u=0;u<k.length;u++)(A=k[u])in w&&!isNaN(w[A])&&(C=new Date(i),M[A](C,w[A]),isNaN(C)||(i=C))}return i},formatDate:function(e,i,s){if(!e)return"";if("string"==typeof i&&(i=v.parseFormat(i)),i.toDisplay)return i.toDisplay(e,i,s);var n={d:e.getUTCDate(),D:m[s].daysShort[e.getUTCDay()],DD:m[s].days[e.getUTCDay()],m:e.getUTCMonth()+1,M:m[s].monthsShort[e.getUTCMonth()],MM:m[s].months[e.getUTCMonth()],yy:e.getUTCFullYear().toString().substring(2),yyyy:e.getUTCFullYear()};n.dd=(n.d<10?"0":"")+n.d,n.mm=(n.m<10?"0":"")+n.m,e=[];for(var o=t.extend([],i.separators),a=0,r=i.parts.length;a<=r;a++)o.length&&e.push(o.shift()),e.push(n[i.parts[a]]);return e.join("")},headTemplate:'<thead><tr><th colspan="7" class="datepicker-title"></th></tr><tr><th class="prev">'+f.templates.leftArrow+'</th><th colspan="5" class="datepicker-switch"></th><th class="next">'+f.templates.rightArrow+"</th></tr></thead>",contTemplate:'<tbody><tr><td colspan="7"></td></tr></tbody>',footTemplate:'<tfoot><tr><th colspan="7" class="today"></th></tr><tr><th colspan="7" class="clear"></th></tr></tfoot>'};v.template='<div class="datepicker"><div class="datepicker-days"><table class="table-condensed">'+v.headTemplate+"<tbody></tbody>"+v.footTemplate+'</table></div><div class="datepicker-months"><table class="table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+'</table></div><div class="datepicker-years"><table class="table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+'</table></div><div class="datepicker-decades"><table class="table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+'</table></div><div class="datepicker-centuries"><table class="table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+"</table></div></div>",t.fn.datepicker.DPGlobal=v,t.fn.datepicker.noConflict=function(){return t.fn.datepicker=p,this},t.fn.datepicker.version="1.9.0",t.fn.datepicker.deprecated=function(t){var e=window.console;e&&e.warn&&e.warn("DEPRECATED: "+t)},t(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(e){var i=t(this);i.data("datepicker")||(e.preventDefault(),u.call(i,"show"))}),t(function(){u.call(t('[data-provide="datepicker-inline"]'))})}),function(t,e){void 0===t&&void 0!==window&&(t=window),"function"==typeof define&&define.amd?define(["jquery"],function(t){return e(t)}):"object"==typeof module&&module.exports?module.exports=e(require("jquery")):e(t.jQuery)}(this,function(t){!function(t){"use strict";function e(e,i){var s=e.nodeName.toLowerCase();if(-1!==t.inArray(s,i))return-1===t.inArray(s,c)||Boolean(e.nodeValue.match(p)||e.nodeValue.match(u));for(var n=t(i).filter(function(t,e){return e instanceof RegExp}),o=0,a=n.length;o<a;o++)if(s.match(n[o]))return!0;return!1}function i(t,i,s){if(s&&"function"==typeof s)return s(t);for(var n=Object.keys(i),o=0,a=t.length;o<a;o++)for(var r=t[o].querySelectorAll("*"),h=0,l=r.length;h<l;h++){var c=r[h],d=c.nodeName.toLowerCase();if(-1!==n.indexOf(d))for(var p=[].slice.call(c.attributes),u=[].concat(i["*"]||[],i[d]||[]),f=0,g=p.length;f<g;f++){var m=p[f];e(m,u)||c.removeAttribute(m.nodeName)}else c.parentNode.removeChild(c)}}function s(t,e){for(var i,s=[],n=e||t.selectedOptions,o=0,a=n.length;o<a;o++)(i=n[o]).disabled||"OPTGROUP"===i.parentNode.tagName&&i.parentNode.disabled||s.push(i.value||i.text);return t.multiple?s:s.length?s[0]:null}function n(t,e,i,s){for(var n=["display","subtext","tokens"],o=!1,a=0;a<n.length;a++){var h=n[a],l=t[h];if(l&&(l=l.toString(),"display"===h&&(l=l.replace(/<[^>]+>/g,"")),s&&(l=r(l)),l=l.toUpperCase(),o="contains"===i?0<=l.indexOf(e):l.startsWith(e)))break}return o}function o(t){return parseInt(t,10)||0}function a(t){return E[t]}function r(t){return(t=t.toString())&&t.replace(O,a).replace(L,"")}function h(e){var i,s=arguments,n=e;if([].shift.apply(s),!z.success){try{z.full=(t.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split(".")}catch(e){Y.BootstrapVersion?z.full=Y.BootstrapVersion.split(" ")[0].split("."):(z.full=[z.major,"0","0"],console.warn("There was an issue retrieving Bootstrap's version. Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision. If loading Bootstrap asynchronously, the version may need to be manually specified via $.fn.selectpicker.Constructor.BootstrapVersion.",e))}z.major=z.full[0],z.success=!0}if("4"===z.major){var o=[];Y.DEFAULTS.style===B.BUTTONCLASS&&o.push({name:"style",className:"BUTTONCLASS"}),Y.DEFAULTS.iconBase===B.ICONBASE&&o.push({name:"iconBase",className:"ICONBASE"}),Y.DEFAULTS.tickIcon===B.TICKICON&&o.push({name:"tickIcon",className:"TICKICON"}),B.DIVIDER="dropdown-divider",B.SHOW="show",B.BUTTONCLASS="btn-light",B.POPOVERHEADER="popover-header",B.ICONBASE="",B.TICKICON="bs-ok-default";for(var a=0;a<o.length;a++)e=o[a],Y.DEFAULTS[e.name]=B[e.className]}var r=this.each(function(){var e=t(this);if(e.is("select")){var o=e.data("selectpicker"),a="object"==typeof n&&n;if(o){if(a)for(var r in a)a.hasOwnProperty(r)&&(o.options[r]=a[r])}else{var h=e.data();for(var c in h)h.hasOwnProperty(c)&&-1!==t.inArray(c,l)&&delete h[c];var d=t.extend({},Y.DEFAULTS,t.fn.selectpicker.defaults||{},h,a);d.template=t.extend({},Y.DEFAULTS.template,t.fn.selectpicker.defaults?t.fn.selectpicker.defaults.template:{},h.template,a.template),e.data("selectpicker",o=new Y(this,d))}"string"==typeof n&&(i=o[n]instanceof Function?o[n].apply(o,s):o.options[n])}});return void 0!==i?i:r}var l=["sanitize","whiteList","sanitizeFn"],c=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],d={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},p=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:\/?#]*(?:[\/?#]|$))/gi,u=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i;"classList"in document.createElement("_")||function(e){if("Element"in e){var i="classList",s="prototype",n=e.Element[s],o=Object,a=function(){var e=t(this);return{add:function(t){return t=Array.prototype.slice.call(arguments).join(" "),e.addClass(t)},remove:function(t){return t=Array.prototype.slice.call(arguments).join(" "),e.removeClass(t)},toggle:function(t,i){return e.toggleClass(t,i)},contains:function(t){return e.hasClass(t)}}};if(o.defineProperty){var r={get:a,enumerable:!0,configurable:!0};try{o.defineProperty(n,i,r)}catch(e){void 0!==e.number&&-2146823252!==e.number||(r.enumerable=!1,o.defineProperty(n,i,r))}}else o[s].__defineGetter__&&n.__defineGetter__(i,a)}}(window);var f,g,m,v=document.createElement("_");if(v.classList.add("c1","c2"),!v.classList.contains("c2")){var y=DOMTokenList.prototype.add,x=DOMTokenList.prototype.remove;DOMTokenList.prototype.add=function(){Array.prototype.forEach.call(arguments,y.bind(this))},DOMTokenList.prototype.remove=function(){Array.prototype.forEach.call(arguments,x.bind(this))}}if(v.classList.toggle("c3",!1),v.classList.contains("c3")){var b=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:b.call(this,t)}}v=null,String.prototype.startsWith||(f=function(){try{var t={},e=Object.defineProperty,i=e(t,t,t)&&e}catch(t){}return i}(),g={}.toString,m=function(t){if(null==this)throw new TypeError;var e=String(this);if(t&&"[object RegExp]"==g.call(t))throw new TypeError;var i=e.length,s=String(t),n=s.length,o=1<arguments.length?arguments[1]:void 0,a=o?Number(o):0;a!=a&&(a=0);var r=Math.min(Math.max(a,0),i);if(i<n+r)return!1;for(var h=-1;++h<n;)if(e.charCodeAt(r+h)!=s.charCodeAt(h))return!1;return!0},f?f(String.prototype,"startsWith",{value:m,configurable:!0,writable:!0}):String.prototype.startsWith=m),Object.keys||(Object.keys=function(t,e,i){for(e in i=[],t)i.hasOwnProperty.call(t,e)&&i.push(e);return i}),HTMLSelectElement&&!HTMLSelectElement.prototype.hasOwnProperty("selectedOptions")&&Object.defineProperty(HTMLSelectElement.prototype,"selectedOptions",{get:function(){return this.querySelectorAll(":checked")}});var w={useDefault:!1,_set:t.valHooks.select.set};t.valHooks.select.set=function(e,i){return i&&!w.useDefault&&t(e).data("selected",!0),w._set.apply(this,arguments)};var k=null,M=function(){try{return new Event("change"),!0}catch(t){return!1}}();t.fn.triggerNative=function(t){var e,i=this[0];i.dispatchEvent?(M?e=new Event(t,{bubbles:!0}):(e=document.createEvent("Event")).initEvent(t,!0,!1),i.dispatchEvent(e)):i.fireEvent?((e=document.createEventObject()).eventType=t,i.fireEvent("on"+t,e)):this.trigger(t)};var S,T,C,A,D,E={"À":"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","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"},O=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,L=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g"),I=(S={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},T=function(t){return S[t]},C="(?:"+Object.keys(S).join("|")+")",A=RegExp(C),D=RegExp(C,"g"),function(t){return t=null==t?"":""+t,A.test(t)?t.replace(D,T):t}),P={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},z={success:!1,major:"3"};try{z.full=(t.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),z.major=z.full[0],z.success=!0}catch(d){}var N=0,H=".bs.select",B={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},W={MENU:"."+B.MENU},R={span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode(" "),fragment:document.createDocumentFragment()};R.a.setAttribute("role","option"),R.subtext.className="text-muted",R.text=R.span.cloneNode(!1),R.text.className="text",R.checkMark=R.span.cloneNode(!1);var _=new RegExp("38|40"),F=new RegExp("^9$|27"),j=function(t,e,i){var s=R.li.cloneNode(!1);return t&&(1===t.nodeType||11===t.nodeType?s.appendChild(t):s.innerHTML=t),void 0!==e&&""!==e&&(s.className=e),null!=i&&s.classList.add("optgroup-"+i),s},G=function(t,e,i){var s=R.a.cloneNode(!0);return t&&(11===t.nodeType?s.appendChild(t):s.insertAdjacentHTML("beforeend",t)),void 0!==e&&""!==e&&(s.className=e),"4"===z.major&&s.classList.add("dropdown-item"),i&&s.setAttribute("style",i),s},$=function(t,e){var i,s,n=R.text.cloneNode(!1);if(t.content)n.innerHTML=t.content;else{if(n.textContent=t.text,t.icon){var o=R.whitespace.cloneNode(!1);(s=(!0===e?R.i:R.span).cloneNode(!1)).className=t.iconBase+" "+t.icon,R.fragment.appendChild(s),R.fragment.appendChild(o)}t.subtext&&((i=R.subtext.cloneNode(!1)).textContent=t.subtext,n.appendChild(i))}if(!0===e)for(;0<n.childNodes.length;)R.fragment.appendChild(n.childNodes[0]);else R.fragment.appendChild(n);return R.fragment},U=function(t){var e,i,s=R.text.cloneNode(!1);if(s.innerHTML=t.label,t.icon){var n=R.whitespace.cloneNode(!1);(i=R.span.cloneNode(!1)).className=t.iconBase+" "+t.icon,R.fragment.appendChild(i),R.fragment.appendChild(n)}return t.subtext&&((e=R.subtext.cloneNode(!1)).textContent=t.subtext,s.appendChild(e)),R.fragment.appendChild(s),R.fragment},Y=function(e,i){var s=this;w.useDefault||(t.valHooks.select.set=w._set,w.useDefault=!0),this.$element=t(e),this.$newElement=null,this.$button=null,this.$menu=null,this.options=i,this.selectpicker={main:{},search:{},current:{},view:{},keydown:{keyHistory:"",resetKeyHistory:{start:function(){return setTimeout(function(){s.selectpicker.keydown.keyHistory=""},800)}}}},null===this.options.title&&(this.options.title=this.$element.attr("title"));var n=this.options.windowPadding;"number"==typeof n&&(this.options.windowPadding=[n,n,n,n]),this.val=Y.prototype.val,this.render=Y.prototype.render,this.refresh=Y.prototype.refresh,this.setStyle=Y.prototype.setStyle,this.selectAll=Y.prototype.selectAll,this.deselectAll=Y.prototype.deselectAll,this.destroy=Y.prototype.destroy,this.remove=Y.prototype.remove,this.show=Y.prototype.show,this.hide=Y.prototype.hide,this.init()};Y.VERSION="1.13.10",Y.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results matched {0}",countSelectedText:function(t,e){return 1==t?"{0} item selected":"{0} items selected"},maxOptionsText:function(t,e){return[1==t?"Limit reached ({n} item max)":"Limit reached ({n} items max)",1==e?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)"]},selectAllText:"Select All",deselectAllText:"Deselect All",doneButton:!1,doneButtonText:"Close",multipleSeparator:", ",styleBase:"btn",style:B.BUTTONCLASS,size:"auto",title:null,selectedTextFormat:"values",width:!1,container:!1,hideDisabled:!1,showSubtext:!1,showIcon:!0,showContent:!0,dropupAuto:!0,header:!1,liveSearch:!1,liveSearchPlaceholder:null,liveSearchNormalize:!1,liveSearchStyle:"contains",actionsBox:!1,iconBase:B.ICONBASE,tickIcon:B.TICKICON,showTick:!1,template:{caret:'<span class="caret"></span>'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:d},Y.prototype={constructor:Y,init:function(){var t=this,e=this.$element.attr("id");N++,this.selectId="bs-select-"+N,this.$element[0].classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$element[0].classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.$element.after(this.$newElement).prependTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(W.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element[0].classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(B.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+H,function(){if(t.isVirtual()){var e=t.$menuInner[0],i=e.firstChild.cloneNode(!1);e.replaceChild(i,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){t.$element.trigger("hide"+H,e)},"hidden.bs.dropdown":function(e){t.$element.trigger("hidden"+H,e)},"show.bs.dropdown":function(e){t.$element.trigger("show"+H,e)},"shown.bs.dropdown":function(e){t.$element.trigger("shown"+H,e)}}),t.$element[0].hasAttribute("required")&&this.$element.on("invalid"+H,function(){t.$button[0].classList.add("bs-invalid"),t.$element.on("shown"+H+".invalid",function(){t.$element.val(t.$element.val()).off("shown"+H+".invalid")}).on("rendered"+H,function(){this.validity.valid&&t.$button[0].classList.remove("bs-invalid"),t.$element.off("rendered"+H)}),t.$button.on("blur"+H,function(){t.$element.trigger("focus").trigger("blur"),t.$button.off("blur"+H)})}),setTimeout(function(){t.createLi(),t.$element.trigger("loaded"+H)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",i=this.multiple?' aria-multiselectable="true"':"",s="",n=this.autofocus?" autofocus":"";z.major<4&&this.$element.parent().hasClass("input-group")&&(s=" input-group-btn");var o,a="",r="",h="",l="";return this.options.header&&(a='<div class="'+B.POPOVERHEADER+'"><button type="button" class="close" aria-hidden="true">&times;</button>'+this.options.header+"</div>"),this.options.liveSearch&&(r='<div class="bs-searchbox"><input type="text" class="form-control" autocomplete="off"'+(null===this.options.liveSearchPlaceholder?"":' placeholder="'+I(this.options.liveSearchPlaceholder)+'"')+' role="combobox" aria-label="Search" aria-controls="'+this.selectId+'" aria-autocomplete="list"></div>'),this.multiple&&this.options.actionsBox&&(h='<div class="bs-actionsbox"><div class="btn-group btn-group-sm btn-block"><button type="button" class="actions-btn bs-select-all btn '+B.BUTTONCLASS+'">'+this.options.selectAllText+'</button><button type="button" class="actions-btn bs-deselect-all btn '+B.BUTTONCLASS+'">'+this.options.deselectAllText+"</button></div></div>"),this.multiple&&this.options.doneButton&&(l='<div class="bs-donebutton"><div class="btn-group btn-block"><button type="button" class="btn btn-sm '+B.BUTTONCLASS+'">'+this.options.doneButtonText+"</button></div></div>"),o='<div class="dropdown bootstrap-select'+e+s+'"><button type="button" class="'+this.options.styleBase+' dropdown-toggle" '+("static"===this.options.display?'data-display="static"':"")+'data-toggle="dropdown"'+n+' role="combobox" aria-owns="'+this.selectId+'" aria-haspopup="listbox" aria-expanded="false"><div class="filter-option"><div class="filter-option-inner"><div class="filter-option-inner-inner"></div></div> </div>'+("4"===z.major?"":'<span class="bs-caret">'+this.options.template.caret+"</span>")+'</button><div class="'+B.MENU+" "+("4"===z.major?"":B.SHOW)+'">'+a+r+h+'<div class="inner '+B.SHOW+'" role="listbox" id="'+this.selectId+'" tabindex="-1" '+i+'><ul class="'+B.MENU+" inner "+("4"===z.major?B.SHOW:"")+'" role="presentation"></ul></div>'+l+"</div></div>",t(o)},setPositionData:function(){this.selectpicker.view.canHighlight=[];for(var t=this.selectpicker.view.size=0;t<this.selectpicker.current.data.length;t++){var e=this.selectpicker.current.data[t],i=!0;"divider"===e.type?(i=!1,e.height=this.sizeInfo.dividerHeight):"optgroup-label"===e.type?(i=!1,e.height=this.sizeInfo.dropdownHeaderHeight):e.height=this.sizeInfo.liHeight,e.disabled&&(i=!1),this.selectpicker.view.canHighlight.push(i),i&&(this.selectpicker.view.size++,e.posinset=this.selectpicker.view.size),e.position=(0===t?0:this.selectpicker.current.data[t-1].position)+e.height}},isVirtual:function(){return!1!==this.options.virtualScroll&&this.selectpicker.main.elements.length>=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(e,s,n){function o(t,s){var n,o,l,d,p,u,f,g,m,v,y=h.selectpicker.current.elements.length,x=[],b=!0,w=h.isVirtual();h.selectpicker.view.scrollTop=t,!0===w&&h.sizeInfo.hasScrollBar&&h.$menu[0].offsetWidth>h.sizeInfo.totalMenuWidth&&(h.sizeInfo.menuWidth=h.$menu[0].offsetWidth,h.sizeInfo.totalMenuWidth=h.sizeInfo.menuWidth+h.sizeInfo.scrollBarWidth,h.$menu.css("min-width",h.sizeInfo.menuWidth)),n=Math.ceil(h.sizeInfo.menuInnerHeight/h.sizeInfo.liHeight*1.5),o=Math.round(y/n)||1;for(var k=0;k<o;k++){var M=(k+1)*n;if(k===o-1&&(M=y),x[k]=[k*n+(k?1:0),M],!y)break;void 0===p&&t<=h.selectpicker.current.data[M-1].position-h.sizeInfo.menuInnerHeight&&(p=k)}if(void 0===p&&(p=0),u=[h.selectpicker.view.position0,h.selectpicker.view.position1],l=Math.max(0,p-1),d=Math.min(o-1,p+1),h.selectpicker.view.position0=!1===w?0:Math.max(0,x[l][0])||0,h.selectpicker.view.position1=!1===w?y:Math.min(y,x[d][1])||0,f=u[0]!==h.selectpicker.view.position0||u[1]!==h.selectpicker.view.position1,void 0!==h.activeIndex&&(r=h.selectpicker.main.elements[h.prevActiveIndex],c=h.selectpicker.main.elements[h.activeIndex],a=h.selectpicker.main.elements[h.selectedIndex],s&&(h.activeIndex!==h.selectedIndex&&h.defocusItem(c),h.activeIndex=void 0),h.activeIndex&&h.activeIndex!==h.selectedIndex&&h.defocusItem(a)),void 0!==h.prevActiveIndex&&h.prevActiveIndex!==h.activeIndex&&h.prevActiveIndex!==h.selectedIndex&&h.defocusItem(r),(s||f)&&(g=h.selectpicker.view.visibleElements?h.selectpicker.view.visibleElements.slice():[],h.selectpicker.view.visibleElements=!1===w?h.selectpicker.current.elements:h.selectpicker.current.elements.slice(h.selectpicker.view.position0,h.selectpicker.view.position1),h.setOptionStatus(),(e||!1===w&&s)&&(m=g,v=h.selectpicker.view.visibleElements,b=!(m.length===v.length&&m.every(function(t,e){return t===v[e]}))),(s||!0===w)&&b)){var S,T,C=h.$menuInner[0],A=document.createDocumentFragment(),D=C.firstChild.cloneNode(!1),E=h.selectpicker.view.visibleElements,O=[];C.replaceChild(D,C.firstChild),k=0;for(var L=E.length;k<L;k++){var I,P,z=E[k];h.options.sanitize&&(I=z.lastChild)&&(P=h.selectpicker.current.data[k+h.selectpicker.view.position0])&&P.content&&!P.sanitized&&(O.push(I),P.sanitized=!0),A.appendChild(z)}h.options.sanitize&&O.length&&i(O,h.options.whiteList,h.options.sanitizeFn),C.firstChild.style.marginBottom=!0===w?(S=0===h.selectpicker.view.position0?0:h.selectpicker.current.data[h.selectpicker.view.position0-1].position,T=h.selectpicker.view.position1>y-1?0:h.selectpicker.current.data[y-1].position-h.selectpicker.current.data[h.selectpicker.view.position1-1].position,C.firstChild.style.marginTop=S+"px",T+"px"):C.firstChild.style.marginTop=0,C.firstChild.appendChild(A)}if(h.prevActiveIndex=h.activeIndex,h.options.liveSearch){if(e&&s){var N,H=0;h.selectpicker.view.canHighlight[H]||(H=1+h.selectpicker.view.canHighlight.slice(1).indexOf(!0)),N=h.selectpicker.view.visibleElements[H],h.defocusItem(h.selectpicker.view.currentActive),h.activeIndex=(h.selectpicker.current.data[H]||{}).index,h.focusItem(N)}}else h.$menuInner.trigger("focus")}var a,r,h=this,l=0,c=[];if(this.selectpicker.current=e?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),s)if(n)l=this.$menuInner[0].scrollTop;else if(!h.multiple){var d=h.$element[0],p=(d.options[d.selectedIndex]||{}).liIndex;if("number"==typeof p&&!1!==h.options.size){var u=h.selectpicker.main.data[p],f=u&&u.position;f&&(l=f-(h.sizeInfo.menuInnerHeight+h.sizeInfo.liHeight)/2)}}o(l,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(t,e){h.noScroll||o(this.scrollTop,e),h.noScroll=!1}),t(window).off("resize"+H+"."+this.selectId+".createView").on("resize"+H+"."+this.selectId+".createView",function(){h.$newElement.hasClass(B.SHOW)&&o(h.$menuInner[0].scrollTop)})},focusItem:function(t,e,i){if(t){e=e||this.selectpicker.main.data[this.activeIndex];var s=t.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",e.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),t.classList.add("active"),s.classList.add("active")))}},defocusItem:function(t){t&&(t.classList.remove("active"),t.firstChild&&t.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),e=!0;var i=this.$element[0],s=!1,n=!this.selectpicker.view.titleOption.parentNode;n&&(this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",s=void 0===t(i.options[i.selectedIndex]).attr("selected")&&void 0===this.$element.data("selected")),(n||0!==this.selectpicker.view.titleOption.index)&&i.insertBefore(this.selectpicker.view.titleOption,i.firstChild),s&&(i.selectedIndex=0)}return e},createLi:function(){function t(t){var e=a[a.length-1];e&&"divider"===e.type&&(e.optID||t.optID)||((t=t||{}).type="divider",o.push(j(!1,B.DIVIDER,t.optID?t.optID+"div":void 0)),a.push(t))}function e(e,n){if((n=n||{}).divider="true"===e.getAttribute("data-divider"),n.divider)t({optID:n.optID});else{var h=a.length,l=e.style.cssText,c=l?I(l):"",d=(e.className||"")+(n.optgroupClass||"");n.optID&&(d="opt "+d),n.text=e.textContent,n.content=e.getAttribute("data-content"),n.tokens=e.getAttribute("data-tokens"),n.subtext=e.getAttribute("data-subtext"),n.icon=e.getAttribute("data-icon"),n.iconBase=s;var p=$(n),u=j(G(p,d,c),"",n.optID);u.firstChild&&(u.firstChild.id=i.selectId+"-"+h),o.push(u),e.liIndex=h,n.display=n.content||n.text,n.type="option",n.index=h,n.option=e,n.disabled=n.disabled||e.disabled,a.push(n);var f=0;n.display&&(f+=n.display.length),n.subtext&&(f+=n.subtext.length),n.icon&&(f+=1),r<f&&(r=f,i.selectpicker.view.widestOption=o[o.length-1])}}var i=this,s=this.options.iconBase,n=':not([hidden]):not([data-hidden="true"])',o=[],a=[],r=0,h=0,l=this.setPlaceholder()?1:0;this.options.hideDisabled&&(n+=":not(:disabled)"),!i.options.showTick&&!i.multiple||R.checkMark.parentNode||(R.checkMark.className=s+" "+i.options.tickIcon+" check-mark",R.a.appendChild(R.checkMark));for(var c=this.$element[0].querySelectorAll("select > *"+n),d=c.length;l<d;l++){var p=c[l];"OPTGROUP"!==p.tagName?e(p,{}):function(i,r){var l=r[i],c=r[i-1],d=r[i+1],p=l.querySelectorAll("option"+n);if(p.length){var u,f,g={label:I(l.label),subtext:l.getAttribute("data-subtext"),icon:l.getAttribute("data-icon"),iconBase:s},m=" "+(l.className||"");h++,c&&t({optID:h});var v=U(g);o.push(j(v,"dropdown-header"+m,h)),a.push({display:g.label,subtext:g.subtext,type:"optgroup-label",optID:h});for(var y=0,x=p.length;y<x;y++){var b=p[y];0===y&&(f=(u=a.length-1)+x),e(b,{headerIndex:u,lastIndex:f,optID:h,optgroupClass:m,disabled:l.disabled})}d&&t({optID:h})}}(l,c)}this.selectpicker.main.elements=o,this.selectpicker.main.data=a,this.selectpicker.current=this.selectpicker.main},findLis:function(){return this.$menuInner.find(".inner > li")},render:function(){this.setPlaceholder();var t,e,n=this,o=this.$element[0],a=function(t,e){var i,s=t.selectedOptions,n=[];if(e){for(var o=0,a=s.length;o<a;o++)(i=s[o]).disabled||"OPTGROUP"===i.parentNode.tagName&&i.parentNode.disabled||n.push(i);return n}return s}(o,this.options.hideDisabled),r=a.length,h=this.$button[0],l=h.querySelector(".filter-option-inner-inner"),c=document.createTextNode(this.options.multipleSeparator),d=R.fragment.cloneNode(!1),p=!1;if(h.classList.toggle("bs-placeholder",n.multiple?!r:!s(o,a)),this.tabIndex(),"static"===this.options.selectedTextFormat)d=$({text:this.options.title},!0);else if((t=this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1<r)&&(t=1<(e=this.options.selectedTextFormat.split(">")).length&&r>e[1]||1===e.length&&2<=r),!1===t){for(var u=0;u<r&&u<50;u++){var f=a[u],g={},m={content:f.getAttribute("data-content"),subtext:f.getAttribute("data-subtext"),icon:f.getAttribute("data-icon")};this.multiple&&0<u&&d.appendChild(c.cloneNode(!1)),f.title?g.text=f.title:m.content&&n.options.showContent?(g.content=m.content.toString(),p=!0):(n.options.showIcon&&(g.icon=m.icon,g.iconBase=this.options.iconBase),n.options.showSubtext&&!n.multiple&&m.subtext&&(g.subtext=" "+m.subtext),g.text=f.textContent.trim()),d.appendChild($(g,!0))}49<r&&d.appendChild(document.createTextNode("..."))}else{var v=':not([hidden]):not([data-hidden="true"]):not([data-divider="true"])';this.options.hideDisabled&&(v+=":not(:disabled)");var y=this.$element[0].querySelectorAll("select > option"+v+", optgroup"+v+" option"+v).length,x="function"==typeof this.options.countSelectedText?this.options.countSelectedText(r,y):this.options.countSelectedText;d=$({text:x.replace("{0}",r.toString()).replace("{1}",y.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),d.childNodes.length||(d=$({text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),h.title=d.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&p&&i([d],n.options.whiteList,n.options.sanitizeFn),l.innerHTML="",l.appendChild(d),z.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var b=h.querySelector(".filter-expand"),w=l.cloneNode(!0);w.className="filter-expand",b?h.replaceChild(w,b):h.appendChild(w)}this.$element.trigger("rendered"+H)},setStyle:function(t,e){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),z.major<4&&(n.classList.add("bs3"),n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=t?t.trim():o,
"add"==e?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==e?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!this.sizeInfo){this.sizeInfo||(this.sizeInfo={});var i=document.createElement("div"),s=document.createElement("div"),n=document.createElement("div"),a=document.createElement("ul"),r=document.createElement("li"),h=document.createElement("li"),l=document.createElement("li"),c=document.createElement("a"),d=document.createElement("span"),p=this.options.header&&0<this.$menu.find("."+B.POPOVERHEADER).length?this.$menu.find("."+B.POPOVERHEADER)[0].cloneNode(!0):null,u=this.options.liveSearch?document.createElement("div"):null,f=this.options.actionsBox&&this.multiple&&0<this.$menu.find(".bs-actionsbox").length?this.$menu.find(".bs-actionsbox")[0].cloneNode(!0):null,g=this.options.doneButton&&this.multiple&&0<this.$menu.find(".bs-donebutton").length?this.$menu.find(".bs-donebutton")[0].cloneNode(!0):null,m=this.$element.find("option")[0];if(this.sizeInfo.selectWidth=this.$newElement[0].offsetWidth,d.className="text",c.className="dropdown-item "+(m?m.className:""),i.className=this.$menu[0].parentNode.className+" "+B.SHOW,i.style.width=this.sizeInfo.selectWidth+"px","auto"===this.options.width&&(s.style.minWidth=0),s.className=B.MENU+" "+B.SHOW,n.className="inner "+B.SHOW,a.className=B.MENU+" inner "+("4"===z.major?B.SHOW:""),r.className=B.DIVIDER,h.className="dropdown-header",d.appendChild(document.createTextNode("​")),c.appendChild(d),l.appendChild(c),h.appendChild(d.cloneNode(!0)),this.selectpicker.view.widestOption&&a.appendChild(this.selectpicker.view.widestOption.cloneNode(!0)),a.appendChild(l),a.appendChild(r),a.appendChild(h),p&&s.appendChild(p),u){var v=document.createElement("input");u.className="bs-searchbox",v.className="form-control",u.appendChild(v),s.appendChild(u)}f&&s.appendChild(f),n.appendChild(a),s.appendChild(n),g&&s.appendChild(g),i.appendChild(s),document.body.appendChild(i);var y,x=l.offsetHeight,b=h?h.offsetHeight:0,w=p?p.offsetHeight:0,k=u?u.offsetHeight:0,M=f?f.offsetHeight:0,S=g?g.offsetHeight:0,T=t(r).outerHeight(!0),C=!!window.getComputedStyle&&window.getComputedStyle(s),A=s.offsetWidth,D=C?null:t(s),E={vert:o(C?C.paddingTop:D.css("paddingTop"))+o(C?C.paddingBottom:D.css("paddingBottom"))+o(C?C.borderTopWidth:D.css("borderTopWidth"))+o(C?C.borderBottomWidth:D.css("borderBottomWidth")),horiz:o(C?C.paddingLeft:D.css("paddingLeft"))+o(C?C.paddingRight:D.css("paddingRight"))+o(C?C.borderLeftWidth:D.css("borderLeftWidth"))+o(C?C.borderRightWidth:D.css("borderRightWidth"))},O={vert:E.vert+o(C?C.marginTop:D.css("marginTop"))+o(C?C.marginBottom:D.css("marginBottom"))+2,horiz:E.horiz+o(C?C.marginLeft:D.css("marginLeft"))+o(C?C.marginRight:D.css("marginRight"))+2};n.style.overflowY="scroll",y=s.offsetWidth-A,document.body.removeChild(i),this.sizeInfo.liHeight=x,this.sizeInfo.dropdownHeaderHeight=b,this.sizeInfo.headerHeight=w,this.sizeInfo.searchHeight=k,this.sizeInfo.actionsHeight=M,this.sizeInfo.doneButtonHeight=S,this.sizeInfo.dividerHeight=T,this.sizeInfo.menuPadding=E,this.sizeInfo.menuExtras=O,this.sizeInfo.menuWidth=A,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth,this.sizeInfo.scrollBarWidth=y,this.sizeInfo.selectHeight=this.$newElement[0].offsetHeight,this.setPositionData()}},getSelectPosition:function(){var e,i=t(window),s=this.$newElement.offset(),n=t(this.options.container);this.options.container&&n.length&&!n.is("body")?((e=n.offset()).top+=parseInt(n.css("borderTopWidth")),e.left+=parseInt(n.css("borderLeftWidth"))):e={top:0,left:0};var o=this.options.windowPadding;this.sizeInfo.selectOffsetTop=s.top-e.top-i.scrollTop(),this.sizeInfo.selectOffsetBot=i.height()-this.sizeInfo.selectOffsetTop-this.sizeInfo.selectHeight-e.top-o[2],this.sizeInfo.selectOffsetLeft=s.left-e.left-i.scrollLeft(),this.sizeInfo.selectOffsetRight=i.width()-this.sizeInfo.selectOffsetLeft-this.sizeInfo.selectWidth-e.left-o[1],this.sizeInfo.selectOffsetTop-=o[0],this.sizeInfo.selectOffsetLeft-=o[3]},setMenuSize:function(t){this.getSelectPosition();var e,i,s,n,o,a,r,h=this.sizeInfo.selectWidth,l=this.sizeInfo.liHeight,c=this.sizeInfo.headerHeight,d=this.sizeInfo.searchHeight,p=this.sizeInfo.actionsHeight,u=this.sizeInfo.doneButtonHeight,f=this.sizeInfo.dividerHeight,g=this.sizeInfo.menuPadding,m=0;if(this.options.dropupAuto&&(r=l*this.selectpicker.current.elements.length+g.vert,this.$newElement.toggleClass(B.DROPUP,this.sizeInfo.selectOffsetTop-this.sizeInfo.selectOffsetBot>this.sizeInfo.menuExtras.vert&&r+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot)),"auto"===this.options.size)n=3<this.selectpicker.current.elements.length?3*this.sizeInfo.liHeight+this.sizeInfo.menuExtras.vert-2:0,i=this.sizeInfo.selectOffsetBot-this.sizeInfo.menuExtras.vert,s=n+c+d+p+u,a=Math.max(n-g.vert,0),this.$newElement.hasClass(B.DROPUP)&&(i=this.sizeInfo.selectOffsetTop-this.sizeInfo.menuExtras.vert),e=(o=i)-c-d-p-u-g.vert;else if(this.options.size&&"auto"!=this.options.size&&this.selectpicker.current.elements.length>this.options.size){for(var v=0;v<this.options.size;v++)"divider"===this.selectpicker.current.data[v].type&&m++;e=(i=l*this.options.size+m*f+g.vert)-g.vert,o=i+c+d+p+u,s=a=""}"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(B.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRight<this.sizeInfo.totalMenuWidth-h),this.$menu.css({"max-height":o+"px",overflow:"hidden","min-height":s+"px"}),this.$menuInner.css({"max-height":e+"px","overflow-y":"auto","min-height":a+"px"}),this.sizeInfo.menuInnerHeight=Math.max(e,1),this.selectpicker.current.data.length&&this.selectpicker.current.data[this.selectpicker.current.data.length-1].position>this.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth,this.$menu.css("min-width",this.sizeInfo.totalMenuWidth)),this.dropdown&&this.dropdown._popper&&this.dropdown._popper.update()},setSize:function(e){if(this.liHeight(e),this.options.header&&this.$menu.css("padding-top",0),!1!==this.options.size){var i=this,s=t(window);this.setMenuSize(),this.options.liveSearch&&this.$searchbox.off("input.setMenuSize propertychange.setMenuSize").on("input.setMenuSize propertychange.setMenuSize",function(){return i.setMenuSize()}),"auto"===this.options.size?s.off("resize"+H+"."+this.selectId+".setMenuSize scroll"+H+"."+this.selectId+".setMenuSize").on("resize"+H+"."+this.selectId+".setMenuSize scroll"+H+"."+this.selectId+".setMenuSize",function(){return i.setMenuSize()}):this.options.size&&"auto"!=this.options.size&&this.selectpicker.current.elements.length>this.options.size&&s.off("resize"+H+"."+this.selectId+".setMenuSize scroll"+H+"."+this.selectId+".setMenuSize"),i.createView(!1,!0,e)}},setWidth:function(){var t=this;"auto"===this.options.width?requestAnimationFrame(function(){t.$menu.css("min-width","0"),t.$element.on("loaded"+H,function(){t.liHeight(),t.setMenuSize();var e=t.$newElement.clone().appendTo("body"),i=e.css("width","auto").children("button").outerWidth();e.remove(),t.sizeInfo.selectWidth=Math.max(t.sizeInfo.totalMenuWidth,i),t.$newElement.css("width",t.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=t('<div class="bs-container" />');var e,i,s,n=this,o=t(this.options.container),a=function(a){var r={},h=n.options.display||!!t.fn.dropdown.Constructor.Default&&t.fn.dropdown.Constructor.Default.display;n.$bsContainer.addClass(a.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(B.DROPUP,a.hasClass(B.DROPUP)),e=a.offset(),o.is("body")?i={top:0,left:0}:((i=o.offset()).top+=parseInt(o.css("borderTopWidth"))-o.scrollTop(),i.left+=parseInt(o.css("borderLeftWidth"))-o.scrollLeft()),s=a.hasClass(B.DROPUP)?0:a[0].offsetHeight,(z.major<4||"static"===h)&&(r.top=e.top-i.top+s,r.left=e.left-i.left),r.width=a[0].offsetWidth,n.$bsContainer.css(r)};this.$button.on("click.bs.dropdown.data-api",function(){n.isDisabled()||(a(n.$newElement),n.$bsContainer.appendTo(n.options.container).toggleClass(B.SHOW,!n.$button.hasClass(B.SHOW)).append(n.$menu))}),t(window).off("resize"+H+"."+this.selectId+" scroll"+H+"."+this.selectId).on("resize"+H+"."+this.selectId+" scroll"+H+"."+this.selectId,function(){n.$newElement.hasClass(B.SHOW)&&a(n.$newElement)}),this.$element.on("hide"+H,function(){n.$menu.data("height",n.$menu.height()),n.$bsContainer.detach()})},setOptionStatus:function(t){var e=this;if(e.noScroll=!1,e.selectpicker.view.visibleElements&&e.selectpicker.view.visibleElements.length)for(var i=0;i<e.selectpicker.view.visibleElements.length;i++){var s=e.selectpicker.current.data[i+e.selectpicker.view.position0],n=s.option;n&&(!0!==t&&e.setDisabled(s.index,s.disabled),e.setSelected(s.index,n.selected))}},setSelected:function(t,e){var i,s,n=this.selectpicker.main.elements[t],o=this.selectpicker.main.data[t],a=void 0!==this.activeIndex,r=this.activeIndex===t||e&&!this.multiple&&!a;o.selected=e,s=n.firstChild,e&&(this.selectedIndex=t),n.classList.toggle("selected",e),r?(this.focusItem(n,o),this.selectpicker.view.currentActive=n,this.activeIndex=t):this.defocusItem(n),s&&(s.classList.toggle("selected",e),e?s.setAttribute("aria-selected",!0):this.multiple?s.setAttribute("aria-selected",!1):s.removeAttribute("aria-selected")),r||a||!e||void 0===this.prevActiveIndex||(i=this.selectpicker.main.elements[this.prevActiveIndex],this.defocusItem(i))},setDisabled:function(t,e){var i,s=this.selectpicker.main.elements[t];this.selectpicker.main.data[t].disabled=e,i=s.firstChild,s.classList.toggle(B.DISABLED,e),i&&("4"===z.major&&i.classList.toggle(B.DISABLED,e),e?(i.setAttribute("aria-disabled",e),i.setAttribute("tabindex",-1)):(i.removeAttribute("aria-disabled"),i.setAttribute("tabindex",0)))},isDisabled:function(){return this.$element[0].disabled},checkDisabled:function(){var t=this;this.isDisabled()?(this.$newElement[0].classList.add(B.DISABLED),this.$button.addClass(B.DISABLED).attr("tabindex",-1).attr("aria-disabled",!0)):(this.$button[0].classList.contains(B.DISABLED)&&(this.$newElement[0].classList.remove(B.DISABLED),this.$button.removeClass(B.DISABLED).attr("aria-disabled",!1)),-1!=this.$button.attr("tabindex")||this.$element.data("tabindex")||this.$button.removeAttr("tabindex")),this.$button.on("click",function(){return!t.isDisabled()})},tabIndex:function(){this.$element.data("tabindex")!==this.$element.attr("tabindex")&&-98!==this.$element.attr("tabindex")&&"-98"!==this.$element.attr("tabindex")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex"))),this.$element.attr("tabindex",-98)},clickListener:function(){function e(){n.options.liveSearch?n.$searchbox.trigger("focus"):n.$menuInner.trigger("focus")}function i(){n.dropdown&&n.dropdown._popper&&n.dropdown._popper.state.isCreated?e():requestAnimationFrame(i)}var n=this,o=t(document);o.data("spaceSelect",!1),this.$button.on("keyup",function(t){/(32)/.test(t.keyCode.toString(10))&&o.data("spaceSelect")&&(t.preventDefault(),o.data("spaceSelect",!1))}),this.$newElement.on("show.bs.dropdown",function(){3<z.major&&!n.dropdown&&(n.dropdown=n.$button.data("bs.dropdown"),n.dropdown._menu=n.$menu[0])}),this.$button.on("click.bs.dropdown.data-api",function(){n.$newElement.hasClass(B.SHOW)||n.setSize()}),this.$element.on("shown"+H,function(){n.$menuInner[0].scrollTop!==n.selectpicker.view.scrollTop&&(n.$menuInner[0].scrollTop=n.selectpicker.view.scrollTop),3<z.major?requestAnimationFrame(i):e()}),this.$menuInner.on("mouseenter","li a",function(t){var e=this.parentElement,i=n.isVirtual()?n.selectpicker.view.position0:0,s=Array.prototype.indexOf.call(e.parentElement.children,e),o=n.selectpicker.current.data[s+i];n.focusItem(e,o,!0)}),this.$menuInner.on("click","li a",function(e,i){var o=t(this),a=n.$element[0],r=n.isVirtual()?n.selectpicker.view.position0:0,h=n.selectpicker.current.data[o.parent().index()+r],l=h.index,c=s(a),d=a.selectedIndex,p=a.options[d],u=!0;if(n.multiple&&1!==n.options.maxOptions&&e.stopPropagation(),e.preventDefault(),!n.isDisabled()&&!o.parent().hasClass(B.DISABLED)){var f=n.$element.find("option"),g=h.option,m=t(g),v=g.selected,y=m.parent("optgroup"),x=y.find("option"),b=n.options.maxOptions,w=y.data("maxOptions")||!1;if(l===n.activeIndex&&(i=!0),i||(n.prevActiveIndex=n.activeIndex,n.activeIndex=void 0),n.multiple){if(g.selected=!v,n.setSelected(l,!v),o.trigger("blur"),!1!==b||!1!==w){var M=b<f.filter(":selected").length,S=w<y.find("option:selected").length;if(b&&M||w&&S)if(b&&1==b){f.prop("selected",!1),m.prop("selected",!0);for(var T=0;T<f.length;T++)n.setSelected(T,!1);n.setSelected(l,!0)}else if(w&&1==w){for(y.find("option:selected").prop("selected",!1),m.prop("selected",!0),T=0;T<x.length;T++)g=x[T],n.setSelected(f.index(g),!1);n.setSelected(l,!0)}else{var C="string"==typeof n.options.maxOptionsText?[n.options.maxOptionsText,n.options.maxOptionsText]:n.options.maxOptionsText,A="function"==typeof C?C(b,w):C,D=A[0].replace("{n}",b),E=A[1].replace("{n}",w),O=t('<div class="notify"></div>');A[2]&&(D=D.replace("{var}",A[2][1<b?0:1]),E=E.replace("{var}",A[2][1<w?0:1])),m.prop("selected",!1),n.$menu.append(O),b&&M&&(O.append(t("<div>"+D+"</div>")),u=!1,n.$element.trigger("maxReached"+H)),w&&S&&(O.append(t("<div>"+E+"</div>")),u=!1,n.$element.trigger("maxReachedGrp"+H)),setTimeout(function(){n.setSelected(l,!1)},10),O.delay(750).fadeOut(300,function(){t(this).remove()})}}}else p.selected=!1,g.selected=!0,n.setSelected(l,!0);!n.multiple||n.multiple&&1===n.options.maxOptions?n.$button.trigger("focus"):n.options.liveSearch&&n.$searchbox.trigger("focus"),u&&(n.multiple||d!==a.selectedIndex)&&(k=[g.index,m.prop("selected"),c],n.$element.triggerNative("change"))}}),this.$menu.on("click","li."+B.DISABLED+" a, ."+B.POPOVERHEADER+", ."+B.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),n.options.liveSearch&&!t(e.target).hasClass("close")?n.$searchbox.trigger("focus"):n.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(t){t.preventDefault(),t.stopPropagation(),n.options.liveSearch?n.$searchbox.trigger("focus"):n.$button.trigger("focus")}),this.$menu.on("click","."+B.POPOVERHEADER+" .close",function(){n.$button.trigger("click")}),this.$searchbox.on("click",function(t){t.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){n.options.liveSearch?n.$searchbox.trigger("focus"):n.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),t(this).hasClass("bs-select-all")?n.selectAll():n.deselectAll()}),this.$element.on("change"+H,function(){n.render(),n.$element.trigger("changed"+H,k),k=null}).on("focus"+H,function(){n.options.mobile||n.$button.trigger("focus")})},liveSearchListener:function(){var t=this,e=document.createElement("li");this.$button.on("click.bs.dropdown.data-api",function(){t.$searchbox.val()&&t.$searchbox.val("")}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(t){t.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var i=t.$searchbox.val();if(t.selectpicker.search.elements=[],t.selectpicker.search.data=[],i){var s=[],o=i.toUpperCase(),a={},h=[],l=t._searchStyle(),c=t.options.liveSearchNormalize;c&&(o=r(o)),t._$lisSelected=t.$menuInner.find(".selected");for(var d=0;d<t.selectpicker.main.data.length;d++){var p=t.selectpicker.main.data[d];a[d]||(a[d]=n(p,o,l,c)),a[d]&&void 0!==p.headerIndex&&-1===h.indexOf(p.headerIndex)&&(0<p.headerIndex&&(a[p.headerIndex-1]=!0,h.push(p.headerIndex-1)),a[p.headerIndex]=!0,h.push(p.headerIndex),a[p.lastIndex+1]=!0),a[d]&&"optgroup-label"!==p.type&&h.push(d)}d=0;for(var u=h.length;d<u;d++){var f=h[d],g=h[d-1],m=(p=t.selectpicker.main.data[f],t.selectpicker.main.data[g]);("divider"!==p.type||"divider"===p.type&&m&&"divider"!==m.type&&u-1!==d)&&(t.selectpicker.search.data.push(p),s.push(t.selectpicker.main.elements[f]))}t.activeIndex=void 0,t.noScroll=!0,t.$menuInner.scrollTop(0),t.selectpicker.search.elements=s,t.createView(!0),s.length||(e.className="no-results",e.innerHTML=t.options.noneResultsText.replace("{0}",'"'+I(i)+'"'),t.$menuInner[0].firstChild.appendChild(e))}else t.$menuInner.scrollTop(0),t.createView(!1)})},_searchStyle:function(){return this.options.liveSearchStyle||"contains"},val:function(t){var e=this.$element[0];if(void 0===t)return this.$element.val();var i=s(e);if(k=[null,null,i],this.$element.val(t).trigger("changed"+H,k),this.$newElement.hasClass(B.SHOW))if(this.multiple)this.setOptionStatus(!0);else{var n=(e.options[e.selectedIndex]||{}).liIndex;"number"==typeof n&&(this.setSelected(this.selectedIndex,!1),this.setSelected(n,!0))}return this.render(),k=null,this.$element},changeAll:function(t){if(this.multiple){void 0===t&&(t=!0);var e=this.$element[0],i=0,n=0,o=s(e);e.classList.add("bs-select-hidden");for(var a=0,r=this.selectpicker.current.elements.length;a<r;a++){var h=this.selectpicker.current.data[a],l=h.option;l&&!h.disabled&&"divider"!==h.type&&(h.selected&&i++,(l.selected=t)&&n++)}e.classList.remove("bs-select-hidden"),i!==n&&(this.setOptionStatus(),k=[null,null,o],this.$element.triggerNative("change"))}},selectAll:function(){return this.changeAll(!0)},deselectAll:function(){return this.changeAll(!1)},toggle:function(t){(t=t||window.event)&&t.stopPropagation(),this.$button.trigger("click.bs.dropdown.data-api")},keydown:function(e){var i,s,o,a,r,h=t(this),l=h.hasClass("dropdown-toggle"),c=(l?h.closest(".dropdown"):h.closest(W.MENU)).data("this"),d=c.findLis(),p=!1,u=9===e.which&&!l&&!c.options.selectOnTab,f=_.test(e.which)||u,g=c.$menuInner[0].scrollTop,m=!0===c.isVirtual()?c.selectpicker.view.position0:0;if(!(s=c.$newElement.hasClass(B.SHOW))&&(f||48<=e.which&&e.which<=57||96<=e.which&&e.which<=105||65<=e.which&&e.which<=90)&&(c.$button.trigger("click.bs.dropdown.data-api"),c.options.liveSearch))c.$searchbox.trigger("focus");else{if(27===e.which&&s&&(e.preventDefault(),c.$button.trigger("click.bs.dropdown.data-api").trigger("focus")),f){if(!d.length)return;-1!==(i=(o=c.selectpicker.main.elements[c.activeIndex])?Array.prototype.indexOf.call(o.parentElement.children,o):-1)&&c.defocusItem(o),38===e.which?(-1!==i&&i--,i+m<0&&(i+=d.length),c.selectpicker.view.canHighlight[i+m]||-1==(i=c.selectpicker.view.canHighlight.slice(0,i+m).lastIndexOf(!0)-m)&&(i=d.length-1)):(40===e.which||u)&&(++i+m>=c.selectpicker.view.canHighlight.length&&(i=0),c.selectpicker.view.canHighlight[i+m]||(i=i+1+c.selectpicker.view.canHighlight.slice(i+m+1).indexOf(!0))),e.preventDefault();var v=m+i;38===e.which?0===m&&i===d.length-1?(c.$menuInner[0].scrollTop=c.$menuInner[0].scrollHeight,v=c.selectpicker.current.elements.length-1):p=(r=(a=c.selectpicker.current.data[v]).position-a.height)<g:(40===e.which||u)&&(0===i?v=c.$menuInner[0].scrollTop=0:p=g<(r=(a=c.selectpicker.current.data[v]).position-c.sizeInfo.menuInnerHeight)),o=c.selectpicker.current.elements[v],c.activeIndex=c.selectpicker.current.data[v].index,c.focusItem(o),c.selectpicker.view.currentActive=o,p&&(c.$menuInner[0].scrollTop=r),c.options.liveSearch?c.$searchbox.trigger("focus"):h.trigger("focus")}else if(!h.is("input")&&!F.test(e.which)||32===e.which&&c.selectpicker.keydown.keyHistory){var y,x,b=[];e.preventDefault(),c.selectpicker.keydown.keyHistory+=P[e.which],c.selectpicker.keydown.resetKeyHistory.cancel&&clearTimeout(c.selectpicker.keydown.resetKeyHistory.cancel),c.selectpicker.keydown.resetKeyHistory.cancel=c.selectpicker.keydown.resetKeyHistory.start(),x=c.selectpicker.keydown.keyHistory,/^(.)\1+$/.test(x)&&(x=x.charAt(0));for(var w=0;w<c.selectpicker.current.data.length;w++){var k=c.selectpicker.current.data[w];n(k,x,"startsWith",!0)&&c.selectpicker.view.canHighlight[w]&&b.push(k.index)}if(b.length){var M=0;d.removeClass("active").find("a").removeClass("active"),1===x.length&&(-1===(M=b.indexOf(c.activeIndex))||M===b.length-1?M=0:M++),y=b[M],p=0<g-(a=c.selectpicker.main.data[y]).position?(r=a.position-a.height,!0):(r=a.position-c.sizeInfo.menuInnerHeight,a.position>g+c.sizeInfo.menuInnerHeight),o=c.selectpicker.main.elements[y],c.activeIndex=b[M],c.focusItem(o),o&&o.firstChild.focus(),p&&(c.$menuInner[0].scrollTop=r),h.trigger("focus")}}s&&(32===e.which&&!c.selectpicker.keydown.keyHistory||13===e.which||9===e.which&&c.options.selectOnTab)&&(32!==e.which&&e.preventDefault(),c.options.liveSearch&&32===e.which||(c.$menuInner.find(".active a").trigger("click",!0),h.trigger("focus"),c.options.liveSearch||(e.preventDefault(),t(document).data("spaceSelect",!0))))}},mobile:function(){this.$element[0].classList.add("mobile-device")},refresh:function(){var e=t.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.setStyle(),this.render(),this.createLi(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+H)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(H).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),t(window).off(H+"."+this.selectId)}};var X=t.fn.selectpicker;t.fn.selectpicker=h,t.fn.selectpicker.Constructor=Y,t.fn.selectpicker.noConflict=function(){return t.fn.selectpicker=X,this},t(document).off("keydown.bs.dropdown.data-api").on("keydown"+H,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Y.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(t){t.stopPropagation()}),t(window).on("load"+H+".data-api",function(){t(".selectpicker").each(function(){var e=t(this);h.call(e,e.data())})})}(t)}),function(t){t.fn.mask=function(e,i){t(this).each(function(){if(void 0!==i&&i>0){var s=t(this);s.data("_mask_timeout",setTimeout(function(){t.maskElement(s,e)},i))}else t.maskElement(t(this),e)})},t.fn.unmask=function(){t(this).each(function(){t.unmaskElement(t(this))})},t.fn.isMasked=function(){return this.hasClass("masked")},t.maskElement=function(e,i){void 0!==e.data("_mask_timeout")&&(clearTimeout(e.data("_mask_timeout")),e.removeData("_mask_timeout")),e.isMasked()&&t.unmaskElement(e),"static"==e.css("position")&&e.addClass("masked-relative"),e.addClass("masked");var s=t('<div class="loadmask"></div>');if(navigator.userAgent.toLowerCase().indexOf("msie")>-1&&(s.height(e.height()+parseInt(e.css("padding-top"))+parseInt(e.css("padding-bottom"))),s.width(e.width()+parseInt(e.css("padding-left"))+parseInt(e.css("padding-right")))),navigator.userAgent.toLowerCase().indexOf("msie 6")>-1&&e.find("select").addClass("masked-hidden"),e.append(s),void 0!==i){var n=t('<div class="loadmask-msg" style="display:none;"></div>');n.append("<div>"+i+"</div>"),e.append(n),n.css("top",Math.round(e.height()/2-(n.height()-parseInt(n.css("padding-top"))-parseInt(n.css("padding-bottom")))/2)+"px"),n.css("left",Math.round(e.width()/2-(n.width()-parseInt(n.css("padding-left"))-parseInt(n.css("padding-right")))/2)+"px"),n.show()}},t.unmaskElement=function(t){void 0!==t.data("_mask_timeout")&&(clearTimeout(t.data("_mask_timeout")),t.removeData("_mask_timeout")),t.find(".loadmask-msg,.loadmask").remove(),t.removeClass("masked"),t.removeClass("masked-relative"),t.find("select").removeClass("masked-hidden")}}(jQuery),function(t){t.fn.bindWithDelay=function(e,i,s,n,o){return t.isFunction(i)&&(o=n,n=s,s=i,i=void 0),s.guid=s.guid||t.guid&&t.guid++,this.each(function(){function a(){var e=t.extend(!0,{},arguments[0]),i=this,a=function(){r=null,s.apply(i,[e])};o||(clearTimeout(r),r=null),r||(r=setTimeout(a,n))}var r=null;a.guid=s.guid,t(this).bind(e,i,a)})}}(jQuery),function(t,e){var i,s,n,o,a,r,h,l,c,d,p,u,f,g,m,v,y,x,b,w,k,M,S,T;i=function(t){return new i.prototype.init(t)},"undefined"!=typeof require&&"undefined"!=typeof exports&&"undefined"!=typeof module?module.exports=i:t.Globalize=i,i.cultures={},i.prototype={constructor:i,init:function(t){return this.cultures=i.cultures,this.cultureSelector=t,this}},i.prototype.init.prototype=i.prototype,i.cultures.default={name:"en",englishName:"English",nativeName:"English",isRTL:!1,language:"en",numberFormat:{pattern:["-n"],decimals:0,",":",",".":".",groupSizes:[3],"+":"+","-":"-",NaN:"NaN",negativeInfinity:"-Infinity",positiveInfinity:"Infinity",percent:{pattern:["-n %","n %"],decimals:2,groupSizes:[3],",":",",".":".",symbol:"%"},currency:{pattern:["($n)","$n"],decimals:2,groupSizes:[3],",":",",".":".",symbol:"$"}},calendars:{standard:{name:"Gregorian_USEnglish","/":"/",":":":",firstDay:0,days:{names:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],namesAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],namesShort:["Su","Mo","Tu","We","Th","Fr","Sa"]},months:{names:["January","February","March","April","May","June","July","August","September","October","November","December",""],namesAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""]},AM:["AM","am","AM"],PM:["PM","pm","PM"],eras:[{name:"A.D.",start:null,offset:0}],twoDigitYearMax:2029,patterns:{d:"M/d/yyyy",D:"dddd, MMMM dd, yyyy",t:"h:mm tt",T:"h:mm:ss tt",f:"dddd, MMMM dd, yyyy h:mm tt",F:"dddd, MMMM dd, yyyy h:mm:ss tt",M:"MMMM dd",Y:"yyyy MMMM",S:"yyyy'-'MM'-'dd'T'HH':'mm':'ss"}}},messages:{}},i.cultures.default.calendar=i.cultures.default.calendars.standard,i.cultures.en=i.cultures.default,i.cultureSelector="en",s=/^0x[a-f0-9]+$/i,n=/^[+-]?infinity$/i,o=/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/,a=/^\s+|\s+$/g,r=function(t,e){if(t.indexOf)return t.indexOf(e);for(var i=0,s=t.length;i<s;i++)if(t[i]===e)return i;return-1},h=function(t,e){return t.substr(t.length-e.length)===e},l=function(t){var e,i,s,n,o,a=arguments[0]||{},r=1,h=arguments.length,t=!1;for("boolean"==typeof a&&(t=a,a=arguments[1]||{},r=2),"object"!=typeof a&&!d(a)&&(a={});r<h;r++)if(null!=(e=arguments[r]))for(i in e)s=a[i],n=e[i],a!==n&&(t&&n&&(p(n)||(o=c(n)))?(o?(o=!1,s=s&&c(s)?s:[]):s=s&&p(s)?s:{},a[i]=l(t,s,n)):void 0!==n&&(a[i]=n));return a},c=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},d=function(t){return"[object Function]"===Object.prototype.toString.call(t)},p=function(t){return"[object Object]"===Object.prototype.toString.call(t)},u=function(t,e){return 0===t.indexOf(e)},f=function(t){return(t+"").replace(a,"")},g=function(t){return 0|t},m=function(t,e,i){var s;for(s=t.length;s<e;s+=1)t=i?"0"+t:t+"0";return t},v=function(t,e){for(var i=0,s=!1,n=0,o=t.length;n<o;n++){var a=t.charAt(n);switch(a){case"'":s?e.push("'"):i++,s=!1;break;case"\\":s&&e.push("\\"),s=!s;break;default:e.push(a),s=!1}}return i},y=function(t,e){var i,e=e||"F";i=t.patterns;var s=e.length;if(1===s){if(!(i=i[e]))throw"Invalid date format string '"+e+"'.";e=i}else 2===s&&"%"===e.charAt(0)&&(e=e.charAt(1));return e},x=function(t,e,i){function s(t,e){var i;return i=t+"",e>1&&i.length<e?(i=u[e-2]+i,i.substr(i.length-e,e)):i}function n(t,e){if(d)return d[e];switch(e){case 0:return t.getFullYear();case 1:return t.getMonth();case 2:return t.getDate()}}var o=i.calendar,a=o.convert;if(!e||!e.length||"i"===e){if(i&&i.name.length)if(a)i=x(t,o.patterns.F,i);else{var i=new Date(t.getTime()),r=k(t,o.eras);i.setFullYear(M(t,o,r)),i=i.toLocaleString()}else i=t.toString();return i}var h,l,c,d,r=o.eras,p="s"===e,e=y(o,e),i=[],u=["0","00","000"],f=/([^d]|^)(d|dd)([^d]|$)/g,g=0,m=w();for(!p&&a&&(d=a.fromGregorian(t));h=m.lastIndex,a=m.exec(e),h=e.slice(h,a?a.index:e.length),g+=v(h,i),a;)if(g%2)i.push(a[0]);else switch(h=a[0],a=h.length,h){case"ddd":case"dddd":i.push((3===a?o.days.namesAbbr:o.days.names)[t.getDay()]);break;case"d":case"dd":l=!0,i.push(s(n(t,2),a));break;case"MMM":case"MMMM":h=n(t,1),i.push(o.monthsGenitive&&function(){return l||c?l:(l=f.test(e),c=!0,l)}()?o.monthsGenitive[3===a?"namesAbbr":"names"][h]:o.months[3===a?"namesAbbr":"names"][h]);break;case"M":case"MM":i.push(s(n(t,1)+1,a));break;case"y":case"yy":case"yyyy":h=d?d[0]:M(t,o,k(t,r),p),a<4&&(h%=100),i.push(s(h,a));break;case"h":case"hh":h=t.getHours()%12,0===h&&(h=12),i.push(s(h,a));break;case"H":case"HH":i.push(s(t.getHours(),a));break;case"m":case"mm":i.push(s(t.getMinutes(),a));break;case"s":case"ss":i.push(s(t.getSeconds(),a));break;case"t":case"tt":h=t.getHours()<12?o.AM?o.AM[0]:" ":o.PM?o.PM[0]:" ",i.push(1===a?h.charAt(0):h);break;case"f":case"ff":case"fff":i.push(s(t.getMilliseconds(),3).substr(0,a));break;case"z":case"zz":h=t.getTimezoneOffset()/60,i.push((h<=0?"+":"-")+s(Math.floor(Math.abs(h)),a));break;case"zzz":h=t.getTimezoneOffset()/60,i.push((h<=0?"+":"-")+s(Math.floor(Math.abs(h)),2)+":"+s(Math.abs(t.getTimezoneOffset()%60),2));break;case"g":case"gg":o.eras&&i.push(o.eras[k(t,r)].name);break;case"/":i.push(o["/"]);break;default:throw"Invalid date format pattern '"+h+"'."}return i.join("")},function(){var t;t=function(t,e,i){var s=i.groupSizes,n=s[0],o=1,a=Math.pow(10,e),r=Math.round(t*a)/a;for(isFinite(r)||(r=t),a="",a=(r+"").split(/e/i),r=a.length>1?parseInt(a[1],10):0,t=a[0],a=t.split("."),t=a[0],a=a.length>1?a[1]:"",r>0?(a=m(a,r,!1),t+=a.slice(0,r),a=a.substr(r)):r<0&&(r=-r,t=m(t,r+1),a=t.slice(-r,t.length)+a,t=t.slice(0,-r)),a=e>0?i["."]+(a.length>e?a.slice(0,e):m(a,e)):"",e=t.length-1,i=i[","],r="";e>=0;){if(0===n||n>e)return t.slice(0,e+1)+(r.length?i+r+a:a);r=t.slice(e-n+1,e+1)+(r.length?i+r:""),e-=n,o<s.length&&(n=s[o],o++)}return t.slice(0,e+1)+i+r+a},b=function(e,i,s){if(!isFinite(e))return e===1/0?s.numberFormat.positiveInfinity:e===-1/0?s.numberFormat.negativeInfinity:s.numberFormat.NaN;if(!i||"i"===i)return s.name.length?e.toLocaleString():e.toString();var i=i||"D",s=s.numberFormat,n=Math.abs(e),o=-1;i.length>1&&(o=parseInt(i.slice(1),10));var a,r=i.charAt(0).toUpperCase();switch(r){case"D":i="n",n=g(n),-1!==o&&(n=m(""+n,o,!0)),e<0&&(n="-"+n);break;case"N":a=s;case"C":a=a||s.currency;case"P":a=a||s.percent,i=e<0?a.pattern[0]:a.pattern[1]||"n",-1===o&&(o=a.decimals),n=t(n*("P"===r?100:1),o,a);break;default:throw"Bad number format specifier: "+r}for(e=/n|\$|-|%/g,a="";o=e.lastIndex,r=e.exec(i),a+=i.slice(o,r?r.index:i.length),r;)switch(r[0]){case"n":a+=n;break;case"$":a+=s.currency.symbol;break;case"-":/[1-9]/.test(n)&&(a+=s["-"]);break;case"%":a+=s.percent.symbol}return a}}(),w=function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g},k=function(t,e){if(!e)return 0;for(var i,s=t.getTime(),n=0,o=e.length;n<o;n++)if(null===(i=e[n].start)||s>=i)return n;return 0},M=function(t,e,i,s){return t=t.getFullYear(),!s&&e.eras&&(t-=e.eras[i].offset),t},function(){var t,e,i,s,n,o,a;t=function(t,e){var i=new Date,s=k(i);if(e<100){var n=t.twoDigitYearMax,n="string"==typeof n?(new Date).getFullYear()%100+parseInt(n,10):n,i=M(i,t,s);e+=i-i%100,e>n&&(e-=100)}return e},e=function(t,e,i){var s=t.days,n=t._upperDays;return n||(t._upperDays=n=[a(s.names),a(s.namesAbbr),a(s.namesShort)]),e=o(e),i?-1===(t=r(n[1],e))&&(t=r(n[2],e)):t=r(n[0],e),t},i=function(t,e,i){var s=t.months,n=t.monthsGenitive||t.months,h=t._upperMonths,l=t._upperMonthsGen;return h||(t._upperMonths=h=[a(s.names),a(s.namesAbbr)],t._upperMonthsGen=l=[a(n.names),a(n.namesAbbr)]),e=o(e),t=r(i?h[1]:h[0],e),t<0&&(t=r(i?l[1]:l[0],e)),t},s=function(t,e){
var i=t._parseRegExp;if(i){var s=i[e];if(s)return s}else t._parseRegExp=i={};for(var n,s=y(t,e).replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1"),o=["^"],a=[],r=0,h=0,l=w();null!==(n=l.exec(s));){var c=s.slice(r,n.index),r=l.lastIndex;if((h+=v(c,o))%2)o.push(n[0]);else{var c=n[0],d=c.length;switch(c){case"dddd":case"ddd":case"MMMM":case"MMM":case"gg":case"g":c="(\\D+)";break;case"tt":case"t":c="(\\D*)";break;case"yyyy":case"fff":case"ff":case"f":c="(\\d{"+d+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":c="(\\d\\d?)";break;case"zzz":c="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":c="([+-]?\\d\\d?)";break;case"/":c="(\\"+t["/"]+")";break;default:throw"Invalid date format pattern '"+c+"'."}c&&o.push(c),a.push(n[0])}}return v(s.slice(r),o),o.push("$"),s={regExp:o.join("").replace(/\s+/g,"\\s+"),groups:a},i[e]=s},n=function(t,e,i){return t<e||t>i},o=function(t){return t.split(" ").join(" ").toUpperCase()},a=function(t){for(var e=[],i=0,s=t.length;i<s;i++)e[i]=o(t[i]);return e},S=function(o,a,r){var o=f(o),r=r.calendar,a=s(r,a),h=RegExp(a.regExp).exec(o);if(null===h)return null;var l,c=a.groups,d=a=o=null,p=null,g=null,m=0,v=0,y=0,x=0;l=null;for(var b=!1,w=0,k=c.length;w<k;w++){var M=h[w+1];if(M){var S=c[w],T=S.length,C=parseInt(M,10);switch(S){case"dd":case"d":if(p=C,n(p,1,31))return null;break;case"MMM":case"MMMM":if(d=i(r,M,3===T),n(d,0,11))return null;break;case"M":case"MM":if(d=C-1,n(d,0,11))return null;break;case"y":case"yy":case"yyyy":if(a=T<4?t(r,C):C,n(a,0,9999))return null;break;case"h":case"hh":if(m=C,12===m&&(m=0),n(m,0,11))return null;break;case"H":case"HH":if(m=C,n(m,0,23))return null;break;case"m":case"mm":if(v=C,n(v,0,59))return null;break;case"s":case"ss":if(y=C,n(y,0,59))return null;break;case"tt":case"t":if(!(b=r.PM&&(M===r.PM[0]||M===r.PM[1]||M===r.PM[2]))&&(!r.AM||M!==r.AM[0]&&M!==r.AM[1]&&M!==r.AM[2]))return null;break;case"f":case"ff":case"fff":if(x=C*Math.pow(10,3-T),n(x,0,999))return null;break;case"ddd":case"dddd":if(g=e(r,M,3===T),n(g,0,6))return null;break;case"zzz":if(S=M.split(/:/),2!==S.length)return null;if(l=parseInt(S[0],10),n(l,-12,13))return null;if(S=parseInt(S[1],10),n(S,0,59))return null;l=60*l+(u(M,"-")?-S:S);break;case"z":case"zz":if(l=C,n(l,-12,13))return null;l*=60;break;case"g":case"gg":if(!M||!r.eras)return null;for(M=f(M.toLowerCase()),S=0,T=r.eras.length;S<T;S++)if(M===r.eras[S].name.toLowerCase()){o=S;break}if(null===o)return null}}}if(h=new Date,c=(w=r.convert)?w.fromGregorian(h)[0]:h.getFullYear(),null===a?a=c:r.eras&&(a+=r.eras[o||0].offset),null===d&&(d=0),null===p&&(p=1),w){if(null===(h=w.toGregorian(a,d,p)))return null}else{if(h.setFullYear(a,d,p),h.getDate()!==p)return null;if(null!==g&&h.getDay()!==g)return null}return b&&m<12&&(m+=12),h.setHours(m,v,y,x),null!==l&&(r=h.getMinutes()-(l+h.getTimezoneOffset()),h.setHours(h.getHours()+parseInt(r/60,10),r%60)),h}}(),T=function(t,e,i){var s,n=e["-"],e=e["+"];switch(i){case"n -":n=" "+n,e=" "+e;case"n-":h(t,n)?s=["-",t.substr(0,t.length-n.length)]:h(t,e)&&(s=["+",t.substr(0,t.length-e.length)]);break;case"- n":n+=" ",e+=" ";case"-n":u(t,n)?s=["-",t.substr(n.length)]:u(t,e)&&(s=["+",t.substr(e.length)]);break;case"(n)":u(t,"(")&&h(t,")")&&(s=["-",t.substr(1,t.length-2)])}return s||["",t]},i.prototype.findClosestCulture=function(t){return i.findClosestCulture.call(this,t)},i.prototype.format=function(t,e,s){return i.format.call(this,t,e,s)},i.prototype.localize=function(t,e){return i.localize.call(this,t,e)},i.prototype.parseInt=function(t,e,s){return i.parseInt.call(this,t,e,s)},i.prototype.parseFloat=function(t,e,s){return i.parseFloat.call(this,t,e,s)},i.prototype.culture=function(t){return i.culture.call(this,t)},i.addCultureInfo=function(t,e,i){var s={},n=!1;"string"!=typeof t?(i=t,t=this.culture().name,s=this.cultures[t]):"string"!=typeof e?(i=e,n=null==this.cultures[t],s=this.cultures[t]||this.cultures.default):(n=!0,s=this.cultures[e]),this.cultures[t]=l(!0,{},s,i),n&&(this.cultures[t].calendar=this.cultures[t].calendars.standard)},i.findClosestCulture=function(t){var e;if(!t)return this.cultures[this.cultureSelector]||this.cultures.default;if("string"==typeof t&&(t=t.split(",")),c(t)){var i,s,n=this.cultures,o=t,a=o.length,r=[];for(s=0;s<a;s++)t=f(o[s]),t=t.split(";"),i=f(t[0]),1===t.length?t=1:(t=f(t[1]),0===t.indexOf("q=")?(t=t.substr(2),t=parseFloat(t),t=isNaN(t)?0:t):t=1),r.push({lang:i,pri:t});for(r.sort(function(t,e){return t.pri<e.pri?1:-1}),s=0;s<a;s++)if(i=r[s].lang,e=n[i])return e;for(s=0;s<a;s++)for(i=r[s].lang;;){if(-1===(o=i.lastIndexOf("-")))break;if(i=i.substr(0,o),e=n[i])return e}for(s=0;s<a;s++){i=r[s].lang;for(var h in n)if(o=n[h],o.language==i)return o}}else if("object"==typeof t)return t;return e||null},i.format=function(t,e,i){return culture=this.findClosestCulture(i),t instanceof Date?t=x(t,e,culture):"number"==typeof t&&(t=b(t,e,culture)),t},i.localize=function(t,e){return this.findClosestCulture(e).messages[t]||this.cultures.default.messages.key},i.parseDate=function(t,e,i){var s,n,i=this.findClosestCulture(i);if(e){if("string"==typeof e&&(e=[e]),e.length){n=0;for(var o=e.length;n<o;n++){var a=e[n];if(a&&(s=S(t,a,i)))break}}}else for(n in e=i.calendar.patterns)if(s=S(t,e[n],i))break;return s||null},i.parseInt=function(t,e,s){return g(i.parseFloat(t,e,s))},i.parseFloat=function(t,e,i){"number"!=typeof e&&(i=e,e=10);var a=this.findClosestCulture(i),i=NaN,r=a.numberFormat;if(t.indexOf(a.numberFormat.currency.symbol)>-1&&(t=t.replace(a.numberFormat.currency.symbol,""),t=t.replace(a.numberFormat.currency["."],a.numberFormat["."])),t=f(t),n.test(t))i=parseFloat(t);else if(!e&&s.test(t))i=parseInt(t,16);else{a=T(t,r,r.pattern[0]),e=a[0],a=a[1],""===e&&"-n"!==r.pattern[0]&&(a=T(t,r,"-n"),e=a[0],a=a[1]);var h,e=e||"+",t=a.indexOf("e");t<0&&(t=a.indexOf("E")),t<0?(h=a,t=null):(h=a.substr(0,t),t=a.substr(t+1));var l=r["."],c=h.indexOf(l);c<0?(a=h,h=null):(a=h.substr(0,c),h=h.substr(c+l.length)),l=r[","],a=a.split(l).join(""),c=l.replace(/\u00A0/g," "),l!==c&&(a=a.split(c).join("")),e+=a,null!==h&&(e+="."+h),null!==t&&(r=T(t,r,"-n"),e+="e"+(r[0]||"+")+r[1]),o.test(e)&&(i=parseFloat(e))}return i},i.culture=function(t){return void 0!==t&&(this.cultureSelector=t),this.findClosestCulture(t)||this.culture.default}}(this),function(t,e){var i;i="undefined"!=typeof require&&"undefined"!=typeof exports&&"undefined"!=typeof module?require("globalize"):t.Globalize,i.addCultureInfo("en-IN","default",{name:"en-IN",englishName:"English (India)",nativeName:"English (India)",numberFormat:{groupSizes:[3,2],percent:{groupSizes:[3,2]},currency:{pattern:["$ -n","$ n"],groupSizes:[3,2],symbol:"Rs."}},calendars:{standard:{"/":"-",firstDay:1,patterns:{d:"dd-MM-yyyy",D:"dd MMMM yyyy",t:"HH:mm",T:"HH:mm:ss",f:"dd MMMM yyyy HH:mm",F:"dd MMMM yyyy HH:mm:ss",M:"dd MMMM"}}}})}(this),function(t,e){"object"==typeof module&&module.exports?(e.default=e,module.exports=t.document?e(t):e):"function"==typeof define&&define.amd?define("highcharts/highcharts",function(){return e(t)}):(t.Highcharts&&t.Highcharts.error(16,!0),t.Highcharts=e(t))}("undefined"!=typeof window?window:this,function(t){function e(t,e,i,s){t.hasOwnProperty(e)||(t[e]=s.apply(null,i))}var i={};return e(i,"parts/Globals.js",[],function(){var e=void 0!==t?t:"undefined"!=typeof window?window:{},i=e.document,s=e.navigator&&e.navigator.userAgent||"",n=i&&i.createElementNS&&!!i.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,o=/(edge|msie|trident)/i.test(s)&&!e.opera,a=-1!==s.indexOf("Firefox"),r=-1!==s.indexOf("Chrome"),h=a&&4>parseInt(s.split("Firefox/")[1],10);return{product:"Highcharts",version:"7.2.0",deg2rad:2*Math.PI/360,doc:i,hasBidiBug:h,hasTouch:!!e.TouchEvent,isMS:o,isWebKit:-1!==s.indexOf("AppleWebKit"),isFirefox:a,isChrome:r,isSafari:!r&&-1!==s.indexOf("Safari"),isTouchDevice:/(Mobile|Android|Windows Phone)/.test(s),SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:n,win:e,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}}),e(i,"parts/Utilities.js",[i["parts/Globals.js"]],function(t){function e(t,e){return parseInt(t,e||10)}function i(t){return"string"==typeof t}function s(t){return"[object Array]"===(t=Object.prototype.toString.call(t))||"[object Array Iterator]"===t}function n(t,e){return!(!t||"object"!=typeof t||e&&s(t))}function o(t){return n(t)&&"number"==typeof t.nodeType}function a(t){var e=t&&t.constructor;return!(!n(t,!0)||o(t)||!e||!e.name||"Object"===e.name)}function r(t){return"number"==typeof t&&!isNaN(t)&&1/0>t&&-1/0<t}function h(t){return void 0!==t&&null!==t}function l(t,e,s){var n;return i(e)?h(s)?t.setAttribute(e,s):t&&t.getAttribute&&((n=t.getAttribute(e))||"class"!==e||(n=t.getAttribute(e+"Name"))):c(e,function(e,i){t.setAttribute(i,e)}),n}function c(t,e,i){for(var s in t)Object.hasOwnProperty.call(t,s)&&e.call(i||t[s],t[s],s,t)}t.timers=[];var d=t.charts,p=t.doc,u=t.win;return t.error=function(e,i,s){var n=r(e)?"Highcharts error #"+e+": www.highcharts.com/errors/"+e:e,o=function(){if(i)throw Error(n);u.console&&console.log(n)};s?t.fireEvent(s,"displayError",{code:e,message:n},o):o()},t.Fx=function(t,e,i){this.options=e,this.elem=t,this.prop=i},t.Fx.prototype={dSetter:function(){var t=this.paths[0],e=this.paths[1],i=[],s=this.now,n=t.length;if(1===s)i=this.toD;else if(n===e.length&&1>s)for(;n--;){var o=parseFloat(t[n]);i[n]=isNaN(o)?e[n]:s*parseFloat(""+(e[n]-o))+o}else i=e;this.elem.attr("d",i,null,!0)},update:function(){var t=this.elem,e=this.prop,i=this.now,s=this.options.step;this[e+"Setter"]?this[e+"Setter"]():t.attr?t.element&&t.attr(e,i,null,!0):t.style[e]=i+this.unit,s&&s.call(t,i,this)},run:function(e,i,s){var n=this,o=n.options,a=function(t){return!a.stopped&&n.step(t)},r=u.requestAnimationFrame||function(t){setTimeout(t,13)},h=function(){for(var e=0;e<t.timers.length;e++)t.timers[e]()||t.timers.splice(e--,1);t.timers.length&&r(h)};e!==i||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=e,this.end=i,this.unit=s,this.now=this.start,this.pos=0,a.elem=this.elem,a.prop=this.prop,a()&&1===t.timers.push(a)&&r(h)):(delete o.curAnim[this.prop],o.complete&&0===Object.keys(o.curAnim).length&&o.complete.call(this.elem))},step:function(t){var e=+new Date,i=this.options,s=this.elem,n=i.complete,o=i.duration,a=i.curAnim;if(s.attr&&!s.element)t=!1;else if(t||e>=o+this.startTime){this.now=this.end,this.pos=1,this.update();var r=a[this.prop]=!0;c(a,function(t){!0!==t&&(r=!1)}),r&&n&&n.call(s),t=!1}else this.pos=i.easing((e-this.startTime)/o),this.now=this.start+(this.end-this.start)*this.pos,this.update(),t=!0;return t},initPath:function(t,e,i){function s(t){for(h=t.length;h--;){var e="M"===t[h]||"L"===t[h],i=/[a-zA-Z]/.test(t[h+3]);e&&i&&t.splice(h+1,0,t[h+1],t[h+2],t[h+1],t[h+2])}}function n(t,e){for(;t.length<v;){t[0]=e[v-t.length];var i=t.slice(0,p);[].splice.apply(t,[0,0].concat(i)),u&&(i=t.slice(t.length-p),[].splice.apply(t,[t.length,0].concat(i)),h--)}t[0]="M"}function o(t,e){for(var i=(v-t.length)/p;0<i&&i--;)a=t.slice().splice(t.length/f-p,p*f),a[0]=e[v-p-i*p],d&&(a[p-6]=a[p-2],a[p-5]=a[p-1]),[].splice.apply(t,[t.length/f,0].concat(a)),u&&i--}e=e||"";var a,h,l=t.startX,c=t.endX,d=-1<e.indexOf("C"),p=d?7:3;e=e.split(" "),i=i.slice();var u=t.isArea,f=u?2:1;if(d&&(s(e),s(i)),l&&c){for(h=0;h<l.length;h++){if(l[h]===c[0]){var g=h;break}if(l[0]===c[c.length-l.length+h]){g=h;var m=!0;break}if(l[l.length-1]===c[c.length-l.length+h]){g=l.length-h;break}}void 0===g&&(e=[])}if(e.length&&r(g)){var v=i.length+g*f*p;m?(n(e,i),o(i,e)):(n(i,e),o(e,i))}return[e,i]},fillSetter:function(){t.Fx.prototype.strokeSetter.apply(this,arguments)},strokeSetter:function(){this.elem.attr(this.prop,t.color(this.start).tweenTo(t.color(this.end),this.pos),null,!0)}},t.merge=function(){var t,e=arguments,i={},s=function(t,e){return"object"!=typeof t&&(t={}),c(e,function(i,r){!n(i,!0)||a(i)||o(i)?t[r]=e[r]:t[r]=s(t[r]||{},i)}),t};!0===e[0]&&(i=e[1],e=Array.prototype.slice.call(e,2));var r=e.length;for(t=0;t<r;t++)i=s(i,e[t]);return i},t.syncTimeout=function(t,e,i){if(e)return setTimeout(t,e,i);t.call(0,i)},t.clearTimeout=function(t){h(t)&&clearTimeout(t)},t.extend=function(t,e){var i;t||(t={});for(i in e)t[i]=e[i];return t},t.pick=function(){var t,e=arguments,i=e.length;for(t=0;t<i;t++){var s=e[t];if(void 0!==s&&null!==s)return s}},t.css=function(e,i){t.isMS&&!t.svg&&i&&void 0!==i.opacity&&(i.filter="alpha(opacity="+100*i.opacity+")"),t.extend(e.style,i)},t.createElement=function(e,i,s,n,o){e=p.createElement(e);var a=t.css;return i&&t.extend(e,i),o&&a(e,{padding:"0",border:"none",margin:"0"}),s&&a(e,s),n&&n.appendChild(e),e},t.extendClass=function(e,i){var s=function(){};return s.prototype=new e,t.extend(s.prototype,i),s},t.pad=function(t,e,i){return Array((e||2)+1-String(t).replace("-","").length).join(i||"0")+t},t.relativeLength=function(t,e,i){return/%$/.test(t)?e*parseFloat(t)/100+(i||0):parseFloat(t)},t.wrap=function(t,e,i){var s=t[e];t[e]=function(){var t=Array.prototype.slice.call(arguments),e=arguments,n=this;return n.proceed=function(){s.apply(n,arguments.length?arguments:e)},t.unshift(s),t=i.apply(this,t),n.proceed=null,t}},t.datePropsToTimestamps=function(e){c(e,function(i,o){n(i)&&"function"==typeof i.getTime?e[o]=i.getTime():(n(i)||s(i))&&t.datePropsToTimestamps(i)})},t.formatSingle=function(e,i,s){var n=/\.([0-9])/,o=t.defaultOptions.lang;return/f$/.test(e)?(s=(s=e.match(n))?s[1]:-1,null!==i&&(i=t.numberFormat(i,s,o.decimalPoint,-1<e.indexOf(",")?o.thousandsSep:""))):i=(s||t.time).dateFormat(e,i),i},t.format=function(e,i,s){for(var n,o,a,r,h,l="{",c=!1,d=[];e&&-1!==(l=e.indexOf(l));){if(n=e.slice(0,l),c){for(n=n.split(":"),o=n.shift().split("."),r=o.length,h=i,a=0;a<r;a++)h&&(h=h[o[a]]);n.length&&(h=t.formatSingle(n.join(":"),h,s)),d.push(h)}else d.push(n);e=e.slice(l+1),l=(c=!c)?"}":"{"}return d.push(e),d.join("")},t.getMagnitude=function(t){return Math.pow(10,Math.floor(Math.log(t)/Math.LN10))},t.normalizeTickInterval=function(e,i,s,n,o){var a=e;s=t.pick(s,1);var r=e/s;for(i||(i=o?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===n&&(1===s?i=i.filter(function(t){return 0==t%1}):.1>=s&&(i=[1/s]))),n=0;n<i.length&&(a=i[n],!(o&&a*s>=e||!o&&r<=(i[n]+(i[n+1]||i[n]))/2));n++);return a=t.correctFloat(a*s,-Math.round(Math.log(.001)/Math.LN10))},t.stableSort=function(t,e){var i,s,n=t.length;for(s=0;s<n;s++)t[s].safeI=s;for(t.sort(function(t,s){return i=e(t,s),0===i?t.safeI-s.safeI:i}),s=0;s<n;s++)delete t[s].safeI},t.arrayMin=function(t){for(var e=t.length,i=t[0];e--;)t[e]<i&&(i=t[e]);return i},t.arrayMax=function(t){for(var e=t.length,i=t[0];e--;)t[e]>i&&(i=t[e]);return i},t.destroyObjectProperties=function(t,e){c(t,function(i,s){i&&i!==e&&i.destroy&&i.destroy(),delete t[s]})},t.discardElement=function(e){var i=t.garbageBin;i||(i=t.createElement("div")),e&&i.appendChild(e),i.innerHTML=""},t.correctFloat=function(t,e){return parseFloat(t.toPrecision(e||14))},t.setAnimation=function(e,i){i.renderer.globalAnimation=t.pick(e,i.options.chart.animation,!0)},t.animObject=function(e){return n(e)?t.merge(e):{duration:e?500:0}},t.timeUnits={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},t.numberFormat=function(i,s,n,o){i=+i||0,s=+s;var a=t.defaultOptions.lang,h=(i.toString().split(".")[1]||"").split("e")[0].length,l=i.toString().split("e");if(-1===s)s=Math.min(h,20);else if(r(s)){if(s&&l[1]&&0>l[1]){var c=s+ +l[1];0<=c?(l[0]=(+l[0]).toExponential(c).split("e")[0],s=c):(l[0]=l[0].split(".")[0]||0,i=20>s?(l[0]*Math.pow(10,l[1])).toFixed(s):0,l[1]=0)}}else s=2;var d=(Math.abs(l[1]?l[0]:i)+Math.pow(10,-Math.max(s,h)-1)).toFixed(s);return h=String(e(d)),c=3<h.length?h.length%3:0,n=t.pick(n,a.decimalPoint),o=t.pick(o,a.thousandsSep),i=(0>i?"-":"")+(c?h.substr(0,c)+o:""),i+=h.substr(c).replace(/(\d{3})(?=\d)/g,"$1"+o),s&&(i+=n+d.slice(-s)),l[1]&&0!=+i&&(i+="e"+l[1]),i},Math.easeInOutSine=function(t){return-.5*(Math.cos(Math.PI*t)-1)},t.getStyle=function(i,s,n){return"width"===s?(s=Math.min(i.offsetWidth,i.scrollWidth),n=i.getBoundingClientRect&&i.getBoundingClientRect().width,n<s&&n>=s-1&&(s=Math.floor(n)),Math.max(0,s-t.getStyle(i,"padding-left")-t.getStyle(i,"padding-right"))):"height"===s?Math.max(0,Math.min(i.offsetHeight,i.scrollHeight)-t.getStyle(i,"padding-top")-t.getStyle(i,"padding-bottom")):(u.getComputedStyle||t.error(27,!0),(i=u.getComputedStyle(i,void 0))&&(i=i.getPropertyValue(s),t.pick(n,"opacity"!==s)&&(i=e(i))),i)},t.inArray=function(t,e,i){return e.indexOf(t,i)},t.find=Array.prototype.find?function(t,e){return t.find(e)}:function(t,e){var i,s=t.length;for(i=0;i<s;i++)if(e(t[i],i))return t[i]},t.keys=Object.keys,t.offset=function(t){var e=p.documentElement;return t=t.parentElement||t.parentNode?t.getBoundingClientRect():{top:0,left:0},{top:t.top+(u.pageYOffset||e.scrollTop)-(e.clientTop||0),left:t.left+(u.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}},t.stop=function(e,i){for(var s=t.timers.length;s--;)t.timers[s].elem!==e||i&&i!==t.timers[s].prop||(t.timers[s].stopped=!0)},c({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(e,i){t[i]=function(t){return Array.prototype[e].apply(t,[].slice.call(arguments,1))}}),t.addEvent=function(e,i,s,n){void 0===n&&(n={});var o=e.addEventListener||t.addEventListenerPolyfill,a="function"==typeof e&&e.prototype?e.prototype.protoEvents=e.prototype.protoEvents||{}:e.hcEvents=e.hcEvents||{};return t.Point&&e instanceof t.Point&&e.series&&e.series.chart&&(e.series.chart.runTrackerClick=!0),o&&o.call(e,i,s,!1),a[i]||(a[i]=[]),a[i].push({fn:s,order:"number"==typeof n.order?n.order:1/0}),a[i].sort(function(t,e){return t.order-e.order}),function(){t.removeEvent(e,i,s)}},t.removeEvent=function(e,i,s){function n(i,s){var n=e.removeEventListener||t.removeEventListenerPolyfill;n&&n.call(e,i,s,!1)}function o(t){var s;if(e.nodeName){if(i){var o={};o[i]=!0}else o=t;c(o,function(e,i){if(t[i])for(s=t[i].length;s--;)n(i,t[i][s].fn)})}}var a;["protoEvents","hcEvents"].forEach(function(t){var r=e[t];r&&(i?(a=r[i]||[],s?(r[i]=a.filter(function(t){return s!==t.fn}),n(i,s)):(o(r),r[i]=[])):(o(r),e[t]={}))})},t.fireEvent=function(e,i,s,n){var o;if(s=s||{},p.createEvent&&(e.dispatchEvent||e.fireEvent)){var a=p.createEvent("Events");a.initEvent(i,!0,!0),t.extend(a,s),e.dispatchEvent?e.dispatchEvent(a):e.fireEvent(i,a)}else s.target||t.extend(s,{preventDefault:function(){s.defaultPrevented=!0},target:e,type:i}),function(t,i){void 0===t&&(t=[]),void 0===i&&(i=[]);var n=0,a=0,r=t.length+i.length;for(o=0;o<r;o++)!1===(t[n]?i[a]?t[n].order<=i[a].order?t[n++]:i[a++]:t[n++]:i[a++]).fn.call(e,s)&&s.preventDefault()}(e.protoEvents&&e.protoEvents[i],e.hcEvents&&e.hcEvents[i]);n&&!s.defaultPrevented&&n.call(e,s)},t.animate=function(e,i,s){var o,a,h,l="";if(!n(s)){var d=arguments;s={duration:d[2],easing:d[3],complete:d[4]}}r(s.duration)||(s.duration=400),s.easing="function"==typeof s.easing?s.easing:Math[s.easing]||Math.easeInOutSine,s.curAnim=t.merge(i),c(i,function(n,r){t.stop(e,r),h=new t.Fx(e,s,r),a=null,"d"===r?(h.paths=h.initPath(e,e.d,i.d),h.toD=i.d,o=0,a=1):e.attr?o=e.attr(r):(o=parseFloat(t.getStyle(e,r))||0,"opacity"!==r&&(l="px")),a||(a=n),a&&a.match&&a.match("px")&&(a=a.replace(/px/g,"")),h.run(o,a,l)})},t.seriesType=function(e,i,s,n,o){var a=t.getOptions(),r=t.seriesTypes;return a.plotOptions[e]=t.merge(a.plotOptions[i],s),r[e]=t.extendClass(r[i]||function(){},n),r[e].prototype.type=e,o&&(r[e].prototype.pointClass=t.extendClass(t.Point,o)),r[e]},t.uniqueKey=function(){var t=Math.random().toString(36).substring(2,9),e=0;return function(){return"highcharts-"+t+"-"+e++}}(),t.isFunction=function(t){return"function"==typeof t},u.jQuery&&(u.jQuery.fn.highcharts=function(){var e=[].slice.call(arguments);if(this[0])return e[0]?(new(t[i(e[0])?e.shift():"Chart"])(this[0],e[0],e[1]),this):d[l(this[0],"data-highcharts-chart")]}),{attr:l,defined:h,erase:function(t,e){for(var i=t.length;i--;)if(t[i]===e){t.splice(i,1);break}},isArray:s,isClass:a,isDOMElement:o,isNumber:r,isObject:n,isString:i,objectEach:c,pInt:e,splat:function(t){return s(t)?t:[t]}}}),e(i,"parts/Color.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.isNumber,s=e.pInt,n=t.merge;t.Color=function(e){if(!(this instanceof t.Color))return new t.Color(e);this.init(e)},t.Color.prototype={parsers:[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(t){return[s(t[1]),s(t[2]),s(t[3]),parseFloat(t[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(t){return[s(t[1]),s(t[2]),s(t[3]),1]}}],names:{white:"#ffffff",black:"#000000"},init:function(e){var i,s;if((this.input=e=this.names[e&&e.toLowerCase?e.toLowerCase():""]||e)&&e.stops)this.stops=e.stops.map(function(e){return new t.Color(e[1])});else{if(e&&e.charAt&&"#"===e.charAt()){var n=e.length;e=parseInt(e.substr(1),16),7===n?i=[(16711680&e)>>16,(65280&e)>>8,255&e,1]:4===n&&(i=[(3840&e)>>4|(3840&e)>>8,(240&e)>>4|240&e,(15&e)<<4|15&e,1])}if(!i)for(s=this.parsers.length;s--&&!i;){var o=this.parsers[s];(n=o.regex.exec(e))&&(i=o.parse(n))}}this.rgba=i||[]},get:function(t){var e=this.input,s=this.rgba;if(this.stops){var o=n(e);o.stops=[].concat(o.stops),this.stops.forEach(function(e,i){o.stops[i]=[o.stops[i][0],e.get(t)]})}else o=s&&i(s[0])?"rgb"===t||!t&&1===s[3]?"rgb("+s[0]+","+s[1]+","+s[2]+")":"a"===t?s[3]:"rgba("+s.join(",")+")":e;return o},brighten:function(t){var e,n=this.rgba;if(this.stops)this.stops.forEach(function(e){e.brighten(t)});else if(i(t)&&0!==t)for(e=0;3>e;e++)n[e]+=s(255*t),0>n[e]&&(n[e]=0),255<n[e]&&(n[e]=255);return this},setOpacity:function(t){return this.rgba[3]=t,this},tweenTo:function(t,e){var i=this.rgba,s=t.rgba;return s.length&&i&&i.length?(t=1!==s[3]||1!==i[3],e=(t?"rgba(":"rgb(")+Math.round(s[0]+(i[0]-s[0])*(1-e))+","+Math.round(s[1]+(i[1]-s[1])*(1-e))+","+Math.round(s[2]+(i[2]-s[2])*(1-e))+(t?","+(s[3]+(i[3]-s[3])*(1-e)):"")+")"):e=t.input||"none",e}},t.color=function(e){return new t.Color(e)}}),e(i,"parts/SvgRenderer.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.attr,s=e.defined,n=e.erase,o=e.isArray,a=e.isNumber,r=e.isObject,h=e.isString,l=e.objectEach,c=e.pInt,d=e.splat,p=t.addEvent,u=t.animate,f=t.charts,g=t.color,m=t.css,v=t.createElement,y=t.deg2rad,x=t.destroyObjectProperties,b=t.doc,w=t.extend,k=t.hasTouch,M=t.isFirefox,S=t.isMS,T=t.isWebKit,C=t.merge,A=t.noop,D=t.pick,E=t.removeEvent,O=t.stop,L=t.svg,I=t.SVG_NS,P=t.symbolSizes,z=t.win,N=t.SVGElement=function(){return this};w(N.prototype,{opacity:1,SVG_NS:I,textProps:"direction fontSize fontWeight fontFamily fontStyle color lineHeight width textAlign textDecoration textOverflow textOutline cursor".split(" "),init:function(e,i){this.element="span"===i?v(i):b.createElementNS(this.SVG_NS,i),this.renderer=e,t.fireEvent(this,"afterInit")},animate:function(e,i,s){var n=t.animObject(D(i,this.renderer.globalAnimation,!0));return D(b.hidden,b.msHidden,b.webkitHidden,!1)&&(n.duration=0),0!==n.duration?(s&&(n.complete=s),u(this,e,n)):(this.attr(e,void 0,s),l(e,function(t,e){n.step&&n.step.call(this,t,{prop:e,pos:1})},this)),this},complexColor:function(e,i,n){var a,r,h,c,d,p,u,f,g,m,v,y,x=this.renderer,b=[];t.fireEvent(this.renderer,"complexColor",{args:arguments},function(){e.radialGradient?r="radialGradient":e.linearGradient&&(r="linearGradient"),r&&(h=e[r],d=x.gradients,u=e.stops,m=n.radialReference,o(h)&&(e[r]=h={x1:h[0],y1:h[1],x2:h[2],y2:h[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===r&&m&&!s(h.gradientUnits)&&(c=h,h=C(h,x.getRadialAttr(m,c),{gradientUnits:"userSpaceOnUse"})),l(h,function(t,e){"id"!==e&&b.push(e,t)}),l(u,function(t){b.push(t)}),b=b.join(","),d[b]?v=d[b].attr("id"):(h.id=v=t.uniqueKey(),d[b]=p=x.createElement(r).attr(h).add(x.defs),p.radAttr=c,p.stops=[],u.forEach(function(e){0===e[1].indexOf("rgba")?(a=t.color(e[1]),f=a.get("rgb"),g=a.get("a")):(f=e[1],g=1),e=x.createElement("stop").attr({offset:e[0],"stop-color":f,"stop-opacity":g}).add(p),p.stops.push(e)})),y="url("+x.url+"#"+v+")",n.setAttribute(i,y),n.gradient=b,e.toString=function(){return y})})},applyTextOutline:function(e){var s,n=this.element;-1!==e.indexOf("contrast")&&(e=e.replace(/contrast/g,this.renderer.getContrast(n.style.fill))),e=e.split(" ");var o=e[e.length-1];if((s=e[0])&&"none"!==s&&t.svg){this.fakeTS=!0,e=[].slice.call(n.getElementsByTagName("tspan")),this.ySetter=this.xSetter,s=s.replace(/(^[\d\.]+)(.*?)$/g,function(t,e,i){return 2*e+i}),this.removeTextOutline(e);var a=n.firstChild;e.forEach(function(t,e){0===e&&(t.setAttribute("x",n.getAttribute("x")),e=n.getAttribute("y"),t.setAttribute("y",e||0),null===e&&n.setAttribute("y",0)),t=t.cloneNode(1),i(t,{class:"highcharts-text-outline",fill:o,stroke:o,"stroke-width":s,"stroke-linejoin":"round"}),n.insertBefore(t,a)})}},removeTextOutline:function(t){for(var e,i=t.length;i--;)e=t[i],"highcharts-text-outline"===e.getAttribute("class")&&n(t,this.element.removeChild(e))},symbolCustomAttribs:"x y width height r start end innerR anchorX anchorY rounded".split(" "),attr:function(e,i,s,n){var o,a,r,h=this.element,c=this,d=this.symbolCustomAttribs;if("string"==typeof e&&void 0!==i){var p=e;e={},e[p]=i}return"string"==typeof e?c=(this[e+"Getter"]||this._defaultGetter).call(this,e,h):(l(e,function(i,s){a=!1,n||O(this,s),this.symbolName&&-1!==t.inArray(s,d)&&(o||(this.symbolAttr(e),o=!0),a=!0),!this.rotation||"x"!==s&&"y"!==s||(this.doTransform=!0),a||(r=this[s+"Setter"]||this._defaultSetter,r.call(this,i,s,h),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(s)&&this.updateShadows(s,i,r))},this),this.afterSetters()),s&&s.call(this),c},afterSetters:function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},updateShadows:function(t,e,i){for(var s=this.shadows,n=s.length;n--;)i.call(s[n],"height"===t?Math.max(e-(s[n].cutHeight||0),0):"d"===t?this.d:e,t,s[n])},addClass:function(t,e){var i=this.attr("class")||"";return e||(t=(t||"").split(/ /g).reduce(function(t,e){return-1===i.indexOf(e)&&t.push(e),t},i?[i]:[]).join(" ")),t!==i&&this.attr("class",t),this},hasClass:function(t){return-1!==(this.attr("class")||"").split(" ").indexOf(t)},removeClass:function(t){return this.attr("class",(this.attr("class")||"").replace(t,""))},symbolAttr:function(t){var e=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(i){e[i]=D(t[i],e[i])}),e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})},clip:function(t){return this.attr("clip-path",t?"url("+this.renderer.url+"#"+t.id+")":"none")},crisp:function(t,e){e=e||t.strokeWidth||0;var i=Math.round(e)%2/2;return t.x=Math.floor(t.x||this.x||0)+i,t.y=Math.floor(t.y||this.y||0)+i,t.width=Math.floor((t.width||this.width||0)-2*i),t.height=Math.floor((t.height||this.height||0)-2*i),s(t.strokeWidth)&&(t.strokeWidth=e),t},css:function(t){var e=this.styles,s={},n=this.element,o="",a=!e,r=["textOutline","textOverflow","width"];if(t&&t.color&&(t.fill=t.color),e&&l(t,function(t,i){t!==e[i]&&(s[i]=t,a=!0)}),a){if(e&&(t=w(e,s)),t)if(null===t.width||"auto"===t.width)delete this.textWidth;else if("text"===n.nodeName.toLowerCase()&&t.width)var h=this.textWidth=c(t.width);if(this.styles=t,h&&!L&&this.renderer.forExport&&delete t.width,n.namespaceURI===this.SVG_NS){var d=function(t,e){return"-"+e.toLowerCase()};l(t,function(t,e){-1===r.indexOf(e)&&(o+=e.replace(/([A-Z])/g,d)+":"+t+";")}),o&&i(n,"style",o)}else m(n,t);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),t&&t.textOutline&&this.applyTextOutline(t.textOutline))}return this},getStyle:function(t){return z.getComputedStyle(this.element||this,"").getPropertyValue(t)},strokeWidth:function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var t=this.getStyle("stroke-width");if(t.indexOf("px")===t.length-2)t=c(t);else{var e=b.createElementNS(I,"rect");i(e,{width:t,"stroke-width":0}),this.element.parentNode.appendChild(e),t=e.getBBox().width,e.parentNode.removeChild(e)}return t},on:function(t,e){var i=this,s=i.element;return k&&"click"===t?(s.ontouchstart=function(t){i.touchEventFired=Date.now(),t.preventDefault(),e.call(s,t)},s.onclick=function(t){(-1===z.navigator.userAgent.indexOf("Android")||1100<Date.now()-(i.touchEventFired||0))&&e.call(s,t)}):s["on"+t]=e,this},setRadialReference:function(t){var e=this.renderer.gradients[this.element.gradient];return this.element.radialReference=t,e&&e.radAttr&&e.animate(this.renderer.getRadialAttr(t,e.radAttr)),this},translate:function(t,e){return this.attr({translateX:t,translateY:e})},invert:function(t){return this.inverted=t,this.updateTransform(),this},updateTransform:function(){var t=this.translateX||0,e=this.translateY||0,i=this.scaleX,n=this.scaleY,o=this.inverted,a=this.rotation,r=this.matrix,h=this.element;o&&(t+=this.width,e+=this.height),t=["translate("+t+","+e+")"],s(r)&&t.push("matrix("+r.join(",")+")"),o?t.push("rotate(90) scale(-1,1)"):a&&t.push("rotate("+a+" "+D(this.rotationOriginX,h.getAttribute("x"),0)+" "+D(this.rotationOriginY,h.getAttribute("y")||0)+")"),(s(i)||s(n))&&t.push("scale("+D(i,1)+" "+D(n,1)+")"),t.length&&h.setAttribute("transform",t.join(" "))},toFront:function(){var t=this.element;return t.parentNode.appendChild(t),this},align:function(t,e,i){var s,o,a,r={},l=this.renderer,c=l.alignedObjects;t?(this.alignOptions=t,this.alignByTranslate=e,(!i||h(i))&&(this.alignTo=s=i||"renderer",n(c,this),c.push(this),i=null)):(t=this.alignOptions,e=this.alignByTranslate,s=this.alignTo),i=D(i,l[s],l),s=t.align,l=t.verticalAlign,c=(i.x||0)+(t.x||0);var d=(i.y||0)+(t.y||0);return"right"===s?o=1:"center"===s&&(o=2),o&&(c+=(i.width-(t.width||0))/o),r[e?"translateX":"x"]=Math.round(c),"bottom"===l?a=1:"middle"===l&&(a=2),a&&(d+=(i.height-(t.height||0))/a),r[e?"translateY":"y"]=Math.round(d),this[this.placed?"animate":"attr"](r),this.placed=!0,this.alignAttr=r,this},getBBox:function(t,e){var i,n,o=this.renderer,a=this.element,r=this.styles,h=this.textStr,l=o.cache,c=o.cacheKeys,d=a.namespaceURI===this.SVG_NS;e=D(e,this.rotation);var p=e*y,u=o.styledMode?a&&N.prototype.getStyle.call(a,"font-size"):r&&r.fontSize;if(s(h)){var f=h.toString();-1===f.indexOf("<")&&(f=f.replace(/[0-9]/g,"0")),f+=["",e||0,u,this.textWidth,r&&r.textOverflow].join()}if(f&&!t&&(i=l[f]),!i){if(d||o.forExport){try{(n=this.fakeTS&&function(t){[].forEach.call(a.querySelectorAll(".highcharts-text-outline"),function(e){e.style.display=t})})&&n("none"),i=a.getBBox?w({},a.getBBox()):{width:a.offsetWidth,height:a.offsetHeight},n&&n("")}catch(t){}(!i||0>i.width)&&(i={width:0,height:0})}else i=this.htmlGetBBox();if(o.isSVG&&(t=i.width,o=i.height,d&&(i.height=o={"11px,17":14,"13px,20":16}[r&&r.fontSize+","+Math.round(o)]||o),e&&(i.width=Math.abs(o*Math.sin(p))+Math.abs(t*Math.cos(p)),i.height=Math.abs(o*Math.cos(p))+Math.abs(t*Math.sin(p)))),f&&0<i.height){for(;250<c.length;)delete l[c.shift()];l[f]||c.push(f),l[f]=i}}return i},show:function(t){return this.attr({visibility:t?"inherit":"visible"})},hide:function(t){return t?this.attr({y:-9999}):this.attr({visibility:"hidden"}),this},fadeOut:function(t){var e=this;e.animate({opacity:0},{duration:t||150,complete:function(){e.attr({y:-9999})}})},add:function(t){var e=this.renderer,i=this.element;if(t&&(this.parentGroup=t),this.parentInverted=t&&t.inverted,void 0!==this.textStr&&e.buildText(this),this.added=!0,!t||t.handleZ||this.zIndex)var s=this.zIndexSetter();return s||(t?t.element:e.box).appendChild(i),this.onAdd&&this.onAdd(),this},safeRemoveChild:function(t){var e=t.parentNode;e&&e.removeChild(t)},destroy:function(){var t=this,e=t.element||{},i=t.renderer,s=i.isSVG&&"SPAN"===e.nodeName&&t.parentGroup,o=e.ownerSVGElement,a=t.clipPath;if(e.onclick=e.onmouseout=e.onmouseover=e.onmousemove=e.point=null,O(t),a&&o&&([].forEach.call(o.querySelectorAll("[clip-path],[CLIP-PATH]"),function(t){
-1<t.getAttribute("clip-path").indexOf(a.element.id)&&t.removeAttribute("clip-path")}),t.clipPath=a.destroy()),t.stops){for(o=0;o<t.stops.length;o++)t.stops[o]=t.stops[o].destroy();t.stops=null}for(t.safeRemoveChild(e),i.styledMode||t.destroyShadows();s&&s.div&&0===s.div.childNodes.length;)e=s.parentGroup,t.safeRemoveChild(s.div),delete s.div,s=e;t.alignTo&&n(i.alignedObjects,t),l(t,function(e,i){t[i]&&t[i].parentGroup===t&&t[i].destroy&&t[i].destroy(),delete t[i]})},shadow:function(t,e,s){var n,o=[],a=this.element;if(t){if(!this.shadows){var r=D(t.width,3),h=(t.opacity||.15)/r,l=this.parentInverted?"(-1,-1)":"("+D(t.offsetX,1)+", "+D(t.offsetY,1)+")";for(n=1;n<=r;n++){var c=a.cloneNode(0),d=2*r+1-2*n;i(c,{stroke:t.color||"#000000","stroke-opacity":h*n,"stroke-width":d,transform:"translate"+l,fill:"none"}),c.setAttribute("class",(c.getAttribute("class")||"")+" highcharts-shadow"),s&&(i(c,"height",Math.max(i(c,"height")-d,0)),c.cutHeight=d),e?e.element.appendChild(c):a.parentNode&&a.parentNode.insertBefore(c,a),o.push(c)}this.shadows=o}}else this.destroyShadows();return this},destroyShadows:function(){(this.shadows||[]).forEach(function(t){this.safeRemoveChild(t)},this),this.shadows=void 0},xGetter:function(t){return"circle"===this.element.nodeName&&("x"===t?t="cx":"y"===t&&(t="cy")),this._defaultGetter(t)},_defaultGetter:function(t){return t=D(this[t+"Value"],this[t],this.element?this.element.getAttribute(t):null,0),/^[\-0-9\.]+$/.test(t)&&(t=parseFloat(t)),t},dSetter:function(t,e,i){t&&t.join&&(t=t.join(" ")),/(NaN| {2}|^$)/.test(t)&&(t="M 0 0"),this[e]!==t&&(i.setAttribute(e,t),this[e]=t)},dashstyleSetter:function(t){var e,i=this["stroke-width"];if("inherit"===i&&(i=1),t=t&&t.toLowerCase()){for(t=t.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(","),e=t.length;e--;)t[e]=c(t[e])*i;t=t.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",t)}},alignSetter:function(t){var e={left:"start",center:"middle",right:"end"};e[t]&&(this.alignValue=t,this.element.setAttribute("text-anchor",e[t]))},opacitySetter:function(t,e,i){this[e]=t,i.setAttribute(e,t)},titleSetter:function(t){var e=this.element.getElementsByTagName("title")[0];e||(e=b.createElementNS(this.SVG_NS,"title"),this.element.appendChild(e)),e.firstChild&&e.removeChild(e.firstChild),e.appendChild(b.createTextNode(String(D(t,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")))},textSetter:function(t){t!==this.textStr&&(delete this.bBox,delete this.textPxLength,this.textStr=t,this.added&&this.renderer.buildText(this))},setTextPath:function(e,i){var n=this.element,o={textAnchor:"text-anchor"},a=!1,r=this.textPathWrapper,h=!r;i=C(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},i);var c=i.attributes;if(e&&i&&i.enabled){this.options&&this.options.padding&&(c.dx=-this.options.padding),r||(this.textPathWrapper=r=this.renderer.createElement("textPath"),a=!0);var d=r.element;if((i=e.element.getAttribute("id"))||e.element.setAttribute("id",i=t.uniqueKey()),h)for(e=n.getElementsByTagName("tspan");e.length;)e[0].setAttribute("y",0),d.appendChild(e[0]);a&&r.add({element:this.text?this.text.element:n}),d.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+i),s(c.dy)&&(d.parentNode.setAttribute("dy",c.dy),delete c.dy),s(c.dx)&&(d.parentNode.setAttribute("dx",c.dx),delete c.dx),l(c,function(t,e){d.setAttribute(o[e]||e,t)}),n.removeAttribute("transform"),this.removeTextOutline.call(r,[].slice.call(n.getElementsByTagName("tspan"))),this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0}),this.applyTextOutline=this.updateTransform=A}else r&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(n,e));return this},destroyTextPath:function(t,e){var i;for(e.element.setAttribute("id",""),i=this.textPathWrapper.element.childNodes;i.length;)t.firstChild.appendChild(i[0]);t.firstChild.removeChild(this.textPathWrapper.element),delete e.textPathWrapper},fillSetter:function(t,e,i){"string"==typeof t?i.setAttribute(e,t):t&&this.complexColor(t,e,i)},visibilitySetter:function(t,e,i){"inherit"===t?i.removeAttribute(e):this[e]!==t&&i.setAttribute(e,t),this[e]=t},zIndexSetter:function(t,e){var i=this.renderer,n=this.parentGroup,o=(n||i).element||i.box,a=this.element,r=!1;i=o===i.box;var h,l=this.added;if(s(t)?(a.setAttribute("data-z-index",t),t=+t,this[e]===t&&(l=!1)):s(this[e])&&a.removeAttribute("data-z-index"),this[e]=t,l){for((t=this.zIndex)&&n&&(n.handleZ=!0),e=o.childNodes,h=e.length-1;0<=h&&!r;h--){n=e[h],l=n.getAttribute("data-z-index");var d=!s(l);n!==a&&(0>t&&d&&!i&&!h?(o.insertBefore(a,e[h]),r=!0):(c(l)<=t||d&&(!s(t)||0<=t))&&(o.insertBefore(a,e[h+1]||null),r=!0))}r||(o.insertBefore(a,e[i?3:0]||null),r=!0)}return r},_defaultSetter:function(t,e,i){i.setAttribute(e,t)}}),N.prototype.yGetter=N.prototype.xGetter,N.prototype.translateXSetter=N.prototype.translateYSetter=N.prototype.rotationSetter=N.prototype.verticalAlignSetter=N.prototype.rotationOriginXSetter=N.prototype.rotationOriginYSetter=N.prototype.scaleXSetter=N.prototype.scaleYSetter=N.prototype.matrixSetter=function(t,e){this[e]=t,this.doTransform=!0},N.prototype["stroke-widthSetter"]=N.prototype.strokeSetter=function(t,e,i){this[e]=t,this.stroke&&this["stroke-width"]?(N.prototype.fillSetter.call(this,this.stroke,"stroke",i),i.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===e&&0===t&&this.hasStroke?(i.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(i.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)},e=t.SVGRenderer=function(){this.init.apply(this,arguments)},w(e.prototype,{Element:N,SVG_NS:I,init:function(t,e,s,n,o,a,r){var h=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"});r||h.css(this.getStyle(n)),n=h.element,t.appendChild(n),i(t,"dir","ltr"),-1===t.innerHTML.indexOf("xmlns")&&i(n,"xmlns",this.SVG_NS),this.isSVG=!0,this.box=n,this.boxWrapper=h,this.alignedObjects=[],this.url=(M||T)&&b.getElementsByTagName("base").length?z.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"",this.createElement("desc").add().element.appendChild(b.createTextNode("Created with Highcharts 7.2.0")),this.defs=this.createElement("defs").add(),this.allowHTML=a,this.forExport=o,this.styledMode=r,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.setSize(e,s,!1);var l;M&&t.getBoundingClientRect&&(e=function(){m(t,{left:0,top:0}),l=t.getBoundingClientRect(),m(t,{left:Math.ceil(l.left)-l.left+"px",top:Math.ceil(l.top)-l.top+"px"})},e(),this.unSubPixelFix=p(z,"resize",e))},definition:function(t){function e(t,s){var n;return d(t).forEach(function(t){var o=i.createElement(t.tagName),a={};l(t,function(t,e){"tagName"!==e&&"children"!==e&&"textContent"!==e&&(a[e]=t)}),o.attr(a),o.add(s||i.defs),t.textContent&&o.element.appendChild(b.createTextNode(t.textContent)),e(t.children||[],o),n=o}),n}var i=this;return e(t)},getStyle:function(t){return this.style=w({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},t)},setStyle:function(t){this.boxWrapper.css(this.getStyle(t))},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var t=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),x(this.gradients||{}),this.gradients=null,t&&(this.defs=t.destroy()),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null},createElement:function(t){var e=new this.Element;return e.init(this,t),e},draw:A,getRadialAttr:function(t,e){return{cx:t[0]-t[2]/2+e.cx*t[2],cy:t[1]-t[2]/2+e.cy*t[2],r:e.r*t[2]}},truncate:function(t,e,i,s,n,o,a){var r,h,l=this,c=t.rotation,d=s?1:0,p=(i||s).length,u=p,f=[],g=function(t){e.firstChild&&e.removeChild(e.firstChild),t&&e.appendChild(b.createTextNode(t))},m=function(o,r){if(r=r||o,void 0===f[r])if(e.getSubStringLength)try{f[r]=n+e.getSubStringLength(0,s?r+1:r)}catch(t){}else l.getSpanWidth&&(g(a(i||s,o)),f[r]=n+l.getSpanWidth(t,e));return f[r]};t.rotation=0;var v=m(e.textContent.length);if(h=n+v>o){for(;d<=p;)u=Math.ceil((d+p)/2),s&&(r=a(s,u)),v=m(u,r&&r.length-1),d===p?d=p+1:v>o?p=u-1:d=u;0===p?g(""):i&&p===i.length-1||g(r||a(i||s,u))}return s&&s.splice(0,u),t.actualWidth=v,t.rotation=c,h},escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},buildText:function(t){var e,s,n=t.element,o=this,a=o.forExport,r=D(t.textStr,"").toString(),h=-1!==r.indexOf("<"),d=n.childNodes,p=i(n,"x"),u=t.styles,f=t.textWidth,g=u&&u.lineHeight,v=u&&u.textOutline,y=u&&"ellipsis"===u.textOverflow,x=u&&"nowrap"===u.whiteSpace,w=u&&u.fontSize,k=d.length;u=f&&!t.added&&this.box;var M=function(t){var e;return o.styledMode||(e=/(px|em)$/.test(t&&t.style.fontSize)?t.style.fontSize:w||o.style.fontSize||12),g?c(g):o.fontMetrics(e,t.getAttribute("style")?t:n).h},S=function(t,e){return l(o.escapes,function(i,s){e&&-1!==e.indexOf(i)||(t=t.toString().replace(new RegExp(i,"g"),s))}),t},T=function(t,e){var i=t.indexOf("<");if(t=t.substring(i,t.indexOf(">")-i),-1!==(i=t.indexOf(e+"="))&&(i=i+e.length+1,'"'===(e=t.charAt(i))||"'"===e))return t=t.substring(i+1),t.substring(0,t.indexOf(e))},C=/<br.*?>/g,A=[r,y,x,g,v,w,f].join();if(A!==t.textCache){for(t.textCache=A;k--;)n.removeChild(d[k]);h||v||y||f||-1!==r.indexOf(" ")&&(!x||C.test(r))?(u&&u.appendChild(n),h?(r=o.styledMode?r.replace(/<(b|strong)>/g,'<span class="highcharts-strong">').replace(/<(i|em)>/g,'<span class="highcharts-emphasized">'):r.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">'),r=r.replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"</span>").split(C)):r=[r],r=r.filter(function(t){return""!==t}),r.forEach(function(r,h){var l=0,c=0;r=r.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||<span").replace(/<\/span>/g,"</span>|||");var d=r.split("|||");d.forEach(function(r){if(""!==r||1===d.length){var u,g,v={},k=b.createElementNS(o.SVG_NS,"tspan");if((u=T(r,"class"))&&i(k,"class",u),(u=T(r,"style"))&&(u=u.replace(/(;| |^)color([ :])/,"$1fill$2"),i(k,"style",u)),(g=T(r,"href"))&&!a&&(i(k,"onclick",'location.href="'+g+'"'),i(k,"class","highcharts-anchor"),o.styledMode||m(k,{cursor:"pointer"}))," "!==(r=S(r.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" "))){if(k.appendChild(b.createTextNode(r)),l?v.dx=0:h&&null!==p&&(v.x=p),i(k,v),n.appendChild(k),!l&&s&&(!L&&a&&m(k,{display:"block"}),i(k,"dy",M(k))),f){var C=r.replace(/([^\^])-/g,"$1- ").split(" ");v=!x&&(1<d.length||h||1<C.length),g=0;var A=M(k);if(y)e=o.truncate(t,k,r,void 0,0,Math.max(0,f-parseInt(w||12,10)),function(t,e){return t.substring(0,e)+"…"});else if(v)for(;C.length;)C.length&&!x&&0<g&&(k=b.createElementNS(I,"tspan"),i(k,{dy:A,x:p}),u&&i(k,"style",u),k.appendChild(b.createTextNode(C.join(" ").replace(/- /g,"-"))),n.appendChild(k)),o.truncate(t,k,null,C,0===g?c:0,f,function(t,e){return C.slice(0,e).join(" ").replace(/- /g,"-")}),c=t.actualWidth,g++}l++}}}),s=s||n.childNodes.length}),y&&e&&t.attr("title",S(t.textStr,["&lt;","&gt;"])),u&&u.removeChild(n),v&&t.applyTextOutline&&t.applyTextOutline(v)):n.appendChild(b.createTextNode(S(r)))}},getContrast:function(t){return t=g(t).rgba,t[0]*=1,t[1]*=1.2,t[2]*=.5,459<t[0]+t[1]+t[2]?"#000000":"#FFFFFF"},button:function(t,e,i,s,n,o,a,r,h,l){var c=this.label(t,e,i,h,null,null,l,null,"button"),d=0,u=this.styledMode;if(c.attr(C({padding:8,r:2},n)),!u){n=C({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontWeight:"normal"}},n);var f=n.style;delete n.style,o=C(n,{fill:"#e6e6e6"},o);var g=o.style;delete o.style,a=C(n,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},a);var m=a.style;delete a.style,r=C(n,{style:{color:"#cccccc"}},r);var v=r.style;delete r.style}return p(c.element,S?"mouseover":"mouseenter",function(){3!==d&&c.setState(1)}),p(c.element,S?"mouseout":"mouseleave",function(){3!==d&&c.setState(d)}),c.setState=function(t){1!==t&&(c.state=d=t),c.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][t||0]),u||c.attr([n,o,a,r][t||0]).css([f,g,m,v][t||0])},u||c.attr(n).css(w({cursor:"default"},f)),c.on("click",function(t){3!==d&&s.call(c,t)})},crispLine:function(t,e){return t[1]===t[4]&&(t[1]=t[4]=Math.round(t[1])-e%2/2),t[2]===t[5]&&(t[2]=t[5]=Math.round(t[2])+e%2/2),t},path:function(t){var e=this.styledMode?{}:{fill:"none"};return o(t)?e.d=t:r(t)&&w(e,t),this.createElement("path").attr(e)},circle:function(t,e,i){return t=r(t)?t:void 0===t?{}:{x:t,y:e,r:i},e=this.createElement("circle"),e.xSetter=e.ySetter=function(t,e,i){i.setAttribute("c"+e,t)},e.attr(t)},arc:function(t,e,i,s,n,o){return r(t)?(s=t,e=s.y,i=s.r,t=s.x):s={innerR:s,start:n,end:o},t=this.symbol("arc",t,e,i,i,s),t.r=i,t},rect:function(t,e,s,n,o,a){o=r(t)?t.r:o;var h=this.createElement("rect");return t=r(t)?t:void 0===t?{}:{x:t,y:e,width:Math.max(s,0),height:Math.max(n,0)},this.styledMode||(void 0!==a&&(t.strokeWidth=a,t=h.crisp(t)),t.fill="none"),o&&(t.r=o),h.rSetter=function(t,e,s){h.r=t,i(s,{rx:t,ry:t})},h.rGetter=function(){return h.r},h.attr(t)},setSize:function(t,e,i){var s=this.alignedObjects,n=s.length;for(this.width=t,this.height=e,this.boxWrapper.animate({width:t,height:e},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:D(i,!0)?void 0:0});n--;)s[n].align()},g:function(t){var e=this.createElement("g");return t?e.attr({class:"highcharts-"+t}):e},image:function(t,e,i,s,n,o){var a={preserveAspectRatio:"none"},r=function(t,e){t.setAttributeNS?t.setAttributeNS("http://www.w3.org/1999/xlink","href",e):t.setAttribute("hc-svg-href",e)},h=function(e){r(l.element,t),o.call(l,e)};1<arguments.length&&w(a,{x:e,y:i,width:s,height:n});var l=this.createElement("image").attr(a);return o?(r(l.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),a=new z.Image,p(a,"load",h),a.src=t,a.complete&&h({})):r(l.element,t),l},symbol:function(t,e,i,n,o,a){var r=this,h=/^url\((.*?)\)$/,l=h.test(t),c=!l&&(this.symbols[t]?t:"circle"),d=c&&this.symbols[c],p=s(e)&&d&&d.call(this.symbols,Math.round(e),Math.round(i),n,o,a);if(d){var u=this.path(p);r.styledMode||u.attr("fill","none"),w(u,{symbolName:c,x:e,y:i,width:n,height:o}),a&&w(u,a)}else if(l){var g=t.match(h)[1];u=this.image(g),u.imgwidth=D(P[g]&&P[g].width,a&&a.width),u.imgheight=D(P[g]&&P[g].height,a&&a.height);var y=function(){u.attr({width:u.width,height:u.height})};["width","height"].forEach(function(t){u[t+"Setter"]=function(t,e){var i={},n=this["img"+e],o="width"===e?"translateX":"translateY";this[e]=t,s(n)&&(a&&"within"===a.backgroundSize&&this.width&&this.height&&(n=Math.round(n*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(e,n),this.alignByTranslate||(i[o]=((this[e]||0)-n)/2,this.attr(i)))}}),s(e)&&u.attr({x:e,y:i}),u.isImg=!0,s(u.imgwidth)&&s(u.imgheight)?y():(u.attr({width:0,height:0}),v("img",{onload:function(){var t=f[r.chartIndex];0===this.width&&(m(this,{position:"absolute",top:"-999em"}),b.body.appendChild(this)),P[g]={width:this.width,height:this.height},u.imgwidth=this.width,u.imgheight=this.height,u.element&&y(),this.parentNode&&this.parentNode.removeChild(this),!--r.imgCount&&t&&t.onload&&t.onload()},src:g}),this.imgCount++)}return u},symbols:{circle:function(t,e,i,s){return this.arc(t+i/2,e+s/2,i/2,s/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(t,e,i,s){return["M",t,e,"L",t+i,e,t+i,e+s,t,e+s,"Z"]},triangle:function(t,e,i,s){return["M",t+i/2,e,"L",t+i,e+s,t,e+s,"Z"]},"triangle-down":function(t,e,i,s){return["M",t,e,"L",t+i,e,t+i/2,e+s,"Z"]},diamond:function(t,e,i,s){return["M",t+i/2,e,"L",t+i,e+s/2,t+i/2,e+s,t,e+s/2,"Z"]},arc:function(t,e,i,n,o){var a=o.start,r=o.r||i,h=o.r||n||i,l=o.end-.001;i=o.innerR,n=D(o.open,.001>Math.abs(o.end-o.start-2*Math.PI));var c=Math.cos(a),d=Math.sin(a),p=Math.cos(l);return l=Math.sin(l),a=.001>o.end-a-Math.PI?0:1,o=["M",t+r*c,e+h*d,"A",r,h,0,a,D(o.clockwise,1),t+r*p,e+h*l],s(i)&&o.push(n?"M":"L",t+i*p,e+i*l,"A",i,i,0,a,0,t+i*c,e+i*d),o.push(n?"":"Z"),o},callout:function(t,e,i,s,n){var o=Math.min(n&&n.r||0,i,s),a=o+6,r=n&&n.anchorX;n=n&&n.anchorY;var h=["M",t+o,e,"L",t+i-o,e,"C",t+i,e,t+i,e,t+i,e+o,"L",t+i,e+s-o,"C",t+i,e+s,t+i,e+s,t+i-o,e+s,"L",t+o,e+s,"C",t,e+s,t,e+s,t,e+s-o,"L",t,e+o,"C",t,e,t,e,t+o,e];return r&&r>i?n>e+a&&n<e+s-a?h.splice(13,3,"L",t+i,n-6,t+i+6,n,t+i,n+6,t+i,e+s-o):h.splice(13,3,"L",t+i,s/2,r,n,t+i,s/2,t+i,e+s-o):r&&0>r?n>e+a&&n<e+s-a?h.splice(33,3,"L",t,n+6,t-6,n,t,n-6,t,e+o):h.splice(33,3,"L",t,s/2,r,n,t,s/2,t,e+o):n&&n>s&&r>t+a&&r<t+i-a?h.splice(23,3,"L",r+6,e+s,r,e+s+6,r-6,e+s,t+o,e+s):n&&0>n&&r>t+a&&r<t+i-a&&h.splice(3,3,"L",r-6,e,r,e-6,r+6,e,i-o,e),h}},clipRect:function(e,i,s,n){var o=t.uniqueKey()+"-",a=this.createElement("clipPath").attr({id:o}).add(this.defs);return e=this.rect(e,i,s,n,0).add(a),e.id=o,e.clipPath=a,e.count=0,e},text:function(t,e,i,n){var o={};return!n||!this.allowHTML&&this.forExport?(o.x=Math.round(e||0),i&&(o.y=Math.round(i)),s(t)&&(o.text=t),t=this.createElement("text").attr(o),n||(t.xSetter=function(t,e,i){var s,n=i.getElementsByTagName("tspan"),o=i.getAttribute(e);for(s=0;s<n.length;s++){var a=n[s];a.getAttribute(e)===o&&a.setAttribute(e,t)}i.setAttribute(e,t)}),t):this.html(t,e,i)},fontMetrics:function(t,e){return t=!this.styledMode&&/px/.test(t)||!z.getComputedStyle?t||e&&e.style&&e.style.fontSize||this.style&&this.style.fontSize:e&&N.prototype.getStyle.call(e,"font-size"),t=/px/.test(t)?c(t):12,e=24>t?t+3:Math.round(1.2*t),{h:e,b:Math.round(.8*e),f:t}},rotCorr:function(t,e,i){var s=t;return e&&i&&(s=Math.max(s*Math.cos(e*y),4)),{x:-t/3*Math.sin(e*y),y:s}},label:function(t,e,i,n,o,r,h,l,c){var d,p,u,f,g,m,v,y,x,b=this,k=b.styledMode,M=b.g("button"!==c&&"label"),S=M.text=b.text("",0,0,h).attr({zIndex:1}),T=0,A=3,D=0,O={},L=/^url\((.*?)\)$/.test(n),I=k||L,P=function(){return k?d.strokeWidth()%2/2:(y?parseInt(y,10):0)%2/2};c&&M.addClass("highcharts-"+c);var z=function(){var t=S.element.style,e={};p=(void 0===u||void 0===f||v)&&s(S.textStr)&&S.getBBox(),M.width=(u||p.width||0)+2*A+D,M.height=(f||p.height||0)+2*A,x=A+Math.min(b.fontMetrics(t&&t.fontSize,S).b,p?p.height:1/0),I&&(d||(M.box=d=b.symbols[n]||L?b.symbol(n):b.rect(),d.addClass(("button"===c?"":"highcharts-label-box")+(c?" highcharts-"+c+"-box":"")),d.add(M),t=P(),e.x=t,e.y=(l?-x:0)+t),e.width=Math.round(M.width),e.height=Math.round(M.height),d.attr(w(e,O)),O={})},H=function(){var t=D+A,e=l?0:x;s(u)&&p&&("center"===v||"right"===v)&&(t+={center:.5,right:1}[v]*(u-p.width)),t===S.x&&e===S.y||(S.attr("x",t),S.hasBoxWidthChanged&&(p=S.getBBox(!0),z()),void 0!==e&&S.attr("y",e)),S.x=t,S.y=e},B=function(t,e){d?d.attr(t,e):O[t]=e};M.onAdd=function(){S.add(M),M.attr({text:t||0===t?t:"",x:e,y:i}),d&&s(o)&&M.attr({anchorX:o,anchorY:r})},M.widthSetter=function(t){u=a(t)?t:null},M.heightSetter=function(t){f=t},M["text-alignSetter"]=function(t){v=t},M.paddingSetter=function(t){s(t)&&t!==A&&(A=M.padding=t,H())},M.paddingLeftSetter=function(t){s(t)&&t!==D&&(D=t,H())},M.alignSetter=function(t){(t={left:0,center:.5,right:1}[t])!==T&&(T=t,p&&M.attr({x:g}))},M.textSetter=function(t){void 0!==t&&S.attr({text:t}),z(),H()},M["stroke-widthSetter"]=function(t,e){t&&(I=!0),y=this["stroke-width"]=t,B(e,t)},k?M.rSetter=function(t,e){B(e,t)}:M.strokeSetter=M.fillSetter=M.rSetter=function(t,e){"r"!==e&&("fill"===e&&t&&(I=!0),M[e]=t),B(e,t)},M.anchorXSetter=function(t,e){o=M.anchorX=t,B(e,Math.round(t)-P()-g)},M.anchorYSetter=function(t,e){r=M.anchorY=t,B(e,t-m)},M.xSetter=function(t){M.x=t,T&&(t-=T*((u||p.width)+2*A),M["forceAnimate:x"]=!0),g=Math.round(t),M.attr("translateX",g)},M.ySetter=function(t){m=M.y=Math.round(t),M.attr("translateY",m)};var W=M.css;return h={css:function(t){if(t){var e={};t=C(t),M.textProps.forEach(function(i){void 0!==t[i]&&(e[i]=t[i],delete t[i])}),S.css(e),"width"in e&&z(),"fontSize"in e&&(z(),H())}return W.call(M,t)},getBBox:function(){return{width:p.width+2*A,height:p.height+2*A,x:p.x-A,y:p.y-A}},destroy:function(){E(M.element,"mouseenter"),E(M.element,"mouseleave"),S&&(S=S.destroy()),d&&(d=d.destroy()),N.prototype.destroy.call(M),M=b=z=H=B=null}},k||(h.shadow=function(t){return t&&(z(),d&&d.shadow(t)),M}),w(M,h)}}),t.Renderer=e}),e(i,"parts/Html.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.attr,s=e.defined,n=e.pInt,o=t.createElement,a=t.css,r=t.extend,h=t.isFirefox,l=t.isMS,c=t.isWebKit,d=t.pick,p=t.SVGElement;e=t.SVGRenderer;var u=t.win;r(p.prototype,{htmlCss:function(t){var e="SPAN"===this.element.tagName&&t&&"width"in t,i=d(e&&t.width,void 0);if(e){delete t.width,this.textWidth=i;var s=!0}return t&&"ellipsis"===t.textOverflow&&(t.whiteSpace="nowrap",t.overflow="hidden"),this.styles=r(this.styles,t),a(this.element,t),s&&this.htmlUpdateTransform(),this},htmlGetBBox:function(){var t=this.element;return{x:t.offsetLeft,y:t.offsetTop,width:t.offsetWidth,height:t.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var t=this.renderer,e=this.element,i=this.translateX||0,o=this.translateY||0,r=this.x||0,h=this.y||0,l=this.textAlign||"left",c={left:0,center:.5,right:1}[l],d=this.styles,p=d&&d.whiteSpace;if(a(e,{marginLeft:i,marginTop:o}),!t.styledMode&&this.shadows&&this.shadows.forEach(function(t){a(t,{marginLeft:i+1,marginTop:o+1})}),this.inverted&&[].forEach.call(e.childNodes,function(i){t.invertChild(i,e)}),"SPAN"===e.tagName){d=this.rotation;var u,f=this.textWidth&&n(this.textWidth),g=[d,l,e.innerHTML,this.textWidth,this.textAlign].join();(u=f!==this.oldTextWidth)&&!(u=f>this.oldTextWidth)&&((u=this.textPxLength)||(a(e,{width:"",whiteSpace:p||"nowrap"}),u=e.offsetWidth),u=u>f),u&&(/[ \-]/.test(e.textContent||e.innerText)||"ellipsis"===e.style.textOverflow)?(a(e,{width:f+"px",display:"block",whiteSpace:p||"normal"}),this.oldTextWidth=f,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1,g!==this.cTT&&(p=t.fontMetrics(e.style.fontSize,e).b,!s(d)||d===(this.oldRotation||0)&&l===this.oldAlign||this.setSpanRotation(d,c,p),this.getSpanCorrection(!s(d)&&this.textPxLength||e.offsetWidth,p,c,d,l)),a(e,{left:r+(this.xCorr||0)+"px",top:h+(this.yCorr||0)+"px"}),this.cTT=g,this.oldRotation=d,this.oldAlign=l}}else this.alignOnAdd=!0},setSpanRotation:function(t,e,i){var s={},n=this.renderer.getTransformKey();s[n]=s.transform="rotate("+t+"deg)",s[n+(h?"Origin":"-origin")]=s.transformOrigin=100*e+"% "+i+"px",a(this.element,s)},getSpanCorrection:function(t,e,i){this.xCorr=-t*i,this.yCorr=-e}}),r(e.prototype,{getTransformKey:function(){return l&&!/Edge/.test(u.navigator.userAgent)?"-ms-transform":c?"-webkit-transform":h?"MozTransform":u.opera?"-o-transform":""},html:function(t,e,s){var n=this.createElement("span"),a=n.element,h=n.renderer,l=h.isSVG,c=function(t,e){["opacity","visibility"].forEach(function(i){t[i+"Setter"]=function(s,n,o){var a=t.div?t.div.style:e;p.prototype[i+"Setter"].call(this,s,n,o),a&&(a[n]=s)}}),t.addedSetters=!0};return n.textSetter=function(t){t!==a.innerHTML&&(delete this.bBox,delete this.oldTextWidth),this.textStr=t,a.innerHTML=d(t,""),n.doTransform=!0},l&&c(n,n.element.style),n.xSetter=n.ySetter=n.alignSetter=n.rotationSetter=function(t,e){"align"===e&&(e="textAlign"),n[e]=t,n.doTransform=!0},n.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)},n.attr({text:t,x:Math.round(e),y:Math.round(s)}).css({position:"absolute"}),h.styledMode||n.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),a.style.whiteSpace="nowrap",n.css=n.htmlCss,l&&(n.add=function(t){var e=h.box.parentNode,s=[];if(this.parentGroup=t){var l=t.div;if(!l){for(;t;)s.push(t),t=t.parentGroup;s.reverse().forEach(function(t){function a(e,i){t[i]=e,"translateX"===i?d.left=e+"px":d.top=e+"px",t.doTransform=!0}var h=i(t.element,"class");l=t.div=t.div||o("div",h?{className:h}:void 0,{position:"absolute",left:(t.translateX||0)+"px",top:(t.translateY||0)+"px",display:t.display,opacity:t.opacity,pointerEvents:t.styles&&t.styles.pointerEvents},l||e);var d=l.style;r(t,{classSetter:function(t){return function(e){this.element.setAttribute("class",e),t.className=e}}(l),on:function(){return s[0].div&&n.on.apply({element:s[0].div},arguments),t},translateXSetter:a,translateYSetter:a}),t.addedSetters||c(t)})}}else l=e;return l.appendChild(a),n.added=!0,n.alignOnAdd&&n.htmlUpdateTransform(),n}),n}})}),e(i,"parts/Time.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isObject,n=e.objectEach,o=e.splat,a=t.extend,r=t.merge,h=t.pick,l=t.timeUnits,c=t.win;t.Time=function(t){this.update(t,!1)},t.Time.prototype={defaultOptions:{},update:function(t){var e=h(t&&t.useUTC,!0),i=this;this.options=t=r(!0,this.options||{},t),this.Date=t.Date||c.Date||Date,this.timezoneOffset=(this.useUTC=e)&&t.timezoneOffset,this.getTimezoneOffset=this.timezoneOffsetFunction(),(this.variableTimezone=!(e&&!t.getTimezoneOffset&&!t.timezone))||this.timezoneOffset?(this.get=function(t,e){var s=e.getTime(),n=s-i.getTimezoneOffset(e);return e.setTime(n),t=e["getUTC"+t](),e.setTime(s),t},this.set=function(t,e,s){if("Milliseconds"===t||"Seconds"===t||"Minutes"===t&&0==e.getTimezoneOffset()%60)e["set"+t](s);else{var n=i.getTimezoneOffset(e);n=e.getTime()-n,e.setTime(n),e["setUTC"+t](s),t=i.getTimezoneOffset(e),n=e.getTime()+t,e.setTime(n)}}):e?(this.get=function(t,e){return e["getUTC"+t]()},this.set=function(t,e,i){return e["setUTC"+t](i)}):(this.get=function(t,e){return e["get"+t]()},this.set=function(t,e,i){return e["set"+t](i)})},makeTime:function(e,i,s,n,o,a){if(this.useUTC){var r=this.Date.UTC.apply(0,arguments),l=this.getTimezoneOffset(r);r+=l;var c=this.getTimezoneOffset(r);l!==c?r+=c-l:l-36e5!==this.getTimezoneOffset(r-36e5)||t.isSafari||(r-=36e5)}else r=new this.Date(e,i,h(s,1),h(n,0),h(o,0),h(a,0)).getTime();return r},timezoneOffsetFunction:function(){var e=this,i=this.options,s=c.moment;if(!this.useUTC)return function(t){return 6e4*new Date(t).getTimezoneOffset()};if(i.timezone){if(s)return function(t){return 6e4*-s.tz(t,i.timezone).utcOffset()};t.error(25)}return this.useUTC&&i.getTimezoneOffset?function(t){return 6e4*i.getTimezoneOffset(t)}:function(){return 6e4*(e.timezoneOffset||0)}},dateFormat:function(e,s,o){if(!i(s)||isNaN(s))return t.defaultOptions.lang.invalidDate||"";e=t.pick(e,"%Y-%m-%d %H:%M:%S");var a=this,r=new this.Date(s),h=this.get("Hours",r),l=this.get("Day",r),c=this.get("Date",r),d=this.get("Month",r),p=this.get("FullYear",r),u=t.defaultOptions.lang,f=u.weekdays,g=u.shortWeekdays,m=t.pad;return r=t.extend({a:g?g[l]:f[l].substr(0,3),A:f[l],d:m(c),e:m(c,2," "),w:l,b:u.shortMonths[d],B:u.months[d],m:m(d+1),o:d+1,y:p.toString().substr(2,2),Y:p,H:m(h),k:h,I:m(h%12||12),l:h%12||12,M:m(a.get("Minutes",r)),p:12>h?"AM":"PM",P:12>h?"am":"pm",S:m(r.getSeconds()),L:m(Math.floor(s%1e3),3)},t.dateFormats),n(r,function(t,i){for(;-1!==e.indexOf("%"+i);)e=e.replace("%"+i,"function"==typeof t?t.call(a,s):t)}),o?e.substr(0,1).toUpperCase()+e.substr(1):e},resolveDTLFormat:function(t){return s(t,!0)?t:(t=o(t),{main:t[0],from:t[1],to:t[2]})},getTimeTicks:function(t,e,s,n){var o,r=this,c=[],d={},p=new r.Date(e),u=t.unitRange,f=t.count||1;if(n=h(n,1),i(e)){if(r.set("Milliseconds",p,u>=l.second?0:f*Math.floor(r.get("Milliseconds",p)/f)),u>=l.second&&r.set("Seconds",p,u>=l.minute?0:f*Math.floor(r.get("Seconds",p)/f)),u>=l.minute&&r.set("Minutes",p,u>=l.hour?0:f*Math.floor(r.get("Minutes",p)/f)),u>=l.hour&&r.set("Hours",p,u>=l.day?0:f*Math.floor(r.get("Hours",p)/f)),u>=l.day&&r.set("Date",p,u>=l.month?1:Math.max(1,f*Math.floor(r.get("Date",p)/f))),u>=l.month){r.set("Month",p,u>=l.year?0:f*Math.floor(r.get("Month",p)/f));var g=r.get("FullYear",p)}u>=l.year&&r.set("FullYear",p,g-g%f),u===l.week&&(g=r.get("Day",p),r.set("Date",p,r.get("Date",p)-g+n+(g<n?-7:0))),g=r.get("FullYear",p),n=r.get("Month",p);var m=r.get("Date",p),v=r.get("Hours",p);for(e=p.getTime(),r.variableTimezone&&(o=s-e>4*l.month||r.getTimezoneOffset(e)!==r.getTimezoneOffset(s)),e=p.getTime(),p=1;e<s;)c.push(e),e=u===l.year?r.makeTime(g+p*f,0):u===l.month?r.makeTime(g,n+p*f):!o||u!==l.day&&u!==l.week?o&&u===l.hour&&1<f?r.makeTime(g,n,m,v+p*f):e+u*f:r.makeTime(g,n,m+p*f*(u===l.day?1:7)),p++;c.push(e),u<=l.hour&&1e4>c.length&&c.forEach(function(t){0==t%18e5&&"000000000"===r.dateFormat("%H%M%S%L",t)&&(d[t]="day")})}return c.info=a(t,{higherRanks:d,totalRange:u*f}),c}}}),e(i,"parts/Options.js",[i["parts/Globals.js"]],function(t){var e=t.color,i=t.merge;t.defaultOptions={colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" "),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:t.Time.prototype.defaultOptions,chart:{styledMode:!1,borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},width:null,height:null,borderColor:"#335cad",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"},title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},caption:{margin:15,text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",alignColumns:!0,layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{activeColor:"#003399",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#cccccc"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:t.svg,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",padding:8,snap:t.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">●</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:e("#f7f7f7").setOpacity(.85).get(),borderWidth:1,shadow:!0,style:{color:"#333333",cursor:"default",fontSize:"12px",pointerEvents:"none",whiteSpace:"nowrap"}},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"9px"},text:"Highcharts.com"}},t.setOptions=function(e){return t.defaultOptions=i(!0,t.defaultOptions,e),t.time.update(i(t.defaultOptions.global,t.defaultOptions.time),!1),t.defaultOptions},t.getOptions=function(){return t.defaultOptions},t.defaultPlotOptions=t.defaultOptions.plotOptions,t.time=new t.Time(i(t.defaultOptions.global,t.defaultOptions.time)),t.dateFormat=function(e,i,s){return t.time.dateFormat(e,i,s)}}),e(i,"parts/Tick.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){
var i=e.defined,s=e.isNumber,n=t.correctFloat,o=t.destroyObjectProperties,a=t.fireEvent,r=t.merge,h=t.pick,l=t.deg2rad;t.Tick=function(t,e,i,s,n){this.axis=t,this.pos=e,this.type=i||"",this.isNewLabel=this.isNew=!0,this.parameters=n||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,i||s||this.addLabel()},t.Tick.prototype={addLabel:function(){var e=this,s=e.axis,o=s.options,a=s.chart,l=s.categories,c=s.names,d=e.pos,p=h(e.options&&e.options.labels,o.labels),u=s.tickPositions,f=d===u[0],g=d===u[u.length-1];l=this.parameters.category||(l?h(l[d],c[d],d):d);var m=e.label;u=u.info;var v,y;if(s.isDatetimeAxis&&u)var x=a.time.resolveDTLFormat(o.dateTimeLabelFormats[!o.grid&&u.higherRanks[d]||u.unitName]),b=x.main;e.isFirst=f,e.isLast=g,e.formatCtx={axis:s,chart:a,isFirst:f,isLast:g,dateTimeLabelFormat:b,tickPositionInfo:u,value:s.isLog?n(s.lin2log(l)):l,pos:d},o=s.labelFormatter.call(e.formatCtx,this.formatCtx),(y=x&&x.list)&&(e.shortenLabel=function(){for(v=0;v<y.length;v++)if(m.attr({text:s.labelFormatter.call(t.extend(e.formatCtx,{dateTimeLabelFormat:y[v]}))}),m.getBBox().width<s.getSlotWidth(e)-2*h(p.padding,5))return;m.attr({text:""})}),i(m)?m&&m.textStr!==o&&(!m.textWidth||p.style&&p.style.width||m.styles.width||m.css({width:null}),m.attr({text:o}),m.textPxLength=m.getBBox().width):((e.label=m=i(o)&&p.enabled?a.renderer.text(o,0,0,p.useHTML).add(s.labelGroup):null)&&(a.styledMode||m.css(r(p.style)),m.textPxLength=m.getBBox().width),e.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},handleOverflow:function(t){var e=this.axis,i=e.options.labels,s=t.x,n=e.chart.chartWidth,o=e.chart.spacing,a=h(e.labelLeft,Math.min(e.pos,o[3]));o=h(e.labelRight,Math.max(e.isRadial?0:e.pos+e.len,n-o[1]));var r,c=this.label,d=this.rotation,p={left:0,center:.5,right:1}[e.labelAlign||c.attr("align")],u=c.getBBox().width,f=e.getSlotWidth(this),g=f,m=1,v={};d||"justify"!==h(i.overflow,"justify")?0>d&&s-p*u<a?r=Math.round(s/Math.cos(d*l)-a):0<d&&s+p*u>o&&(r=Math.round((n-s)/Math.cos(d*l))):(n=s+(1-p)*u,s-p*u<a?g=t.x+g*(1-p)-a:n>o&&(g=o-t.x+g*p,m=-1),g=Math.min(f,g),g<f&&"center"===e.labelAlign&&(t.x+=m*(f-g-p*(f-Math.min(u,g)))),(u>g||e.autoRotation&&(c.styles||{}).width)&&(r=g)),r&&(this.shortenLabel?this.shortenLabel():(v.width=Math.floor(r),(i.style||{}).textOverflow||(v.textOverflow="ellipsis"),c.css(v)))},getPosition:function(e,i,s,n){var o=this.axis,r=o.chart,h=n&&r.oldChartHeight||r.chartHeight;return e={x:e?t.correctFloat(o.translate(i+s,null,null,n)+o.transB):o.left+o.offset+(o.opposite?(n&&r.oldChartWidth||r.chartWidth)-o.right-o.left:0),y:e?h-o.bottom+o.offset-(o.opposite?o.height:0):t.correctFloat(h-o.translate(i+s,null,null,n)-o.transB)},e.y=Math.max(Math.min(e.y,1e5),-1e5),a(this,"afterGetPosition",{pos:e}),e},getLabelPosition:function(t,e,s,n,o,r,h,c){var d=this.axis,p=d.transA,u=d.isLinked&&d.linkedParent?d.linkedParent.reversed:d.reversed,f=d.staggerLines,g=d.tickRotCorr||{x:0,y:0},m=o.y,v=n||d.reserveSpaceDefault?0:-d.labelOffset*("center"===d.labelAlign?.5:1),y={};return i(m)||(m=0===d.side?s.rotation?-8:-s.getBBox().height:2===d.side?g.y+8:Math.cos(s.rotation*l)*(g.y-s.getBBox(!1,0).height/2)),t=t+o.x+v+g.x-(r&&n?r*p*(u?-1:1):0),e=e+m-(r&&!n?r*p*(u?1:-1):0),f&&(s=h/(c||1)%f,d.opposite&&(s=f-s-1),e+=d.labelOffset/f*s),y.x=t,y.y=Math.round(e),a(this,"afterGetLabelPosition",{pos:y,tickmarkOffset:r,index:h}),y},getMarkPath:function(t,e,i,s,n,o){return o.crispLine(["M",t,e,"L",t+(n?0:-i),e+(n?i:0)],s)},renderGridLine:function(t,e,i){var s=this.axis,n=s.options,o=this.gridLine,a={},r=this.pos,l=this.type,c=h(this.tickmarkOffset,s.tickmarkOffset),d=s.chart.renderer,p=l?l+"Grid":"grid",u=n[p+"LineWidth"],f=n[p+"LineColor"];n=n[p+"LineDashStyle"],o||(s.chart.styledMode||(a.stroke=f,a["stroke-width"]=u,n&&(a.dashstyle=n)),l||(a.zIndex=1),t&&(e=0),this.gridLine=o=d.path().attr(a).addClass("highcharts-"+(l?l+"-":"")+"grid-line").add(s.gridGroup)),o&&(i=s.getPlotLinePath({value:r+c,lineWidth:o.strokeWidth()*i,force:"pass",old:t}))&&o[t||this.isNew?"attr":"animate"]({d:i,opacity:e})},renderMark:function(t,e,i){var s=this.axis,n=s.options,o=s.chart.renderer,a=this.type,r=a?a+"Tick":"tick",l=s.tickSize(r),c=this.mark,d=!c,p=t.x;t=t.y;var u=h(n[r+"Width"],!a&&s.isXAxis?1:0);n=n[r+"Color"],l&&(s.opposite&&(l[0]=-l[0]),d&&(this.mark=c=o.path().addClass("highcharts-"+(a?a+"-":"")+"tick").add(s.axisGroup),s.chart.styledMode||c.attr({stroke:n,"stroke-width":u})),c[d?"attr":"animate"]({d:this.getMarkPath(p,t,l[0],c.strokeWidth()*i,s.horiz,o),opacity:e}))},renderLabel:function(t,e,i,n){var o=this.axis,a=o.horiz,r=o.options,l=this.label,c=r.labels,d=c.step;o=h(this.tickmarkOffset,o.tickmarkOffset);var p=!0,u=t.x;t=t.y,l&&s(u)&&(l.xy=t=this.getLabelPosition(u,t,l,a,c,o,n,d),this.isFirst&&!this.isLast&&!h(r.showFirstLabel,1)||this.isLast&&!this.isFirst&&!h(r.showLastLabel,1)?p=!1:!a||c.step||c.rotation||e||0===i||this.handleOverflow(t),d&&n%d&&(p=!1),p&&s(t.y)?(t.opacity=i,l[this.isNewLabel?"attr":"animate"](t),this.isNewLabel=!1):(l.attr("y",-9999),this.isNewLabel=!0))},render:function(e,i,s){var n=this.axis,o=n.horiz,a=this.pos,r=h(this.tickmarkOffset,n.tickmarkOffset);a=this.getPosition(o,a,r,i),r=a.x;var l=a.y;n=o&&r===n.pos+n.len||!o&&l===n.pos?-1:1,s=h(s,1),this.isActive=!0,this.renderGridLine(i,s,n),this.renderMark(a,s,n),this.renderLabel(a,i,s,e),this.isNew=!1,t.fireEvent(this,"afterRender")},destroy:function(){o(this,this.axis)}}}),e(i,"parts/Axis.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isArray,n=e.isNumber,o=e.isString,a=e.objectEach,r=e.splat,h=t.addEvent,l=t.animObject,c=t.arrayMax,d=t.arrayMin,p=t.color,u=t.correctFloat,f=t.defaultOptions,g=t.deg2rad,m=t.destroyObjectProperties,v=t.extend,y=t.fireEvent,x=t.format,b=t.getMagnitude,w=t.merge,k=t.normalizeTickInterval,M=t.pick,S=t.removeEvent,T=t.seriesTypes,C=t.syncTimeout,A=t.Tick;return e=function(){this.init.apply(this,arguments)},t.extend(e.prototype,{defaultOptions:{dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e. %b"},week:{main:"%e. %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,labels:{enabled:!0,indentation:10,x:0,style:{color:"#666666",cursor:"default",fontSize:"11px"}},maxPadding:.01,minorTickLength:2,minorTickPosition:"outside",minPadding:.01,showEmpty:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",style:{color:"#666666"}},type:"linear",minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",lineWidth:1,gridLineColor:"#e6e6e6",tickColor:"#ccd6eb"},defaultYAxisOptions:{endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){return t.numberFormat(this.total,-1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},defaultLeftAxisOptions:{labels:{x:-15},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},init:function(e,s){var n=s.isX,o=this;o.chart=e,o.horiz=e.inverted&&!o.isZAxis?!n:n,o.isXAxis=n,o.coll=o.coll||(n?"xAxis":"yAxis"),y(this,"init",{userOptions:s}),o.opposite=s.opposite,o.side=s.side||(o.horiz?o.opposite?0:2:o.opposite?1:3),o.setOptions(s);var l=this.options,c=l.type;o.labelFormatter=l.labels.formatter||o.defaultLabelFormatter,o.userOptions=s,o.minPixelPadding=0,o.reversed=l.reversed,o.visible=!1!==l.visible,o.zoomEnabled=!1!==l.zoomEnabled,o.hasNames="category"===c||!0===l.categories,o.categories=l.categories||o.hasNames,o.names||(o.names=[],o.names.keys={}),o.plotLinesAndBandsGroups={},o.isLog="logarithmic"===c,o.isDatetimeAxis="datetime"===c,o.positiveValuesOnly=o.isLog&&!o.allowNegativeLog,o.isLinked=i(l.linkedTo),o.ticks={},o.labelEdge=[],o.minorTicks={},o.plotLinesAndBands=[],o.alternateBands={},o.len=0,o.minRange=o.userMinRange=l.minRange||l.maxZoom,o.range=l.range,o.offset=l.offset||0,o.stacks={},o.oldStacks={},o.stacksTouched=0,o.max=null,o.min=null,o.crosshair=M(l.crosshair,r(e.options.tooltip.crosshairs)[n?0:1],!1),s=o.options.events,-1===e.axes.indexOf(o)&&(n?e.axes.splice(e.xAxis.length,0,o):e.axes.push(o),e[o.coll].push(o)),o.series=o.series||[],e.inverted&&!o.isZAxis&&n&&void 0===o.reversed&&(o.reversed=!0),a(s,function(e,i){t.isFunction(e)&&h(o,i,e)}),o.lin2log=l.linearToLogConverter||o.lin2log,o.isLog&&(o.val2lin=o.log2lin,o.lin2val=o.lin2log),y(this,"afterInit")},setOptions:function(t){this.options=w(this.defaultOptions,"yAxis"===this.coll&&this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],w(f[this.coll],t)),y(this,"afterSetOptions",{userOptions:t})},defaultLabelFormatter:function(){var e=this.axis,i=this.value,s=e.chart.time,n=e.categories,o=this.dateTimeLabelFormat,a=f.lang,r=a.numericSymbols;a=a.numericSymbolMagnitude||1e3;var h=r&&r.length,l=e.options.labels.format;if(e=e.isLog?Math.abs(i):e.tickInterval,l)var c=x(l,this,s);else if(n)c=i;else if(o)c=s.dateFormat(o,i);else if(h&&1e3<=e)for(;h--&&void 0===c;)s=Math.pow(a,h+1),e>=s&&0==10*i%s&&null!==r[h]&&0!==i&&(c=t.numberFormat(i/s,-1)+r[h]);return void 0===c&&(c=1e4<=Math.abs(i)?t.numberFormat(i,-1):t.numberFormat(i,-1,void 0,"")),c},getSeriesExtremes:function(){var t,e=this,s=e.chart;y(this,"getSeriesExtremes",null,function(){e.hasVisibleSeries=!1,e.dataMin=e.dataMax=e.threshold=null,e.softThreshold=!e.isXAxis,e.buildStacks&&e.buildStacks(),e.series.forEach(function(o){if(o.visible||!s.options.chart.ignoreHiddenSeries){var a=o.options,r=a.threshold;if(e.hasVisibleSeries=!0,e.positiveValuesOnly&&0>=r&&(r=null),e.isXAxis){if(a=o.xData,a.length){t=o.getXExtremes(a);var h=t.min,l=t.max;n(h)||h instanceof Date||(a=a.filter(n),t=o.getXExtremes(a),h=t.min,l=t.max),a.length&&(e.dataMin=Math.min(M(e.dataMin,h),h),e.dataMax=Math.max(M(e.dataMax,l),l))}}else o.getExtremes(),l=o.dataMax,h=o.dataMin,i(h)&&i(l)&&(e.dataMin=Math.min(M(e.dataMin,h),h),e.dataMax=Math.max(M(e.dataMax,l),l)),i(r)&&(e.threshold=r),(!a.softThreshold||e.positiveValuesOnly)&&(e.softThreshold=!1)}})}),y(this,"afterGetSeriesExtremes")},translate:function(t,e,i,s,o,a){var r=this.linkedParent||this,h=1,l=0,c=s?r.oldTransA:r.transA;s=s?r.oldMin:r.min;var d=r.minPixelPadding;return o=(r.isOrdinal||r.isBroken||r.isLog&&o)&&r.lin2val,c||(c=r.transA),i&&(h*=-1,l=r.len),r.reversed&&(h*=-1,l-=h*(r.sector||r.len)),e?(t=(t*h+l-d)/c+s,o&&(t=r.lin2val(t))):(o&&(t=r.val2lin(t)),t=n(s)?h*(t-s)*c+l+h*d+(n(a)?c*a:0):void 0),t},toPixels:function(t,e){return this.translate(t,!1,!this.horiz,null,!0)+(e?0:this.pos)},toValue:function(t,e){return this.translate(t-(e?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(t){var e,i,s,o,a,r=this,h=r.chart,l=r.left,c=r.top,d=t.old,p=t.value,u=t.translatedValue,f=t.lineWidth,g=t.force,m=d&&h.oldChartHeight||h.chartHeight,v=d&&h.oldChartWidth||h.chartWidth,x=r.transB,b=function(t,e,i){return("pass"!==g&&t<e||t>i)&&(g?t=Math.min(Math.max(e,t),i):a=!0),t};return t={value:p,lineWidth:f,old:d,force:g,acrossPanes:t.acrossPanes,translatedValue:u},y(this,"getPlotLinePath",t,function(t){u=M(u,r.translate(p,null,null,d)),u=Math.min(Math.max(-1e5,u),1e5),e=s=Math.round(u+x),i=o=Math.round(m-u-x),n(u)?r.horiz?(i=c,o=m-r.bottom,e=s=b(e,l,l+r.width)):(e=l,s=v-r.right,i=o=b(i,c,c+r.height)):(a=!0,g=!1),t.path=a&&!g?null:h.renderer.crispLine(["M",e,i,"L",s,o],f||1)}),t.path},getLinearTickPositions:function(t,e,i){var s=u(Math.floor(e/t)*t);i=u(Math.ceil(i/t)*t);var n,o=[];if(u(s+t)===s&&(n=20),this.single)return[e];for(e=s;e<=i&&(o.push(e),(e=u(e+t,n))!==a);)var a=e;return o},getMinorTickInterval:function(){var t=this.options;return!0===t.minorTicks?M(t.minorTickInterval,"auto"):!1===t.minorTicks?null:t.minorTickInterval},getMinorTickPositions:function(){var t=this,e=t.options,i=t.tickPositions,s=t.minorTickInterval,n=[],o=t.pointRangePadding||0,a=t.min-o;o=t.max+o;var r=o-a;if(r&&r/s<t.len/3)if(t.isLog)this.paddedTicks.forEach(function(e,i,o){i&&n.push.apply(n,t.getLogTickPositions(s,o[i-1],o[i],!0))});else if(t.isDatetimeAxis&&"auto"===this.getMinorTickInterval())n=n.concat(t.getTimeTicks(t.normalizeTimeTickInterval(s),a,o,e.startOfWeek));else for(e=a+(i[0]-a)%s;e<=o&&e!==n[0];e+=s)n.push(e);return 0!==n.length&&t.trimTicks(n),n},adjustForMinRange:function(){var t,e,s,n,o,a=this.options,r=this.min,h=this.max;if(this.isXAxis&&void 0===this.minRange&&!this.isLog&&(i(a.min)||i(a.max)?this.minRange=null:(this.series.forEach(function(i){for(n=i.xData,e=o=i.xIncrement?1:n.length-1;0<e;e--)s=n[e]-n[e-1],(void 0===t||s<t)&&(t=s)}),this.minRange=Math.min(5*t,this.dataMax-this.dataMin))),h-r<this.minRange){var l=this.dataMax-this.dataMin>=this.minRange,p=this.minRange,u=(p-h+r)/2;u=[r-u,M(a.min,r-u)],l&&(u[2]=this.isLog?this.log2lin(this.dataMin):this.dataMin),r=c(u),h=[r+p,M(a.max,r+p)],l&&(h[2]=this.isLog?this.log2lin(this.dataMax):this.dataMax),h=d(h),h-r<p&&(u[0]=h-p,u[1]=M(a.min,h-p),r=c(u))}this.min=r,this.max=h},getClosest:function(){var t;return this.categories?t=1:this.series.forEach(function(e){var s=e.closestPointRange,n=e.visible||!e.chart.options.chart.ignoreHiddenSeries;!e.noSharedTooltip&&i(s)&&n&&(t=i(t)?Math.min(t,s):s)}),t},nameToX:function(t){var e=s(this.categories),n=e?this.categories:this.names,o=t.options.x;if(t.series.requireSorting=!1,i(o)||(o=!1===this.options.uniqueNames?t.series.autoIncrement():e?n.indexOf(t.name):M(n.keys[t.name],-1)),-1===o){if(!e)var a=n.length}else a=o;return void 0!==a&&(this.names[a]=t.name,this.names.keys[t.name]=a),a},updateNames:function(){var t=this,e=this.names;0<e.length&&(Object.keys(e.keys).forEach(function(t){delete e.keys[t]}),e.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(e){e.xIncrement=null,e.points&&!e.isDirtyData||(t.max=Math.max(t.max,e.xData.length-1),e.processData(),e.generatePoints()),e.data.forEach(function(i,s){if(i&&i.options&&void 0!==i.name){var n=t.nameToX(i);void 0!==n&&n!==i.x&&(i.x=n,e.xData[s]=n)}})}))},setAxisTranslation:function(t){var e=this,i=e.max-e.min,s=e.axisPointRange||0,n=0,a=0,r=e.linkedParent,h=!!e.categories,l=e.transA,c=e.isXAxis;if(c||h||s){var d=e.getClosest();r?(n=r.minPointOffset,a=r.pointRangePadding):e.series.forEach(function(t){var i=h?1:c?M(t.options.pointRange,d,0):e.axisPointRange||0,r=t.options.pointPlacement;s=Math.max(s,i),e.single&&!h||(t=T.xrange&&t instanceof T.xrange?!c:c,n=Math.max(n,t&&o(r)?0:i/2),a=Math.max(a,t&&"on"===r?0:i))}),r=e.ordinalSlope&&d?e.ordinalSlope/d:1,e.minPointOffset=n*=r,e.pointRangePadding=a*=r,e.pointRange=Math.min(s,i),c&&(e.closestPointRange=d)}t&&(e.oldTransA=l),e.translationSlope=e.transA=l=e.staticScale||e.len/(i+a||1),e.transB=e.horiz?e.left:e.bottom,e.minPixelPadding=l*n,y(this,"afterSetAxisTranslation")},minFromRange:function(){return this.max-this.range},setTickInterval:function(e){var s=this,o=s.chart,a=s.options,r=s.isLog,h=s.isDatetimeAxis,l=s.isXAxis,c=s.isLinked,d=a.maxPadding,p=a.minPadding,f=a.tickInterval,g=a.tickPixelInterval,m=s.categories,v=n(s.threshold)?s.threshold:null,x=s.softThreshold;h||m||c||this.getTickAmount();var w=M(s.userMin,a.min),S=M(s.userMax,a.max);if(c){s.linkedParent=o[s.coll][a.linkedTo];var T=s.linkedParent.getExtremes();s.min=M(T.min,T.dataMin),s.max=M(T.max,T.dataMax),a.type!==s.linkedParent.options.type&&t.error(11,1,o)}else{if(!x&&i(v))if(s.dataMin>=v)T=v,p=0;else if(s.dataMax<=v){var C=v;d=0}s.min=M(w,T,s.dataMin),s.max=M(S,C,s.dataMax)}r&&(s.positiveValuesOnly&&!e&&0>=Math.min(s.min,M(s.dataMin,s.min))&&t.error(10,1,o),s.min=u(s.log2lin(s.min),15),s.max=u(s.log2lin(s.max),15)),s.range&&i(s.max)&&(s.userMin=s.min=w=Math.max(s.dataMin,s.minFromRange()),s.userMax=S=s.max,s.range=null),y(s,"foundExtremes"),s.beforePadding&&s.beforePadding(),s.adjustForMinRange(),!(m||s.axisPointRange||s.usePercentage||c)&&i(s.min)&&i(s.max)&&(o=s.max-s.min)&&(!i(w)&&p&&(s.min-=o*p),!i(S)&&d&&(s.max+=o*d)),n(a.softMin)&&!n(s.userMin)&&a.softMin<s.min&&(s.min=w=a.softMin),n(a.softMax)&&!n(s.userMax)&&a.softMax>s.max&&(s.max=S=a.softMax),n(a.floor)&&(s.min=Math.min(Math.max(s.min,a.floor),Number.MAX_VALUE)),n(a.ceiling)&&(s.max=Math.max(Math.min(s.max,a.ceiling),M(s.userMax,-Number.MAX_VALUE))),x&&i(s.dataMin)&&(v=v||0,!i(w)&&s.min<v&&s.dataMin>=v?s.min=s.options.minRange?Math.min(v,s.max-s.minRange):v:!i(S)&&s.max>v&&s.dataMax<=v&&(s.max=s.options.minRange?Math.max(v,s.min+s.minRange):v)),s.tickInterval=s.min===s.max||void 0===s.min||void 0===s.max?1:c&&!f&&g===s.linkedParent.options.tickPixelInterval?f=s.linkedParent.tickInterval:M(f,this.tickAmount?(s.max-s.min)/Math.max(this.tickAmount-1,1):void 0,m?1:(s.max-s.min)*g/Math.max(s.len,g)),l&&!e&&s.series.forEach(function(t){t.processData(s.min!==s.oldMin||s.max!==s.oldMax)}),s.setAxisTranslation(!0),s.beforeSetTickPositions&&s.beforeSetTickPositions(),s.postProcessTickInterval&&(s.tickInterval=s.postProcessTickInterval(s.tickInterval)),s.pointRange&&!f&&(s.tickInterval=Math.max(s.pointRange,s.tickInterval)),e=M(a.minTickInterval,s.isDatetimeAxis&&s.closestPointRange),!f&&s.tickInterval<e&&(s.tickInterval=e),h||r||f||(s.tickInterval=k(s.tickInterval,null,b(s.tickInterval),M(a.allowDecimals,!(.5<s.tickInterval&&5>s.tickInterval&&1e3<s.max&&9999>s.max)),!!this.tickAmount)),this.tickAmount||(s.tickInterval=s.unsquish()),this.setTickPositions()},setTickPositions:function(){var e=this.options,s=e.tickPositions,n=this.getMinorTickInterval(),o=e.tickPositioner,a=e.startOnTick,r=e.endOnTick;this.tickmarkOffset=this.categories&&"between"===e.tickmarkPlacement&&1===this.tickInterval?.5:0,this.minorTickInterval="auto"===n&&this.tickInterval?this.tickInterval/5:n,this.single=this.min===this.max&&i(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==e.allowDecimals),this.tickPositions=n=s&&s.slice(),!n&&(!this.ordinalPositions&&(this.max-this.min)/this.tickInterval>Math.max(2*this.len,200)?(n=[this.min,this.max],t.error(19,!1,this.chart)):n=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,e.units),this.min,this.max,e.startOfWeek,this.ordinalPositions,this.closestPointRange,!0):this.isLog?this.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max),n.length>this.len&&(n=[n[0],n.pop()],n[0]===n[1]&&(n.length=1)),this.tickPositions=n,o&&(o=o.apply(this,[this.min,this.max])))&&(this.tickPositions=n=o),this.paddedTicks=n.slice(0),this.trimTicks(n,a,r),this.isLinked||(this.single&&2>n.length&&!this.categories&&(this.min-=.5,this.max+=.5),s||o||this.adjustTickAmount()),y(this,"afterSetTickPositions")},trimTicks:function(t,e,s){var n=t[0],o=t[t.length-1],a=this.minPointOffset||0;if(y(this,"trimTicks"),!this.isLinked){if(e&&-1/0!==n)this.min=n;else for(;this.min-a>t[0];)t.shift();if(s)this.max=o;else for(;this.max+a<t[t.length-1];)t.pop();0===t.length&&i(n)&&!this.options.tickPositions&&t.push((o+n)/2)}},alignToOthers:function(){var t,e={},i=this.options;return!1===this.chart.options.chart.alignTicks||!1===i.alignTicks||!1===i.startOnTick||!1===i.endOnTick||this.isLog||this.chart[this.coll].forEach(function(i){var s=i.options;s=[i.horiz?s.left:s.top,s.width,s.height,s.pane].join(),i.series.length&&(e[s]?t=!0:e[s]=1)}),t},getTickAmount:function(){var t=this.options,e=t.tickAmount,s=t.tickPixelInterval;!i(t.tickInterval)&&this.len<s&&!this.isRadial&&!this.isLog&&t.startOnTick&&t.endOnTick&&(e=2),!e&&this.alignToOthers()&&(e=Math.ceil(this.len/s)+1),4>e&&(this.finalTickAmt=e,e=5),this.tickAmount=e},adjustTickAmount:function(){var t,e=this.options,s=this.tickInterval,n=this.tickPositions,o=this.tickAmount,a=this.finalTickAmt,r=n&&n.length,h=M(this.threshold,this.softThreshold?0:null);if(this.hasData()){if(r<o){for(t=this.min;n.length<o;)n.length%2||t===h?n.push(u(n[n.length-1]+s)):n.unshift(u(n[0]-s));this.transA*=(r-1)/(o-1),this.min=e.startOnTick?n[0]:Math.min(this.min,n[0]),this.max=e.endOnTick?n[n.length-1]:Math.max(this.max,n[n.length-1])}else r>o&&(this.tickInterval*=2,this.setTickPositions());if(i(a)){for(s=e=n.length;s--;)(3===a&&1==s%2||2>=a&&0<s&&s<e-1)&&n.splice(s,1);this.finalTickAmt=void 0}}},setScale:function(){var t,e=this.series.some(function(t){return t.isDirtyData||t.isDirty||t.xAxis&&t.xAxis.isDirty});this.oldMin=this.min,this.oldMax=this.max,this.oldAxisLength=this.len,this.setAxisSize(),(t=this.len!==this.oldAxisLength)||e||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax||this.alignToOthers()?(this.resetStacks&&this.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty||(this.isDirty=t||this.min!==this.oldMin||this.max!==this.oldMax)):this.cleanStacks&&this.cleanStacks(),y(this,"afterSetScale")},setExtremes:function(t,e,i,s,n){var o=this,a=o.chart;i=M(i,!0),o.series.forEach(function(t){delete t.kdTree}),n=v(n,{min:t,max:e}),y(o,"setExtremes",n,function(){o.userMin=t,o.userMax=e,o.eventArgs=n,i&&a.redraw(s)})},zoom:function(t,e){var s=this.dataMin,n=this.dataMax,o=this.options,a=Math.min(s,M(o.min,s)),r=Math.max(n,M(o.max,n));return t={newMin:t,newMax:e},y(this,"zoom",t,function(t){var e=t.newMin,o=t.newMax;e===this.min&&o===this.max||(this.allowZoomOutside||(i(s)&&(e<a&&(e=a),e>r&&(e=r)),i(n)&&(o<a&&(o=a),o>r&&(o=r))),this.displayBtn=void 0!==e||void 0!==o,this.setExtremes(e,o,!1,void 0,{trigger:"zoom"})),t.zoomed=!0}),t.zoomed},setAxisSize:function(){var e=this.chart,i=this.options,s=i.offsets||[0,0,0,0],n=this.horiz,o=this.width=Math.round(t.relativeLength(M(i.width,e.plotWidth-s[3]+s[1]),e.plotWidth)),a=this.height=Math.round(t.relativeLength(M(i.height,e.plotHeight-s[0]+s[2]),e.plotHeight)),r=this.top=Math.round(t.relativeLength(M(i.top,e.plotTop+s[0]),e.plotHeight,e.plotTop));i=this.left=Math.round(t.relativeLength(M(i.left,e.plotLeft+s[3]),e.plotWidth,e.plotLeft)),this.bottom=e.chartHeight-a-r,this.right=e.chartWidth-o-i,this.len=Math.max(n?o:a,0),this.pos=n?i:r},getExtremes:function(){var t=this.isLog;return{min:t?u(this.lin2log(this.min)):this.min,max:t?u(this.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(t){var e=this.isLog,i=e?this.lin2log(this.min):this.min;return e=e?this.lin2log(this.max):this.max,null===t||-1/0===t?t=i:1/0===t?t=e:i>t?t=i:e<t&&(t=e),this.translate(t,0,1,0,1)},autoLabelAlign:function(t){var e=(M(t,0)-90*this.side+720)%360;return t={align:"center"},y(this,"autoLabelAlign",t,function(t){15<e&&165>e?t.align="right":195<e&&345>e&&(t.align="left")}),t.align},tickSize:function(t){var e=this.options,i=e[t+"Length"],s=M(e[t+"Width"],"tick"===t&&this.isXAxis&&!this.categories?1:0);if(s&&i){"inside"===e[t+"Position"]&&(i=-i);var n=[i,s]}return t={tickSize:n},y(this,"afterTickSize",t),t.tickSize},labelMetrics:function(){var t=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[t]&&this.ticks[t].label)},unsquish:function(){var t,e,s,n=this.options.labels,o=this.horiz,a=this.tickInterval,r=a,h=this.len/(((this.categories?1:0)+this.max-this.min)/a),l=n.rotation,c=this.labelMetrics(),d=Number.MAX_VALUE,p=this.max-this.min,f=function(t){var e=t/(h||1);return e=1<e?Math.ceil(e):1,e*a>p&&1/0!==t&&1/0!==h&&p&&(e=Math.ceil(p/a)),u(e*a)};return o?(s=!n.staggerLines&&!n.step&&(i(l)?[l]:h<M(n.autoRotationLimit,80)&&n.autoRotation))&&s.forEach(function(i){if(i===l||i&&-90<=i&&90>=i){e=f(Math.abs(c.h/Math.sin(g*i)));var s=e+Math.abs(i/360);s<d&&(d=s,t=i,r=e)}}):n.step||(r=f(c.h)),this.autoRotation=s,this.labelRotation=M(t,l),r},getSlotWidth:function(t){var e=this.chart,i=this.horiz,s=this.options.labels,n=Math.max(this.tickPositions.length-(this.categories?0:1),1),o=e.margin[3];return t&&t.slotWidth||i&&2>(s.step||0)&&!s.rotation&&(this.staggerLines||1)*this.len/n||!i&&(s.style&&parseInt(s.style.width,10)||o&&o-e.spacing[3]||.33*e.chartWidth)},renderUnsquish:function(){var t=this.chart,e=t.renderer,i=this.tickPositions,s=this.ticks,n=this.options.labels,a=n&&n.style||{},r=this.horiz,h=this.getSlotWidth(),l=Math.max(1,Math.round(h-2*(n.padding||5))),c={},d=this.labelMetrics(),p=n.style&&n.style.textOverflow,u=0;if(o(n.rotation)||(c.rotation=n.rotation||0),i.forEach(function(t){(t=s[t])&&t.label&&t.label.textPxLength>u&&(u=t.label.textPxLength)}),this.maxLabelLength=u,this.autoRotation)u>l&&u>d.h?c.rotation=this.labelRotation:this.labelRotation=0;else if(h){var f=l;if(!p){var g="clip";for(l=i.length;!r&&l--;){var m=i[l];(m=s[m].label)&&(m.styles&&"ellipsis"===m.styles.textOverflow?m.css({textOverflow:"clip"}):m.textPxLength>h&&m.css({width:h+"px"}),m.getBBox().height>this.len/i.length-(d.h-d.f)&&(m.specificTextOverflow="ellipsis"))}}}c.rotation&&(f=u>.5*t.chartHeight?.33*t.chartHeight:u,p||(g="ellipsis")),(this.labelAlign=n.align||this.autoLabelAlign(this.labelRotation))&&(c.align=this.labelAlign),i.forEach(function(t){var e=(t=s[t])&&t.label,i=a.width,n={};e&&(e.attr(c),t.shortenLabel?t.shortenLabel():f&&!i&&"nowrap"!==a.whiteSpace&&(f<e.textPxLength||"SPAN"===e.element.tagName)?(n.width=f,p||(n.textOverflow=e.specificTextOverflow||g),e.css(n)):e.styles&&e.styles.width&&!n.width&&!i&&e.css({width:null}),delete e.specificTextOverflow,t.rotation=c.rotation)},this),this.tickRotCorr=e.rotCorr(d.b,this.labelRotation||0,0!==this.side)},hasData:function(){return this.series.some(function(t){return t.hasData()})||this.options.showEmpty&&i(this.min)&&i(this.max)},addTitle:function(t){var e,i=this.chart.renderer,s=this.horiz,n=this.opposite,o=this.options.title,a=this.chart.styledMode;this.axisTitle||((e=o.textAlign)||(e=(s?{low:"left",middle:"center",high:"right"}:{low:n?"right":"left",middle:"center",high:n?"left":"right"})[o.align]),this.axisTitle=i.text(o.text,0,0,o.useHTML).attr({zIndex:7,rotation:o.rotation||0,align:e}).addClass("highcharts-axis-title"),a||this.axisTitle.css(w(o.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0),a||o.style.width||this.isRadial||this.axisTitle.css({width:this.len}),this.axisTitle[t?"show":"hide"](t)},generateTick:function(t){var e=this.ticks;e[t]?e[t].addLabel():e[t]=new A(this,t)},getOffset:function(){var t,e=this,s=e.chart,n=s.renderer,o=e.options,r=e.tickPositions,h=e.ticks,l=e.horiz,c=e.side,d=s.inverted&&!e.isZAxis?[1,0,3,2][c]:c,p=0,u=0,f=o.title,g=o.labels,m=0,v=s.axisOffset;s=s.clipOffset;var x=[-1,1,1,-1][c],b=o.className,w=e.axisParent,k=e.hasData();if(e.showAxis=t=k||M(o.showEmpty,!0),e.staggerLines=e.horiz&&g.staggerLines,e.axisGroup||(e.gridGroup=n.g("grid").attr({zIndex:o.gridZIndex||1}).addClass("highcharts-"+this.coll.toLowerCase()+"-grid "+(b||"")).add(w),e.axisGroup=n.g("axis").attr({zIndex:o.zIndex||2}).addClass("highcharts-"+this.coll.toLowerCase()+" "+(b||"")).add(w),e.labelGroup=n.g("axis-labels").attr({zIndex:g.zIndex||7}).addClass("highcharts-"+e.coll.toLowerCase()+"-labels "+(b||"")).add(w)),k||e.isLinked?(r.forEach(function(t,i){e.generateTick(t,i)}),e.renderUnsquish(),e.reserveSpaceDefault=0===c||2===c||{1:"left",3:"right"}[c]===e.labelAlign,M(g.reserveSpace,"center"===e.labelAlign||null,e.reserveSpaceDefault)&&r.forEach(function(t){m=Math.max(h[t].getLabelSize(),m)}),e.staggerLines&&(m*=e.staggerLines),e.labelOffset=m*(e.opposite?-1:1)):a(h,function(t,e){t.destroy(),delete h[e]}),f&&f.text&&!1!==f.enabled&&(e.addTitle(t),t&&!1!==f.reserveSpace)){e.titleOffset=p=e.axisTitle.getBBox()[l?"height":"width"];var S=f.offset;u=i(S)?0:M(f.margin,l?5:10)}e.renderLine(),e.offset=x*M(o.offset,v[c]?v[c]+(o.margin||0):0),e.tickRotCorr=e.tickRotCorr||{x:0,y:0},n=0===c?-e.labelMetrics().h:2===c?e.tickRotCorr.y:0,u=Math.abs(m)+u,m&&(u=u-n+x*(l?M(g.y,e.tickRotCorr.y+8*x):g.x)),e.axisTitleMargin=M(S,u),e.getMaxLabelDimensions&&(e.maxLabelDimensions=e.getMaxLabelDimensions(h,r)),l=this.tickSize("tick"),v[c]=Math.max(v[c],e.axisTitleMargin+p+x*e.offset,u,r&&r.length&&l?l[0]+x*e.offset:0),o=o.offset?0:2*Math.floor(e.axisLine.strokeWidth()/2),s[d]=Math.max(s[d],o),y(this,"afterGetOffset")},getLinePath:function(t){var e=this.chart,i=this.opposite,s=this.offset,n=this.horiz,o=this.left+(i?this.width:0)+s;return s=e.chartHeight-this.bottom-(i?this.height:0)+s,i&&(t*=-1),e.renderer.crispLine(["M",n?this.left:o,n?s:this.top,"L",n?e.chartWidth-this.right:o,n?s:e.chartHeight-this.bottom],t)},renderLine:function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))},getTitlePosition:function(){var t=this.horiz,e=this.left,i=this.top,s=this.len,n=this.options.title,o=t?e:i,a=this.opposite,r=this.offset,h=n.x||0,l=n.y||0,c=this.axisTitle,d=this.chart.renderer.fontMetrics(n.style&&n.style.fontSize,c);return c=Math.max(c.getBBox(null,0).height-d.h-1,0),s={low:o+(t?0:s),middle:o+s/2,high:o+(t?s:0)}[n.align],e=(t?i+this.height:e)+(t?1:-1)*(a?-1:1)*this.axisTitleMargin+[-c,c,d.f,-c][this.side],t={x:t?s+h:e+(a?this.width:0)+r+h,y:t?e+l-(a?this.height:0)+r:s+l},y(this,"afterGetTitlePosition",{titlePosition:t}),t},renderMinorTick:function(t){var e=this.chart.hasRendered&&n(this.oldMin),i=this.minorTicks;i[t]||(i[t]=new A(this,t,"minor")),e&&i[t].isNew&&i[t].render(null,!0),i[t].render(null,!1,1)},renderTick:function(t,e){var i=this.isLinked,s=this.ticks,o=this.chart.hasRendered&&n(this.oldMin);(!i||t>=this.min&&t<=this.max)&&(s[t]||(s[t]=new A(this,t)),o&&s[t].isNew&&s[t].render(e,!0,-1),s[t].render(e))},render:function(){var e,i,s=this,o=s.chart,r=s.options,h=s.isLog,c=s.isLinked,d=s.tickPositions,p=s.axisTitle,u=s.ticks,f=s.minorTicks,g=s.alternateBands,m=r.stackLabels,v=r.alternateGridColor,x=s.tickmarkOffset,b=s.axisLine,w=s.showAxis,k=l(o.renderer.globalAnimation);s.labelEdge.length=0,s.overlap=!1,[u,f,g].forEach(function(t){a(t,function(t){t.isActive=!1})}),(s.hasData()||c)&&(s.minorTickInterval&&!s.categories&&s.getMinorTickPositions().forEach(function(t){s.renderMinorTick(t)}),d.length&&(d.forEach(function(t,e){s.renderTick(t,e)}),x&&(0===s.min||s.single)&&(u[-1]||(u[-1]=new A(s,-1,null,!0)),u[-1].render(-1))),v&&d.forEach(function(n,a){i=void 0!==d[a+1]?d[a+1]+x:s.max-x,0==a%2&&n<s.max&&i<=s.max+(o.polar?-x:x)&&(g[n]||(g[n]=new t.PlotLineOrBand(s)),e=n+x,g[n].options={from:h?s.lin2log(e):e,to:h?s.lin2log(i):i,color:v},g[n].render(),g[n].isActive=!0)}),s._addedPlotLB||((r.plotLines||[]).concat(r.plotBands||[]).forEach(function(t){s.addPlotBandOrLine(t)}),s._addedPlotLB=!0)),[u,f,g].forEach(function(t){var e,i=[],s=k.duration;a(t,function(t,e){t.isActive||(t.render(e,!1,0),t.isActive=!1,i.push(e))}),C(function(){for(e=i.length;e--;)t[i[e]]&&!t[i[e]].isActive&&(t[i[e]].destroy(),delete t[i[e]])},t!==g&&o.hasRendered&&s?s:0)}),b&&(b[b.isPlaced?"animate":"attr"]({d:this.getLinePath(b.strokeWidth())}),b.isPlaced=!0,b[w?"show":"hide"](w)),p&&w&&(r=s.getTitlePosition(),n(r.y)?(p[p.isNew?"attr":"animate"](r),p.isNew=!1):(p.attr("y",-9999),p.isNew=!0)),m&&m.enabled&&s.renderStackTotals(),s.isDirty=!1,y(this,"afterRender")},redraw:function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(t){t.render()})),this.series.forEach(function(t){t.isDirty=!0})},keepProps:"extKey hcEvents names series userMax userMin".split(" "),destroy:function(t){var e,i=this,s=i.stacks,n=i.plotLinesAndBands;if(y(this,"destroy",{keepEvents:t}),t||S(i),
a(s,function(t,e){m(t),s[e]=null}),[i.ticks,i.minorTicks,i.alternateBands].forEach(function(t){m(t)}),n)for(t=n.length;t--;)n[t].destroy();"stackTotalGroup axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(t){i[t]&&(i[t]=i[t].destroy())});for(e in i.plotLinesAndBandsGroups)i.plotLinesAndBandsGroups[e]=i.plotLinesAndBandsGroups[e].destroy();a(i,function(t,e){-1===i.keepProps.indexOf(e)&&delete i[e]})},drawCrosshair:function(t,e){var s,n,o=this.crosshair,a=M(o.snap,!0),r=this.cross;if(y(this,"drawCrosshair",{e:t,point:e}),t||(t=this.cross&&this.cross.e),this.crosshair&&!1!==(i(e)||!a)){if(a?i(e)&&(n=M("colorAxis"!==this.coll?e.crosshairPos:null,this.isXAxis?e.plotX:this.len-e.plotY)):n=t&&(this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos),i(n)&&(s=this.getPlotLinePath({value:e&&(this.isXAxis?e.x:M(e.stackY,e.y)),translatedValue:n})||null),!i(s))return void this.hideCrosshair();a=this.categories&&!this.isRadial,r||(this.cross=r=this.chart.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(a?"category ":"thin ")+o.className).attr({zIndex:M(o.zIndex,2)}).add(),this.chart.styledMode||(r.attr({stroke:o.color||(a?p("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":M(o.width,1)}).css({"pointer-events":"none"}),o.dashStyle&&r.attr({dashstyle:o.dashStyle}))),r.show().attr({d:s}),a&&!o.width&&r.attr({"stroke-width":this.transA}),this.cross.e=t}else this.hideCrosshair();y(this,"afterDrawCrosshair",{e:t,point:e})},hideCrosshair:function(){this.cross&&this.cross.hide(),y(this,"afterHideCrosshair")}}),t.Axis=e}),e(i,"parts/DateTimeAxis.js",[i["parts/Globals.js"]],function(t){var e=t.Axis,i=t.getMagnitude,s=t.normalizeTickInterval,n=t.timeUnits;e.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)},e.prototype.normalizeTimeTickInterval=function(t,e){var o=e||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]];e=o[o.length-1];var a,r=n[e[0]],h=e[1];for(a=0;a<o.length&&(e=o[a],r=n[e[0]],h=e[1],!(o[a+1]&&t<=(r*h[h.length-1]+n[o[a+1][0]])/2));a++);return r===n.year&&t<5*r&&(h=[1,2,5]),t=s(t/r,h,"year"===e[0]?Math.max(i(t/r),1):1),{unitRange:r,count:t,unitName:e[0]}}}),e(i,"parts/LogarithmicAxis.js",[i["parts/Globals.js"]],function(t){var e=t.Axis,i=t.getMagnitude,s=t.normalizeTickInterval,n=t.pick;e.prototype.getLogTickPositions=function(t,e,o,a){var r=this.options,h=this.len,l=[];if(a||(this._minorAutoInterval=null),.5<=t)t=Math.round(t),l=this.getLinearTickPositions(t,e,o);else if(.08<=t){h=Math.floor(e);var c,d;for(r=.3<t?[1,2,4]:.15<t?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];h<o+1&&!d;h++){var p=r.length;for(c=0;c<p&&!d;c++){var u=this.log2lin(this.lin2log(h)*r[c]);u>e&&(!a||f<=o)&&void 0!==f&&l.push(f),f>o&&(d=!0);var f=u}}}else e=this.lin2log(e),o=this.lin2log(o),t=a?this.getMinorTickInterval():r.tickInterval,t=n("auto"===t?null:t,this._minorAutoInterval,r.tickPixelInterval/(a?5:1)*(o-e)/((a?h/this.tickPositions.length:h)||1)),t=s(t,null,i(t)),l=this.getLinearTickPositions(t,e,o).map(this.log2lin),a||(this._minorAutoInterval=t/5);return a||(this.tickInterval=t),l},e.prototype.log2lin=function(t){return Math.log(t)/Math.LN10},e.prototype.lin2log=function(t){return Math.pow(10,t)}}),e(i,"parts/PlotLineOrBand.js",[i["parts/Globals.js"],i["parts/Axis.js"],i["parts/Utilities.js"]],function(t,e,i){var s=i.defined,n=i.erase,o=i.objectEach,a=t.arrayMax,r=t.arrayMin,h=t.destroyObjectProperties,l=t.merge,c=t.pick;t.PlotLineOrBand=function(t,e){this.axis=t,e&&(this.options=e,this.id=e.id)},t.PlotLineOrBand.prototype={render:function(){t.fireEvent(this,"render");var e=this,i=e.axis,n=i.horiz,a=e.options,r=a.label,h=e.label,d=a.to,p=a.from,u=a.value,f=s(p)&&s(d),g=s(u),m=e.svgElem,v=!m,y=[],x=a.color,b=c(a.zIndex,0),w=a.events;y={class:"highcharts-plot-"+(f?"band ":"line ")+(a.className||"")};var k={},M=i.chart.renderer,S=f?"bands":"lines";if(i.isLog&&(p=i.log2lin(p),d=i.log2lin(d),u=i.log2lin(u)),i.chart.styledMode||(g?(y.stroke=x||"#999999",y["stroke-width"]=c(a.width,1),a.dashStyle&&(y.dashstyle=a.dashStyle)):f&&(y.fill=x||"#e6ebf5",a.borderWidth&&(y.stroke=a.borderColor,y["stroke-width"]=a.borderWidth))),k.zIndex=b,S+="-"+b,(x=i.plotLinesAndBandsGroups[S])||(i.plotLinesAndBandsGroups[S]=x=M.g("plot-"+S).attr(k).add()),v&&(e.svgElem=m=M.path().attr(y).add(x)),g)y=i.getPlotLinePath({value:u,lineWidth:m.strokeWidth(),acrossPanes:a.acrossPanes});else{if(!f)return;y=i.getPlotBandPath(p,d,a)}return(v||!m.d)&&y&&y.length?(m.attr({d:y}),w&&o(w,function(t,i){m.on(i,function(t){w[i].apply(e,[t])})})):m&&(y?(m.show(!0),m.animate({d:y})):m.d&&(m.hide(),h&&(e.label=h=h.destroy()))),r&&(s(r.text)||s(r.formatter))&&y&&y.length&&0<i.width&&0<i.height&&!y.isFlat?(r=l({align:n&&f&&"center",x:n?!f&&4:10,verticalAlign:!n&&f&&"middle",y:n?f?16:10:f?6:-4,rotation:n&&!f&&90},r),this.renderLabel(r,y,f,b)):h&&h.hide(),e},renderLabel:function(t,e,i,s){var n=this.label,o=this.axis.chart.renderer;n||(n={align:t.textAlign||t.align,rotation:t.rotation,class:"highcharts-plot-"+(i?"band":"line")+"-label "+(t.className||"")},n.zIndex=s,s=this.getLabelText(t),this.label=n=o.text(s,0,0,t.useHTML).attr(n).add(),this.axis.chart.styledMode||n.css(t.style)),o=e.xBounds||[e[1],e[4],i?e[6]:e[1]],e=e.yBounds||[e[2],e[5],i?e[7]:e[2]],i=r(o),s=r(e),n.align(t,!1,{x:i,y:s,width:a(o)-i,height:a(e)-s}),n.show(!0)},getLabelText:function(t){return s(t.formatter)?t.formatter.call(this):t.text},destroy:function(){n(this.axis.plotLinesAndBands,this),delete this.axis,h(this)}},t.extend(e.prototype,{getPlotBandPath:function(t,e){var i=this.getPlotLinePath({value:e,force:!0,acrossPanes:this.options.acrossPanes}),s=this.getPlotLinePath({value:t,force:!0,acrossPanes:this.options.acrossPanes}),n=[],o=this.horiz,a=1;if(t=t<this.min&&e<this.min||t>this.max&&e>this.max,s&&i){if(t){var r=s.toString()===i.toString();a=0}for(t=0;t<s.length;t+=6)o&&i[t+1]===s[t+1]?(i[t+1]+=a,i[t+4]+=a):o||i[t+2]!==s[t+2]||(i[t+2]+=a,i[t+5]+=a),n.push("M",s[t+1],s[t+2],"L",s[t+4],s[t+5],i[t+4],i[t+5],i[t+1],i[t+2],"z"),n.isFlat=r}return n},addPlotBand:function(t){return this.addPlotBandOrLine(t,"plotBands")},addPlotLine:function(t){return this.addPlotBandOrLine(t,"plotLines")},addPlotBandOrLine:function(e,i){var s=new t.PlotLineOrBand(this,e).render(),n=this.userOptions;if(s){if(i){var o=n[i]||[];o.push(e),n[i]=o}this.plotLinesAndBands.push(s)}return s},removePlotBandOrLine:function(t){for(var e=this.plotLinesAndBands,i=this.options,s=this.userOptions,o=e.length;o--;)e[o].id===t&&e[o].destroy();[i.plotLines||[],s.plotLines||[],i.plotBands||[],s.plotBands||[]].forEach(function(e){for(o=e.length;o--;)e[o].id===t&&n(e,e[o])})},removePlotBand:function(t){this.removePlotBandOrLine(t)},removePlotLine:function(t){this.removePlotBandOrLine(t)}})}),e(i,"parts/Tooltip.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isNumber,n=e.isString,o=e.splat,a=t.doc,r=t.extend,h=t.format,l=t.merge,c=t.pick,d=t.syncTimeout,p=t.timeUnits;t.Tooltip=function(){this.init.apply(this,arguments)},t.Tooltip.prototype={init:function(t,e){this.chart=t,this.options=e,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.split=e.split&&!t.inverted,this.shared=e.shared||this.split,this.outside=c(e.outside,!(!t.scrollablePixelsX&&!t.scrollablePixelsY))&&!this.split},cleanSplit:function(t){this.chart.series.forEach(function(e){var i=e&&e.tt;i&&(!i.isActive||t?e.tt=i.destroy():i.isActive=!1)})},applyFilter:function(){var t=this.chart;t.renderer.definition({tagName:"filter",id:"drop-shadow-"+t.index,opacity:.5,children:[{tagName:"feGaussianBlur",in:"SourceAlpha",stdDeviation:1},{tagName:"feOffset",dx:1,dy:1},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",type:"linear",slope:.3}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode",in:"SourceGraphic"}]}]}),t.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+t.index+"{filter:url(#drop-shadow-"+t.index+")}"})},getLabel:function(){var e,s=this,n=this.chart.renderer,o=this.chart.styledMode,a=this.options,r="tooltip"+(i(a.className)?" "+a.className:"");if(!this.label){if(this.outside&&(this.container=e=t.doc.createElement("div"),e.className="highcharts-tooltip-container",t.css(e,{position:"absolute",top:"1px",pointerEvents:a.style&&a.style.pointerEvents,zIndex:3}),t.doc.body.appendChild(e),this.renderer=n=new t.Renderer(e,0,0,{},void 0,void 0,n.styledMode)),this.split?this.label=n.g(r):(this.label=n.label("",0,0,a.shape||"callout",null,null,a.useHTML,null,r).attr({padding:a.padding,r:a.borderRadius}),o||this.label.attr({fill:a.backgroundColor,"stroke-width":a.borderWidth}).css(a.style).shadow(a.shadow)),o&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index)),this.outside){var h={x:this.label.xSetter,y:this.label.ySetter};this.label.xSetter=function(t,i){h[i].call(this.label,s.distance),e.style.left=t+"px"},this.label.ySetter=function(t,i){h[i].call(this.label,s.distance),e.style.top=t+"px"}}this.label.attr({zIndex:8}).add()}return this.label},update:function(t){this.destroy(),l(!0,this.chart.options.tooltip.userOptions,t),this.init(this.chart,l(!0,this.options,t))},destroy:function(){this.label&&(this.label=this.label.destroy()),this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy()),this.renderer&&(this.renderer=this.renderer.destroy(),t.discardElement(this.container)),t.clearTimeout(this.hideTimer),t.clearTimeout(this.tooltipTimeout)},move:function(e,i,s,n){var o=this,a=o.now,h=!1!==o.options.animation&&!o.isHidden&&(1<Math.abs(e-a.x)||1<Math.abs(i-a.y)),l=o.followPointer||1<o.len;r(a,{x:h?(2*a.x+e)/3:e,y:h?(a.y+i)/2:i,anchorX:l?void 0:h?(2*a.anchorX+s)/3:s,anchorY:l?void 0:h?(a.anchorY+n)/2:n}),o.getLabel().attr(a),h&&(t.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){o&&o.move(e,i,s,n)},32))},hide:function(e){var i=this;t.clearTimeout(this.hideTimer),e=c(e,this.options.hideDelay,500),this.isHidden||(this.hideTimer=d(function(){i.getLabel()[e?"fadeOut":"hide"](),i.isHidden=!0},e))},getAnchor:function(t,e){var i,s,n=this.chart,a=n.pointer,r=n.inverted,h=n.plotTop,l=n.plotLeft,c=0,d=0;return t=o(t),this.followPointer&&e?(void 0===e.chartX&&(e=a.normalize(e)),t=[e.chartX-n.plotLeft,e.chartY-h]):t[0].tooltipPos?t=t[0].tooltipPos:(t.forEach(function(t){i=t.series.yAxis,s=t.series.xAxis,c+=t.plotX+(!r&&s?s.left-l:0),d+=(t.plotLow?(t.plotLow+t.plotHigh)/2:t.plotY)+(!r&&i?i.top-h:0)}),c/=t.length,d/=t.length,t=[r?n.plotWidth-d:c,this.shared&&!r&&1<t.length&&e?e.chartY-h:r?n.plotHeight-c:d]),t.map(Math.round)},getPosition:function(t,e,i){var s,n=this.chart,o=this.distance,r={},h=n.inverted&&i.h||0,l=this.outside,d=l?a.documentElement.clientWidth-2*o:n.chartWidth,p=l?Math.max(a.body.scrollHeight,a.documentElement.scrollHeight,a.body.offsetHeight,a.documentElement.offsetHeight,a.documentElement.clientHeight):n.chartHeight,u=n.pointer.chartPosition,f=n.containerScaling,g=function(t){return f?t*f.scaleX:t},m=function(t){return f?t*f.scaleY:t},v=function(s){var a="x"===s;return[s,a?d:p,a?t:e].concat(l?[a?g(t):m(e),a?u.left-o+g(i.plotX+n.plotLeft):u.top-o+m(i.plotY+n.plotTop),0,a?d:p]:[a?t:e,a?i.plotX+n.plotLeft:i.plotY+n.plotTop,a?n.plotLeft:n.plotTop,a?n.plotLeft+n.plotWidth:n.plotTop+n.plotHeight])},y=v("y"),x=v("x"),b=!this.followPointer&&c(i.ttBelow,!n.inverted==!!i.negative),w=function(t,e,i,s,n,a,l){var c="y"===t?m(o):g(o),d=(i-s)/2,p=s<n-o,u=n+o+s<e,f=n-c-i+d;if(n=n+c-d,b&&u)r[t]=n;else if(!b&&p)r[t]=f;else if(p)r[t]=Math.min(l-s,0>f-h?f:f-h);else{if(!u)return!1;r[t]=Math.max(a,n+h+i>e?n:n+h)}},k=function(t,e,i,s,n){var a;return n<o||n>e-o?a=!1:r[t]=n<i/2?1:n>e-s/2?e-s-2:n-i/2,a},M=function(t){var e=y;y=x,x=e,s=t},S=function(){!1!==w.apply(0,y)?!1!==k.apply(0,x)||s||(M(!0),S()):s?r.x=r.y=0:(M(!0),S())};return(n.inverted||1<this.len)&&M(),S(),r},defaultFormatter:function(t){var e=this.points||o(this),i=[t.tooltipFooterHeaderFormatter(e[0])];return i=i.concat(t.bodyFormatter(e)),i.push(t.tooltipFooterHeaderFormatter(e[0],!0)),i},refresh:function(e,i){var s=this.chart,n=this.options,a=e,r={},h=[],l=n.formatter||this.defaultFormatter;r=this.shared;var d=s.styledMode;if(n.enabled){t.clearTimeout(this.hideTimer),this.followPointer=o(a)[0].series.tooltipOptions.followPointer;var p=this.getAnchor(a,i);i=p[0];var u=p[1];!r||a.series&&a.series.noSharedTooltip?r=a.getLabelConfig():(s.pointer.applyInactiveState(a),a.forEach(function(t){t.setState("hover"),h.push(t.getLabelConfig())}),r={x:a[0].category,y:a[0].y},r.points=h,a=a[0]),this.len=h.length,l=l.call(r,this),r=a.series,this.distance=c(r.tooltipOptions.distance,16),!1===l?this.hide():(s=this.getLabel(),this.isHidden&&s.attr({opacity:1}).show(),this.split?this.renderSplit(l,o(e)):(n.style.width&&!d||s.css({width:this.chart.spacingBox.width}),s.attr({text:l&&l.join?l.join(""):l}),s.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+c(a.colorIndex,r.colorIndex)),d||s.attr({stroke:n.borderColor||a.color||r.color||"#666666"}),this.updatePosition({plotX:i,plotY:u,negative:a.negative,ttBelow:a.ttBelow,h:p[2]||0})),this.isHidden=!1),t.fireEvent(this,"refresh")}},renderSplit:function(e,i){var s,o=this,a=[],r=this.chart,h=r.renderer,l=!0,d=this.options,p=0,u=this.getLabel(),f=r.plotTop;n(e)&&(e=[!1,e]),e.slice(0,i.length+1).forEach(function(t,e){if(!1!==t&&""!==t){e=i[e-1]||{isHeader:!0,plotX:i[0].plotX,plotY:r.plotHeight};var n=e.series||o,g=n.tt,m=e.series||{},v="highcharts-color-"+c(e.colorIndex,m.colorIndex,"none");g||(g={padding:d.padding,r:d.borderRadius},r.styledMode||(g.fill=d.backgroundColor,g["stroke-width"]=d.borderWidth),n.tt=g=h.label(null,null,null,(e.isHeader?d.headerShape:d.shape)||"callout",null,null,d.useHTML).addClass("highcharts-tooltip-box "+v).attr(g).add(u)),g.isActive=!0,g.attr({text:t}),r.styledMode||g.css(d.style).shadow(d.shadow).attr({stroke:d.borderColor||e.color||m.color||"#333333"}),t=g.getBBox(),v=t.width+g.strokeWidth(),e.isHeader?(p=t.height,r.xAxis[0].opposite&&(s=!0,f-=p),t=Math.max(0,Math.min(e.plotX+r.plotLeft-v/2,r.chartWidth+(r.scrollablePixelsX?r.scrollablePixelsX-r.marginRight:0)-v))):t=e.plotX+r.plotLeft-c(d.distance,16)-v,0>t&&(l=!1),e.isHeader?m=s?-p:r.plotHeight+p:(m=m.yAxis,m=m.pos-f+Math.max(0,Math.min(e.plotY||0,m.len))),a.push({target:m,rank:e.isHeader?1:0,size:n.tt.getBBox().height+1,point:e,x:t,tt:g})}}),this.cleanSplit(),d.positioner&&a.forEach(function(t){var e=d.positioner.call(o,t.tt.getBBox().width,t.size,t.point);t.x=e.x,t.align=0,t.target=e.y,t.rank=c(e.rank,t.rank)}),t.distribute(a,r.plotHeight+p),a.forEach(function(t){var e=t.point,i=e.series,s=i&&i.yAxis;t.tt.attr({visibility:void 0===t.pos?"hidden":"inherit",x:l||e.isHeader||d.positioner?t.x:e.plotX+r.plotLeft+o.distance,y:t.pos+f,anchorX:e.isHeader?e.plotX+r.plotLeft:e.plotX+i.xAxis.pos,anchorY:e.isHeader?r.plotTop+r.plotHeight/2:s.pos+Math.max(0,Math.min(e.plotY,s.len))})})},updatePosition:function(e){var i=this.chart,s=i.pointer,n=this.getLabel(),o=e.plotX+i.plotLeft,a=e.plotY+i.plotTop;if(s.chartPosition||(s.chartPosition=t.offset(i.container)),e=(this.options.positioner||this.getPosition).call(this,n.width,n.height,e),this.outside){var r=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(n.width+r,n.height+r,!1),(i=i.containerScaling)&&(t.css(this.container,{transform:"scale("+i.scaleX+", "+i.scaleY+")"}),o*=i.scaleX,a*=i.scaleY),o+=s.chartPosition.left-e.x,a+=s.chartPosition.top-e.y}this.move(Math.round(e.x),Math.round(e.y||0),o,a)},getDateFormat:function(t,e,i,s){var n=this.chart.time,o=n.dateFormat("%m-%d %H:%M:%S.%L",e),a={millisecond:15,second:12,minute:9,hour:6,day:3},r="millisecond";for(h in p){if(t===p.week&&+n.dateFormat("%w",e)===i&&"00:00:00.000"===o.substr(6)){var h="week";break}if(p[h]>t){h=r;break}if(a[h]&&o.substr(a[h])!=="01-01 00:00:00.000".substr(a[h]))break;"week"!==h&&(r=h)}if(h)var l=n.resolveDTLFormat(s[h]).main;return l},getXDateFormat:function(t,e,i){e=e.dateTimeLabelFormats;var s=i&&i.closestPointRange;return(s?this.getDateFormat(s,t.x,i.options.startOfWeek,e):e.day)||e.year},tooltipFooterHeaderFormatter:function(e,i){var n=i?"footer":"header",o=e.series,a=o.tooltipOptions,r=a.xDateFormat,l=o.xAxis,c=l&&"datetime"===l.options.type&&s(e.key),d=a[n+"Format"];return i={isFooter:i,labelConfig:e},t.fireEvent(this,"headerFormatter",i,function(t){c&&!r&&(r=this.getXDateFormat(e,a,l)),c&&r&&(e.point&&e.point.tooltipDateKeys||["key"]).forEach(function(t){d=d.replace("{point."+t+"}","{point."+t+":"+r+"}")}),o.chart.styledMode&&(d=this.styledModeFormat(d)),t.text=h(d,{point:e,series:o},this.chart.time)}),i.text},bodyFormatter:function(t){return t.map(function(t){var e=t.series.tooltipOptions;return(e[(t.point.formatPrefix||"point")+"Formatter"]||t.point.tooltipFormatter).call(t.point,e[(t.point.formatPrefix||"point")+"Format"]||"")})},styledModeFormat:function(t){return t.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')}}}),e(i,"parts/Pointer.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.attr,s=e.defined,n=e.isNumber,o=e.isObject,a=e.objectEach,r=e.splat,h=t.addEvent,l=t.charts,c=t.color,d=t.css,p=t.extend,u=t.find,f=t.fireEvent,g=t.offset,m=t.pick,v=t.Tooltip;t.Pointer=function(t,e){this.init(t,e)},t.Pointer.prototype={init:function(t,e){this.options=e,this.chart=t,this.runChartClick=e.chart.events&&!!e.chart.events.click,this.pinchDown=[],this.lastValidTouch={},v&&(t.tooltip=new v(t,e.tooltip),this.followTouchMove=m(e.tooltip.followTouchMove,!0)),this.setDOMEvents()},zoomOption:function(t){var e=this.chart,i=e.options.chart,s=i.zoomType||"";e=e.inverted,/touch/.test(t.type)&&(s=m(i.pinchType,s)),this.zoomX=t=/x/.test(s),this.zoomY=s=/y/.test(s),this.zoomHor=t&&!e||s&&e,this.zoomVert=s&&!e||t&&e,this.hasZoom=t||s},normalize:function(t,e){var i=t.touches?t.touches.length?t.touches.item(0):t.changedTouches[0]:t;e||(this.chartPosition=e=g(this.chart.container));var s=i.pageX-e.left;return e=i.pageY-e.top,(i=this.chart.containerScaling)&&(s/=i.scaleX,e/=i.scaleY),p(t,{chartX:Math.round(s),chartY:Math.round(e)})},getCoordinates:function(t){var e={xAxis:[],yAxis:[]};return this.chart.axes.forEach(function(i){e[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(t[i.horiz?"chartX":"chartY"])})}),e},findNearestKDPoint:function(t,e,i){var s;return t.forEach(function(t){var n=!(t.noSharedTooltip&&e)&&0>t.options.findNearestPointBy.indexOf("y");if(t=t.searchPoint(i,n),(n=o(t,!0))&&!(n=!o(s,!0))){n=s.distX-t.distX;var a=s.dist-t.dist,r=(t.series.group&&t.series.group.zIndex)-(s.series.group&&s.series.group.zIndex);n=0<(0!==n&&e?n:0!==a?a:0!==r?r:s.series.index>t.series.index?-1:1)}n&&(s=t)}),s},getPointFromEvent:function(t){t=t.target;for(var e;t&&!e;)e=t.point,t=t.parentNode;return e},getChartCoordinatesFromPoint:function(t,e){var i=t.series,s=i.xAxis;i=i.yAxis;var n=m(t.clientX,t.plotX),o=t.shapeArgs;return s&&i?e?{chartX:s.len+s.pos-n,chartY:i.len+i.pos-t.plotY}:{chartX:n+s.pos,chartY:t.plotY+i.pos}:o&&o.x&&o.y?{chartX:o.x,chartY:o.y}:void 0},getHoverData:function(t,e,i,s,n,a){var r,h=[];s=!(!s||!t);var l=e&&!e.stickyTracking?[e]:i.filter(function(t){return t.visible&&!(!n&&t.directTouch)&&m(t.options.enableMouseTracking,!0)&&t.stickyTracking});return e=(r=s||!a?t:this.findNearestKDPoint(l,n,a))&&r.series,r&&(n&&!e.noSharedTooltip?(l=i.filter(function(t){return t.visible&&!(!n&&t.directTouch)&&m(t.options.enableMouseTracking,!0)&&!t.noSharedTooltip}),l.forEach(function(t){var e=u(t.points,function(t){return t.x===r.x&&!t.isNull});o(e)&&(t.chart.isBoosting&&(e=t.getPoint(e)),h.push(e))})):h.push(r)),{hoverPoint:r,hoverSeries:e,hoverPoints:h}},runPointActions:function(e,i){var s=this.chart,n=s.tooltip&&s.tooltip.options.enabled?s.tooltip:void 0,o=!!n&&n.shared,a=i||s.hoverPoint,r=a&&a.series||s.hoverSeries;r=this.getHoverData(a,r,s.series,(!e||"touchmove"!==e.type)&&(!!i||r&&r.directTouch&&this.isDirectTouch),o,e),a=r.hoverPoint;var c=r.hoverPoints;if(i=(r=r.hoverSeries)&&r.tooltipOptions.followPointer,o=o&&r&&!r.noSharedTooltip,a&&(a!==s.hoverPoint||n&&n.isHidden)){if((s.hoverPoints||[]).forEach(function(t){-1===c.indexOf(t)&&t.setState()}),s.hoverSeries!==r&&r.onMouseOver(),this.applyInactiveState(c),(c||[]).forEach(function(t){t.setState("hover")}),s.hoverPoint&&s.hoverPoint.firePointEvent("mouseOut"),!a.series)return;a.firePointEvent("mouseOver"),s.hoverPoints=c,s.hoverPoint=a,n&&n.refresh(o?c:a,e)}else i&&n&&!n.isHidden&&(a=n.getAnchor([{}],e),n.updatePosition({plotX:a[0],plotY:a[1]}));this.unDocMouseMove||(this.unDocMouseMove=h(s.container.ownerDocument,"mousemove",function(e){var i=l[t.hoverChartIndex];i&&i.pointer.onDocumentMouseMove(e)})),s.axes.forEach(function(i){var s=m(i.crosshair.snap,!0),n=s?t.find(c,function(t){return t.series[i.coll]===i}):void 0;n||!s?i.drawCrosshair(e,n):i.hideCrosshair()})},applyInactiveState:function(t){var e,i=[];(t||[]).forEach(function(t){e=t.series,i.push(e),e.linkedParent&&i.push(e.linkedParent),e.linkedSeries&&(i=i.concat(e.linkedSeries)),e.navigatorSeries&&i.push(e.navigatorSeries)}),this.chart.series.forEach(function(t){-1===i.indexOf(t)?t.setState("inactive",!0):t.options.inactiveOtherPoints&&t.setAllPointsToState("inactive")})},reset:function(t,e){var i=this.chart,s=i.hoverSeries,n=i.hoverPoint,o=i.hoverPoints,a=i.tooltip,h=a&&a.shared?o:n;t&&h&&r(h).forEach(function(e){e.series.isCartesian&&void 0===e.plotX&&(t=!1)}),t?a&&h&&r(h).length&&(a.refresh(h),a.shared&&o?o.forEach(function(t){t.setState(t.state,!0),t.series.isCartesian&&(t.series.xAxis.crosshair&&t.series.xAxis.drawCrosshair(null,t),t.series.yAxis.crosshair&&t.series.yAxis.drawCrosshair(null,t))}):n&&(n.setState(n.state,!0),i.axes.forEach(function(t){t.crosshair&&t.drawCrosshair(null,n)}))):(n&&n.onMouseOut(),o&&o.forEach(function(t){t.setState()}),s&&s.onMouseOut(),a&&a.hide(e),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),i.axes.forEach(function(t){t.hideCrosshair()}),this.hoverX=i.hoverPoints=i.hoverPoint=null)},scaleGroups:function(t,e){var i,s=this.chart;s.series.forEach(function(n){i=t||n.getPlotBox(),n.xAxis&&n.xAxis.zoomEnabled&&n.group&&(n.group.attr(i),n.markerGroup&&(n.markerGroup.attr(i),n.markerGroup.clip(e?s.clipRect:null)),n.dataLabelsGroup&&n.dataLabelsGroup.attr(i))}),s.clipRect.attr(e||s.clipBox)},dragStart:function(t){var e=this.chart;e.mouseIsDown=t.type,e.cancelClick=!1,e.mouseDownX=this.mouseDownX=t.chartX,e.mouseDownY=this.mouseDownY=t.chartY},drag:function(t){var e=this.chart,i=e.options.chart,s=t.chartX,n=t.chartY,o=this.zoomHor,a=this.zoomVert,r=e.plotLeft,h=e.plotTop,l=e.plotWidth,d=e.plotHeight,p=this.selectionMarker,u=this.mouseDownX,f=this.mouseDownY,g=i.panKey&&t[i.panKey+"Key"];if((!p||!p.touch)&&(s<r?s=r:s>r+l&&(s=r+l),n<h?n=h:n>h+d&&(n=h+d),this.hasDragged=Math.sqrt(Math.pow(u-s,2)+Math.pow(f-n,2)),10<this.hasDragged)){var m=e.isInsidePlot(u-r,f-h);e.hasCartesianSeries&&(this.zoomX||this.zoomY)&&m&&!g&&!p&&(this.selectionMarker=p=e.renderer.rect(r,h,o?1:l,a?1:d,0).attr({class:"highcharts-selection-marker",zIndex:7}).add(),e.styledMode||p.attr({fill:i.selectionMarkerFill||c("#335cad").setOpacity(.25).get()})),p&&o&&(s-=u,p.attr({width:Math.abs(s),x:(0<s?0:s)+u})),p&&a&&(s=n-f,p.attr({height:Math.abs(s),y:(0<s?0:s)+f})),m&&!p&&i.panning&&e.pan(t,i.panning)}},drop:function(t){var e=this,i=this.chart,o=this.hasPinched;if(this.selectionMarker){var a,r={originalEvent:t,xAxis:[],yAxis:[]},h=this.selectionMarker,l=h.attr?h.attr("x"):h.x,c=h.attr?h.attr("y"):h.y,u=h.attr?h.attr("width"):h.width,g=h.attr?h.attr("height"):h.height;(this.hasDragged||o)&&(i.axes.forEach(function(i){if(i.zoomEnabled&&s(i.min)&&(o||e[{xAxis:"zoomX",yAxis:"zoomY"}[i.coll]])){var n=i.horiz,h="touchend"===t.type?i.minPixelPadding:0,d=i.toValue((n?l:c)+h);n=i.toValue((n?l+u:c+g)-h),r[i.coll].push({axis:i,min:Math.min(d,n),max:Math.max(d,n)}),a=!0}}),a&&f(i,"selection",r,function(t){i.zoom(p(t,o?{animation:!1}:null))})),n(i.index)&&(this.selectionMarker=this.selectionMarker.destroy()),o&&this.scaleGroups()}i&&n(i.index)&&(d(i.container,{cursor:i._cursor}),i.cancelClick=10<this.hasDragged,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(t){t=this.normalize(t),2!==t.button&&(this.zoomOption(t),t.preventDefault&&t.preventDefault(),this.dragStart(t))},onDocumentMouseUp:function(e){l[t.hoverChartIndex]&&l[t.hoverChartIndex].pointer.drop(e)},onDocumentMouseMove:function(t){var e=this.chart,i=this.chartPosition;t=this.normalize(t,i),!i||this.inClass(t.target,"highcharts-tracker")||e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)||this.reset()},onContainerMouseLeave:function(e){var i=l[t.hoverChartIndex];i&&(e.relatedTarget||e.toElement)&&(i.pointer.reset(),i.pointer.chartPosition=null)},onContainerMouseMove:function(e){var i=this.chart;s(t.hoverChartIndex)&&l[t.hoverChartIndex]&&l[t.hoverChartIndex].mouseIsDown||(t.hoverChartIndex=i.index),e=this.normalize(e),e.preventDefault||(e.returnValue=!1),"mousedown"===i.mouseIsDown&&this.drag(e),!this.inClass(e.target,"highcharts-tracker")&&!i.isInsidePlot(e.chartX-i.plotLeft,e.chartY-i.plotTop)||i.openMenu||this.runPointActions(e)},inClass:function(t,e){for(var s;t;){if(s=i(t,"class")){if(-1!==s.indexOf(e))return!0;if(-1!==s.indexOf("highcharts-container"))return!1}t=t.parentNode}},onTrackerMouseOut:function(t){var e=this.chart.hoverSeries;t=t.relatedTarget||t.toElement,this.isDirectTouch=!1,!e||!t||e.stickyTracking||this.inClass(t,"highcharts-tooltip")||this.inClass(t,"highcharts-series-"+e.index)&&this.inClass(t,"highcharts-tracker")||e.onMouseOut()},onContainerClick:function(t){var e=this.chart,i=e.hoverPoint,s=e.plotLeft,n=e.plotTop;t=this.normalize(t),e.cancelClick||(i&&this.inClass(t.target,"highcharts-tracker")?(f(i.series,"click",p(t,{point:i})),e.hoverPoint&&i.firePointEvent("click",t)):(p(t,this.getCoordinates(t)),e.isInsidePlot(t.chartX-s,t.chartY-n)&&f(e,"click",t)))},setDOMEvents:function(){var e=this,i=e.chart.container,s=i.ownerDocument;i.onmousedown=function(t){e.onContainerMouseDown(t)},i.onmousemove=function(t){e.onContainerMouseMove(t)},i.onclick=function(t){e.onContainerClick(t)},this.unbindContainerMouseLeave=h(i,"mouseleave",e.onContainerMouseLeave),t.unbindDocumentMouseUp||(t.unbindDocumentMouseUp=h(s,"mouseup",e.onDocumentMouseUp)),t.hasTouch&&(h(i,"touchstart",function(t){e.onContainerTouchStart(t)}),h(i,"touchmove",function(t){e.onContainerTouchMove(t)}),t.unbindDocumentTouchEnd||(t.unbindDocumentTouchEnd=h(s,"touchend",e.onDocumentTouchEnd)))},destroy:function(){var e=this;e.unDocMouseMove&&e.unDocMouseMove(),this.unbindContainerMouseLeave(),t.chartCount||(t.unbindDocumentMouseUp&&(t.unbindDocumentMouseUp=t.unbindDocumentMouseUp()),t.unbindDocumentTouchEnd&&(t.unbindDocumentTouchEnd=t.unbindDocumentTouchEnd())),clearInterval(e.tooltipTimeout),a(e,function(t,i){e[i]=null})}}}),e(i,"parts/TouchPointer.js",[i["parts/Globals.js"]],function(t){var e=t.charts,i=t.extend,s=t.noop,n=t.pick;i(t.Pointer.prototype,{pinchTranslate:function(t,e,i,s,n,o){this.zoomHor&&this.pinchTranslateDirection(!0,t,e,i,s,n,o),this.zoomVert&&this.pinchTranslateDirection(!1,t,e,i,s,n,o)},pinchTranslateDirection:function(t,e,i,s,n,o,a,r){var h,l,c=this.chart,d=t?"x":"y",p=t?"X":"Y",u="chart"+p,f=t?"width":"height",g=c["plot"+(t?"Left":"Top")],m=r||1,v=c.inverted,y=c.bounds[t?"h":"v"],x=1===e.length,b=e[0][u],w=i[0][u],k=!x&&e[1][u],M=!x&&i[1][u];if(i=function(){!x&&20<Math.abs(b-k)&&(m=r||Math.abs(w-M)/Math.abs(b-k)),l=(g-w)/m+b,h=c["plot"+(t?"Width":"Height")]/m},i(),(e=l)<y.min){e=y.min;var S=!0}else e+h>y.max&&(e=y.max-h,S=!0);S?(w-=.8*(w-a[d][0]),x||(M-=.8*(M-a[d][1])),i()):a[d]=[w,M],v||(o[d]=l-g,o[f]=h),o=v?1/m:m,n[f]=h,n[d]=e,s[v?t?"scaleY":"scaleX":"scale"+p]=m,s["translate"+p]=o*g+(w-o*b)},pinch:function(t){var e=this,o=e.chart,a=e.pinchDown,r=t.touches,h=r.length,l=e.lastValidTouch,c=e.hasZoom,d=e.selectionMarker,p={},u=1===h&&(e.inClass(t.target,"highcharts-tracker")&&o.runTrackerClick||e.runChartClick),f={};1<h&&(e.initiated=!0),c&&e.initiated&&!u&&t.preventDefault(),[].map.call(r,function(t){return e.normalize(t)}),"touchstart"===t.type?([].forEach.call(r,function(t,e){a[e]={chartX:t.chartX,chartY:t.chartY}}),l.x=[a[0].chartX,a[1]&&a[1].chartX],l.y=[a[0].chartY,a[1]&&a[1].chartY],o.axes.forEach(function(t){if(t.zoomEnabled){var e=o.bounds[t.horiz?"h":"v"],i=t.minPixelPadding,s=t.toPixels(Math.min(n(t.options.min,t.dataMin),t.dataMin)),a=t.toPixels(Math.max(n(t.options.max,t.dataMax),t.dataMax)),r=Math.max(s,a);e.min=Math.min(t.pos,Math.min(s,a)-i),e.max=Math.max(t.pos+t.len,r+i)}}),e.res=!0):e.followTouchMove&&1===h?this.runPointActions(e.normalize(t)):a.length&&(d||(e.selectionMarker=d=i({destroy:s,touch:!0},o.plotBox)),e.pinchTranslate(a,r,p,d,f,l),e.hasPinched=c,e.scaleGroups(p,f),e.res&&(e.res=!1,this.reset(!1,0)))},touch:function(e,i){var s=this.chart;if(s.index!==t.hoverChartIndex&&this.onContainerMouseLeave({relatedTarget:!0}),t.hoverChartIndex=s.index,1===e.touches.length)if(e=this.normalize(e),s.isInsidePlot(e.chartX-s.plotLeft,e.chartY-s.plotTop)&&!s.openMenu){if(i&&this.runPointActions(e),"touchmove"===e.type){i=this.pinchDown;var o=!!i[0]&&4<=Math.sqrt(Math.pow(i[0].chartX-e.chartX,2)+Math.pow(i[0].chartY-e.chartY,2))}n(o,!0)&&this.pinch(e)}else i&&this.reset();else 2===e.touches.length&&this.pinch(e)},onContainerTouchStart:function(t){this.zoomOption(t),this.touch(t,!0)},onContainerTouchMove:function(t){this.touch(t)},onDocumentTouchEnd:function(i){e[t.hoverChartIndex]&&e[t.hoverChartIndex].pointer.drop(i)}})}),e(i,"parts/MSPointer.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.objectEach,s=t.addEvent,n=t.charts,o=t.css,a=t.doc;e=t.extend;var r=t.noop,h=t.Pointer,l=t.removeEvent,c=t.win,d=t.wrap;if(!t.hasTouch&&(c.PointerEvent||c.MSPointerEvent)){var p={},u=!!c.PointerEvent,f=function(){var t=[];return t.item=function(t){return this[t]},i(p,function(e){t.push({pageX:e.pageX,pageY:e.pageY,target:e.target})}),t},g=function(e,i,s,o){"touch"!==e.pointerType&&e.pointerType!==e.MSPOINTER_TYPE_TOUCH||!n[t.hoverChartIndex]||(o(e),o=n[t.hoverChartIndex].pointer,o[i]({type:s,target:e.currentTarget,preventDefault:r,touches:f()}))};e(h.prototype,{onContainerPointerDown:function(t){g(t,"onContainerTouchStart","touchstart",function(t){p[t.pointerId]={pageX:t.pageX,pageY:t.pageY,target:t.currentTarget}})},onContainerPointerMove:function(t){g(t,"onContainerTouchMove","touchmove",function(t){p[t.pointerId]={pageX:t.pageX,pageY:t.pageY},p[t.pointerId].target||(p[t.pointerId].target=t.currentTarget)})},onDocumentPointerUp:function(t){g(t,"onDocumentTouchEnd","touchend",function(t){delete p[t.pointerId]})},batchMSEvents:function(t){t(this.chart.container,u?"pointerdown":"MSPointerDown",this.onContainerPointerDown),t(this.chart.container,u?"pointermove":"MSPointerMove",this.onContainerPointerMove),t(a,u?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}}),d(h.prototype,"init",function(t,e,i){t.call(this,e,i),this.hasZoom&&o(e.container,{"-ms-touch-action":"none","touch-action":"none"})}),d(h.prototype,"setDOMEvents",function(t){t.apply(this),(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(s)}),d(h.prototype,"destroy",function(t){this.batchMSEvents(l),t.call(this)})}}),e(i,"parts/Legend.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isNumber,n=t.addEvent,o=t.css,a=t.discardElement,r=t.fireEvent;e=t.isFirefox;var h=t.marginNames,l=t.merge,c=t.pick,d=t.setAnimation,p=t.stableSort,u=t.win,f=t.wrap;t.Legend=function(t,e){this.init(t,e)},t.Legend.prototype={init:function(t,e){this.chart=t,this.setOptions(e),e.enabled&&(this.render(),n(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),
this.proximate?this.unchartrender=n(this.chart,"render",function(){this.legend.proximatePositions(),this.legend.positionItems()}):this.unchartrender&&this.unchartrender())},setOptions:function(t){var e=c(t.padding,8);this.options=t,this.chart.styledMode||(this.itemStyle=t.itemStyle,this.itemHiddenStyle=l(this.itemStyle,t.itemHiddenStyle)),this.itemMarginTop=t.itemMarginTop||0,this.padding=e,this.initialItemY=e-5,this.symbolWidth=c(t.symbolWidth,16),this.pages=[],this.proximate="proximate"===t.layout&&!this.chart.inverted},update:function(t,e){var i=this.chart;this.setOptions(l(!0,this.options,t)),this.destroy(),i.isDirtyLegend=i.isDirtyBox=!0,c(e,!0)&&i.redraw(),r(this,"afterUpdate")},colorizeItem:function(t,e){if(t.legendGroup[e?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){var i=this.options,s=t.legendItem,n=t.legendLine,o=t.legendSymbol,a=this.itemHiddenStyle.color;i=e?i.itemStyle.color:a;var h=e?t.color||a:a,l=t.options&&t.options.marker,c={fill:h};s&&s.css({fill:i,color:i}),n&&n.attr({stroke:h}),o&&(l&&o.isMarker&&(c=t.pointAttribs(),e||(c.stroke=c.fill=a)),o.attr(c))}r(this,"afterColorizeItem",{item:t,visible:e})},positionItems:function(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()},positionItem:function(t){var e=this.options,s=e.symbolPadding;e=!e.rtl;var n=t._legendItemPos,o=n[0];n=n[1];var a=t.checkbox;(t=t.legendGroup)&&t.element&&t[i(t.translateY)?"animate":"attr"]({translateX:e?o:this.legendWidth-o-2*s-4,translateY:n}),a&&(a.x=o,a.y=n)},destroyItem:function(t){var e=t.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(e){t[e]&&(t[e]=t[e].destroy())}),e&&a(t.checkbox)},destroy:function(){function t(t){this[t]&&(this[t]=this[t].destroy())}this.getAllItems().forEach(function(e){["legendItem","legendGroup"].forEach(t,e)}),"clipRect up down pager nav box title group".split(" ").forEach(t,this),this.display=null},positionCheckboxes:function(){var t=this.group&&this.group.alignAttr,e=this.clipHeight||this.legendHeight,i=this.titleHeight;if(t){var s=t.translateY;this.allItems.forEach(function(n){var a=n.checkbox;if(a){var r=s+i+a.y+(this.scrollOffset||0)+3;o(a,{left:t.translateX+n.checkboxOffset+a.x-20+"px",top:r+"px",display:this.proximate||r>s-6&&r<s+e-6?"":"none"})}},this)}},renderTitle:function(){var t=this.options,e=this.padding,i=t.title,s=0;i.text&&(this.title||(this.title=this.chart.renderer.label(i.text,e-3,e-4,null,null,null,t.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(i.style),this.title.add(this.group)),i.width||this.title.css({width:this.maxLegendWidth+"px"}),t=this.title.getBBox(),s=t.height,this.offsetWidth=t.width,this.contentGroup.attr({translateY:s})),this.titleHeight=s},setText:function(e){var i=this.options;e.legendItem.attr({text:i.labelFormat?t.format(i.labelFormat,e,this.chart.time):i.labelFormatter.call(e)})},renderItem:function(t){var e=this.chart,i=e.renderer,s=this.options,n=this.symbolWidth,o=s.symbolPadding,a=this.itemStyle,r=this.itemHiddenStyle,h="horizontal"===s.layout?c(s.itemDistance,20):0,d=!s.rtl,p=t.legendItem,u=!t.series,f=!u&&t.series.drawLegendSymbol?t.series:t,g=f.options;g=this.createCheckboxForItem&&g&&g.showCheckbox,h=n+o+h+(g?20:0);var m=s.useHTML,v=t.options.className;p||(t.legendGroup=i.g("legend-item").addClass("highcharts-"+f.type+"-series highcharts-color-"+t.colorIndex+(v?" "+v:"")+(u?" highcharts-series-"+t.index:"")).attr({zIndex:1}).add(this.scrollGroup),t.legendItem=p=i.text("",d?n+o:-o,this.baseline||0,m),e.styledMode||p.css(l(t.visible?a:r)),p.attr({align:d?"left":"right",zIndex:2}).add(t.legendGroup),this.baseline||(this.fontMetrics=i.fontMetrics(e.styledMode?12:a.fontSize,p),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,p.attr("y",this.baseline)),this.symbolHeight=s.symbolHeight||this.fontMetrics.f,f.drawLegendSymbol(this,t),this.setItemEvents&&this.setItemEvents(t,p,m)),g&&!t.checkbox&&this.createCheckboxForItem(t),this.colorizeItem(t,t.visible),!e.styledMode&&a.width||p.css({width:(s.itemWidth||this.widthOption||e.spacingBox.width)-h}),this.setText(t),e=p.getBBox(),t.itemWidth=t.checkboxOffset=s.itemWidth||t.legendItemWidth||e.width+h,this.maxItemWidth=Math.max(this.maxItemWidth,t.itemWidth),this.totalItemWidth+=t.itemWidth,this.itemHeight=t.itemHeight=Math.round(t.legendItemHeight||e.height||this.symbolHeight)},layoutItem:function(t){var e=this.options,i=this.padding,s="horizontal"===e.layout,n=t.itemHeight,o=e.itemMarginBottom||0,a=this.itemMarginTop,r=s?c(e.itemDistance,20):0,h=this.maxLegendWidth;e=e.alignColumns&&this.totalItemWidth>h?this.maxItemWidth:t.itemWidth,s&&this.itemX-i+e>h&&(this.itemX=i,this.lastLineHeight&&(this.itemY+=a+this.lastLineHeight+o),this.lastLineHeight=0),this.lastItemY=a+this.itemY+o,this.lastLineHeight=Math.max(n,this.lastLineHeight),t._legendItemPos=[this.itemX,this.itemY],s?this.itemX+=e:(this.itemY+=a+n+o,this.lastLineHeight=n),this.offsetWidth=this.widthOption||Math.max((s?this.itemX-i-(t.checkbox?0:r):e)+i,this.offsetWidth)},getAllItems:function(){var t=[];return this.chart.series.forEach(function(e){var s=e&&e.options;e&&c(s.showInLegend,!i(s.linkedTo)&&void 0,!0)&&(t=t.concat(e.legendItems||("point"===s.legendType?e.data:e)))}),r(this,"afterGetAllItems",{allItems:t}),t},getAlignment:function(){var t=this.options;return this.proximate?t.align.charAt(0)+"tv":t.floating?"":t.align.charAt(0)+t.verticalAlign.charAt(0)+t.layout.charAt(0)},adjustMargins:function(t,e){var s=this.chart,n=this.options,o=this.getAlignment();o&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(a,r){a.test(o)&&!i(t[r])&&(s[h[r]]=Math.max(s[h[r]],s.legend[(r+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][r]*n[r%2?"x":"y"]+c(n.margin,12)+e[r]+(s.titleOffset[r]||0)))})},proximatePositions:function(){var e=this.chart,i=[],n="left"===this.options.align;this.allItems.forEach(function(o){var a=n;if(o.yAxis&&o.points){o.xAxis.options.reversed&&(a=!a);var r=t.find(a?o.points:o.points.slice(0).reverse(),function(t){return s(t.plotY)});a=o.legendGroup.getBBox().height;var h=o.yAxis.top-e.plotTop;o.visible?(r=r?r.plotY:o.yAxis.height,r+=h-.3*a):r=h+o.yAxis.height,i.push({target:r,size:a,item:o})}},this),t.distribute(i,e.plotHeight),i.forEach(function(t){t.item._legendItemPos[1]=e.plotTop-e.spacing[0]+t.pos})},render:function(){var e,i=this.chart,s=i.renderer,n=this.group,o=this.box,a=this.options,h=this.padding;this.itemX=h,this.itemY=this.initialItemY,this.lastItemY=this.offsetWidth=0,this.widthOption=t.relativeLength(a.width,i.spacingBox.width-h);var c=i.spacingBox.width-2*h-a.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(c/=2),this.maxLegendWidth=this.widthOption||c,n||(this.group=n=s.g("legend").attr({zIndex:7}).add(),this.contentGroup=s.g().attr({zIndex:1}).add(n),this.scrollGroup=s.g().add(this.contentGroup)),this.renderTitle(),c=this.getAllItems(),p(c,function(t,e){return(t.options&&t.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)}),a.reversed&&c.reverse(),this.allItems=c,this.display=e=!!c.length,this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0,c.forEach(this.renderItem,this),c.forEach(this.layoutItem,this),c=(this.widthOption||this.offsetWidth)+h;var d=this.lastItemY+this.lastLineHeight+this.titleHeight;d=this.handleOverflow(d),d+=h,o||(this.box=o=s.rect().addClass("highcharts-legend-box").attr({r:a.borderRadius}).add(n),o.isNew=!0),i.styledMode||o.attr({stroke:a.borderColor,"stroke-width":a.borderWidth||0,fill:a.backgroundColor||"none"}).shadow(a.shadow),0<c&&0<d&&(o[o.isNew?"attr":"animate"](o.crisp.call({},{x:0,y:0,width:c,height:d},o.strokeWidth())),o.isNew=!1),o[e?"show":"hide"](),i.styledMode&&"none"===n.getStyle("display")&&(c=d=0),this.legendWidth=c,this.legendHeight=d,e&&(s=i.spacingBox,o=s.y,/(lth|ct|rth)/.test(this.getAlignment())&&0<i.titleOffset[0]?o+=i.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<i.titleOffset[2]&&(o-=i.titleOffset[2]),o!==s.y&&(s=l(s,{y:o})),n.align(l(a,{width:c,height:d,verticalAlign:this.proximate?"top":a.verticalAlign}),!0,s)),this.proximate||this.positionItems(),r(this,"afterRender")},handleOverflow:function(t){var e=this,i=this.chart,s=i.renderer,n=this.options,o=n.y,a=this.padding;o=i.spacingBox.height+("top"===n.verticalAlign?-o:o)-a;var r,h,l=n.maxHeight,d=this.clipRect,p=n.navigation,u=c(p.animation,!0),f=p.arrowSize||12,g=this.nav,m=this.pages,v=this.allItems,y=function(t){"number"==typeof t?d.attr({height:t}):d&&(e.clipRect=d.destroy(),e.contentGroup.clip()),e.contentGroup.div&&(e.contentGroup.div.style.clip=t?"rect("+a+"px,9999px,"+(a+t)+"px,0)":"auto")},x=function(t){return e[t]=s.circle(0,0,1.3*f).translate(f/2,f/2).add(g),i.styledMode||e[t].attr("fill","rgba(0,0,0,0.0001)"),e[t]};return"horizontal"!==n.layout||"middle"===n.verticalAlign||n.floating||(o/=2),l&&(o=Math.min(o,l)),m.length=0,t>o&&!1!==p.enabled?(this.clipHeight=r=Math.max(o-20-this.titleHeight-a,0),this.currentPage=c(this.currentPage,1),this.fullHeight=t,v.forEach(function(t,e){var i=t._legendItemPos[1],s=Math.round(t.legendItem.getBBox().height),n=m.length;(!n||i-m[n-1]>r&&(h||i)!==m[n-1])&&(m.push(h||i),n++),t.pageIx=n-1,h&&(v[e-1].pageIx=n-1),e===v.length-1&&i+s-m[n-1]>r&&i!==h&&(m.push(i),t.pageIx=n),i!==h&&(h=i)}),d||(d=e.clipRect=s.clipRect(0,a,9999,0),e.contentGroup.clip(d)),y(r),g||(this.nav=g=s.g().attr({zIndex:1}).add(this.group),this.up=s.symbol("triangle",0,0,f,f).add(g),x("upTracker").on("click",function(){e.scroll(-1,u)}),this.pager=s.text("",15,10).addClass("highcharts-legend-navigation"),i.styledMode||this.pager.css(p.style),this.pager.add(g),this.down=s.symbol("triangle-down",0,0,f,f).add(g),x("downTracker").on("click",function(){e.scroll(1,u)})),e.scroll(0),t=o):g&&(y(),this.nav=g.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),t},scroll:function(t,e){var i=this.pages,s=i.length,n=this.currentPage+t;t=this.clipHeight;var o=this.options.navigation,a=this.pager,r=this.padding;n>s&&(n=s),0<n&&(void 0!==e&&d(e,this.chart),this.nav.attr({translateX:r,translateY:t+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(t){t.attr({class:1===n?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),a.attr({text:n+"/"+s}),[this.down,this.downTracker].forEach(function(t){t.attr({x:18+this.pager.getBBox().width,class:n===s?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),this.chart.styledMode||(this.up.attr({fill:1===n?o.inactiveColor:o.activeColor}),this.upTracker.css({cursor:1===n?"default":"pointer"}),this.down.attr({fill:n===s?o.inactiveColor:o.activeColor}),this.downTracker.css({cursor:n===s?"default":"pointer"})),this.scrollOffset=-i[n-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=n,this.positionCheckboxes())}},t.LegendSymbolMixin={drawRectangle:function(t,e){var i=t.symbolHeight,s=t.options.squareSymbol;e.legendSymbol=this.chart.renderer.rect(s?(t.symbolWidth-i)/2:0,t.baseline-i+1,s?i:t.symbolWidth,i,c(t.options.symbolRadius,i/2)).addClass("highcharts-point").attr({zIndex:3}).add(e.legendGroup)},drawLineMarker:function(t){var e=this.options,i=e.marker,s=t.symbolWidth,n=t.symbolHeight,o=n/2,a=this.chart.renderer,r=this.legendGroup;t=t.baseline-Math.round(.3*t.fontMetrics.b);var h={};this.chart.styledMode||(h={"stroke-width":e.lineWidth||0},e.dashStyle&&(h.dashstyle=e.dashStyle)),this.legendLine=a.path(["M",0,t,"L",s,t]).addClass("highcharts-graph").attr(h).add(r),i&&!1!==i.enabled&&s&&(e=Math.min(c(i.radius,o),o),0===this.symbol.indexOf("url")&&(i=l(i,{width:n,height:n}),e=0),this.legendSymbol=i=a.symbol(this.symbol,s/2-e,t-e,2*e,2*e,i).addClass("highcharts-point").add(r),i.isMarker=!0)}},(/Trident\/7\.0/.test(u.navigator&&u.navigator.userAgent)||e)&&f(t.Legend.prototype,"positionItem",function(t,e){var i=this,s=function(){e._legendItemPos&&t.call(i,e)};s(),i.bubbleLegend||setTimeout(s)})}),e(i,"parts/Chart.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.attr,s=e.defined,n=e.erase,o=e.isArray,a=e.isNumber,r=e.isObject,h=e.isString,l=e.objectEach,c=e.pInt,d=e.splat,p=t.addEvent,u=t.animate,f=t.animObject,g=t.doc,m=t.Axis,v=t.createElement,y=t.defaultOptions,x=t.discardElement,b=t.charts,w=t.css,k=t.extend,M=t.find,S=t.fireEvent,T=t.Legend,C=t.marginNames,A=t.merge,D=t.Pointer,E=t.pick,O=t.removeEvent,L=t.seriesTypes,I=t.syncTimeout,P=t.win,z=t.Chart=function(){this.getArgs.apply(this,arguments)};t.chart=function(t,e,i){return new z(t,e,i)},k(z.prototype,{callbacks:[],getArgs:function(){var t=[].slice.call(arguments);(h(t[0])||t[0].nodeName)&&(this.renderTo=t.shift()),this.init(t[0],t[1])},init:function(e,i){var s,n=e.series,o=e.plotOptions||{};S(this,"init",{args:arguments},function(){e.series=null,s=A(y,e),l(s.plotOptions,function(t,e){r(t)&&(t.tooltip=o[e]&&A(o[e].tooltip)||void 0)}),s.tooltip.userOptions=e.chart&&e.chart.forExport&&e.tooltip.userOptions||e.tooltip,s.series=e.series=n,this.userOptions=e;var a=s.chart,h=a.events;this.margin=[],this.spacing=[],this.bounds={h:{},v:{}},this.labelCollectors=[],this.callback=i,this.isResizing=0,this.options=s,this.axes=[],this.series=[],this.time=e.time&&Object.keys(e.time).length?new t.Time(e.time):t.time,this.styledMode=a.styledMode,this.hasCartesianSeries=a.showAxes;var c=this;c.index=b.length,b.push(c),t.chartCount++,h&&l(h,function(e,i){t.isFunction(e)&&p(c,i,e)}),c.xAxis=[],c.yAxis=[],c.pointCount=c.colorCounter=c.symbolCounter=0,S(c,"afterInit"),c.firstRender()})},initSeries:function(e){var i=this.options.chart;return(i=L[e.type||i.type||i.defaultSeriesType])||t.error(17,!0,this),i=new i,i.init(this,e),i},orderSeries:function(t){var e=this.series;for(t=t||0;t<e.length;t++)e[t]&&(e[t].index=t,e[t].name=e[t].getName())},isInsidePlot:function(t,e,i){var s=i?e:t;return t=i?t:e,0<=s&&s<=this.plotWidth&&0<=t&&t<=this.plotHeight},redraw:function(e){S(this,"beforeRedraw");var i=this.axes,s=this.series,n=this.pointer,o=this.legend,a=this.userOptions.legend,r=this.isDirtyLegend,h=this.hasCartesianSeries,l=this.isDirtyBox,c=this.renderer,d=c.isHidden(),p=[];for(this.setResponsive&&this.setResponsive(!1),t.setAnimation(e,this),d&&this.temporaryDisplay(),this.layOutTitles(),e=s.length;e--;){var u=s[e];if(u.options.stacking){var f=!0;if(u.isDirty){var g=!0;break}}}if(g)for(e=s.length;e--;)u=s[e],u.options.stacking&&(u.isDirty=!0);s.forEach(function(t){t.isDirty&&("point"===t.options.legendType?(t.updateTotals&&t.updateTotals(),r=!0):a&&(a.labelFormatter||a.labelFormat)&&(r=!0)),t.isDirtyData&&S(t,"updatedData")}),r&&o&&o.options.enabled&&(o.render(),this.isDirtyLegend=!1),f&&this.getStacks(),h&&i.forEach(function(t){t.updateNames(),t.setScale()}),this.getMargins(),h&&(i.forEach(function(t){t.isDirty&&(l=!0)}),i.forEach(function(t){var e=t.min+","+t.max;t.extKey!==e&&(t.extKey=e,p.push(function(){S(t,"afterSetExtremes",k(t.eventArgs,t.getExtremes())),delete t.eventArgs})),(l||f)&&t.redraw()})),l&&this.drawChartBox(),S(this,"predraw"),s.forEach(function(t){(l||t.isDirty)&&t.visible&&t.redraw(),t.isDirtyData=!1}),n&&n.reset(!0),c.draw(),S(this,"redraw"),S(this,"render"),d&&this.temporaryDisplay(!0),p.forEach(function(t){t.call()})},get:function(t){function e(e){return e.id===t||e.options&&e.options.id===t}var i,s=this.series,n=M(this.axes,e)||M(this.series,e);for(i=0;!n&&i<s.length;i++)n=M(s[i].points||[],e);return n},getAxes:function(){var t=this,e=this.options,i=e.xAxis=d(e.xAxis||{});e=e.yAxis=d(e.yAxis||{}),S(this,"getAxes"),i.forEach(function(t,e){t.index=e,t.isX=!0}),e.forEach(function(t,e){t.index=e}),i.concat(e).forEach(function(e){new m(t,e)}),S(this,"afterGetAxes")},getSelectedPoints:function(){var t=[];return this.series.forEach(function(e){t=t.concat((e[e.hasGroupedData?"points":"data"]||[]).filter(function(t){return E(t.selectedStaging,t.selected)}))}),t},getSelectedSeries:function(){return this.series.filter(function(t){return t.selected})},setTitle:function(t,e,i){this.applyDescription("title",t),this.applyDescription("subtitle",e),this.applyDescription("caption",void 0),this.layOutTitles(i)},applyDescription:function(t,e){var i=this,s="title"===t?{color:"#333333",fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"};s=this.options[t]=A(!this.styledMode&&{style:s},this.options[t],e);var n=this[t];n&&e&&(this[t]=n=n.destroy()),s&&!n&&(n=this.renderer.text(s.text,0,0,s.useHTML).attr({align:s.align,class:"highcharts-"+t,zIndex:s.zIndex||4}).add(),n.update=function(e){i[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[t]](e)},this.styledMode||n.css(s.style),this[t]=n)},layOutTitles:function(t){var e=[0,0,0],i=this.renderer,s=this.spacingBox;["title","subtitle","caption"].forEach(function(t){var n=this[t],o=this.options[t],a=o.verticalAlign||"top";if(t="title"===t?-3:"top"===a?e[0]+2:0,n){if(!this.styledMode)var r=o.style.fontSize;r=i.fontMetrics(r,n).b,n.css({width:(o.width||s.width+(o.widthAdjust||0))+"px"});var h=n.getBBox(o.useHTML).height;n.align(k({y:"bottom"===a?r:t+r,height:h},o),!1,"spacingBox"),o.floating||("top"===a?e[0]=Math.ceil(e[0]+h):"bottom"===a&&(e[2]=Math.ceil(e[2]+h)))}},this),e[0]&&"top"===(this.options.title.verticalAlign||"top")&&(e[0]+=this.options.title.margin),e[2]&&"bottom"===this.options.caption.verticalAlign&&(e[2]+=this.options.caption.margin);var n=!this.titleOffset||this.titleOffset.join(",")!==e.join(",");this.titleOffset=e,!this.isDirtyBox&&n&&(this.isDirtyBox=this.isDirtyLegend=n,this.hasRendered&&E(t,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var e=this.options.chart,i=e.width;e=e.height;var n=this.renderTo;s(i)||(this.containerWidth=t.getStyle(n,"width")),s(e)||(this.containerHeight=t.getStyle(n,"height")),this.chartWidth=Math.max(0,i||this.containerWidth||600),this.chartHeight=Math.max(0,t.relativeLength(e,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},temporaryDisplay:function(e){var i=this.renderTo;if(e)for(;i&&i.style;)i.hcOrigStyle&&(t.css(i,i.hcOrigStyle),delete i.hcOrigStyle),i.hcOrigDetached&&(g.body.removeChild(i),i.hcOrigDetached=!1),i=i.parentNode;else for(;i&&i.style&&(g.body.contains(i)||i.parentNode||(i.hcOrigDetached=!0,g.body.appendChild(i)),("none"===t.getStyle(i,"display",!1)||i.hcOricDetached)&&(i.hcOrigStyle={display:i.style.display,height:i.style.height,overflow:i.style.overflow},e={display:"block",overflow:"hidden"},i!==this.renderTo&&(e.height=0),t.css(i,e),i.offsetWidth||i.style.setProperty("display","block","important")),(i=i.parentNode)!==g.body););},setClassName:function(t){this.container.className="highcharts-container "+(t||"")},getContainer:function(){var e,s,n=this.options,o=n.chart,r=this.renderTo,l=t.uniqueKey();r||(this.renderTo=r=o.renderTo),h(r)&&(this.renderTo=r=g.getElementById(r)),r||t.error(13,!0,this);var d=c(i(r,"data-highcharts-chart"));a(d)&&b[d]&&b[d].hasRendered&&b[d].destroy(),i(r,"data-highcharts-chart",this.index),r.innerHTML="",o.skipClone||r.offsetWidth||this.temporaryDisplay(),this.getChartSize(),d=this.chartWidth;var p=this.chartHeight;if(w(r,{overflow:"hidden"}),this.styledMode||(e=k({position:"relative",overflow:"hidden",width:d+"px",height:p+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},o.style)),this.container=r=v("div",{id:l},e,r),this._cursor=r.style.cursor,this.renderer=new(t[o.renderer]||t.Renderer)(r,d,p,null,o.forExport,n.exporting&&n.exporting.allowHTML,this.styledMode),this.setClassName(o.className),this.styledMode)for(s in n.defs)this.renderer.definition(n.defs[s]);else this.renderer.setStyle(o.style);this.renderer.chartIndex=this.index,S(this,"afterGetContainer")},getMargins:function(t){var e=this.spacing,i=this.margin,n=this.titleOffset;this.resetMargins(),n[0]&&!s(i[0])&&(this.plotTop=Math.max(this.plotTop,n[0]+e[0])),n[2]&&!s(i[2])&&(this.marginBottom=Math.max(this.marginBottom,n[2]+e[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(i,e),S(this,"getMargins"),t||this.getAxisMargins()},getAxisMargins:function(){var t=this,e=t.axisOffset=[0,0,0,0],i=t.colorAxis,n=t.margin,o=function(t){t.forEach(function(t){t.visible&&t.getOffset()})};t.hasCartesianSeries?o(t.axes):i&&i.length&&o(i),C.forEach(function(i,o){s(n[o])||(t[i]+=e[o])}),t.setChartSize()},reflow:function(e){var i=this,n=i.options.chart,o=i.renderTo,a=s(n.width)&&s(n.height),r=n.width||t.getStyle(o,"width");n=n.height||t.getStyle(o,"height"),o=e?e.target:P,a||i.isPrinting||!r||!n||o!==P&&o!==g||(r===i.containerWidth&&n===i.containerHeight||(t.clearTimeout(i.reflowTimeout),i.reflowTimeout=I(function(){i.container&&i.setSize(void 0,void 0,!1)},e?100:0)),i.containerWidth=r,i.containerHeight=n)},setReflow:function(t){var e=this;!1===t||this.unbindReflow?!1===t&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=p(P,"resize",function(t){e.options&&e.reflow(t)}),p(this,"destroy",this.unbindReflow))},setSize:function(e,i,s){var n=this,o=n.renderer;if(n.isResizing+=1,t.setAnimation(s,n),n.oldChartHeight=n.chartHeight,n.oldChartWidth=n.chartWidth,void 0!==e&&(n.options.chart.width=e),void 0!==i&&(n.options.chart.height=i),n.getChartSize(),!n.styledMode){var a=o.globalAnimation;(a?u:w)(n.container,{width:n.chartWidth+"px",height:n.chartHeight+"px"},a)}n.setChartSize(!0),o.setSize(n.chartWidth,n.chartHeight,s),n.axes.forEach(function(t){t.isDirty=!0,t.setScale()}),n.isDirtyLegend=!0,n.isDirtyBox=!0,n.layOutTitles(),n.getMargins(),n.redraw(s),n.oldChartHeight=null,S(n,"resize"),I(function(){n&&S(n,"endResize",null,function(){--n.isResizing})},f(a).duration)},setChartSize:function(t){var e,i,s,n,o=this.inverted,a=this.renderer,r=this.chartWidth,h=this.chartHeight,l=this.options.chart,c=this.spacing,d=this.clipOffset;this.plotLeft=e=Math.round(this.plotLeft),this.plotTop=i=Math.round(this.plotTop),this.plotWidth=s=Math.max(0,Math.round(r-e-this.marginRight)),this.plotHeight=n=Math.max(0,Math.round(h-i-this.marginBottom)),this.plotSizeX=o?n:s,this.plotSizeY=o?s:n,this.plotBorderWidth=l.plotBorderWidth||0,this.spacingBox=a.spacingBox={x:c[3],y:c[0],width:r-c[3]-c[1],height:h-c[0]-c[2]},this.plotBox=a.plotBox={x:e,y:i,width:s,height:n},r=2*Math.floor(this.plotBorderWidth/2),o=Math.ceil(Math.max(r,d[3])/2),a=Math.ceil(Math.max(r,d[0])/2),this.clipBox={x:o,y:a,width:Math.floor(this.plotSizeX-Math.max(r,d[1])/2-o),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(r,d[2])/2-a))},t||this.axes.forEach(function(t){t.setAxisSize(),t.setAxisTranslation()}),S(this,"afterSetChartSize",{skipAxes:t})},resetMargins:function(){S(this,"resetMargins");var t=this,e=t.options.chart;["margin","spacing"].forEach(function(i){var s=e[i],n=r(s)?s:[s,s,s,s];["Top","Right","Bottom","Left"].forEach(function(s,o){t[i][o]=E(e[i+s],n[o])})}),C.forEach(function(e,i){t[e]=E(t.margin[i],t.spacing[i])}),t.axisOffset=[0,0,0,0],t.clipOffset=[0,0,0,0]},drawChartBox:function(){var t,e=this.options.chart,i=this.renderer,s=this.chartWidth,n=this.chartHeight,o=this.chartBackground,a=this.plotBackground,r=this.plotBorder,h=this.styledMode,l=this.plotBGImage,c=e.backgroundColor,d=e.plotBackgroundColor,p=e.plotBackgroundImage,u=this.plotLeft,f=this.plotTop,g=this.plotWidth,m=this.plotHeight,v=this.plotBox,y=this.clipRect,x=this.clipBox,b="animate";if(o||(this.chartBackground=o=i.rect().addClass("highcharts-background").add(),b="attr"),h)var w=t=o.strokeWidth();else w=e.borderWidth||0,t=w+(e.shadow?8:0),c={fill:c||"none"},(w||o["stroke-width"])&&(c.stroke=e.borderColor,c["stroke-width"]=w),o.attr(c).shadow(e.shadow);o[b]({x:t/2,y:t/2,width:s-t-w%2,height:n-t-w%2,r:e.borderRadius}),b="animate",a||(b="attr",this.plotBackground=a=i.rect().addClass("highcharts-plot-background").add()),a[b](v),h||(a.attr({fill:d||"none"}).shadow(e.plotShadow),p&&(l?l.animate(v):this.plotBGImage=i.image(p,u,f,g,m).add())),y?y.animate({width:x.width,height:x.height}):this.clipRect=i.clipRect(x),b="animate",r||(b="attr",this.plotBorder=r=i.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),h||r.attr({stroke:e.plotBorderColor,"stroke-width":e.plotBorderWidth||0,fill:"none"}),r[b](r.crisp({x:u,y:f,width:g,height:m},-r.strokeWidth())),this.isDirtyBox=!1,S(this,"afterDrawChartBox")},propFromSeries:function(){var t,e,i,s=this,n=s.options.chart,o=s.options.series;["inverted","angular","polar"].forEach(function(a){for(t=L[n.type||n.defaultSeriesType],i=n[a]||t&&t.prototype[a],e=o&&o.length;!i&&e--;)(t=L[o[e].type])&&t.prototype[a]&&(i=!0);s[a]=i})},linkSeries:function(){var t=this,e=t.series;e.forEach(function(t){t.linkedSeries.length=0}),e.forEach(function(e){var i=e.options.linkedTo;h(i)&&(i=":previous"===i?t.series[e.index-1]:t.get(i))&&i.linkedParent!==e&&(i.linkedSeries.push(e),e.linkedParent=i,e.visible=E(e.options.visible,i.options.visible,e.visible))}),S(this,"afterLinkSeries")},renderSeries:function(){this.series.forEach(function(t){t.translate(),t.render()})},renderLabels:function(){var t=this,e=t.options.labels;e.items&&e.items.forEach(function(i){var s=k(e.style,i.style),n=c(s.left)+t.plotLeft,o=c(s.top)+t.plotTop+12;delete s.left,delete s.top,t.renderer.text(i.html,n,o).attr({zIndex:2}).css(s).add()})},render:function(){var t=this.axes,e=this.colorAxis,i=this.renderer,s=this.options,n=0,o=function(t){t.forEach(function(t){t.visible&&t.render()})};this.setTitle(),this.legend=new T(this,s.legend),this.getStacks&&this.getStacks(),this.getMargins(!0),this.setChartSize(),s=this.plotWidth,t.some(function(t){if(t.horiz&&t.visible&&t.options.labels.enabled&&t.series.length)return n=21,!0});var a=this.plotHeight=Math.max(this.plotHeight-n,0);t.forEach(function(t){t.setScale()}),this.getAxisMargins();var r=1.1<s/this.plotWidth,h=1.05<a/this.plotHeight;(r||h)&&(t.forEach(function(t){(t.horiz&&r||!t.horiz&&h)&&t.setTickInterval(!0)}),this.getMargins()),this.drawChartBox(),this.hasCartesianSeries?o(t):e&&e.length&&o(e),this.seriesGroup||(this.seriesGroup=i.g("series-group").attr({zIndex:3}).add()),this.renderSeries(),this.renderLabels(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.updateContainerScaling(),this.hasRendered=!0},addCredits:function(t){var e=this;t=A(!0,this.options.credits,t),t.enabled&&!this.credits&&(this.credits=this.renderer.text(t.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){t.href&&(P.location.href=t.href)}).attr({align:t.position.align,zIndex:8}),e.styledMode||this.credits.css(t.style),this.credits.add().align(t.position),this.credits.update=function(t){e.credits=e.credits.destroy(),e.addCredits(t)})},updateContainerScaling:function(){var t=this.container;if(t.offsetWidth&&t.offsetHeight&&t.getBoundingClientRect){var e=t.getBoundingClientRect(),i=e.width/t.offsetWidth;t=e.height/t.offsetHeight,1!==i||1!==t?this.containerScaling={scaleX:i,scaleY:t}:delete this.containerScaling}},destroy:function(){var e,i=this,s=i.axes,o=i.series,a=i.container,r=a&&a.parentNode;for(S(i,"destroy"),i.renderer.forExport?n(b,i):b[i.index]=void 0,t.chartCount--,i.renderTo.removeAttribute("data-highcharts-chart"),O(i),e=s.length;e--;)s[e]=s[e].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),e=o.length;e--;)o[e]=o[e].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(t){var e=i[t];e&&e.destroy&&(i[t]=e.destroy())}),a&&(a.innerHTML="",O(a),r&&x(a)),l(i,function(t,e){delete i[e]})},firstRender:function(){var t=this,e=t.options;t.isReadyToRender&&!t.isReadyToRender()||(t.getContainer(),t.resetMargins(),t.setChartSize(),t.propFromSeries(),t.getAxes(),(o(e.series)?e.series:[]).forEach(function(e){t.initSeries(e)}),t.linkSeries(),S(t,"beforeRender"),D&&(t.pointer=new D(t,e)),t.render(),!t.renderer.imgCount&&t.onload&&t.onload(),t.temporaryDisplay(!0))},onload:function(){this.callbacks.concat([this.callback]).forEach(function(t){t&&void 0!==this.index&&t.apply(this,[this])},this),S(this,"load"),S(this,"render"),s(this.index)&&this.setReflow(this.options.chart.reflow),this.onload=null}})}),e(i,"parts/ScrollablePlotArea.js",[i["parts/Globals.js"]],function(t){var e=t.addEvent,i=t.Chart;e(i,"afterSetChartSize",function(e){var i=this.options.chart.scrollablePlotArea,s=i&&i.minWidth;if(i=i&&i.minHeight,!this.renderer.forExport){if(s){if(this.scrollablePixelsX=s=Math.max(0,s-this.chartWidth)){this.plotWidth+=s,this.inverted?(this.clipBox.height+=s,this.plotBox.height+=s):(this.clipBox.width+=s,this.plotBox.width+=s);var n={1:{name:"right",value:s}}}}else i&&(this.scrollablePixelsY=s=Math.max(0,i-this.chartHeight))&&(this.plotHeight+=s,this.inverted?(this.clipBox.width+=s,this.plotBox.width+=s):(this.clipBox.height+=s,this.plotBox.height+=s),n={2:{name:"bottom",value:s}});n&&!e.skipAxes&&this.axes.forEach(function(e){n[e.side]?e.getPlotLinePath=function(){var i=n[e.side].name,s=this[i];this[i]=s-n[e.side].value;var o=t.Axis.prototype.getPlotLinePath.apply(this,arguments);return this[i]=s,o}:(e.setAxisSize(),e.setAxisTranslation())})}}),e(i,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()}),i.prototype.setUpScrolling=function(){var e={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(e.overflowX="auto"),this.scrollablePixelsY&&(e.overflowY="auto"),this.scrollingContainer=t.createElement("div",{className:"highcharts-scrolling"},e,this.renderTo),this.innerContainer=t.createElement("div",{className:"highcharts-inner-container"},null,this.scrollingContainer),this.innerContainer.appendChild(this.container),this.setUpScrolling=null},i.prototype.moveFixedElements=function(){var t,e=this.container,i=this.fixedRenderer,s=".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-reset-zoom .highcharts-subtitle .highcharts-title .highcharts-legend-checkbox".split(" ");this.scrollablePixelsX&&!this.inverted?t=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?t=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?t=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(t=".highcharts-yaxis"),s.push(t,t+"-labels"),s.forEach(function(t){[].forEach.call(e.querySelectorAll(t),function(t){(t.namespaceURI===i.SVG_NS?i.box:i.box.parentNode).appendChild(t),t.style.pointerEvents="auto"})})},i.prototype.applyFixed=function(){var i,s=!this.fixedDiv,n=this.options.chart.scrollablePlotArea;s?(this.fixedDiv=t.createElement("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:2},null,!0),this.renderTo.insertBefore(this.fixedDiv,this.renderTo.firstChild),this.renderTo.style.overflow="visible",this.fixedRenderer=i=new t.Renderer(this.fixedDiv,this.chartWidth,this.chartHeight),this.scrollableMask=i.path().attr({fill:t.color(this.options.chart.backgroundColor||"#fff").setOpacity(t.pick(n.opacity,.85)).get(),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),this.moveFixedElements(),e(this,"afterShowResetZoom",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight),i=this.chartWidth+(this.scrollablePixelsX||0);var o=this.chartHeight+(this.scrollablePixelsY||0);t.stop(this.container),this.container.style.width=i+"px",this.container.style.height=o+"px",this.renderer.boxWrapper.attr({width:i,height:o,viewBox:[0,0,i,o].join(" ")}),this.chartBackground.attr({width:i,height:o}),this.scrollablePixelsY&&(this.scrollingContainer.style.height=this.chartHeight+"px"),s&&(n.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*n.scrollPositionX),n.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*n.scrollPositionY)),o=this.axisOffset,s=this.plotTop-o[0]-1,n=this.plotLeft-o[3]-1,i=this.plotTop+this.plotHeight+o[2]+1,o=this.plotLeft+this.plotWidth+o[1]+1
;var a=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),r=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);s=this.scrollablePixelsX?["M",0,s,"L",this.plotLeft-1,s,"L",this.plotLeft-1,i,"L",0,i,"Z","M",a,s,"L",this.chartWidth,s,"L",this.chartWidth,i,"L",a,i,"Z"]:this.scrollablePixelsY?["M",n,0,"L",n,this.plotTop-1,"L",o,this.plotTop-1,"L",o,0,"Z","M",n,r,"L",n,this.chartHeight,"L",o,this.chartHeight,"L",o,r,"Z"]:["M",0,0],"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:s})}}),e(i,"parts/Point.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i,s=e.defined,n=e.erase,o=e.isArray,a=e.isNumber,r=e.isObject,h=t.extend,l=t.fireEvent,c=t.format,d=t.pick,p=t.uniqueKey,u=t.removeEvent;t.Point=i=function(){},t.Point.prototype={init:function(t,e,i){return this.series=t,this.applyOptions(e,i),this.id=s(this.id)?this.id:p(),this.resolveColor(),t.chart.pointCount++,l(this,"afterInit"),this},resolveColor:function(){var t=this.series,e=t.chart.options.chart.colorCount,i=t.chart.styledMode;i||this.options.color||(this.color=t.color),t.options.colorByPoint?(i||(e=t.options.colors||t.chart.options.colors,this.color=this.color||e[t.colorCounter],e=e.length),i=t.colorCounter,++t.colorCounter===e&&(t.colorCounter=0)):i=t.colorIndex,this.colorIndex=d(this.colorIndex,i)},applyOptions:function(t,e){var s=this.series,n=s.options.pointValKey||s.pointValKey;return t=i.prototype.optionsToObject.call(this,t),h(this,t),this.options=this.options?h(this.options,t):t,t.group&&delete this.group,t.dataLabels&&delete this.dataLabels,n&&(this.y=this[n]),this.formatPrefix=(this.isNull=d(this.isValid&&!this.isValid(),null===this.x||!a(this.y)))?"null":"point",this.selected&&(this.state="select"),"name"in this&&void 0===e&&s.xAxis&&s.xAxis.hasNames&&(this.x=s.xAxis.nameToX(this)),void 0===this.x&&s&&(this.x=void 0===e?s.autoIncrement(this):e),this},setNestedProperty:function(t,e,i){return i.split(".").reduce(function(t,i,s,n){return t[i]=n.length-1===s?e:r(t[i],!0)?t[i]:{},t[i]},t),t},optionsToObject:function(e){var i={},s=this.series,n=s.options.keys,r=n||s.pointArrayMap||["y"],h=r.length,l=0,c=0;if(a(e)||null===e)i[r[0]]=e;else if(o(e))for(!n&&e.length>h&&(s=typeof e[0],"string"===s?i.name=e[0]:"number"===s&&(i.x=e[0]),l++);c<h;)n&&void 0===e[l]||(0<r[c].indexOf(".")?t.Point.prototype.setNestedProperty(i,e[l],r[c]):i[r[c]]=e[l]),l++,c++;else"object"==typeof e&&(i=e,e.dataLabels&&(s._hasPointLabels=!0),e.marker&&(s._hasPointMarkers=!0));return i},getClassName:function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(void 0!==this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},getZone:function(){var t=this.series,e=t.zones;t=t.zoneAxis||"y";var i,s=0;for(i=e[s];this[t]>=i.value;)i=e[++s];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=i&&i.color&&!this.options.color?i.color:this.nonZonedColor,i},destroy:function(){var t,e=this.series.chart,i=e.hoverPoints;e.pointCount--,i&&(this.setState(),n(i,this),i.length||(e.hoverPoints=null)),this===e.hoverPoint&&this.onMouseOut(),(this.graphic||this.dataLabel||this.dataLabels)&&(u(this),this.destroyElements()),this.legendItem&&e.legend.destroyItem(this);for(t in this)this[t]=null},destroyElements:function(t){var e,i=this,s=[];for(t=t||{graphic:1,dataLabel:1},t.graphic&&s.push("graphic","shadowGroup"),t.dataLabel&&s.push("dataLabel","dataLabelUpper","connector"),e=s.length;e--;){var n=s[e];i[n]&&(i[n]=i[n].destroy())}["dataLabel","connector"].forEach(function(e){var s=e+"s";t[e]&&i[s]&&(i[s].forEach(function(t){t.element&&t.destroy()}),delete i[s])})},getLabelConfig:function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},tooltipFormatter:function(t){var e=this.series,i=e.tooltipOptions,s=d(i.valueDecimals,""),n=i.valuePrefix||"",o=i.valueSuffix||"";return e.chart.styledMode&&(t=e.chart.tooltip.styledModeFormat(t)),(e.pointArrayMap||["y"]).forEach(function(e){e="{point."+e,(n||o)&&(t=t.replace(RegExp(e+"}","g"),n+e+"}"+o)),t=t.replace(RegExp(e+"}","g"),e+":,."+s+"f}")}),c(t,{point:this,series:this.series},e.chart.time)},firePointEvent:function(t,e,i){var s=this,n=this.series.options;(n.point.events[t]||s.options&&s.options.events&&s.options.events[t])&&this.importEvents(),"click"===t&&n.allowPointSelect&&(i=function(t){s.select&&s.select(null,t.ctrlKey||t.metaKey||t.shiftKey)}),l(this,t,e,i)},visible:!0}}),e(i,"parts/Series.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.erase,n=e.isArray,o=e.isNumber,a=e.isString,r=e.objectEach,h=e.splat,l=t.addEvent,c=t.animObject,d=t.arrayMax,p=t.arrayMin,u=t.correctFloat,f=t.defaultOptions,g=t.defaultPlotOptions,m=t.extend,v=t.fireEvent,y=t.merge,x=t.pick,b=t.removeEvent,w=t.SVGElement,k=t.syncTimeout,M=t.win;t.Series=t.seriesType("line",null,{lineWidth:2,allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},marker:{lineWidth:0,lineColor:"#ffffff",enabledThreshold:2,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){return null===this.y?"":t.numberFormat(this.y,-1)},padding:5,style:{fontSize:"11px",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"},{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,isCartesian:!0,parallelArrays:["x","y"],pointClass:t.Point,requireSorting:!0,sorted:!0,init:function(e,i){v(this,"init",{options:i});var s,n=this,o=e.series;this.eventOptions=this.eventOptions||{},n.chart=e,n.options=i=n.setOptions(i),n.linkedSeries=[],n.bindAxes(),m(n,{name:i.name,state:"",visible:!1!==i.visible,selected:!0===i.selected});var a=i.events;r(a,function(e,i){t.isFunction(e)&&n.eventOptions[i]!==e&&(t.isFunction(n.eventOptions[i])&&b(n,i,n.eventOptions[i]),n.eventOptions[i]=e,l(n,i,e))}),(a&&a.click||i.point&&i.point.events&&i.point.events.click||i.allowPointSelect)&&(e.runTrackerClick=!0),n.getColor(),n.getSymbol(),n.parallelArrays.forEach(function(t){n[t+"Data"]||(n[t+"Data"]=[])}),n.points||n.data||n.setData(i.data,!1),n.isCartesian&&(e.hasCartesianSeries=!0),o.length&&(s=o[o.length-1]),n._i=x(s&&s._i,-1)+1,e.orderSeries(this.insert(o)),v(this,"afterInit")},insert:function(t){var e,i=this.options.index;if(o(i)){for(e=t.length;e--;)if(i>=x(t[e].options.index,t[e]._i)){t.splice(e+1,0,this);break}-1===e&&t.unshift(this),e+=1}else t.push(this);return x(e,t.length-1)},bindAxes:function(){var e,i=this,s=i.options,n=i.chart;v(this,"bindAxes",null,function(){(i.axisTypes||[]).forEach(function(o){n[o].forEach(function(t){e=t.options,(s[o]===e.index||void 0!==s[o]&&s[o]===e.id||void 0===s[o]&&0===e.index)&&(i.insert(t.series),i[o]=t,t.isDirty=!0)}),i[o]||i.optionalAxis===o||t.error(18,!0,n)})})},updateParallelArrays:function(t,e){var i=t.series,s=arguments,n=o(e)?function(s){var n="y"===s&&i.toYData?i.toYData(t):t[s];i[s+"Data"][e]=n}:function(t){Array.prototype[e].apply(i[t+"Data"],Array.prototype.slice.call(s,2))};i.parallelArrays.forEach(n)},hasData:function(){return this.visible&&void 0!==this.dataMax&&void 0!==this.dataMin||this.visible&&this.yData&&0<this.yData.length},autoIncrement:function(){var t,e=this.options,i=this.xIncrement,s=e.pointIntervalUnit,n=this.chart.time;return i=x(i,e.pointStart,0),this.pointInterval=t=x(this.pointInterval,e.pointInterval,1),s&&(e=new n.Date(i),"day"===s?n.set("Date",e,n.get("Date",e)+t):"month"===s?n.set("Month",e,n.get("Month",e)+t):"year"===s&&n.set("FullYear",e,n.get("FullYear",e)+t),t=e.getTime()-i),this.xIncrement=i+t,i},setOptions:function(t){var e=this.chart,s=e.options,n=s.plotOptions,o=e.userOptions||{};t=y(t),e=e.styledMode;var a={plotOptions:n,userOptions:t};v(this,"setOptions",a);var r=a.plotOptions[this.type],h=o.plotOptions||{};return this.userOptions=a.userOptions,o=y(r,n.series,o.plotOptions&&o.plotOptions[this.type],t),this.tooltipOptions=y(f.tooltip,f.plotOptions.series&&f.plotOptions.series.tooltip,f.plotOptions[this.type].tooltip,s.tooltip.userOptions,n.series&&n.series.tooltip,n[this.type].tooltip,t.tooltip),this.stickyTracking=x(t.stickyTracking,h[this.type]&&h[this.type].stickyTracking,h.series&&h.series.stickyTracking,!(!this.tooltipOptions.shared||this.noSharedTooltip)||o.stickyTracking),null===r.marker&&delete o.marker,this.zoneAxis=o.zoneAxis,s=this.zones=(o.zones||[]).slice(),!o.negativeColor&&!o.negativeFillColor||o.zones||(n={value:o[this.zoneAxis+"Threshold"]||o.threshold||0,className:"highcharts-negative"},e||(n.color=o.negativeColor,n.fillColor=o.negativeFillColor),s.push(n)),s.length&&i(s[s.length-1].value)&&s.push(e?{}:{color:this.color,fillColor:this.fillColor}),v(this,"afterSetOptions",{options:o}),o},getName:function(){return x(this.options.name,"Series "+(this.index+1))},getCyclic:function(t,e,s){var n=this.chart,o=this.userOptions,a=t+"Index",r=t+"Counter",h=s?s.length:x(n.options.chart[t+"Count"],n[t+"Count"]);if(!e){var l=x(o[a],o["_"+a]);i(l)||(n.series.length||(n[r]=0),o["_"+a]=l=n[r]%h,n[r]+=1),s&&(e=s[l])}void 0!==l&&(this[a]=l),this[t]=e},getColor:function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||g[this.type].color,this.chart.options.colors)},getSymbol:function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},findPointIndex:function(t,e){var i=t.id;t=t.x;var s,n=this.points;if(i){var a=(i=this.chart.get(i))&&i.index;void 0!==a&&(s=!0)}return void 0===a&&o(t)&&(a=this.xData.indexOf(t,e)),-1!==a&&void 0!==a&&this.cropped&&(a=a>=this.cropStart?a-this.cropStart:a),!s&&n[a]&&n[a].touched&&(a=void 0),a},drawLegendSymbol:t.LegendSymbolMixin.drawLineMarker,updateData:function(t){var e,s,n,a=this.options,r=this.points,h=[],l=this.requireSorting,c=t.length===r.length,d=!0;if(this.xIncrement=null,t.forEach(function(t,s){var d=i(t)&&this.pointClass.prototype.optionsToObject.call({series:this},t)||{},p=d.x;(d.id||o(p))&&(p=this.findPointIndex(d,n),-1===p||void 0===p?h.push(t):r[p]&&t!==a.data[p]?(r[p].update(t,!1,null,!1),r[p].touched=!0,l&&(n=p+1)):r[p]&&(r[p].touched=!0),(!c||s!==p||this.hasDerivedData)&&(e=!0))},this),e)for(t=r.length;t--;)(s=r[t])&&!s.touched&&s.remove(!1);else c?t.forEach(function(t,e){r[e].update&&t!==r[e].y&&r[e].update(t,!1,null,!1)}):d=!1;return r.forEach(function(t){t&&(t.touched=!1)}),!!d&&(h.forEach(function(t){this.addPoint(t,!1,null,null,!1)},this),!0)},setData:function(e,i,s,r){var h,l,c=this,d=c.points,p=d&&d.length||0,u=c.options,f=c.chart,g=null,m=c.xAxis,v=u.turboThreshold,y=this.xData,b=this.yData,w=(h=c.pointArrayMap)&&h.length,k=u.keys,M=0,S=1;if(e=e||[],h=e.length,i=x(i,!0),!1!==r&&h&&p&&!c.cropped&&!c.hasGroupedData&&c.visible&&!c.isSeriesBoosting&&(l=this.updateData(e)),!l){if(c.xIncrement=null,c.colorCounter=0,this.parallelArrays.forEach(function(t){c[t+"Data"].length=0}),v&&h>v){for(s=0;null===g&&s<h;)g=e[s],s++;if(o(g))for(s=0;s<h;s++)y[s]=this.autoIncrement(),b[s]=e[s];else if(n(g))if(w)for(s=0;s<h;s++)g=e[s],y[s]=g[0],b[s]=g.slice(1,w+1);else for(k&&(M=k.indexOf("x"),S=k.indexOf("y"),M=0<=M?M:0,S=0<=S?S:1),s=0;s<h;s++)g=e[s],y[s]=g[M],b[s]=g[S];else t.error(12,!1,f)}else for(s=0;s<h;s++)void 0!==e[s]&&(g={series:c},c.pointClass.prototype.applyOptions.apply(g,[e[s]]),c.updateParallelArrays(g,s));for(b&&a(b[0])&&t.error(14,!0,f),c.data=[],c.options.data=c.userOptions.data=e,s=p;s--;)d[s]&&d[s].destroy&&d[s].destroy();m&&(m.minRange=m.userMinRange),c.isDirty=f.isDirtyBox=!0,c.isDirtyData=!!d,s=!1}"point"===u.legendType&&(this.processData(),this.generatePoints()),i&&f.redraw(s)},processData:function(e){var i=this.xData,s=this.yData,n=i.length,o=0,a=this.xAxis,r=this.options,h=r.cropThreshold,l=this.getExtremesFromAll||r.getExtremesFromAll,c=this.isCartesian;r=a&&a.val2lin;var d=a&&a.isLog,p=this.requireSorting;if(c&&!this.isDirty&&!a.isDirty&&!this.yAxis.isDirty&&!e)return!1;if(a){e=a.getExtremes();var u=e.min,f=e.max}if(c&&this.sorted&&!l&&(!h||n>h||this.forceCrop))if(i[n-1]<u||i[0]>f)i=[],s=[];else if(this.yData&&(i[0]<u||i[n-1]>f)){o=this.cropData(this.xData,this.yData,u,f),i=o.xData,s=o.yData,o=o.start;var g=!0}for(h=i.length||1;--h;)if(0<(n=d?r(i[h])-r(i[h-1]):i[h]-i[h-1])&&(void 0===m||n<m))var m=n;else 0>n&&p&&(t.error(15,!1,this.chart),p=!1);this.cropped=g,this.cropStart=o,this.processedXData=i,this.processedYData=s,this.closestPointRange=this.basePointRange=m},cropData:function(t,e,i,s,n){var o,a=t.length,r=0,h=a;for(n=x(n,this.cropShoulder),o=0;o<a;o++)if(t[o]>=i){r=Math.max(0,o-n);break}for(i=o;i<a;i++)if(t[i]>s){h=i+n;break}return{xData:t.slice(r,h),yData:e.slice(r,h),start:r,end:h}},generatePoints:function(){var t,e=this.options,i=e.data,s=this.data,n=this.processedXData,o=this.processedYData,a=this.pointClass,r=n.length,l=this.cropStart||0,c=this.hasGroupedData;e=e.keys;var d,p=[];for(s||c||(s=[],s.length=i.length,s=this.data=s),e&&c&&(this.options.keys=!1),d=0;d<r;d++){var u=l+d;if(c){var f=(new a).init(this,[n[d]].concat(h(o[d])));f.dataGroup=this.groupMap[d],f.dataGroup.options&&(f.options=f.dataGroup.options,m(f,f.dataGroup.options),delete f.dataLabels)}else(f=s[u])||void 0===i[u]||(s[u]=f=(new a).init(this,i[u],n[d]));f&&(f.index=u,p[d]=f)}if(this.options.keys=e,s&&(r!==(t=s.length)||c))for(d=0;d<t;d++)d!==l||c||(d+=r),s[d]&&(s[d].destroyElements(),s[d].plotX=void 0);this.data=s,this.points=p,v(this,"afterGeneratePoints")},getXExtremes:function(t){return{min:p(t),max:d(t)}},getExtremes:function(t){var e,i=this.xAxis,s=this.yAxis,a=this.processedXData||this.xData,r=[],h=0,l=0,c=0,u=this.requireSorting?this.cropShoulder:0,f=!!s&&s.positiveValuesOnly;for(t=t||this.stackedYData||this.processedYData||[],s=t.length,i&&(c=i.getExtremes(),l=c.min,c=c.max),e=0;e<s;e++){var g=a[e],m=t[e],y=(o(m)||n(m))&&(m.length||0<m||!f);if(g=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!i||(a[e+u]||g)>=l&&(a[e-u]||g)<=c,y&&g)if(y=m.length)for(;y--;)o(m[y])&&(r[h++]=m[y]);else r[h++]=m}this.dataMin=p(r),this.dataMax=d(r),v(this,"afterGetExtremes")},translate:function(){this.processedXData||this.processData(),this.generatePoints();var t,e,s=this.options,a=s.stacking,r=this.xAxis,h=r.categories,l=this.yAxis,c=this.points,d=c.length,p=!!this.modifyValue,f=this.pointPlacementToXValue(),g=o(f),m=s.threshold,y=s.startFromThreshold?m:0,b=this.zoneAxis||"y",w=Number.MAX_VALUE;for(t=0;t<d;t++){var k=c[t],M=k.x,S=k.y,T=k.low,C=a&&l.stacks[(this.negStacks&&S<(y?0:m)?"-":"")+this.stackKey];if(l.positiveValuesOnly&&null!==S&&0>=S&&(k.isNull=!0),k.plotX=e=u(Math.min(Math.max(-1e5,r.translate(M,0,0,0,1,f,"flags"===this.type)),1e5)),a&&this.visible&&C&&C[M]){var A=this.getStackIndicator(A,M,this.index);if(!k.isNull)var D=C[M],E=D.points[A.key]}if(n(E)&&(T=E[0],S=E[1],T===y&&A.key===C[M].base&&(T=x(o(m)&&m,l.min)),l.positiveValuesOnly&&0>=T&&(T=null),k.total=k.stackTotal=D.total,k.percentage=D.total&&k.y/D.total*100,k.stackY=S,this.irregularWidths||D.setOffset(this.pointXOffset||0,this.barW||0)),k.yBottom=i(T)?Math.min(Math.max(-1e5,l.translate(T,0,1,0,1)),1e5):null,p&&(S=this.modifyValue(S,k)),k.plotY=S="number"==typeof S&&1/0!==S?Math.min(Math.max(-1e5,l.translate(S,0,1,0,1)),1e5):void 0,k.isInside=void 0!==S&&0<=S&&S<=l.len&&0<=e&&e<=r.len,k.clientX=g?u(r.translate(M,0,0,0,1,f)):e,k.negative=k[b]<(s[b+"Threshold"]||m||0),k.category=h&&void 0!==h[k.x]?h[k.x]:k.x,!k.isNull){void 0!==O&&(w=Math.min(w,Math.abs(e-O)));var O=e}k.zone=this.zones.length&&k.getZone()}this.closestPointRangePx=w,v(this,"afterTranslate")},getValidPoints:function(t,e,i){var s=this.chart;return(t||this.points||[]).filter(function(t){return!(e&&!s.isInsidePlot(t.plotX,t.plotY,s.inverted))&&(i||!t.isNull)})},getClipBox:function(t,e){var i=this.options,s=this.chart,n=s.inverted,o=this.xAxis,a=o&&this.yAxis;return t&&!1===i.clip&&a?t=n?{y:-s.chartWidth+a.len+a.pos,height:s.chartWidth,width:s.chartHeight,x:-s.chartHeight+o.len+o.pos}:{y:-a.pos,height:s.chartHeight,width:s.chartWidth,x:-o.pos}:(t=this.clipBox||s.clipBox,e&&(t.width=s.plotSizeX,t.x=0)),e?{width:t.width,x:t.x}:t},setClip:function(t){var e=this.chart,i=this.options,s=e.renderer,n=e.inverted,o=this.clipBox,a=this.getClipBox(t),r=this.sharedClipKey||["_sharedClip",t&&t.duration,t&&t.easing,a.height,i.xAxis,i.yAxis].join(),h=e[r],l=e[r+"m"];h||(t&&(a.width=0,n&&(a.x=e.plotSizeX+(!1!==i.clip?0:e.plotTop)),e[r+"m"]=l=s.clipRect(n?e.plotSizeX+99:-99,n?-e.plotLeft:-e.plotTop,99,n?e.chartWidth:e.chartHeight)),e[r]=h=s.clipRect(a),h.count={length:0}),t&&!h.count[this.index]&&(h.count[this.index]=!0,h.count.length+=1),(!1!==i.clip||t)&&(this.group.clip(t||o?h:e.clipRect),this.markerGroup.clip(l),this.sharedClipKey=r),t||(h.count[this.index]&&(delete h.count[this.index],--h.count.length),0===h.count.length&&r&&e[r]&&(o||(e[r]=e[r].destroy()),e[r+"m"]&&(e[r+"m"]=e[r+"m"].destroy())))},animate:function(t){var e=this.chart,i=c(this.options.animation);if(t)this.setClip(i);else{var s=this.sharedClipKey;t=e[s];var n=this.getClipBox(i,!0);t&&t.animate(n,i),e[s+"m"]&&e[s+"m"].animate({width:n.width+99,x:n.x-(e.inverted?0:99)},i),this.animate=null}},afterAnimate:function(){this.setClip(),v(this,"afterAnimate"),this.finishedAnimating=!0},drawPoints:function(){var t,e=this.points,i=this.chart,s=this.options.marker,n=this[this.specialGroup]||this.markerGroup,o=this.xAxis,a=x(s.enabled,!(o&&!o.isRadial)||null,this.closestPointRangePx>=s.enabledThreshold*s.radius);if(!1!==s.enabled||this._hasPointMarkers)for(o=0;o<e.length;o++){var r=e[o],h=(t=r.graphic)?"animate":"attr",l=r.marker||{},c=!!r.marker,d=a&&void 0===l.enabled||l.enabled,p=!1!==r.isInside;if(d&&!r.isNull){d=x(l.symbol,this.symbol);var u=this.markerAttribs(r,r.selected&&"select");t?t[p?"show":"hide"](p).animate(u):p&&(0<u.width||r.hasImage)&&(r.graphic=t=i.renderer.symbol(d,u.x,u.y,u.width,u.height,c?l:s).add(n)),t&&!i.styledMode&&t[h](this.pointAttribs(r,r.selected&&"select")),t&&t.addClass(r.getClassName(),!0)}else t&&(r.graphic=t.destroy())}},markerAttribs:function(t,e){var i=this.options.marker,s=t.marker||{},n=s.symbol||i.symbol,o=x(s.radius,i.radius);return e&&(i=i.states[e],e=s.states&&s.states[e],o=x(e&&e.radius,i&&i.radius,o+(i&&i.radiusPlus||0))),t.hasImage=n&&0===n.indexOf("url"),t.hasImage&&(o=0),t={x:Math.floor(t.plotX)-o,y:t.plotY-o},o&&(t.width=t.height=2*o),t},pointAttribs:function(t,e){var i=this.options.marker,s=t&&t.options,n=s&&s.marker||{},o=this.color,a=s&&s.color,r=t&&t.color;s=x(n.lineWidth,i.lineWidth);var h=t&&t.zone&&t.zone.color;return t=1,o=a||h||r||o,a=n.fillColor||i.fillColor||o,o=n.lineColor||i.lineColor||o,e=e||"normal",i=i.states[e],e=n.states&&n.states[e]||{},s=x(e.lineWidth,i.lineWidth,s+x(e.lineWidthPlus,i.lineWidthPlus,0)),a=e.fillColor||i.fillColor||a,o=e.lineColor||i.lineColor||o,t=x(e.opacity,i.opacity,t),{stroke:o,"stroke-width":s,fill:a,opacity:t}},destroy:function(e){var i,n,o,a,h=this,l=h.chart,c=/AppleWebKit\/533/.test(M.navigator.userAgent),d=h.data||[];for(v(h,"destroy"),e||b(h),(h.axisTypes||[]).forEach(function(t){(a=h[t])&&a.series&&(s(a.series,h),a.isDirty=a.forceRedraw=!0)}),h.legendItem&&h.chart.legend.destroyItem(h),n=d.length;n--;)(o=d[n])&&o.destroy&&o.destroy();h.points=null,t.clearTimeout(h.animationTimeout),r(h,function(t,e){t instanceof w&&!t.survive&&(i=c&&"group"===e?"hide":"destroy",t[i]())}),l.hoverSeries===h&&(l.hoverSeries=null),s(l.series,h),l.orderSeries(),r(h,function(t,i){e&&"hcEvents"===i||delete h[i]})},getGraphPath:function(t,e,s){var n,o,a=this,r=a.options,h=r.step,l=[],c=[];return t=t||a.points,(n=t.reversed)&&t.reverse(),(h={right:1,center:2}[h]||h&&3)&&n&&(h=4-h),!r.connectNulls||e||s||(t=this.getValidPoints(t)),t.forEach(function(n,d){var p=n.plotX,u=n.plotY,f=t[d-1];(n.leftCliff||f&&f.rightCliff)&&!s&&(o=!0),n.isNull&&!i(e)&&0<d?o=!r.connectNulls:n.isNull&&!e?o=!0:(0===d||o?d=["M",n.plotX,n.plotY]:a.getPointSpline?d=a.getPointSpline(t,n,d):h?(d=1===h?["L",f.plotX,u]:2===h?["L",(f.plotX+p)/2,f.plotY,"L",(f.plotX+p)/2,u]:["L",p,f.plotY],d.push("L",p,u)):d=["L",p,u],c.push(n.x),h&&(c.push(n.x),2===h&&c.push(n.x)),l.push.apply(l,d),o=!1)}),l.xMap=c,a.graphPath=l},drawGraph:function(){var t=this,e=this.options,i=(this.gappedPath||this.getGraphPath).call(this),s=this.chart.styledMode,n=[["graph","highcharts-graph"]];s||n[0].push(e.lineColor||this.color||"#cccccc",e.dashStyle),n=t.getZonesGraphs(n),n.forEach(function(n,o){var a=n[0],r=t[a],h=r?"animate":"attr";r?(r.endX=t.preventGraphAnimation?null:i.xMap,r.animate({d:i})):i.length&&(t[a]=r=t.chart.renderer.path(i).addClass(n[1]).attr({zIndex:1}).add(t.group)),r&&!s&&(a={stroke:n[2],"stroke-width":e.lineWidth,fill:t.fillGraph&&t.color||"none"},n[3]?a.dashstyle=n[3]:"square"!==e.linecap&&(a["stroke-linecap"]=a["stroke-linejoin"]="round"),r[h](a).shadow(2>o&&e.shadow)),r&&(r.startX=i.xMap,r.isArea=i.isArea)})},getZonesGraphs:function(t){return this.zones.forEach(function(e,i){i=["zone-graph-"+i,"highcharts-graph highcharts-zone-graph-"+i+" "+(e.className||"")],this.chart.styledMode||i.push(e.color||this.color,e.dashStyle||this.options.dashStyle),t.push(i)},this),t},applyZones:function(){var t,e,i,s,n,o,a=this,r=this.chart,h=r.renderer,l=this.zones,c=this.clips||[],d=this.graph,p=this.area,u=Math.max(r.chartWidth,r.chartHeight),f=this[(this.zoneAxis||"y")+"Axis"],g=r.inverted,m=!1;if(l.length&&(d||p)&&f&&void 0!==f.min){var v=f.reversed,y=f.horiz;d&&!this.showLine&&d.hide(),p&&p.hide();var b=f.getExtremes();l.forEach(function(l,w){t=v?y?r.plotWidth:0:y?0:f.toPixels(b.min)||0,t=Math.min(Math.max(x(e,t),0),u),e=Math.min(Math.max(Math.round(f.toPixels(x(l.value,b.max),!0)||0),0),u),m&&(t=e=f.toPixels(b.max)),s=Math.abs(t-e),n=Math.min(t,e),o=Math.max(t,e),f.isXAxis?(i={x:g?o:n,y:0,width:s,height:u},y||(i.x=r.plotHeight-i.x)):(i={x:0,y:g?o:n,width:u,height:s},y&&(i.y=r.plotWidth-i.y)),g&&h.isVML&&(i=f.isXAxis?{x:0,y:v?n:o,height:i.width,width:r.chartWidth}:{x:i.y-r.plotLeft-r.spacingBox.x,y:0,width:i.height,height:r.chartHeight}),c[w]?c[w].animate(i):c[w]=h.clipRect(i),d&&a["zone-graph-"+w].clip(c[w]),p&&a["zone-area-"+w].clip(c[w]),m=l.value>b.max,a.resetZones&&0===e&&(e=void 0)}),this.clips=c}else a.visible&&(d&&d.show(!0),p&&p.show(!0))},invertGroups:function(t){function e(){["group","markerGroup"].forEach(function(e){i[e]&&(s.renderer.isVML&&i[e].attr({width:i.yAxis.len,height:i.xAxis.len}),i[e].width=i.yAxis.len,i[e].height=i.xAxis.len,i[e].invert(t))})}var i=this,s=i.chart;if(i.xAxis){var n=l(s,"resize",e);l(i,"destroy",n),e(),i.invertGroups=e}},plotGroup:function(t,e,s,n,o){var a=this[t],r=!a;return r&&(this[t]=a=this.chart.renderer.g().attr({zIndex:n||.1}).add(o)),a.addClass("highcharts-"+e+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(i(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(a.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),a.attr({visibility:s})[r?"attr":"animate"](this.getPlotBox()),a},getPlotBox:function(){var t=this.chart,e=this.xAxis,i=this.yAxis;return t.inverted&&(e=i,i=this.xAxis),{translateX:e?e.left:t.plotLeft,translateY:i?i.top:t.plotTop,scaleX:1,scaleY:1}},render:function(){var t=this,e=t.chart,i=t.options,s=!!t.animate&&e.renderer.isSVG&&c(i.animation).duration,n=t.visible?"inherit":"hidden",o=i.zIndex,a=t.hasRendered,r=e.seriesGroup,h=e.inverted;v(this,"render");var l=t.plotGroup("group","series",n,o,r);t.markerGroup=t.plotGroup("markerGroup","markers",n,o,r),s&&t.animate(!0),l.inverted=!(!t.isCartesian&&!t.invertable)&&h,t.drawGraph&&(t.drawGraph(),t.applyZones()),t.visible&&t.drawPoints(),t.drawDataLabels&&t.drawDataLabels(),t.redrawPoints&&t.redrawPoints(),t.drawTracker&&!1!==t.options.enableMouseTracking&&t.drawTracker(),t.invertGroups(h),!1===i.clip||t.sharedClipKey||a||l.clip(e.clipRect),s&&t.animate(),a||(t.animationTimeout=k(function(){t.afterAnimate()},s)),t.isDirty=!1,t.hasRendered=!0,v(t,"afterRender")},redraw:function(){var t=this.chart,e=this.isDirty||this.isDirtyData,i=this.group,s=this.xAxis,n=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:x(s&&s.left,t.plotLeft),translateY:x(n&&n.top,t.plotTop)})),this.translate(),this.render(),e&&delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(t,e){var i=this.xAxis,s=this.yAxis,n=this.chart.inverted;return this.searchKDTree({clientX:n?i.len-t.chartY+i.pos:t.chartX-i.pos,plotY:n?s.len-t.chartX+s.pos:t.chartY-s.pos},e,t)},buildKDTree:function(t){function e(t,s,n){var o;if(o=t&&t.length){var a=i.kdAxisArray[s%n];return t.sort(function(t,e){return t[a]-e[a]}),o=Math.floor(o/2),{point:t[o],left:e(t.slice(0,o),s+1,n),right:e(t.slice(o+1),s+1,n)}}}this.buildingKdTree=!0;var i=this,s=-1<i.options.findNearestPointBy.indexOf("y")?2:1;delete i.kdTree,k(function(){i.kdTree=e(i.getValidPoints(null,!i.directTouch),s,s),i.buildingKdTree=!1},i.options.kdNow||t&&"touchstart"===t.type?0:1)},searchKDTree:function(t,e,s){function n(t,e,s,l){var c=e.point,d=o.kdAxisArray[s%l],p=c,u=i(t[a])&&i(c[a])?Math.pow(t[a]-c[a],2):null,f=i(t[r])&&i(c[r])?Math.pow(t[r]-c[r],2):null;return f=(u||0)+(f||0),c.dist=i(f)?Math.sqrt(f):Number.MAX_VALUE,c.distX=i(u)?Math.sqrt(u):Number.MAX_VALUE,d=t[d]-c[d],f=0>d?"left":"right",u=0>d?"right":"left",e[f]&&(f=n(t,e[f],s+1,l),p=f[h]<p[h]?f:c),e[u]&&Math.sqrt(d*d)<p[h]&&(t=n(t,e[u],s+1,l),p=t[h]<p[h]?t:p),p}var o=this,a=this.kdAxisArray[0],r=this.kdAxisArray[1],h=e?"distX":"dist";if(e=-1<o.options.findNearestPointBy.indexOf("y")?2:1,this.kdTree||this.buildingKdTree||this.buildKDTree(s),this.kdTree)return n(t,this.kdTree,e,e)},pointPlacementToXValue:function(){var t=this.options.pointPlacement;return"between"===t&&(t=.5),o(t)&&(t*=x(this.options.pointRange||this.xAxis.pointRange)),t}})}),e(i,"parts/Stacking.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.objectEach;e=t.Axis;var n=t.Chart,o=t.correctFloat,a=t.destroyObjectProperties,r=t.format,h=t.pick,l=t.Series;t.StackItem=function(t,e,i,s,n){var o=t.chart.inverted;this.axis=t,this.isNegative=i,this.options=e=e||{},this.x=s,this.total=null,this.points={},this.stack=n,this.rightCliff=this.leftCliff=0,this.alignOptions={align:e.align||(o?i?"left":"right":"center"),verticalAlign:e.verticalAlign||(o?"middle":i?"bottom":"top"),y:e.y,x:e.x},this.textAlign=e.textAlign||(o?i?"right":"left":"center")},t.StackItem.prototype={destroy:function(){a(this,this.axis)},render:function(t){var e=this.axis.chart,i=this.options,s=i.format;s=s?r(s,this,e.time):i.formatter.call(this),this.label?this.label.attr({text:s,visibility:"hidden"}):(this.label=e.renderer.label(s,null,null,i.shape,null,null,i.useHTML,!1,"stack-labels"),s={text:s,align:this.textAlign,rotation:i.rotation,padding:h(i.padding,0),visibility:"hidden"},this.label.attr(s),e.styledMode||this.label.css(i.style),this.label.added||this.label.add(t)),this.label.labelrank=e.plotHeight},setOffset:function(t,e,s,n,o){var a=this.axis,r=a.chart;if(n=a.translate(a.usePercentage?100:n||this.total,0,0,0,1),s=a.translate(s||0),s=i(n)&&Math.abs(n-s),t=h(o,r.xAxis[0].translate(this.x))+t,a=i(n)&&this.getStackBox(r,this,t,n,e,s,a),e=this.label,t=this.isNegative,o="justify"===h(this.options.overflow,"justify"),e&&a){s=e.getBBox();var c=r.inverted?t?s.width:0:s.width/2,d=r.inverted?s.height/2:t?-4:s.height+4;this.alignOptions.x=h(this.options.x,0),e.align(this.alignOptions,null,a),n=e.alignAttr,e.show(),n.y-=d,o&&(n.x-=c,l.prototype.justifyDataLabel.call(this.axis,e,this.alignOptions,n,s,a),n.x+=c),n.x=e.alignAttr.x,e.attr({x:n.x,y:n.y}),h(!o&&this.options.crop,!0)&&((r=r.isInsidePlot(e.x+(r.inverted?0:-s.width/2),e.y)&&r.isInsidePlot(e.x+(r.inverted?t?-s.width:s.width:s.width/2),e.y+s.height))||e.hide())}},getStackBox:function(t,e,i,s,n,o,a){var r=e.axis.reversed,h=t.inverted;return t=a.height+a.pos-(h?t.plotLeft:t.plotTop),e=e.isNegative&&!r||!e.isNegative&&r,{x:h?e?s:s-o:i,y:h?t-i-n:e?t-s-o:t-s,width:h?o:n,height:h?n:o}}},n.prototype.getStacks=function(){var t=this,e=t.inverted;t.yAxis.forEach(function(t){t.stacks&&t.hasVisibleSeries&&(t.oldStacks=t.stacks)}),t.series.forEach(function(i){var s=i.xAxis&&i.xAxis.options||{};!i.options.stacking||!0!==i.visible&&!1!==t.options.chart.ignoreHiddenSeries||(i.stackKey=[i.type,h(i.options.stack,""),e?s.top:s.left,e?s.height:s.width].join())})},e.prototype.buildStacks=function(){var t,e=this.series,i=h(this.options.reversedStacks,!0),s=e.length;if(!this.isXAxis){for(this.usePercentage=!1,t=s;t--;)e[i?t:s-t-1].setStackedPoints();for(t=0;t<s;t++)e[t].modifyStacks()}},e.prototype.renderStackTotals=function(){var t=this.chart,e=t.renderer,i=this.stacks,n=this.stackTotalGroup;n||(this.stackTotalGroup=n=e.g("stack-labels").attr({visibility:"visible",zIndex:6}).add()),n.translate(t.plotLeft,t.plotTop),s(i,function(t){s(t,function(t){t.render(n)})})},e.prototype.resetStacks=function(){var t=this,e=t.stacks;t.isXAxis||s(e,function(e){s(e,function(i,s){i.touched<t.stacksTouched?(i.destroy(),delete e[s]):(i.total=null,i.cumulative=null)})})},e.prototype.cleanStacks=function(){if(!this.isXAxis){if(this.oldStacks)var t=this.stacks=this.oldStacks;s(t,function(t){s(t,function(t){t.cumulative=t.total})})}},l.prototype.setStackedPoints=function(){if(this.options.stacking&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var e=this.processedXData,s=this.processedYData,n=[],a=s.length,r=this.options,l=r.threshold,c=h(r.startFromThreshold&&l,0),d=r.stack;r=r.stacking;var p,u,f=this.stackKey,g="-"+f,m=this.negStacks,v=this.yAxis,y=v.stacks,x=v.oldStacks;for(v.stacksTouched+=1,u=0;u<a;u++){var b=e[u],w=s[u],k=this.getStackIndicator(k,b,this.index),M=k.key,S=(p=m&&w<(c?0:l))?g:f;y[S]||(y[S]={}),y[S][b]||(x[S]&&x[S][b]?(y[S][b]=x[S][b],y[S][b].total=null):y[S][b]=new t.StackItem(v,v.options.stackLabels,p,b,d)),S=y[S][b],null!==w?(S.points[M]=S.points[this.index]=[h(S.cumulative,c)],i(S.cumulative)||(S.base=M),S.touched=v.stacksTouched,0<k.index&&!1===this.singleStacks&&(S.points[M][0]=S.points[this.index+","+b+",0"][0])):S.points[M]=S.points[this.index]=null,"percent"===r?(p=p?f:g,m&&y[p]&&y[p][b]?(p=y[p][b],S.total=p.total=Math.max(p.total,S.total)+Math.abs(w)||0):S.total=o(S.total+(Math.abs(w)||0))):S.total=o(S.total+(w||0)),S.cumulative=h(S.cumulative,c)+(w||0),null!==w&&(S.points[M].push(S.cumulative),n[u]=S.cumulative)}"percent"===r&&(v.usePercentage=!0),this.stackedYData=n,v.oldStacks={}}},l.prototype.modifyStacks=function(){var t,e=this,i=e.stackKey,s=e.yAxis.stacks,n=e.processedXData,o=e.options.stacking;e[o+"Stacker"]&&[i,"-"+i].forEach(function(i){for(var a,r,h=n.length;h--;)a=n[h],t=e.getStackIndicator(t,a,e.index,i),(r=(a=s[i]&&s[i][a])&&a.points[t.key])&&e[o+"Stacker"](r,a,h)})},l.prototype.percentStacker=function(t,e,i){e=e.total?100/e.total:0,t[0]=o(t[0]*e),t[1]=o(t[1]*e),this.stackedYData[i]=t[1]},l.prototype.getStackIndicator=function(t,e,s,n){return!i(t)||t.x!==e||n&&t.key!==n?t={x:e,index:0,key:n}:t.index++,t.key=[s,e,t.index].join(),t}}),e(i,"parts/Dynamics.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.erase,n=e.isArray,o=e.isNumber,a=e.isObject,r=e.isString,h=e.objectEach,l=e.splat,c=t.addEvent,d=t.animate,p=t.Axis;e=t.Chart
;var u=t.createElement,f=t.css,g=t.extend,m=t.fireEvent,v=t.merge,y=t.pick,x=t.Point,b=t.Series,w=t.seriesTypes,k=t.setAnimation;t.cleanRecursively=function(e,i){var s={};return h(e,function(n,o){a(e[o],!0)&&!e.nodeType&&i[o]?(n=t.cleanRecursively(e[o],i[o]),Object.keys(n).length&&(s[o]=n)):(a(e[o])||e[o]!==i[o])&&(s[o]=e[o])}),s},g(e.prototype,{addSeries:function(t,e,i){var s,n=this;return t&&(e=y(e,!0),m(n,"addSeries",{options:t},function(){s=n.initSeries(t),n.isDirtyLegend=!0,n.linkSeries(),m(n,"afterAddSeries",{series:s}),e&&n.redraw(i)})),s},addAxis:function(t,e,i,s){return this.createAxis(e?"xAxis":"yAxis",{axis:t,redraw:i,animation:s})},addColorAxis:function(t,e,i){return this.createAxis("colorAxis",{axis:t,redraw:e,animation:i})},createAxis:function(e,i){var s=this.options,n="colorAxis"===e,o=i.redraw,a=i.animation;i=v(i.axis,{index:this[e].length,isX:"xAxis"===e});var r=n?new t.ColorAxis(this,i):new p(this,i);return s[e]=l(s[e]||{}),s[e].push(i),n&&(this.isDirtyLegend=!0),y(o,!0)&&this.redraw(a),r},showLoading:function(t){var e=this,i=e.options,s=e.loadingDiv,n=i.loading,o=function(){s&&f(s,{left:e.plotLeft+"px",top:e.plotTop+"px",width:e.plotWidth+"px",height:e.plotHeight+"px"})};s||(e.loadingDiv=s=u("div",{className:"highcharts-loading highcharts-loading-hidden"},null,e.container),e.loadingSpan=u("span",{className:"highcharts-loading-inner"},null,s),c(e,"redraw",o)),s.className="highcharts-loading",e.loadingSpan.innerHTML=y(t,i.lang.loading,""),e.styledMode||(f(s,g(n.style,{zIndex:10})),f(e.loadingSpan,n.labelStyle),e.loadingShown||(f(s,{opacity:0,display:""}),d(s,{opacity:n.style.opacity||.5},{duration:n.showDuration||0}))),e.loadingShown=!0,o()},hideLoading:function(){var t=this.options,e=this.loadingDiv;e&&(e.className="highcharts-loading highcharts-loading-hidden",this.styledMode||d(e,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){f(e,{display:"none"})}})),this.loadingShown=!1},propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" "),collectionsWithUpdate:"xAxis yAxis zAxis series colorAxis pane".split(" "),update:function(e,s,n,a){var c,d,p,u=this,f={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},g=e.isResponsiveOptions,x=[];if(m(u,"update",{options:e}),g||u.setResponsive(!1,!0),e=t.cleanRecursively(e,u.options),v(!0,u.userOptions,e),c=e.chart){if(v(!0,u.options.chart,c),"className"in c&&u.setClassName(c.className),"reflow"in c&&u.setReflow(c.reflow),"inverted"in c||"polar"in c||"type"in c){u.propFromSeries();var b=!0}"alignTicks"in c&&(b=!0),h(c,function(t,e){-1!==u.propsRequireUpdateSeries.indexOf("chart."+e)&&(d=!0),-1!==u.propsRequireDirtyBox.indexOf(e)&&(u.isDirtyBox=!0),g||-1===u.propsRequireReflow.indexOf(e)||(p=!0)}),!u.styledMode&&"style"in c&&u.renderer.setStyle(c.style)}!u.styledMode&&e.colors&&(this.options.colors=e.colors),e.plotOptions&&v(!0,this.options.plotOptions,e.plotOptions),e.time&&this.time===t.time&&(this.time=new t.Time(e.time)),h(e,function(t,e){u[e]&&"function"==typeof u[e].update?u[e].update(t,!1):"function"==typeof u[f[e]]&&u[f[e]](t),"chart"!==e&&-1!==u.propsRequireUpdateSeries.indexOf(e)&&(d=!0)}),this.collectionsWithUpdate.forEach(function(t){if(e[t]){if("series"===t){var s=[];u[t].forEach(function(t,e){t.options.isInternal||s.push(y(t.options.index,e))})}l(e[t]).forEach(function(e,o){(o=i(e.id)&&u.get(e.id)||u[t][s?s[o]:o])&&o.coll===t&&(o.update(e,!1),n&&(o.touched=!0)),!o&&n&&u.collectionsWithInit[t]&&(u.collectionsWithInit[t][0].apply(u,[e].concat(u.collectionsWithInit[t][1]||[]).concat([!1])).touched=!0)}),n&&u[t].forEach(function(t){t.touched||t.options.isInternal?delete t.touched:x.push(t)})}}),x.forEach(function(t){t.remove&&t.remove(!1)}),b&&u.axes.forEach(function(t){t.update({},!1)}),d&&u.series.forEach(function(t){t.update({},!1)}),e.loading&&v(!0,u.options.loading,e.loading),b=c&&c.width,c=c&&c.height,r(c)&&(c=t.relativeLength(c,b||u.chartWidth)),p||o(b)&&b!==u.chartWidth||o(c)&&c!==u.chartHeight?u.setSize(b,c,a):y(s,!0)&&u.redraw(a),m(u,"afterUpdate",{options:e,redraw:s,animation:a})},setSubtitle:function(t,e){this.applyDescription("subtitle",t),this.layOutTitles(e)},setCaption:function(t,e){this.applyDescription("caption",t),this.layOutTitles(e)}}),e.prototype.collectionsWithInit={xAxis:[e.prototype.addAxis,[!0]],yAxis:[e.prototype.addAxis,[!1]],colorAxis:[e.prototype.addColorAxis,[!1]],series:[e.prototype.addSeries]},g(x.prototype,{update:function(t,e,i,s){function n(){r.applyOptions(t),null===r.y&&l&&(r.graphic=l.destroy()),a(t,!0)&&(l&&l.element&&t&&t.marker&&void 0!==t.marker.symbol&&(r.graphic=l.destroy()),t&&t.dataLabels&&r.dataLabel&&(r.dataLabel=r.dataLabel.destroy()),r.connector&&(r.connector=r.connector.destroy())),o=r.index,h.updateParallelArrays(r,o),d.data[o]=a(d.data[o],!0)||a(t,!0)?r.options:y(t,d.data[o]),h.isDirty=h.isDirtyData=!0,!h.fixedBox&&h.hasCartesianSeries&&(c.isDirtyBox=!0),"point"===d.legendType&&(c.isDirtyLegend=!0),e&&c.redraw(i)}var o,r=this,h=r.series,l=r.graphic,c=h.chart,d=h.options;e=y(e,!0),!1===s?n():r.firePointEvent("update",{options:t},n)},remove:function(t,e){this.series.removePoint(this.series.data.indexOf(this),t,e)}}),g(b.prototype,{addPoint:function(t,e,i,s,n){var o=this.options,a=this.data,r=this.chart,h=this.xAxis;h=h&&h.hasNames&&h.names;var l,c=o.data,d=this.xData;e=y(e,!0);var p={series:this};this.pointClass.prototype.applyOptions.apply(p,[t]);var u=p.x,f=d.length;if(this.requireSorting&&u<d[f-1])for(l=!0;f&&d[f-1]>u;)f--;this.updateParallelArrays(p,"splice",f,0,0),this.updateParallelArrays(p,f),h&&p.name&&(h[u]=p.name),c.splice(f,0,t),l&&(this.data.splice(f,0,null),this.processData()),"point"===o.legendType&&this.generatePoints(),i&&(a[0]&&a[0].remove?a[0].remove(!1):(a.shift(),this.updateParallelArrays(p,"shift"),c.shift())),!1!==n&&m(this,"addPoint",{point:p}),this.isDirtyData=this.isDirty=!0,e&&r.redraw(s)},removePoint:function(t,e,i){var s=this,n=s.data,o=n[t],a=s.points,r=s.chart,h=function(){a&&a.length===n.length&&a.splice(t,1),n.splice(t,1),s.options.data.splice(t,1),s.updateParallelArrays(o||{series:s},"splice",t,1),o&&o.destroy(),s.isDirty=!0,s.isDirtyData=!0,e&&r.redraw()};k(i,r),e=y(e,!0),o?o.firePointEvent("remove",null,h):h()},remove:function(t,e,i,s){function n(){o.destroy(s),o.remove=null,a.isDirtyLegend=a.isDirtyBox=!0,a.linkSeries(),y(t,!0)&&a.redraw(e)}var o=this,a=o.chart;!1!==i?m(o,"remove",null,n):n()},update:function(e,i){e=t.cleanRecursively(e,this.userOptions),m(this,"update",{options:e});var s,n=this,o=n.chart,a=n.userOptions,r=n.initialType||n.type,h=e.type||a.type||o.options.chart.type,l=!(this.hasDerivedData||e.dataGrouping||h&&h!==this.type||void 0!==e.pointStart||e.pointInterval||e.pointIntervalUnit||e.keys),c=w[r].prototype,d=["group","markerGroup","dataLabelsGroup","transformGroup"],p=["eventOptions","navigatorSeries","baseSeries"],u=n.finishedAnimating&&{animation:!1},f={};l&&(p.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","_hasPointMarkers","_hasPointLabels","mapMap","mapData","minY","maxY","minX","maxX"),!1!==e.visible&&p.push("area","graph"),n.parallelArrays.forEach(function(t){p.push(t+"Data")}),e.data&&this.setData(e.data,!1)),e=v(a,u,{index:void 0===a.index?n.index:a.index,pointStart:y(a.pointStart,n.xData[0])},!l&&{data:n.options.data},e),l&&e.data&&(e.data=n.options.data),p=d.concat(p),p.forEach(function(t){p[t]=n[t],delete n[t]}),n.remove(!1,null,!1,!0);for(s in c)n[s]=void 0;if(w[h||r]?g(n,w[h||r].prototype):t.error(17,!0,o),p.forEach(function(t){n[t]=p[t]}),n.init(o,e),l&&this.points){var x=n.options;!1===x.visible?(f.graphic=1,f.dataLabel=1):n._hasPointLabels||(h=x.marker,c=x.dataLabels,h&&(!1===h.enabled||"symbol"in h)&&(f.graphic=1),c&&!1===c.enabled&&(f.dataLabel=1)),this.points.forEach(function(t){t&&t.series&&(t.resolveColor(),Object.keys(f).length&&t.destroyElements(f),!1===x.showInLegend&&t.legendItem&&o.legend.destroyItem(t))},this)}e.zIndex!==a.zIndex&&d.forEach(function(t){n[t]&&n[t].attr({zIndex:e.zIndex})}),n.initialType=r,o.linkSeries(),m(this,"afterUpdate"),y(i,!0)&&o.redraw(!!l&&void 0)},setName:function(t){this.name=this.options.name=this.userOptions.name=t,this.chart.isDirtyLegend=!0}}),g(p.prototype,{update:function(t,e){var i=this.chart,s=t&&t.events||{};t=v(this.userOptions,t),i.options[this.coll].indexOf&&(i.options[this.coll][i.options[this.coll].indexOf(this.userOptions)]=t),h(i.options[this.coll].events,function(t,e){void 0===s[e]&&(s[e]=void 0)}),this.destroy(!0),this.init(i,g(t,{events:s})),i.isDirtyBox=!0,y(e,!0)&&i.redraw()},remove:function(t){for(var e=this.chart,i=this.coll,o=this.series,a=o.length;a--;)o[a]&&o[a].remove(!1);s(e.axes,this),s(e[i],this),n(e.options[i])?e.options[i].splice(this.options.index,1):delete e.options[i],e[i].forEach(function(t,e){t.options.index=t.userOptions.index=e}),this.destroy(),e.isDirtyBox=!0,y(t,!0)&&e.redraw()},setTitle:function(t,e){this.update({title:t},e)},setCategories:function(t,e){this.update({categories:t},e)}})}),e(i,"parts/AreaSeries.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.objectEach,s=t.color,n=t.pick,o=t.Series;(e=t.seriesType)("area","line",{softThreshold:!1,threshold:0},{singleStacks:!1,getStackPoints:function(t){var e,s=[],o=[],a=this.xAxis,r=this.yAxis,h=r.stacks[this.stackKey],l={},c=this.index,d=r.series,p=d.length,u=n(r.options.reversedStacks,!0)?1:-1;if(t=t||this.points,this.options.stacking){for(e=0;e<t.length;e++)t[e].leftNull=t[e].rightNull=null,l[t[e].x]=t[e];i(h,function(t,e){null!==t.total&&o.push(e)}),o.sort(function(t,e){return t-e});var f=d.map(function(t){return t.visible});o.forEach(function(t,i){var n,d,g=0;if(l[t]&&!l[t].isNull)s.push(l[t]),[-1,1].forEach(function(s){var a=1===s?"rightNull":"leftNull",r=0,g=h[o[i+s]];if(g)for(e=c;0<=e&&e<p;)n=g.points[e],n||(e===c?l[t][a]=!0:f[e]&&(d=h[t].points[e])&&(r-=d[1]-d[0])),e+=u;l[t][1===s?"rightCliff":"leftCliff"]=r});else{for(e=c;0<=e&&e<p;){if(n=h[t].points[e]){g=n[1];break}e+=u}g=r.translate(g,0,1,0,1),s.push({isNull:!0,plotX:a.translate(t,0,0,0,1),x:t,plotY:g,yBottom:g})}})}return s},getGraphPath:function(e){var i,s=o.prototype.getGraphPath,a=this.options,r=a.stacking,h=this.yAxis,l=[],c=[],d=this.index,p=h.stacks[this.stackKey],u=a.threshold,f=Math.round(h.getThreshold(a.threshold));a=t.pick(a.connectNulls,"percent"===r);var g=function(t,i,s){var n=e[t];t=r&&p[n.x].points[d];var o=n[s+"Null"]||0;if(s=n[s+"Cliff"]||0,n=!0,s||o){var a=(o?t[0]:t[1])+s,g=t[0]+s;n=!!o}else!r&&e[i]&&e[i].isNull&&(a=g=u);void 0!==a&&(c.push({plotX:v,plotY:null===a?f:h.getThreshold(a),isNull:n,isCliff:!0}),l.push({plotX:v,plotY:null===g?f:h.getThreshold(g),doCurve:!1}))};for(e=e||this.points,r&&(e=this.getStackPoints(e)),i=0;i<e.length;i++){var m=e[i].isNull,v=n(e[i].rectPlotX,e[i].plotX),y=n(e[i].yBottom,f);m&&!a||(a||g(i,i-1,"left"),m&&!r&&a||(c.push(e[i]),l.push({x:i,plotX:v,plotY:y})),a||g(i,i+1,"right"))}return i=s.call(this,c,!0,!0),l.reversed=!0,m=s.call(this,l,!0,!0),m.length&&(m[0]="L"),m=i.concat(m),s=s.call(this,c,!1,a),m.xMap=i.xMap,this.areaPath=m,s},drawGraph:function(){this.areaPath=[],o.prototype.drawGraph.apply(this);var t=this,e=this.areaPath,i=this.options,a=[["area","highcharts-area",this.color,i.fillColor]];this.zones.forEach(function(e,s){a.push(["zone-area-"+s,"highcharts-area highcharts-zone-area-"+s+" "+e.className,e.color||t.color,e.fillColor||i.fillColor])}),a.forEach(function(o){var a=o[0],r=t[a],h=r?"animate":"attr",l={};r?(r.endX=t.preventGraphAnimation?null:e.xMap,r.animate({d:e})):(l.zIndex=0,r=t[a]=t.chart.renderer.path(e).addClass(o[1]).add(t.group),r.isArea=!0),t.chart.styledMode||(l.fill=n(o[3],s(o[2]).setOpacity(n(i.fillOpacity,.75)).get())),r[h](l),r.startX=e.xMap,r.shiftUnit=i.step?2:1})},drawLegendSymbol:t.LegendSymbolMixin.drawRectangle})}),e(i,"parts/SplineSeries.js",[i["parts/Globals.js"]],function(t){var e=t.pick;(t=t.seriesType)("spline","line",{},{getPointSpline:function(t,i,s){var n=i.plotX,o=i.plotY,a=t[s-1];if(s=t[s+1],a&&!a.isNull&&!1!==a.doCurve&&!i.isCliff&&s&&!s.isNull&&!1!==s.doCurve&&!i.isCliff){t=a.plotY;var r=s.plotX;s=s.plotY;var h=0,l=(1.5*n+a.plotX)/2.5,c=(1.5*o+t)/2.5;r=(1.5*n+r)/2.5;var d=(1.5*o+s)/2.5;r!==l&&(h=(d-c)*(r-n)/(r-l)+o-d),c+=h,d+=h,c>t&&c>o?(c=Math.max(t,o),d=2*o-c):c<t&&c<o&&(c=Math.min(t,o),d=2*o-c),d>s&&d>o?(d=Math.max(s,o),c=2*o-d):d<s&&d<o&&(d=Math.min(s,o),c=2*o-d),i.rightContX=r,i.rightContY=d}return i=["C",e(a.rightContX,a.plotX),e(a.rightContY,a.plotY),e(l,n),e(c,o),n,o],a.rightContX=a.rightContY=null,i}})}),e(i,"parts/AreaSplineSeries.js",[i["parts/Globals.js"]],function(t){var e=t.seriesTypes.area.prototype;(0,t.seriesType)("areaspline","spline",t.defaultPlotOptions.area,{getStackPoints:e.getStackPoints,getGraphPath:e.getGraphPath,drawGraph:e.drawGraph,drawLegendSymbol:t.LegendSymbolMixin.drawRectangle})}),e(i,"parts/ColumnSeries.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isNumber,n=t.animObject,o=t.color,a=t.extend,r=t.merge,h=t.pick,l=t.Series;e=t.seriesType;var c=t.svg;e("column","line",{borderRadius:0,crisp:!0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"},{cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){l.prototype.init.apply(this,arguments);var t=this,e=t.chart;e.hasRendered&&e.series.forEach(function(e){e.type===t.type&&(e.isDirty=!0)})},getColumnMetrics:function(){var t=this,e=t.options,i=t.xAxis,s=t.yAxis,n=i.options.reversedStacks;n=i.reversed&&!n||!i.reversed&&n;var o,a={},r=0;!1===e.grouping?r=1:t.chart.series.forEach(function(e){var i=e.yAxis,n=e.options;if(e.type===t.type&&(e.visible||!t.chart.options.chart.ignoreHiddenSeries)&&s.len===i.len&&s.pos===i.pos){if(n.stacking){o=e.stackKey,void 0===a[o]&&(a[o]=r++);var h=a[o]}else!1!==n.grouping&&(h=r++);e.columnIndex=h}});var l=Math.min(Math.abs(i.transA)*(i.ordinalSlope||e.pointRange||i.closestPointRange||i.tickInterval||1),i.len),c=l*e.groupPadding,d=(l-2*c)/(r||1);return e=Math.min(e.maxPointWidth||i.len,h(e.pointWidth,d*(1-2*e.pointPadding))),t.columnMetrics={width:e,offset:(d-e)/2+(c+((t.columnIndex||0)+(n?1:0))*d-l/2)*(n?-1:1)},t.columnMetrics},crispCol:function(t,e,i,s){var n=this.chart,o=this.borderWidth,a=-(o%2?.5:0);return o=o%2?.5:1,n.inverted&&n.renderer.isVML&&(o+=1),this.options.crisp&&(i=Math.round(t+i)+a,t=Math.round(t)+a,i-=t),s=Math.round(e+s)+o,a=.5>=Math.abs(e)&&.5<s,e=Math.round(e)+o,s-=e,a&&s&&(--e,s+=1),{x:t,y:e,width:i,height:s}},translate:function(){var t=this,e=t.chart,s=t.options,n=t.dense=2>t.closestPointRange*t.xAxis.transA;n=t.borderWidth=h(s.borderWidth,n?0:1);var o=t.yAxis,a=s.threshold,r=t.translatedThreshold=o.getThreshold(a),c=h(s.minPointLength,5),d=t.getColumnMetrics(),p=d.width,u=t.barW=Math.max(p,1+2*n),f=t.pointXOffset=d.offset,g=t.dataMin,m=t.dataMax;e.inverted&&(r-=.5),s.pointPadding&&(u=Math.ceil(u)),l.prototype.translate.apply(t),t.points.forEach(function(s){var n=h(s.yBottom,r),l=999+Math.abs(n),d=p;l=Math.min(Math.max(-l,s.plotY),o.len+l);var v=s.plotX+f,y=u,x=Math.min(l,n),b=Math.max(l,n)-x;if(c&&Math.abs(b)<c){b=c;var w=!o.reversed&&!s.negative||o.reversed&&s.negative;s.y===a&&t.dataMax<=a&&o.min<a&&g!==m&&(w=!w),x=Math.abs(x-r)>c?n-c:r-(w?c:0)}i(s.options.pointWidth)&&(d=y=Math.ceil(s.options.pointWidth),v-=Math.round((d-p)/2)),s.barX=v,s.pointWidth=d,s.tooltipPos=e.inverted?[o.len+o.pos-e.plotLeft-l,t.xAxis.len-v-y/2,b]:[v+y/2,l+o.pos-e.plotTop,b],s.shapeType=t.pointClass.prototype.shapeType||"rect",s.shapeArgs=t.crispCol.apply(t,s.isNull?[v,r,y,0]:[v,x,y,b])})},getSymbol:t.noop,drawLegendSymbol:t.LegendSymbolMixin.drawRectangle,drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},pointAttribs:function(t,e){var i=this.options,s=this.pointAttrToOptions||{},n=s.stroke||"borderColor",a=s["stroke-width"]||"borderWidth",l=t&&t.color||this.color,c=t&&t[n]||i[n]||this.color||l,d=t&&t[a]||i[a]||this[a]||0;s=t&&t.options.dashStyle||i.dashStyle;var p=h(i.opacity,1);if(t&&this.zones.length){var u=t.getZone();l=t.options.color||u&&(u.color||t.nonZonedColor)||this.color,u&&(c=u.borderColor||c,s=u.dashStyle||s,d=u.borderWidth||d)}return e&&(t=r(i.states[e],t.options.states&&t.options.states[e]||{}),e=t.brightness,l=t.color||void 0!==e&&o(l).brighten(t.brightness).get()||l,c=t[n]||c,d=t[a]||d,s=t.dashStyle||s,p=h(t.opacity,p)),n={fill:l,stroke:c,"stroke-width":d,opacity:p},s&&(n.dashstyle=s),n},drawPoints:function(){var t,e=this,i=this.chart,n=e.options,o=i.renderer,a=n.animationLimit||250;e.points.forEach(function(h){var l=h.graphic,c=l&&i.pointCount<a?"animate":"attr";s(h.plotY)&&null!==h.y?(t=h.shapeArgs,l&&l.element.nodeName!==h.shapeType&&(l=l.destroy()),l?l[c](r(t)):h.graphic=l=o[h.shapeType](t).add(h.group||e.group),n.borderRadius&&l[c]({r:n.borderRadius}),i.styledMode||l[c](e.pointAttribs(h,h.selected&&"select")).shadow(!1!==h.allowShadow&&n.shadow,null,n.stacking&&!n.borderRadius),l.addClass(h.getClassName(),!0)):l&&(h.graphic=l.destroy())})},animate:function(t){var e=this,i=this.yAxis,s=e.options,o=this.chart.inverted,r={},h=o?"translateX":"translateY";if(c)if(t)r.scaleY=.001,t=Math.min(i.pos+i.len,Math.max(i.pos,i.toPixels(s.threshold))),o?r.translateX=t-i.len:r.translateY=t,e.clipBox&&e.setClip(),e.group.attr(r);else{var l=e.group.attr(h);e.group.animate({scaleY:1},a(n(e.options.animation),{step:function(t,s){r[h]=l+s.pos*(i.pos-l),e.group.attr(r)}})),e.animate=null}},remove:function(){var t=this,e=t.chart;e.hasRendered&&e.series.forEach(function(e){e.type===t.type&&(e.isDirty=!0)}),l.prototype.remove.apply(t,arguments)}})}),e(i,"parts/BarSeries.js",[i["parts/Globals.js"]],function(t){(t=t.seriesType)("bar","column",null,{inverted:!0})}),e(i,"parts/ScatterSeries.js",[i["parts/Globals.js"]],function(t){var e=t.Series;(0,t.seriesType)("scatter","line",{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">●</span> <span style="font-size: 10px"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){this.options.lineWidth&&e.prototype.drawGraph.call(this)},applyJitter:function(){var t=this,e=this.options.jitter,i=this.points.length;e&&this.points.forEach(function(s,n){["x","y"].forEach(function(o,a){var r="plot"+o.toUpperCase();if(e[o]&&!s.isNull){var h=t[o+"Axis"],l=e[o]*h.transA;if(h&&!h.isLog){var c=Math.max(0,s[r]-l);h=Math.min(h.len,s[r]+l),a=1e4*Math.sin(n+a*i),s[r]=c+(h-c)*(a-Math.floor(a)),"x"===o&&(s.clientX=s.plotX)}}})})}}),t.addEvent(e,"afterTranslate",function(){this.applyJitter&&this.applyJitter()})}),e(i,"mixins/centered-series.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.isNumber,s=t.deg2rad,n=t.pick,o=t.relativeLength;t.CenteredSeriesMixin={getCenter:function(){var t=this.options,e=this.chart,i=2*(t.slicedOffset||0),s=e.plotWidth-2*i;e=e.plotHeight-2*i;var a=t.center;a=[n(a[0],"50%"),n(a[1],"50%"),t.size||"100%",t.innerSize||0];var r,h=Math.min(s,e);for(r=0;4>r;++r){var l=a[r];t=2>r||2===r&&/%$/.test(l),a[r]=o(l,[s,e,h,a[2]][r])+(t?i:0)}return a[3]>a[2]&&(a[3]=a[2]),a},getStartAndEndRadians:function(t,e){return t=i(t)?t:0,e=i(e)&&e>t&&360>e-t?e:t+360,{start:s*(t+-90),end:s*(e+-90)}}}}),e(i,"parts/PieSeries.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isNumber,n=t.addEvent;e=t.CenteredSeriesMixin;var o=e.getStartAndEndRadians,a=t.merge,r=t.noop,h=t.pick,l=t.Point,c=t.Series,d=t.seriesType,p=t.fireEvent,u=t.setAnimation;d("pie","line",{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0,connectorShape:"fixedOffset",crookDistance:"70%"},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,states:{hover:{brightness:.1}}},{isCartesian:!1,requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttribs:t.seriesTypes.column.prototype.pointAttribs,animate:function(t){var e=this,i=e.points,s=e.startAngleRad;t||(i.forEach(function(t){var i=t.graphic,n=t.shapeArgs;i&&(i.attr({r:t.startR||e.center[3]/2,start:s,end:s}),i.animate({r:n.r,start:n.start,end:n.end},e.options.animation))}),e.animate=null)},hasData:function(){return!!this.processedXData.length},updateTotals:function(){var t,e=0,i=this.points,s=i.length,n=this.options.ignoreHiddenPoint;for(t=0;t<s;t++){var o=i[t];e+=n&&!o.visible?0:o.isNull?0:o.y}for(this.total=e,t=0;t<s;t++)o=i[t],o.percentage=0<e&&(o.visible||!n)?o.y/e*100:0,o.total=e},generatePoints:function(){c.prototype.generatePoints.call(this),this.updateTotals()},getX:function(t,e,i){var s=this.center,n=this.radii?this.radii[i.index]:s[2]/2;return s[0]+(e?-1:1)*Math.cos(Math.asin(Math.max(Math.min((t-s[1])/(n+i.labelDistance),1),-1)))*(n+i.labelDistance)+(0<i.labelDistance?(e?-1:1)*this.options.dataLabels.padding:0)},translate:function(e){this.generatePoints();var i=0,s=this.options,n=s.slicedOffset,a=n+(s.borderWidth||0),r=o(s.startAngle,s.endAngle),l=this.startAngleRad=r.start;r=(this.endAngleRad=r.end)-l;var c=this.points,d=s.dataLabels.distance;s=s.ignoreHiddenPoint;var u,f=c.length;for(e||(this.center=e=this.getCenter()),u=0;u<f;u++){var g=c[u],m=l+i*r;s&&!g.visible||(i+=g.percentage/100);var v=l+i*r;g.shapeType="arc",g.shapeArgs={x:e[0],y:e[1],r:e[2]/2,innerR:e[3]/2,start:Math.round(1e3*m)/1e3,end:Math.round(1e3*v)/1e3},g.labelDistance=h(g.options.dataLabels&&g.options.dataLabels.distance,d),g.labelDistance=t.relativeLength(g.labelDistance,g.shapeArgs.r),this.maxLabelDistance=Math.max(this.maxLabelDistance||0,g.labelDistance),v=(v+m)/2,v>1.5*Math.PI?v-=2*Math.PI:v<-Math.PI/2&&(v+=2*Math.PI),g.slicedTranslation={translateX:Math.round(Math.cos(v)*n),translateY:Math.round(Math.sin(v)*n)};var y=Math.cos(v)*e[2]/2,x=Math.sin(v)*e[2]/2;g.tooltipPos=[e[0]+.7*y,e[1]+.7*x],g.half=v<-Math.PI/2||v>Math.PI/2?1:0,g.angle=v,m=Math.min(a,g.labelDistance/5),g.labelPosition={natural:{x:e[0]+y+Math.cos(v)*g.labelDistance,y:e[1]+x+Math.sin(v)*g.labelDistance},final:{},alignment:0>g.labelDistance?"center":g.half?"right":"left",connectorPosition:{breakAt:{x:e[0]+y+Math.cos(v)*m,y:e[1]+x+Math.sin(v)*m},touchingSliceAt:{x:e[0]+y,y:e[1]+x}}}}p(this,"afterTranslate")},drawEmpty:function(){var t=this.options;if(0===this.total){var e=this.center[0],i=this.center[1];this.graph||(this.graph=this.chart.renderer.circle(e,i,0).addClass("highcharts-graph").add(this.group)),this.graph.animate({"stroke-width":t.borderWidth,cx:e,cy:i,r:this.center[2]/2,fill:t.fillColor||"none",stroke:t.color||"#cccccc"})}else this.graph&&(this.graph=this.graph.destroy())},redrawPoints:function(){var t,e,i,s,n=this,o=n.chart,r=o.renderer,h=n.options.shadow;this.drawEmpty(),!h||n.shadowGroup||o.styledMode||(n.shadowGroup=r.g("shadow").attr({zIndex:-1}).add(n.group)),n.points.forEach(function(l){var c={};if(e=l.graphic,!l.isNull&&e){if(s=l.shapeArgs,t=l.getTranslate(),!o.styledMode){var d=l.shadowGroup;h&&!d&&(d=l.shadowGroup=r.g("shadow").add(n.shadowGroup)),d&&d.attr(t),i=n.pointAttribs(l,l.selected&&"select")}l.delayedRendering?(e.setRadialReference(n.center).attr(s).attr(t),o.styledMode||e.attr(i).attr({"stroke-linejoin":"round"}).shadow(h,d),l.delayedRendering=!1):(e.setRadialReference(n.center),o.styledMode||a(!0,c,i),a(!0,c,s,t),e.animate(c)),e.attr({visibility:l.visible?"inherit":"hidden"}),e.addClass(l.getClassName())}else e&&(l.graphic=e.destroy())})},drawPoints:function(){var t=this.chart.renderer;this.points.forEach(function(e){e.graphic||(e.graphic=t[e.shapeType](e.shapeArgs).add(e.series.group),e.delayedRendering=!0)})},searchPoint:r,sortByAngle:function(t,e){t.sort(function(t,i){return void 0!==t.angle&&(i.angle-t.angle)*e})},drawLegendSymbol:t.LegendSymbolMixin.drawRectangle,getCenter:e.getCenter,getSymbol:r,drawGraph:null},{init:function(){l.prototype.init.apply(this,arguments);var t=this;t.name=h(t.name,"Slice");var e=function(e){t.slice("select"===e.type)};return n(t,"select",e),n(t,"unselect",e),t},isValid:function(){return s(this.y)&&0<=this.y},setVisible:function(t,e){var i=this,s=i.series,n=s.chart,o=s.options.ignoreHiddenPoint;e=h(e,o),t!==i.visible&&(i.visible=i.options.visible=t=void 0===t?!i.visible:t,s.options.data[s.data.indexOf(i)]=i.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(e){i[e]&&i[e][t?"show":"hide"](!0)}),i.legendItem&&n.legend.colorizeItem(i,t),t||"hover"!==i.state||i.setState(""),o&&(s.isDirty=!0),e&&n.redraw())},slice:function(t,e,s){var n=this.series;u(s,n.chart),h(e,!0),this.sliced=this.options.sliced=i(t)?t:!this.sliced,n.options.data[n.data.indexOf(this)]=this.options,this.graphic.animate(this.getTranslate()),this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},getTranslate:function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},haloPath:function(t){var e=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(e.x,e.y,e.r+t,e.r+t,{innerR:e.r-1,start:e.start,end:e.end})},connectorShapes:{fixedOffset:function(t,e,i){var s=e.breakAt;return e=e.touchingSliceAt,["M",t.x,t.y].concat(i.softConnector?["C",t.x+("left"===t.alignment?-5:5),t.y,2*s.x-e.x,2*s.y-e.y,s.x,s.y]:["L",s.x,s.y]).concat(["L",e.x,e.y])},straight:function(t,e){return e=e.touchingSliceAt,["M",t.x,t.y,"L",e.x,e.y]},crookedLine:function(e,i,s){i=i.touchingSliceAt;var n=this.series,o=n.center[0],a=n.chart.plotWidth,r=n.chart.plotLeft;n=e.alignment;var h=this.shapeArgs.r;return s=t.relativeLength(s.crookDistance,1),s="left"===n?o+h+(a+r-o-h)*(1-s):r+(o-h)*s,o=["L",s,e.y],("left"===n?s>e.x||s<i.x:s<e.x||s>i.x)&&(o=[]),["M",e.x,e.y].concat(o).concat(["L",i.x,i.y])}},getConnectorPath:function(){var t=this.labelPosition,e=this.series.options.dataLabels,i=e.connectorShape,s=this.connectorShapes;return s[i]&&(i=s[i]),i.call(this,{x:t.final.x,y:t.final.y,alignment:t.alignment},t.connectorPosition,e)}})}),e(i,"parts/DataLabels.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isArray,n=e.objectEach,o=e.splat,a=t.arrayMax,r=t.extend,h=t.format,l=t.merge;e=t.noop;var c=t.pick,d=t.relativeLength,p=t.Series,u=t.seriesTypes,f=t.stableSort;t.distribute=function(e,i,s){function n(t,e){return t.target-e.target}var o,a=!0,r=e,h=[],l=0,d=r.reducedLen||i;for(o=e.length;o--;)l+=e[o].size;if(l>d){for(f(e,function(t,e){return(e.rank||0)-(t.rank||0)}),l=o=0;l<=d;)l+=e[o].size,o++;h=e.splice(o-1,e.length)}for(f(e,n),e=e.map(function(t){return{size:t.size,targets:[t.target],align:c(t.align,.5)}});a;){for(o=e.length;o--;)a=e[o],l=(Math.min.apply(0,a.targets)+Math.max.apply(0,a.targets))/2,a.pos=Math.min(Math.max(0,l-a.size*a.align),i-a.size);for(o=e.length,a=!1;o--;)0<o&&e[o-1].pos+e[o-1].size>e[o].pos&&(e[o-1].size+=e[o].size,e[o-1].targets=e[o-1].targets.concat(e[o].targets),e[o-1].align=.5,e[o-1].pos+e[o-1].size>i&&(e[o-1].pos=i-e[o-1].size),e.splice(o,1),a=!0)}r.push.apply(r,h),o=0,e.some(function(e){var n=0;if(e.targets.some(function(){if(r[o].pos=e.pos+n,Math.abs(r[o].pos-r[o].target)>s)return r.slice(0,o+1).forEach(function(t){delete t.pos}),r.reducedLen=(r.reducedLen||i)-.1*i,r.reducedLen>.1*i&&t.distribute(r,i,s),!0;n+=r[o].size,o++}))return!0}),f(r,n)},p.prototype.drawDataLabels=function(){function e(t,e){var i=e.filter;return!i||(e=i.operator,t=t[i.property],i=i.value,">"===e&&t>i||"<"===e&&t<i||">="===e&&t>=i||"<="===e&&t<=i||"=="===e&&t==i||"==="===e&&t===i)}function a(t,e){var i,n=[];if(s(t)&&!s(e))n=t.map(function(t){return l(t,e)});else if(s(e)&&!s(t))n=e.map(function(e){return l(t,e)});else if(s(t)||s(e))for(i=Math.max(t.length,e.length);i--;)n[i]=l(t[i],e[i]);else n=l(t,e);return n}var r,d=this,p=d.chart,u=d.options,f=u.dataLabels,g=d.points,m=d.hasRendered||0,v=t.animObject(u.animation).duration,y=Math.min(v,200),x=!p.renderer.forExport&&c(f.defer,0<y),b=p.renderer;if(f=a(a(p.options.plotOptions&&p.options.plotOptions.series&&p.options.plotOptions.series.dataLabels,p.options.plotOptions&&p.options.plotOptions[d.type]&&p.options.plotOptions[d.type].dataLabels),f),t.fireEvent(this,"drawDataLabels"),s(f)||f.enabled||d._hasPointLabels){var w=d.plotGroup("dataLabelsGroup","data-labels",x&&!m?"hidden":"inherit",f.zIndex||6);x&&(w.attr({opacity:+m}),m||setTimeout(function(){var t=d.dataLabelsGroup;t&&(d.visible&&w.show(!0),t[u.animation?"animate":"attr"]({opacity:1},{duration:y}))},v-y)),g.forEach(function(t){r=o(a(f,t.dlOptions||t.options&&t.options.dataLabels)),r.forEach(function(s,o){var a=s.enabled&&(!t.isNull||t.dataLabelOnNull)&&e(t,s),r=t.dataLabels?t.dataLabels[o]:t.dataLabel,l=t.connectors?t.connectors[o]:t.connector,f=c(s.distance,t.labelDistance),g=!r;if(a){var m=t.getLabelConfig(),v=c(s[t.formatPrefix+"Format"],s.format);m=i(v)?h(v,m,p.time):(s[t.formatPrefix+"Formatter"]||s.formatter).call(m,s),v=s.style;var y=s.rotation;p.styledMode||(v.color=c(s.color,v.color,d.color,"#000000"),"contrast"===v.color&&(t.contrastColor=b.getContrast(t.color||d.color),v.color=!i(f)&&s.inside||0>f||u.stacking?t.contrastColor:"#000000"),u.cursor&&(v.cursor=u.cursor));var x={r:s.borderRadius||0,rotation:y,padding:s.padding,zIndex:1};p.styledMode||(x.fill=s.backgroundColor,x.stroke=s.borderColor,x["stroke-width"]=s.borderWidth),n(x,function(t,e){void 0===t&&delete x[e]})}!r||a&&i(m)?a&&i(m)&&(r?x.text=m:(t.dataLabels=t.dataLabels||[],r=t.dataLabels[o]=y?b.text(m,0,-9999).addClass("highcharts-data-label"):b.label(m,0,-9999,s.shape,null,null,s.useHTML,null,"data-label"),o||(t.dataLabel=r),r.addClass(" highcharts-data-label-color-"+t.colorIndex+" "+(s.className||"")+(s.useHTML?" highcharts-tracker":""))),r.options=s,r.attr(x),p.styledMode||r.css(v).shadow(s.shadow),r.added||r.add(w),s.textPath&&!s.useHTML&&r.setTextPath(t.getDataLabelPath&&t.getDataLabelPath(r)||t.graphic,s.textPath),d.alignDataLabel(t,r,s,null,g)):(t.dataLabel=t.dataLabel&&t.dataLabel.destroy(),t.dataLabels&&(1===t.dataLabels.length?delete t.dataLabels:delete t.dataLabels[o]),o||delete t.dataLabel,l&&(t.connector=t.connector.destroy(),t.connectors&&(1===t.connectors.length?delete t.connectors:delete t.connectors[o])))})})}t.fireEvent(this,"afterDrawDataLabels")},p.prototype.alignDataLabel=function(t,e,i,s,n){var o=this.chart,a=this.isCartesian&&o.inverted,h=c(t.dlBox&&t.dlBox.centerX,t.plotX,-9999),l=c(t.plotY,-9999),d=e.getBBox(),p=i.rotation,u=i.align,f=this.visible&&(t.series.forceDL||o.isInsidePlot(h,Math.round(l),a)||s&&o.isInsidePlot(h,a?s.x+1:s.y+s.height-1,a)),g="justify"===c(i.overflow,"justify");if(f){var m=o.renderer.fontMetrics(o.styledMode?void 0:i.style.fontSize,e).b;s=r({x:a?this.yAxis.len-l:h,y:Math.round(a?this.xAxis.len-h:l),width:0,height:0},s),r(i,{width:d.width,height:d.height}),p?(g=!1,h=o.renderer.rotCorr(m,p),h={x:s.x+i.x+s.width/2+h.x,y:s.y+i.y+{top:0,middle:.5,bottom:1}[i.verticalAlign]*s.height},e[n?"attr":"animate"](h).attr({align:u}),l=(p+720)%360,l=180<l&&360>l,
"left"===u?h.y-=l?d.height:0:"center"===u?(h.x-=d.width/2,h.y-=d.height/2):"right"===u&&(h.x-=d.width,h.y-=l?0:d.height),e.placed=!0,e.alignAttr=h):(e.align(i,null,s),h=e.alignAttr),g&&0<=s.height?this.justifyDataLabel(e,i,h,d,s,n):c(i.crop,!0)&&(f=o.isInsidePlot(h.x,h.y)&&o.isInsidePlot(h.x+d.width,h.y+d.height)),i.shape&&!p&&e[n?"attr":"animate"]({anchorX:a?o.plotWidth-t.plotY:t.plotX,anchorY:a?o.plotHeight-t.plotX:t.plotY})}f||(e.hide(!0),e.placed=!1)},p.prototype.justifyDataLabel=function(t,e,i,s,n,o){var a=this.chart,r=e.align,h=e.verticalAlign,l=t.box?0:t.padding||0,c=i.x+l;if(0>c){"right"===r?(e.align="left",e.inside=!0):e.x=-c;var d=!0}return c=i.x+s.width-l,c>a.plotWidth&&("left"===r?(e.align="right",e.inside=!0):e.x=a.plotWidth-c,d=!0),c=i.y+l,0>c&&("bottom"===h?(e.verticalAlign="top",e.inside=!0):e.y=-c,d=!0),c=i.y+s.height-l,c>a.plotHeight&&("top"===h?(e.verticalAlign="bottom",e.inside=!0):e.y=a.plotHeight-c,d=!0),d&&(t.placed=!o,t.align(e,null,n)),d},u.pie&&(u.pie.prototype.dataLabelPositioners={radialDistributionY:function(t){return t.top+t.distributeBox.pos},radialDistributionX:function(t,e,i,s){return t.getX(i<e.top+2||i>e.bottom-2?s:i,e.half,e)},justify:function(t,e,i){return i[0]+(t.half?-1:1)*(e+t.labelDistance)},alignToPlotEdges:function(t,e,i,s){return t=t.getBBox().width,e?t+s:i-t-s},alignToConnectors:function(t,e,i,s){var n,o=0;return t.forEach(function(t){(n=t.dataLabel.getBBox().width)>o&&(o=n)}),e?o+s:i-o-s}},u.pie.prototype.drawDataLabels=function(){var e,s,n,o,r,h,d,u,f,g,m,v,y=this,x=y.data,b=y.chart,w=y.options.dataLabels,k=w.connectorPadding,M=b.plotWidth,S=b.plotHeight,T=b.plotLeft,C=Math.round(b.chartWidth/3),A=y.center,D=A[2]/2,E=A[1],O=[[],[]],L=[0,0,0,0],I=y.dataLabelPositioners;y.visible&&(w.enabled||y._hasPointLabels)&&(x.forEach(function(t){t.dataLabel&&t.visible&&t.dataLabel.shortened&&(t.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),t.dataLabel.shortened=!1)}),p.prototype.drawDataLabels.apply(y),x.forEach(function(t){t.dataLabel&&(t.visible?(O[t.half].push(t),t.dataLabel._pos=null,!i(w.style.width)&&!i(t.options.dataLabels&&t.options.dataLabels.style&&t.options.dataLabels.style.width)&&t.dataLabel.getBBox().width>C&&(t.dataLabel.css({width:.7*C}),t.dataLabel.shortened=!0)):(t.dataLabel=t.dataLabel.destroy(),t.dataLabels&&1===t.dataLabels.length&&delete t.dataLabels))}),O.forEach(function(s,n){var a,l=s.length,p=[];if(l){if(y.sortByAngle(s,n-.5),0<y.maxLabelDistance){var v=Math.max(0,E-D-y.maxLabelDistance),x=Math.min(E+D+y.maxLabelDistance,b.plotHeight);s.forEach(function(t){0<t.labelDistance&&t.dataLabel&&(t.top=Math.max(0,E-D-t.labelDistance),t.bottom=Math.min(E+D+t.labelDistance,b.plotHeight),a=t.dataLabel.getBBox().height||21,t.distributeBox={target:t.labelPosition.natural.y-t.top+a/2,size:a,rank:t.y},p.push(t.distributeBox))}),v=x+a-v,t.distribute(p,v,v/5)}for(m=0;m<l;m++){if(e=s[m],h=e.labelPosition,o=e.dataLabel,g=!1===e.visible?"hidden":"inherit",f=v=h.natural.y,p&&i(e.distributeBox)&&(void 0===e.distributeBox.pos?g="hidden":(d=e.distributeBox.size,f=I.radialDistributionY(e))),delete e.positionIndex,w.justify)u=I.justify(e,D,A);else switch(w.alignTo){case"connectors":u=I.alignToConnectors(s,n,M,T);break;case"plotEdges":u=I.alignToPlotEdges(o,n,M,T);break;default:u=I.radialDistributionX(y,e,f,v)}o._attr={visibility:g,align:h.alignment},o._pos={x:u+w.x+({left:k,right:-k}[h.alignment]||0),y:f+w.y-10},h.final.x=u,h.final.y=f,c(w.crop,!0)&&(r=o.getBBox().width,v=null,u-r<k&&1===n?(v=Math.round(r-u+k),L[3]=Math.max(v,L[3])):u+r>M-k&&0===n&&(v=Math.round(u+r-M+k),L[1]=Math.max(v,L[1])),0>f-d/2?L[0]=Math.max(Math.round(d/2-f),L[0]):f+d/2>S&&(L[2]=Math.max(Math.round(f+d/2-S),L[2])),o.sideOverflow=v)}}}),0===a(L)||this.verifyDataLabelOverflow(L))&&(this.placeDataLabels(),this.points.forEach(function(t){if(v=l(w,t.options.dataLabels),s=c(v.connectorWidth,1)){var e;n=t.connector,(o=t.dataLabel)&&o._pos&&t.visible&&0<t.labelDistance?(g=o._attr.visibility,(e=!n)&&(t.connector=n=b.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+t.colorIndex+(t.className?" "+t.className:"")).add(y.dataLabelsGroup),b.styledMode||n.attr({"stroke-width":s,stroke:v.connectorColor||t.color||"#666666"})),n[e?"attr":"animate"]({d:t.getConnectorPath()}),n.attr("visibility",g)):n&&(t.connector=n.destroy())}}))},u.pie.prototype.placeDataLabels=function(){this.points.forEach(function(t){var e,i=t.dataLabel;i&&t.visible&&((e=i._pos)?(i.sideOverflow&&(i._attr.width=Math.max(i.getBBox().width-i.sideOverflow,0),i.css({width:i._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),i.shortened=!0),i.attr(i._attr),i[i.moved?"animate":"attr"](e),i.moved=!0):i&&i.attr({y:-9999})),delete t.distributeBox},this)},u.pie.prototype.alignDataLabel=e,u.pie.prototype.verifyDataLabelOverflow=function(t){var e=this.center,i=this.options,s=i.center,n=i.minSize||80,o=null!==i.size;if(!o){if(null!==s[0])var a=Math.max(e[2]-Math.max(t[1],t[3]),n);else a=Math.max(e[2]-t[1]-t[3],n),e[0]+=(t[3]-t[1])/2;null!==s[1]?a=Math.max(Math.min(a,e[2]-Math.max(t[0],t[2])),n):(a=Math.max(Math.min(a,e[2]-t[0]-t[2]),n),e[1]+=(t[0]-t[2])/2),a<e[2]?(e[2]=a,e[3]=Math.min(d(i.innerSize||0,a),a),this.translate(e),this.drawDataLabels&&this.drawDataLabels()):o=!0}return o}),u.column&&(u.column.prototype.alignDataLabel=function(t,e,i,s,n){var o=this.chart.inverted,a=t.series,r=t.dlBox||t.shapeArgs,h=c(t.below,t.plotY>c(this.translatedThreshold,a.yAxis.len)),d=c(i.inside,!!this.options.stacking);r&&(s=l(r),0>s.y&&(s.height+=s.y,s.y=0),r=s.y+s.height-a.yAxis.len,0<r&&(s.height-=r),o&&(s={x:a.yAxis.len-s.y-s.height,y:a.xAxis.len-s.x-s.width,width:s.height,height:s.width}),d||(o?(s.x+=h?0:s.width,s.width=0):(s.y+=h?s.height:0,s.height=0))),i.align=c(i.align,!o||d?"center":h?"right":"left"),i.verticalAlign=c(i.verticalAlign,o||d?"middle":h?"top":"bottom"),p.prototype.alignDataLabel.call(this,t,e,i,s,n),i.inside&&t.contrastColor&&e.css({color:t.contrastColor})})}),e(i,"modules/overlapping-datalabels.src.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.isArray,s=e.objectEach;e=t.Chart;var n=t.pick,o=t.addEvent,a=t.fireEvent;o(e,"render",function(){var t=[];(this.labelCollectors||[]).forEach(function(e){t=t.concat(e())}),(this.yAxis||[]).forEach(function(e){e.options.stackLabels&&!e.options.stackLabels.allowOverlap&&s(e.stacks,function(e){s(e,function(e){t.push(e.label)})})}),(this.series||[]).forEach(function(e){var s=e.options.dataLabels;e.visible&&(!1!==s.enabled||e._hasPointLabels)&&e.points.forEach(function(e){e.visible&&(i(e.dataLabels)?e.dataLabels:e.dataLabel?[e.dataLabel]:[]).forEach(function(i){var s=i.options;i.labelrank=n(s.labelrank,e.labelrank,e.shapeArgs&&e.shapeArgs.height),s.allowOverlap||t.push(i)})})}),this.hideOverlappingLabels(t)}),e.prototype.hideOverlappingLabels=function(t){var e,i,s,n=this,o=t.length,r=n.renderer,h=function(t){var e=t.box?0:t.padding||0,i=0;if(t&&(!t.alignAttr||t.placed)){var s=t.alignAttr||{x:t.attr("x"),y:t.attr("y")},n=t.parentGroup;return t.width||(i=t.getBBox(),t.width=i.width,t.height=i.height,i=r.fontMetrics(null,t.element).h),{x:s.x+(n.translateX||0)+e,y:s.y+(n.translateY||0)+e-i,width:t.width-2*e,height:t.height-2*e}}};for(i=0;i<o;i++)(e=t[i])&&(e.oldOpacity=e.opacity,e.newOpacity=1,e.absoluteBox=h(e));for(t.sort(function(t,e){return(e.labelrank||0)-(t.labelrank||0)}),i=0;i<o;i++){var l=(h=t[i])&&h.absoluteBox;for(e=i+1;e<o;++e){var c=(s=t[e])&&s.absoluteBox;!l||!c||h===s||0===h.newOpacity||0===s.newOpacity||c.x>l.x+l.width||c.x+c.width<l.x||c.y>l.y+l.height||c.y+c.height<l.y||((h.labelrank<s.labelrank?h:s).newOpacity=0)}}t.forEach(function(t){var e;if(t){var i=t.newOpacity;t.oldOpacity!==i&&(t.alignAttr&&t.placed?(i?t.show(!0):e=function(){t.hide(!0),t.placed=!1},t.alignAttr.opacity=i,t[t.isOld?"animate":"attr"](t.alignAttr,null,e),a(n,"afterHideOverlappingLabels")):t.attr({opacity:i})),t.isOld=!0}})}}),e(i,"parts/Interaction.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.defined,s=e.isArray,n=e.isObject,o=e.objectEach,a=t.addEvent;e=t.Chart;var r=t.createElement,h=t.css,l=t.defaultOptions,c=t.defaultPlotOptions,d=t.extend,p=t.fireEvent,u=t.hasTouch,f=t.Legend,g=t.merge,m=t.pick,v=t.Point,y=t.Series,x=t.seriesTypes,b=t.svg,w=t.TrackerMixin={drawTrackerPoint:function(){var t,e=this,i=e.chart,n=i.pointer,o=function(t){var e=n.getPointFromEvent(t);void 0!==e&&(n.isDirectTouch=!0,e.onMouseOver(t))};e.points.forEach(function(e){t=s(e.dataLabels)?e.dataLabels:e.dataLabel?[e.dataLabel]:[],e.graphic&&(e.graphic.element.point=e),t.forEach(function(t){t.div?t.div.point=e:t.element.point=e})}),e._hasTracking||(e.trackerGroups.forEach(function(t){e[t]&&(e[t].addClass("highcharts-tracker").on("mouseover",o).on("mouseout",function(t){n.onTrackerMouseOut(t)}),u&&e[t].on("touchstart",o),!i.styledMode&&e.options.cursor&&e[t].css(h).css({cursor:e.options.cursor}))}),e._hasTracking=!0),p(this,"afterDrawTracker")},drawTrackerGraph:function(){var t,e=this,i=e.options,s=i.trackByArea,n=[].concat(s?e.areaPath:e.graphPath),o=n.length,a=e.chart,r=a.pointer,h=a.renderer,l=a.options.tooltip.snap,c=e.tracker,d=function(){a.hoverSeries!==e&&e.onMouseOver()},f="rgba(192,192,192,"+(b?1e-4:.002)+")";if(o&&!s)for(t=o+1;t--;)"M"===n[t]&&n.splice(t+1,0,n[t+1]-l,n[t+2],"L"),(t&&"M"===n[t]||t===o)&&n.splice(t,0,"L",n[t-2]+l,n[t-1]);c?c.attr({d:n}):e.graph&&(e.tracker=h.path(n).attr({visibility:e.visible?"visible":"hidden",zIndex:2}).addClass(s?"highcharts-tracker-area":"highcharts-tracker-line").add(e.group),a.styledMode||e.tracker.attr({"stroke-linejoin":"round",stroke:f,fill:s?f:"none","stroke-width":e.graph.strokeWidth()+(s?0:2*l)}),[e.tracker,e.markerGroup].forEach(function(t){t.addClass("highcharts-tracker").on("mouseover",d).on("mouseout",function(t){r.onTrackerMouseOut(t)}),i.cursor&&!a.styledMode&&t.css({cursor:i.cursor}),u&&t.on("touchstart",d)})),p(this,"afterDrawTracker")}};x.column&&(x.column.prototype.drawTracker=w.drawTrackerPoint),x.pie&&(x.pie.prototype.drawTracker=w.drawTrackerPoint),x.scatter&&(x.scatter.prototype.drawTracker=w.drawTrackerPoint),d(f.prototype,{setItemEvents:function(t,e,i){var s=this,n=s.chart.renderer.boxWrapper,o=t instanceof v,a="highcharts-legend-"+(o?"point":"series")+"-active",r=s.chart.styledMode;(i?e:t.legendGroup).on("mouseover",function(){t.visible&&s.allItems.forEach(function(e){t!==e&&e.setState("inactive",!o)}),t.setState("hover"),t.visible&&n.addClass(a),r||e.css(s.options.itemHoverStyle)}).on("mouseout",function(){s.chart.styledMode||e.css(g(t.visible?s.itemStyle:s.itemHiddenStyle)),s.allItems.forEach(function(e){t!==e&&e.setState("",!o)}),n.removeClass(a),t.setState()}).on("click",function(e){var i=function(){t.setVisible&&t.setVisible(),s.allItems.forEach(function(e){t!==e&&e.setState(t.visible?"inactive":"",!o)})};n.removeClass(a),e={browserEvent:e},t.firePointEvent?t.firePointEvent("legendItemClick",e,i):p(t,"legendItemClick",e,i)})},createCheckboxForItem:function(t){t.checkbox=r("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:t.selected,defaultChecked:t.selected},this.options.itemCheckboxStyle,this.chart.container),a(t.checkbox,"click",function(e){p(t.series||t,"checkboxClick",{checked:e.target.checked,item:t},function(){t.select()})})}}),d(e.prototype,{showResetZoom:function(){function t(){e.zoomOut()}var e=this,i=l.lang,s=e.options.chart.resetZoomButton,n=s.theme,o=n.states,a="chart"===s.relativeTo||"spaceBox"===s.relativeTo?null:"plotBox";p(this,"beforeShowResetZoom",null,function(){e.resetZoomButton=e.renderer.button(i.resetZoom,null,null,t,n,o&&o.hover).attr({align:s.position.align,title:i.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(s.position,!1,a)}),p(this,"afterShowResetZoom")},zoomOut:function(){p(this,"selection",{resetSelection:!0},this.zoom)},zoom:function(t){var e,s=this,o=s.pointer,a=!1,r=s.inverted?o.mouseDownX:o.mouseDownY;!t||t.resetSelection?(s.axes.forEach(function(t){e=t.zoom()}),o.initiated=!1):t.xAxis.concat(t.yAxis).forEach(function(t){var n=t.axis,h=s.inverted?n.left:n.top,l=s.inverted?h+n.width:h+n.height,c=n.isXAxis,d=!1;(!c&&r>=h&&r<=l||c||!i(r))&&(d=!0),o[c?"zoomX":"zoomY"]&&d&&(e=n.zoom(t.min,t.max),n.displayBtn&&(a=!0))});var h=s.resetZoomButton;a&&!h?s.showResetZoom():!a&&n(h)&&(s.resetZoomButton=h.destroy()),e&&s.redraw(m(s.options.chart.animation,t&&t.animation,100>s.pointCount))},pan:function(t,e){var i,s=this,n=s.hoverPoints;p(this,"pan",{originalEvent:t},function(){n&&n.forEach(function(t){t.setState()}),("xy"===e?[1,0]:[1]).forEach(function(e){e=s[e?"xAxis":"yAxis"][0];var n=e.horiz,o=t[n?"chartX":"chartY"];n=n?"mouseDownX":"mouseDownY";var a=s[n],r=(e.pointRange||0)/2,h=e.reversed&&!s.inverted||!e.reversed&&s.inverted?-1:1,l=e.getExtremes(),c=e.toValue(a-o,!0)+r*h;h=e.toValue(a+e.len-o,!0)-r*h;var d=h<c;a=d?h:c,c=d?c:h,h=Math.min(l.dataMin,r?l.min:e.toValue(e.toPixels(l.min)-e.minPixelPadding)),r=Math.max(l.dataMax,r?l.max:e.toValue(e.toPixels(l.max)+e.minPixelPadding)),d=h-a,0<d&&(c+=d,a=h),d=c-r,0<d&&(c=r,a-=d),e.series.length&&a!==l.min&&c!==l.max&&(e.setExtremes(a,c,!1,!1,{trigger:"pan"}),i=!0),s[n]=o}),i&&s.redraw(!1),h(s.container,{cursor:"move"})})}}),d(v.prototype,{select:function(t,e){var i=this,s=i.series,n=s.chart;this.selectedStaging=t=m(t,!i.selected),i.firePointEvent(t?"select":"unselect",{accumulate:e},function(){i.selected=i.options.selected=t,s.options.data[s.data.indexOf(i)]=i.options,i.setState(t&&"select"),e||n.getSelectedPoints().forEach(function(t){var e=t.series;t.selected&&t!==i&&(t.selected=t.options.selected=!1,e.options.data[e.data.indexOf(t)]=t.options,t.setState(n.hoverPoints&&e.options.inactiveOtherPoints?"inactive":""),t.firePointEvent("unselect"))})}),delete this.selectedStaging},onMouseOver:function(t){var e=this.series.chart,i=e.pointer;t=t?i.normalize(t):i.getChartCoordinatesFromPoint(this,e.inverted),i.runPointActions(t,this)},onMouseOut:function(){var t=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(t.hoverPoints||[]).forEach(function(t){t.setState()}),t.hoverPoints=t.hoverPoint=null},importEvents:function(){if(!this.hasImportedEvents){var e=this,i=g(e.series.options.point,e.options).events;e.events=i,o(i,function(i,s){t.isFunction(i)&&a(e,s,i)}),this.hasImportedEvents=!0}},setState:function(t,e){var i,s=this.series,n=this.state,o=s.options.states[t||"normal"]||{},a=c[s.type].marker&&s.options.marker,r=a&&!1===a.enabled,h=a&&a.states&&a.states[t||"normal"]||{},l=!1===h.enabled,u=s.stateMarkerGraphic,f=this.marker||{},g=s.chart,v=s.halo,y=a&&s.markerAttribs;if(!((t=t||"")===this.state&&!e||this.selected&&"select"!==t||!1===o.enabled||t&&(l||r&&!1===h.enabled)||t&&f.states&&f.states[t]&&!1===f.states[t].enabled)){if(this.state=t,y&&(i=s.markerAttribs(this,t)),this.graphic){if(n&&this.graphic.removeClass("highcharts-point-"+n),t&&this.graphic.addClass("highcharts-point-"+t),!g.styledMode){var x=s.pointAttribs(this,t),b=m(g.options.chart.animation,o.animation);s.options.inactiveOtherPoints&&((this.dataLabels||[]).forEach(function(t){t&&t.animate({opacity:x.opacity},b)}),this.connector&&this.connector.animate({opacity:x.opacity},b)),this.graphic.animate(x,b)}i&&this.graphic.animate(i,m(g.options.chart.animation,h.animation,a.animation)),u&&u.hide()}else t&&h&&(n=f.symbol||s.symbol,u&&u.currentSymbol!==n&&(u=u.destroy()),i&&(u?u[e?"animate":"attr"]({x:i.x,y:i.y}):n&&(s.stateMarkerGraphic=u=g.renderer.symbol(n,i.x,i.y,i.width,i.height).add(s.markerGroup),u.currentSymbol=n)),!g.styledMode&&u&&u.attr(s.pointAttribs(this,t))),u&&(u[t&&this.isInside?"show":"hide"](),u.element.point=this);t=o.halo,o=(u=this.graphic||u)&&u.visibility||"inherit",t&&t.size&&u&&"hidden"!==o?(v||(s.halo=v=g.renderer.path().add(u.parentGroup)),v.show()[e?"animate":"attr"]({d:this.haloPath(t.size)}),v.attr({class:"highcharts-halo highcharts-color-"+m(this.colorIndex,s.colorIndex)+(this.className?" "+this.className:""),visibility:o,zIndex:-1}),v.point=this,g.styledMode||v.attr(d({fill:this.color||s.color,"fill-opacity":t.opacity},t.attributes))):v&&v.point&&v.point.haloPath&&v.animate({d:v.point.haloPath(0)},null,v.hide),p(this,"afterSetState")}},haloPath:function(t){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-t,this.plotY-t,2*t,2*t)}}),d(y.prototype,{onMouseOver:function(){var t=this.chart,e=t.hoverSeries;e&&e!==this&&e.onMouseOut(),this.options.events.mouseOver&&p(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this},onMouseOut:function(){var t=this.options,e=this.chart,i=e.tooltip,s=e.hoverPoint;e.hoverSeries=null,s&&s.onMouseOut(),this&&t.events.mouseOut&&p(this,"mouseOut"),!i||this.stickyTracking||i.shared&&!this.noSharedTooltip||i.hide(),e.series.forEach(function(t){t.setState("",!0)})},setState:function(t,e){var i=this,s=i.options,n=i.graph,o=s.inactiveOtherPoints,a=s.states,r=s.lineWidth,h=s.opacity,l=m(a[t||"normal"]&&a[t||"normal"].animation,i.chart.options.chart.animation);if(s=0,t=t||"",i.state!==t&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(e){e&&(i.state&&e.removeClass("highcharts-series-"+i.state),t&&e.addClass("highcharts-series-"+t))}),i.state=t,!i.chart.styledMode)){if(a[t]&&!1===a[t].enabled)return;if(t&&(r=a[t].lineWidth||r+(a[t].lineWidthPlus||0),h=m(a[t].opacity,h)),n&&!n.dashstyle)for(a={"stroke-width":r},n.animate(a,l);i["zone-graph-"+s];)i["zone-graph-"+s].attr(a),s+=1;o||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(t){t&&t.animate({opacity:h},l)})}e&&o&&i.points&&i.setAllPointsToState(t)},setAllPointsToState:function(t){this.points.forEach(function(e){e.setState&&e.setState(t)})},setVisible:function(t,e){var i=this,s=i.chart,n=i.legendItem,o=s.options.chart.ignoreHiddenSeries,a=i.visible,r=(i.visible=t=i.options.visible=i.userOptions.visible=void 0===t?!a:t)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(t){i[t]&&i[t][r]()}),s.hoverSeries!==i&&(s.hoverPoint&&s.hoverPoint.series)!==i||i.onMouseOut(),n&&s.legend.colorizeItem(i,t),i.isDirty=!0,i.options.stacking&&s.series.forEach(function(t){t.options.stacking&&t.visible&&(t.isDirty=!0)}),i.linkedSeries.forEach(function(e){e.setVisible(t,!1)}),o&&(s.isDirtyBox=!0),p(i,r),!1!==e&&s.redraw()},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(t){this.selected=t=this.options.selected=void 0===t?!this.selected:t,this.checkbox&&(this.checkbox.checked=t),p(this,t?"select":"unselect")},drawTracker:w.drawTrackerGraph})}),e(i,"parts/Responsive.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){var i=e.isArray,s=e.isObject,n=e.objectEach,o=e.splat;e=t.Chart;var a=t.pick;e.prototype.setResponsive=function(e,i){var s=this.options.responsive,n=[],o=this.currentResponsive;!i&&s&&s.rules&&s.rules.forEach(function(e){void 0===e._id&&(e._id=t.uniqueKey()),this.matchResponsiveRule(e,n)},this),i=t.merge.apply(0,n.map(function(e){return t.find(s.rules,function(t){return t._id===e}).chartOptions})),i.isResponsiveOptions=!0,(n=n.toString()||void 0)!==(o&&o.ruleIds)&&(o&&this.update(o.undoOptions,e,!0),n?(o=this.currentOptions(i),o.isResponsiveOptions=!0,this.currentResponsive={ruleIds:n,mergedOptions:i,undoOptions:o},this.update(i,e,!0)):this.currentResponsive=void 0)},e.prototype.matchResponsiveRule=function(t,e){var i=t.condition;(i.callback||function(){return this.chartWidth<=a(i.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=a(i.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=a(i.minWidth,0)&&this.chartHeight>=a(i.minHeight,0)}).call(this)&&e.push(t._id)},e.prototype.currentOptions=function(t){function e(t,r,h,l){var c;n(t,function(t,n){if(!l&&-1<a.collectionsWithUpdate.indexOf(n))for(t=o(t),h[n]=[],c=0;c<t.length;c++)r[n][c]&&(h[n][c]={},e(t[c],r[n][c],h[n][c],l+1));else s(t)?(h[n]=i(t)?[]:{},e(t,r[n]||{},h[n],l+1)):h[n]=void 0===r[n]?null:r[n]})}var a=this,r={};return e(t,this.options,r,0),r}}),e(i,"masters/highcharts.src.js",[i["parts/Globals.js"],i["parts/Utilities.js"]],function(t,e){return(0,t.extend)(t,{attr:e.attr,defined:e.defined,erase:e.erase,isArray:e.isArray,isClass:e.isClass,isDOMElement:e.isDOMElement,isNumber:e.isNumber,isObject:e.isObject,isString:e.isString,objectEach:e.objectEach,pInt:e.pInt,splat:e.splat}),t}),i["masters/highcharts.src.js"]._modules=i,i["masters/highcharts.src.js"]}),Highcharts.c={colors:"#ED8C2B #88A825 #CF4A30 #5E3969 #914611 #DB843D #92A8CD #A47D7C #1E2C93".split(" "),chart:{backgroundColor:"transparent",borderWidth:1,borderColor:"#CCCCCC",borderRadius:0,plotBackgroundColor:"transparent",plotShadow:!1,plotBorderWidth:1,style:{fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif",fontSize:"12px",fontWeight:"bold",color:"#333333"}},tooltip:{style:{color:"#333333",font:"14px Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},title:{style:{color:"#333333",font:"bold 14px Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},subtitle:{style:{color:"#333333",font:"12px Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},xAxis:{gridLineWidth:0,lineColor:"#000",tickColor:"#000",labels:{style:{color:"#000",font:"11px Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},title:{style:{color:"#333333",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}}},yAxis:{gridLineWidth:1,lineColor:"#000",lineWidth:1,tickWidth:1,tickColor:"#000",labels:{style:{color:"#333333",font:"12px Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},title:{style:{color:"#333333",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}}},credits:{enabled:!1},legend:{borderColor:"#27286f",borderWidth:1,style:{color:"#333333",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"},itemStyle:{color:"#333333",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"},itemHoverStyle:{color:"#333333",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"},itemHiddenStyle:{color:"gray",fontWeight:"bold",fontSize:"12px",fontFamily:"Lato, Helvetica Neue, Helvetica, Arial, sans-serif"}},labels:{style:{color:"#333333"}}},Highcharts.setOptions(Highcharts.c);
//# sourceMappingURL=commoncalculator.js.map