(function(n){if(typeof define=="function"&&define.amd)define(n);else if(typeof exports=="object")module.exports=n();else{var i=window.Cookies,t=window.Cookies=n();t.noConflict=function(){return window.Cookies=i,t}}})(function(){function n(){for(var n=0,r={},t,i;n<arguments.length;n++){t=arguments[n];for(i in t)r[i]=t[i]}return r}function t(i){function r(t,u,f){var o,s;if(arguments.length>1){f=n({path:"/"},r.defaults,f);typeof f.expires=="number"&&(s=new Date,s.setMilliseconds(s.getMilliseconds()+f.expires*864e5),f.expires=s);try{o=JSON.stringify(u);/^[\{\[]/.test(o)&&(u=o)}catch(y){}return u=encodeURIComponent(String(u)),u=u.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)),t=t.replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent),t=t.replace(/[\(\)]/g,escape),document.cookie=[t,"=",u,f.expires&&"; expires="+f.expires.toUTCString(),f.path&&"; path="+f.path,f.domain&&"; domain="+f.domain,f.secure?"; secure":""].join("")}t||(o={});for(var l=document.cookie?document.cookie.split("; "):[],a=/(%[0-9A-Z]{2})+/g,h=0;h<l.length;h++){var v=l[h].split("="),c=v[0].replace(a,decodeURIComponent),e=v.slice(1).join("=");e.charAt(0)==='"'&&(e=e.slice(1,-1));try{if(e=i&&i(e,c)||e.replace(a,decodeURIComponent),this.json)try{e=JSON.parse(e)}catch(y){}if(t===c){o=e;break}t||(o[c]=e)}catch(y){}}return o}return r.get=r.set=r,r.getJSON=function(){return r.apply({json:!0},[].slice.call(arguments))},r.defaults={},r.remove=function(t,i){r(t,"",n(i,{expires:-1}))},r.withConverter=t,r}return t()}),function(n){var i={inEffect:{opacity:"show"},inEffectDuration:600,stayTime:3e3,text:"",sticky:!1,type:"info",position:"top-right",closeText:"",close:null},t={init:function(t){t&&n.extend(i,t)},showToast:function(t){var r={};n.extend(r,i,t);var f=n(".toast-container").length?n(".toast-container"):n("<div><\/div>").addClass("toast-container").addClass("toast-position-"+r.position).appendTo("body"),e=n("<div><\/div>").addClass("toast-item-wrapper"),u=n("<div><\/div>").hide().addClass("toast-item toast-type-"+r.type).appendTo(f).html(n("<p>").append(r.text)).animate(r.inEffect,r.inEffectDuration).wrap(e),o=n("<div><\/div>").addClass("toast-item-image").addClass("toast-item-image-"+r.type).prependTo(u);return navigator.userAgent.match(/MSIE 6/i)&&f.css({top:document.documentElement.scrollTop}),r.sticky?n("<div><\/div>").addClass("toast-item-close").prependTo(u).html(r.closeText).click(function(){n().toast("removeToast",u,r)}):setTimeout(function(){n().toast("removeToast",u,r)},r.stayTime),u},info:function(t){var i=t.text?t:{text:t};return i.type="info",n().toast("showToast",i)},success:function(t){var i=t.text?t:{text:t};return i.type="success",n().toast("showToast",i)},error:function(t){var i=t.text?t:{text:t};return i.type="error",n().toast("showToast",i)},warning:function(t){var i=t.text?t:{text:t};return i.type="warning",n().toast("showToast",i)},removeToast:function(n,t){n.animate({opacity:"0"},600,function(){n.parent().animate({height:"0px"},300,function(){n.parent().remove()})});t&&t.close!==null&&t.close()}};n.fn.toast=function(i){if(t[i])return t[i].apply(this,Array.prototype.slice.call(arguments,1));if(typeof i!="object"&&i)n.error("Method "+i+" does not exist in toast");else return t.init.apply(this,arguments)}}(jQuery);window.Modernizr=function(n,t,i){function c(n){h.cssText=n}function ft(n,t){return c(l.join(n+";")+(t||""))}function e(n,t){return typeof n===t}function y(n,t){return!!~(""+n).indexOf(t)}function nt(n,t){var u,r;for(u in n)if(r=n[u],!y(r,"-")&&h[r]!==i)return t=="pfx"?r:!0;return!1}function et(n,t,r){var f,u;for(f in n)if(u=t[n[f]],u!==i)return r===!1?n[f]:e(u,"function")?u.bind(r||t):u;return!1}function o(n,t,i){var r=n.charAt(0).toUpperCase()+n.slice(1),u=(n+" "+rt.join(r+" ")+r).split(" ");return e(t,"string")||e(t,"undefined")?nt(u,t):(u=(n+" "+ut.join(r+" ")+r).split(" "),et(u,t,i))}var r={},p=!0,f=t.documentElement,s="modernizr",tt=t.createElement(s),h=tt.style,ot,st={}.toString,l=" -webkit- -moz- -o- -ms- ".split(" "),it="Webkit Moz O ms",rt=it.split(" "),ut=it.toLowerCase().split(" "),u={},w=[],b=w.slice,a,k=function(n,i,r,u){var l,a,c,v,e=t.createElement("div"),h=t.body,o=h||t.createElement("body");if(parseInt(r,10))while(r--)c=t.createElement("div"),c.id=u?u[r]:s+(r+1),e.appendChild(c);return l=["&#173;",'<style id="s',s,'">',n,"<\/style>"].join(""),e.id=s,(h?e:o).innerHTML+=l,o.appendChild(e),h||(o.style.background="",o.style.overflow="hidden",v=f.style.overflow,f.style.overflow="hidden",f.appendChild(o)),a=i(e,n),h?e.parentNode.removeChild(e):(o.parentNode.removeChild(o),f.style.overflow=v),!!a},d={}.hasOwnProperty,g,v;g=!e(d,"undefined")&&!e(d.call,"undefined")?function(n,t){return d.call(n,t)}:function(n,t){return t in n&&e(n.constructor.prototype[t],"undefined")};Function.prototype.bind||(Function.prototype.bind=function(n){var t=this,i,r;if(typeof t!="function")throw new TypeError;return i=b.call(arguments,1),r=function(){var f,e,u;return this instanceof r?(f=function(){},f.prototype=t.prototype,e=new f,u=t.apply(e,i.concat(b.call(arguments))),Object(u)===u?u:e):t.apply(n,i.concat(b.call(arguments)))},r});u.touch=function(){var i;return"ontouchstart"in n||n.DocumentTouch&&t instanceof DocumentTouch?i=!0:k(["@media (",l.join("touch-enabled),("),s,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(n){i=n.offsetTop===9}),i};u.rgba=function(){return c("background-color:rgba(150,255,150,.5)"),y(h.backgroundColor,"rgba")};u.backgroundsize=function(){return o("backgroundSize")};u.borderimage=function(){return o("borderImage")};u.borderradius=function(){return o("borderRadius")};u.boxshadow=function(){return o("boxShadow")};u.textshadow=function(){return t.createElement("div").style.textShadow===""};u.opacity=function(){return ft("opacity:.55"),/^0.55$/.test(h.opacity)};u.cssgradients=function(){var n="background-image:";return c((n+"-webkit- ".split(" ").join("gradient(linear,left top,right bottom,from(#9f9),to(white));"+n)+l.join("linear-gradient(left top,#9f9, white);"+n)).slice(0,-n.length)),y(h.backgroundImage,"gradient")};u.cssreflections=function(){return o("boxReflect")};u.fontface=function(){var n;return k('@font-face {font-family:"font";src:url("https://")}',function(i,r){var f=t.getElementById("smodernizr"),u=f.sheet||f.styleSheet,e=u?u.cssRules&&u.cssRules[0]?u.cssRules[0].cssText:u.cssText||"":"";n=/src/i.test(e)&&e.indexOf(r.split(" ")[0])===0}),n};for(v in u)g(u,v)&&(a=v.toLowerCase(),r[a]=u[v](),w.push((r[a]?"":"no-")+a));return r.addTest=function(n,t){if(typeof n=="object")for(var u in n)g(n,u)&&r.addTest(u,n[u]);else{if(n=n.toLowerCase(),r[n]!==i)return r;t=typeof t=="function"?t():t;typeof p!="undefined"&&p&&(f.className+=" "+(t?"":"no-")+n);r[n]=t}return r},c(""),tt=ot=null,function(n,t){function v(n,t){var i=n.createElement("p"),r=n.getElementsByTagName("head")[0]||n.documentElement;return i.innerHTML="x<style>"+t+"<\/style>",r.insertBefore(i.lastChild,r.firstChild)}function s(){var n=r.elements;return typeof n=="string"?n.split(" "):n}function u(n){var t=a[n[l]];return t||(t={},o++,n[l]=o,a[o]=t),t}function h(n,r,f){if(r||(r=t),i)return r.createElement(n);f||(f=u(r));var e;return e=f.cache[n]?f.cache[n].cloneNode():b.test(n)?(f.cache[n]=f.createElem(n)).cloneNode():f.createElem(n),e.canHaveChildren&&!w.test(n)&&!e.tagUrn?f.frag.appendChild(e):e}function y(n,r){if(n||(n=t),i)return n.createDocumentFragment();r=r||u(n);for(var e=r.frag.cloneNode(),f=0,o=s(),h=o.length;f<h;f++)e.createElement(o[f]);return e}function p(n,t){t.cache||(t.cache={},t.createElem=n.createElement,t.createFrag=n.createDocumentFragment,t.frag=t.createFrag());n.createElement=function(i){return r.shivMethods?h(i,n,t):t.createElem(i)};n.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+s().join().replace(/[\w\-]+/g,function(n){return t.createElem(n),t.frag.createElement(n),'c("'+n+'")'})+");return n}")(r,t.frag)}function c(n){n||(n=t);var f=u(n);return r.shivCSS&&!e&&!f.hasCSS&&(f.hasCSS=!!v(n,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),i||p(n,f),n}var f=n.html5||{},w=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,b=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,e,l="_html5shiv",o=0,a={},i,r;(function(){try{var n=t.createElement("a");n.innerHTML="<xyz><\/xyz>";e="hidden"in n;i=n.childNodes.length==1||function(){t.createElement("a");var n=t.createDocumentFragment();return typeof n.cloneNode=="undefined"||typeof n.createDocumentFragment=="undefined"||typeof n.createElement=="undefined"}()}catch(r){e=!0;i=!0}})();r={elements:f.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:f.shivCSS!==!1,supportsUnknownElements:i,shivMethods:f.shivMethods!==!1,type:"default",shivDocument:c,createElement:h,createDocumentFragment:y};n.html5=r;c(t)}(this,t),r._version="2.8.3",r._prefixes=l,r._domPrefixes=ut,r._cssomPrefixes=rt,r.testProp=function(n){return nt([n])},r.testAllProps=o,r.testStyles=k,f.className=f.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" js "+w.join(" "):""),r}(this,this.document),function(n,t,i){function h(n){return"[object Function]"==y.call(n)}function c(n){return"string"==typeof n}function l(){}function w(n){return!n||"loaded"==n||"complete"==n||"uninitialized"==n}function f(){var n=a.shift();v=1;n?n.t?s(function(){("c"==n.t?u.injectCss:u.injectJs)(n.s,0,n.a,n.x,n.e,1)},0):(n(),f()):v=0}function ut(n,i,o,h,c,l,y){function k(t){if(!nt&&w(p.readyState)&&(tt.r=nt=1,!v&&f(),p.onload=p.onreadystatechange=null,t)){"img"!=n&&s(function(){g.removeChild(p)},50);for(var u in r[i])r[i].hasOwnProperty(u)&&r[i][u].onload()}}var y=y||u.errorTimeout,p=t.createElement(n),nt=0,b=0,tt={t:o,s:i,e:c,a:l,x:y};1===r[i]&&(b=1,r[i]=[]);"object"==n?p.data=i:(p.src=i,p.type=n);p.width=p.height="0";p.onerror=p.onload=p.onreadystatechange=function(){k.call(this,b)};a.splice(h,0,tt);"img"!=n&&(b||2===r[i]?(g.insertBefore(p,d?null:e),s(k,y)):r[i].push(p))}function ft(n,t,i,r,u){return v=0,t=t||"j",c(n)?ut("c"==t?et:nt,n,t,this.i++,i,r,u):(a.splice(this.i++,0,n),1==a.length&&f()),this}function b(){var n=u;return n.loader={load:ft,i:0},n}var o=t.documentElement,s=n.setTimeout,e=t.getElementsByTagName("script")[0],y={}.toString,a=[],v=0,k="MozAppearance"in o.style,d=k&&!!t.createRange().compareNode,g=d?o:e.parentNode,o=n.opera&&"[object Opera]"==y.call(n.opera),o=!!t.attachEvent&&!o,nt=k?"object":o?"script":"img",et=o?"script":nt,tt=Array.isArray||function(n){return"[object Array]"==y.call(n)},p=[],r={},it={timeout:function(n,t){return t.length&&(n.timeout=t[0]),n}},rt,u;u=function(n){function a(n){for(var n=n.split("!"),f=p.length,i=n.pop(),e=n.length,i={url:i,origUrl:i,prefixes:n},u,r,t=0;t<e;t++)r=n[t].split("="),(u=it[r.shift()])&&(i=u(i,r));for(t=0;t<f;t++)i=p[t](i);return i}function f(n,t,u,f,e){var o=a(n),s=o.autoCallback;o.url.split(".").pop().split("?").shift();o.bypass||(t&&(t=h(t)?t:t[n]||t[f]||t[n.split("/").pop().split("?")[0]]),o.instead?o.instead(n,t,u,f,e):(r[o.url]?o.noexec=!0:r[o.url]=1,u.load(o.url,o.forceCSS||!o.forceJS&&"css"==o.url.split(".").pop().split("?").shift()?"c":i,o.noexec,o.attrs,o.timeout),(h(t)||h(s))&&u.load(function(){b();t&&t(o.origUrl,e,f);s&&s(o.origUrl,e,f);r[o.url]=2})))}function s(n,t){function a(n,o){if(n){if(c(n))o||(i=function(){var n=[].slice.call(arguments);s.apply(this,n);u()}),f(n,i,t,0,e);else if(Object(n)===n)for(r in v=function(){var t=0;for(var i in n)n.hasOwnProperty(i)&&t++;return t}(),n)n.hasOwnProperty(r)&&(!o&&!--v&&(h(i)?i=function(){var n=[].slice.call(arguments);s.apply(this,n);u()}:i[r]=function(n){return function(){var t=[].slice.call(arguments);n&&n.apply(this,t);u()}}(s[r])),f(n[r],i,t,r,e))}else o||u()}var e=!!n.test,o=n.load||n.both,i=n.callback||l,s=i,u=n.complete||l,v,r;a(e?n.yep:n.nope,!!o);o&&a(o)}var e,t,o=this.yepnope.loader;if(c(n))f(n,0,o,0);else if(tt(n))for(e=0;e<n.length;e++)t=n[e],c(t)?f(t,0,o,0):tt(t)?u(t):Object(t)===t&&s(t,o);else Object(n)===n&&s(n,o)};u.addPrefix=function(n,t){it[n]=t};u.addFilter=function(n){p.push(n)};u.errorTimeout=1e4;null==t.readyState&&t.addEventListener&&(t.readyState="loading",t.addEventListener("DOMContentLoaded",rt=function(){t.removeEventListener("DOMContentLoaded",rt,0);t.readyState="complete"},0));n.yepnope=b();n.yepnope.executeStack=f;n.yepnope.injectJs=function(n,i,r,o,h,c){var a=t.createElement("script"),v,y,o=o||u.errorTimeout;a.src=n;for(y in r)a.setAttribute(y,r[y]);i=c?f:i||l;a.onreadystatechange=a.onload=function(){!v&&w(a.readyState)&&(v=1,i(),a.onload=a.onreadystatechange=null)};s(function(){v||(v=1,i(1))},o);h?a.onload():e.parentNode.insertBefore(a,e)};n.yepnope.injectCss=function(n,i,r,u,o,h){var u=t.createElement("link"),c,i=h?f:i||l;u.href=n;u.rel="stylesheet";u.type="text/css";for(c in r)u.setAttribute(c,r[c]);o||(e.parentNode.insertBefore(u,e),s(i,0))}}(this,document);Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};var _updateBundleTag=5296;if(typeof jQuery=="undefined")throw new Error("Bootstrap's JavaScript requires jQuery");+function(n){"use strict";var t=n.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||t[0]==1&&t[1]==9&&t[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher");}(jQuery);+function(n){"use strict";function t(){var i=document.createElement("bootstrap"),n={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var t in n)if(i.style[t]!==undefined)return{end:n[t]};return!1}n.fn.emulateTransitionEnd=function(t){var i=!1,u=this,r;n(this).one("bsTransitionEnd",function(){i=!0});return r=function(){i||n(u).trigger(n.support.transition.end)},setTimeout(r,t),this};n(function(){(n.support.transition=t(),n.support.transition)&&(n.event.special.bsTransitionEnd={bindType:n.support.transition.end,delegateType:n.support.transition.end,handle:function(t){if(n(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}})})}(jQuery);+function(n){"use strict";function u(i){return this.each(function(){var r=n(this),u=r.data("bs.alert");u||r.data("bs.alert",u=new t(this));typeof i=="string"&&u[i].call(r)})}var i='[data-dismiss="alert"]',t=function(t){n(t).on("click",i,this.close)},r;t.VERSION="3.3.5";t.TRANSITION_DURATION=150;t.prototype.close=function(i){function e(){r.detach().trigger("closed.bs.alert").remove()}var f=n(this),u=f.attr("data-target"),r;(u||(u=f.attr("href"),u=u&&u.replace(/.*(?=#[^\s]*$)/,"")),r=n(u),i&&i.preventDefault(),r.length||(r=f.closest(".alert")),r.trigger(i=n.Event("close.bs.alert")),i.isDefaultPrevented())||(r.removeClass("in"),n.support.transition&&r.hasClass("fade")?r.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e())};r=n.fn.alert;n.fn.alert=u;n.fn.alert.Constructor=t;n.fn.alert.noConflict=function(){return n.fn.alert=r,this};n(document).on("click.bs.alert.data-api",i,t.prototype.close)}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.button"),f=typeof i=="object"&&i;r||u.data("bs.button",r=new t(this,f));i=="toggle"?r.toggle():i&&r.setState(i)})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.isLoading=!1},r;t.VERSION="3.3.5";t.DEFAULTS={loadingText:"loading..."};t.prototype.setState=function(t){var r="disabled",i=this.$element,f=i.is("input")?"val":"html",u=i.data();t+="Text";u.resetText==null&&i.data("resetText",i[f]());setTimeout(n.proxy(function(){i[f](u[t]==null?this.options[t]:u[t]);t=="loadingText"?(this.isLoading=!0,i.addClass(r).attr(r,r)):this.isLoading&&(this.isLoading=!1,i.removeClass(r).removeAttr(r))},this),0)};t.prototype.toggle=function(){var t=!0,i=this.$element.closest('[data-toggle="buttons"]'),n;i.length?(n=this.$element.find("input"),n.prop("type")=="radio"?(n.prop("checked")&&(t=!1),i.find(".active").removeClass("active"),this.$element.addClass("active")):n.prop("type")=="checkbox"&&(n.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),n.prop("checked",this.$element.hasClass("active")),t&&n.trigger("change")):(this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active"))};r=n.fn.button;n.fn.button=i;n.fn.button.Constructor=t;n.fn.button.noConflict=function(){return n.fn.button=r,this};n(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(t){var r=n(t.target);r.hasClass("btn")||(r=r.closest(".btn"));i.call(r,"toggle");n(t.target).is('input[type="radio"]')||n(t.target).is('input[type="checkbox"]')||t.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(t){n(t.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(t.type))})}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.carousel"),f=n.extend({},t.DEFAULTS,u.data(),typeof i=="object"&&i),e=typeof i=="string"?i:f.slide;r||u.data("bs.carousel",r=new t(this,f));typeof i=="number"?r.to(i):e?r[e]():f.interval&&r.pause().cycle()})}var t=function(t,i){this.$element=n(t);this.$indicators=this.$element.find(".carousel-indicators");this.options=i;this.paused=null;this.sliding=null;this.interval=null;this.$active=null;this.$items=null;this.options.keyboard&&this.$element.on("keydown.bs.carousel",n.proxy(this.keydown,this));this.options.pause!="hover"||"ontouchstart"in document.documentElement||this.$element.on("mouseenter.bs.carousel",n.proxy(this.pause,this)).on("mouseleave.bs.carousel",n.proxy(this.cycle,this))},u,r;t.VERSION="3.3.5";t.TRANSITION_DURATION=600;t.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0};t.prototype.keydown=function(n){if(!/input|textarea/i.test(n.target.tagName)){switch(n.which){case 37:this.prev();break;case 39:this.next();break;default:return}n.preventDefault()}};t.prototype.cycle=function(t){return t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(n.proxy(this.next,this),this.options.interval)),this};t.prototype.getItemIndex=function(n){return this.$items=n.parent().children(".item"),this.$items.index(n||this.$active)};t.prototype.getItemForDirection=function(n,t){var i=this.getItemIndex(t),f=n=="prev"&&i===0||n=="next"&&i==this.$items.length-1,r,u;return f&&!this.options.wrap?t:(r=n=="prev"?-1:1,u=(i+r)%this.$items.length,this.$items.eq(u))};t.prototype.to=function(n){var i=this,t=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(n>this.$items.length-1)&&!(n<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){i.to(n)}):t==n?this.pause().cycle():this.slide(n>t?"next":"prev",this.$items.eq(n))};t.prototype.pause=function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&n.support.transition&&(this.$element.trigger(n.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this};t.prototype.next=function(){if(!this.sliding)return this.slide("next")};t.prototype.prev=function(){if(!this.sliding)return this.slide("prev")};t.prototype.slide=function(i,r){var e=this.$element.find(".item.active"),u=r||this.getItemForDirection(i,e),l=this.interval,f=i=="next"?"left":"right",a=this,o,s,h,c;return u.hasClass("active")?this.sliding=!1:(o=u[0],s=n.Event("slide.bs.carousel",{relatedTarget:o,direction:f}),this.$element.trigger(s),s.isDefaultPrevented())?void 0:(this.sliding=!0,l&&this.pause(),this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),h=n(this.$indicators.children()[this.getItemIndex(u)]),h&&h.addClass("active")),c=n.Event("slid.bs.carousel",{relatedTarget:o,direction:f}),n.support.transition&&this.$element.hasClass("slide")?(u.addClass(i),u[0].offsetWidth,e.addClass(f),u.addClass(f),e.one("bsTransitionEnd",function(){u.removeClass([i,f].join(" ")).addClass("active");e.removeClass(["active",f].join(" "));a.sliding=!1;setTimeout(function(){a.$element.trigger(c)},0)}).emulateTransitionEnd(t.TRANSITION_DURATION)):(e.removeClass("active"),u.addClass("active"),this.sliding=!1,this.$element.trigger(c)),l&&this.cycle(),this)};u=n.fn.carousel;n.fn.carousel=i;n.fn.carousel.Constructor=t;n.fn.carousel.noConflict=function(){return n.fn.carousel=u,this};r=function(t){var o,r=n(this),u=n(r.attr("data-target")||(o=r.attr("href"))&&o.replace(/.*(?=#[^\s]+$)/,"")),e,f;u.hasClass("carousel")&&(e=n.extend({},u.data(),r.data()),f=r.attr("data-slide-to"),f&&(e.interval=!1),i.call(u,e),f&&u.data("bs.carousel").to(f),t.preventDefault())};n(document).on("click.bs.carousel.data-api","[data-slide]",r).on("click.bs.carousel.data-api","[data-slide-to]",r);n(window).on("load",function(){n('[data-ride="carousel"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery);+function(n){"use strict";function r(t){var i,r=t.attr("data-target")||(i=t.attr("href"))&&i.replace(/.*(?=#[^\s]+$)/,"");return n(r)}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.collapse"),f=n.extend({},t.DEFAULTS,u.data(),typeof i=="object"&&i);!r&&f.toggle&&/show|hide/.test(i)&&(f.toggle=!1);r||u.data("bs.collapse",r=new t(this,f));typeof i=="string"&&r[i]()})}var t=function(i,r){this.$element=n(i);this.options=n.extend({},t.DEFAULTS,r);this.$trigger=n('[data-toggle="collapse"][href="#'+i.id+'"],[data-toggle="collapse"][data-target="#'+i.id+'"]');this.transitioning=null;this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger);this.options.toggle&&this.toggle()},u;t.VERSION="3.3.5";t.TRANSITION_DURATION=350;t.DEFAULTS={toggle:!0};t.prototype.dimension=function(){var n=this.$element.hasClass("width");return n?"width":"height"};t.prototype.show=function(){var f,r,e,u,o,s;if(!this.transitioning&&!this.$element.hasClass("in")&&(r=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing"),!r||!r.length||(f=r.data("bs.collapse"),!f||!f.transitioning))&&(e=n.Event("show.bs.collapse"),this.$element.trigger(e),!e.isDefaultPrevented())){if(r&&r.length&&(i.call(r,"hide"),f||r.data("bs.collapse",null)),u=this.dimension(),this.$element.removeClass("collapse").addClass("collapsing")[u](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1,o=function(){this.$element.removeClass("collapsing").addClass("collapse in")[u]("");this.transitioning=0;this.$element.trigger("shown.bs.collapse")},!n.support.transition)return o.call(this);s=n.camelCase(["scroll",u].join("-"));this.$element.one("bsTransitionEnd",n.proxy(o,this)).emulateTransitionEnd(t.TRANSITION_DURATION)[u](this.$element[0][s])}};t.prototype.hide=function(){var r,i,u;if(!this.transitioning&&this.$element.hasClass("in")&&(r=n.Event("hide.bs.collapse"),this.$element.trigger(r),!r.isDefaultPrevented())){if(i=this.dimension(),this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1,u=function(){this.transitioning=0;this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")},!n.support.transition)return u.call(this);this.$element[i](0).one("bsTransitionEnd",n.proxy(u,this)).emulateTransitionEnd(t.TRANSITION_DURATION)}};t.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};t.prototype.getParent=function(){return n(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(n.proxy(function(t,i){var u=n(i);this.addAriaAndCollapsedClass(r(u),u)},this)).end()};t.prototype.addAriaAndCollapsedClass=function(n,t){var i=n.hasClass("in");n.attr("aria-expanded",i);t.toggleClass("collapsed",!i).attr("aria-expanded",i)};u=n.fn.collapse;n.fn.collapse=i;n.fn.collapse.Constructor=t;n.fn.collapse.noConflict=function(){return n.fn.collapse=u,this};n(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(t){var u=n(this);u.attr("data-target")||t.preventDefault();var f=r(u),e=f.data("bs.collapse"),o=e?"toggle":u.data();i.call(f,o)})}(jQuery);+function(n){"use strict";function r(t){var i=t.attr("data-target"),r;return i||(i=t.attr("href"),i=i&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,"")),r=i&&n(i),r&&r.length?r:t.parent()}function u(t){t&&t.which===3||(n(e).remove(),n(i).each(function(){var u=n(this),i=r(u),f={relatedTarget:this};i.hasClass("open")&&(t&&t.type=="click"&&/input|textarea/i.test(t.target.tagName)&&n.contains(i[0],t.target)||(i.trigger(t=n.Event("hide.bs.dropdown",f)),t.isDefaultPrevented())||(u.attr("aria-expanded","false"),i.removeClass("open").trigger("hidden.bs.dropdown",f)))}))}function o(i){return this.each(function(){var r=n(this),u=r.data("bs.dropdown");u||r.data("bs.dropdown",u=new t(this));typeof i=="string"&&u[i].call(r)})}var e=".dropdown-backdrop",i='[data-toggle="dropdown"]',t=function(t){n(t).on("click.bs.dropdown",this.toggle)},f;t.VERSION="3.3.5";t.prototype.toggle=function(t){var f=n(this),i,o,e;if(!f.is(".disabled, :disabled")){if(i=r(f),o=i.hasClass("open"),u(),!o){if("ontouchstart"in document.documentElement&&!i.closest(".navbar-nav").length)n(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(n(this)).on("click",u);if(e={relatedTarget:this},i.trigger(t=n.Event("show.bs.dropdown",e)),t.isDefaultPrevented())return;f.trigger("focus").attr("aria-expanded","true");i.toggleClass("open").trigger("shown.bs.dropdown",e)}return!1}};t.prototype.keydown=function(t){var e,o,s,h,f,u;if(/(38|40|27|32)/.test(t.which)&&!/input|textarea/i.test(t.target.tagName)&&(e=n(this),t.preventDefault(),t.stopPropagation(),!e.is(".disabled, :disabled"))){if(o=r(e),s=o.hasClass("open"),!s&&t.which!=27||s&&t.which==27)return t.which==27&&o.find(i).trigger("focus"),e.trigger("click");(h=" li:not(.disabled):visible a",f=o.find(".dropdown-menu"+h),f.length)&&(u=f.index(t.target),t.which==38&&u>0&&u--,t.which==40&&u<f.length-1&&u++,~u||(u=0),f.eq(u).trigger("focus"))}};f=n.fn.dropdown;n.fn.dropdown=o;n.fn.dropdown.Constructor=t;n.fn.dropdown.noConflict=function(){return n.fn.dropdown=f,this};n(document).on("click.bs.dropdown.data-api",u).on("click.bs.dropdown.data-api",".dropdown form",function(n){n.stopPropagation()}).on("click.bs.dropdown.data-api",i,t.prototype.toggle).on("keydown.bs.dropdown.data-api",i,t.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",t.prototype.keydown)}(jQuery);+function(n){"use strict";function i(i,r){return this.each(function(){var f=n(this),u=f.data("bs.modal"),e=n.extend({},t.DEFAULTS,f.data(),typeof i=="object"&&i);u||f.data("bs.modal",u=new t(this,e));typeof i=="string"?u[i](r):e.show&&u.show(r)})}var t=function(t,i){this.options=i;this.$body=n(document.body);this.$element=n(t);this.$dialog=this.$element.find(".modal-dialog");this.$backdrop=null;this.isShown=null;this.originalBodyPad=null;this.scrollbarWidth=0;this.ignoreBackdropClick=!1;this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,n.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))},r;t.VERSION="3.3.5";t.TRANSITION_DURATION=300;t.BACKDROP_TRANSITION_DURATION=150;t.DEFAULTS={backdrop:!0,keyboard:!0,show:!0};t.prototype.toggle=function(n){return this.isShown?this.hide():this.show(n)};t.prototype.show=function(i){var r=this,u=n.Event("show.bs.modal",{relatedTarget:i});if(this.$element.trigger(u),!this.isShown&&!u.isDefaultPrevented()){this.isShown=!0;this.checkScrollbar();this.setScrollbar();this.$body.addClass("modal-open");this.escape();this.resize();this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',n.proxy(this.hide,this));this.$dialog.on("mousedown.dismiss.bs.modal",function(){r.$element.one("mouseup.dismiss.bs.modal",function(t){n(t.target).is(r.$element)&&(r.ignoreBackdropClick=!0)})});this.backdrop(function(){var f=n.support.transition&&r.$element.hasClass("fade"),u;r.$element.parent().length||r.$element.appendTo(r.$body);r.$element.show().scrollTop(0);r.adjustDialog();f&&r.$element[0].offsetWidth;r.$element.addClass("in");r.enforceFocus();u=n.Event("shown.bs.modal",{relatedTarget:i});f?r.$dialog.one("bsTransitionEnd",function(){r.$element.trigger("focus").trigger(u)}).emulateTransitionEnd(t.TRANSITION_DURATION):r.$element.trigger("focus").trigger(u)})}};t.prototype.hide=function(i){(i&&i.preventDefault(),i=n.Event("hide.bs.modal"),this.$element.trigger(i),this.isShown&&!i.isDefaultPrevented())&&(this.isShown=!1,this.escape(),this.resize(),n(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),n.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",n.proxy(this.hideModal,this)).emulateTransitionEnd(t.TRANSITION_DURATION):this.hideModal())};t.prototype.enforceFocus=function(){n(document).off("focusin.bs.modal").on("focusin.bs.modal",n.proxy(function(n){this.$element[0]===n.target||this.$element.has(n.target).length||this.$element.trigger("focus")},this))};t.prototype.escape=function(){if(this.isShown&&this.options.keyboard)this.$element.on("keydown.dismiss.bs.modal",n.proxy(function(n){n.which==27&&this.hide()},this));else this.isShown||this.$element.off("keydown.dismiss.bs.modal")};t.prototype.resize=function(){if(this.isShown)n(window).on("resize.bs.modal",n.proxy(this.handleUpdate,this));else n(window).off("resize.bs.modal")};t.prototype.hideModal=function(){var n=this;this.$element.hide();this.backdrop(function(){n.$body.removeClass("modal-open");n.resetAdjustments();n.resetScrollbar();n.$element.trigger("hidden.bs.modal")})};t.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove();this.$backdrop=null};t.prototype.backdrop=function(i){var e=this,f=this.$element.hasClass("fade")?"fade":"",r,u;if(this.isShown&&this.options.backdrop){r=n.support.transition&&f;this.$backdrop=n(document.createElement("div")).addClass("modal-backdrop "+f).appendTo(this.$body);this.$element.on("click.dismiss.bs.modal",n.proxy(function(n){if(this.ignoreBackdropClick){this.ignoreBackdropClick=!1;return}n.target===n.currentTarget&&(this.options.backdrop=="static"?this.$element[0].focus():this.hide())},this));if(r&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!i)return;r?this.$backdrop.one("bsTransitionEnd",i).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):i()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),u=function(){e.removeBackdrop();i&&i()},n.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",u).emulateTransitionEnd(t.BACKDROP_TRANSITION_DURATION):u()):i&&i()};t.prototype.handleUpdate=function(){this.adjustDialog()};t.prototype.adjustDialog=function(){var n=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&n?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!n?this.scrollbarWidth:""})};t.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})};t.prototype.checkScrollbar=function(){var n=window.innerWidth,t;n||(t=document.documentElement.getBoundingClientRect(),n=t.right-Math.abs(t.left));this.bodyIsOverflowing=document.body.clientWidth<n;this.scrollbarWidth=this.measureScrollbar()};t.prototype.setScrollbar=function(){var n=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"";this.bodyIsOverflowing&&this.$body.css("padding-right",n+this.scrollbarWidth)};t.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)};t.prototype.measureScrollbar=function(){var n=document.createElement("div"),t;return n.className="modal-scrollbar-measure",this.$body.append(n),t=n.offsetWidth-n.clientWidth,this.$body[0].removeChild(n),t};r=n.fn.modal;n.fn.modal=i;n.fn.modal.Constructor=t;n.fn.modal.noConflict=function(){return n.fn.modal=r,this};n(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(t){var r=n(this),f=r.attr("href"),u=n(r.attr("data-target")||f&&f.replace(/.*(?=#[^\s]+$)/,"")),e=u.data("bs.modal")?"toggle":n.extend({remote:!/#/.test(f)&&f},u.data(),r.data());r.is("a")&&t.preventDefault();u.one("show.bs.modal",function(n){if(!n.isDefaultPrevented())u.one("hidden.bs.modal",function(){r.is(":visible")&&r.trigger("focus")})});i.call(u,e,this)})}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.tooltip"),f=typeof i=="object"&&i;(r||!/destroy|hide/.test(i))&&(r||u.data("bs.tooltip",r=new t(this,f)),typeof i=="string"&&r[i]())})}var t=function(n,t){this.type=null;this.options=null;this.enabled=null;this.timeout=null;this.hoverState=null;this.$element=null;this.inState=null;this.init("tooltip",n,t)},i;t.VERSION="3.3.5";t.TRANSITION_DURATION=150;t.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"><\/div><div class="tooltip-inner"><\/div><\/div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}};t.prototype.init=function(t,i,r){var f,e,u,o,s;if(this.enabled=!0,this.type=t,this.$element=n(i),this.options=this.getOptions(r),this.$viewport=this.options.viewport&&n(n.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(f=this.options.trigger.split(" "),e=f.length;e--;)if(u=f[e],u=="click")this.$element.on("click."+this.type,this.options.selector,n.proxy(this.toggle,this));else if(u!="manual"){o=u=="hover"?"mouseenter":"focusin";s=u=="hover"?"mouseleave":"focusout";this.$element.on(o+"."+this.type,this.options.selector,n.proxy(this.enter,this));this.$element.on(s+"."+this.type,this.options.selector,n.proxy(this.leave,this))}this.options.selector?this._options=n.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()};t.prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.getOptions=function(t){return t=n.extend({},this.getDefaults(),this.$element.data(),t),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t};t.prototype.getDelegateOptions=function(){var t={},i=this.getDefaults();return this._options&&n.each(this._options,function(n,r){i[n]!=r&&(t[n]=r)}),t};t.prototype.enter=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState[t.type=="focusin"?"focus":"hover"]=!0),i.tip().hasClass("in")||i.hoverState=="in"){i.hoverState="in";return}if(clearTimeout(i.timeout),i.hoverState="in",!i.options.delay||!i.options.delay.show)return i.show();i.timeout=setTimeout(function(){i.hoverState=="in"&&i.show()},i.options.delay.show)};t.prototype.isInStateTrue=function(){for(var n in this.inState)if(this.inState[n])return!0;return!1};t.prototype.leave=function(t){var i=t instanceof this.constructor?t:n(t.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)),t instanceof n.Event&&(i.inState[t.type=="focusout"?"focus":"hover"]=!1),!i.isInStateTrue()){if(clearTimeout(i.timeout),i.hoverState="out",!i.options.delay||!i.options.delay.hide)return i.hide();i.timeout=setTimeout(function(){i.hoverState=="out"&&i.hide()},i.options.delay.hide)}};t.prototype.show=function(){var c=n.Event("show.bs."+this.type),l,p,e,w,h;if(this.hasContent()&&this.enabled){if(this.$element.trigger(c),l=n.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]),c.isDefaultPrevented()||!l)return;var u=this,r=this.tip(),a=this.getUID(this.type);this.setContent();r.attr("id",a);this.$element.attr("aria-describedby",a);this.options.animation&&r.addClass("fade");var i=typeof this.options.placement=="function"?this.options.placement.call(this,r[0],this.$element[0]):this.options.placement,v=/\s?auto?\s?/i,y=v.test(i);y&&(i=i.replace(v,"")||"top");r.detach().css({top:0,left:0,display:"block"}).addClass(i).data("bs."+this.type,this);this.options.container?r.appendTo(this.options.container):r.insertAfter(this.$element);this.$element.trigger("inserted.bs."+this.type);var f=this.getPosition(),o=r[0].offsetWidth,s=r[0].offsetHeight;y&&(p=i,e=this.getPosition(this.$viewport),i=i=="bottom"&&f.bottom+s>e.bottom?"top":i=="top"&&f.top-s<e.top?"bottom":i=="right"&&f.right+o>e.width?"left":i=="left"&&f.left-o<e.left?"right":i,r.removeClass(p).addClass(i));w=this.getCalculatedOffset(i,f,o,s);this.applyPlacement(w,i);h=function(){var n=u.hoverState;u.$element.trigger("shown.bs."+u.type);u.hoverState=null;n=="out"&&u.leave(u)};n.support.transition&&this.$tip.hasClass("fade")?r.one("bsTransitionEnd",h).emulateTransitionEnd(t.TRANSITION_DURATION):h()}};t.prototype.applyPlacement=function(t,i){var r=this.tip(),l=r[0].offsetWidth,e=r[0].offsetHeight,o=parseInt(r.css("margin-top"),10),s=parseInt(r.css("margin-left"),10),h,f,u;isNaN(o)&&(o=0);isNaN(s)&&(s=0);t.top+=o;t.left+=s;n.offset.setOffset(r[0],n.extend({using:function(n){r.css({top:Math.round(n.top),left:Math.round(n.left)})}},t),0);r.addClass("in");h=r[0].offsetWidth;f=r[0].offsetHeight;i=="top"&&f!=e&&(t.top=t.top+e-f);u=this.getViewportAdjustedDelta(i,t,h,f);u.left?t.left+=u.left:t.top+=u.top;var c=/top|bottom/.test(i),a=c?u.left*2-l+h:u.top*2-e+f,v=c?"offsetWidth":"offsetHeight";r.offset(t);this.replaceArrow(a,r[0][v],c)};t.prototype.replaceArrow=function(n,t,i){this.arrow().css(i?"left":"top",50*(1-n/t)+"%").css(i?"top":"left","")};t.prototype.setContent=function(){var n=this.tip(),t=this.getTitle();n.find(".tooltip-inner")[this.options.html?"html":"text"](t);n.removeClass("fade in top bottom left right")};t.prototype.hide=function(i){function e(){u.hoverState!="in"&&r.detach();u.$element.removeAttr("aria-describedby").trigger("hidden.bs."+u.type);i&&i()}var u=this,r=n(this.$tip),f=n.Event("hide.bs."+this.type);if(this.$element.trigger(f),!f.isDefaultPrevented())return r.removeClass("in"),n.support.transition&&r.hasClass("fade")?r.one("bsTransitionEnd",e).emulateTransitionEnd(t.TRANSITION_DURATION):e(),this.hoverState=null,this};t.prototype.fixTitle=function(){var n=this.$element;(n.attr("title")||typeof n.attr("data-original-title")!="string")&&n.attr("data-original-title",n.attr("title")||"").attr("title","")};t.prototype.hasContent=function(){return this.getTitle()};t.prototype.getPosition=function(t){t=t||this.$element;var u=t[0],r=u.tagName=="BODY",i=u.getBoundingClientRect();i.width==null&&(i=n.extend({},i,{width:i.right-i.left,height:i.bottom-i.top}));var f=r?{top:0,left:0}:t.offset(),e={scroll:r?document.documentElement.scrollTop||document.body.scrollTop:t.scrollTop()},o=r?{width:n(window).width(),height:n(window).height()}:null;return n.extend({},i,e,o,f)};t.prototype.getCalculatedOffset=function(n,t,i,r){return n=="bottom"?{top:t.top+t.height,left:t.left+t.width/2-i/2}:n=="top"?{top:t.top-r,left:t.left+t.width/2-i/2}:n=="left"?{top:t.top+t.height/2-r/2,left:t.left-i}:{top:t.top+t.height/2-r/2,left:t.left+t.width}};t.prototype.getViewportAdjustedDelta=function(n,t,i,r){var f={top:0,left:0},e,u,o,s,h,c;return this.$viewport?(e=this.options.viewport&&this.options.viewport.padding||0,u=this.getPosition(this.$viewport),/right|left/.test(n)?(o=t.top-e-u.scroll,s=t.top+e-u.scroll+r,o<u.top?f.top=u.top-o:s>u.top+u.height&&(f.top=u.top+u.height-s)):(h=t.left-e,c=t.left+e+i,h<u.left?f.left=u.left-h:c>u.right&&(f.left=u.left+u.width-c)),f):f};t.prototype.getTitle=function(){var t=this.$element,n=this.options;return t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title)};t.prototype.getUID=function(n){do n+=~~(Math.random()*1e6);while(document.getElementById(n));return n};t.prototype.tip=function(){if(!this.$tip&&(this.$tip=n(this.options.template),this.$tip.length!=1))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")};t.prototype.enable=function(){this.enabled=!0};t.prototype.disable=function(){this.enabled=!1};t.prototype.toggleEnabled=function(){this.enabled=!this.enabled};t.prototype.toggle=function(t){var i=this;t&&(i=n(t.currentTarget).data("bs."+this.type),i||(i=new this.constructor(t.currentTarget,this.getDelegateOptions()),n(t.currentTarget).data("bs."+this.type,i)));t?(i.inState.click=!i.inState.click,i.isInStateTrue()?i.enter(i):i.leave(i)):i.tip().hasClass("in")?i.leave(i):i.enter(i)};t.prototype.destroy=function(){var n=this;clearTimeout(this.timeout);this.hide(function(){n.$element.off("."+n.type).removeData("bs."+n.type);n.$tip&&n.$tip.detach();n.$tip=null;n.$arrow=null;n.$viewport=null})};i=n.fn.tooltip;n.fn.tooltip=r;n.fn.tooltip.Constructor=t;n.fn.tooltip.noConflict=function(){return n.fn.tooltip=i,this}}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.popover"),f=typeof i=="object"&&i;(r||!/destroy|hide/.test(i))&&(r||u.data("bs.popover",r=new t(this,f)),typeof i=="string"&&r[i]())})}var t=function(n,t){this.init("popover",n,t)},i;if(!n.fn.tooltip)throw new Error("Popover requires tooltip.js");t.VERSION="3.3.5";t.DEFAULTS=n.extend({},n.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"><\/div><h3 class="popover-title"><\/h3><div class="popover-content"><\/div><\/div>'});t.prototype=n.extend({},n.fn.tooltip.Constructor.prototype);t.prototype.constructor=t;t.prototype.getDefaults=function(){return t.DEFAULTS};t.prototype.setContent=function(){var n=this.tip(),i=this.getTitle(),t=this.getContent();n.find(".popover-title")[this.options.html?"html":"text"](i);n.find(".popover-content").children().detach().end()[this.options.html?typeof t=="string"?"html":"append":"text"](t);n.removeClass("fade top bottom left right in");n.find(".popover-title").html()||n.find(".popover-title").hide()};t.prototype.hasContent=function(){return this.getTitle()||this.getContent()};t.prototype.getContent=function(){var t=this.$element,n=this.options;return t.attr("data-content")||(typeof n.content=="function"?n.content.call(t[0]):n.content)};t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};i=n.fn.popover;n.fn.popover=r;n.fn.popover.Constructor=t;n.fn.popover.noConflict=function(){return n.fn.popover=i,this}}(jQuery);+function(n){"use strict";function t(i,r){this.$body=n(document.body);this.$scrollElement=n(i).is(document.body)?n(window):n(i);this.options=n.extend({},t.DEFAULTS,r);this.selector=(this.options.target||"")+" .nav li > a";this.offsets=[];this.targets=[];this.activeTarget=null;this.scrollHeight=0;this.$scrollElement.on("scroll.bs.scrollspy",n.proxy(this.process,this));this.refresh();this.process()}function i(i){return this.each(function(){var u=n(this),r=u.data("bs.scrollspy"),f=typeof i=="object"&&i;r||u.data("bs.scrollspy",r=new t(this,f));typeof i=="string"&&r[i]()})}t.VERSION="3.3.5";t.DEFAULTS={offset:10};t.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)};t.prototype.refresh=function(){var t=this,i="offset",r=0;this.offsets=[];this.targets=[];this.scrollHeight=this.getScrollHeight();n.isWindow(this.$scrollElement[0])||(i="position",r=this.$scrollElement.scrollTop());this.$body.find(this.selector).map(function(){var f=n(this),u=f.data("target")||f.attr("href"),t=/^#./.test(u)&&n(u);return t&&t.length&&t.is(":visible")&&[[t[i]().top+r,u]]||null}).sort(function(n,t){return n[0]-t[0]}).each(function(){t.offsets.push(this[0]);t.targets.push(this[1])})};t.prototype.process=function(){var i=this.$scrollElement.scrollTop()+this.options.offset,f=this.getScrollHeight(),e=this.options.offset+f-this.$scrollElement.height(),t=this.offsets,r=this.targets,u=this.activeTarget,n;if(this.scrollHeight!=f&&this.refresh(),i>=e)return u!=(n=r[r.length-1])&&this.activate(n);if(u&&i<t[0])return this.activeTarget=null,this.clear();for(n=t.length;n--;)u!=r[n]&&i>=t[n]&&(t[n+1]===undefined||i<t[n+1])&&this.activate(r[n])};t.prototype.activate=function(t){this.activeTarget=t;this.clear();var r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',i=n(r).parents("li").addClass("active");i.parent(".dropdown-menu").length&&(i=i.closest("li.dropdown").addClass("active"));i.trigger("activate.bs.scrollspy")};t.prototype.clear=function(){n(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var r=n.fn.scrollspy;n.fn.scrollspy=i;n.fn.scrollspy.Constructor=t;n.fn.scrollspy.noConflict=function(){return n.fn.scrollspy=r,this};n(window).on("load.bs.scrollspy.data-api",function(){n('[data-spy="scroll"]').each(function(){var t=n(this);i.call(t,t.data())})})}(jQuery);+function(n){"use strict";function r(i){return this.each(function(){var u=n(this),r=u.data("bs.tab");r||u.data("bs.tab",r=new t(this));typeof i=="string"&&r[i]()})}var t=function(t){this.element=n(t)},u,i;t.VERSION="3.3.5";t.TRANSITION_DURATION=150;t.prototype.show=function(){var t=this.element,f=t.closest("ul:not(.dropdown-menu)"),i=t.data("target"),u;if(i||(i=t.attr("href"),i=i&&i.replace(/.*(?=#[^\s]*$)/,"")),!t.parent("li").hasClass("active")){var r=f.find(".active:last a"),e=n.Event("hide.bs.tab",{relatedTarget:t[0]}),o=n.Event("show.bs.tab",{relatedTarget:r[0]});(r.trigger(e),t.trigger(o),o.isDefaultPrevented()||e.isDefaultPrevented())||(u=n(i),this.activate(t.closest("li"),f),this.activate(u,u.parent(),function(){r.trigger({type:"hidden.bs.tab",relatedTarget:t[0]});t.trigger({type:"shown.bs.tab",relatedTarget:r[0]})}))}};t.prototype.activate=function(i,r,u){function o(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1);i.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0);e?(i[0].offsetWidth,i.addClass("in")):i.removeClass("fade");i.parent(".dropdown-menu").length&&i.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0);u&&u()}var f=r.find("> .active"),e=u&&n.support.transition&&(f.length&&f.hasClass("fade")||!!r.find("> .fade").length);f.length&&e?f.one("bsTransitionEnd",o).emulateTransitionEnd(t.TRANSITION_DURATION):o();f.removeClass("in")};u=n.fn.tab;n.fn.tab=r;n.fn.tab.Constructor=t;n.fn.tab.noConflict=function(){return n.fn.tab=u,this};i=function(t){t.preventDefault();r.call(n(this),"show")};n(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',i).on("click.bs.tab.data-api",'[data-toggle="pill"]',i)}(jQuery);+function(n){"use strict";function i(i){return this.each(function(){var u=n(this),r=u.data("bs.affix"),f=typeof i=="object"&&i;r||u.data("bs.affix",r=new t(this,f));typeof i=="string"&&r[i]()})}var t=function(i,r){this.options=n.extend({},t.DEFAULTS,r);this.$target=n(this.options.target).on("scroll.bs.affix.data-api",n.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",n.proxy(this.checkPositionWithEventLoop,this));this.$element=n(i);this.affixed=null;this.unpin=null;this.pinnedOffset=null;this.checkPosition()},r;t.VERSION="3.3.5";t.RESET="affix affix-top affix-bottom";t.DEFAULTS={offset:0,target:window};t.prototype.getState=function(n,t,i,r){var u=this.$target.scrollTop(),f=this.$element.offset(),e=this.$target.height();if(i!=null&&this.affixed=="top")return u<i?"top":!1;if(this.affixed=="bottom")return i!=null?u+this.unpin<=f.top?!1:"bottom":u+e<=n-r?!1:"bottom";var o=this.affixed==null,s=o?u:f.top,h=o?e:t;return i!=null&&u<=i?"top":r!=null&&s+h>=n-r?"bottom":!1};t.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(t.RESET).addClass("affix");var n=this.$target.scrollTop(),i=this.$element.offset();return this.pinnedOffset=i.top-n};t.prototype.checkPositionWithEventLoop=function(){setTimeout(n.proxy(this.checkPosition,this),1)};t.prototype.checkPosition=function(){var i,e,o;if(this.$element.is(":visible")){var s=this.$element.height(),r=this.options.offset,f=r.top,u=r.bottom,h=Math.max(n(document).height(),n(document.body).height());if(typeof r!="object"&&(u=f=r),typeof f=="function"&&(f=r.top(this.$element)),typeof u=="function"&&(u=r.bottom(this.$element)),i=this.getState(h,s,f,u),this.affixed!=i){if(this.unpin!=null&&this.$element.css("top",""),e="affix"+(i?"-"+i:""),o=n.Event(e+".bs.affix"),this.$element.trigger(o),o.isDefaultPrevented())return;this.affixed=i;this.unpin=i=="bottom"?this.getPinnedOffset():null;this.$element.removeClass(t.RESET).addClass(e).trigger(e.replace("affix","affixed")+".bs.affix")}i=="bottom"&&this.$element.offset({top:h-s-u})}};r=n.fn.affix;n.fn.affix=i;n.fn.affix.Constructor=t;n.fn.affix.noConflict=function(){return n.fn.affix=r,this};n(window).on("load",function(){n('[data-spy="affix"]').each(function(){var r=n(this),t=r.data();t.offset=t.offset||{};t.offsetBottom!=null&&(t.offset.bottom=t.offsetBottom);t.offsetTop!=null&&(t.offset.top=t.offsetTop);i.call(r,t)})})}(jQuery);!function(n){"use strict";n.matchMedia=n.matchMedia||function(n){var u,i=n.documentElement,f=i.firstElementChild||i.firstChild,r=n.createElement("body"),t=n.createElement("div");return t.id="mq-test-1",t.style.cssText="position:absolute;top:-100em",r.style.background="none",r.appendChild(t),function(n){return t.innerHTML='&shy;<style media="'+n+'"> #mq-test-1 { width: 42px; }<\/style>',i.insertBefore(r,f),u=42===t.offsetWidth,i.removeChild(r),{matches:u,media:n}}}(n.document)}(this),function(n){"use strict";function p(){y(!0)}var t={};n.respond=t;t.update=function(){};var f=[],tt=function(){var t=!1;try{t=new n.XMLHttpRequest}catch(i){t=new n.ActiveXObject("Microsoft.XMLHTTP")}return function(){return t}}(),w=function(n,t){var i=tt();i&&(i.open("GET",n,!0),i.onreadystatechange=function(){4!==i.readyState||200!==i.status&&304!==i.status||t(i.responseText)},4!==i.readyState&&i.send(null))};if(t.ajax=w,t.queue=f,t.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\([\s]*min\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/,maxw:/\([\s]*max\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/},t.mediaQueriesSupported=n.matchMedia&&null!==n.matchMedia("only all")&&n.matchMedia("only all").matches,!t.mediaQueriesSupported){var c,b,l,i=n.document,r=i.documentElement,e=[],o=[],u=[],a={},k=30,s=i.getElementsByTagName("head")[0]||r,it=i.getElementsByTagName("base")[0],h=s.getElementsByTagName("link"),v=function(){var u,t=i.createElement("div"),n=i.body,o=r.style.fontSize,e=n&&n.style.fontSize,f=!1;return t.style.cssText="position:absolute;font-size:1em;width:1em",n||(n=f=i.createElement("body"),n.style.background="none"),r.style.fontSize="100%",n.style.fontSize="100%",n.appendChild(t),f&&r.insertBefore(n,r.firstChild),u=t.offsetWidth,f?r.removeChild(n):n.removeChild(t),r.style.fontSize=o,e&&(n.style.fontSize=e),u=l=parseFloat(u)},y=function(t){var rt="clientWidth",ut=r[rt],ft="CSS1Compat"===i.compatMode&&ut||i.body[rt]||ut,p={},ct=h[h.length-1],et=(new Date).getTime(),tt,g,nt,f,it;if(t&&c&&k>et-c)return n.clearTimeout(b),b=n.setTimeout(y,k),void 0;c=et;for(tt in e)if(e.hasOwnProperty(tt)){var a=e[tt],w=a.minw,d=a.maxw,ot=null===w,st=null===d,ht="em";w&&(w=parseFloat(w)*(w.indexOf(ht)>-1?l||v():1));d&&(d=parseFloat(d)*(d.indexOf(ht)>-1?l||v():1));a.hasquery&&(ot&&st||!(ot||ft>=w)||!(st||d>=ft))||(p[a.media]||(p[a.media]=[]),p[a.media].push(o[a.rules]))}for(g in u)u.hasOwnProperty(g)&&u[g]&&u[g].parentNode===s&&s.removeChild(u[g]);u.length=0;for(nt in p)p.hasOwnProperty(nt)&&(f=i.createElement("style"),it=p[nt].join("\n"),f.type="text/css",f.media=nt,s.insertBefore(f,ct.nextSibling),f.styleSheet?f.styleSheet.cssText=it:f.appendChild(i.createTextNode(it)),u.push(f))},d=function(n,i,r){var h=n.replace(t.regex.keyframes,"").match(t.regex.media),c=h&&h.length||0,l,a,f,v,u,p,w,s;for(i=i.substring(0,i.lastIndexOf("/")),l=function(n){return n.replace(t.regex.urls,"$1"+i+"$2$3")},a=!c&&r,i.length&&(i+="/"),a&&(c=1),f=0;c>f;f++)for(a?(v=r,o.push(l(n))):(v=h[f].match(t.regex.findStyles)&&RegExp.$1,o.push(RegExp.$2&&l(RegExp.$2))),p=v.split(","),w=p.length,s=0;w>s;s++)u=p[s],e.push({media:u.split("(")[0].match(t.regex.only)&&RegExp.$2||"all",rules:o.length-1,hasquery:u.indexOf("(")>-1,minw:u.match(t.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:u.match(t.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")});y()},g=function(){if(f.length){var t=f.shift();w(t.href,function(i){d(i,t.href,t.media);a[t.href]=!0;n.setTimeout(function(){g()},0)})}},nt=function(){for(var r=0;r<h.length;r++){var i=h[r],t=i.href,u=i.media,e=i.rel&&"stylesheet"===i.rel.toLowerCase();t&&e&&!a[t]&&(i.styleSheet&&i.styleSheet.rawCssText?(d(i.styleSheet.rawCssText,t,u),a[t]=!0):(!/^([a-zA-Z:]*\/\/)/.test(t)&&!it||t.replace(RegExp.$1,"").split("/")[0]===n.location.host)&&("//"===t.substring(0,2)&&(t=n.location.protocol+t),f.push({href:t,media:u})))}g()};nt();t.update=nt;t.getEmValue=v;n.addEventListener?n.addEventListener("resize",p,!1):n.attachEvent&&n.attachEvent("onresize",p)}}(this),function(n,t){typeof module=="object"&&module.exports?module.exports=n.document?t(n):function(n){return t(n)}:n.Highcharts=t()}(typeof window!="undefined"?window:this,function(n){function vi(n,t){var i="Highcharts error #"+n+": www.highcharts.com/errors/"+n;if(t)throw new Error(i);it.console&&console.log(i)}function c(){var t,n=arguments,r,i={},u=function(n,t){var r,i;typeof n!="object"&&(n={});for(i in t)t.hasOwnProperty(i)&&(r=t[i],n[i]=r&&typeof r=="object"&&Object.prototype.toString.call(r)!=="[object Array]"&&i!=="renderTo"&&typeof r.nodeType!="number"?u(n[i]||{},r):t[i]);return n};for(n[0]===!0&&(i=n[1],n=Array.prototype.slice.call(n,2)),r=n.length,t=0;t<r;t++)i=u(i,n[t]);return i}function a(n,t){return parseInt(n,t||10)}function ur(n){return typeof n=="string"}function kt(n){return n&&typeof n=="object"}function lr(n){return Object.prototype.toString.call(n)==="[object Array]"}function yi(n){return typeof n=="number"}function fr(n){return ct.log(n)/ct.LN10}function fi(n){return ct.pow(10,n)}function ei(n,t){for(var i=n.length;i--;)if(n[i]===t){n.splice(i,1);break}}function r(n){return n!==f&&n!==null}function tt(n,t,i){var u,f;if(ur(t))r(i)?n.setAttribute(t,i):n&&n.getAttribute&&(f=n.getAttribute(t));else if(r(t)&&kt(t))for(u in t)n.setAttribute(u,t[u]);return f}function pi(n){return lr(n)?n:[n]}function kr(n,t,i){if(t)return setTimeout(n,t,i);n.call(0,i)}function p(n,t){ci&&!pt&&t&&t.opacity!==f&&(t.filter="alpha(opacity="+t.opacity*100+")");e(n.style,t)}function wt(n,t,i,r,u){var f=l.createElement(n);return t&&e(f,t),u&&p(f,{padding:0,border:"none",margin:0}),i&&p(f,i),r&&r.appendChild(f),f}function oi(n,t){var i=function(){};return i.prototype=new n,e(i.prototype,t),i}function ar(n,t){return new Array((t||2)+1-String(n).length).join(0)+n}function ke(n,t){return/%$/.test(n)?t*parseFloat(n)/100:parseFloat(n)}function au(n){return(uf&&uf(n)||lf||0)*6e4}function ao(n,t){var r=ft.lang,i;return/f$/.test(n)?(i=n.match(/\.([0-9])/),i=i?i[1]:-1,t!==null&&(t=s.numberFormat(t,i,r.decimalPoint,n.indexOf(",")>-1?r.thousandsSep:""))):t=br(n,t),t}function yr(n,t){for(var c="{",r=!1,o,u,s,f,l,e=[],i,h;(h=n.indexOf(c))!==-1;){if(o=n.slice(0,h),r){for(u=o.split(":"),s=u.shift().split("."),l=s.length,i=t,f=0;f<l;f++)i=i[s[f]];u.length&&(i=ao(u.join(":"),i));e.push(i)}else e.push(o);n=n.slice(h+1);r=!r;c=r?"}":"{"}return e.push(n),e.join("")}function kf(n){return ct.pow(10,ot(ct.log(n)/ct.LN10))}function df(n,i,r,u,f){var s,e,o=n;for(r=t(r,1),s=n/r,i||(i=[1,2,2.5,5,10],u===!1&&(r===1?i=[1,2,5,10]:r<=.1&&(i=[1/r]))),e=0;e<i.length;e++)if(o=i[e],f&&o*r>=n||!f&&s<=(i[e]+(i[e+1]||i[e]))/2)break;return o*r}function ff(n,t){for(var u=n.length,r,i=0;i<u;i++)n[i].safeI=i;for(n.sort(function(n,i){return r=t(n,i),r===0?n.safeI-i.safeI:r}),i=0;i<u;i++)delete n[i].safeI}function dr(n){for(var t=n.length,i=n[0];t--;)n[t]<i&&(i=n[t]);return i}function er(n){for(var t=n.length,i=n[0];t--;)n[t]>i&&(i=n[t]);return i}function gr(n,t){for(var i in n)n[i]&&n[i]!==t&&n[i].destroy&&n[i].destroy(),delete n[i]}function nu(n){nf||(nf=wt(cr));n&&nf.appendChild(n);nf.innerHTML=""}function ti(n,t){return parseFloat(n.toPrecision(t||14))}function tu(n,i){i.renderer.globalAnimation=t(n,i.animation)}function vo(n){return{init:function(t){var i=n.fx;n.extend(n.easing,{easeOutQuad:function(n,t,i,r,u){return-r*(t/=u)*(t-2)+i}});n.each(["cur","_default","width","height","opacity"],function(t,r){var u=i.step,f;r==="cur"?u=i.prototype:r==="_default"&&n.Tween&&(u=n.Tween.propHooks[r],r="set");f=u[r];f&&(u[r]=function(n){var u,i;if(i=t?n:this,i.prop!=="align")return(u=i.elem,u.attr)?u.attr(i.prop.replace("strokeWidth","stroke-width"),r==="cur"?undefined:i.now):f.apply(this,arguments)})});vr(n.cssHooks.opacity,"get",function(n,t,i){return t.attr?t.opacity||0:n.call(this,t,i)});this.addAnimSetter("d",function(n){var i=n.elem,r;n.started||(r=t.init(i,i.d,i.toD),n.start=r[0],n.end=r[1],n.started=!0);i.attr("d",t.step(n.start,n.end,n.pos,i.toD))});this.each=Array.prototype.forEach?function(n,t){return Array.prototype.forEach.call(n,t)}:function(n,t){for(var r=n.length,i=0;i<r;i++)if(t.call(n[i],n[i],i,n)===!1)return i};n.fn.highcharts=function(){var r="Chart",t=arguments,n,i;return this[0]&&(ur(t[0])&&(r=t[0],t=Array.prototype.slice.call(t,1)),n=t[0],n!==f&&(n.chart=n.chart||{},n.chart.renderTo=this[0],i=new s[r](n,t[1]),i=this),n===f&&(i=lt[tt(this[0],"data-highcharts-chart")])),i}},addAnimSetter:function(t,i){n.Tween?n.Tween.propHooks[t]={set:i}:n.fx.step[t]=i},getScript:n.getScript,inArray:n.inArray,adapterRun:function(t,i){return n(t)[i]()},grep:n.grep,map:function(n,t){for(var r=[],u=n.length,i=0;i<u;i++)r[i]=t.call(n[i],n[i],i,n);return r},offset:function(t){return n(t).offset()},addEvent:function(t,i,r){n(t).bind(i,r)},removeEvent:function(t,i,r){var u=l.removeEventListener?"removeEventListener":"detachEvent";l[u]&&t&&!t[u]&&(t[u]=function(){});n(t).unbind(i,r)},fireEvent:function(t,i,r,u){var f=n.Event(i),o="detached"+i,s;!ci&&r&&(delete r.layerX,delete r.layerY,delete r.returnValue);e(f,r);t[i]&&(t[o]=t[i],t[i]=null);n.each(["preventDefault","stopPropagation"],function(n,t){var i=f[t];f[t]=function(){try{i.call(f)}catch(n){t==="preventDefault"&&(s=!0)}}});n(t).trigger(f);t[o]&&(t[i]=t[o],t[o]=null);!u||f.isDefaultPrevented()||s||u(f)},washMouseEvent:function(n){var t=n.originalEvent||n;return t.pageX===f&&(t.pageX=n.pageX,t.pageY=n.pageY),t},animate:function(t,i,r){var u=n(t);t.style||(t.style={});i.d&&(t.toD=i.d,i.d=1);u.stop();i.opacity!==f&&t.attr&&(i.opacity+="px");t.hasAnim=1;u.animate(i,r)},stop:function(t){t.hasAnim&&n(t).stop()}}}function no(){var u=ft.global,r=u.useUTC,i=r?"getUTC":"get",n=r?"setUTC":"set";nr=u.Date||window.Date;lf=r&&u.timezoneOffset;uf=r&&u.getTimezoneOffset;rf=function(n,i,u,f,e,o){var s;return r?nr.UTC.apply(0,arguments)+au(s):new nr(n,i,t(u,1),t(f,0),t(e,0),t(o,0)).getTime()};af=i+"Minutes";vf=i+"Hours";yf=i+"Day";hu=i+"Date";cu=i+"Month";lu=i+"FullYear";ye=n+"Milliseconds";pe=n+"Seconds";we=n+"Minutes";be=n+"Hours";pf=n+"Date";wf=n+"Month";bf=n+"FullYear"}function yo(n){return ft=c(!0,ft,n),no(),ft}function po(){return ft}function dt(n){if(!(this instanceof dt))return new dt(n);this.init(n)}function ut(){}function uu(n,t,i,r){this.axis=n;this.pos=t;this.type=i||"";this.isNew=!0;i||r||this.addLabel()}function uo(n,i,r,u,f){var e=n.chart.inverted;this.axis=n;this.isNegative=r;this.options=i;this.x=u;this.total=null;this.points={};this.stack=f;this.alignOptions={align:i.align||(e?r?"left":"right":"center"),verticalAlign:i.verticalAlign||(e?"middle":r?"bottom":"top"),y:t(i.y,e?4:r?14:-6),x:t(i.x,e?r?-6:6:0)};this.textAlign=i.textAlign||(e?r?"right":"left":"center")}var f,it=n||window,l=it.document,ct=Math,o=ct.round,ot=ct.floor,hi=ct.ceil,u=ct.max,h=ct.min,b=ct.abs,ht=ct.cos,yt=ct.sin,ri=ct.PI,gt=ri/180,ki=navigator.userAgent,oe=it.opera,ci=/(msie|trident|edge)/i.test(ki)&&!oe,du=l.documentMode===8,gu=!ci&&/AppleWebKit/.test(ki),hr=/Firefox/.test(ki),se=/(Mobile|Android|Windows Phone)/.test(ki),ir="http://www.w3.org/2000/svg",pt=!!l.createElementNS&&!!l.createElementNS(ir,"svg").createSVGRect,ho=hr&&parseInt(ki.split("Firefox/")[1],10)<4,ni=!pt&&!ci&&!!l.createElement("canvas").getContext,eu,ou,he={},hf=0,nf,ft,br,cf,v,li=function(){},lt=[],su=0,ce="Highcharts",le="4.1.10",cr="div",ai="absolute",ae="relative",di="hidden",rt="highcharts-",rr="visible",y="px",st="none",et="M",nt="L",co=/^[0-9]+$/,bt="",ui="hover",gi="select",tf=["plotTop","marginRight","marginBottom","plotLeft"],ve,lo="stroke-width",nr,rf,lf,uf,af,vf,yf,hu,cu,lu,ye,pe,we,be,pf,wf,bf,d={},s,e,t,vr,vu,or,i,yu,de,pr,g,at,w,ge,pu,iu,vt,ru,wi,gf,sr,to,ne,io,ii,te,si,wr,wu,fu,bu,ro,tr,k,fo,ue,fe,ef,eo,of,oo,ee,so,sf,ku;if(s=it.Highcharts?vi(16,!0):function(n){return s.loadAdapter(n),s},s.seriesTypes=d,e=s.extend=function(n,t){var i;n||(n={});for(i in t)n[i]=t[i];return n},t=s.pick=function(){for(var i=arguments,t,r=i.length,n=0;n<r;n++)if(t=i[n],t!==f&&t!==null)return t},vr=s.wrap=function(n,t,i){var r=n[t];n[t]=function(){var n=Array.prototype.slice.call(arguments);return n.unshift(r),i.apply(this,n)}},br=function(n,i,u){if(!r(i)||isNaN(i))return ft.lang.invalidDate||"";n=t(n,"%Y-%m-%d %H:%M:%S");var f=new nr(i-au(i)),h,c=f[vf](),a=f[yf](),p=f[hu](),v=f[cu](),w=f[lu](),y=ft.lang,b=y.weekdays,l=e({a:b[a].substr(0,3),A:b[a],d:ar(p),e:p,w:a,b:y.shortMonths[v],B:y.months[v],m:ar(v+1),y:w.toString().substr(2,2),Y:w,H:ar(c),k:c,I:ar(c%12||12),l:c%12||12,M:ar(f[af]()),p:c<12?"AM":"PM",P:c<12?"am":"pm",S:ar(f.getSeconds()),L:ar(o(i%1e3),3)},s.dateFormats);for(h in l)while(n.indexOf("%"+h)!==-1)n=n.replace("%"+h,typeof l[h]=="function"?l[h](i):l[h]);return u?n.substr(0,1).toUpperCase()+n.substr(1):n},v={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},s.numberFormat=function(n,t,i,r){var s=ft.lang,u=+n||0,e=t===-1?Math.min((u.toString().split(".")[1]||"").length,20):isNaN(t=Math.abs(t))?2:t,c=i===undefined?s.decimalPoint:i,h=r===undefined?s.thousandsSep:r,l=u<0?"-":"",f=String(a(u=b(u).toFixed(e))),o=f.length>3?f.length%3:0;return l+(o?f.substr(0,o)+h:"")+f.substr(o).replace(/(\d{3})(?=\d)/g,"$1"+h)+(e?c+b(u-f).toFixed(e).slice(2):"")},cf={init:function(n,t,i){t=t||"";var c=n.shift,s=t.indexOf("C")>-1,f=s?7:3,l,o,e,r=t.split(" "),u=[].concat(i),h,a,v=function(n){for(e=n.length;e--;)n[e]===et&&n.splice(e+1,0,n[e+1],n[e+2],n[e+1],n[e+2])};if(s&&(v(r),v(u)),n.isArea&&(h=r.splice(r.length-6,6),a=u.splice(u.length-6,6)),c<=u.length/f&&r.length===u.length)while(c--)u=[].concat(u).splice(0,f).concat(u);if(n.shift=0,r.length)for(l=u.length;r.length<l;)o=[].concat(r).splice(r.length-f,f),s&&(o[f-6]=o[f-2],o[f-5]=o[f-1]),r=r.concat(o);return h&&(r=r.concat(h),u=u.concat(a)),[r,u]},step:function(n,t,i,r){var f=[],u=n.length,e;if(i===1)f=r;else if(u===t.length&&i<1)while(u--)e=parseFloat(n[u]),f[u]=isNaN(e)?n[u]:i*parseFloat(t[u]-e)+e;else f=t;return f}},s.loadAdapter=function(n){n&&(n.fn&&n.fn.jquery&&(n=vo(n)),n.init&&(n.init(cf),delete n.init),s.extend(s,n),vu=s.adapterRun,or=s.inArray,i=s.each,yu=s.grep,de=s.offset,pr=s.map,g=s.addEvent,at=s.removeEvent,w=s.fireEvent,ge=s.washMouseEvent,pu=s.animate,iu=s.stop)},s.loadAdapter(it.HighchartsAdapter||it.jQuery),ft={colors:["#7cb5ec","#434348","#90ed7d","#f7a35c","#8085e9","#f15c80","#e4d354","#2b908f","#f45b5b","#91e8e1"],symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/4.1.10/gfx/vml-radial-gradient.png"},chart:{borderColor:"#4572A7",borderRadius:0,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],backgroundColor:"#FFFFFF",plotBorderColor:"#C0C0C0",resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}}},title:{text:"Chart title",align:"center",margin:15,style:{color:"#333333",fontSize:"18px"}},subtitle:{text:"",align:"center",style:{color:"#555555"}},plotOptions:{line:{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},lineWidth:2,marker:{lineWidth:0,radius:4,lineColor:"#FFFFFF",states:{hover:{enabled:!0,lineWidthPlus:1,radiusPlus:2},select:{fillColor:"#FFFFFF",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){return this.y===null?"":s.numberFormat(this.y,-1)},style:{color:"contrast",fontSize:"11px",fontWeight:"bold",textShadow:"0 0 6px contrast, 0 0 3px contrast"},verticalAlign:"bottom",x:0,y:0,padding:5},cropThreshold:300,pointRange:0,softThreshold:!0,states:{hover:{lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:ai,color:"#3E576F"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#909090",borderRadius:0,navigation:{activeColor:"#274b6d",inactiveColor:"#CCC"},shadow:!1,itemStyle:{color:"#333333",fontSize:"12px",fontWeight:"bold"},itemHoverStyle:{color:"#000"},itemHiddenStyle:{color:"#CCC"},itemCheckboxStyle:{position:ai,width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:ae,top:"45%"},style:{position:ai,backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:pt,backgroundColor:"rgba(249, 249, 249, .85)",borderWidth:1,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:"",headerFormat:'<span style="font-size: 10px">{point.key}<\/span><br/>',pointFormat:'<span style="color:{point.color}">●<\/span> {series.name}: <b>{point.y}<\/b><br/>',shadow:!0,snap:se?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",pointerEvents:"none",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"Highcharts.com",href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#909090",fontSize:"9px"}}},vt=ft.plotOptions,ru=vt.line,no(),dt.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(n){return[a(n[1]),a(n[2]),a(n[3]),parseFloat(n[4],10)]}},{regex:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(n){return[a(n[1],16),a(n[2],16),a(n[3],16),1]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(n){return[a(n[1]),a(n[2]),a(n[3]),1]}}],init:function(n){var t,i,r,u;if(this.input=n,n&&n.stops)this.stops=pr(n.stops,function(n){return new dt(n[1])});else for(r=this.parsers.length;r--&&!i;)u=this.parsers[r],t=u.regex.exec(n),t&&(i=u.parse(t));this.rgba=i||[]},get:function(n){var u=this.input,t=this.rgba,r;return this.stops?(r=c(u),r.stops=[].concat(r.stops),i(this.stops,function(t,i){r.stops[i]=[r.stops[i][0],t.get(n)]})):r=t&&!isNaN(t[0])?n!=="rgb"&&(n||t[3]!==1)?n==="a"?t[3]:"rgba("+t.join(",")+")":"rgb("+t[0]+","+t[1]+","+t[2]+")":u,r},brighten:function(n){var t,r=this.rgba;if(this.stops)i(this.stops,function(t){t.brighten(n)});else if(yi(n)&&n!==0)for(t=0;t<3;t++)r[t]+=a(n*255),r[t]<0&&(r[t]=0),r[t]>255&&(r[t]=255);return this},setOpacity:function(n){return this.rgba[3]=n,this}},ut.prototype={opacity:1,textProps:["direction","fontSize","fontWeight","fontFamily","fontStyle","color","lineHeight","width","textDecoration","textOverflow","textShadow"],init:function(n,t){var i=this;i.element=t==="span"?wt(t):l.createElementNS(ir,t);i.renderer=n},animate:function(n,i,r){var u=t(i,this.renderer.globalAnimation,!0);return iu(this),u?(u=c(u,{}),r&&(u.complete=r),pu(this,n,u)):this.attr(n,null,r),this},colorGradient:function(n,t,u){var s=this.renderer,y,o,f,p,a,l,v,w,b,k,h,d,e=[],g;if(n.linearGradient?o="linearGradient":n.radialGradient&&(o="radialGradient"),o){f=n[o];a=s.gradients;v=n.stops;k=u.radialReference;lr(f)&&(n[o]=f={x1:f[0],y1:f[1],x2:f[2],y2:f[3],gradientUnits:"userSpaceOnUse"});o==="radialGradient"&&k&&!r(f.gradientUnits)&&(p=f,f=c(f,s.getRadialAttr(k,p),{gradientUnits:"userSpaceOnUse"}));for(h in f)h!=="id"&&e.push(h,f[h]);for(h in v)e.push(v[h]);e=e.join(",");a[e]?d=a[e].attr("id"):(f.id=d=rt+hf++,a[e]=l=s.createElement(o).attr(f).add(s.defs),l.radAttr=p,l.stops=[],i(v,function(n){var t;n[1].indexOf("rgba")===0?(y=dt(n[1]),w=y.get("rgb"),b=y.get("a")):(w=n[1],b=1);t=s.createElement("stop").attr({offset:n[0],"stop-color":w,"stop-opacity":b}).add(l);l.stops.push(t)}));g="url("+s.url+"#"+d+")";u.setAttribute(t,g);u.gradient=e;n.toString=function(){return g}}},applyTextShadow:function(n){var t=this.element,e,s=n.indexOf("contrast")!==-1,r={},o=this.renderer.forExport,h=o||t.style.textShadow!==f&&!ci;s&&(r.textShadow=n=n.replace(/contrast/g,this.renderer.getContrast(t.style.fill)));(gu||o)&&(r.textRendering="geometricPrecision");h?this.css(r):(this.fakeTS=!0,this.ySetter=this.xSetter,e=[].slice.call(t.getElementsByTagName("tspan")),i(n.split(/\s?,\s?/g),function(n){var o=t.firstChild,f,r;n=n.split(" ");f=n[n.length-1];r=n[n.length-2];r&&i(e,function(n,i){var e;i===0&&(n.setAttribute("x",t.getAttribute("x")),i=t.getAttribute("y"),n.setAttribute("y",i||0),i===null&&t.setAttribute("y",0));e=n.cloneNode(1);tt(e,{"class":rt+"text-shadow",fill:f,stroke:f,"stroke-opacity":1/u(a(r),3),"stroke-width":r,"stroke-linejoin":"round"});t.insertBefore(e,o)})}))},attr:function(n,t,i){var r,u,o=this.element,s,h=this,e;if(typeof n=="string"&&t!==f&&(r=n,n={},n[r]=t),typeof n=="string")h=(this[n+"Getter"]||this._defaultGetter).call(this,n,o);else{for(r in n)u=n[r],e=!1,this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(r)&&(s||(this.symbolAttr(n),s=!0),e=!0),this.rotation&&(r==="x"||r==="y")&&(this.doTransform=!0),e||(this[r+"Setter"]||this._defaultSetter).call(this,u,r,o),this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(r)&&this.updateShadows(r,u);this.doTransform&&(this.updateTransform(),this.doTransform=!1)}return i&&i(),h},updateShadows:function(n,t){for(var i=this.shadows,r=i.length;r--;)i[r].setAttribute(n,n==="height"?Math.max(t-(i[r].cutHeight||0),0):n==="d"?this.d:t)},addClass:function(n){var t=this.element,i=tt(t,"class")||"";return i.indexOf(n)===-1&&tt(t,"class",i+" "+n),this},symbolAttr:function(n){var r=this;i(["x","y","r","start","end","width","height","innerR","anchorX","anchorY"],function(i){r[i]=t(n[i],r[i])});r.attr({d:r.renderer.symbols[r.symbolName](r.x,r.y,r.width,r.height,r)})},clip:function(n){return this.attr("clip-path",n?"url("+this.renderer.url+"#"+n.id+")":st)},crisp:function(n){var t=this,i,u={},r,f=n.strokeWidth||t.strokeWidth||0;r=o(f)%2/2;n.x=ot(n.x||t.x||0)+r;n.y=ot(n.y||t.y||0)+r;n.width=ot((n.width||t.width||0)-2*r);n.height=ot((n.height||t.height||0)-2*r);n.strokeWidth=f;for(i in n)t[i]!==n[i]&&(t[i]=u[i]=n[i]);return u},css:function(n){var t=this,r=t.styles,f={},o=t.element,u,i,s="",h,c=!r;if(n&&n.color&&(n.fill=n.color),r)for(i in n)n[i]!==r[i]&&(f[i]=n[i],c=!0);if(c){if(u=t.textWidth=n&&n.width&&o.nodeName.toLowerCase()==="text"&&a(n.width)||t.textWidth,r&&(n=e(r,f)),t.styles=n,u&&(ni||!pt&&t.renderer.forExport)&&delete n.width,ci&&!pt)p(t.element,n);else{h=function(n,t){return"-"+t.toLowerCase()};for(i in n)s+=i.replace(/([A-Z])/g,h)+":"+n[i]+";";tt(o,"style",s)}u&&t.added&&t.renderer.buildText(t)}return t},on:function(n,t){var r=this,i=r.element;return ou&&n==="click"?(i.ontouchstart=function(n){r.touchEventFired=nr.now();n.preventDefault();t.call(i,n)},i.onclick=function(n){(ki.indexOf("Android")===-1||nr.now()-(r.touchEventFired||0)>1100)&&t.call(i,n)}):i["on"+n]=t,this},setRadialReference:function(n){var t=this.renderer.gradients[this.element.gradient];return this.element.radialReference=n,t&&t.radAttr&&t.animate(this.renderer.getRadialAttr(n,t.radAttr)),this},translate:function(n,t){return this.attr({translateX:n,translateY:t})},invert:function(){var n=this;return n.inverted=!0,n.updateTransform(),n},updateTransform:function(){var n=this,f=n.translateX||0,e=n.translateY||0,o=n.scaleX,s=n.scaleY,h=n.inverted,c=n.rotation,u=n.element,i;h&&(f+=n.attr("width"),e+=n.attr("height"));i=["translate("+f+","+e+")"];h?i.push("rotate(90) scale(-1,1)"):c&&i.push("rotate("+c+" "+(u.getAttribute("x")||0)+" "+(u.getAttribute("y")||0)+")");(r(o)||r(s))&&i.push("scale("+t(o,1)+" "+t(s,1)+")");i.length&&u.setAttribute("transform",i.join(" "))},toFront:function(){var n=this.element;return n.parentNode.appendChild(n),this},align:function(n,i,r){var u,f,s,h,e={},c,l=this.renderer,a=l.alignedObjects;return n?(this.alignOptions=n,this.alignByTranslate=i,(!r||ur(r))&&(this.alignTo=c=r||"renderer",ei(a,this),a.push(this),r=null)):(n=this.alignOptions,i=this.alignByTranslate,c=this.alignTo),r=t(r,l[c],l),u=n.align,f=n.verticalAlign,s=(r.x||0)+(n.x||0),h=(r.y||0)+(n.y||0),(u==="right"||u==="center")&&(s+=(r.width-(n.width||0))/{right:1,center:2}[u]),e[i?"translateX":"x"]=o(s),(f==="bottom"||f==="middle")&&(h+=(r.height-(n.height||0))/({bottom:1,middle:2}[f]||1)),e[i?"translateY":"y"]=o(h),this[this.placed?"animate":"attr"](e),this.placed=!0,this.alignAttr=e,this},getBBox:function(n,r){var h=this,u,y=h.renderer,g,c,p,l,s=h.element,w=h.styles,a=h.textStr,nt,k=s.style,v,d=y.cache,tt=y.cacheKeys,o;if(p=t(r,h.rotation),l=p*gt,a!==f&&(o=["",p||0,w&&w.fontSize,s.style.width].join(","),o=a===""||co.test(a)?"num:"+a.toString().length+o:a+o),o&&!n&&(u=d[o]),!u){if(s.namespaceURI===ir||y.forExport){try{v=this.fakeTS&&function(n){i(s.querySelectorAll("."+rt+"text-shadow"),function(t){t.style.display=n})};hr&&k.textShadow?(nt=k.textShadow,k.textShadow=""):v&&v(st);u=s.getBBox?e({},s.getBBox()):{width:s.offsetWidth,height:s.offsetHeight};nt?k.textShadow=nt:v&&v("")}catch(it){}(!u||u.width<0)&&(u={width:0,height:0})}else u=h.htmlGetBBox();if(y.isSVG&&(g=u.width,c=u.height,ci&&w&&w.fontSize==="11px"&&c.toPrecision(3)==="16.9"&&(u.height=c=14),p&&(u.width=b(c*yt(l))+b(g*ht(l)),u.height=b(c*ht(l))+b(g*yt(l)))),o){while(tt.length>250)delete d[tt.shift()];d[o]||tt.push(o);d[o]=u}}return u},show:function(n){return this.attr({visibility:n?"inherit":rr})},hide:function(){return this.attr({visibility:di})},fadeOut:function(n){var t=this;t.animate({opacity:0},{duration:n||150,complete:function(){t.attr({y:-9999})}})},add:function(n){var t=this.renderer,r=this.element,i;return n&&(this.parentGroup=n),this.parentInverted=n&&n.inverted,this.textStr!==undefined&&t.buildText(this),this.added=!0,(!n||n.handleZ||this.zIndex)&&(i=this.zIndexSetter()),i||(n?n.element:t.box).appendChild(r),this.onAdd&&this.onAdd(),this},safeRemoveChild:function(n){var t=n.parentNode;t&&t.removeChild(n)},destroy:function(){var n=this,t=n.element||{},f=n.shadows,r=n.renderer.isSVG&&t.nodeName==="SPAN"&&n.parentGroup,e,o,u;if(t.onclick=t.onmouseout=t.onmouseover=t.onmousemove=t.point=null,iu(n),n.clipPath&&(n.clipPath=n.clipPath.destroy()),n.stops){for(u=0;u<n.stops.length;u++)n.stops[u]=n.stops[u].destroy();n.stops=null}for(n.safeRemoveChild(t),f&&i(f,function(t){n.safeRemoveChild(t)});r&&r.div&&r.div.childNodes.length===0;)e=r.parentGroup,n.safeRemoveChild(r.div),delete r.div,r=e;n.alignTo&&ei(n.renderer.alignedObjects,n);for(o in n)delete n[o];return null},shadow:function(n,i,r){var c=[],e,f,h=this.element,o,s,l,a;if(n){for(s=t(n.width,3),l=(n.opacity||.15)/s,a=this.parentInverted?"(-1,-1)":"("+t(n.offsetX,1)+", "+t(n.offsetY,1)+")",e=1;e<=s;e++)f=h.cloneNode(0),o=s*2+1-2*e,tt(f,{isShadow:"true",stroke:n.color||"black","stroke-opacity":l*e,"stroke-width":o,transform:"translate"+a,fill:st}),r&&(tt(f,"height",u(tt(f,"height")-o,0)),f.cutHeight=o),i?i.element.appendChild(f):h.parentNode.insertBefore(f,h),c.push(f);this.shadows=c}return this},xGetter:function(n){return this.element.nodeName==="circle"&&(n={x:"cx",y:"cy"}[n]||n),this._defaultGetter(n)},_defaultGetter:function(n){var i=t(this[n],this.element?this.element.getAttribute(n):null,0);return/^[\-0-9\.]+$/.test(i)&&(i=parseFloat(i)),i},dSetter:function(n,t,i){n&&n.join&&(n=n.join(" "));/(NaN| {2}|^$)/.test(n)&&(n="M 0 0");i.setAttribute(t,n);this[t]=n},dashstyleSetter:function(n){var t;if(n=n&&n.toLowerCase(),n){for(n=n.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(","),t=n.length;t--;)n[t]=a(n[t])*this["stroke-width"];n=n.join(",").replace("NaN","none");this.element.setAttribute("stroke-dasharray",n)}},alignSetter:function(n){this.element.setAttribute("text-anchor",{left:"start",center:"middle",right:"end"}[n])},opacitySetter:function(n,t,i){this[t]=n;i.setAttribute(t,n)},titleSetter:function(n){var i=this.element.getElementsByTagName("title")[0];i||(i=l.createElementNS(ir,"title"),this.element.appendChild(i));i.appendChild(l.createTextNode(String(t(n),"").replace(/<[^>]*>/g,"")))},textSetter:function(n){n!==this.textStr&&(delete this.bBox,this.textStr=n,this.added&&this.renderer.buildText(this))},fillSetter:function(n,t,i){typeof n=="string"?i.setAttribute(t,n):n&&this.colorGradient(n,t,i)},visibilitySetter:function(n,t,i){n==="inherit"?i.removeAttribute(t):i.setAttribute(t,n)},zIndexSetter:function(n,t){var l=this.renderer,o=this.parentGroup,y=o||l,s=y.element||l.box,h,i,c,u=this.element,f,v=this.added,e;if(r(n)&&(u.setAttribute(t,n),n=+n,this[t]===n&&(v=!1),this[t]=n),v){for(n=this.zIndex,n&&o&&(o.handleZ=!0),h=s.childNodes,e=0;e<h.length&&!f;e++)i=h[e],c=tt(i,"zIndex"),i!==u&&(a(c)>n||!r(n)&&r(c))&&(s.insertBefore(u,i),f=!0);f||s.appendChild(u)}return f},_defaultSetter:function(n,t,i){i.setAttribute(t,n)}},ut.prototype.yGetter=ut.prototype.xGetter,ut.prototype.translateXSetter=ut.prototype.translateYSetter=ut.prototype.rotationSetter=ut.prototype.verticalAlignSetter=ut.prototype.scaleXSetter=ut.prototype.scaleYSetter=function(n,t){this[t]=n;this.doTransform=!0},ut.prototype["stroke-widthSetter"]=ut.prototype.strokeSetter=function(n,t,i){this[t]=n;this.stroke&&this["stroke-width"]?(this.strokeWidth=this["stroke-width"],ut.prototype.fillSetter.call(this,this.stroke,"stroke",i),i.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):t==="stroke-width"&&n===0&&this.hasStroke&&(i.removeAttribute("stroke"),this.hasStroke=!1)},wi=function(){this.init.apply(this,arguments)},wi.prototype={Element:ut,init:function(n,t,i,r,u,f){var e=this,v=location,h,s,a,c,o;h=e.createElement("svg").attr({version:"1.1"}).css(this.getStyle(r));s=h.element;n.appendChild(s);n.innerHTML.indexOf("xmlns")===-1&&tt(s,"xmlns",ir);e.isSVG=!0;e.box=s;e.boxWrapper=h;e.alignedObjects=[];e.url=(hr||gu)&&l.getElementsByTagName("base").length?v.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";a=this.createElement("desc").add();a.element.appendChild(l.createTextNode("Created with "+ce+" "+le));e.defs=this.createElement("defs").add();e.allowHTML=f;e.forExport=u;e.gradients={};e.cache={};e.cacheKeys=[];e.setSize(t,i,!1);hr&&n.getBoundingClientRect&&(e.subPixelFix=c=function(){p(n,{left:0,top:0});o=n.getBoundingClientRect();p(n,{left:hi(o.left)-o.left+y,top:hi(o.top)-o.top+y})},c(),g(it,"resize",c))},getStyle:function(n){return this.style=e({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},n),this.style},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var n=this,t=n.defs;return n.box=null,n.boxWrapper=n.boxWrapper.destroy(),gr(n.gradients||{}),n.gradients=null,t&&(n.defs=t.destroy()),n.subPixelFix&&at(it,"resize",n.subPixelFix),n.alignedObjects=null,null},createElement:function(n){var t=new this.Element;return t.init(this,n),t},draw:function(){},getRadialAttr:function(n,t){return{cx:n[0]-n[2]/2+t.cx*n[2],cy:n[1]-n[2]/2+t.cy*n[2],r:t.r*n[2]}},buildText:function(n){for(var u=n.element,e=this,k=e.forExport,o=t(n.textStr,"").toString(),d=o.indexOf("<")!==-1,s,g=u.childNodes,c,v,y=tt(u,"x"),r=n.styles,f=n.textWidth,nt=r&&r.lineHeight,w=r&&r.textShadow,b=r&&r.textOverflow==="ellipsis",it=g.length,h=f&&!n.added&&this.box,rt=function(n){return nt?a(nt):e.fontMetrics(/(px|em)$/.test(n&&n.style.fontSize)?n.style.fontSize:r&&r.fontSize||e.style.fontSize||12,n).h},ut=function(n){return n.replace(/&lt;/g,"<").replace(/&gt;/g,">")};it--;)u.removeChild(g[it]);d||w||b||o.indexOf(" ")!==-1?(c=/<.*style="([^"]+)".*>/,v=/<.*href="(http[^"]+)".*>/,h&&h.appendChild(u),s=d?o.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">').replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"<\/span>").split(/<br.*?>/g):[o],s[s.length-1]===""&&s.pop(),i(s,function(t,o){var s,h=0;t=t.replace(/<span/g,"|||<span").replace(/<\/span>/g,"<\/span>|||");s=t.split("|||");i(s,function(t){var it,i,ft;if((t!==""||s.length===1)&&(it={},i=l.createElementNS(ir,"tspan"),c.test(t)&&(ft=t.match(c)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),tt(i,"style",ft)),v.test(t)&&!k&&(tt(i,"onclick",'location.href="'+t.match(v)[1]+'"'),p(i,{cursor:"pointer"})),t=ut(t.replace(/<(.|\n)*?>/g,"")||" "),t!==" ")){if(i.appendChild(l.createTextNode(t)),h?it.dx=0:o&&y!==null&&(it.x=y),tt(i,it),u.appendChild(i),!h&&o&&(!pt&&k&&p(i,{display:"block"}),tt(i,"dy",rt(i))),f){for(var a=t.replace(/([^\^])-/g,"$1- ").split(" "),ht=s.length>1||o||a.length>1&&r.whiteSpace!=="nowrap",w,d,g,et=[],ct=rt(i),lt=1,at=n.rotation,nt=t,ot=nt.length,st;(ht||b)&&(a.length||et.length);)n.rotation=0,st=n.getBBox(!0),g=st.width,!pt&&e.forExport&&(g=e.measureSpanWidth(i.firstChild.data,n.styles)),w=g>f,d===undefined&&(d=w),b&&d?(ot/=2,nt===""||!w&&ot<.5?a=[]:(w&&(d=!0),nt=t.substring(0,nt.length+(w?-1:1)*hi(ot)),a=[nt+(f>3?"…":"")],i.removeChild(i.firstChild))):w&&a.length!==1?(i.removeChild(i.firstChild),et.unshift(a.pop())):(a=et,et=[],a.length&&(lt++,i=l.createElementNS(ir,"tspan"),tt(i,{dy:ct,x:y}),ft&&tt(i,"style",ft),u.appendChild(i)),g>f&&(f=g)),a.length&&i.appendChild(l.createTextNode(a.join(" ").replace(/- /g,"-")));d&&n.attr("title",n.textStr);n.rotation=at}h++}})}),h&&h.removeChild(u),w&&n.applyTextShadow&&n.applyTextShadow(w)):u.appendChild(l.createTextNode(ut(o)))},getContrast:function(n){return n=dt(n).rgba,n[0]+n[1]+n[2]>384?"#000000":"#FFFFFF"},button:function(n,t,i,r,u,f,o,s,h){var l=this.label(n,t,i,h,null,null,null,null,"button"),a=0,b,k,v,y,p,d,w={x1:0,y1:0,x2:0,y2:1};return u=c({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:w,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},u),v=u.style,delete u.style,f=c(u,{stroke:"#68A",fill:{linearGradient:w,stops:[[0,"#FFF"],[1,"#ACF"]]}},f),y=f.style,delete f.style,o=c(u,{stroke:"#68A",fill:{linearGradient:w,stops:[[0,"#9BD"],[1,"#CDF"]]}},o),p=o.style,delete o.style,s=c(u,{style:{color:"#CCC"}},s),d=s.style,delete s.style,g(l.element,ci?"mouseover":"mouseenter",function(){a!==3&&l.attr(f).css(y)}),g(l.element,ci?"mouseout":"mouseleave",function(){a!==3&&(b=[u,f,o][a],k=[v,y,p][a],l.attr(b).css(k))}),l.setState=function(n){l.state=a=n;n?n===2?l.attr(o).css(p):n===3&&l.attr(s).css(d):l.attr(u).css(v)},l.on("click",function(n){a!==3&&r.call(l,n)}).attr(u).css(e({cursor:"default"},v))},crispLine:function(n,t){return n[1]===n[4]&&(n[1]=n[4]=o(n[1])-t%2/2),n[2]===n[5]&&(n[2]=n[5]=o(n[2])+t%2/2),n},path:function(n){var t={fill:st};return lr(n)?t.d=n:kt(n)&&e(t,n),this.createElement("path").attr(t)},circle:function(n,t,i){var u=kt(n)?n:{x:n,y:t,r:i},r=this.createElement("circle");return r.xSetter=function(n){this.element.setAttribute("cx",n)},r.ySetter=function(n){this.element.setAttribute("cy",n)},r.attr(u)},arc:function(n,t,i,r,u,f){var e;return kt(n)&&(t=n.y,i=n.r,r=n.innerR,u=n.start,f=n.end,n=n.x),e=this.symbol("arc",n||0,t||0,i||0,i||0,{innerR:r||0,start:u||0,end:f||0}),e.r=i,e},rect:function(n,t,i,r,e,o){e=kt(n)?n.r:e;var h=this.createElement("rect"),s=kt(n)?n:n===f?{}:{x:n,y:t,width:u(i,0),height:u(r,0)};return o!==f&&(s.strokeWidth=o,s=h.crisp(s)),e&&(s.r=e),h.rSetter=function(n){tt(this.element,{rx:n,ry:n})},h.attr(s)},setSize:function(n,i,r){var u=this,f=u.alignedObjects,e=f.length;for(u.width=n,u.height=i,u.boxWrapper[t(r,!0)?"animate":"attr"]({width:n,height:i});e--;)f[e].align()},g:function(n){var t=this.createElement("g");return r(n)?t.attr({"class":rt+n}):t},image:function(n,t,i,r,u){var o={preserveAspectRatio:st},f;return arguments.length>1&&e(o,{x:t,y:i,width:r,height:u}),f=this.createElement("image").attr(o),f.element.setAttributeNS?f.element.setAttributeNS("http://www.w3.org/1999/xlink","href",n):f.element.setAttribute("hc-svg-href",n),f},symbol:function(n,t,i,r,u,f){var s,a=this.symbols[n],v=a&&a(o(t),o(i),r,u,f),y=/^url\((.*?)\)$/,h,c,l;return v?(s=this.path(v),e(s,{symbolName:n,x:t,y:i,width:r,height:u}),f&&e(s,f)):y.test(n)&&(l=function(n,t){n.element&&(n.attr({width:t[0],height:t[1]}),n.alignByTranslate||n.translate(o((r-t[0])/2),o((u-t[1])/2)))},h=n.match(y)[1],c=he[h]||f&&f.width&&f.height&&[f.width,f.height],s=this.image(h).attr({x:t,y:i}),s.isImg=!0,c?l(s,c):(s.attr({width:0,height:0}),wt("img",{onload:function(){this.width===0&&(p(this,{position:ai,top:"-999em"}),document.body.appendChild(this));l(s,he[h]=[this.width,this.height]);this.parentNode&&this.parentNode.removeChild(this)},src:h}))),s},symbols:{circle:function(n,t,i,r){var u=.166*i;return[et,n+i/2,t,"C",n+i+u,t,n+i+u,t+r,n+i/2,t+r,"C",n-u,t+r,n-u,t,n+i/2,t,"Z"]},square:function(n,t,i,r){return[et,n,t,nt,n+i,t,n+i,t+r,n,t+r,"Z"]},triangle:function(n,t,i,r){return[et,n+i/2,t,nt,n+i,t+r,n,t+r,"Z"]},"triangle-down":function(n,t,i,r){return[et,n,t,nt,n+i,t,n+i/2,t+r,"Z"]},diamond:function(n,t,i,r){return[et,n+i/2,t,nt,n+i,t+r/2,n+i/2,t+r,n,t+r/2,"Z"]},arc:function(n,t,i,r,u){var o=u.start,f=u.r||i||r,s=u.end-.001,e=u.innerR,h=u.open,c=ht(o),l=yt(o),a=ht(s),v=yt(s),y=u.end-o<ri?0:1;return[et,n+f*c,t+f*l,"A",f,f,0,y,1,n+f*a,t+f*v,h?et:nt,n+e*a,t+e*v,"A",e,e,0,y,0,n+e*c,t+e*l,h?"":"Z"]},callout:function(n,t,i,r,u){var a=6,s=6,f=h(u&&u.r||0,i,r),c=f+s,e=u&&u.anchorX,o=u&&u.anchorY,l;return l=["M",n+f,t,"L",n+i-f,t,"C",n+i,t,n+i,t,n+i,t+f,"L",n+i,t+r-f,"C",n+i,t+r,n+i,t+r,n+i-f,t+r,"L",n+f,t+r,"C",n,t+r,n,t+r,n,t+r-f,"L",n,t+f,"C",n,t,n,t,n+f,t],e&&e>i&&o>t+c&&o<t+r-c?l.splice(13,3,"L",n+i,o-s,n+i+a,o,n+i,o+s,n+i,t+r-f):e&&e<0&&o>t+c&&o<t+r-c?l.splice(33,3,"L",n,o+s,n-a,o,n,o-s,n,t+f):o&&o>r&&e>n+c&&e<n+i-c?l.splice(23,3,"L",e+s,t+r,e,t+r+a,e-s,t+r,n+f,t+r):o&&o<0&&e>n+c&&e<n+i-c&&l.splice(3,3,"L",e-s,t,e,t-a,e+s,t,i-f,t),l}},clipRect:function(n,t,i,r){var u,f=rt+hf++,e=this.createElement("clipPath").attr({id:f}).add(this.defs);return u=this.rect(n,t,i,r,0).add(e),u.id=f,u.clipPath=e,u.count=0,u},text:function(n,t,i,r){var u=this,o=ni||!pt&&u.forExport,f,e={};return r&&(u.allowHTML||!u.forExport)?u.html(n,t,i):(e.x=Math.round(t||0),i&&(e.y=Math.round(i)),(n||n===0)&&(e.text=n),f=u.createElement("text").attr(e),o&&f.css({position:ai}),r||(f.xSetter=function(n,t,i){for(var f=i.getElementsByTagName("tspan"),u,e=i.getAttribute(t),r=0;r<f.length;r++)u=f[r],u.getAttribute(t)===e&&u.setAttribute(t,n);i.setAttribute(t,n)}),f)},fontMetrics:function(n,t){var i,u,r;return n=n||this.style.fontSize,!n&&t&&it.getComputedStyle&&(t=t.element||t,r=it.getComputedStyle(t,""),n=r&&r.fontSize),n=/px/.test(n)?a(n):/em/.test(n)?parseFloat(n)*12:12,i=n<24?n+3:o(n*1.2),u=o(i*.8),{h:i,b:u,f:n}},rotCorr:function(n,t,i){var r=n;return t&&i&&(r=u(r*ht(t*gt),4)),{x:-n/3*yt(t*gt),y:r}},label:function(n,t,u,s,h,l,a,v,y){var g=this,p=g.g(y),w=g.text("",0,0,a).attr({zIndex:1}),b,k,ft=0,d=3,et=0,nt,ht,ct,lt,ot=0,it={},vt,yt,pt,rt,tt,wt;return pt=function(){var n,t,i=w.element.style;k=(nt===undefined||ht===undefined||p.styles.textAlign)&&r(w.textStr)&&w.getBBox();p.width=(nt||k.width||0)+2*d+et;p.height=(ht||k.height||0)+2*d;vt=d+g.fontMetrics(i&&i.fontSize,w).b;yt&&(b||(n=ot,t=(v?-vt:0)+ot,p.box=b=s?g.symbol(s,n,t,p.width,p.height,it):g.rect(n,t,p.width,p.height,0,it[lo]),b.isImg||b.attr("fill",st),b.add(p)),b.isImg||b.attr(e({width:o(p.width),height:o(p.height)},it)),it=null)},rt=function(){var u=p.styles,i=u&&u.textAlign,t=et+d,n;n=v?0:vt;r(nt)&&k&&(i==="center"||i==="right")&&(t+={center:.5,right:1}[i]*(nt-k.width));(t!==w.x||n!==w.y)&&(w.attr("x",t),n!==f&&w.attr("y",n));w.x=t;w.y=n},tt=function(n,t){b?b.attr(n,t):it[n]=t},p.onAdd=function(){w.add(p);p.attr({text:n||n===0?n:"",x:t,y:u});b&&r(h)&&p.attr({anchorX:h,anchorY:l})},p.widthSetter=function(n){nt=n},p.heightSetter=function(n){ht=n},p.paddingSetter=function(n){r(n)&&n!==d&&(d=p.padding=n,rt())},p.paddingLeftSetter=function(n){r(n)&&n!==et&&(et=n,rt())},p.alignSetter=function(n){n={left:0,center:.5,right:1}[n];n!==ft&&(ft=n,k&&p.attr({x:t}))},p.textSetter=function(n){n!==f&&w.textSetter(n);pt();rt()},p["stroke-widthSetter"]=function(n,t){n&&(yt=!0);ot=n%2/2;tt(t,n)},p.strokeSetter=p.fillSetter=p.rSetter=function(n,t){t==="fill"&&n&&(yt=!0);tt(t,n)},p.anchorXSetter=function(n,t){h=n;tt(t,o(n)-ot-ct)},p.anchorYSetter=function(n,t){l=n;tt(t,n-lt)},p.xSetter=function(n){p.x=n;ft&&(n-=ft*((nt||k.width)+2*d));ct=o(n);p.attr("translateX",ct)},p.ySetter=function(n){lt=p.y=o(n);p.attr("translateY",lt)},wt=p.css,e(p,{css:function(n){if(n){var t={};n=c(n);i(p.textProps,function(i){n[i]!==f&&(t[i]=n[i],delete n[i])});w.css(t)}return wt.call(p,n)},getBBox:function(){return{width:k.width+2*d,height:k.height+2*d,x:k.x-d,y:k.y-d}},shadow:function(n){return b&&b.shadow(n),p},destroy:function(){at(p.element,"mouseenter");at(p.element,"mouseleave");w&&(w=w.destroy());b&&(b=b.destroy());ut.prototype.destroy.call(p);p=g=pt=rt=tt=null}})}},eu=wi,e(ut.prototype,{htmlCss:function(n){var t=this,r=t.element,i=n&&r.tagName==="SPAN"&&n.width;return i&&(delete n.width,t.textWidth=i,t.updateTransform()),n&&n.textOverflow==="ellipsis"&&(n.whiteSpace="nowrap",n.overflow="hidden"),t.styles=e(t.styles,n),p(t.element,n),t},htmlGetBBox:function(){var t=this,n=t.element;return n.nodeName==="text"&&(n.style.position=ai),{x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}},htmlUpdateTransform:function(){if(!this.added){this.alignOnAdd=!0;return}var n=this,c=n.renderer,u=n.element,l=n.translateX||0,v=n.translateY||0,g=n.x||0,nt=n.y||0,s=n.textAlign||"left",w={left:0,center:.5,right:1}[s],b=n.shadows,k=n.styles;if(p(u,{marginLeft:l,marginTop:v}),b&&i(b,function(n){p(n,{marginLeft:l+1,marginTop:v+1})}),n.inverted&&i(u.childNodes,function(n){c.invertChild(n,u)}),u.tagName==="SPAN"){var f,e=n.rotation,o,h=a(n.textWidth),d=[e,s,u.innerHTML,n.textWidth,n.textAlign].join(",");d!==n.cTT&&(o=c.fontMetrics(u.style.fontSize).b,r(e)&&n.setSpanRotation(e,w,o),f=t(n.elemWidth,u.offsetWidth),f>h&&/[ \-]/.test(u.textContent||u.innerText)&&(p(u,{width:h+y,display:"block",whiteSpace:k&&k.whiteSpace||"normal"}),f=h),n.getSpanCorrection(f,o,w,e,s));p(u,{left:g+(n.xCorr||0)+y,top:nt+(n.yCorr||0)+y});gu&&(o=u.offsetHeight);n.cTT=d}},setSpanRotation:function(n,t,i){var r={},u=ci?"-ms-transform":gu?"-webkit-transform":hr?"MozTransform":oe?"-o-transform":"";r[u]=r.transform="rotate("+n+"deg)";r[u+(hr?"Origin":"-origin")]=r.transformOrigin=t*100+"% "+i+"px";p(this.element,r)},getSpanCorrection:function(n,t,i){this.xCorr=-n*i;this.yCorr=-t}}),e(wi.prototype,{html:function(n,t,r){var u=this.createElement("span"),f=u.element,s=u.renderer;return u.textSetter=function(n){n!==f.innerHTML&&delete this.bBox;f.innerHTML=this.textStr=n;u.htmlUpdateTransform()},u.xSetter=u.ySetter=u.alignSetter=u.rotationSetter=function(n,t){t==="align"&&(t="textAlign");u[t]=n;u.htmlUpdateTransform()},u.attr({text:n,x:o(t),y:o(r)}).css({position:ai,fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),f.style.whiteSpace="nowrap",u.css=u.htmlCss,s.isSVG&&(u.add=function(n){var t,o=s.box.parentNode,r,h=[];if(this.parentGroup=n,n){if(t=n.div,!t){for(r=n;r;)h.push(r),r=r.parentGroup;i(h.reverse(),function(n){var r,u=tt(n.element,"class");u&&(u={className:u});t=n.div=n.div||wt(cr,u,{position:ai,left:(n.translateX||0)+y,top:(n.translateY||0)+y},t||o);r=t.style;e(n,{translateXSetter:function(t,i){r.left=t+y;n[i]=t;n.doTransform=!0},translateYSetter:function(t,i){r.top=t+y;n[i]=t;n.doTransform=!0}});i(["opacity","visibility"],function(t){vr(n,t+"Setter",function(n,t,i,u){n.call(this,t,i,u);r[i]=t})})})}}else t=o;return t.appendChild(f),u.added=!0,u.alignOnAdd&&u.htmlUpdateTransform(),u}),u}}),pt||ni||(sr={init:function(n,t){var f=this,i=["<",t,' filled="f" stroked="f"'],r=["position: ",ai,";"],u=t===cr;(t==="shape"||u)&&r.push("left:0;top:0;width:1px;height:1px;");r.push("visibility: ",u?di:rr);i.push(' style="',r.join(""),'"/>');t&&(i=u||t==="span"||t==="img"?i.join(""):n.prepVML(i),f.element=wt(i));f.renderer=n},add:function(n){var t=this,i=t.renderer,r=t.element,f=i.box,e=n&&n.inverted,u=n?n.element||n:f;return n&&(this.parentGroup=n),e&&i.invertChild(r,u),u.appendChild(r),t.added=!0,t.alignOnAdd&&!t.deferUpdateTransform&&t.updateTransform(),t.onAdd&&t.onAdd(),t},updateTransform:ut.prototype.htmlUpdateTransform,setSpanRotation:function(){var n=this.rotation,t=ht(n*gt),i=yt(n*gt);p(this.element,{filter:n?["progid:DXImageTransform.Microsoft.Matrix(M11=",t,", M12=",-i,", M21=",i,", M22=",t,", sizingMethod='auto expand')"].join(""):st})},getSpanCorrection:function(n,i,r,u,f){var e=u?ht(u*gt):1,o=u?yt(u*gt):0,h=t(this.elemHeight,this.element.offsetHeight),s,c=f&&f!=="left";this.xCorr=e<0&&-n;this.yCorr=o<0&&-h;s=e*o<0;this.xCorr+=o*i*(s?1-r:r);this.yCorr-=e*i*(u?s?r:1-r:1);c&&(this.xCorr-=n*r*(e<0?-1:1),u&&(this.yCorr-=h*r*(o<0?-1:1)),p(this.element,{textAlign:f}))},pathToVML:function(n){for(var t=n.length,i=[];t--;)yi(n[t])?i[t]=o(n[t]*10)-5:n[t]==="Z"?i[t]="x":(i[t]=n[t],n.isArc&&(n[t]==="wa"||n[t]==="at")&&(i[t+5]===i[t+7]&&(i[t+7]+=n[t+7]>n[t+5]?1:-1),i[t+6]===i[t+8]&&(i[t+8]+=n[t+8]>n[t+6]?1:-1)));return i.join(" ")||"x"},clip:function(n){var t=this,i,r;return n?(i=n.members,ei(i,t),i.push(t),t.destroyClip=function(){ei(i,t)},r=n.getCSS(t)):(t.destroyClip&&t.destroyClip(),r={clip:du?"inherit":"rect(auto)"}),t.css(r)},css:ut.prototype.htmlCss,safeRemoveChild:function(n){n.parentNode&&nu(n)},destroy:function(){return this.destroyClip&&this.destroyClip(),ut.prototype.destroy.apply(this)},on:function(n,t){return this.element["on"+n]=function(){var n=it.event;n.target=n.srcElement;t(n)},this},cutOffPath:function(n,t){var i;return n=n.split(/[ ,]/),i=n.length,(i===9||i===11)&&(n[i-4]=n[i-2]=a(n[i-2])-10*t),n.join(" ")},shadow:function(n,i,r){var v=[],f,e=this.element,y=this.renderer,u,p=e.style,s,o=e.path,h,c,l,w;if(o&&typeof o.value!="string"&&(o="x"),c=o,n){for(l=t(n.width,3),w=(n.opacity||.15)/l,f=1;f<=3;f++)h=l*2+1-2*f,r&&(c=this.cutOffPath(o.value,h+.5)),s=['<shape isShadow="true" strokeweight="',h,'" filled="false" path="',c,'" coordsize="10 10" style="',e.style.cssText,'" />'],u=wt(y.prepVML(s),null,{left:a(p.left)+t(n.offsetX,1),top:a(p.top)+t(n.offsetY,1)}),r&&(u.cutOff=h+1),s=['<stroke color="',n.color||"black",'" opacity="',w*f,'"/>'],wt(y.prepVML(s),null,null,u),i?i.element.appendChild(u):e.parentNode.insertBefore(u,e),v.push(u);this.shadows=v}return this},updateShadows:li,setAttr:function(n,t){du?this.element[n]=t:this.element.setAttribute(n,t)},classSetter:function(n){this.element.className=n},dashstyleSetter:function(n,t,i){var r=i.getElementsByTagName("stroke")[0]||wt(this.renderer.prepVML(["<stroke/>"]),null,null,i);r[t]=n||"solid";this[t]=n},dSetter:function(n,t,i){var r,u=this.shadows;if(n=n||[],this.d=n.join&&n.join(" "),i.path=n=this.pathToVML(n),u)for(r=u.length;r--;)u[r].path=u[r].cutOff?this.cutOffPath(n,u[r].cutOff):n;this.setAttr(t,n)},fillSetter:function(n,t,i){var r=i.nodeName;r==="SPAN"?i.style.color=n:r!=="IMG"&&(i.filled=n!==st,this.setAttr("fillcolor",this.renderer.color(n,i,t,this)))},opacitySetter:li,rotationSetter:function(n,t,i){var r=i.style;this[t]=r[t]=n;r.left=-o(yt(n*gt)+1)+y;r.top=o(ht(n*gt))+y},strokeSetter:function(n,t,i){this.setAttr("strokecolor",this.renderer.color(n,i,t))},"stroke-widthSetter":function(n,t,i){i.stroked=!!n;this[t]=n;yi(n)&&(n+=y);this.setAttr("strokeweight",n)},titleSetter:function(n,t){this.setAttr(t,n)},visibilitySetter:function(n,t,r){n==="inherit"&&(n=rr);this.shadows&&i(this.shadows,function(i){i.style[t]=n});r.nodeName==="DIV"&&(n=n===di?"-999em":0,du||(r.style[t]=n?rr:di),t="top");r.style[t]=n},xSetter:function(n,t,i){this[t]=n;t==="x"?t="left":t==="y"&&(t="top");this.updateClipping?(this[t]=n,this.updateClipping()):i.style[t]=n},zIndexSetter:function(n,t,i){i.style[t]=n}},s.VMLElement=sr=oi(ut,sr),sr.prototype.ySetter=sr.prototype.widthSetter=sr.prototype.heightSetter=sr.prototype.xSetter,to={Element:sr,isIE8:ki.indexOf("MSIE 8.0")>-1,init:function(n,t,i,r){var u=this,f,s,o;if(u.alignedObjects=[],f=u.createElement(cr).css(e(this.getStyle(r),{position:"relative"})),s=f.element,n.appendChild(f.element),u.isVML=!0,u.box=s,u.boxWrapper=f,u.gradients={},u.cache={},u.cacheKeys=[],u.setSize(t,i,!1),!l.namespaces.hcv){l.namespaces.add("hcv","urn:schemas-microsoft-com:vml");o="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } ";try{l.createStyleSheet().cssText=o}catch(h){l.styleSheets[0].cssText+=o}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(n,t,r,u){var s=this.createElement(),f=kt(n);return e(s,{members:[],count:0,left:(f?n.x:n)+1,top:(f?n.y:t)+1,width:(f?n.width:r)-1,height:(f?n.height:u)-1,getCSS:function(n){var h=n.element,c=h.nodeName,a=c==="shape",t=n.inverted,i=this,r=i.top-(a?h.offsetTop:0),u=i.left,f=u+i.width,s=r+i.height,l={clip:"rect("+o(t?u:r)+"px,"+o(t?s:f)+"px,"+o(t?f:s)+"px,"+o(t?r:u)+"px)"};return!t&&du&&c==="DIV"&&e(l,{width:f+y,height:s+y}),l},updateClipping:function(){i(s.members,function(n){n.element&&n.css(s.getCSS(n))})}})},color:function(n,t,r,u){var gt=this,o,d=/^rgba/,v,c,l=st,p;if(n&&n.linearGradient?c="gradient":n&&n.radialGradient&&(c="pattern"),c){var s,y,f=n.linearGradient||n.radialGradient,g,nt,tt,it,rt,ut,et,ot,w="",h=n.stops,b,k,ht=[],lt=function(){v=['<fill colors="'+ht.join(",")+'" opacity="',ut,'" o:opacity2="',rt,'" type="',c,'" ',w,'focus="100%" method="any" />'];wt(gt.prepVML(v),null,null,t)};if(b=h[0],k=h[h.length-1],b[0]>0&&h.unshift([0,b[1]]),k[0]<1&&h.push([1,k[1]]),i(h,function(n,t){d.test(n[1])?(o=dt(n[1]),s=o.get("rgb"),y=o.get("a")):(s=n[1],y=1);ht.push(n[0]*100+"% "+s);t?(ut=y,et=s):(rt=y,ot=s)}),r==="fill")if(c==="gradient")g=f.x1||f[0]||0,nt=f.y1||f[1]||0,tt=f.x2||f[2]||0,it=f.y2||f[3]||0,w='angle="'+(90-ct.atan((it-nt)/(tt-g))*180/ri)+'"',lt();else{var at=f.r,vt=at*2,yt=at*2,pt=f.cx,bt=f.cy,a=t.radialReference,e,kt=function(){a&&(e=u.getBBox(),pt+=(a[0]-e.x)/e.width-.5,bt+=(a[1]-e.y)/e.height-.5,vt*=a[2]/e.width,yt*=a[2]/e.height);w='src="'+ft.global.VMLRadialGradientURL+'" size="'+vt+","+yt+'" origin="0.5,0.5" position="'+pt+","+bt+'" color2="'+ot+'" ';lt()};u.added?kt():u.onAdd=kt;l=et}else l=s}else d.test(n)&&t.tagName!=="IMG"?(o=dt(n),v=["<",r,' opacity="',o.get("a"),'"/>'],wt(this.prepVML(v),null,null,t),l=o.get("rgb")):(p=t.getElementsByTagName(r),p.length&&(p[0].opacity=1,p[0].type="solid"),l=n);return l},prepVML:function(n){var t="display:inline-block;behavior:url(#default#VML);",i=this.isIE8;return n=n.join(""),i?(n=n.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),n=n.indexOf('style="')===-1?n.replace("/>",' style="'+t+'" />'):n.replace('style="','style="'+t)):n=n.replace("<","<hcv:"),n},text:wi.prototype.html,path:function(n){var t={coordsize:"10 10"};return lr(n)?t.d=n:kt(n)&&e(t,n),this.createElement("shape").attr(t)},circle:function(n,t,i){var r=this.symbol("circle");return kt(n)&&(i=n.r,t=n.y,n=n.x),r.isCircle=!0,r.r=i,r.attr({x:n,y:t})},g:function(n){var t;return n&&(t={className:rt+n,"class":rt+n}),this.createElement(cr).attr(t)},image:function(n,t,i,r,u){var f=this.createElement("img").attr({src:n});return arguments.length>1&&f.attr({x:t,y:i,width:r,height:u}),f},createElement:function(n){return n==="rect"?this.symbol(n):wi.prototype.createElement.call(this,n)},invertChild:function(n,t){var f=this,u=t.style,r=n.tagName==="IMG"&&n.style;p(n,{flip:"x",left:a(u.width)-(r?a(r.top):1),top:a(u.height)-(r?a(r.left):1),rotation:-90});i(n.childNodes,function(t){f.invertChild(t,n)})},symbols:{arc:function(n,t,i,r,u){var s=u.start,h=u.end,e=u.r||i||r,f=u.innerR,c=ht(s),l=yt(s),a=ht(h),v=yt(h),o;return h-s==0?["x"]:(o=["wa",n-e,t-e,n+e,t+e,n+e*c,t+e*l,n+e*a,t+e*v],u.open&&!f&&o.push("e",et,n,t),o.push("at",n-f,t-f,n+f,t+f,n+f*a,t+f*v,n+f*c,t+f*l,"x","e"),o.isArc=!0,o)},circle:function(n,t,i,r,u){return u&&(i=r=2*u.r),u&&u.isCircle&&(n-=i/2,t-=r/2),["wa",n,t,n+i,t+r,n+i,t+r/2,n+i,t+r/2,"e"]},rect:function(n,t,i,u,f){return wi.prototype.symbols[!r(f)||!f.r?"square":"callout"].call(0,n,t,i,u,f)}}},s.VMLRenderer=gf=function(){this.init.apply(this,arguments)},gf.prototype=c(wi.prototype,to),eu=gf),wi.prototype.measureSpanWidth=function(n,t){var i=l.createElement("span"),r,u=l.createTextNode(n);return i.appendChild(u),p(i,t),this.box.appendChild(i),r=i.offsetWidth,nu(i),r},ni&&(s.CanVGRenderer=ne=function(){ir="http://www.w3.org/1999/xhtml"},ne.prototype.symbols={},io=function(){function t(){for(var i=n.length,t=0;t<i;t++)n[t]();n=[]}var n=[];return{push:function(i,r){n.length===0&&s.getScript(r,t);n.push(i)}}}(),eu=ne),uu.prototype={addLabel:function(){var i=this,n=i.axis,l=n.options,a=n.chart,v=n.categories,k=n.names,u=i.pos,s=l.labels,e,o=n.tickPositions,y=u===o[0],p=u===o[o.length-1],w=v?t(v[u],k[u],u):u,f=i.label,h=o.info,b;n.isDatetimeAxis&&h&&(b=l.dateTimeLabelFormats[h.higherRanks[u]||h.unitName]);i.isFirst=y;i.isLast=p;e=n.labelFormatter.call({axis:n,chart:a,isFirst:y,isLast:p,dateTimeLabelFormat:b,value:n.isLog?ti(fi(w)):w});r(f)?f&&f.attr({text:e}):(i.label=f=r(e)&&s.enabled?a.renderer.text(e,0,0,s.useHTML).css(c(s.style)).add(n.labelGroup):null,i.labelLength=f&&f.getBBox().width,i.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},handleOverflow:function(n){var i=this.axis,e=n.x,w=i.chart.chartWidth,b=i.chart.spacing,a=t(i.labelLeft,h(i.pos,b[3])),v=t(i.labelRight,u(i.pos+i.len,w-b[1])),y=this.label,c=this.rotation,f={left:0,center:.5,right:1}[i.labelAlign],s=y.getBBox().width,r=i.slotWidth,nt=f,k=1,d,g,l,p={};c?c<0&&e-f*s<a?l=o(e/ht(c*gt)-a):c>0&&e+f*s>v&&(l=o((w-e)/ht(c*gt))):(d=e-f*s,g=e+(1-f)*s,d<a?r=n.x+r*(1-f)-a:g>v&&(r=v-n.x+r*f,k=-1),r=h(i.slotWidth,r),r<i.slotWidth&&i.labelAlign==="center"&&(n.x+=k*(i.slotWidth-r-nt*(i.slotWidth-h(s,r)))),(s>r||i.autoRotation&&y.styles.width)&&(l=r));l&&(p.width=l,i.options.labels.style.textOverflow||(p.textOverflow="ellipsis"),y.css(p))},getPosition:function(n,t,i,r){var u=this.axis,f=u.chart,e=r&&f.oldChartHeight||f.chartHeight;return{x:n?u.translate(t+i,null,null,r)+u.transB:u.left+u.offset+(u.opposite?(r&&f.oldChartWidth||f.chartWidth)-u.right-u.left:0),y:n?e-u.bottom+u.offset-(u.opposite?u.height:0):e-u.translate(t+i,null,null,r)-u.transB}},getLabelPosition:function(n,t,i,u,f,e,s,h){var c=this.axis,p=c.transA,w=c.reversed,l=c.staggerLines,y=c.tickRotCorr||{x:0,y:0},a=f.y,v;return r(a)||(a=c.side===2?y.y+8:a=ht(i.rotation*gt)*(y.y-i.getBBox(!1,0).height/2)),n=n+f.x+y.x-(e&&u?e*p*(w?-1:1):0),t=t+a-(e&&!u?e*p*(w?1:-1):0),l&&(v=s/(h||1)%l,c.opposite&&(v=l-v-1),t+=v*(c.labelOffset/l)),{x:n,y:o(t)}},getMarkPath:function(n,t,i,r,u,f){return f.crispLine([et,n,t,nt,n+(u?0:-i),t+(u?i:0)],r)},render:function(n,i,r){var u=this,e=u.axis,o=e.options,lt=e.chart,g=lt.renderer,h=e.horiz,c=u.type,a=u.label,ot=u.pos,y=o.labels,p=u.gridLine,nt=c?c+"Grid":"grid",w=c?c+"Tick":"tick",b=o[nt+"LineWidth"],at=o[nt+"LineColor"],st=o[nt+"LineDashStyle"],l=o[w+"Length"],tt=t(o[w+"Width"],!c&&e.isXAxis?1:0),vt=o[w+"Color"],yt=o[w+"Position"],k,ht=u.mark,it,rt=y.step,v,ut=!0,ft=e.tickmarkOffset,s=u.getPosition(h,ot,ft,i),d=s.x,et=s.y,ct=h&&d===e.pos+e.len||!h&&et===e.pos?-1:1;r=t(r,1);this.isActive=!0;b&&(k=e.getPlotLinePath(ot+ft,b*ct,i,!0),p===f&&(v={stroke:at,"stroke-width":b},st&&(v.dashstyle=st),c||(v.zIndex=1),i&&(v.opacity=0),u.gridLine=p=b?g.path(k).attr(v).add(e.gridGroup):null),!i&&p&&k&&p[u.isNew?"attr":"animate"]({d:k,opacity:r}));tt&&l&&(yt==="inside"&&(l=-l),e.opposite&&(l=-l),it=u.getMarkPath(d,et,l,tt*ct,h,g),ht?ht.animate({d:it,opacity:r}):u.mark=g.path(it).attr({stroke:vt,"stroke-width":tt,opacity:r}).add(e.axisGroup));a&&!isNaN(d)&&(a.xy=s=u.getLabelPosition(d,et,a,h,y,ft,n,rt),(!u.isFirst||u.isLast||t(o.showFirstLabel,1))&&(!u.isLast||u.isFirst||t(o.showLastLabel,1))?!h||e.isRadial||y.step||y.rotation||i||r===0||u.handleOverflow(s):ut=!1,rt&&n%rt&&(ut=!1),ut&&!isNaN(s.y)?(s.opacity=r,a[u.isNew?"attr":"animate"](s),u.isNew=!1):a.attr("y",-9999))},destroy:function(){gr(this,this.axis)}},s.PlotLineOrBand=function(n,t){this.axis=n;t&&(this.options=t,this.id=t.id)},s.PlotLineOrBand.prototype={render:function(){var f=this,s=f.axis,l=s.horiz,t=f.options,i=t.label,e=f.label,p=t.width,a=t.to,v=t.from,o=r(v)&&r(a),w=t.value,it=t.dashStyle,h=f.svgElem,n=[],rt,ut,b,k,d,g,nt=t.color,y=t.zIndex,tt=t.events,u={},ft=s.chart.renderer;if(s.isLog&&(v=fr(v),a=fr(a),w=fr(w)),p)n=s.getPlotLinePath(w,p),u={stroke:nt,"stroke-width":p},it&&(u.dashstyle=it);else if(o)n=s.getPlotBandPath(v,a,t),nt&&(u.fill=nt),t.borderWidth&&(u.stroke=t.borderColor,u["stroke-width"]=t.borderWidth);else return;if(r(y)&&(u.zIndex=y),h)n?(h.show(),h.animate({d:n})):(h.hide(),e&&(f.label=e=e.destroy()));else if(n&&n.length&&(f.svgElem=h=ft.path(n).attr(u).add(),tt)){rt=function(n){h.on(n,function(t){tt[n].apply(f,[t])})};for(ut in tt)rt(ut)}return i&&r(i.text)&&n&&n.length&&s.width>0&&s.height>0&&!n.flat?(i=c({align:l&&o&&"center",x:l?!o&&4:10,verticalAlign:!l&&o&&"middle",y:l?o?16:10:o?6:-4,rotation:l&&!o&&90},i),e||(u={align:i.textAlign||i.align,rotation:i.rotation},r(y)&&(u.zIndex=y),f.label=e=ft.text(i.text,0,0,i.useHTML).attr(u).css(i.style).add()),b=[n[1],n[4],o?n[6]:n[1]],k=[n[2],n[5],o?n[7]:n[2]],d=dr(b),g=dr(k),e.align(i,!1,{x:d,y:g,width:er(b)-d,height:er(k)-g}),e.show()):e&&e.hide(),f},destroy:function(){ei(this.axis.plotLinesAndBands,this);delete this.axis;gr(this)}},ve={getPlotBandPath:function(n,t){var i=this.getPlotLinePath(t,null,null,!0),r=this.getPlotLinePath(n,null,null,!0);return r&&i?(r.flat=r.toString()===i.toString(),r.push(i[4],i[5],i[1],i[2])):r=null,r},addPlotBand:function(n){return this.addPlotBandOrLine(n,"plotBands")},addPlotLine:function(n){return this.addPlotBandOrLine(n,"plotLines")},addPlotBandOrLine:function(n,t){var i=new s.PlotLineOrBand(this,n).render(),r=this.userOptions;return i&&(t&&(r[t]=r[t]||[],r[t].push(n)),this.plotLinesAndBands.push(i)),i},removePlotBandOrLine:function(n){for(var r=this.plotLinesAndBands,u=this.options,f=this.userOptions,t=r.length;t--;)r[t].id===n&&r[t].destroy();i([u.plotLines||[],f.plotLines||[],u.plotBands||[],f.plotBands||[]],function(i){for(t=i.length;t--;)i[t].id===n&&ei(i,i[t])})}},ii=s.Axis=function(){this.init.apply(this,arguments)},ii.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#D8D8D8",labels:{enabled:!0,style:{color:"#606060",cursor:"default",fontSize:"11px"},x:0,y:15},lineColor:"#C0D0E0",lineWidth:1,minPadding:.01,maxPadding:.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2,minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:10,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",title:{align:"middle",style:{color:"#707070"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:.05,minPadding:.05,startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return s.numberFormat(this.total,-1)},style:c(vt.line.dataLabels.style,{color:"#000000"})}},defaultLeftAxisOptions:{labels:{x:-15,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0,y:null},title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0,y:-15},title:{rotation:0}},init:function(n,i){var o=i.isX,u=this,h,c;u.chart=n;u.horiz=n.inverted?!o:o;u.isXAxis=o;u.coll=o?"xAxis":"yAxis";u.opposite=i.opposite;u.side=i.side||(u.horiz?u.opposite?0:2:u.opposite?1:3);u.setOptions(i);var e=this.options,s=e.type,l=s==="datetime";u.labelFormatter=e.labels.formatter||u.defaultLabelFormatter;u.userOptions=i;u.minPixelPadding=0;u.reversed=e.reversed;u.visible=e.visible!==!1;u.zoomEnabled=e.zoomEnabled!==!1;u.categories=e.categories||s==="category";u.names=u.names||[];u.isLog=s==="logarithmic";u.isDatetimeAxis=l;u.isLinked=r(e.linkedTo);u.ticks={};u.labelEdge=[];u.minorTicks={};u.plotLinesAndBands=[];u.alternateBands={};u.len=0;u.minRange=u.userMinRange=e.minRange||e.maxZoom;u.range=e.range;u.offset=e.offset||0;u.stacks={};u.oldStacks={};u.stacksTouched=0;u.max=null;u.min=null;u.crosshair=t(e.crosshair,pi(n.options.tooltip.crosshairs)[o?0:1],!1);c=u.options.events;or(u,n.axes)===-1&&(o&&!this.isColorAxis?n.axes.splice(n.xAxis.length,0,u):n.axes.push(u),n[u.coll].push(u));u.series=u.series||[];n.inverted&&o&&u.reversed===f&&(u.reversed=!0);u.removePlotBand=u.removePlotBandOrLine;u.removePlotLine=u.removePlotBandOrLine;for(h in c)g(u,h,c[h]);u.isLog&&(u.val2lin=fr,u.lin2val=fi)},setOptions:function(n){this.options=c(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],c(ft[this.coll],n))},defaultLabelFormatter:function(){var r=this.axis,n=this.value,l=r.categories,o=this.dateTimeLabelFormat,u=ft.lang.numericSymbols,i=u&&u.length,e,t,h=r.options.labels.format,c=r.isLog?n:r.tickInterval;if(h)t=yr(h,this);else if(l)t=n;else if(o)t=br(o,n);else if(i&&c>=1e3)while(i--&&t===f)e=Math.pow(1e3,i+1),c>=e&&n*10%e==0&&u[i]!==null&&(t=s.numberFormat(n/e,-1)+u[i]);return t===f&&(t=b(n)>=1e4?s.numberFormat(n,-1):s.numberFormat(n,-1,f,"")),t},getSeriesExtremes:function(){var n=this,f=n.chart;n.hasVisibleSeries=!1;n.dataMin=n.dataMax=n.threshold=null;n.softThreshold=!n.isXAxis;n.buildStacks&&n.buildStacks();i(n.series,function(i){if(i.visible||!f.options.chart.ignoreHiddenSeries){var l=i.options,e,o=l.threshold,s,c;n.hasVisibleSeries=!0;n.isLog&&o<=0&&(o=null);n.isXAxis?(e=i.xData,e.length&&(n.dataMin=h(t(n.dataMin,e[0]),dr(e)),n.dataMax=u(t(n.dataMax,e[0]),er(e)))):(i.getExtremes(),c=i.dataMax,s=i.dataMin,r(s)&&r(c)&&(n.dataMin=h(t(n.dataMin,s),s),n.dataMax=u(t(n.dataMax,c),c)),r(o)&&(n.threshold=o),(!l.softThreshold||n.isLog)&&(n.softThreshold=!1))}})},translate:function(n,t,i,r,u,f){var e=this.linkedParent||this,o=1,c=0,s=r?e.oldTransA:e.transA,l=r?e.oldMin:e.min,h,a=e.minPixelPadding,v=(e.doPostTranslate||e.isLog&&u)&&e.lin2val;return s||(s=e.transA),i&&(o*=-1,c=e.len),e.reversed&&(o*=-1,c-=o*(e.sector||e.len)),t?(n=n*o+c,n-=a,h=n/s+l,v&&(h=e.lin2val(h))):(v&&(n=e.val2lin(n)),f==="between"&&(f=.5),h=o*(n-l)*s+c+o*a+(yi(f)?s*f*e.pointRange:0)),h},toPixels:function(n,t){return this.translate(n,!1,!this.horiz,null,!0)+(t?0:this.pos)},toValue:function(n,t){return this.translate(n-(t?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(n,i,r,f,e){var s=this,c=s.chart,p=s.left,w=s.top,l,a,v,y,k=r&&c.oldChartHeight||c.chartHeight,tt=r&&c.oldChartWidth||c.chartWidth,b,d=s.transB,g=function(n,t,i){return(n<t||n>i)&&(f?n=h(u(t,n),i):b=!0),n};return e=t(e,s.translate(n,null,null,r)),l=v=o(e+d),a=y=o(k-e-d),isNaN(e)?b=!0:s.horiz?(a=w,y=k-s.bottom,l=v=g(l,p,p+s.width)):(l=p,v=tt-s.right,a=y=g(a,w,w+s.height)),b&&!f?null:c.renderer.crispLine([et,l,a,nt,v,y],i||1)},getLinearTickPositions:function(n,t,i){var r,u,e=ti(ot(t/n)*n),o=ti(hi(i/n)*n),f=[];if(t===i&&yi(t))return[t];for(r=e;r<=o;){if(f.push(r),r=ti(r+n),r===u)break;u=r}return f},getMinorTickPositions:function(){var n=this,u=n.options,f=n.tickPositions,i=n.minorTickInterval,t=[],e,r,h=n.pointRangePadding||0,o=n.min-h,s=n.max+h,c=s-o,l;if(c&&c/i<n.len/3)if(n.isLog)for(l=f.length,r=1;r<l;r++)t=t.concat(n.getLogTickPositions(i,f[r-1],f[r],!0));else if(n.isDatetimeAxis&&u.minorTickInterval==="auto")t=t.concat(n.getTimeTicks(n.normalizeTimeTickInterval(i),o,s,u.startOfWeek));else for(e=o+(f[0]-o)%i;e<=s;e+=i)t.push(e);return t.length!==0&&n.trimTicks(t,u.startOnTick,u.endOnTick),t},adjustForMinRange:function(){var n=this,c=n.options,u=n.min,e=n.max,y,b=n.dataMax-n.dataMin>=n.minRange,a,l,p,v,k,s,w,o;n.isXAxis&&n.minRange===f&&!n.isLog&&(r(c.min)||r(c.max)?n.minRange=null:(i(n.series,function(n){for(v=n.xData,k=n.xIncrement?1:v.length-1,l=k;l>0;l--)p=v[l]-v[l-1],(a===f||p<a)&&(a=p)}),n.minRange=h(a*5,n.dataMax-n.dataMin)));e-u<n.minRange&&(o=n.minRange,y=(o-e+u)/2,s=[u-y,t(c.min,u-y)],b&&(s[2]=n.dataMin),u=er(s),w=[u+o,t(c.max,u+o)],b&&(w[2]=n.dataMax),e=dr(w),e-u<o&&(s[0]=e-o,s[1]=t(c.min,e-o),u=er(s)));n.min=u;n.max=e},setAxisTranslation:function(n){var f=this,p=f.max-f.min,c=f.axisPointRange||0,e,o=0,s=0,l=f.linkedParent,a,w=!!f.categories,v=f.transA,y=f.isXAxis;(y||w||c)&&(l?(o=l.minPointOffset,s=l.pointRangePadding):(i(f.series,function(n){var t=n.closestPointRange;!n.noSharedTooltip&&r(t)&&(e=r(e)?h(e,t):t)}),i(f.series,function(n){var i=w?1:y?t(n.options.pointRange,e,0):f.axisPointRange||0,r=n.options.pointPlacement;c=u(c,i);f.single||(o=u(o,ur(r)?0:i/2),s=u(s,r==="on"?0:i))})),a=f.ordinalSlope&&e?f.ordinalSlope/e:1,f.minPointOffset=o=o*a,f.pointRangePadding=s=s*a,f.pointRange=h(c,p),y&&(f.closestPointRange=e));n&&(f.oldTransA=v);f.translationSlope=f.transA=v=f.len/(p+s||1);f.transB=f.horiz?f.left:f.bottom;f.minPixelPadding=v*o},minFromRange:function(){return this.max-this.range},setTickInterval:function(n){var f=this,ut=f.chart,e=f.options,g=f.isLog,nt=f.isDatetimeAxis,ft=f.isXAxis,v=f.isLinked,p=e.maxPadding,w=e.minPadding,y,c,s=e.tickInterval,b,k=e.tickPixelInterval,d=f.categories,o=f.threshold,tt=f.softThreshold,it,rt,l,a;nt||d||v||this.getTickAmount();l=t(f.userMin,e.min);a=t(f.userMax,e.max);v?(f.linkedParent=ut[f.coll][e.linkedTo],c=f.linkedParent.getExtremes(),f.min=t(c.min,c.dataMin),f.max=t(c.max,c.dataMax),e.type!==f.linkedParent.options.type&&vi(11,1)):(!tt&&r(o)&&(f.dataMin>=o?(it=o,w=0):f.dataMax<=o&&(rt=o,p=0)),f.min=t(l,it,f.dataMin),f.max=t(a,rt,f.dataMax));g&&(!n&&h(f.min,t(f.dataMin,f.min))<=0&&vi(10,1),f.min=ti(fr(f.min),15),f.max=ti(fr(f.max),15));f.range&&r(f.max)&&(f.userMin=f.min=l=u(f.min,f.minFromRange()),f.userMax=a=f.max,f.range=null);f.beforePadding&&f.beforePadding();f.adjustForMinRange();d||f.axisPointRange||f.usePercentage||v||!r(f.min)||!r(f.max)||(y=f.max-f.min,y&&(!r(l)&&w&&(f.min-=y*w),!r(a)&&p&&(f.max+=y*p)));yi(e.floor)&&(f.min=u(f.min,e.floor));yi(e.ceiling)&&(f.max=h(f.max,e.ceiling));tt&&r(f.dataMin)&&(o=o||0,!r(l)&&f.min<o&&f.dataMin>=o?f.min=o:!r(a)&&f.max>o&&f.dataMax<=o&&(f.max=o));f.tickInterval=f.min===f.max||f.min===undefined||f.max===undefined?1:v&&!s&&k===f.linkedParent.options.tickPixelInterval?s=f.linkedParent.tickInterval:t(s,this.tickAmount?(f.max-f.min)/u(this.tickAmount-1,1):undefined,d?1:(f.max-f.min)*k/u(f.len,k));ft&&!n&&i(f.series,function(n){n.processData(f.min!==f.oldMin||f.max!==f.oldMax)});f.setAxisTranslation(!0);f.beforeSetTickPositions&&f.beforeSetTickPositions();f.postProcessTickInterval&&(f.tickInterval=f.postProcessTickInterval(f.tickInterval));f.pointRange&&!s&&(f.tickInterval=u(f.pointRange,f.tickInterval));b=t(e.minTickInterval,f.isDatetimeAxis&&f.closestPointRange);!s&&f.tickInterval<b&&(f.tickInterval=b);nt||g||s||(f.tickInterval=df(f.tickInterval,null,kf(f.tickInterval),t(e.allowDecimals,!(f.tickInterval>.5&&f.tickInterval<5&&f.max>1e3&&f.max<9999)),!!this.tickAmount));!this.tickAmount&&this.len&&(f.tickInterval=f.unsquish());this.setTickPositions()},setTickPositions:function(){var t=this.options,n,u=t.tickPositions,i=t.tickPositioner,e=t.startOnTick,o=t.endOnTick,f;this.tickmarkOffset=this.categories&&t.tickmarkPlacement==="between"&&this.tickInterval===1?.5:0;this.minorTickInterval=t.minorTickInterval==="auto"&&this.tickInterval?this.tickInterval/5:t.minorTickInterval;this.tickPositions=n=u&&u.slice();n||(n=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,t.units),this.min,this.max,t.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()]),this.tickPositions=n,i&&(i=i.apply(this,[this.min,this.max]),i&&(this.tickPositions=n=i)));this.isLinked||(this.trimTicks(n,e,o),this.min===this.max&&r(this.min)&&!this.tickAmount&&(f=!0,this.min-=.5,this.max+=.5),this.single=f,u||i||this.adjustTickAmount())},trimTicks:function(n,t,i){var u=n[0],f=n[n.length-1],e=this.minPointOffset||0;t?this.min=u:this.min-e>u&&n.shift();i?this.max=f:this.max+e<f&&n.pop();n.length===0&&r(u)&&n.push((f+u)/2)},alignToOthers:function(){var n={},t,r=this.options;return this.chart.options.chart.alignTicks!==!1&&r.alignTicks!==!1&&i(this.chart[this.coll],function(i){var r=i.options,f=i.horiz,u=[f?r.left:r.top,r.width,r.height,r.pane].join(",");i.series.length&&(n[u]?t=!0:n[u]=1)}),t},getTickAmount:function(){var t=this.options,n=t.tickAmount,i=t.tickPixelInterval;!r(t.tickInterval)&&this.len<i&&!this.isRadial&&!this.isLog&&t.startOnTick&&t.endOnTick&&(n=2);!n&&this.alignToOthers()&&(n=hi(this.len/i)+1);n<4&&(this.finalTickAmt=n,n=5);this.tickAmount=n},adjustTickAmount:function(){var s=this.tickInterval,n=this.tickPositions,i=this.tickAmount,u=this.finalTickAmt,e=n&&n.length,t,o;if(e<i){while(n.length<i)n.push(ti(n[n.length-1]+s));this.transA*=(e-1)/(i-1);this.max=n[n.length-1]}else e>i&&(this.tickInterval*=2,this.setTickPositions());if(r(u)){for(t=o=n.length;t--;)(u===3&&t%2==1||u<=2&&t>0&&t<o-1)&&n.splice(t,1);this.finalTickAmt=f}},setScale:function(){var n=this,r,t;n.oldMin=n.min;n.oldMax=n.max;n.oldAxisLength=n.len;n.setAxisSize();t=n.len!==n.oldAxisLength;i(n.series,function(n){(n.isDirtyData||n.isDirty||n.xAxis.isDirty)&&(r=!0)});t||r||n.isLinked||n.forceRedraw||n.userMin!==n.oldUserMin||n.userMax!==n.oldUserMax||n.alignToOthers()?(n.resetStacks&&n.resetStacks(),n.forceRedraw=!1,n.getSeriesExtremes(),n.setTickInterval(),n.oldUserMin=n.userMin,n.oldUserMax=n.userMax,n.isDirty||(n.isDirty=t||n.min!==n.oldMin||n.max!==n.oldMax)):n.cleanStacks&&n.cleanStacks()},setExtremes:function(n,r,u,f,o){var s=this,h=s.chart;u=t(u,!0);i(s.series,function(n){delete n.kdTree});o=e(o,{min:n,max:r});w(s,"setExtremes",o,function(){s.userMin=n;s.userMax=r;s.eventArgs=o;u&&h.redraw(f)})},zoom:function(n,i){var e=this.dataMin,o=this.dataMax,s=this.options,c=h(e,t(s.min,e)),l=u(o,t(s.max,o));return this.allowZoomOutside||(r(e)&&n<=c&&(n=c),r(o)&&i>=l&&(i=l)),this.displayBtn=n!==f||i!==f,this.setExtremes(n,i,!1,f,{trigger:"zoom"}),!0},setAxisSize:function(){var n=this.chart,i=this.options,s=i.offsetLeft||0,l=i.offsetRight||0,h=this.horiz,e=t(i.width,n.plotWidth-s+l),r=t(i.height,n.plotHeight),f=t(i.top,n.plotTop),o=t(i.left,n.plotLeft+s),c=/%$/;c.test(r)&&(r=parseFloat(r)/100*n.plotHeight);c.test(f)&&(f=parseFloat(f)/100*n.plotHeight+n.plotTop);this.left=o;this.top=f;this.width=e;this.height=r;this.bottom=n.chartHeight-r-f;this.right=n.chartWidth-e-o;this.len=u(h?e:r,0);this.pos=h?o:f},getExtremes:function(){var n=this,t=n.isLog;return{min:t?ti(fi(n.min)):n.min,max:t?ti(fi(n.max)):n.max,dataMin:n.dataMin,dataMax:n.dataMax,userMin:n.userMin,userMax:n.userMax}},getThreshold:function(n){var t=this,u=t.isLog,r=u?fi(t.min):t.min,i=u?fi(t.max):t.max;return n===null?n=i<0?i:r:r>n?n=r:i<n&&(n=i),t.translate(n,0,1,0,1)},autoLabelAlign:function(n){var i=(t(n,0)-this.side*90+720)%360;return i>15&&i<165?"right":i>195&&i<345?"left":"center"},unsquish:function(){var p=this.chart,h=this.ticks,n=this.options.labels,w=this.horiz,e=this.tickInterval,o=e,c=this.len/(((this.categories?1:0)+this.max-this.min)/e),l,u=n.rotation,a=p.renderer.fontMetrics(n.style.fontSize,h[0]&&h[0].label),s,v=Number.MAX_VALUE,f,y=function(n){var t=n/(c||1);return t=t>1?hi(t):1,t*e};return w?(f=!n.staggerLines&&!n.step&&(r(u)?[u]:c<t(n.autoRotationLimit,80)&&n.autoRotation),f&&i(f,function(n){var t;(n===u||n&&n>=-90&&n<=90)&&(s=y(b(a.h/yt(gt*n))),t=s+b(n/360),t<v&&(v=t,l=n,o=s))})):n.step||(o=y(a.h)),this.autoRotation=f,this.labelRotation=t(l,u),o},renderUnsquish:function(){var n=this.chart,k=n.renderer,r=this.tickPositions,f=this.ticks,t=this.options.labels,v=this.horiz,d=n.margin,tt=this.categories?r.length:r.length-1,p=this.slotWidth=v&&(t.step||0)<2&&!t.rotation&&(this.staggerLines||1)*n.plotWidth/tt||!v&&(d[3]&&d[3]-n.spacing[3]||n.chartWidth*.33),g=u(1,o(p-2*(t.padding||5))),e={},a=k.fontMetrics(t.style.fontSize,f[0]&&f[0].label),nt=t.style.textOverflow,s,l=0,h,w,b;if(ur(t.rotation)||(e.rotation=t.rotation||0),this.autoRotation)i(r,function(n){n=f[n];n&&n.labelLength>l&&(l=n.labelLength)}),l>g&&l>a.h?e.rotation=this.labelRotation:this.labelRotation=0;else if(p&&(s={width:g+y},!nt))for(s.textOverflow="clip",w=r.length;!v&&w--;)b=r[w],h=f[b].label,h&&(h.styles.textOverflow==="ellipsis"&&h.css({textOverflow:"clip"}),(h.getBBox().height>this.len/r.length-(a.h-a.f)||f[b].labelLength>p)&&(h.specCss={textOverflow:"ellipsis"}));e.rotation&&(s={width:(l>n.chartHeight*.5?n.chartHeight*.33:n.chartHeight)+y},nt||(s.textOverflow="ellipsis"));this.labelAlign=e.align=t.align||this.autoLabelAlign(this.labelRotation);i(r,function(n){var i=f[n],t=i&&i.label;t&&(t.attr(e),s&&t.css(c(s,t.specCss)),delete t.specCss,i.rotation=e.rotation)});this.tickRotCorr=k.rotCorr(a.b,this.labelRotation||0,this.side!==0)},hasData:function(){return this.hasVisibleSeries||r(this.min)&&r(this.max)&&!!this.tickPositions},getOffset:function(){var n=this,l=n.chart,a=l.renderer,o=n.options,tt=n.tickPositions,s=n.ticks,v=n.horiz,e=n.side,it=l.inverted?[1,0,3,2][e]:e,y,p,ut=0,w,ft=0,f=o.title,c=o.labels,h=0,b,et=n.opposite,k=l.axisOffset,st=l.clipOffset,ht,d=[-1,1,1,-1][e],g,nt=n.axisParent,ct;if(y=n.hasData(),n.showAxis=p=y||t(o.showEmpty,!0),n.staggerLines=n.horiz&&c.staggerLines,n.axisGroup||(n.gridGroup=a.g("grid").attr({zIndex:o.gridZIndex||1}).add(nt),n.axisGroup=a.g("axis").attr({zIndex:o.zIndex||2}).add(nt),n.labelGroup=a.g("axis-labels").attr({zIndex:c.zIndex||7}).addClass(rt+n.coll.toLowerCase()+"-labels").add(nt)),y||n.isLinked)i(tt,function(t){s[t]?s[t].addLabel():s[t]=new uu(n,t)}),n.renderUnsquish(),c.reserveSpace!==!1&&(e===0||e===2||{1:"left",3:"right"}[e]===n.labelAlign||n.labelAlign==="center")&&i(tt,function(n){h=u(s[n].getLabelSize(),h)}),n.staggerLines&&(h*=n.staggerLines,n.labelOffset=h*(n.opposite?-1:1));else for(g in s)s[g].destroy(),delete s[g];f&&f.text&&f.enabled!==!1&&(n.axisTitle||(n.axisTitle=a.text(f.text,0,0,f.useHTML).attr({zIndex:7,rotation:f.rotation||0,align:f.textAlign||{low:et?"right":"left",middle:"center",high:et?"left":"right"}[f.align]}).addClass(rt+this.coll.toLowerCase()+"-title").css(f.style).add(n.axisGroup),n.axisTitle.isNew=!0),p&&(ut=n.axisTitle.getBBox()[v?"height":"width"],w=f.offset,ft=r(w)?0:t(f.margin,v?5:10)),n.axisTitle[p?"show":"hide"](!0));n.offset=d*t(o.offset,k[e]);n.tickRotCorr=n.tickRotCorr||{x:0,y:0};ct=e===2?n.tickRotCorr.y:0;b=Math.abs(h)+ft+(h&&d*(v?t(c.y,n.tickRotCorr.y+8):c.x)-ct);n.axisTitleMargin=t(w,b);k[e]=u(k[e],n.axisTitleMargin+ut+d*n.offset,b);ht=o.offset?0:ot(o.lineWidth/2)*2;st[it]=u(st[it],ht)},getLinePath:function(n){var t=this.chart,r=this.opposite,u=this.offset,i=this.horiz,f=this.left+(r?this.width:0)+u,e=t.chartHeight-this.bottom-(r?this.height:0)+u;return r&&(n*=-1),t.renderer.crispLine([et,i?this.left:f,i?e:this.top,nt,i?t.chartWidth-this.right:f,i?e:t.chartHeight-this.bottom],n)},getTitlePosition:function(){var n=this.horiz,f=this.left,e=this.top,i=this.len,t=this.options.title,r=n?f:e,u=this.opposite,o=this.offset,s=t.x||0,h=t.y||0,v=a(t.style.fontSize||12),c={low:r+(n?0:i),middle:r+i/2,high:r+(n?i:0)}[t.align],l=(n?e+this.height:f)+(n?1:-1)*(u?-1:1)*this.axisTitleMargin+(this.side===2?v:0);return{x:n?c+s:l+(u?this.width:0)+o+s,y:n?l+h-(u?this.height:0)+o:c+h}},render:function(){var n=this,l=n.chart,b=l.renderer,o=n.options,k=n.isLog,d=n.isLinked,c=n.tickPositions,a=n.axisTitle,t=n.ticks,e=n.minorTicks,u=n.alternateBands,g=o.stackLabels,nt=o.alternateGridColor,h=n.tickmarkOffset,y=o.lineWidth,p,ut=l.hasRendered,tt=ut&&r(n.oldMin)&&!isNaN(n.oldMin),it=n.showAxis,rt=b.globalAnimation,w,v;n.labelEdge.length=0;n.overlap=!1;i([t,e,u],function(n){for(var t in n)n[t].isActive=!1});(n.hasData()||d)&&(n.minorTickInterval&&!n.categories&&i(n.getMinorTickPositions(),function(t){e[t]||(e[t]=new uu(n,t,"minor"));tt&&e[t].isNew&&e[t].render(null,!0);e[t].render(null,!1,1)}),c.length&&(i(c,function(i,r){(!d||i>=n.min&&i<=n.max)&&(t[i]||(t[i]=new uu(n,i)),tt&&t[i].isNew&&t[i].render(r,!0,.1),t[i].render(r))}),h&&(n.min===0||n.single)&&(t[-1]||(t[-1]=new uu(n,-1,null,!0)),t[-1].render(-1))),nt&&i(c,function(t,i){v=c[i+1]!==f?c[i+1]+h:n.max-h;i%2==0&&t<n.max&&v<=n.max+(l.polar?-h:h)&&(u[t]||(u[t]=new s.PlotLineOrBand(n)),w=t+h,u[t].options={from:k?fi(w):w,to:k?fi(v):v,color:nt},u[t].render(),u[t].isActive=!0)}),n._addedPlotLB||(i((o.plotLines||[]).concat(o.plotBands||[]),function(t){n.addPlotBandOrLine(t)}),n._addedPlotLB=!0));i([t,e,u],function(n){var t,i,r=[],f=rt?rt.duration||500:0,e=function(){for(i=r.length;i--;)n[r[i]]&&!n[r[i]].isActive&&(n[r[i]].destroy(),delete n[r[i]])};for(t in n)n[t].isActive||(n[t].render(t,!1,0),n[t].isActive=!1,r.push(t));kr(e,n===u||!l.hasRendered||!f?0:f)});y&&(p=n.getLinePath(y),n.axisLine?n.axisLine.animate({d:p}):n.axisLine=b.path(p).attr({stroke:o.lineColor,"stroke-width":y,zIndex:7}).add(n.axisGroup),n.axisLine[it?"show":"hide"](!0));a&&it&&(a[a.isNew?"attr":"animate"](n.getTitlePosition()),a.isNew=!1);g&&g.enabled&&n.renderStackTotals();n.isDirty=!1},redraw:function(){this.visible&&(this.render(),i(this.plotLinesAndBands,function(n){n.render()}));i(this.series,function(n){n.isDirty=!0})},destroy:function(n){var t=this,r=t.stacks,u,e=t.plotLinesAndBands,f;n||at(t);for(u in r)gr(r[u]),r[u]=null;for(i([t.ticks,t.minorTicks,t.alternateBands],function(n){gr(n)}),f=e.length;f--;)e[f].destroy();i(["stackTotalGroup","axisLine","axisTitle","axisGroup","cross","gridGroup","labelGroup"],function(n){t[n]&&(t[n]=t[n].destroy())});this.cross&&this.cross.destroy()},drawCrosshair:function(n,i){var f,u=this.crosshair,e,o,s,h;if(!this.crosshair||(r(i)||!t(u.snap,!0))===!1||i&&i.series&&i.series[this.coll]!==this)this.hideCrosshair();else{if(t(u.snap,!0)?r(i)&&(e=this.isXAxis?i.plotX:this.len-i.plotY):e=this.horiz?n.chartX-this.pos:this.len-n.chartY+this.pos,f=this.isRadial?this.getPlotLinePath(this.isXAxis?i.x:t(i.stackY,i.y))||null:this.getPlotLinePath(null,null,null,null,e)||null,f===null){this.hideCrosshair();return}s=this.categories&&!this.isRadial;h=t(u.width,s?this.transA:1);this.cross?this.cross.attr({d:f,visibility:"visible","stroke-width":h}):(o={"stroke-width":h,stroke:u.color||(s?"rgba(155,200,255,0.2)":"#C0C0C0"),zIndex:t(u.zIndex,2)},u.dashStyle&&(o.dashstyle=u.dashStyle),this.cross=this.chart.renderer.path(f).attr(o).add())}},hideCrosshair:function(){this.cross&&this.cross.hide()}},e(ii.prototype,ve),ii.prototype.getTimeTicks=function(n,u,f,o){var y=[],p,w={},b=ft.global.useUTC,l,s=new nr(u-au(u)),h=n.unitRange,c=n.count;if(r(u)){s[ye](h>=v.second?0:c*ot(s.getMilliseconds()/c));h>=v.second&&s[pe](h>=v.minute?0:c*ot(s.getSeconds()/c));h>=v.minute&&s[we](h>=v.hour?0:c*ot(s[af]()/c));h>=v.hour&&s[be](h>=v.day?0:c*ot(s[vf]()/c));h>=v.day&&s[pf](h>=v.month?1:c*ot(s[hu]()/c));h>=v.month&&(s[wf](h>=v.year?0:c*ot(s[cu]()/c)),l=s[lu]());h>=v.year&&(l-=l%c,s[bf](l));h===v.week&&s[pf](s[hu]()-s[yf]()+t(o,1));p=1;(lf||uf)&&(s=s.getTime(),s=new nr(s+au(s)));l=s[lu]();for(var a=s.getTime(),k=s[cu](),d=s[hu](),g=(v.day+(b?au(s):s.getTimezoneOffset()*6e4))%v.day;a<f;)y.push(a),h===v.year?a=rf(l+p*c,0):h===v.month?a=rf(l,k+p*c):b||h!==v.day&&h!==v.week?a+=h*c:a=rf(l,k,d+p*c*(h===v.day?1:7)),p++;y.push(a);i(yu(y,function(n){return h<=v.hour&&n%v.day===g}),function(n){w[n]="day"})}return y.info=e(n,{higherRanks:w,totalRange:h*c}),y},ii.prototype.normalizeTimeTickInterval=function(n,t){for(var f=t||[["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]],i=f[f.length-1],r=v[i[0]],o=i[1],s,h,e=0;e<f.length;e++)if(i=f[e],r=v[i[0]],o=i[1],f[e+1]&&(h=(r*o[o.length-1]+v[f[e+1][0]])/2,n<=h))break;return r===v.year&&n<5*r&&(o=[1,2,5]),s=df(n/r,o,i[0]==="year"?u(kf(n/r),1):1),{unitRange:r,count:s,unitName:i[0]}},ii.prototype.getLogTickPositions=function(n,i,r,u){var e=this,p=e.options,w=e.len,h=[],b,a,c,l,k,v,s,y;if(u||(e._minorAutoInterval=null),n>=.5)n=o(n),h=e.getLinearTickPositions(n,i,r);else if(n>=.08)for(b=ot(i),a=n>.3?[1,2,4]:n>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],c=b;c<r+1&&!y;c++)for(k=a.length,l=0;l<k&&!y;l++)v=fr(fi(c)*a[l]),v>i&&(!u||s<=r)&&s!==f&&h.push(s),s>r&&(y=!0),s=v;else{var d=fi(i),g=fi(r),nt=p[u?"minorTickInterval":"tickInterval"],tt=nt==="auto"?null:nt,it=p.tickPixelInterval/(u?5:1),rt=u?w/e.tickPositions.length:w;n=t(tt,e._minorAutoInterval,(g-d)*it/(rt||1));n=df(n,null,kf(n));h=pr(e.getLinearTickPositions(n,d,g),fr);u||(e._minorAutoInterval=n/5)}return u||(e.tickInterval=n),h},te=s.Tooltip=function(){this.init.apply(this,arguments)},te.prototype={init:function(n,t){var r=t.borderWidth,i=t.style,u=a(i.padding);this.chart=n;this.options=t;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.label=n.renderer.label("",0,0,t.shape||"callout",null,null,t.useHTML,null,"tooltip").attr({padding:u,fill:t.backgroundColor,"stroke-width":r,r:t.borderRadius,zIndex:8}).css(i).css({padding:0}).add().attr({y:-9999});ni||this.label.shadow(t.shadow);this.shared=t.shared},destroy:function(){this.label&&(this.label=this.label.destroy());clearTimeout(this.hideTimer);clearTimeout(this.tooltipTimeout)},move:function(n,t,i,r){var u=this,o=u.now,s=u.options.animation!==!1&&!u.isHidden&&(b(n-o.x)>1||b(t-o.y)>1),h=u.followPointer||u.len>1;e(o,{x:s?(2*o.x+n)/3:n,y:s?(o.y+t)/2:t,anchorX:h?f:s?(2*o.anchorX+i)/3:i,anchorY:h?f:s?(o.anchorY+r)/2:r});u.label.attr(o);s&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){u&&u.move(n,t,i,r)},32))},hide:function(n){var i=this;clearTimeout(this.hideTimer);n=t(n,this.options.hideDelay,500);this.isHidden||(this.hideTimer=kr(function(){i.label[n?"fadeOut":"hide"]();i.isHidden=!0},n))},getAnchor:function(n,t){var u,r=this.chart,e=r.inverted,c=r.plotTop,v=r.plotLeft,s=0,h=0,l,a;return n=pi(n),u=n[0].tooltipPos,this.followPointer&&t&&(t.chartX===f&&(t=r.pointer.normalize(t)),u=[t.chartX-r.plotLeft,t.chartY-c]),u||(i(n,function(n){l=n.series.yAxis;a=n.series.xAxis;s+=n.plotX+(!e&&a?a.left-v:0);h+=(n.plotLow?(n.plotLow+n.plotHigh)/2:n.plotY)+(!e&&l?l.top-c:0)}),s/=n.length,h/=n.length,u=[e?r.plotWidth-h:s,this.shared&&!e&&n.length>1&&t?t.chartY-c:e?r.plotHeight-s:h]),pr(u,o)},getPosition:function(n,i,r){var f=this.chart,o=this.distance,e={},s=r.h||0,c,l=["y",f.chartHeight,i,r.plotY+f.plotTop,f.plotTop,f.plotTop+f.plotHeight],a=["x",f.chartWidth,n,r.plotX+f.plotLeft,f.plotLeft,f.plotLeft+f.plotWidth],p=t(r.ttBelow,f.inverted&&!r.negative||!f.inverted&&r.negative),w=function(n,t,i,r,f,c){var v=i<r-o,y=r+o+i<t,l=r-o-i,a=r+o;if(p&&y)e[n]=a;else if(!p&&v)e[n]=l;else if(v)e[n]=h(c-i,l-s<0?l:l-s);else if(y)e[n]=u(f,a+s+i>t?a:a+s);else return!1},b=function(n,t,i,r){var u;return r<o||r>t-o?u=!1:e[n]=r<i/2?1:r>t-i/2?t-i-2:r-i/2,u},v=function(n){var t=l;l=a;a=t;c=n},y=function(){w.apply(0,l)!==!1?b.apply(0,a)!==!1||c||(v(!0),y()):c?e.x=e.y=0:(v(!0),y())};return(f.inverted||this.len>1)&&v(),y(),e},defaultFormatter:function(n){var i=this.points||pi(this),t;return t=[n.tooltipFooterHeaderFormatter(i[0])],t=t.concat(n.bodyFormatter(i)),t.push(n.tooltipFooterHeaderFormatter(i[0],!0)),t.join("")},refresh:function(n,r){var u=this,f=u.chart,e=u.label,p=u.options,c,l,o,s={},h,a=[],k=p.formatter||u.defaultFormatter,b=f.hoverPoints,v,d=u.shared,y;clearTimeout(this.hideTimer);u.followPointer=pi(n)[0].series.tooltipOptions.followPointer;o=u.getAnchor(n,r);c=o[0];l=o[1];!d||n.series&&n.series.noSharedTooltip?s=n.getLabelConfig():(f.hoverPoints=n,b&&i(b,function(n){n.setState()}),i(n,function(n){n.setState(ui);a.push(n.getLabelConfig())}),s={x:n[0].category,y:n[0].y},s.points=a,this.len=a.length,n=n[0]);h=k.call(s,u);y=n.series;this.distance=t(y.tooltipOptions.distance,16);h===!1?this.hide():(u.isHidden&&(iu(e),e.attr("opacity",1).show()),e.attr({text:h}),v=p.borderColor||n.color||y.color||"#606060",e.attr({stroke:v}),u.updatePosition({plotX:c,plotY:l,negative:n.negative,ttBelow:n.ttBelow,h:o[2]||0}),this.isHidden=!1);w(f,"tooltipRefresh",{text:h,x:c+f.plotLeft,y:l+f.plotTop,borderColor:v})},updatePosition:function(n){var t=this.chart,i=this.label,r=(this.options.positioner||this.getPosition).call(this,i.width,i.height,n);this.move(o(r.x),o(r.y||0),n.plotX+t.plotLeft,n.plotY+t.plotTop)},getXDateFormat:function(n,t,i){var u,f=t.dateTimeLabelFormats,e=i&&i.closestPointRange,r,h="01-01 00:00:00.000",o={millisecond:15,second:12,minute:9,hour:6,day:3},s,c="millisecond";if(e){s=br("%m-%d %H:%M:%S.%L",n.x);for(r in v){if(e===v.week&&+br("%w",n.x)===i.options.startOfWeek&&s.substr(6)===h.substr(6)){r="week";break}if(v[r]>e){r=c;break}if(o[r]&&s.substr(o[r])!==h.substr(o[r]))break;r!=="week"&&(c=r)}r&&(u=f[r])}else u=f.day;return u||f.year},tooltipFooterHeaderFormatter:function(n,t){var s=t?"footer":"header",r=n.series,u=r.tooltipOptions,i=u.xDateFormat,f=r.xAxis,o=f&&f.options.type==="datetime"&&yi(n.key),e=u[s+"Format"];return o&&!i&&(i=this.getXDateFormat(n,u,f)),o&&i&&(e=e.replace("{point.key}","{point.key:"+i+"}")),yr(e,{point:n,series:r})},bodyFormatter:function(n){return pr(n,function(n){var t=n.series.tooltipOptions;return(t.pointFormatter||n.point.tooltipFormatter).call(n.point,t.pointFormat)})}},ou=l.documentElement.ontouchstart!==f,wr=s.Pointer=function(n,t){this.init(n,t)},wr.prototype={init:function(n,i){var e=i.chart,o=e.events,h=ni?"":e.zoomType,r=n.inverted,u,f;this.options=i;this.chart=n;this.zoomX=u=/x/.test(h);this.zoomY=f=/y/.test(h);this.zoomHor=u&&!r||f&&r;this.zoomVert=f&&!r||u&&r;this.hasZoom=u||f;this.runChartClick=o&&!!o.click;this.pinchDown=[];this.lastValidTouch={};s.Tooltip&&i.tooltip.enabled&&(n.tooltip=new te(n,i.tooltip),this.followTouchMove=t(i.tooltip.followTouchMove,!0));this.setDOMEvents()},normalize:function(n,t){var r,s,i;return n=n||window.event,n=ge(n),n.target||(n.target=n.srcElement),i=n.touches?n.touches.length?n.touches.item(0):n.changedTouches[0]:n,t||(this.chartPosition=t=de(this.chart.container)),i.pageX===f?(r=u(n.x,n.clientX-t.left),s=n.y):(r=i.pageX-t.left,s=i.pageY-t.top),e(n,{chartX:o(r),chartY:o(s)})},getCoordinates:function(n){var t={xAxis:[],yAxis:[]};return i(this.chart.axes,function(i){t[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(n[i.horiz?"chartX":"chartY"])})}),t},runPointActions:function(n){var a=this,h=a.chart,c=h.series,r=h.tooltip,s=r?r.shared:!1,k,v=h.hoverPoint,f=h.hoverSeries,e,d=Number.MAX_VALUE,p,w,nt,tt,y,o=[],u,b;if(!s&&!f)for(e=0;e<c.length;e++)(c[e].directTouch||!c[e].options.stickyTracking)&&(c=[]);if(nt=f&&(s?f.noSharedTooltip:f.directTouch),nt&&v?u=v:(i(c,function(i){w=i.noSharedTooltip&&s;tt=!s&&i.directTouch;i.visible&&!w&&!tt&&t(i.options.enableMouseTracking,!0)&&(b=i.searchPoint(n,!w&&i.kdDimensions===1),b&&o.push(b))}),i(o,function(n){y=!s&&n.series.kdDimensions===1?n.dist:n.distX;n&&typeof y=="number"&&y<d&&(d=y,u=n)})),u&&(u!==this.prevKDPoint||r&&r.isHidden)){if(s&&!u.series.noSharedTooltip){for(e=o.length;e--;)(o[e].clientX!==u.clientX||o[e].series.noSharedTooltip)&&o.splice(e,1);o.length&&r&&r.refresh(o,n);i(o,function(t){t.onMouseOver(n,t!==(f&&f.directTouch&&v||u))})}else if(r&&r.refresh(u,n),!f||!f.directTouch)u.onMouseOver(n);this.prevKDPoint=u}else k=f&&f.tooltipOptions.followPointer,r&&k&&!r.isHidden&&(p=r.getAnchor([{}],n),r.updatePosition({plotX:p[0],plotY:p[1]}));a._onDocumentMouseMove||(a._onDocumentMouseMove=function(n){if(lt[si])lt[si].pointer.onDocumentMouseMove(n)},g(l,"mousemove",a._onDocumentMouseMove));i(h.axes,function(i){i.drawCrosshair(n,t(u,v))})},reset:function(n,r){var o=this,u=o.chart,c=u.hoverSeries,f=u.hoverPoint,s=u.hoverPoints,e=u.tooltip,h=e&&e.shared?s:f;n=n&&e&&h;n&&i(pi(h),function(t){t.plotX===undefined&&(n=!1)});n?(e.refresh(h),f&&(f.setState(f.state,!0),i(u.axes,function(n){t(n.options.crosshair&&n.options.crosshair.snap,!0)?n.drawCrosshair(null,f):n.hideCrosshair()}))):(f&&f.onMouseOut(),s&&i(s,function(n){n.setState()}),c&&c.onMouseOut(),e&&e.hide(r),o._onDocumentMouseMove&&(at(l,"mousemove",o._onDocumentMouseMove),o._onDocumentMouseMove=null),i(u.axes,function(n){n.hideCrosshair()}),o.hoverX=u.hoverPoints=u.hoverPoint=null)},scaleGroups:function(n,t){var r=this.chart,u;i(r.series,function(i){u=n||i.getPlotBox();i.xAxis&&i.xAxis.zoomEnabled&&(i.group.attr(u),i.markerGroup&&(i.markerGroup.attr(u),i.markerGroup.clip(t?r.clipRect:null)),i.dataLabelsGroup&&i.dataLabelsGroup.attr(u))});r.clipRect.attr(t||r.clipBox)},dragStart:function(n){var t=this.chart;t.mouseIsDown=n.type;t.cancelClick=!1;t.mouseDownX=this.mouseDownX=n.chartX;t.mouseDownY=this.mouseDownY=n.chartY},drag:function(n){var t=this.chart,s=t.options.chart,u=n.chartX,f=n.chartY,y=this.zoomHor,p=this.zoomVert,e=t.plotLeft,o=t.plotTop,l=t.plotWidth,a=t.plotHeight,v,r,i=this.selectionMarker,h=this.mouseDownX,c=this.mouseDownY,w=s.panKey&&n[s.panKey+"Key"];i&&i.touch||(u<e?u=e:u>e+l&&(u=e+l),f<o?f=o:f>o+a&&(f=o+a),this.hasDragged=Math.sqrt(Math.pow(h-u,2)+Math.pow(c-f,2)),this.hasDragged>10&&(v=t.isInsidePlot(h-e,c-o),t.hasCartesianSeries&&(this.zoomX||this.zoomY)&&v&&!w&&(i||(this.selectionMarker=i=t.renderer.rect(e,o,y?1:l,p?1:a,0).attr({fill:s.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add())),i&&y&&(r=u-h,i.attr({width:b(r),x:(r>0?0:r)+h})),i&&p&&(r=f-c,i.attr({height:b(r),y:(r>0?0:r)+c})),v&&!i&&s.panning&&t.pan(n,s.panning)))},drop:function(n){var v=this,f=this.chart,o=this.hasPinched;if(this.selectionMarker){var s={xAxis:[],yAxis:[],originalEvent:n.originalEvent||n},t=this.selectionMarker,c=t.attr?t.attr("x"):t.x,l=t.attr?t.attr("y"):t.y,y=t.attr?t.attr("width"):t.width,b=t.attr?t.attr("height"):t.height,a;(this.hasDragged||o)&&(i(f.axes,function(t){if(t.zoomEnabled&&r(t.min)&&(o||v[{xAxis:"zoomX",yAxis:"zoomY"}[t.coll]])){var i=t.horiz,f=n.type==="touchend"?t.minPixelPadding:0,e=t.toValue((i?c:l)+f),p=t.toValue((i?c+y:l+b)-f);s[t.coll].push({axis:t,min:h(e,p),max:u(e,p)});a=!0}}),a&&w(f,"selection",s,function(n){f.zoom(e(n,o?{animation:!1}:null))}));this.selectionMarker=this.selectionMarker.destroy();o&&this.scaleGroups()}f&&(p(f.container,{cursor:f._cursor}),f.cancelClick=this.hasDragged>10,f.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(n){n=this.normalize(n);n.preventDefault&&n.preventDefault();this.dragStart(n)},onDocumentMouseUp:function(n){lt[si]&&lt[si].pointer.drop(n)},onDocumentMouseMove:function(n){var t=this.chart,i=this.chartPosition;n=this.normalize(n,i);!i||this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop)||this.reset()},onContainerMouseLeave:function(){var n=lt[si];n&&(n.pointer.reset(),n.pointer.chartPosition=null)},onContainerMouseMove:function(n){var t=this.chart;si=t.index;n=this.normalize(n);n.returnValue=!1;t.mouseIsDown==="mousedown"&&this.drag(n);(this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop))&&!t.openMenu&&this.runPointActions(n)},inClass:function(n,t){for(var i;n;){if(i=tt(n,"class"),i){if(i.indexOf(t)!==-1)return!0;if(i.indexOf(rt+"container")!==-1)return!1}n=n.parentNode}},onTrackerMouseOut:function(n){var t=this.chart.hoverSeries,i=n.relatedTarget||n.toElement;!t||t.options.stickyTracking||this.inClass(i,rt+"tooltip")||this.inClass(i,rt+"series-"+t.index)||t.onMouseOut()},onContainerClick:function(n){var t=this.chart,i=t.hoverPoint,r=t.plotLeft,u=t.plotTop;n=this.normalize(n);n.originalEvent=n;t.cancelClick||(i&&this.inClass(n.target,rt+"tracker")?(w(i.series,"click",e(n,{point:i})),t.hoverPoint&&i.firePointEvent("click",n)):(e(n,this.getCoordinates(n)),t.isInsidePlot(n.chartX-r,n.chartY-u)&&w(t,"click",n)))},setDOMEvents:function(){var n=this,t=n.chart.container;t.onmousedown=function(t){n.onContainerMouseDown(t)};t.onmousemove=function(t){n.onContainerMouseMove(t)};t.onclick=function(t){n.onContainerClick(t)};g(t,"mouseleave",n.onContainerMouseLeave);su===1&&g(l,"mouseup",n.onDocumentMouseUp);ou&&(t.ontouchstart=function(t){n.onContainerTouchStart(t)},t.ontouchmove=function(t){n.onContainerTouchMove(t)},su===1&&g(l,"touchend",n.onDocumentTouchEnd))},destroy:function(){var n;at(this.chart.container,"mouseleave",this.onContainerMouseLeave);su||(at(l,"mouseup",this.onDocumentMouseUp),at(l,"touchend",this.onDocumentTouchEnd));clearInterval(this.tooltipTimeout);for(n in this)this[n]=null}},e(s.Pointer.prototype,{pinchTranslate:function(n,t,i,r,u,f){(this.zoomHor||this.pinchHor)&&this.pinchTranslateDirection(!0,n,t,i,r,u,f);(this.zoomVert||this.pinchVert)&&this.pinchTranslateDirection(!1,n,t,i,r,u,f)},pinchTranslateDirection:function(n,t,i,r,u,f,e,o){var v=this.chart,l=n?"x":"y",g=n?"X":"Y",y="chart"+g,ft=n?"width":"height",nt=v["plot"+(n?"Left":"Top")],a,s,tt,h=o||1,it=v.inverted,p=v.bounds[n?"h":"v"],w=t.length===1,k=t[0][y],c=i[0][y],et=!w&&t[1][y],d=!w&&i[1][y],rt,ut,ot,st=function(){!w&&b(k-et)>20&&(h=o||b(c-d)/b(k-et));tt=(nt-c)/h+k;a=v["plot"+(n?"Width":"Height")]/h};st();s=tt;s<p.min?(s=p.min,rt=!0):s+a>p.max&&(s=p.max-a,rt=!0);rt?(c-=.8*(c-e[l][0]),w||(d-=.8*(d-e[l][1])),st()):e[l]=[c,d];it||(f[l]=tt-nt,f[ft]=a);ot=it?n?"scaleY":"scaleX":"scale"+g;ut=it?1/h:h;u[ft]=a;u[l]=s;r[ot]=h;r["translate"+g]=ut*nt+(c-ut*k)},pinch:function(n){var r=this,o=r.chart,f=r.pinchDown,s=n.touches,c=s.length,l=r.lastValidTouch,a=r.hasZoom,v=r.selectionMarker,y={},w=c===1&&(r.inClass(n.target,rt+"tracker")&&o.runTrackerClick||r.runChartClick),p={};c>1&&(r.initiated=!0);a&&r.initiated&&!w&&n.preventDefault();pr(s,function(n){return r.normalize(n)});n.type==="touchstart"?(i(s,function(n,t){f[t]={chartX:n.chartX,chartY:n.chartY}}),l.x=[f[0].chartX,f[1]&&f[1].chartX],l.y=[f[0].chartY,f[1]&&f[1].chartY],i(o.axes,function(n){if(n.zoomEnabled){var i=o.bounds[n.horiz?"h":"v"],r=n.minPixelPadding,f=n.toPixels(t(n.options.min,n.dataMin)),e=n.toPixels(t(n.options.max,n.dataMax)),s=h(f,e),c=u(f,e);i.min=h(n.pos,s-r);i.max=u(n.pos+n.len,c+r)}}),r.res=!0):f.length&&(v||(r.selectionMarker=v=e({destroy:li,touch:!0},o.plotBox)),r.pinchTranslate(f,s,y,v,p,l),r.hasPinched=a,r.scaleGroups(y,p),!a&&r.followTouchMove&&c===1?this.runPointActions(r.normalize(n)):r.res&&(r.res=!1,this.reset(!1,0)))},touch:function(n,t){var i=this.chart;si=i.index;n.touches.length===1?(n=this.normalize(n),i.isInsidePlot(n.chartX-i.plotLeft,n.chartY-i.plotTop)&&!i.openMenu?(t&&this.runPointActions(n),this.pinch(n)):t&&this.reset()):n.touches.length===2&&this.pinch(n)},onContainerTouchStart:function(n){this.touch(n,!0)},onContainerTouchMove:function(n){this.touch(n)},onDocumentTouchEnd:function(n){lt[si]&&lt[si].pointer.drop(n)}}),it.PointerEvent||it.MSPointerEvent){var bi={},ie=!!it.PointerEvent,wo=function(){var n,t=[];t.item=function(n){return this[n]};for(n in bi)bi.hasOwnProperty(n)&&t.push({pageX:bi[n].pageX,pageY:bi[n].pageY,target:bi[n].target});return t},re=function(n,t,i,r){var u;n=n.originalEvent||n;(n.pointerType==="touch"||n.pointerType===n.MSPOINTER_TYPE_TOUCH)&&lt[si]&&(r(n),u=lt[si].pointer,u[t]({type:i,target:n.currentTarget,preventDefault:li,touches:wo()}))};e(wr.prototype,{onContainerPointerDown:function(n){re(n,"onContainerTouchStart","touchstart",function(n){bi[n.pointerId]={pageX:n.pageX,pageY:n.pageY,target:n.currentTarget}})},onContainerPointerMove:function(n){re(n,"onContainerTouchMove","touchmove",function(n){bi[n.pointerId]={pageX:n.pageX,pageY:n.pageY};bi[n.pointerId].target||(bi[n.pointerId].target=n.currentTarget)})},onDocumentPointerUp:function(n){re(n,"onDocumentTouchEnd","touchend",function(n){delete bi[n.pointerId]})},batchMSEvents:function(n){n(this.chart.container,ie?"pointerdown":"MSPointerDown",this.onContainerPointerDown);n(this.chart.container,ie?"pointermove":"MSPointerMove",this.onContainerPointerMove);n(l,ie?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}});vr(wr.prototype,"init",function(n,t,i){n.call(this,t,i);this.hasZoom&&p(t.container,{"-ms-touch-action":st,"touch-action":st})});vr(wr.prototype,"setDOMEvents",function(n){n.apply(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(g)});vr(wr.prototype,"destroy",function(n){this.batchMSEvents(at);n.call(this)})}return wu=s.Legend=function(n,t){this.init(n,t)},wu.prototype={init:function(n,i){var r=this,f=i.itemStyle,u,e=i.itemMarginTop||0;(this.options=i,i.enabled)&&(r.itemStyle=f,r.itemHiddenStyle=c(f,i.itemHiddenStyle),r.itemMarginTop=e,r.padding=u=t(i.padding,8),r.initialItemX=u,r.initialItemY=u-5,r.maxItemWidth=0,r.chart=n,r.itemHeight=0,r.symbolWidth=t(i.symbolWidth,16),r.pages=[],r.render(),g(r.chart,"endResize",function(){r.positionCheckboxes()}))},colorizeItem:function(n,t){var h=this,y=h.options,c=n.legendItem,l=n.legendLine,r=n.legendSymbol,a=h.itemHiddenStyle.color,v=t?y.itemStyle.color:a,u=t?n.legendColor||n.color||"#CCC":a,i=n.options&&n.options.marker,e={fill:u},o,s;if(c&&c.css({fill:v,color:v}),l&&l.attr({stroke:u}),r){if(i&&r.isMarker){e.stroke=u;i=n.convertAttribs(i);for(o in i)s=i[o],s!==f&&(e[o]=s)}r.attr(e)}},positionItem:function(n){var u=this,f=u.options,s=f.symbolPadding,h=!f.rtl,e=n._legendItemPos,t=e[0],o=e[1],i=n.checkbox,r=n.legendGroup;r&&r.element&&r.translate(h?t:u.legendWidth-t-2*s-4,o);i&&(i.x=t,i.y=o)},destroyItem:function(n){var t=n.checkbox;i(["legendItem","legendLine","legendSymbol","legendGroup"],function(t){n[t]&&(n[t]=n[t].destroy())});t&&nu(n.checkbox)},destroy:function(){var n=this,t=n.group,i=n.box;i&&(n.box=i.destroy());t&&(n.group=t.destroy())},positionCheckboxes:function(n){var r=this.group.alignAttr,t,u=this.clipHeight||this.legendHeight;r&&(t=r.translateY,i(this.allItems,function(i){var f=i.checkbox,e;f&&(e=t+f.y+(n||0)+3,p(f,{left:r.translateX+i.checkboxOffset+f.x-20+y,top:e+y,display:e>t-6&&e<t+u-6?"":st}))}))},renderTitle:function(){var u=this.options,r=this.padding,n=u.title,t=0,i;n.text&&(this.title||(this.title=this.chart.renderer.label(n.text,r-3,r-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(n.style).add(this.group)),i=this.title.getBBox(),t=i.height,this.offsetWidth=i.width,this.contentGroup.attr({translateY:t}));this.titleHeight=t},setText:function(n){var t=this.options;n.legendItem.attr({text:t.labelFormat?yr(t.labelFormat,n):t.labelFormatter.call(n)})},renderItem:function(n){var i=this,k=i.chart,v=k.renderer,r=i.options,s=r.layout==="horizontal",d=i.symbolWidth,y=r.symbolPadding,p=i.itemStyle,g=i.itemHiddenStyle,nt=i.padding,tt=s?t(r.itemDistance,20):0,it=!r.rtl,h,rt=r.width,w=r.itemMarginBottom||0,l=i.itemMarginTop,a=i.initialItemX,b,e,f=n.legendItem,ut=n.series&&n.series.drawLegendSymbol?n.series:n,ft=ut.options,et=i.createCheckboxForItem&&ft&&ft.showCheckbox,ot=r.useHTML;f||(n.legendGroup=v.g("legend-item").attr({zIndex:1}).add(i.scrollGroup),n.legendItem=f=v.text("",it?d+y:-y,i.baseline||0,ot).css(c(n.visible?p:g)).attr({align:it?"left":"right",zIndex:2}).add(n.legendGroup),i.baseline||(i.fontMetrics=v.fontMetrics(p.fontSize,f),i.baseline=i.fontMetrics.f+3+l,f.attr("y",i.baseline)),ut.drawLegendSymbol(i,n),i.setItemEvents&&i.setItemEvents(n,f,ot,p,g),i.colorizeItem(n,n.visible),et&&i.createCheckboxForItem(n));i.setText(n);b=f.getBBox();e=n.checkboxOffset=r.itemWidth||n.legendItemWidth||d+y+b.width+tt+(et?20:0);i.itemHeight=h=o(n.legendItemHeight||b.height);s&&i.itemX-a+e>(rt||k.chartWidth-2*nt-a-r.x)&&(i.itemX=a,i.itemY+=l+i.lastLineHeight+w,i.lastLineHeight=0);i.maxItemWidth=u(i.maxItemWidth,e);i.lastItemY=l+i.itemY+w;i.lastLineHeight=u(h,i.lastLineHeight);n._legendItemPos=[i.itemX,i.itemY];s?i.itemX+=e:(i.itemY+=l+h+w,i.lastLineHeight=h);i.offsetWidth=rt||u((s?i.itemX-a-tt:e)+nt,i.offsetWidth)},getAllItems:function(){var n=[];return i(this.chart.series,function(i){var u=i.options;t(u.showInLegend,r(u.linkedTo)?!1:f,!0)&&(n=n.concat(i.legendItems||(u.legendType==="point"?i.data:i)))}),n},adjustMargins:function(n,f){var o=this.chart,e=this.options,s=e.align.charAt(0)+e.verticalAlign.charAt(0)+e.layout.charAt(0);this.display&&!e.floating&&i([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/],function(i,h){i.test(s)&&!r(n[h])&&(o[tf[h]]=u(o[tf[h]],o.legend[(h+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][h]*e[h%2?"x":"y"]+t(e.margin,12)+f[h]))})},render:function(){var n=this,a=n.chart,h=a.renderer,s=n.group,f,c,o,t,r=n.box,u=n.options,v=n.padding,l=u.borderWidth,y=u.backgroundColor;n.itemX=n.initialItemX;n.itemY=n.initialItemY;n.offsetWidth=0;n.lastItemY=0;s||(n.group=s=h.g("legend").attr({zIndex:7}).add(),n.contentGroup=h.g().attr({zIndex:1}).add(s),n.scrollGroup=h.g().add(n.contentGroup));n.renderTitle();f=n.getAllItems();ff(f,function(n,t){return(n.options&&n.options.legendIndex||0)-(t.options&&t.options.legendIndex||0)});u.reversed&&f.reverse();n.allItems=f;n.display=c=!!f.length;n.lastLineHeight=0;i(f,function(t){n.renderItem(t)});o=(u.width||n.offsetWidth)+v;t=n.lastItemY+n.lastLineHeight+n.titleHeight;t=n.handleOverflow(t);t+=v;(l||y)&&(r?o>0&&t>0&&(r[r.isNew?"attr":"animate"](r.crisp({width:o,height:t})),r.isNew=!1):(n.box=r=h.rect(0,0,o,t,u.borderRadius,l||0).attr({stroke:u.borderColor,"stroke-width":l||0,fill:y||st}).add(s).shadow(u.shadow),r.isNew=!0),r[c?"show":"hide"]());n.legendWidth=o;n.legendHeight=t;i(f,function(t){n.positionItem(t)});c&&s.align(e({width:o,height:t},u),!0,"spacingBox");a.isResizing||this.positionCheckboxes()},handleOverflow:function(n){var r=this,b=this.chart,c=b.renderer,l=this.options,d=l.y,rt=l.verticalAlign==="top",s=b.spacingBox.height+(rt?-d:d)-this.padding,g=l.maxHeight,a,v=this.clipRect,k=l.navigation,nt=t(k.animation,!0),y=k.arrowSize||12,f=this.nav,e=this.pages,p=this.padding,w,tt=this.allItems,it=function(n){v.attr({height:n});r.contentGroup.div&&(r.contentGroup.div.style.clip="rect("+p+"px,9999px,"+(p+n)+"px,0)")};return l.layout==="horizontal"&&(s/=2),g&&(s=h(s,g)),e.length=0,n>s?(this.clipHeight=a=u(s-20-this.titleHeight-p,0),this.currentPage=t(this.currentPage,1),this.fullHeight=n,i(tt,function(n,t){var i=n._legendItemPos[1],u=o(n.legendItem.getBBox().height),r=e.length;(!r||i-e[r-1]>a&&(w||i)!==e[r-1])&&(e.push(w||i),r++);t===tt.length-1&&i+u-e[r-1]>a&&e.push(i);i!==w&&(w=i)}),v||(v=r.clipRect=c.clipRect(0,p,9999,0),r.contentGroup.clip(v)),it(a),f||(this.nav=f=c.g().attr({zIndex:1}).add(this.group),this.up=c.symbol("triangle",0,0,y,y).on("click",function(){r.scroll(-1,nt)}).add(f),this.pager=c.text("",15,10).css(k.style).add(f),this.down=c.symbol("triangle-down",0,0,y,y).on("click",function(){r.scroll(1,nt)}).add(f)),r.scroll(0),n=s):f&&(it(b.chartHeight),f.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),n},scroll:function(n,t){var e=this.pages,r=e.length,i=this.currentPage+n,c=this.clipHeight,o=this.options.navigation,s=o.activeColor,h=o.inactiveColor,l=this.pager,a=this.padding,u;i>r&&(i=r);i>0&&(t!==f&&tu(t,this.chart),this.nav.attr({translateX:a,translateY:c+this.padding+7+this.titleHeight,visibility:rr}),this.up.attr({fill:i===1?h:s}).css({cursor:i===1?"default":"pointer"}),l.attr({text:i+"/"+r}),this.down.attr({x:18+this.pager.getBBox().width,fill:i===r?h:s}).css({cursor:i===r?"default":"pointer"}),u=-e[i-1]+this.initialItemY,this.scrollGroup.animate({translateY:u}),this.currentPage=i,this.positionCheckboxes(u))}},fu=s.LegendSymbolMixin={drawRectangle:function(n,t){var i=n.options.symbolHeight||n.fontMetrics.f;t.legendSymbol=this.chart.renderer.rect(0,n.baseline-i+1,n.symbolWidth,i,n.options.symbolRadius||0).attr({zIndex:3}).add(t.legendGroup)},drawLineMarker:function(n){var t=this.options,r=t.marker,i,e,s=n.symbolWidth,h=this.chart.renderer,c=this.legendGroup,u=n.baseline-o(n.fontMetrics.b*.3),f;t.lineWidth&&(f={"stroke-width":t.lineWidth},t.dashStyle&&(f.dashstyle=t.dashStyle),this.legendLine=h.path([et,0,u,nt,s,u]).attr(f).add(c));r&&r.enabled!==!1&&(i=r.radius,this.legendSymbol=e=h.symbol(this.symbol,s/2-i,u-i,2*i,2*i).add(c),e.isMarker=!0)}},(/Trident\/7\.0/.test(ki)||hr)&&vr(wu.prototype,"positionItem",function(n,t){var r=this,i=function(){t._legendItemPos&&n.call(r,t)};i();setTimeout(i)}),bu=s.Chart=function(){this.init.apply(this,arguments)},bu.prototype={callbacks:[],init:function(n,i){var f,s=n.series,u,e,r,o;if(n.series=null,f=c(ft,n),f.series=n.series=s,this.userOptions=n,u=f.chart,this.margin=this.splashArray("margin",u),this.spacing=this.splashArray("spacing",u),e=u.events,this.bounds={h:{},v:{}},this.callback=i,this.isResizing=0,this.options=f,this.axes=[],this.series=[],this.hasCartesianSeries=u.showAxes,r=this,r.index=lt.length,lt.push(r),su++,u.reflow!==!1&&g(r,"load",function(){r.initReflow()}),e)for(o in e)g(r,o,e[o]);r.xAxis=[];r.yAxis=[];r.animation=ni?!1:t(u.animation,!0);r.pointCount=r.colorCounter=r.symbolCounter=0;r.firstRender()},initSeries:function(n){var u=this,i=u.options.chart,f=n.type||i.type||i.defaultSeriesType,t,r=d[f];return r||vi(17,!0),t=new r,t.init(this,n),t},isInsidePlot:function(n,t,i){var r=i?t:n,u=i?n:t;return r>=0&&r<=this.plotWidth&&u>=0&&u<=this.plotHeight},redraw:function(n){var t=this,o=t.axes,u=t.series,c=t.pointer,l=t.legend,a=t.isDirtyLegend,s,v,y=t.hasCartesianSeries,h=t.isDirtyBox,p=u.length,f=p,r,b=t.renderer,k=b.isHidden(),d=[];for(tu(n,t),k&&t.cloneRenderTo(),t.layOutTitles();f--;)if(r=u[f],r.options.stacking&&(s=!0,r.isDirty)){v=!0;break}if(v)for(f=p;f--;)r=u[f],r.options.stacking&&(r.isDirty=!0);i(u,function(n){n.isDirty&&n.options.legendType==="point"&&(n.updateTotals&&n.updateTotals(),a=!0)});a&&l.options.enabled&&(l.render(),t.isDirtyLegend=!1);s&&t.getStacks();y&&(t.isResizing||(t.maxTicks=null,i(o,function(n){n.setScale()})));t.getMargins();y&&(i(o,function(n){n.isDirty&&(h=!0)}),i(o,function(n){var t=n.min+","+n.max;n.extKey!==t&&(n.extKey=t,d.push(function(){w(n,"afterSetExtremes",e(n.eventArgs,n.getExtremes()));delete n.eventArgs}));(h||s)&&n.redraw()}));h&&t.drawChartBox();i(u,function(n){n.isDirty&&n.visible&&(!n.isCartesian||n.xAxis)&&n.redraw()});c&&c.reset(!0);b.draw();w(t,"redraw");k&&t.cloneRenderTo(!0);i(d,function(n){n.call()})},get:function(n){for(var e=this,f=e.axes,i=e.series,r,u,t=0;t<f.length;t++)if(f[t].options.id===n)return f[t];for(t=0;t<i.length;t++)if(i[t].options.id===n)return i[t];for(t=0;t<i.length;t++)for(u=i[t].points||[],r=0;r<u.length;r++)if(u[r].id===n)return u[r];return null},getAxes:function(){var f=this,n=this.options,t=n.xAxis=pi(n.xAxis||{}),r=n.yAxis=pi(n.yAxis||{}),u;i(t,function(n,t){n.index=t;n.isX=!0});i(r,function(n,t){n.index=t});u=t.concat(r);i(u,function(n){new ii(f,n)})},getSelectedPoints:function(){var n=[];return i(this.series,function(t){n=n.concat(yu(t.points||[],function(n){return n.selected}))}),n},getSelectedSeries:function(){return yu(this.series,function(n){return n.selected})},setTitle:function(n,t,r){var u=this,f=u.options,e,o;e=f.title=c(f.title,n);o=f.subtitle=c(f.subtitle,t);i([["title",n,e],["subtitle",t,o]],function(n){var i=n[0],r=u[i],f=n[1],t=n[2];r&&f&&(u[i]=r=r.destroy());t&&t.text&&!r&&(u[i]=u.renderer.text(t.text,0,0,t.useHTML).attr({align:t.align,"class":rt+i,zIndex:t.zIndex||4}).css(t.style).add())});u.layOutTitles(r)},layOutTitles:function(n){var i=0,u=this.title,o=this.subtitle,h=this.options,r=h.title,f=h.subtitle,s,c=this.renderer,l=this.spacingBox.width-44;u&&(u.css({width:(r.width||l)+y}).align(e({y:c.fontMetrics(r.style.fontSize,u).b-3},r),!1,"spacingBox"),r.floating||r.verticalAlign||(i=u.getBBox().height));o&&(o.css({width:(f.width||l)+y}).align(e({y:i+(r.margin-13)+c.fontMetrics(f.style.fontSize,u).b},f),!1,"spacingBox"),f.floating||f.verticalAlign||(i=hi(i+o.getBBox().height)));s=this.titleOffset!==i;this.titleOffset=i;!this.isDirtyBox&&s&&(this.isDirtyBox=s,this.hasRendered&&t(n,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var n=this,i=n.options.chart,f=i.width,e=i.height,o=n.renderToClone||n.renderTo;r(f)||(n.containerWidth=vu(o,"width"));r(e)||(n.containerHeight=vu(o,"height"));n.chartWidth=u(0,f||n.containerWidth||600);n.chartHeight=u(0,t(e,n.containerHeight>19?n.containerHeight:400))},cloneRenderTo:function(n){var t=this.renderToClone,i=this.container;n?t&&(this.renderTo.appendChild(i),nu(t),delete this.renderToClone):(i&&i.parentNode===this.renderTo&&this.renderTo.removeChild(i),this.renderToClone=t=this.renderTo.cloneNode(0),p(t,{position:ai,top:"-9999px",display:"block"}),t.style.setProperty&&t.style.setProperty("display","block","important"),l.body.appendChild(t),i&&t.appendChild(i))},getContainer:function(){var n=this,u,h=n.options,i=h.chart,f,o,t,c="data-highcharts-chart",r,v,p;n.renderTo=t=i.renderTo;p=rt+hf++;ur(t)&&(n.renderTo=t=l.getElementById(t));t||vi(13,!0);r=a(tt(t,c));!isNaN(r)&&lt[r]&&lt[r].hasRendered&&lt[r].destroy();tt(t,c,n.index);t.innerHTML="";i.skipClone||t.offsetWidth||n.cloneRenderTo();n.getChartSize();f=n.chartWidth;o=n.chartHeight;n.container=u=wt(cr,{className:rt+"container"+(i.className?" "+i.className:""),id:p},e({position:ae,overflow:di,width:f+y,height:o+y,textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},i.style),n.renderToClone||t);n._cursor=u.style.cursor;v=s[i.renderer]||eu;n.renderer=new v(u,f,o,i.style,i.forExport,h.exporting&&h.exporting.allowHTML);ni&&n.renderer.create(n,u,f,o);n.renderer.chartIndex=n.index},getMargins:function(n){var t=this,i=t.spacing,f=t.margin,e=t.titleOffset;t.resetMargins();e&&!r(f[0])&&(t.plotTop=u(t.plotTop,e+t.options.title.margin+i[0]));t.legend.adjustMargins(f,i);t.extraBottomMargin&&(t.marginBottom+=t.extraBottomMargin);t.extraTopMargin&&(t.plotTop+=t.extraTopMargin);n||this.getAxisMargins()},getAxisMargins:function(){var n=this,t=n.axisOffset=[0,0,0,0],u=n.margin;n.hasCartesianSeries&&i(n.axes,function(n){n.visible&&n.getOffset()});i(tf,function(i,f){r(u[f])||(n[i]+=t[f])});n.setChartSize()},reflow:function(n){var t=this,u=t.options.chart,f=t.renderTo,i=u.width||vu(f,"width"),r=u.height||vu(f,"height"),e=n?n.target:it;!t.hasUserSize&&!t.isPrinting&&i&&r&&(e===it||e===l)&&((i!==t.containerWidth||r!==t.containerHeight)&&(clearTimeout(t.reflowTimeout),t.reflowTimeout=kr(function(){t.container&&(t.setSize(i,r,!1),t.hasUserSize=null)},n?100:0)),t.containerWidth=i,t.containerHeight=r)},initReflow:function(){var n=this,t=function(t){n.reflow(t)};g(it,"resize",t);g(n,"destroy",function(){at(it,"resize",t)})},setSize:function(n,t,f){var e=this,h,c,l=e.renderer,s;e.isResizing+=1;tu(f,e);e.oldChartHeight=e.chartHeight;e.oldChartWidth=e.chartWidth;r(n)&&(e.chartWidth=h=u(0,o(n)),e.hasUserSize=!!h);r(t)&&(e.chartHeight=c=u(0,o(t)));s=l.globalAnimation;(s?pu:p)(e.container,{width:h+y,height:c+y},s);e.setChartSize(!0);l.setSize(h,c,f);e.maxTicks=null;i(e.axes,function(n){n.isDirty=!0;n.setScale()});i(e.series,function(n){n.isDirty=!0});e.isDirtyLegend=!0;e.isDirtyBox=!0;e.layOutTitles();e.getMargins();e.redraw(f);e.oldChartHeight=null;w(e,"resize");s=l.globalAnimation;kr(function(){e&&w(e,"endResize",null,function(){e.isResizing-=1})},s===!1?0:s&&s.duration||500)},setChartSize:function(n){var t=this,y=t.inverted,p=t.renderer,w=t.chartWidth,b=t.chartHeight,k=t.options.chart,r=t.spacing,e=t.clipOffset,c,l,a,v,s,h,f;t.plotLeft=a=o(t.plotLeft);t.plotTop=v=o(t.plotTop);t.plotWidth=s=u(0,o(w-a-t.marginRight));t.plotHeight=h=u(0,o(b-v-t.marginBottom));t.plotSizeX=y?h:s;t.plotSizeY=y?s:h;t.plotBorderWidth=k.plotBorderWidth||0;t.spacingBox=p.spacingBox={x:r[3],y:r[0],width:w-r[3]-r[1],height:b-r[0]-r[2]};t.plotBox=p.plotBox={x:a,y:v,width:s,height:h};f=2*ot(t.plotBorderWidth/2);c=hi(u(f,e[3])/2);l=hi(u(f,e[0])/2);t.clipBox={x:c,y:l,width:ot(t.plotSizeX-u(f,e[1])/2-c),height:u(0,ot(t.plotSizeY-u(f,e[2])/2-l))};n||i(t.axes,function(n){n.setAxisSize();n.setAxisTranslation()})},resetMargins:function(){var n=this;i(tf,function(i,r){n[i]=t(n.margin[r],n.spacing[r])});n.axisOffset=[0,0,0,0];n.clipOffset=[0,0,0,0]},drawChartBox:function(){var n=this,t=n.options.chart,r=n.renderer,y=n.chartWidth,p=n.chartHeight,l=n.chartBackground,w=n.plotBackground,a=n.plotBorder,b=n.plotBGImage,u=t.borderWidth||0,k=t.backgroundColor,d=t.plotBackgroundColor,g=t.plotBackgroundImage,f=t.plotBorderWidth||0,i,e,o=n.plotLeft,s=n.plotTop,h=n.plotWidth,c=n.plotHeight,nt=n.plotBox,tt=n.clipRect,v=n.clipBox;i=u+(t.shadow?8:0);(u||k)&&(l?l.animate(l.crisp({width:y-i,height:p-i})):(e={fill:k||st},u&&(e.stroke=t.borderColor,e["stroke-width"]=u),n.chartBackground=r.rect(i/2,i/2,y-i,p-i,t.borderRadius,u).attr(e).addClass(rt+"background").add().shadow(t.shadow)));d&&(w?w.animate(nt):n.plotBackground=r.rect(o,s,h,c,0).attr({fill:d}).add().shadow(t.plotShadow));g&&(b?b.animate(nt):n.plotBGImage=r.image(g,o,s,h,c).add());tt?tt.animate({width:v.width,height:v.height}):n.clipRect=r.clipRect(v);f&&(a?a.animate(a.crisp({x:o,y:s,width:h,height:c,strokeWidth:-f})):n.plotBorder=r.rect(o,s,h,c,0,-f).attr({stroke:t.plotBorderColor,"stroke-width":f,fill:st,zIndex:1}).add());n.isDirtyBox=!1},propFromSeries:function(){var t=this,u=t.options.chart,n,f=t.options.series,e,r;i(["inverted","angular","polar"],function(i){for(n=d[u.type||u.defaultSeriesType],r=t[i]||u[i]||n&&n.prototype[i],e=f&&f.length;!r&&e--;)n=d[f[e].type],n&&n.prototype[i]&&(r=!0);t[i]=r})},linkSeries:function(){var n=this,r=n.series;i(r,function(n){n.linkedSeries.length=0});i(r,function(i){var r=i.options.linkedTo;ur(r)&&(r=r===":previous"?n.series[i.index-1]:n.get(r),r&&(r.linkedSeries.push(i),i.linkedParent=r,i.visible=t(i.options.visible,r.options.visible,i.visible)))})},renderSeries:function(){i(this.series,function(n){n.translate();n.render()})},renderLabels:function(){var n=this,t=n.options.labels;t.items&&i(t.items,function(i){var r=e(t.style,i.style),u=a(r.left)+n.plotLeft,f=a(r.top)+n.plotTop+12;delete r.left;delete r.top;n.renderer.text(i.html,u,f).attr({zIndex:2}).css(r).add()})},render:function(){var n=this,t=n.axes,s=n.renderer,f=n.options,e,o,r,u;n.setTitle();n.legend=new wu(n,f.legend);n.getStacks&&n.getStacks();n.getMargins(!0);n.setChartSize();e=n.plotWidth;o=n.plotHeight=n.plotHeight-21;i(t,function(n){n.setScale()});n.getAxisMargins();r=e/n.plotWidth>1.1;u=o/n.plotHeight>1.05;(r||u)&&(n.maxTicks=null,i(t,function(n){(n.horiz&&r||!n.horiz&&u)&&n.setTickInterval(!0)}),n.getMargins());n.drawChartBox();n.hasCartesianSeries&&i(t,function(n){n.visible&&n.render()});n.seriesGroup||(n.seriesGroup=s.g("series-group").attr({zIndex:3}).add());n.renderSeries();n.renderLabels();n.showCredits(f.credits);n.hasRendered=!0},showCredits:function(n){n.enabled&&!this.credits&&(this.credits=this.renderer.text(n.text,0,0).on("click",function(){n.href&&(location.href=n.href)}).attr({align:n.position.align,zIndex:8}).css(n.style).add().align(n.position))},destroy:function(){var n=this,u=n.axes,e=n.series,r=n.container,t,o=r&&r.parentNode;for(w(n,"destroy"),lt[n.index]=f,su--,n.renderTo.removeAttribute("data-highcharts-chart"),at(n),t=u.length;t--;)u[t]=u[t].destroy();for(t=e.length;t--;)e[t]=e[t].destroy();i(["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","scroller","rangeSelector","legend","resetZoomButton","tooltip","renderer"],function(t){var i=n[t];i&&i.destroy&&(n[t]=i.destroy())});r&&(r.innerHTML="",at(r),o&&nu(r));for(t in n)delete n[t]},isReadyToRender:function(){var n=this;return!pt&&it==it.top&&l.readyState!=="complete"||ni&&!it.canvg?(ni?io.push(function(){n.firstRender()},n.options.global.canvasToolsURL):l.attachEvent("onreadystatechange",function(){l.detachEvent("onreadystatechange",n.firstRender);l.readyState==="complete"&&n.firstRender()}),!1):!0},firstRender:function(){var n=this,t=n.options,r=n.callback;n.isReadyToRender()&&(n.getContainer(),w(n,"init"),n.resetMargins(),n.setChartSize(),n.propFromSeries(),n.getAxes(),i(t.series||[],function(t){n.initSeries(t)}),n.linkSeries(),w(n,"beforeRender"),s.Pointer&&(n.pointer=new wr(n,t)),n.render(),n.renderer.draw(),r&&r.apply(n,[n]),i(n.callbacks,function(t){n.index!==f&&t.apply(n,[n])}),w(n,"load"),n.cloneRenderTo(!0))},splashArray:function(n,i){var r=i[n],u=kt(r)?r:[r,r,r,r];return[t(i[n+"Top"],u[0]),t(i[n+"Right"],u[1]),t(i[n+"Bottom"],u[2]),t(i[n+"Left"],u[3])]}},ro=s.CenteredSeriesMixin={getCenter:function(){for(var r=this.options,e=this.chart,u=2*(r.slicedOffset||0),o,s=e.plotWidth-2*u,c=e.plotHeight-2*u,l=r.center,n=[t(l[0],"50%"),t(l[1],"50%"),r.size||"100%",r.innerSize||0],a=h(s,c),f,i=0;i<4;++i)f=n[i],o=i<2||i===2&&/%$/.test(f),n[i]=ke(f,[s,c,a,n[2]][i])+(o?u:0);return n[3]>n[2]&&(n[3]=n[2]),n}},tr=function(){},tr.prototype={init:function(n,t,i){var r=this,u;return r.series=n,r.color=n.color,r.applyOptions(t,i),r.pointAttr={},n.options.colorByPoint&&(u=n.options.colors||n.chart.options.colors,r.color=r.color||u[n.colorCounter++],n.colorCounter===u.length&&(n.colorCounter=0)),n.chart.pointCount++,r},applyOptions:function(n,t){var i=this,r=i.series,u=r.options.pointValKey||r.pointValKey;return n=tr.prototype.optionsToObject.call(this,n),e(i,n),i.options=i.options?e(i.options,n):n,u&&(i.y=i[u]),i.x===f&&r&&(i.x=t===f?r.autoIncrement():t),i},optionsToObject:function(n){var t={},i=this.series,u=i.options.keys,f=u||i.pointArrayMap||["y"],s=f.length,e,r=0,o=0;if(typeof n=="number"||n===null)t[f[0]]=n;else if(lr(n))for(!u&&n.length>s&&(e=typeof n[0],e==="string"?t.name=n[0]:e==="number"&&(t.x=n[0]),r++);o<s;)u&&n[r]===undefined||(t[f[o]]=n[r]),r++,o++;else typeof n=="object"&&(t=n,n.dataLabels&&(i._hasPointLabels=!0),n.marker&&(i._hasPointMarkers=!0));return t},destroy:function(){var n=this,u=n.series,t=u.chart,i=t.hoverPoints,r;t.pointCount--;i&&(n.setState(),ei(i,n),i.length||(t.hoverPoints=null));n===t.hoverPoint&&n.onMouseOut();(n.graphic||n.dataLabel)&&(at(n),n.destroyElements());n.legendItem&&t.legend.destroyItem(n);for(r in n)n[r]=null},destroyElements:function(){for(var t=this,r=["graphic","dataLabel","dataLabelUpper","connector","shadowGroup"],n,i=6;i--;)n=r[i],t[n]&&(t[n]=t[n].destroy())},getLabelConfig:function(){return{x:this.category,y:this.y,color:this.color,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},tooltipFormatter:function(n){var u=this.series,r=u.tooltipOptions,o=t(r.valueDecimals,""),f=r.valuePrefix||"",e=r.valueSuffix||"";return i(u.pointArrayMap||["y"],function(t){t="{point."+t;(f||e)&&(n=n.replace(t+"}",f+t+"}"+e));n=n.replace(t+"}",t+":,."+o+"f}")}),yr(n,{point:this,series:this.series})},firePointEvent:function(n,t,i){var r=this,f=this.series,u=f.options;(u.point.events[n]||r.options&&r.options.events&&r.options.events[n])&&this.importEvents();n==="click"&&u.allowPointSelect&&(i=function(n){r.select&&r.select(null,n.ctrlKey||n.metaKey||n.shiftKey)});w(this,n,t,i)},visible:!0},k=s.Series=function(){},k.prototype={isCartesian:!0,type:"line",pointClass:tr,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},directTouch:!1,axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(n,r){var u=this,s,f,o=n.series,h=function(n,i){return t(n.options.index,n._i)-t(i.options.index,i._i)};u.chart=n;u.options=r=u.setOptions(r);u.linkedSeries=[];u.bindAxes();e(u,{name:r.name,state:bt,pointAttr:{},visible:r.visible!==!1,selected:r.selected===!0});ni&&(r.animation=!1);f=r.events;for(s in f)g(u,s,f[s]);(f&&f.click||r.point&&r.point.events&&r.point.events.click||r.allowPointSelect)&&(n.runTrackerClick=!0);u.getColor();u.getSymbol();i(u.parallelArrays,function(n){u[n+"Data"]=[]});u.setData(r.data,!1);u.isCartesian&&(n.hasCartesianSeries=!0);o.push(u);u._i=o.length-1;ff(o,h);this.yAxis&&ff(this.yAxis.series,h);i(o,function(n,t){n.index=t;n.name=n.name||"Series "+(t+1)})},bindAxes:function(){var n=this,t=n.options,u=n.chart,r;i(n.axisTypes||[],function(e){i(u[e],function(i){r=i.options;(t[e]===r.index||t[e]!==f&&t[e]===r.id||t[e]===f&&r.index===0)&&(i.series.push(n),n[e]=i,i.isDirty=!0)});n[e]||n.optionalAxis===e||vi(18,!0)})},updateParallelArrays:function(n,t){var r=n.series,u=arguments,f=typeof t=="number"?function(i){var u=i==="y"&&r.toYData?r.toYData(n):n[i];r[i+"Data"][t]=u}:function(n){Array.prototype[t].apply(r[n+"Data"],Array.prototype.slice.call(u,2))};i(r.parallelArrays,f)},autoIncrement:function(){var u=this.options,i=this.xIncrement,n,r,f=u.pointIntervalUnit;return i=t(i,u.pointStart,0),this.pointInterval=r=t(this.pointInterval,u.pointInterval,1),(f==="month"||f==="year")&&(n=new nr(i),n=f==="month"?+n[wf](n[cu]()+r):+n[bf](n[lu]()+r),r=n-i),this.xIncrement=i+r,i},getSegments:function(){var f=this,t=-1,r=[],u,n=f.points,e=n.length;if(e)if(f.options.connectNulls){for(u=e;u--;)n[u].y===null&&n.splice(u,1);n.length&&(r=[n])}else i(n,function(i,u){i.y===null?(u>t+1&&r.push(n.slice(t+1,u)),t=u):u===e-1&&r.push(n.slice(t+1,u+1))});f.segments=r},setOptions:function(n){var f=this.chart,h=f.options,e=h.plotOptions,o=f.userOptions||{},u=o.plotOptions||{},s=e[this.type],t,i;return this.userOptions=n,t=c(s,e.series,n),this.tooltipOptions=c(ft.tooltip,ft.plotOptions[this.type].tooltip,o.tooltip,u.series&&u.series.tooltip,u[this.type]&&u[this.type].tooltip,n.tooltip),s.marker===null&&delete t.marker,this.zoneAxis=t.zoneAxis,i=this.zones=(t.zones||[]).slice(),(t.negativeColor||t.negativeFillColor)&&!t.zones&&i.push({value:t[this.zoneAxis+"Threshold"]||t.threshold||0,color:t.negativeColor,fillColor:t.negativeFillColor}),i.length&&r(i[i.length-1].value)&&i.push({color:this.color,fillColor:this.fillColor}),t},getCyclic:function(n,t,i){var u,f=this.userOptions,e="_"+n+"Index",o=n+"Counter";t||(r(f[e])?u=f[e]:(f[e]=u=this.chart[o]%i.length,this.chart[o]+=1),t=i[u]);this[n]=t},getColor:function(){this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||vt[this.type].color,this.chart.options.colors)},getSymbol:function(){var n=this.options.marker;this.getCyclic("symbol",n.symbol,this.chart.options.symbols);/^url/.test(this.symbol)&&(n.radius=0)},drawLegendSymbol:fu.drawLineMarker,setData:function(n,u,e,o){var h=this,a=h.points,d=a&&a.length||0,l,y=h.options,g=h.chart,p=null,v=h.xAxis,ut=v&&!!v.categories,s,nt=y.turboThreshold,c,k=this.xData,w=this.yData,tt=h.pointArrayMap,it=tt&&tt.length,b,rt;if(n=n||[],l=n.length,u=t(u,!0),o!==!1&&l&&d===l&&!h.cropped&&!h.hasGroupedData&&h.visible)i(n,function(n,t){a[t].update&&n!==y.data[t]&&a[t].update(n,!1,null,!1)});else{if(h.xIncrement=null,h.colorCounter=0,i(this.parallelArrays,function(n){h[n+"Data"].length=0}),nt&&l>nt){for(s=0;p===null&&s<l;)p=n[s],s++;if(yi(p)){for(b=t(y.pointStart,0),rt=t(y.pointInterval,1),s=0;s<l;s++)k[s]=b,w[s]=n[s],b+=rt;h.xIncrement=b}else if(lr(p))if(it)for(s=0;s<l;s++)c=n[s],k[s]=c[0],w[s]=c.slice(1,it+1);else for(s=0;s<l;s++)c=n[s],k[s]=c[0],w[s]=c[1];else vi(12)}else for(s=0;s<l;s++)n[s]!==f&&(c={series:h},h.pointClass.prototype.applyOptions.apply(c,[n[s]]),h.updateParallelArrays(c,s),ut&&r(c.name)&&(v.names[c.x]=c.name));for(ur(w[0])&&vi(14,!0),h.data=[],h.options.data=n,s=d;s--;)a[s]&&a[s].destroy&&a[s].destroy();v&&(v.minRange=v.userMinRange);h.isDirty=h.isDirtyData=g.isDirtyBox=!0;e=!1}y.legendType==="point"&&(this.processData(),this.generatePoints());u&&g.redraw(e)},processData:function(n){var t=this,i=t.xData,c=t.yData,l=i.length,e,y=0,p,r,o,a=t.xAxis,u,w=t.options,b=w.cropThreshold,d=t.getExtremesFromAll||w.getExtremesFromAll,k=t.isCartesian,v,s,h;if(k&&!t.isDirty&&!a.isDirty&&!t.yAxis.isDirty&&!n)return!1;for(a&&(v=a.getExtremes(),s=v.min,h=v.max),k&&t.sorted&&!d&&(!b||l>b||t.forceCrop)&&(i[l-1]<s||i[0]>h?(i=[],c=[]):(i[0]<s||i[l-1]>h)&&(e=this.cropData(t.xData,t.yData,s,h),i=e.xData,c=e.yData,y=e.start,p=!0)),u=i.length-1;u>=0;u--)r=i[u]-i[u-1],r>0&&(o===f||r<o)?o=r:r<0&&t.requireSorting;t.cropped=p;t.cropStart=y;t.processedXData=i;t.processedYData=c;t.closestPointRange=o},cropData:function(n,i,r,f){for(var c=n.length,s=0,h=c,l=t(this.cropShoulder,1),o,e=0;e<c;e++)if(n[e]>=r){s=u(0,e-l);break}for(o=e;o<c;o++)if(n[o]>f){h=o+l;break}return{xData:n.slice(s,h),yData:i.slice(s,h),start:s,end:h}},generatePoints:function(){var t=this,p=t.options,o=p.data,i=t.data,a,s=t.processedXData,w=t.processedYData,v=t.pointClass,h=s.length,y=t.cropStart||0,r,u=t.hasGroupedData,c,e=[],n,l;for(i||u||(l=[],l.length=o.length,i=t.data=l),n=0;n<h;n++)r=y+n,u?e[n]=(new v).init(t,[s[n]].concat(pi(w[n]))):(i[r]?c=i[r]:o[r]!==f&&(i[r]=c=(new v).init(t,o[r],s[n])),e[n]=c),e[n].index=r;if(i&&(h!==(a=i.length)||u))for(n=0;n<a;n++)n!==y||u||(n+=h),i[n]&&(i[n].destroyElements(),i[n].plotX=f);t.data=i;t.points=e},getExtremes:function(n){var v=this.xAxis,y=this.yAxis,e=this.processedXData,s,u=[],h=0,c=v.getExtremes(),p=c.min,w=c.max,l,a,o,t,i,r;for(n=n||this.stackedYData||this.processedYData,s=n.length,i=0;i<s;i++)if(o=e[i],t=n[i],l=t!==null&&t!==f&&(!y.isLog||t.length||t>0),a=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||(e[i+1]||o)>=p&&(e[i-1]||o)<=w,l&&a)if(r=t.length,r)while(r--)t[r]!==null&&(u[h++]=t[r]);else u[h++]=t;this.dataMin=dr(u);this.dataMax=er(u)},translate:function(){this.processedXData||this.processData();this.generatePoints();for(var i=this,y=i.options,ut=y.stacking,p=i.xAxis,d=p.categories,o=i.yAxis,ft=i.points,st=ft.length,ht=!!i.modifyValue,g=y.pointPlacement,ct=g==="between"||yi(g),w=y.threshold,et=y.startFromThreshold?w:0,c,k,ot,nt,tt=Number.MAX_VALUE,a=0;a<st;a++){var n=ft[a],v=n.x,e=n.y,s=n.low,it=ut&&o.stacks[(i.negStacks&&e<(et?0:w)?"-":"")+i.stackKey],l,rt;o.isLog&&e!==null&&e<=0&&(n.y=e=null,vi(10));n.plotX=c=h(u(-1e5,p.translate(v,0,0,0,1,g,this.type==="flags")),1e5);ut&&i.visible&&it&&it[v]&&(nt=i.getStackIndicator(nt,v,i.index),l=it[v],rt=l.points[nt.key],s=rt[0],e=rt[1],s===et&&(s=t(w,o.min)),o.isLog&&s<=0&&(s=null),n.total=n.stackTotal=l.total,n.percentage=l.total&&n.y/l.total*100,n.stackY=e,l.setOffset(i.pointXOffset||0,i.barW||0));n.yBottom=r(s)?o.translate(s,0,1,0,1):null;ht&&(e=i.modifyValue(e,n));n.plotY=k=typeof e=="number"&&e!==Infinity?h(u(-1e5,o.translate(e,0,1,0,1)),1e5):f;n.isInside=k!==f&&k>=0&&k<=o.len&&c>=0&&c<=p.len;n.clientX=ct?p.translate(v,0,0,0,1):c;n.negative=n.y<(w||0);n.category=d&&d[n.x]!==f?d[n.x]:n.x;a&&(tt=h(tt,b(c-ot)));ot=c}i.closestPointRangePx=tt;i.getSegments()},setClip:function(n){var t=this.chart,u=this.options,o=t.renderer,s=t.inverted,f=this.clipBox,e=f||t.clipBox,i=this.sharedClipKey||["_sharedClip",n&&n.duration,n&&n.easing,e.height,u.xAxis,u.yAxis].join(","),r=t[i],h=t[i+"m"];r||(n&&(e.width=0,t[i+"m"]=h=o.clipRect(-99,s?-t.plotLeft:-t.plotTop,99,s?t.chartWidth:t.chartHeight)),t[i]=r=o.clipRect(e));n&&(r.count+=1);u.clip!==!1&&(this.group.clip(n||f?r:t.clipRect),this.markerGroup.clip(h),this.sharedClipKey=i);n||(r.count-=1,r.count<=0&&i&&t[i]&&(f||(t[i]=t[i].destroy()),t[i+"m"]&&(t[i+"m"]=t[i+"m"].destroy())))},animate:function(n){var i=this,r=i.chart,f,t=i.options.animation,u;t&&!kt(t)&&(t=vt[i.type].animation);n?i.setClip(t):(u=this.sharedClipKey,f=r[u],f&&f.animate({width:r.plotSizeX},t),r[u+"m"]&&r[u+"m"].animate({width:r.plotSizeX+99},t),i.animate=null)},afterAnimate:function(){this.setClip();w(this,"afterAnimate")},drawPoints:function(){var r=this,c,p=r.points,d=r.chart,l,o,a,n,i,v,w,u,g=r.options,h=g.marker,nt=r.pointAttr[""],s,b,k,y,tt=r.markerGroup,it=r.xAxis,rt=t(h.enabled,it.isRadial,r.closestPointRangePx>2*h.radius);if(h.enabled!==!1||r._hasPointMarkers)for(a=p.length;a--;)n=p[a],l=ot(n.plotX),o=n.plotY,u=n.graphic,s=n.marker||{},b=!!n.marker,k=rt&&s.enabled===f||s.enabled,y=n.isInside,k&&o!==f&&!isNaN(o)&&n.y!==null?(c=n.pointAttr[n.selected?gi:bt]||nt,i=c.r,v=t(s.symbol,r.symbol),w=v.indexOf("url")===0,u?u[y?"show":"hide"](!0).animate(e({x:l-i,y:o-i},u.symbolName?{width:2*i,height:2*i}:{})):y&&(i>0||w)&&(n.graphic=u=d.renderer.symbol(v,l-i,o-i,2*i,2*i,b?s:h).attr(c).add(tt))):u&&(n.graphic=u.destroy())},convertAttribs:function(n,i,r,u){var e=this.pointAttrToOptions,f,o,s={};n=n||{};i=i||{};r=r||{};u=u||{};for(f in e)o=e[f],s[f]=t(n[o],i[f],r[f],u[f]);return s},getAttribs:function(){var u=this,l=u.options,n=vt[u.type].marker?l.marker:l,c=n.states,f=c[ui],a,b=u.color,g=u.options.negativeColor,ut={stroke:b,fill:b},nt=u.points||[],v,k,y,o,s=[],h,tt=u.pointAttrToOptions,p=u.hasPointSpecificOptions,ft=n.lineColor,et=n.fillColor,it=l.turboThreshold,d=u.zones,ot=u.zoneAxis||"y",w,rt;if(l.marker?(f.radius=f.radius||n.radius+f.radiusPlus,f.lineWidth=f.lineWidth||n.lineWidth+f.lineWidthPlus):(f.color=f.color||dt(f.color||b).brighten(f.brightness).get(),f.negativeColor=f.negativeColor||dt(f.negativeColor||g).brighten(f.brightness).get()),s[bt]=u.convertAttribs(n,ut),i([ui,gi],function(n){s[n]=u.convertAttribs(c[n],s[bt])}),u.pointAttr=s,v=nt.length,!it||v<it||p)while(v--){if(o=nt[v],n=o.options&&o.options.marker||o.options,n&&n.enabled===!1&&(n.radius=0),d.length){for(k=0,y=d[k];o[ot]>=y.value;)y=d[++k];o.color=o.fillColor=t(y.color,u.color)}if(p=l.colorByPoint||o.color,o.options)for(rt in tt)r(n[tt[rt]])&&(p=!0);p?(n=n||{},h=[],c=n.states||{},a=c[ui]=c[ui]||{},l.marker&&(!o.negative||a.fillColor||f.fillColor)||(a[u.pointAttrToOptions.fill]=a.color||!o.options.color&&f[o.negative&&g?"negativeColor":"color"]||dt(o.color).brighten(a.brightness||f.brightness).get()),w={color:o.color},et||(w.fillColor=o.color),ft||(w.lineColor=o.color),n.hasOwnProperty("color")&&!n.color&&delete n.color,h[bt]=u.convertAttribs(e(w,n),s[bt]),h[ui]=u.convertAttribs(c[ui],s[ui],h[bt]),h[gi]=u.convertAttribs(c[gi],s[gi],h[bt])):h=s;o.pointAttr=h}},destroy:function(){var n=this,f=n.chart,h=/AppleWebKit\/533/.test(ki),o,e,s=n.data||[],u,t,r;for(w(n,"destroy"),at(n),i(n.axisTypes||[],function(t){r=n[t];r&&(ei(r.series,n),r.isDirty=r.forceRedraw=!0)}),n.legendItem&&n.chart.legend.destroyItem(n),e=s.length;e--;)u=s[e],u&&u.destroy&&u.destroy();n.points=null;clearTimeout(n.animationTimeout);for(t in n)n[t]instanceof ut&&!n[t].survive&&(o=h&&t==="group"?"hide":"destroy",n[t][o]());f.hoverSeries===n&&(f.hoverSeries=null);ei(f.series,n);for(t in n)delete n[t]},getSegmentPath:function(n){var r=this,t=[],u=r.options.step;return i(n,function(i,f){var o=i.plotX,s=i.plotY,e;r.getPointSpline?t.push.apply(t,r.getPointSpline(n,i,f)):(t.push(f?nt:et),u&&f&&(e=n[f-1],u==="right"?t.push(e.plotX,s,nt):u==="center"?t.push((e.plotX+o)/2,e.plotY,nt,(e.plotX+o)/2,s,nt):t.push(o,e.plotY,nt)),t.push(i.plotX,i.plotY))}),t},getGraphPath:function(){var n=this,t=[],r,u=[];return i(n.segments,function(i){r=n.getSegmentPath(i);i.length>1?t=t.concat(r):u.push(i[0])}),n.singlePoints=u,n.graphPath=t,t},drawGraph:function(){var t=this,n=this.options,u=[["graph",n.lineColor||this.color,n.dashStyle]],f=n.lineWidth,o=n.linecap!=="square",r=this.getGraphPath(),e=this.fillGraph&&this.color||st,s=this.zones;i(s,function(i,r){u.push(["zoneGraph"+r,i.color||t.color,i.dashStyle||n.dashStyle])});i(u,function(i,u){var h=i[0],c=t[h],s;c?c.animate({d:r}):(f||e)&&r.length&&(s={stroke:i[1],"stroke-width":f,fill:e,zIndex:1},i[2]?s.dashstyle=i[2]:o&&(s["stroke-linecap"]=s["stroke-linejoin"]="round"),t[h]=t.chart.renderer.path(r).attr(s).add(t.group).shadow(u<2&&n.shadow))})},applyZones:function(){var g=this,r=this.chart,nt=r.renderer,tt=this.zones,s,c,l=this.clips||[],n,v=this.graph,y=this.area,p=u(r.chartWidth,r.chartHeight),e=this[(this.zoneAxis||"y")+"Axis"],a,it=e.reversed,rt=r.inverted,w=e.horiz,d,b,k,ut=!1;tt.length&&(v||y)&&e.min!==f&&(v&&v.hide(),y&&y.hide(),a=e.getExtremes(),i(tt,function(i,f){s=it?w?r.plotWidth:0:w?0:e.toPixels(a.min);s=h(u(t(c,s),0),p);c=h(u(o(e.toPixels(t(i.value,a.max),!0)),0),p);ut&&(s=c=e.toPixels(a.max));d=Math.abs(s-c);b=h(s,c);k=u(s,c);e.isXAxis?(n={x:rt?k:b,y:0,width:d,height:p},w||(n.x=r.plotHeight-n.x)):(n={x:0,y:rt?k:b,width:p,height:d},w&&(n.y=r.plotWidth-n.y));r.inverted&&nt.isVML&&(n=e.isXAxis?{x:0,y:it?b:k,height:n.width,width:r.chartWidth}:{x:n.y-r.plotLeft-r.spacingBox.x,y:0,width:n.height,height:r.chartHeight});l[f]?l[f].animate(n):(l[f]=nt.clipRect(n),v&&g["zoneGraph"+f].clip(l[f]),y&&g["zoneArea"+f].clip(l[f]));ut=i.value>a.max}),this.clips=l)},invertGroups:function(){function t(){var t={width:n.yAxis.len,height:n.xAxis.len};i(["group","markerGroup"],function(i){n[i]&&n[i].attr(t).invert()})}var n=this,r=n.chart;n.xAxis&&(g(r,"resize",t),g(n,"destroy",function(){at(r,"resize",t)}),t(),n.invertGroups=t)},plotGroup:function(n,t,i,r,u){var f=this[n],e=!f;return e&&(this[n]=f=this.chart.renderer.g(t).attr({visibility:i,zIndex:r||.1}).add(u),f.addClass("highcharts-series-"+this.index)),f[e?"attr":"animate"](this.getPlotBox()),f},getPlotBox:function(){var t=this.chart,i=this.xAxis,n=this.yAxis;return t.inverted&&(i=n,n=this.xAxis),{translateX:i?i.left:t.plotLeft,translateY:n?n.top:t.plotTop,scaleX:1,scaleY:1}},render:function(){var n=this,r=n.chart,u,f=n.options,o=f.animation,e=o&&!!n.animate&&r.renderer.isSVG&&t(o.duration,500)||0,s=n.visible?"inherit":"hidden",h=f.zIndex,c=n.hasRendered,l=r.seriesGroup;u=n.plotGroup("group","series",s,h,l);n.markerGroup=n.plotGroup("markerGroup","markers",s,h,l);e&&n.animate(!0);n.getAttribs();u.inverted=n.isCartesian?r.inverted:!1;n.drawGraph&&(n.drawGraph(),n.applyZones());i(n.points,function(n){n.redraw&&n.redraw()});n.drawDataLabels&&n.drawDataLabels();n.visible&&n.drawPoints();n.drawTracker&&n.options.enableMouseTracking!==!1&&n.drawTracker();r.inverted&&n.invertGroups();f.clip===!1||n.sharedClipKey||c||u.clip(r.clipRect);e&&n.animate();c||(n.animationTimeout=kr(function(){n.afterAnimate()},e));n.isDirty=n.isDirtyData=!1;n.hasRendered=!0},redraw:function(){var n=this,i=n.chart,u=n.isDirtyData,o=n.isDirty,r=n.group,f=n.xAxis,e=n.yAxis;r&&(i.inverted&&r.attr({width:i.plotWidth,height:i.plotHeight}),r.animate({translateX:t(f&&f.left,i.plotLeft),translateY:t(e&&e.top,i.plotTop)}));n.translate();n.render();u&&w(n,"updatedData");(o||u)&&delete this.kdTree},kdDimensions:1,kdAxisArray:["clientX","plotY"],searchPoint:function(n,t){var i=this,r=i.xAxis,u=i.yAxis,f=i.chart.inverted;return this.searchKDTree({clientX:f?r.len-n.chartY+r.pos:n.chartX-r.pos,plotY:f?u.len-n.chartX+u.pos:n.chartY-u.pos},t)},buildKDTree:function(){function t(i,r,u){var e,f,o=i&&i.length;if(o)return e=n.kdAxisArray[r%u],i.sort(function(n,t){return n[e]-t[e]}),f=Math.floor(o/2),{point:i[f],left:t(i.slice(0,f),r+1,u),right:t(i.slice(f+1),r+1,u)}}function r(){var r=yu(n.points||[],function(n){return n.y!==null});n.kdTree=t(r,i,i)}var n=this,i=n.kdDimensions;delete n.kdTree;kr(r,n.options.kdNow?0:1)},searchKDTree:function(n,t){function s(n,t){var i=r(n[u])&&r(t[u])?Math.pow(n[u]-t[u],2):null,o=r(n[f])&&r(t[f])?Math.pow(n[f]-t[f],2):null,e=(i||0)+(o||0);t.dist=r(e)?Math.sqrt(e):Number.MAX_VALUE;t.distX=r(i)?Math.sqrt(i):Number.MAX_VALUE}function e(n,t,r,u){var c=t.point,p=o.kdAxisArray[r%u],h,l,a,f=c,v,y;return s(n,c),h=n[p]-c[p],l=h<0?"left":"right",a=h<0?"right":"left",t[l]&&(v=e(n,t[l],r+1,u),f=v[i]<f[i]?v:c),t[a]&&Math.sqrt(h*h)<f[i]&&(y=e(n,t[a],r+1,u),f=y[i]<f[i]?y:f),f}var o=this,u=this.kdAxisArray[0],f=this.kdAxisArray[1],i=t?"distX":"dist";return this.kdTree||this.buildKDTree(),this.kdTree?e(n,this.kdTree,this.kdDimensions,this.kdDimensions):void 0}},uo.prototype={destroy:function(){gr(this,this.axis)},render:function(n){var t=this.options,i=t.format,r=i?yr(i,this):t.formatter.call(this);this.label?this.label.attr({text:r,visibility:"hidden"}):this.label=this.axis.chart.renderer.text(r,null,null,t.useHTML).css(t.style).attr({align:this.textAlign,rotation:t.rotation,visibility:di}).add(n)},setOffset:function(n,t){var v=this,i=v.axis,u=i.chart,f=u.inverted,c=i.reversed,l=this.isNegative&&!c||!this.isNegative&&c,r=i.translate(i.usePercentage?100:this.total,0,0,0,1),y=i.translate(0),e=b(r-y),a=u.xAxis[0].translate(this.x)+n,s=u.plotHeight,p={x:f?l?r:r-e:a,y:f?s-a-t:l?s-r-e:s-r,width:f?e:t,height:f?t:e},o=this.label,h;o&&(o.align(this.alignOptions,null,p),h=o.alignAttr,o[this.options.crop===!1||u.isInsidePlot(h.x,h.y)?"show":"hide"](!0))}},bu.prototype.getStacks=function(){var n=this;i(n.yAxis,function(n){n.stacks&&n.hasVisibleSeries&&(n.oldStacks=n.stacks)});i(n.series,function(i){i.options.stacking&&(i.visible===!0||n.options.chart.ignoreHiddenSeries===!1)&&(i.stackKey=i.type+t(i.options.stack,""))})},ii.prototype.buildStacks=function(){var i=this.series,r=t(this.options.reversedStacks,!0),n=i.length;if(!this.isXAxis){for(this.usePercentage=!1;n--;)i[r?n:i.length-n-1].setStackedPoints();if(this.usePercentage)for(n=0;n<i.length;n++)i[n].setPercentStacks()}},ii.prototype.renderStackTotals=function(){var n=this,i=n.chart,o=i.renderer,u=n.stacks,f,r,e,t=n.stackTotalGroup;t||(n.stackTotalGroup=t=o.g("stack-labels").attr({visibility:rr,zIndex:6}).add());t.translate(i.plotLeft,i.plotTop);for(f in u){r=u[f];for(e in r)r[e].render(t)}},ii.prototype.resetStacks=function(){var n=this.stacks,t,i;if(!this.isXAxis)for(t in n)for(i in n[t])n[t][i].touched<this.stacksTouched?(n[t][i].destroy(),delete n[t][i]):(n[t][i].total=null,n[t][i].cum=0)},ii.prototype.cleanStacks=function(){var n,t,i;if(!this.isXAxis){this.oldStacks&&(n=this.stacks=this.oldStacks);for(t in n)for(i in n[t])n[t][i].cum=n[t][i].total}},k.prototype.setStackedPoints=function(){if(this.options.stacking&&(this.visible===!0||this.chart.options.chart.ignoreHiddenSeries===!1)){var f=this,ut=f.processedXData,d=f.processedYData,g=[],ft=d.length,l=f.options,nt=l.threshold,p=l.startFromThreshold?nt:0,et=l.stack,tt=l.stacking,w=f.stackKey,it="-"+w,rt=f.negStacks,o=f.yAxis,e=o.stacks,k=o.oldStacks,a,v,n,s,r,y,h,i,c;for(o.stacksTouched+=1,h=0;h<ft;h++)i=ut[h],c=d[h],a=f.getStackIndicator(a,i,f.index),y=a.key,v=rt&&c<(p?0:nt),r=v?it:w,e[r]||(e[r]={}),e[r][i]||(k[r]&&k[r][i]?(e[r][i]=k[r][i],e[r][i].total=null):e[r][i]=new uo(o,o.options.stackLabels,v,i,et)),n=e[r][i],n.points[y]=[t(n.cum,p)],n.touched=o.stacksTouched,a.index>0&&f.singleStacks===!1&&(n.points[y][0]=n.points[f.index+","+i+",0"][0]),tt==="percent"?(s=v?w:it,rt&&e[s]&&e[s][i]?(s=e[s][i],n.total=s.total=u(s.total,n.total)+b(c)||0):n.total=ti(n.total+(b(c)||0))):n.total=ti(n.total+(c||0)),n.cum=t(n.cum,p)+(c||0),n.points[y].push(n.cum),g[h]=n.cum;tt==="percent"&&(o.usePercentage=!0);this.stackedYData=g;o.oldStacks={}}},k.prototype.setPercentStacks=function(){var n=this,r=n.stackKey,u=n.yAxis.stacks,f=n.processedXData,t;i([r,"-"+r],function(i){for(var o=f.length,s,e,r,h;o--;)s=f[o],t=n.getStackIndicator(t,s,n.index),e=u[i]&&u[i][s],r=e&&e.points[t.key],r&&(h=e.total?100/e.total:0,r[0]=ti(r[0]*h),r[1]=ti(r[1]*h),n.stackedYData[o]=r[1])})},k.prototype.getStackIndicator=function(n,t,i){return r(n)&&n.x===t?n.index++:n={x:t,index:0},n.key=[i,t,n.index].join(","),n},e(bu.prototype,{addSeries:function(n,i,r){var f,u=this;return n&&(i=t(i,!0),w(u,"addSeries",{options:n},function(){f=u.initSeries(n);u.isDirtyLegend=!0;u.linkSeries();i&&u.redraw(r)})),f},addAxis:function(n,i,r,u){var f=i?"xAxis":"yAxis",e=this.options;new ii(this,c(n,{index:this[f].length,isX:i}));e[f]=pi(e[f]||{});e[f].push(n);t(r,!0)&&this.redraw(u)},showLoading:function(n){var t=this,u=t.options,i=t.loadingDiv,r=u.loading,f=function(){i&&p(i,{left:t.plotLeft+y,top:t.plotTop+y,width:t.plotWidth+y,height:t.plotHeight+y})};i||(t.loadingDiv=i=wt(cr,{className:rt+"loading"},e(r.style,{zIndex:10,display:st}),t.container),t.loadingSpan=wt("span",null,r.labelStyle,i),g(t,"redraw",f));t.loadingSpan.innerHTML=n||u.lang.loading;t.loadingShown||(p(i,{opacity:0,display:""}),pu(i,{opacity:r.style.opacity},{duration:r.showDuration||0}),t.loadingShown=!0);f()},hideLoading:function(){var t=this.options,n=this.loadingDiv;n&&pu(n,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){p(n,{display:st})}});this.loadingShown=!1}}),e(tr.prototype,{update:function(n,i,r,u){function a(){f.applyOptions(n);f.y===null&&o&&(f.graphic=o.destroy());kt(n)&&!lr(n)&&(f.redraw=function(){o&&o.element&&n&&n.marker&&n.marker.symbol&&(f.graphic=o.destroy());n&&n.dataLabels&&f.dataLabel&&(f.dataLabel=f.dataLabel.destroy());f.redraw=null});s=f.index;e.updateParallelArrays(f,s);l&&f.name&&(l[f.x]=f.name);c.data[s]=kt(c.data[s])?f.options:n;e.isDirty=e.isDirtyData=!0;!e.fixedBox&&e.hasCartesianSeries&&(h.isDirtyBox=!0);c.legendType==="point"&&(h.isDirtyLegend=!0);i&&h.redraw(r)}var f=this,e=f.series,o=f.graphic,s,h=e.chart,c=e.options,l=e.xAxis&&e.xAxis.names;i=t(i,!0);u===!1?a():f.firePointEvent("update",{options:n},a)},remove:function(n,t){this.series.removePoint(or(this,this.series.data),n,t)}}),e(k.prototype,{addPoint:function(n,r,u,f){var e=this,l=e.options,h=e.data,v=e.graph,y=e.area,p=e.chart,w=e.xAxis&&e.xAxis.names,g=v&&v.shift||0,b=["graph","area"],k=l.data,s,d,a=e.xData,o,c;if(tu(f,p),u){for(o=e.zones.length;o--;)b.push("zoneGraph"+o,"zoneArea"+o);i(b,function(n){e[n]&&(e[n].shift=g+(l.step?2:1))})}if(y&&(y.isArea=!0),r=t(r,!0),s={series:e},e.pointClass.prototype.applyOptions.apply(s,[n]),c=s.x,o=a.length,e.requireSorting&&c<a[o-1])for(d=!0;o&&a[o-1]>c;)o--;e.updateParallelArrays(s,"splice",o,0,0);e.updateParallelArrays(s,o);w&&s.name&&(w[c]=s.name);k.splice(o,0,n);d&&(e.data.splice(o,0,null),e.processData());l.legendType==="point"&&e.generatePoints();u&&(h[0]&&h[0].remove?h[0].remove(!1):(h.shift(),e.updateParallelArrays(s,"shift"),k.shift()));e.isDirty=!0;e.isDirtyData=!0;r&&(e.getAttribs(),p.redraw())},removePoint:function(n,i,r){var u=this,e=u.data,f=e[n],o=u.points,s=u.chart,h=function(){e.length===o.length&&o.splice(n,1);e.splice(n,1);u.options.data.splice(n,1);u.updateParallelArrays(f||{series:u},"splice",n,1);f&&f.destroy();u.isDirty=!0;u.isDirtyData=!0;i&&s.redraw()};tu(r,s);i=t(i,!0);f?f.firePointEvent("remove",null,h):h()},remove:function(n,i){var r=this,u=r.chart;n=t(n,!0);r.isRemoving||(r.isRemoving=!0,w(r,"remove",null,function(){r.destroy();u.isDirtyLegend=u.isDirtyBox=!0;u.linkSeries();n&&u.redraw(i)}));r.isRemoving=!1},update:function(n,r){var o=this,s=this.chart,a=this.userOptions,h=this.type,v=d[h].prototype,u=["group","markerGroup","dataLabelsGroup"],l;(n.type&&n.type!==h||n.zIndex!==undefined)&&(u.length=0);i(u,function(n){u[n]=o[n];delete o[n]});n=c(a,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},n);this.remove(!1);for(l in v)this[l]=f;e(this,d[n.type||h].prototype);i(u,function(n){o[n]=u[n]});this.init(s,n);s.linkSeries();t(r,!0)&&s.redraw(!1)}}),e(ii.prototype,{update:function(n,i){var r=this.chart;n=r.options[this.coll][this.options.index]=c(this.userOptions,n);this.destroy(!0);this._addedPlotLB=this.chart._labelPanes=f;this.init(r,e(n,{events:f}));r.isDirtyBox=!0;t(i,!0)&&r.redraw()},remove:function(n){for(var r=this.chart,u=this.coll,f=this.series,e=f.length;e--;)f[e]&&f[e].remove(!1);ei(r.axes,this);ei(r[u],this);r.options[u].splice(this.options.index,1);i(r[u],function(n,t){n.options.index=t});this.destroy();r.isDirtyBox=!0;t(n,!0)&&r.redraw()},setTitle:function(n,t){this.update({title:n},t)},setCategories:function(n,t){this.update({categories:n},t)}}),fo=oi(k),d.line=fo,vt.area=c(ru,{softThreshold:!1,threshold:0}),ue=oi(k,{type:"area",singleStacks:!1,getSegments:function(){var a=this,u=[],r=[],f=[],y=this.xAxis,e=this.yAxis,o=e.stacks[this.stackKey],t={},s,h,c=this.points,p=this.options.connectNulls,v,n,l;if(this.options.stacking&&!this.cropped){for(n=0;n<c.length;n++)t[c[n].x]=c[n];for(l in o)o[l].total!==null&&f.push(+l);f.sort(function(n,t){return n-t});i(f,function(i){var f=null,u,c=p&&(!t[i]||t[i].y===null);if(!c)if(t[i])r.push(t[i]);else{for(n=a.index;n<=e.series.length;n++)if(v=a.getStackIndicator(null,i,n),u=o[i].points[v.key],u){f=u[1];break}s=y.translate(i);h=e.getThreshold(f);r.push({y:null,plotX:s,clientX:s,plotY:h,yBottom:h,onMouseOver:li})}});r.length&&u.push(r)}else k.prototype.getSegments.call(this),u=this.segments;this.segments=u},getSegmentPath:function(n){var r=k.prototype.getSegmentPath.call(this,n),u=[].concat(r),i,f=this.options,s=r.length,o=this.yAxis.getThreshold(f.threshold),e;if(s===3&&u.push(nt,r[1],r[2]),f.stacking&&!this.closedStacks)for(i=n.length-1;i>=0;i--)e=t(n[i].yBottom,o),i<n.length-1&&f.step&&u.push(n[i+1].plotX,e),u.push(n[i].plotX,e);else this.closeSegment(u,n,o);return this.areaPath=this.areaPath.concat(u),r},closeSegment:function(n,t,i){n.push(nt,t[t.length-1].plotX,i,nt,t[0].plotX,i)},drawGraph:function(){this.areaPath=[];k.prototype.drawGraph.apply(this);var n=this,u=this.areaPath,r=this.options,e=this.zones,f=[["area",this.color,r.fillColor]];i(e,function(t,i){f.push(["zoneArea"+i,t.color||n.color,t.fillColor||r.fillColor])});i(f,function(i){var f=i[0],e=n[f];e?e.animate({d:u}):n[f]=n.chart.renderer.path(u).attr({fill:t(i[2],dt(i[1]).setOpacity(t(r.fillOpacity,.75)).get()),zIndex:0}).add(n.group)})},drawLegendSymbol:fu.drawRectangle}),d.area=ue,vt.spline=c(ru),fe=oi(k,{type:"spline",getPointSpline:function(n,t,i){var c=1.5,v=c+1,s=t.plotX,r=t.plotY,o=n[i-1],p=n[i+1],w,e,y,f,b;if(o&&p){var d=o.plotX,l=o.plotY,g=p.plotX,a=p.plotY,k;w=(c*s+d)/v;e=(c*r+l)/v;y=(c*s+g)/v;f=(c*r+a)/v;k=(f-e)*(y-s)/(y-w)+r-f;e+=k;f+=k;e>l&&e>r?(e=u(l,r),f=2*r-e):e<l&&e<r&&(e=h(l,r),f=2*r-e);f>a&&f>r?(f=u(a,r),e=2*r-f):f<a&&f<r&&(f=h(a,r),e=2*r-f);t.rightContX=y;t.rightContY=f}return i?(b=["C",o.rightContX||o.plotX,o.rightContY||o.plotY,w||s,e||r,s,r],o.rightContX=o.rightContY=null):b=[et,s,r],b}}),d.spline=fe,vt.areaspline=c(vt.area),ef=ue.prototype,eo=oi(fe,{type:"areaspline",closedStacks:!0,getSegmentPath:ef.getSegmentPath,closeSegment:ef.closeSegment,drawGraph:ef.drawGraph,drawLegendSymbol:fu.drawRectangle}),d.areaspline=eo,vt.column=c(ru,{borderColor:"#FFFFFF",borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{brightness:.1,shadow:!1,halo:!1},select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0}),of=oi(k,{type:"column",pointAttrToOptions:{stroke:"borderColor",fill:"color",r:"borderRadius"},cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){k.prototype.init.apply(this,arguments);var n=this,t=n.chart;t.hasRendered&&i(t.series,function(t){t.type===n.type&&(t.isDirty=!0)})},getColumnMetrics:function(){var n=this,u=n.options,r=n.xAxis,v=n.yAxis,y=r.reversed,e,s={},c,o=0;u.grouping===!1?o=1:i(n.chart.series,function(t){var i=t.options,r=t.yAxis;t.type===n.type&&t.visible&&v.len===r.len&&v.pos===r.pos&&(i.stacking?(e=t.stackKey,s[e]===f&&(s[e]=o++),c=s[e]):i.grouping!==!1&&(c=o++),t.columnIndex=c)});var l=h(b(r.transA)*(r.ordinalSlope||u.pointRange||r.closestPointRange||r.tickInterval||1),r.len),p=l*u.groupPadding,k=l-2*p,a=k/o,w=h(u.maxPointWidth||r.len,t(u.pointWidth,a*(1-2*u.pointPadding))),d=(a-w)/2,g=(n.columnIndex||0)+(y?1:0),nt=d+(p+g*a-l/2)*(y?-1:1);return n.columnMetrics={width:w,offset:nt},n.columnMetrics},crispCol:function(n,t,i,r){var e=this.chart,o=this.borderWidth,s=-(o%2?.5:0),u=o%2?.5:1,h,f,c;return e.inverted&&e.renderer.isVML&&(u+=1),h=Math.round(n+i)+s,n=Math.round(n)+s,i=h-n,f=Math.round(t+r)+u,c=b(t)<=.5&&f>.5,t=Math.round(t)+u,r=f-t,c&&(t-=1,r+=1),{x:n,y:t,width:i,height:r}},translate:function(){var n=this,e=n.chart,o=n.options,v=n.borderWidth=t(o.borderWidth,n.closestPointRange*n.xAxis.transA<2?0:1),r=n.yAxis,y=o.threshold,s=n.translatedThreshold=r.getThreshold(y),f=t(o.minPointLength,5),l=n.getColumnMetrics(),a=l.width,c=n.barW=u(a,1+2*v),p=n.pointXOffset=l.offset;e.inverted&&(s-=.5);o.pointPadding&&(c=hi(c));k.prototype.translate.apply(n);i(n.points,function(i){var l=h(t(i.yBottom,s),9e4),d=999+b(l),v=h(u(-d,i.plotY),r.len+d),y=i.plotX+p,k=c,w=h(v,l),g,o=u(v,l)-w;b(o)<f&&f&&(o=f,g=!r.reversed&&!i.negative||r.reversed&&i.negative,w=b(w-s)>f?l-f:s-(g?f:0));i.barX=y;i.pointWidth=a;i.tooltipPos=e.inverted?[r.len+r.pos-e.plotLeft-v,n.xAxis.len-y-k/2,o]:[y+k/2,v+r.pos-e.plotTop,o];i.shapeType="rect";i.shapeArgs=n.crispCol(y,w,k,o)})},getSymbol:li,drawLegendSymbol:fu.drawRectangle,drawGraph:li,drawPoints:function(){var n=this,o=this.chart,t=n.options,s=o.renderer,h=t.animationLimit||250,u,e;i(n.points,function(i){var v=i.plotY,l=i.graphic,a;v===f||isNaN(v)||i.y===null?l&&(i.graphic=l.destroy()):(u=i.shapeArgs,a=r(n.borderWidth)?{"stroke-width":n.borderWidth}:{},e=i.pointAttr[i.selected?gi:bt]||n.pointAttr[bt],l?(iu(l),l.attr(a).attr(e)[o.pointCount<h?"animate":"attr"](c(u))):i.graphic=l=s[i.shapeType](u).attr(a).attr(e).add(i.group||n.group).shadow(t.shadow,null,t.stacking&&!t.borderRadius))})},animate:function(n){var r=this,i=this.yAxis,o=r.options,e=this.chart.inverted,t={},f;pt&&(n?(t.scaleY=.001,f=h(i.pos+i.len,u(i.pos,i.toPixels(o.threshold))),e?t.translateX=f-i.len:t.translateY=f,r.group.attr(t)):(t.scaleY=1,t[e?"translateX":"translateY"]=i.pos,r.group.animate(t,r.options.animation),r.animate=null))},remove:function(){var n=this,t=n.chart;t.hasRendered&&i(t.series,function(t){t.type===n.type&&(t.isDirty=!0)});k.prototype.remove.apply(n,arguments)}}),d.column=of,vt.bar=c(vt.column),oo=oi(of,{type:"bar",inverted:!0}),d.bar=oo,vt.scatter=c(ru,{lineWidth: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/>"}}),ee=oi(k,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,kdDimensions:2,drawGraph:function(){this.options.lineWidth&&k.prototype.drawGraph.call(this)}}),d.scatter=ee,vt.pie=c(ru,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.y===null?undefined:this.point.name},x:0},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}}),so=oi(tr,{init:function(){tr.prototype.init.apply(this,arguments);var n=this,i;return n.name=t(n.name,"Slice"),i=function(t){n.slice(t.type==="select")},g(n,"select",i),g(n,"unselect",i),n},setVisible:function(n,r){var u=this,e=u.series,o=e.chart,s=e.options.ignoreHiddenPoint;r=t(r,s);n!==u.visible&&(u.visible=u.options.visible=n=n===f?!u.visible:n,e.options.data[or(u,e.data)]=u.options,i(["graphic","dataLabel","connector","shadowGroup"],function(t){u[t]&&u[t][n?"show":"hide"](!0)}),u.legendItem&&o.legend.colorizeItem(u,n),n||u.state!=="hover"||u.setState(""),s&&(e.isDirty=!0),r&&o.redraw())},slice:function(n,i,u){var f=this,e=f.series,s=e.chart,o;tu(u,s);i=t(i,!0);f.sliced=f.options.sliced=n=r(n)?n:!f.sliced;e.options.data[or(f,e.data)]=f.options;o=n?f.slicedTranslation:{translateX:0,translateY:0};f.graphic.animate(o);f.shadowGroup&&f.shadowGroup.animate(o)},haloPath:function(n){var t=this.shapeArgs,i=this.series.chart;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(i.plotLeft+t.x,i.plotTop+t.y,t.r+n,t.r+n,{innerR:this.shapeArgs.r,start:t.start,end:t.end})}}),sf={type:"pie",isCartesian:!1,pointClass:so,requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},animate:function(n){var t=this,u=t.points,r=t.startAngleRad;n||(i(u,function(n){var i=n.graphic,u=n.shapeArgs;i&&(i.attr({r:n.startR||t.center[3]/2,start:r,end:r}),i.animate({r:u.r,start:u.start,end:u.end},t.options.animation))}),t.animate=null)},updateTotals:function(){for(var i=0,r=this.points,u=r.length,t,f=this.options.ignoreHiddenPoint,n=0;n<u;n++)t=r[n],i+=f&&!t.visible?0:t.y;for(this.total=i,n=0;n<u;n++)t=r[n],t.percentage=i>0&&(t.visible||!f)?t.y/i*100:0,t.total=i},generatePoints:function(){k.prototype.generatePoints.call(this);this.updateTotals()},translate:function(n){this.generatePoints();var u=this,y=0,l=1e3,f=u.options,p=f.slicedOffset,a=p+f.borderWidth,w,b,i,d=f.startAngle||0,k=u.startAngleRad=ri/180*(d-90),tt=u.endAngleRad=ri/180*(t(f.endAngle,d+360)-90),g=tt-k,nt=u.points,s,c,e=f.dataLabels.distance,it=f.ignoreHiddenPoint,v,rt=nt.length,r;for(n||(u.center=n=u.getCenter()),u.getX=function(t,r){return i=ct.asin(h((t-n[1])/(n[2]/2+e),1)),n[0]+(r?-1:1)*ht(i)*(n[2]/2+e)},v=0;v<rt;v++)r=nt[v],w=k+y*g,(!it||r.visible)&&(y+=r.percentage/100),b=k+y*g,r.shapeType="arc",r.shapeArgs={x:n[0],y:n[1],r:n[2]/2,innerR:n[3]/2,start:o(w*l)/l,end:o(b*l)/l},i=(b+w)/2,i>1.5*ri?i-=2*ri:i<-ri/2&&(i+=2*ri),r.slicedTranslation={translateX:o(ht(i)*p),translateY:o(yt(i)*p)},s=ht(i)*n[2]/2,c=yt(i)*n[2]/2,r.tooltipPos=[n[0]+s*.7,n[1]+c*.7],r.half=i<-ri/2||i>ri/2?1:0,r.angle=i,a=h(a,e/2),r.labelPos=[n[0]+s+ht(i)*e,n[1]+c+yt(i)*e,n[0]+s+ht(i)*a,n[1]+c+yt(i)*a,n[0]+s,n[1]+c,e<0?"center":r.half?"right":"left",i]},drawGraph:null,drawPoints:function(){var n=this,l=n.chart,o=l.renderer,u,f,s=n.options.shadow,t,r,h,c;s&&!n.shadowGroup&&(n.shadowGroup=o.g("shadow").add(n.group));i(n.points,function(i){i.y!==null&&(f=i.graphic,h=i.shapeArgs,t=i.shadowGroup,r=i.pointAttr[i.selected?gi:bt],r.stroke||(r.stroke=r.fill),s&&!t&&(t=i.shadowGroup=o.g("shadow").add(n.shadowGroup)),u=i.sliced?i.slicedTranslation:{translateX:0,translateY:0},t&&t.attr(u),f?f.setRadialReference(n.center).attr(r).animate(e(h,u)):(c={"stroke-linejoin":"round"},i.visible||(c.visibility="hidden"),i.graphic=f=o[i.shapeType](h).setRadialReference(n.center).attr(r).attr(c).attr(u).add(n.group).shadow(s,t)))})},searchPoint:li,sortByAngle:function(n,t){n.sort(function(n,i){return n.angle!==undefined&&(i.angle-n.angle)*t})},drawLegendSymbol:fu.drawRectangle,getCenter:ro.getCenter,getSymbol:li},sf=oi(k,sf),d.pie=sf,k.prototype.drawDataLabels=function(){var u=this,h=u.options,v=h.cursor,n=h.dataLabels,w=u.points,l,a,y=u.hasRendered||0,o,s,p=u.chart.renderer;(n.enabled||u._hasPointLabels)&&(u.dlProcessOptions&&u.dlProcessOptions(n),s=u.plotGroup("dataLabelsGroup","data-labels",n.defer?di:rr,n.zIndex||6),t(n.defer,!0)&&(s.attr({opacity:+y}),y||g(u,"afterAnimate",function(){u.visible&&s.show();s[h.animation?"animate":"attr"]({opacity:1},{duration:200})})),a=n,i(w,function(i){var k,y=i.dataLabel,d,w,g,nt,it=i.connector,rt=!0,b,tt={};if(l=i.dlOptions||i.options&&i.options.dataLabels,k=t(l&&l.enabled,a.enabled)&&i.y!==null,y&&!k)i.dataLabel=y.destroy();else if(k){if(n=c(a,l),b=n.style,nt=n.rotation,d=i.getLabelConfig(),o=n.format?yr(n.format,d):n.formatter.call(d,n),b.color=t(n.color,b.color,u.color,"black"),y)r(o)?(y.attr({text:o}),rt=!1):(i.dataLabel=y=y.destroy(),it&&(i.connector=it.destroy()));else if(r(o)){w={fill:n.backgroundColor,stroke:n.borderColor,"stroke-width":n.borderWidth,r:n.borderRadius||0,rotation:nt,padding:n.padding,zIndex:1};b.color==="contrast"&&(tt.color=n.inside||n.distance<0||!!h.stacking?p.getContrast(i.color||u.color):"#000000");v&&(tt.cursor=v);for(g in w)w[g]===f&&delete w[g];y=i.dataLabel=p[nt?"text":"label"](o,0,-9999,n.shape,null,null,n.useHTML).attr(w).css(e(b,tt)).add(s).shadow(n.shadow)}y&&u.alignDataLabel(i,y,n,null,rt)}}))},k.prototype.alignDataLabel=function(n,i,r,u,f){var s=this.chart,c=s.inverted,a=t(n.plotX,-9999),v=t(n.plotY,-9999),l=i.getBBox(),w=s.renderer.fontMetrics(r.style.fontSize).b,p,y=this.visible&&(n.series.forceDL||s.isInsidePlot(a,o(v),c)||u&&s.isInsidePlot(a,c?u.x+1:u.y+u.height-1,c)),h;y&&(u=e({x:c?s.plotWidth-v:a,y:o(c?s.plotHeight-a:v),width:0,height:0},u),e(r,{width:l.width,height:l.height}),r.rotation?(p=s.renderer.rotCorr(w,r.rotation),i[f?"attr":"animate"]({x:u.x+r.x+u.width/2+p.x,y:u.y+r.y+u.height/2}).attr({align:r.align})):(i.align(r,null,u),h=i.alignAttr,t(r.overflow,"justify")==="justify"?this.justifyDataLabel(i,r,h,l,u,f):t(r.crop,!0)&&(y=s.isInsidePlot(h.x,h.y)&&s.isInsidePlot(h.x+l.width,h.y+l.height)),r.shape&&i.attr({anchorX:n.plotX,anchorY:n.plotY})));y||(iu(i),i.attr({y:-9999}),i.placed=!1)},k.prototype.justifyDataLabel=function(n,t,i,r,u,f){var s=this.chart,c=t.align,l=t.verticalAlign,e,o,h=n.box?0:n.padding||0;e=i.x+h;e<0&&(c==="right"?t.align="left":t.x=-e,o=!0);e=i.x+r.width-h;e>s.plotWidth&&(c==="left"?t.align="right":t.x=s.plotWidth-e,o=!0);e=i.y+h;e<0&&(l==="bottom"?t.verticalAlign="top":t.y=-e,o=!0);e=i.y+r.height-h;e>s.plotHeight&&(l==="top"?t.verticalAlign="bottom":t.y=s.plotHeight-e,o=!0);o&&(n.placed=!f,n.align(t,null,u))},d.pie&&(d.pie.prototype.drawDataLabels=function(){var l=this,oi=l.data,it,at=l.chart,p=l.options.dataLabels,rt=t(p.connectorPadding,10),ti=t(p.connectorWidth,1),ii=at.plotWidth,ri=at.plotHeight,tt,pt,si=t(p.softConnector,!0),d=p.distance,wt=l.center,st=wt[2]/2,vt=wt[1],hi=d>0,s,ht,r,g,ui=[[],[]],a,f,ct,bt,ut,n,y=[0,0,0,0],fi=function(n,t){return t.y-n.y},dt,gt,lt,ni,ot;if(l.visible&&(p.enabled||l._hasPointLabels)){for(k.prototype.drawDataLabels.apply(l),i(oi,function(n){n.dataLabel&&n.visible&&ui[n.half].push(n)}),ut=2;ut--;){var v=[],ft,kt=[],c=ui[ut],yt,ei,w=c.length,e;if(w){for(l.sortByAngle(c,ut-.5),n=g=0;!g&&c[n];)g=c[n]&&c[n].dataLabel&&(c[n].dataLabel.getBBox().height||21),n++;if(d>0){for(ei=h(vt+st+d,at.plotHeight),yt=u(0,vt-st-d);yt<=ei;yt+=g)v.push(yt);if(ft=v.length,w>ft){for(bt=[].concat(c),bt.sort(fi),n=w;n--;)bt[n].rank=n;for(n=w;n--;)c[n].rank>=ft&&c.splice(n,1);w=c.length}for(n=0;n<w;n++){for(it=c[n],r=it.labelPos,dt=9999,lt=0;lt<ft;lt++)gt=b(v[lt]-r[1]),gt<dt&&(dt=gt,e=lt);if(e<n&&v[n]!==null)e=n;else if(ft<w-n+e&&v[n]!==null)for(e=ft-w+n;v[e]===null;)e++;else while(v[e]===null)e++;kt.push({i:e,y:v[e]});v[e]=null}kt.sort(fi)}for(n=0;n<w;n++)it=c[n],r=it.labelPos,s=it.dataLabel,ct=it.visible===!1?di:"inherit",ot=r[1],d>0?(ni=kt.pop(),e=ni.i,f=ni.y,(ot>f&&v[e+1]!==null||ot<f&&v[e-1]!==null)&&(f=h(u(0,ot),at.plotHeight))):f=ot,a=p.justify?wt[0]+(ut?-1:1)*(st+d):l.getX(f===vt-st-d||f===vt+st+d?ot:f,ut),s._attr={visibility:ct,align:r[6]},s._pos={x:a+p.x+({left:rt,right:-rt}[r[6]]||0),y:f+p.y-10},s.connX=a,s.connY=f,this.options.size===null&&(ht=s.width,a-ht<rt?y[3]=u(o(ht-a+rt),y[3]):a+ht>ii-rt&&(y[1]=u(o(a+ht-ii+rt),y[1])),f-g/2<0?y[0]=u(o(-f+g/2),y[0]):f+g/2>ri&&(y[2]=u(o(f+g/2-ri),y[2])))}}(er(y)===0||this.verifyDataLabelOverflow(y))&&(this.placeDataLabels(),hi&&ti&&i(this.points,function(n){tt=n.connector;r=n.labelPos;s=n.dataLabel;s&&s._pos&&n.visible?(ct=s._attr.visibility,a=s.connX,f=s.connY,pt=si?[et,a+(r[6]==="left"?5:-5),f,"C",a,f,2*r[2]-r[4],2*r[3]-r[5],r[2],r[3],nt,r[4],r[5]]:[et,a+(r[6]==="left"?5:-5),f,nt,r[2],r[3],nt,r[4],r[5]],tt?(tt.animate({d:pt}),tt.attr("visibility",ct)):n.connector=tt=l.chart.renderer.path(pt).attr({"stroke-width":ti,stroke:p.connectorColor||n.color||"#606060",visibility:ct}).add(l.dataLabelsGroup)):tt&&(n.connector=tt.destroy())}))}},d.pie.prototype.placeDataLabels=function(){i(this.points,function(n){var t=n.dataLabel,i;t&&n.visible&&(i=t._pos,i?(t.attr(t._attr),t[t.moved?"animate":"attr"](i),t.moved=!0):t&&t.attr({y:-9999}))})},d.pie.prototype.alignDataLabel=li,d.pie.prototype.verifyDataLabelOverflow=function(n){var t=this.center,e=this.options,o=e.center,f=e.minSize||80,r=f,s;return o[0]!==null?r=u(t[2]-u(n[1],n[3]),f):(r=u(t[2]-n[1]-n[3],f),t[0]+=(n[3]-n[1])/2),o[1]!==null?r=u(h(r,t[2]-u(n[0],n[2])),f):(r=u(h(r,t[2]-n[0]-n[2]),f),t[1]+=(n[0]-n[2])/2),r<t[2]?(t[2]=r,t[3]=Math.min(ke(e.innerSize||0,r),r),this.translate(t),i(this.points,function(n){n.dataLabel&&(n.dataLabel._pos=null)}),this.drawDataLabels&&this.drawDataLabels()):s=!0,s}),d.column&&(d.column.prototype.alignDataLabel=function(n,i,r,u,f){var e=this.chart.inverted,o=n.series,a=n.dlBox||n.shapeArgs,s=t(n.below,n.plotY>t(this.translatedThreshold,o.yAxis.len)),h=t(r.inside,!!this.options.stacking),l;a&&(u=c(a),u.y<0&&(u.height+=u.y,u.y=0),l=u.y+u.height-o.yAxis.len,l>0&&(u.height-=l),e&&(u={x:o.yAxis.len-u.y-u.height,y:o.xAxis.len-u.x-u.width,width:u.height,height:u.width}),h||(e?(u.x+=s?0:u.width,u.width=0):(u.y+=s?u.height:0,u.height=0)));r.align=t(r.align,!e||h?"center":s?"right":"left");r.verticalAlign=t(r.verticalAlign,e||h?"middle":s?"top":"bottom");k.prototype.alignDataLabel.call(this,n,i,r,u,f)}),function(n){var i=n.Chart,t=n.each,r=n.pick,u=n.addEvent;i.prototype.callbacks.push(function(n){function i(){var i=[];t(n.series,function(n){var u=n.options.dataLabels,f=n.dataLabelCollections||["dataLabel"];(u.enabled||n._hasPointLabels)&&!u.allowOverlap&&n.visible&&t(f,function(u){t(n.points,function(n){n[u]&&(n[u].labelrank=r(n.labelrank,n.shapeArgs&&n.shapeArgs.height),i.push(n[u]))})})});n.hideOverlappingLabels(i)}i();u(n,"redraw",i)});i.prototype.hideOverlappingLabels=function(n){for(var s=n.length,f,o,i,u,l,h,c,e,a=function(n,t,i,r,u,f,e,o){return!(u>n+i||u+e<n||f>t+r||f+o<t)},r=0;r<s;r++)f=n[r],f&&(f.oldOpacity=f.opacity,f.newOpacity=1);for(n.sort(function(n,t){return(t.labelrank||0)-(n.labelrank||0)}),r=0;r<s;r++)for(i=n[r],o=r+1;o<s;++o)u=n[o],i&&u&&i.placed&&u.placed&&i.newOpacity!==0&&u.newOpacity!==0&&(h=i.alignAttr,c=u.alignAttr,e=2*(i.box?0:i.padding),l=a(h.x,h.y,i.width-e,i.height-e,c.x,c.y,u.width-e,u.height-e),l&&((i.labelrank<u.labelrank?i:u).newOpacity=0));t(n,function(n){var i,t;n&&(t=n.newOpacity,n.oldOpacity!==t&&n.placed&&(t?n.show(!0):i=function(){n.hide()},n.alignAttr.opacity=t,n[n.isOld?"animate":"attr"](n.alignAttr,null,i)),n.isOld=!0)})}}(s),ku=s.TrackerMixin={drawTrackerPoint:function(){var n=this,t=n.chart,e=t.pointer,r=n.options.cursor,o=r&&{cursor:r},u=function(n){for(var r=n.target,i;r&&!i;)i=r.point,r=r.parentNode;if(i!==f&&i!==t.hoverPoint)i.onMouseOver(n)};i(n.points,function(n){n.graphic&&(n.graphic.element.point=n);n.dataLabel&&(n.dataLabel.element.point=n)});n._hasTracking||(i(n.trackerGroups,function(t){if(n[t]&&(n[t].addClass(rt+"tracker").on("mouseover",u).on("mouseout",function(n){e.onTrackerMouseOut(n)}).css(o),ou))n[t].on("touchstart",u)}),n._hasTracking=!0)},drawTrackerGraph:function(){var t=this,s=t.options,e=s.trackByArea,r=[].concat(e?t.areaPath:t.graphPath),h=r.length,o=t.chart,p=o.pointer,w=o.renderer,u=o.options.tooltip.snap,c=t.tracker,l=s.cursor,b=l&&{cursor:l},a=t.singlePoints,f,n,v=function(){o.hoverSeries!==t&&t.onMouseOver()},y="rgba(192,192,192,"+(pt?.0001:.002)+")";if(h&&!e)for(n=h+1;n--;)r[n]===et&&r.splice(n+1,0,r[n+1]-u,r[n+2],nt),(n&&r[n]===et||n===h)&&r.splice(n,0,nt,r[n-2]+u,r[n-1]);for(n=0;n<a.length;n++)f=a[n],r.push(et,f.plotX-u,f.plotY,nt,f.plotX+u,f.plotY);c?c.attr({d:r}):(t.tracker=w.path(r).attr({"stroke-linejoin":"round",visibility:t.visible?rr:di,stroke:y,fill:e?y:st,"stroke-width":s.lineWidth+(e?0:2*u),zIndex:2}).add(t.group),i([t.tracker,t.markerGroup],function(n){if(n.addClass(rt+"tracker").on("mouseover",v).on("mouseout",function(n){p.onTrackerMouseOut(n)}).css(b),ou)n.on("touchstart",v)}))}},d.column&&(of.prototype.drawTracker=ku.drawTrackerPoint),d.pie&&(d.pie.prototype.drawTracker=ku.drawTrackerPoint),d.scatter&&(ee.prototype.drawTracker=ku.drawTrackerPoint),e(wu.prototype,{setItemEvents:function(n,t,i,r,u){var f=this;(i?t:n.legendGroup).on("mouseover",function(){n.setState(ui);t.css(f.options.itemHoverStyle)}).on("mouseout",function(){t.css(n.visible?r:u);n.setState()}).on("click",function(t){var i="legendItemClick",r=function(){n.setVisible&&n.setVisible()};t={browserEvent:t};n.firePointEvent?n.firePointEvent(i,t,r):w(n,i,t,r)})},createCheckboxForItem:function(n){var t=this;n.checkbox=wt("input",{type:"checkbox",checked:n.selected,defaultChecked:n.selected},t.options.itemCheckboxStyle,t.chart.container);g(n.checkbox,"click",function(t){var i=t.target;w(n.series||n,"checkboxClick",{checked:i.checked,item:n},function(){n.select()})})}}),ft.legend.itemStyle.cursor="pointer",e(bu.prototype,{showResetZoom:function(){function e(){t.zoomOut()}var t=this,i=ft.lang,n=t.options.chart.resetZoomButton,r=n.theme,u=r.states,f=n.relativeTo==="chart"?null:"plotBox";this.resetZoomButton=t.renderer.button(i.resetZoom,null,null,e,r,u&&u.hover).attr({align:n.position.align,title:i.resetZoomTitle}).add().align(n.position,!1,f)},zoomOut:function(){var n=this;w(n,"selection",{resetSelection:!0},function(){n.zoom()})},zoom:function(n){var r=this,f,o=r.pointer,e=!1,u;!n||n.resetSelection?i(r.axes,function(n){f=n.zoom()}):i(n.xAxis.concat(n.yAxis),function(n){var t=n.axis,i=t.isXAxis;(o[i?"zoomX":"zoomY"]||o[i?"pinchX":"pinchY"])&&(f=t.zoom(n.min,n.max),t.displayBtn&&(e=!0))});u=r.resetZoomButton;e&&!u?r.showResetZoom():!e&&kt(u)&&(r.resetZoomButton=u.destroy());f&&r.redraw(t(r.options.chart.animation,n&&n.animation,r.pointCount<100))},pan:function(n,t){var r=this,f=r.hoverPoints,e;f&&i(f,function(n){n.setState()});i(t==="xy"?[1,0]:[1],function(t){var f=n[t?"chartX":"chartY"],i=r[t?"xAxis":"yAxis"][0],s=r[t?"mouseDownX":"mouseDownY"],c=(i.pointRange||0)/2,o=i.getExtremes(),l=i.toValue(s-f,!0)+c,a=i.toValue(s+r[t?"plotWidth":"plotHeight"]-f,!0)-c,v=s>f;i.series.length&&(v||l>h(o.dataMin,o.min))&&(!v||a<u(o.dataMax,o.max))&&(i.setExtremes(l,a,!1,!1,{trigger:"pan"}),e=!0);r[t?"mouseDownX":"mouseDownY"]=f});e&&r.redraw(!1);p(r.container,{cursor:"move"})}}),e(tr.prototype,{select:function(n,r){var u=this,f=u.series,e=f.chart;n=t(n,!u.selected);u.firePointEvent(n?"select":"unselect",{accumulate:r},function(){u.selected=u.options.selected=n;f.options.data[or(u,f.data)]=u.options;u.setState(n&&gi);r||i(e.getSelectedPoints(),function(n){n.selected&&n!==u&&(n.selected=n.options.selected=!1,f.options.data[or(n,f.data)]=n.options,n.setState(bt),n.firePointEvent("unselect"))})})},onMouseOver:function(n,t){var i=this,r=i.series,u=r.chart,f=u.tooltip,e=u.hoverPoint;u.hoverSeries!==r&&r.onMouseOver();e&&e!==i&&e.onMouseOut();i.series&&(i.firePointEvent("mouseOver"),f&&(!f.shared||r.noSharedTooltip)&&f.refresh(i,n),i.setState(ui),t||(u.hoverPoint=i))},onMouseOut:function(){var n=this.series.chart,t=n.hoverPoints;this.firePointEvent("mouseOut");t&&or(this,t)!==-1||(this.setState(),n.hoverPoint=null)},importEvents:function(){if(!this.hasImportedEvents){var n=this,r=c(n.series.options.point,n.options),t=r.events,i;n.events=t;for(i in t)g(n,i,t[i]);this.hasImportedEvents=!0}},setState:function(n,t){var i=this,y=ot(i.plotX),p=i.plotY,r=i.series,w=r.options.states,s=vt[r.type].marker&&r.options.marker,d=s&&!s.enabled,h=s&&s.states[n],g=h&&h.enabled===!1,u=r.stateMarkerGraphic,b=i.marker||{},l=r.chart,f,a=r.halo,o,v,k;(n=n||bt,k=i.pointAttr[n]||r.pointAttr[n],n===i.state&&!t||i.selected&&n!==gi||w[n]&&w[n].enabled===!1||n&&(g||d&&h.enabled===!1)||n&&b.states&&b.states[n]&&b.states[n].enabled===!1)||(i.graphic?(f=s&&i.graphic.symbolName&&k.r,i.graphic.attr(c(k,f?{x:y-f,y:p-f,width:2*f,height:2*f}:{})),u&&u.hide()):(n&&h&&(f=h.radius,v=b.symbol||r.symbol,u&&u.currentSymbol!==v&&(u=u.destroy()),u?u[t?"animate":"attr"]({x:y-f,y:p-f}):v&&(r.stateMarkerGraphic=u=l.renderer.symbol(v,y-f,p-f,2*f,2*f).attr(k).add(r.markerGroup),u.currentSymbol=v)),u&&(u[n&&l.isInsidePlot(y,p,l.inverted)?"show":"hide"](),u.element.point=i)),o=w[n]&&w[n].halo,o&&o.size?(a||(r.halo=a=l.renderer.path().add(l.seriesGroup)),a.attr(e(pt?{fill:i.color||r.color,"fill-opacity":o.opacity}:{fill:dt(i.color||r.color).setOpacity(o.opacity).get()},o.attributes))[t?"animate":"attr"]({d:i.haloPath(o.size)})):a&&a.attr({d:[]}),i.state=n)},haloPath:function(n){var t=this.series,i=t.chart,r=t.getPlotBox(),u=i.inverted,f=Math.floor(this.plotX);return i.renderer.symbols.circle(r.translateX+(u?t.yAxis.len-this.plotY:f)-n,r.translateY+(u?t.xAxis.len-f:this.plotY)-n,n*2,n*2)}}),e(k.prototype,{onMouseOver:function(){var n=this,i=n.chart,t=i.hoverSeries;t&&t!==n&&t.onMouseOut();n.options.events.mouseOver&&w(n,"mouseOver");n.setState(ui);i.hoverSeries=n},onMouseOut:function(){var n=this,r=n.options,t=n.chart,i=t.tooltip,u=t.hoverPoint;t.hoverSeries=null;u&&u.onMouseOut();n&&r.events.mouseOut&&w(n,"mouseOut");i&&!r.stickyTracking&&(!i.shared||n.noSharedTooltip)&&i.hide();n.setState()},setState:function(n){var t=this,o=t.options,u=t.graph,i=o.states,f=o.lineWidth,e,r=0;if(n=n||bt,t.state!==n){if(t.state=n,i[n]&&i[n].enabled===!1)return;if(n&&(f=i[n].lineWidth||f+(i[n].lineWidthPlus||0)),u&&!u.dashstyle)for(e={"stroke-width":f},u.attr(e);t["zoneGraph"+r];)t["zoneGraph"+r].attr(e),r=r+1}},setVisible:function(n,t){var r=this,u=r.chart,o=r.legendItem,e,s=u.options.chart.ignoreHiddenSeries,h=r.visible;r.visible=n=r.userOptions.visible=n===f?!h:n;e=n?"show":"hide";i(["group","dataLabelsGroup","markerGroup","tracker"],function(n){r[n]&&r[n][e]()});(u.hoverSeries===r||(u.hoverPoint&&u.hoverPoint.series)===r)&&r.onMouseOut();o&&u.legend.colorizeItem(r,n);r.isDirty=!0;r.options.stacking&&i(u.series,function(n){n.options.stacking&&n.visible&&(n.isDirty=!0)});i(r.linkedSeries,function(t){t.setVisible(n,!1)});s&&(u.isDirtyBox=!0);t!==!1&&u.redraw();w(r,e)},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(n){var t=this;t.selected=n=n===f?!t.selected:n;t.checkbox&&(t.checkbox.checked=n);w(t,n?"select":"unselect")},drawTracker:ku.drawTrackerGraph}),e(s,{Color:dt,Point:tr,Tick:uu,Renderer:eu,SVGElement:ut,SVGRenderer:wi,arrayMin:dr,arrayMax:er,charts:lt,dateFormat:br,error:vi,format:yr,pathAnim:cf,getOptions:po,hasBidiBug:ho,isTouchDevice:se,setOptions:yo,addEvent:g,removeEvent:at,createElement:wt,discardElement:nu,css:p,each:i,map:pr,merge:c,splat:pi,stableSort:ff,extendClass:oi,pInt:a,svg:pt,canvas:ni,vml:!pt&&!ni,product:ce,version:le}),s})