function KeyIt(n){if(!n)var n=window.event;n.keyCode==13?(n.preventDefault(),SearchIt()):SearchItBar(document.getElementById("psbox").value+String.fromCharCode(n.which))}function BackKey(n){n.keyCode==8&&(document.getElementById("psbox").value.length>0?SearchItBar(document.getElementById("psbox").value.substring(0,document.getElementById("psbox").value.length-1)):SearchItBar(document.getElementById("psbox").value))}function SearchIt(){top.location.href="http://www.fangraphs.com/players.aspx?new=y&lastname="+document.getElementById("psbox").value}function SearchItBar(n){jqueryFunction(n)}(function(){function s(){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 bi(n){return typeof n=="string"}function yt(n){return n&&typeof n=="object"}function tr(n){return Object.prototype.toString.call(n)==="[object Array]"}function si(n){return typeof n=="number"}function ki(n){return et.log(n)/et.LN10}function gt(n){return et.pow(10,n)}function ni(n,t){for(var i=n.length;i--;)if(n[i]===t){n.splice(i,1);break}}function i(n){return n!==u&&n!==null}function nt(n,t,r){var u,f;if(bi(t))i(r)?n.setAttribute(t,r):n&&n.getAttribute&&(f=n.getAttribute(t));else if(i(t)&&yt(t))for(u in t)n.setAttribute(u,t[u]);return f}function hi(n){return tr(n)?n:[n]}function y(n,t){yi&&!vt&&t&&t.opacity!==u&&(t.filter="alpha(opacity="+t.opacity*100+")");e(n.style,t)}function lt(n,t,i,r,u){return n=h.createElement(n),t&&e(n,t),u&&y(n,{padding:0,border:ut,margin:0}),i&&y(n,i),r&&r.appendChild(n),n}function ti(n,t){var i=function(){return u};return i.prototype=new n,e(i.prototype,t),i}function ir(n,t){return Array((t||2)+1-String(n).length).join(0)+n}function wr(n){return(su&&su(n)||ku||0)*6e4}function rr(n,t){for(var e="{",s=!1,i,r,o,u,f,h=[];(e=n.indexOf(e))!==-1;){if(i=n.slice(0,e),s){for(r=i.split(":"),o=r.shift().split("."),f=o.length,i=t,u=0;u<f;u++)i=i[o[u]];r.length&&(r=r.join(":"),o=/\.([0-9])/,u=rt.lang,f=void 0,/f$/.test(r)?(f=(f=r.match(o))?f[1]:-1,i!==null&&(i=c.numberFormat(i,f,u.decimalPoint,r.indexOf(",")>-1?u.thousandsSep:""))):i=vr(r,i))}h.push(i);n=n.slice(e+1);e=(s=!s)?"}":"{"}return h.push(n),h.join("")}function vu(n){return et.pow(10,ft(et.log(n)/et.LN10))}function yu(t,i,r,u,f){var o,e=t,r=n(r,1);for(o=t/r,i||(i=[1,2,2.5,5,10],u===!1&&(r===1?i=[1,2,5,10]:r<=.1&&(i=[1/r]))),u=0;u<i.length;u++)if(e=i[u],f&&e*r>=t||!f&&o<=(i[u]+(i[u+1]||i[u]))/2)break;return e*r}function pu(n,t){for(var u=n.length,r,i=0;i<u;i++)n[i].ss_i=i;for(n.sort(function(n,i){return r=t(n,i),r===0?n.ss_i-i.ss_i:r}),i=0;i<u;i++)delete n[i].ss_i}function sr(n){for(var t=n.length,i=n[0];t--;)n[t]<i&&(i=n[t]);return i}function di(n){for(var t=n.length,i=n[0];t--;)n[t]>i&&(i=n[t]);return i}function hr(n,t){for(var i in n)n[i]&&n[i]!==t&&n[i].destroy&&n[i].destroy(),delete n[i]}function cr(n){fu||(fu=lt(fr));n&&fu.appendChild(n);fu.innerHTML=""}function ii(n,t){var i="Highcharts error #"+n+": www.highcharts.com/errors/"+n;if(t)throw i;g.console&&console.log(i)}function pt(n,t){return parseFloat(n.toPrecision(t||14))}function lr(t,i){i.renderer.globalAnimation=n(t,i.animation)}function sf(){var u=rt.global,r=u.useUTC,i=r?"getUTC":"get",t=r?"setUTC":"set";pi=u.Date||window.Date;ku=r&&u.timezoneOffset;su=r&&u.getTimezoneOffset;ou=function(t,i,u,f,e,o){var s;return r?(s=pi.UTC.apply(0,arguments),s+=wr(s)):s=new pi(t,i,n(u,1),n(f,0),n(e,0),n(o,0)).getTime(),s};du=i+"Minutes";gu=i+"Hours";nf=i+"Day";gr=i+"Date";nu=i+"Month";tu=i+"FullYear";vf=t+"Milliseconds";yf=t+"Seconds";pf=t+"Minutes";wf=t+"Hours";tf=t+"Date";rf=t+"Month";uf=t+"FullYear"}function tt(){}function ar(n,t,i,r){this.axis=n;this.pos=t;this.type=i||"";this.isNew=!0;i||r||this.addLabel()}function hf(t,i,r,u,f){var e=t.chart.inverted;this.axis=t;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:n(i.y,e?4:r?14:-6),x:n(i.x,e?r?-6:6:0)};this.textAlign=i.textAlign||(e?r?"right":"left":"center")}var u,h=document,g=window,et=Math,f=et.round,ft=et.floor,ci=et.ceil,r=et.max,o=et.min,p=et.abs,ot=et.cos,at=et.sin,ri=et.PI,kt=ri/180,vi=navigator.userAgent,cf=g.opera,yi=/(msie|trident)/i.test(vi)&&!cf,ru=h.documentMode===8,uu=/AppleWebKit/.test(vi),ur=/Firefox/.test(vi),lf=/(Mobile|Android|Windows Phone)/.test(vi),gi="http://www.w3.org/2000/svg",vt=!!h.createElementNS&&!!h.createElementNS(gi,"svg").createSVGRect,df=ur&&parseInt(vi.split("Firefox/")[1],10)<4,wt=!vt&&!yi&&!!h.createElement("canvas").getContext,br,kr,af={},wu=0,fu,rt,vr,bu,v,li=function(){return u},st=[],dr=0,fr="div",ut="none",gf=/^[0-9]+$/,eu=["plotTop","marginRight","marginBottom","plotLeft"],ne="stroke-width",pi,ou,ku,su,du,gu,nf,gr,nu,tu,vf,yf,pf,wf,tf,rf,uf,k={},c,l,ct,it,fi,nr,bf,bt,ff,ei,or,iu,kf,wi,b,oi,dt;c=g.Highcharts=g.Highcharts?ii(16,!0):{};c.seriesTypes=k;var e=c.extend=function(n,t){var i;n||(n={});for(i in t)n[i]=t[i];return n},n=c.pick=function(){for(var i=arguments,t,r=i.length,n=0;n<r;n++)if(t=i[n],t!==u&&t!==null)return t},yr=c.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)}};vr=function(t,r,u){if(!i(r)||isNaN(r))return rt.lang.invalidDate||"";var t=n(t,"%Y-%m-%d %H:%M:%S"),o=new pi(r-wr(r)),s,h=o[gu](),l=o[nf](),y=o[gr](),a=o[nu](),p=o[tu](),v=rt.lang,w=v.weekdays,o=e({a:w[l].substr(0,3),A:w[l],d:ir(y),e:y,w:l,b:v.shortMonths[a],B:v.months[a],m:ir(a+1),y:p.toString().substr(2,2),Y:p,H:ir(h),k:h,I:ir(h%12||12),l:h%12||12,M:ir(o[du]()),p:h<12?"AM":"PM",P:h<12?"am":"pm",S:ir(o.getSeconds()),L:ir(f(r%1e3),3)},c.dateFormats);for(s in o)for(;t.indexOf("%"+s)!==-1;)t=t.replace("%"+s,typeof o[s]=="function"?o[s](r):o[s]);return u?t.substr(0,1).toUpperCase()+t.substr(1):t};v={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5};c.numberFormat=function(n,t,i,r){var u=rt.lang,n=+n||0,f=t===-1?o((n.toString().split(".")[1]||"").length,20):isNaN(t=p(t))?2:t,t=i===void 0?u.decimalPoint:i,r=r===void 0?u.thousandsSep:r,u=n<0?"-":"",i=String(a(n=p(n).toFixed(f))),e=i.length>3?i.length%3:0;return u+(e?i.substr(0,e)+r:"")+i.substr(e).replace(/(\d{3})(?=\d)/g,"$1"+r)+(f?t+p(n-i).toFixed(f).slice(2):"")};bu={init:function(n,t,i){var t=t||"",r=n.shift,e=t.indexOf("C")>-1,u=e?7:3,f,t=t.split(" "),i=[].concat(i),o,s,h=function(n){for(f=n.length;f--;)n[f]==="M"&&n.splice(f+1,0,n[f+1],n[f+2],n[f+1],n[f+2])};if(e&&(h(t),h(i)),n.isArea&&(o=t.splice(t.length-6,6),s=i.splice(i.length-6,6)),r<=i.length/u&&t.length===i.length)for(;r--;)i=[].concat(i).splice(0,u).concat(i);if(n.shift=0,t.length)for(n=i.length;t.length<n;)r=[].concat(t).splice(t.length-u,u),e&&(r[u-6]=r[u-2],r[u-5]=r[u-1]),t=t.concat(r);return o&&(t=t.concat(o),i=i.concat(s)),[t,i]},step:function(n,t,i,r){var f=[],u=n.length;if(i===1)f=r;else if(u===t.length&&i<1)for(;u--;)r=parseFloat(n[u]),f[u]=isNaN(r)?n[u]:i*parseFloat(t[u]-r)+r;else f=t;return f}},function(n){g.HighchartsAdapter=g.HighchartsAdapter||n&&{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 f=i.step,e;r==="cur"?f=i.prototype:r==="_default"&&n.Tween&&(f=n.Tween.propHooks[r],r="set");(e=f[r])&&(f[r]=function(n){var i,n=t?n:this;if(n.prop!=="align")return i=n.elem,i.attr?i.attr(n.prop,r==="cur"?u:n.now):e.apply(this,arguments)})});yr(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]&&(bi(t[0])&&(r=t[0],t=Array.prototype.slice.call(t,1)),n=t[0],n!==u&&(n.chart=n.chart||{},n.chart.renderTo=this[0],new c[r](n,t[1]),i=this),n===u&&(i=st[nt(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=[],i=0,u=n.length;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=h.removeEventListener?"removeEventListener":"detachEvent";h[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;!yi&&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===u&&(t.pageX=n.pageX,t.pageY=n.pageY),t},animate:function(t,i,r){var f=n(t);t.style||(t.style={});i.d&&(t.toD=i.d,i.d=1);f.stop();i.opacity!==u&&t.attr&&(i.opacity+="px");t.hasAnim=1;f.animate(i,r)},stop:function(t){t.hasAnim&&n(t).stop()}}}(g.jQuery);it=g.HighchartsAdapter;l=it||{};it&&it.init.call(it,bu);var hu=l.adapterRun,te=l.getScript,er=l.inArray,t=c.each=l.each,cu=l.grep,ie=l.offset,pr=l.map,d=l.addEvent,ht=l.removeEvent,w=l.fireEvent,re=l.washMouseEvent,lu=l.animate,au=l.stop;rt={colors:"#7cb5ec,#434348,#90ed7d,#f7a35c,#8085e9,#f15c80,#e4d354,#2b908f,#f45b5b,#91e8e1".split(","),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),decimalPoint:".",numericSymbols:"k,M,G,T,P,E".split(","),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/4.1.8/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/4.1.8/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?"":c.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,states:{hover:{lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:"absolute",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:"absolute",width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:vt,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:lf?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",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"}}};ct=rt.plotOptions;it=ct.line;sf();var ue=/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*\)/,fe=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,ee=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,ui=function(n){var i=[],r,u;return function(n){n&&n.stops?u=pr(n.stops,function(n){return ui(n[1])}):(r=ue.exec(n))?i=[a(r[1]),a(r[2]),a(r[3]),parseFloat(r[4],10)]:(r=fe.exec(n))?i=[a(r[1],16),a(r[2],16),a(r[3],16),1]:(r=ee.exec(n))&&(i=[a(r[1]),a(r[2]),a(r[3]),1])}(n),{get:function(r){var f;return u?(f=s(n),f.stops=[].concat(f.stops),t(u,function(n,t){f.stops[t]=[f.stops[t][0],n.get(r)]})):f=i&&!isNaN(i[0])?r==="rgb"?"rgb("+i[0]+","+i[1]+","+i[2]+")":r==="a"?i[3]:"rgba("+i.join(",")+")":n,f},brighten:function(n){if(u)t(u,function(t){t.brighten(n)});else if(si(n)&&n!==0)for(var r=0;r<3;r++)i[r]+=a(n*255),i[r]<0&&(i[r]=0),i[r]>255&&(i[r]=255);return this},rgba:i,setOpacity:function(n){return i[3]=n,this},raw:n}};if(tt.prototype={opacity:1,textProps:"fontSize,fontWeight,fontFamily,fontStyle,color,lineHeight,width,textDecoration,textOverflow,textShadow".split(","),init:function(n,t){this.element=t==="span"?lt(t):h.createElementNS(gi,t);this.renderer=n},animate:function(t,i,r){return i=n(i,this.renderer.globalAnimation,!0),au(this),i?(i=s(i,{}),r&&(i.complete=r),lu(this,t,i)):this.attr(t,null,r),this},colorGradient:function(n,r,u){var l=this.renderer,p,o,f,a,v,y,w,b,e,c,h=[];if(n.linearGradient?o="linearGradient":n.radialGradient&&(o="radialGradient"),o){f=n[o];a=l.gradients;y=n.stops;e=u.radialReference;tr(f)&&(n[o]=f={x1:f[0],y1:f[1],x2:f[2],y2:f[3],gradientUnits:"userSpaceOnUse"});o==="radialGradient"&&e&&!i(f.gradientUnits)&&(f=s(f,{cx:e[0]-e[2]/2+f.cx*e[2],cy:e[1]-e[2]/2+f.cy*e[2],r:f.r*e[2],gradientUnits:"userSpaceOnUse"}));for(c in f)c!=="id"&&h.push(c,f[c]);for(c in y)h.push(y[c]);h=h.join(",");a[h]?n=a[h].attr("id"):(f.id=n="highcharts-"+wu++,a[h]=v=l.createElement(o).attr(f).add(l.defs),v.stops=[],t(y,function(n){n[1].indexOf("rgba")===0?(p=ui(n[1]),w=p.get("rgb"),b=p.get("a")):(w=n[1],b=1);n=l.createElement("stop").attr({offset:n[0],"stop-color":w,"stop-opacity":b}).add(v);v.stops.push(n)}));u.setAttribute(r,"url("+l.url+"#"+n+")")}},applyTextShadow:function(n){var i=this.element,e,o=n.indexOf("contrast")!==-1,f={},s=this.renderer.forExport||i.style.textShadow!==u&&!yi;o&&(f.textShadow=n=n.replace(/contrast/g,this.renderer.getContrast(i.style.fill)));uu&&(f.textRendering="geometricPrecision");s?y(i,f):(this.fakeTS=!0,this.ySetter=this.xSetter,e=[].slice.call(i.getElementsByTagName("tspan")),t(n.split(/\s?,\s?/g),function(n){var o=i.firstChild,u,f,n=n.split(" ");u=n[n.length-1];(f=n[n.length-2])&&t(e,function(n,t){var e;t===0&&(n.setAttribute("x",i.getAttribute("x")),t=i.getAttribute("y"),n.setAttribute("y",t||0),t===null&&i.setAttribute("y",0));e=n.cloneNode(1);nt(e,{"class":"highcharts-text-shadow",fill:u,stroke:u,"stroke-opacity":1/r(a(f),3),"stroke-width":f,"stroke-linejoin":"round"});i.insertBefore(e,o)})}))},attr:function(n,t,i){var r,e=this.element,o,s=this,f;if(typeof n=="string"&&t!==u&&(r=n,n={},n[r]=t),typeof n=="string")s=(this[n+"Getter"]||this._defaultGetter).call(this,n,e);else{for(r in n)t=n[r],f=!1,this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(r)&&(o||(this.symbolAttr(n),o=!0),f=!0),this.rotation&&(r==="x"||r==="y")&&(this.doTransform=!0),f||(this[r+"Setter"]||this._defaultSetter).call(this,t,r,e),this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(r)&&this.updateShadows(r,t);this.doTransform&&(this.updateTransform(),this.doTransform=!1)}return i&&i(),s},updateShadows:function(n,t){for(var i=this.shadows,u=i.length;u--;)i[u].setAttribute(n,n==="height"?r(t-(i[u].cutHeight||0),0):n==="d"?this.d:t)},addClass:function(n){var t=this.element,i=nt(t,"class")||"";return i.indexOf(n)===-1&&nt(t,"class",i+" "+n),this},symbolAttr:function(i){var r=this;t("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(t){r[t]=n(i[t],r[t])});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+")":ut)},crisp:function(n){var t,r={},i,u=n.strokeWidth||this.strokeWidth||0;i=f(u)%2/2;n.x=ft(n.x||this.x||0)+i;n.y=ft(n.y||this.y||0)+i;n.width=ft((n.width||this.width||0)-2*i);n.height=ft((n.height||this.height||0)-2*i);n.strokeWidth=u;for(t in n)this[t]!==n[t]&&(this[t]=r[t]=n[t]);return r},css:function(n){var i=this.styles,u={},f=this.element,r,t,o="";if(r=!i,n&&n.color&&(n.fill=n.color),i)for(t in n)n[t]!==i[t]&&(u[t]=n[t],r=!0);if(r){if(r=this.textWidth=n&&n.width&&f.nodeName.toLowerCase()==="text"&&a(n.width)||this.textWidth,i&&(n=e(i,u)),this.styles=n,r&&(wt||!vt&&this.renderer.forExport)&&delete n.width,yi&&!vt)y(this.element,n);else{i=function(n,t){return"-"+t.toLowerCase()};for(t in n)o+=t.replace(/([A-Z])/g,i)+":"+n[t]+";";nt(f,"style",o)}r&&this.added&&this.renderer.buildText(this)}return this},on:function(n,t){var r=this,i=r.element;return kr&&n==="click"?(i.ontouchstart=function(n){r.touchEventFired=pi.now();n.preventDefault();t.call(i,n)},i.onclick=function(n){(vi.indexOf("Android")===-1||pi.now()-(r.touchEventFired||0)>1100)&&t.call(i,n)}):i["on"+n]=t,this},setRadialReference:function(n){return this.element.radialReference=n,this},translate:function(n,t){return this.attr({translateX:n,translateY:t})},invert:function(){return this.inverted=!0,this.updateTransform(),this},updateTransform:function(){var t=this.translateX||0,u=this.translateY||0,f=this.scaleX,e=this.scaleY,o=this.inverted,s=this.rotation,r=this.element;o&&(t+=this.attr("width"),u+=this.attr("height"));t=["translate("+t+","+u+")"];o?t.push("rotate(90) scale(-1,1)"):s&&t.push("rotate("+s+" "+(r.getAttribute("x")||0)+" "+(r.getAttribute("y")||0)+")");(i(f)||i(e))&&t.push("scale("+n(f,1)+" "+n(e,1)+")");t.length&&r.setAttribute("transform",t.join(" "))},toFront:function(){var n=this.element;return n.parentNode.appendChild(n),this},align:function(t,i,r){var e,u,o,h,s={};return u=this.renderer,o=u.alignedObjects,t?(this.alignOptions=t,this.alignByTranslate=i,!r||bi(r))&&(this.alignTo=e=r||"renderer",ni(o,this),o.push(this),r=null):(t=this.alignOptions,i=this.alignByTranslate,e=this.alignTo),r=n(r,u[e],u),e=t.align,u=t.verticalAlign,o=(r.x||0)+(t.x||0),h=(r.y||0)+(t.y||0),(e==="right"||e==="center")&&(o+=(r.width-(t.width||0))/{right:1,center:2}[e]),s[i?"translateX":"x"]=f(o),(u==="bottom"||u==="middle")&&(h+=(r.height-(t.height||0))/({bottom:1,middle:2}[u]||1)),s[i?"translateY":"y"]=f(h),this[this.placed?"animate":"attr"](s),this.placed=!0,this.alignAttr=s,this},getBBox:function(n){var i,c=this.renderer,r,v=this.rotation,f=this.element,l=this.styles,a=v*kt,y,s,h,o;if(r=this.textStr,s=f.style,r!==u&&(o=["",v||0,l&&l.fontSize,f.style.width].join(","),o=r===""||gf.test(r)?"num:"+r.toString().length+o:r+o),o&&!n&&(i=c.cache[o]),!i){if(f.namespaceURI===gi||c.forExport){try{h=this.fakeTS&&function(n){t(f.querySelectorAll(".highcharts-text-shadow"),function(t){t.style.display=n})};ur&&s.textShadow?(y=s.textShadow,s.textShadow=""):h&&h(ut);i=f.getBBox?e({},f.getBBox()):{width:f.offsetWidth,height:f.offsetHeight};y?s.textShadow=y:h&&h("")}catch(w){}(!i||i.width<0)&&(i={width:0,height:0})}else i=this.htmlGetBBox();c.isSVG&&(n=i.width,r=i.height,yi&&l&&l.fontSize==="11px"&&r.toPrecision(3)==="16.9"&&(i.height=r=14),v&&(i.width=p(r*at(a))+p(n*ot(a)),i.height=p(r*ot(a))+p(n*at(a))));o&&(c.cache[o]=i)}return i},show:function(n){return this.attr({visibility:n?"inherit":"visible"})},hide:function(){return this.attr({visibility:"hidden"})},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!==void 0&&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,i=n.element||{},f=n.shadows,r=n.renderer.isSVG&&i.nodeName==="SPAN"&&n.parentGroup,e,u;if(i.onclick=i.onmouseout=i.onmouseover=i.onmousemove=i.point=null,au(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(i),f&&t(f,function(t){n.safeRemoveChild(t)});r&&r.div&&r.div.childNodes.length===0;)i=r.parentGroup,n.safeRemoveChild(r.div),delete r.div,r=i;n.alignTo&&ni(n.renderer.alignedObjects,n);for(e in n)delete n[e];return null},shadow:function(t,i,u){var c=[],e,f,h=this.element,o,s,l,a;if(t){for(s=n(t.width,3),l=(t.opacity||.15)/s,a=this.parentInverted?"(-1,-1)":"("+n(t.offsetX,1)+", "+n(t.offsetY,1)+")",e=1;e<=s;e++)f=h.cloneNode(0),o=s*2+1-2*e,nt(f,{isShadow:"true",stroke:t.color||"black","stroke-opacity":l*e,"stroke-width":o,transform:"translate"+a,fill:ut}),u&&(nt(f,"height",r(nt(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(t){return t=n(this[t],this.element?this.element.getAttribute(t):null,0),/^[\-0-9\.]+$/.test(t)&&(t=parseFloat(t)),t},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()){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(t){var i=this.element.getElementsByTagName("title")[0];i||(i=h.createElementNS(gi,"title"),this.element.appendChild(i));i.appendChild(h.createTextNode(String(n(t),"").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 u=this.renderer,f=this.parentGroup,u=(f||u).element||u.box,r,h,e=this.element,o,s;if(r=this.added,i(n)&&(e.setAttribute(t,n),n=+n,this[t]===n&&(r=!1),this[t]=n),r){for((n=this.zIndex)&&f&&(f.handleZ=!0),f=u.childNodes,s=0;s<f.length&&!o;s++)(r=f[s],h=nt(r,"zIndex"),r!==e&&(a(h)>n||!i(n)&&i(h)))&&(u.insertBefore(e,r),o=!0);o||u.appendChild(e)}return o},_defaultSetter:function(n,t,i){i.setAttribute(t,n)}},tt.prototype.yGetter=tt.prototype.xGetter,tt.prototype.translateXSetter=tt.prototype.translateYSetter=tt.prototype.rotationSetter=tt.prototype.verticalAlignSetter=tt.prototype.scaleXSetter=tt.prototype.scaleYSetter=function(n,t){this[t]=n;this.doTransform=!0},tt.prototype["stroke-widthSetter"]=tt.prototype.strokeSetter=function(n,t,i){this[t]=n;this.stroke&&this["stroke-width"]?(this.strokeWidth=this["stroke-width"],tt.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)},fi=function(){this.init.apply(this,arguments)},fi.prototype={Element:tt,init:function(n,t,i,r,u){var o=location,e,r=this.createElement("svg").attr({version:"1.1"}).css(this.getStyle(r)),f;e=r.element;n.appendChild(e);n.innerHTML.indexOf("xmlns")===-1&&nt(e,"xmlns",gi);this.isSVG=!0;this.box=e;this.boxWrapper=r;this.alignedObjects=[];this.url=(ur||uu)&&h.getElementsByTagName("base").length?o.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(h.createTextNode("Created with Highcharts 4.1.8"));this.defs=this.createElement("defs").add();this.forExport=u;this.gradients={};this.cache={};this.setSize(t,i,!1);ur&&n.getBoundingClientRect&&(this.subPixelFix=t=function(){y(n,{left:0,top:0});f=n.getBoundingClientRect();y(n,{left:ci(f.left)-f.left+"px",top:ci(f.top)-f.top+"px"})},t(),d(g,"resize",t))},getStyle:function(n){return this.style=e({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},n)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var n=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),hr(this.gradients||{}),this.gradients=null,n&&(this.defs=n.destroy()),this.subPixelFix&&ht(g,"resize",this.subPixelFix),this.alignedObjects=null},createElement:function(n){var t=new this.Element;return t.init(this,n),t},draw:function(){},buildText:function(i){for(var f=i.element,o=this,b=o.forExport,r=n(i.textStr,"").toString(),k=r.indexOf("<")!==-1,d=f.childNodes,c,l,v=nt(f,"x"),u=i.styles,e=i.textWidth,g=u&&u.lineHeight,p=u&&u.textShadow,w=u&&u.textOverflow==="ellipsis",tt=d.length,s=e&&!i.added&&this.box,it=function(n){return g?a(g):o.fontMetrics(/(px|em)$/.test(n&&n.style.fontSize)?n.style.fontSize:u&&u.fontSize||o.style.fontSize||12,n).h},rt=function(n){return n.replace(/&lt;/g,"<").replace(/&gt;/g,">")};tt--;)f.removeChild(d[tt]);!k&&!p&&!w&&r.indexOf(" ")===-1?f.appendChild(h.createTextNode(rt(r))):(c=/<.*style="([^"]+)".*>/,l=/<.*href="(http[^"]+)".*>/,s&&s.appendChild(f),r=k?r.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):[r],r[r.length-1]===""&&r.pop(),t(r,function(n,r){var s,a=0,n=n.replace(/<span/g,"|||<span").replace(/<\/span>/g,"<\/span>|||");s=n.split("|||");t(s,function(n){var p,t,ut;if((n!==""||s.length===1)&&(p={},t=h.createElementNS(gi,"tspan"),c.test(n)&&(ut=n.match(c)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),nt(t,"style",ut)),l.test(n)&&!b&&(nt(t,"onclick",'location.href="'+n.match(l)[1]+'"'),y(t,{cursor:"pointer"})),n=rt(n.replace(/<(.|\n)*?>/g,"")||" "),n!==" ")){if(t.appendChild(h.createTextNode(n)),a?p.dx=0:r&&v!==null&&(p.x=v),nt(t,p),f.appendChild(t),!a&&r&&(!vt&&b&&y(t,{display:"block"}),nt(t,"dy",it(t))),e){for(var p=n.replace(/([^\^])-/g,"$1- ").split(" "),ot=s.length>1||r||p.length>1&&u.whiteSpace!=="nowrap",k,d,g,ft=[],st=it(t),ht=1,ct=i.rotation,tt=n,et=tt.length;(ot||w)&&(p.length||ft.length);)i.rotation=0,k=i.getBBox(!0),g=k.width,!vt&&o.forExport&&(g=o.measureSpanWidth(t.firstChild.data,i.styles)),k=g>e,d===void 0&&(d=k),w&&d?(et/=2,tt===""||!k&&et<.5?p=[]:(k&&(d=!0),tt=n.substring(0,tt.length+(k?-1:1)*ci(et)),p=[tt+(e>3?"…":"")],t.removeChild(t.firstChild))):!k||p.length===1?(p=ft,ft=[],p.length&&(ht++,t=h.createElementNS(gi,"tspan"),nt(t,{dy:st,x:v}),ut&&nt(t,"style",ut),f.appendChild(t)),g>e&&(e=g)):(t.removeChild(t.firstChild),ft.unshift(p.pop())),p.length&&t.appendChild(h.createTextNode(p.join(" ").replace(/- /g,"-")));d&&i.attr("title",i.textStr);i.rotation=ct}a++}})}),s&&s.removeChild(f),p&&i.applyTextShadow&&i.applyTextShadow(p))},getContrast:function(n){return n=ui(n).rgba,n[0]+n[1]+n[2]>384?"#000000":"#FFFFFF"},button:function(n,t,i,r,u,f,o,h,c){var l=this.label(n,t,i,c,null,null,null,null,"button"),a=0,w,b,v,y,p,k,n={x1:0,y1:0,x2:0,y2:1},u=s({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:n,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},u);return v=u.style,delete u.style,f=s(u,{stroke:"#68A",fill:{linearGradient:n,stops:[[0,"#FFF"],[1,"#ACF"]]}},f),y=f.style,delete f.style,o=s(u,{stroke:"#68A",fill:{linearGradient:n,stops:[[0,"#9BD"],[1,"#CDF"]]}},o),p=o.style,delete o.style,h=s(u,{style:{color:"#CCC"}},h),k=h.style,delete h.style,d(l.element,yi?"mouseover":"mouseenter",function(){a!==3&&l.attr(f).css(y)}),d(l.element,yi?"mouseout":"mouseleave",function(){a!==3&&(w=[u,f,o][a],b=[v,y,p][a],l.attr(w).css(b))}),l.setState=function(n){(l.state=a=n)?n===2?l.attr(o).css(p):n===3&&l.attr(h).css(k):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]=f(n[1])-t%2/2),n[2]===n[5]&&(n[2]=n[5]=f(n[2])+t%2/2),n},path:function(n){var t={fill:ut};return tr(n)?t.d=n:yt(n)&&e(t,n),this.createElement("path").attr(t)},circle:function(n,t,i){return n=yt(n)?n:{x:n,y:t,r:i},t=this.createElement("circle"),t.xSetter=function(n){this.element.setAttribute("cx",n)},t.ySetter=function(n){this.element.setAttribute("cy",n)},t.attr(n)},arc:function(n,t,i,r,u,f){return yt(n)&&(t=n.y,i=n.r,r=n.innerR,u=n.start,f=n.end,n=n.x),n=this.symbol("arc",n||0,t||0,i||0,i||0,{innerR:r||0,start:u||0,end:f||0}),n.r=i,n},rect:function(n,t,i,f,e,o){var e=yt(n)?n.r:e,s=this.createElement("rect"),n=yt(n)?n:n===u?{}:{x:n,y:t,width:r(i,0),height:r(f,0)};return o!==u&&(n.strokeWidth=o,n=s.crisp(n)),e&&(n.r=e),s.rSetter=function(n){nt(this.element,{rx:n,ry:n})},s.attr(n)},setSize:function(t,i,r){var u=this.alignedObjects,f=u.length;for(this.width=t,this.height=i,this.boxWrapper[n(r,!0)?"animate":"attr"]({width:t,height:i});f--;)u[f].align()},g:function(n){var t=this.createElement("g");return i(n)?t.attr({"class":"highcharts-"+n}):t},image:function(n,t,i,r,u){var f={preserveAspectRatio:ut};return arguments.length>1&&e(f,{x:t,y:i,width:r,height:u}),f=this.createElement("image").attr(f),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,o){var s,h=this.symbols[n],h=h&&h(f(t),f(i),r,u,o),a=/^url\((.*?)\)$/,c,l;return h?(s=this.path(h),e(s,{symbolName:n,x:t,y:i,width:r,height:u}),o&&e(s,o)):a.test(n)&&(l=function(n,t){n.element&&(n.attr({width:t[0],height:t[1]}),n.alignByTranslate||n.translate(f((r-t[0])/2),f((u-t[1])/2)))},c=n.match(a)[1],n=af[c]||o&&o.width&&o.height&&[o.width,o.height],s=this.image(c).attr({x:t,y:i}),s.isImg=!0,n?l(s,n):(s.attr({width:0,height:0}),lt("img",{onload:function(){l(s,af[c]=[this.width,this.height])},src:c}))),s},symbols:{circle:function(n,t,i,r){var u=.166*i;return["M",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["M",n,t,"L",n+i,t,n+i,t+r,n,t+r,"Z"]},triangle:function(n,t,i,r){return["M",n+i/2,t,"L",n+i,t+r,n,t+r,"Z"]},"triangle-down":function(n,t,i,r){return["M",n,t,"L",n+i,t,n+i/2,t+r,"Z"]},diamond:function(n,t,i,r){return["M",n+i/2,t,"L",n+i,t+r/2,n+i/2,t+r,n,t+r/2,"Z"]},arc:function(n,t,i,r,u){var e=u.start,i=u.r||i||r,f=u.end-.001,r=u.innerR,o=u.open,s=ot(e),h=at(e),c=ot(f),f=at(f),u=u.end-e<ri?0:1;return["M",n+i*s,t+i*h,"A",i,i,0,u,1,n+i*c,t+i*f,o?"M":"L",n+r*c,t+r*f,"A",r,r,0,u,0,n+r*s,t+r*h,o?"":"Z"]},callout:function(n,t,i,r,u){var f=o(u&&u.r||0,i,r),s=f+6,e=u&&u.anchorX,u=u&&u.anchorY,h;return h=["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&&u>t+s&&u<t+r-s?h.splice(13,3,"L",n+i,u-6,n+i+6,u,n+i,u+6,n+i,t+r-f):e&&e<0&&u>t+s&&u<t+r-s?h.splice(33,3,"L",n,u+6,n-6,u,n,u-6,n,t+f):u&&u>r&&e>n+s&&e<n+i-s?h.splice(23,3,"L",e+6,t+r,e,t+r+6,e-6,t+r,n+f,t+r):u&&u<0&&e>n+s&&e<n+i-s&&h.splice(3,3,"L",e-6,t,e,t-6,e+6,t,i-f,t),h}},clipRect:function(n,t,i,r){var u="highcharts-"+wu++,f=this.createElement("clipPath").attr({id:u}).add(this.defs),n=this.rect(n,t,i,r,0).add(f);return n.id=u,n.clipPath=f,n.count=0,n},text:function(n,t,i,r){var f=wt||!vt&&this.forExport,u={};return r&&!this.forExport?this.html(n,t,i):(u.x=Math.round(t||0),i&&(u.y=Math.round(i)),(n||n===0)&&(u.text=n),n=this.createElement("text").attr(u),f&&n.css({position:"absolute"}),r||(n.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)}),n)},fontMetrics:function(n,t){var i,r,n=n||this.style.fontSize;return t&&g.getComputedStyle&&(t=t.element||t,n=(i=g.getComputedStyle(t,""))&&i.fontSize),n=/px/.test(n)?a(n):/em/.test(n)?parseFloat(n)*12:12,i=n<24?n+3:f(n*1.2),r=f(i*.8),{h:i,b:r,f:n}},rotCorr:function(n,t,i){var u=n;return t&&i&&(u=r(u*ot(t*kt),4)),{x:-n/3*at(t*kt),y:u}},label:function(n,r,o,h,c,l,a,v,y){function pt(){var n,t;n=w.element.style;d=(nt===void 0||ct===void 0||p.styles.textAlign)&&i(w.textStr)&&w.getBBox();p.width=(nt||d.width||0)+2*k+ot;p.height=(ct||d.height||0)+2*k;vt=k+g.fontMetrics(n&&n.fontSize,w).b;yt&&(b||(n=f(-rt*k)+st,t=(v?-vt:0)+st,p.box=b=h?g.symbol(h,n,t,p.width,p.height,ft):g.rect(n,t,p.width,p.height,0,ft[ne]),b.isImg||b.attr("fill",ut),b.add(p)),b.isImg||b.attr(e({width:f(p.width),height:f(p.height)},ft)),ft=null)}function et(){var n=p.styles,n=n&&n.textAlign,r=ot+k*(1-rt),t;t=v?0:vt;i(nt)&&d&&(n==="center"||n==="right")&&(r+={center:.5,right:1}[n]*(nt-d.width));(r!==w.x||t!==w.y)&&(w.attr("x",r),t!==u&&w.attr("y",t));w.x=r;w.y=t}function it(n,t){b?b.attr(n,t):ft[n]=t}var g=this,p=g.g(y),w=g.text("",0,0,a).attr({zIndex:1}),b,d,rt=0,k=3,ot=0,nt,ct,lt,at,st=0,ft={},vt,yt,wt;return p.onAdd=function(){w.add(p);p.attr({text:n||n===0?n:"",x:r,y:o});b&&i(c)&&p.attr({anchorX:c,anchorY:l})},p.widthSetter=function(n){nt=n},p.heightSetter=function(n){ct=n},p.paddingSetter=function(n){i(n)&&n!==k&&(k=p.padding=n,et())},p.paddingLeftSetter=function(n){i(n)&&n!==ot&&(ot=n,et())},p.alignSetter=function(n){rt={left:0,center:.5,right:1}[n]},p.textSetter=function(n){n!==u&&w.textSetter(n);pt();et()},p["stroke-widthSetter"]=function(n,t){n&&(yt=!0);st=n%2/2;it(t,n)},p.strokeSetter=p.fillSetter=p.rSetter=function(n,t){t==="fill"&&n&&(yt=!0);it(t,n)},p.anchorXSetter=function(n,t){c=n;it(t,f(n)-st-lt)},p.anchorYSetter=function(n,t){l=n;it(t,n-at)},p.xSetter=function(n){p.x=n;rt&&(n-=rt*((nt||d.width)+k));lt=f(n);p.attr("translateX",lt)},p.ySetter=function(n){at=p.y=f(n);p.attr("translateY",at)},wt=p.css,e(p,{css:function(n){if(n){var i={},n=s(n);t(p.textProps,function(t){n[t]!==u&&(i[t]=n[t],delete n[t])});w.css(i)}return wt.call(p,n)},getBBox:function(){return{width:d.width+2*k,height:d.height+2*k,x:d.x-k,y:d.y-k}},shadow:function(n){return b&&b.shadow(n),p},destroy:function(){ht(p.element,"mouseenter");ht(p.element,"mouseleave");w&&(w=w.destroy());b&&(b=b.destroy());tt.prototype.destroy.call(p);p=g=pt=et=it=null}})}},br=fi,e(tt.prototype,{htmlCss:function(n){var t=this.element;return(t=n&&t.tagName==="SPAN"&&n.width)&&(delete n.width,this.textWidth=t,this.updateTransform()),n&&n.textOverflow==="ellipsis"&&(n.whiteSpace="nowrap",n.overflow="hidden"),this.styles=e(this.styles,n),y(this.element,n),this},htmlGetBBox:function(){var n=this.element;return n.nodeName==="text"&&(n.style.position="absolute"),{x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var h=this.renderer,r=this.element,c=this.translateX||0,l=this.translateY||0,b=this.x||0,k=this.y||0,o=this.textAlign||"left",v={left:0,center:.5,right:1}[o],u=this.shadows,p=this.styles;if(y(r,{marginLeft:c,marginTop:l}),u&&t(u,function(n){y(n,{marginLeft:c+1,marginTop:l+1})}),this.inverted&&t(r.childNodes,function(n){h.invertChild(n,r)}),r.tagName==="SPAN"){var f=this.rotation,e,s=a(this.textWidth),w=[f,o,r.innerHTML,this.textWidth,this.textAlign].join(",");w!==this.cTT&&(e=h.fontMetrics(r.style.fontSize).b,i(f)&&this.setSpanRotation(f,v,e),u=n(this.elemWidth,r.offsetWidth),u>s&&/[ \-]/.test(r.textContent||r.innerText)&&(y(r,{width:s+"px",display:"block",whiteSpace:p&&p.whiteSpace||"normal"}),u=s),this.getSpanCorrection(u,e,v,f,o));y(r,{left:b+(this.xCorr||0)+"px",top:k+(this.yCorr||0)+"px"});uu&&(e=r.offsetHeight);this.cTT=w}}else this.alignOnAdd=!0},setSpanRotation:function(n,t,i){var r={},u=yi?"-ms-transform":uu?"-webkit-transform":ur?"MozTransform":cf?"-o-transform":"";r[u]=r.transform="rotate("+n+"deg)";r[u+(ur?"Origin":"-origin")]=r.transformOrigin=t*100+"% "+i+"px";y(this.element,r)},getSpanCorrection:function(n,t,i){this.xCorr=-n*i;this.yCorr=-t}}),e(fi.prototype,{html:function(n,i,r){var u=this.createElement("span"),o=u.element,s=u.renderer;return u.textSetter=function(n){n!==o.innerHTML&&delete this.bBox;o.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:f(i),y:f(r)}).css({position:"absolute",fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),o.style.whiteSpace="nowrap",u.css=u.htmlCss,s.isSVG&&(u.add=function(n){var i,r=s.box.parentNode,f=[];if(this.parentGroup=n){if(i=n.div,!i){for(;n;)f.push(n),n=n.parentGroup;t(f.reverse(),function(n){var t,u=nt(n.element,"class");u&&(u={className:u});i=n.div=n.div||lt(fr,u,{position:"absolute",left:(n.translateX||0)+"px",top:(n.translateY||0)+"px"},i||r);t=i.style;e(n,{translateXSetter:function(i,r){t.left=i+"px";n[r]=i;n.doTransform=!0},translateYSetter:function(i,r){t.top=i+"px";n[r]=i;n.doTransform=!0}});yr(n,"visibilitySetter",function(n,i,r,u){n.call(this,i,r,u);t[r]=i})})}}else i=r;return i.appendChild(o),u.added=!0,u.alignOnAdd&&u.htmlUpdateTransform(),u}),u}}),vt||wt||(l={init:function(n,t){var i=["<",t,' filled="f" stroked="f"'],r=["position: ","absolute",";"],u=t===fr;(t==="shape"||u)&&r.push("left:0;top:0;width:1px;height:1px;");r.push("visibility: ",u?"hidden":"visible");i.push(' style="',r.join(""),'"/>');t&&(i=u||t==="span"||t==="img"?i.join(""):n.prepVML(i),this.element=lt(i));this.renderer=n},add:function(n){var i=this.renderer,r=this.element,t=i.box,t=n?n.element||n:t;return n&&n.inverted&&i.invertChild(r,t),t.appendChild(r),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),this.onAdd&&this.onAdd(),this},updateTransform:tt.prototype.htmlUpdateTransform,setSpanRotation:function(){var n=this.rotation,t=ot(n*kt),i=at(n*kt);y(this.element,{filter:n?["progid:DXImageTransform.Microsoft.Matrix(M11=",t,", M12=",-i,", M21=",i,", M22=",t,", sizingMethod='auto expand')"].join(""):ut})},getSpanCorrection:function(t,i,r,u,f){var e=u?ot(u*kt):1,o=u?at(u*kt):0,h=n(this.elemHeight,this.element.offsetHeight),s;this.xCorr=e<0&&-t;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);f&&f!=="left"&&(this.xCorr-=t*r*(e<0?-1:1),u&&(this.yCorr-=h*r*(o<0?-1:1)),y(this.element,{textAlign:f}))},pathToVML:function(n){for(var t=n.length,i=[];t--;)si(n[t])?i[t]=f(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;return n?(i=n.members,ni(i,t),i.push(t),t.destroyClip=function(){ni(i,t)},n=n.getCSS(t)):(t.destroyClip&&t.destroyClip(),n={clip:ru?"inherit":"rect(auto)"}),t.css(n)},css:tt.prototype.htmlCss,safeRemoveChild:function(n){n.parentNode&&cr(n)},destroy:function(){return this.destroyClip&&this.destroyClip(),tt.prototype.destroy.apply(this)},on:function(n,t){return this.element["on"+n]=function(){var n=g.event;n.target=n.srcElement;t(n)},this},cutOffPath:function(n,t){var i,n=n.split(/[ ,]/);return i=n.length,(i===9||i===11)&&(n[i-4]=n[i-2]=a(n[i-2])-10*t),n.join(" ")},shadow:function(t,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,t){for(l=n(t.width,3),w=(t.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=lt(y.prepVML(s),null,{left:a(p.left)+n(t.offsetX,1),top:a(p.top)+n(t.offsetY,1)}),r&&(u.cutOff=h+1),s=['<stroke color="',t.color||"black",'" opacity="',w*f,'"/>'],lt(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){ru?this.element[n]=t:this.element.setAttribute(n,t)},classSetter:function(n){this.element.className=n},dashstyleSetter:function(n,t,i){(i.getElementsByTagName("stroke")[0]||lt(this.renderer.prepVML(["<stroke/>"]),null,null,i))[t]=n||"solid";this[t]=n},dSetter:function(n,t,i){var r=this.shadows,n=n||[];if(this.d=n.join&&n.join(" "),i.path=n=this.pathToVML(n),r)for(i=r.length;i--;)r[i].path=r[i].cutOff?this.cutOffPath(n,r[i].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!==ut,this.setAttr("fillcolor",this.renderer.color(n,i,t,this)))},opacitySetter:li,rotationSetter:function(n,t,i){i=i.style;this[t]=i[t]=n;i.left=-f(at(n*kt)+1)+"px";i.top=f(ot(n*kt))+"px"},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;si(n)&&(n+="px");this.setAttr("strokeweight",n)},titleSetter:function(n,t){this.setAttr(t,n)},visibilitySetter:function(n,i,r){n==="inherit"&&(n="visible");this.shadows&&t(this.shadows,function(t){t.style[i]=n});r.nodeName==="DIV"&&(n=n==="hidden"?"-999em":0,ru||(r.style[i]=n?"visible":"hidden"),i="top");r.style[i]=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}},c.VMLElement=l=ti(tt,l),l.prototype.ySetter=l.prototype.widthSetter=l.prototype.heightSetter=l.prototype.xSetter,nr={Element:l,isIE8:vi.indexOf("MSIE 8.0")>-1,init:function(n,t,i,r){var u;if(this.alignedObjects=[],r=this.createElement(fr).css(e(this.getStyle(r),{position:"relative"})),u=r.element,n.appendChild(r.element),this.isVML=!0,this.box=u,this.boxWrapper=r,this.cache={},this.setSize(t,i,!1),!h.namespaces.hcv){h.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{h.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(f){h.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(n,i,r,u){var s=this.createElement(),o=yt(n);return e(s,{members:[],count:0,left:(o?n.x:n)+1,top:(o?n.y:i)+1,width:(o?n.width:r)-1,height:(o?n.height:u)-1,getCSS:function(n){var t=n.element,o=t.nodeName,n=n.inverted,i=this.top-(o==="shape"?t.offsetTop:0),r=this.left,t=r+this.width,u=i+this.height,i={clip:"rect("+f(n?r:i)+"px,"+f(n?u:t)+"px,"+f(n?t:u)+"px,"+f(n?i:r)+"px)"};return!n&&ru&&o==="DIV"&&e(i,{width:t+"px",height:u+"px"}),i},updateClipping:function(){t(s.members,function(n){n.element&&n.css(s.getCSS(n))})}})},color:function(n,i,r,u){var ct=this,s,b=/^rgba/,v,c,f=ut;if(n&&n.linearGradient?c="gradient":n&&n.radialGradient&&(c="pattern"),c){var h,y,e=n.linearGradient||n.radialGradient,l,k,d,g,nt,p="",n=n.stops,w,tt=[],it=function(){v=['<fill colors="'+tt.join(",")+'" opacity="',d,'" o:opacity2="',k,'" type="',c,'" ',p,'focus="100%" method="any" />'];lt(ct.prepVML(v),null,null,i)};if(l=n[0],w=n[n.length-1],l[0]>0&&n.unshift([0,l[1]]),w[0]<1&&n.push([1,w[1]]),t(n,function(n,t){b.test(n[1])?(s=ui(n[1]),h=s.get("rgb"),y=s.get("a")):(h=n[1],y=1);tt.push(n[0]*100+"% "+h);t?(d=y,g=h):(k=y,nt=h)}),r==="fill")if(c==="gradient")r=e.x1||e[0]||0,n=e.y1||e[1]||0,l=e.x2||e[2]||0,e=e.y2||e[3]||0,p='angle="'+(90-et.atan((e-n)/(l-r))*180/ri)+'"',it();else{var f=e.r,ft=f*2,ot=f*2,st=e.cx,ht=e.cy,a=i.radialReference,o,f=function(){a&&(o=u.getBBox(),st+=(a[0]-o.x)/o.width-.5,ht+=(a[1]-o.y)/o.height-.5,ft*=a[2]/o.width,ot*=a[2]/o.height);p='src="'+rt.global.VMLRadialGradientURL+'" size="'+ft+","+ot+'" origin="0.5,0.5" position="'+st+","+ht+'" color2="'+nt+'" ';it()};u.added?f():u.onAdd=f;f=g}else f=h}else b.test(n)&&i.tagName!=="IMG"?(s=ui(n),v=["<",r,' opacity="',s.get("a"),'"/>'],lt(this.prepVML(v),null,null,i),f=s.get("rgb")):(f=i.getElementsByTagName(r),f.length&&(f[0].opacity=1,f[0].type="solid"),f=n);return f},prepVML:function(n){var t=this.isIE8,n=n.join("");return t?(n=n.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),n=n.indexOf('style="')===-1?n.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):n.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):n=n.replace("<","<hcv:"),n},text:fi.prototype.html,path:function(n){var t={coordsize:"10 10"};return tr(n)?t.d=n:yt(n)&&e(t,n),this.createElement("shape").attr(t)},circle:function(n,t,i){var r=this.symbol("circle");return yt(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:"highcharts-"+n,"class":"highcharts-"+n}),this.createElement(fr).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):fi.prototype.createElement.call(this,n)},invertChild:function(n,i){var f=this,u=i.style,r=n.tagName==="IMG"&&n.style;y(n,{flip:"x",left:a(u.width)-(r?a(r.top):1),top:a(u.height)-(r?a(r.left):1),rotation:-90});t(n.childNodes,function(t){f.invertChild(t,n)})},symbols:{arc:function(n,t,i,r,u){var f=u.start,o=u.end,e=u.r||i||r,i=u.innerR,r=ot(f),s=at(f),h=ot(o),c=at(o);return o-f==0?["x"]:(f=["wa",n-e,t-e,n+e,t+e,n+e*r,t+e*s,n+e*h,t+e*c],u.open&&!i&&f.push("e","M",n,t),f.push("at",n-i,t-i,n+i,t+i,n+i*h,t+i*c,n+i*r,t+i*s,"x","e"),f.isArc=!0,f)},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,r,u,f){return fi.prototype.symbols[!i(f)||!f.r?"square":"callout"].call(0,n,t,r,u,f)}}},c.VMLRenderer=l=function(){this.init.apply(this,arguments)},l.prototype=s(fi.prototype,nr),br=l),fi.prototype.measureSpanWidth=function(n,t){var i=h.createElement("span"),r;return r=h.createTextNode(n),i.appendChild(r),y(i,t),this.box.appendChild(i),r=i.offsetWidth,cr(i),r},wt&&(c.CanVGRenderer=l=function(){gi="http://www.w3.org/1999/xhtml"},l.prototype.symbols={},bf=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&&te(r,t);n.push(i)}}}(),br=l),ar.prototype={addLabel:function(){var t=this.axis,e=t.options,c=t.chart,r=t.categories,o=t.names,f=this.pos,h=e.labels,u=t.tickPositions,l=f===u[0],a=f===u[u.length-1],o=r?n(r[f],o[f],f):f,r=this.label,u=u.info,v;t.isDatetimeAxis&&u&&(v=e.dateTimeLabelFormats[u.higherRanks[f]||u.unitName]);this.isFirst=l;this.isLast=a;e=t.labelFormatter.call({axis:t,chart:c,isFirst:l,isLast:a,dateTimeLabelFormat:v,value:t.isLog?pt(gt(o)):o});i(r)?r&&r.attr({text:e}):(this.labelLength=(this.label=r=i(e)&&h.enabled?c.renderer.text(e,0,0,h.useHTML).css(s(h.style)).add(t.labelGroup):null)&&r.getBBox().width,this.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},handleOverflow:function(t){var i=this.axis,s=t.x,v=i.chart.chartWidth,h=i.chart.spacing,y=n(i.labelLeft,o(i.pos,h[3])),h=n(i.labelRight,r(i.pos+i.len,v-h[1])),p=this.label,l=this.rotation,e={left:0,center:.5,right:1}[i.labelAlign],c=p.getBBox().width,u=i.slotWidth,b=1,a,w={};l?l<0&&s-e*c<y?a=f(s/ot(l*kt)-y):l>0&&s+e*c>h&&(a=f((v-s)/ot(l*kt))):(v=s+(1-e)*c,s-e*c<y?u=t.x+u*(1-e)-y:v>h&&(u=h-t.x+u*e,b=-1),u=o(i.slotWidth,u),u<i.slotWidth&&i.labelAlign==="center"&&(t.x+=b*(i.slotWidth-u-e*(i.slotWidth-o(c,u)))),c>u||i.autoRotation&&p.styles.width)&&(a=u);a&&(w.width=a,i.options.labels.style.textOverflow||(w.textOverflow="ellipsis"),p.css(w))},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(t,i,r,u,e,o,s,h){var c=this.axis,a=c.transA,v=c.reversed,l=c.staggerLines,y=c.tickRotCorr||{x:0,y:0},r=n(e.y,y.y+(c.side===2?8:-(r.getBBox().height/2))),t=t+e.x+y.x-(o&&u?o*a*(v?-1:1):0),i=i+r-(o&&!u?o*a*(v?1:-1):0);return l&&(i+=s/(h||1)%l*(c.labelOffset/l)),{x:t,y:f(i)}},getMarkPath:function(n,t,i,r,u,f){return f.crispLine(["M",n,t,"L",n+(u?0:-i),t+(u?i:0)],r)},render:function(t,i,r){var f=this.axis,o=f.options,d=f.chart.renderer,a=f.horiz,s=this.type,p=this.label,v=this.pos,w=o.labels,h=this.gridLine,c=s?s+"Grid":"grid",l=s?s+"Tick":"tick",b=o[c+"LineWidth"],ut=o[c+"LineColor"],it=o[c+"LineDashStyle"],y=o[l+"Length"],c=n(o[l+"Width"],!s&&f.isXAxis?1:0),ft=o[l+"Color"],et=o[l+"Position"],l=this.mark,g=w.step,nt=!0,tt=f.tickmarkOffset,e=this.getPosition(a,v,tt,i),k=e.x,e=e.y,rt=a&&k===f.pos+f.len||!a&&e===f.pos?-1:1,r=n(r,1);this.isActive=!0;b&&(v=f.getPlotLinePath(v+tt,b*rt,i,!0),h===u&&(h={stroke:ut,"stroke-width":b},it&&(h.dashstyle=it),s||(h.zIndex=1),i&&(h.opacity=0),this.gridLine=h=b?d.path(v).attr(h).add(f.gridGroup):null),!i&&h&&v&&h[this.isNew?"attr":"animate"]({d:v,opacity:r}));c&&y&&(et==="inside"&&(y=-y),f.opposite&&(y=-y),s=this.getMarkPath(k,e,y,c*rt,a,d),l?l.animate({d:s,opacity:r}):this.mark=d.path(s).attr({stroke:ft,"stroke-width":c,opacity:r}).add(f.axisGroup));p&&!isNaN(k)&&(p.xy=e=this.getLabelPosition(k,e,p,a,w,tt,t,g),this.isFirst&&!this.isLast&&!n(o.showFirstLabel,1)||this.isLast&&!this.isFirst&&!n(o.showLastLabel,1)?nt=!1:a&&!f.isRadial&&!w.step&&!w.rotation&&!i&&r!==0&&this.handleOverflow(e),g&&t%g&&(nt=!1),nt&&!isNaN(e.y)?(e.opacity=r,p[this.isNew?"attr":"animate"](e),this.isNew=!1):p.attr("y",-9999))},destroy:function(){hr(this,this.axis)}},c.PlotLineOrBand=function(n,t){this.axis=n;t&&(this.options=t,this.id=t.id)},c.PlotLineOrBand.prototype={render:function(){var o=this,f=o.axis,c=f.horiz,t=o.options,u=t.label,h=o.label,p=t.width,a=t.to,v=t.from,r=i(v)&&i(a),w=t.value,d=t.dashStyle,l=o.svgElem,n=[],g,b=t.color,y=t.zIndex,k=t.events,e={},nt=f.chart.renderer;if(f.isLog&&(v=ki(v),a=ki(a),w=ki(w)),p)(n=f.getPlotLinePath(w,p),e={stroke:b,"stroke-width":p},d)&&(e.dashstyle=d);else if(r)n=f.getPlotBandPath(v,a,t),b&&(e.fill=b),t.borderWidth&&(e.stroke=t.borderColor,e["stroke-width"]=t.borderWidth);else return;if(i(y)&&(e.zIndex=y),l)n?l.animate({d:n},null,l.onGetPath):(l.hide(),l.onGetPath=function(){l.show()},h)&&(o.label=h=h.destroy());else if(n&&n.length&&(o.svgElem=l=nt.path(n).attr(e).add(),k))for(g in t=function(n){l.on(n,function(t){k[n].apply(o,[t])})},k)t(g);return u&&i(u.text)&&n&&n.length&&f.width>0&&f.height>0?(u=s({align:c&&r&&"center",x:c?!r&&4:10,verticalAlign:!c&&r&&"middle",y:c?r?16:10:r?6:-4,rotation:c&&!r&&90},u),h||(e={align:u.textAlign||u.align,rotation:u.rotation},i(y)&&(e.zIndex=y),o.label=h=nt.text(u.text,0,0,u.useHTML).attr(e).css(u.style).add()),f=[n[1],n[4],r?n[6]:n[1]],r=[n[2],n[5],r?n[7]:n[2]],n=sr(f),c=sr(r),h.align(u,!1,{x:n,y:c,width:di(f)-n,height:di(r)-c}),h.show()):h&&h.hide(),o},destroy:function(){ni(this.axis.plotLinesAndBands,this);delete this.axis;hr(this)}},bt=c.Axis=function(){this.init.apply(this,arguments)},bt.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 c.numberFormat(this.total,-1)},style:s(ct.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(t,r){var e=r.isX,o,s,f;this.chart=t;this.horiz=t.inverted?!e:e;this.coll=(this.isXAxis=e)?"xAxis":"yAxis";this.opposite=r.opposite;this.side=r.side||(this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(r);f=this.options;o=f.type;this.labelFormatter=f.labels.formatter||this.defaultLabelFormatter;this.userOptions=r;this.minPixelPadding=0;this.reversed=f.reversed;this.zoomEnabled=f.zoomEnabled!==!1;this.categories=f.categories||o==="category";this.names=this.names||[];this.isLog=o==="logarithmic";this.isDatetimeAxis=o==="datetime";this.isLinked=i(f.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=f.minRange||f.maxZoom;this.range=f.range;this.offset=f.offset||0;this.stacks={};this.oldStacks={};this.stacksTouched=0;this.min=this.max=null;this.crosshair=n(f.crosshair,hi(t.options.tooltip.crosshairs)[e?0:1],!1);f=this.options.events;er(this,t.axes)===-1&&(e&&!this.isColorAxis?t.axes.splice(t.xAxis.length,0,this):t.axes.push(this),t[this.coll].push(this));this.series=this.series||[];t.inverted&&e&&this.reversed===u&&(this.reversed=!0);this.removePlotLine=this.removePlotBand=this.removePlotBandOrLine;for(s in f)d(this,s,f[s]);this.isLog&&(this.val2lin=ki,this.lin2val=gt)},setOptions:function(n){this.options=s(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],s(rt[this.coll],n))},defaultLabelFormatter:function(){var i=this.axis,n=this.value,r=i.categories,o=this.dateTimeLabelFormat,e=rt.lang.numericSymbols,f=e&&e.length,t,s=i.options.labels.format,i=i.isLog?n:i.tickInterval;if(s)t=rr(s,this);else if(r)t=n;else if(o)t=vr(o,n);else if(f&&i>=1e3)for(;f--&&t===u;)r=Math.pow(1e3,f+1),i>=r&&n*10%r==0&&e[f]!==null&&(t=c.numberFormat(n/r,-1)+e[f]);return t===u&&(t=p(n)>=1e4?c.numberFormat(n,-1):c.numberFormat(n,-1,u,"")),t},getSeriesExtremes:function(){var u=this,f=u.chart;u.hasVisibleSeries=!1;u.dataMin=u.dataMax=u.ignoreMinPadding=u.ignoreMaxPadding=null;u.buildStacks&&u.buildStacks();t(u.series,function(t){var e,s;(t.visible||!f.options.chart.ignoreHiddenSeries)&&(e=t.options.threshold,u.hasVisibleSeries=!0,u.isLog&&e<=0&&(e=null),u.isXAxis?(e=t.xData,e.length)&&(u.dataMin=o(n(u.dataMin,e[0]),sr(e)),u.dataMax=r(n(u.dataMax,e[0]),di(e))):(t.getExtremes(),s=t.dataMax,t=t.dataMin,i(t)&&i(s)&&(u.dataMin=o(n(u.dataMin,t),t),u.dataMax=r(n(u.dataMax,s),s)),i(e)&&(u.dataMin>=e?(u.dataMin=e,u.ignoreMinPadding=!0):u.dataMax<e&&(u.dataMax=e,u.ignoreMaxPadding=!0))))})},translate:function(n,t,i,r,u,f){var e=this.linkedParent||this,o=1,h=0,s=r?e.oldTransA:e.transA,r=r?e.oldMin:e.min,c=e.minPixelPadding,u=(e.doPostTranslate||e.isLog&&u)&&e.lin2val;return s||(s=e.transA),i&&(o*=-1,h=e.len),e.reversed&&(o*=-1,h-=o*(e.sector||e.len)),t?(n=n*o+h,n-=c,n=n/s+r,u&&(n=e.lin2val(n))):(u&&(n=e.val2lin(n)),f==="between"&&(f=.5),n=o*(n-r)*s+h+o*c+(si(f)?s*f*e.pointRange:0)),n},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(t,i,u,e,s){var c=this.chart,a=this.left,v=this.top,h,l,p=u&&c.oldChartHeight||c.chartHeight,b=u&&c.oldChartWidth||c.chartWidth,y;h=this.transB;var w=function(n,t,i){return(n<t||n>i)&&(e?n=o(r(t,n),i):y=!0),n},s=n(s,this.translate(t,null,null,u)),t=u=f(s+h);return h=l=f(p-s-h),isNaN(s)?y=!0:this.horiz?(h=v,l=p-this.bottom,t=u=w(t,a,a+this.width)):(t=a,u=b-this.right,h=l=w(h,v,v+this.height)),y&&!e?null:c.renderer.crispLine(["M",t,h,"L",u,l],i||1)},getLinearTickPositions:function(n,t,i){var r,f=pt(ft(t/n)*n),e=pt(ci(i/n)*n),u=[];if(t===i&&si(t))return[t];for(t=f;t<=e;){if(u.push(t),t=pt(t+n),t===r)break;r=t}return u},getMinorTickPositions:function(){var f=this.options,i=this.tickPositions,u=this.minorTickInterval,r=[],n,t=this.pointRangePadding||0,e;if(n=this.min-t,t=this.max+t,e=t-n,e&&e/u<this.len/3)if(this.isLog)for(t=i.length,n=1;n<t;n++)r=r.concat(this.getLogTickPositions(u,i[n-1],i[n],!0));else if(this.isDatetimeAxis&&f.minorTickInterval==="auto")r=r.concat(this.getTimeTicks(this.normalizeTimeTickInterval(u),n,t,f.startOfWeek));else for(i=n+(i[0]-n)%u;i<=t;i+=u)r.push(i);return r.length!==0&&this.trimTicks(r,f.startOnTick,f.endOnTick),r},adjustForMinRange:function(){var h=this.options,r=this.min,f=this.max,e,y=this.dataMax-this.dataMin>=this.minRange,l,c,v,a,p,s;this.isXAxis&&this.minRange===u&&!this.isLog&&(i(h.min)||i(h.max)?this.minRange=null:(t(this.series,function(n){for(a=n.xData,c=p=n.xIncrement?1:a.length-1;c>0;c--)(v=a[c]-a[c-1],l===u||v<l)&&(l=v)}),this.minRange=o(l*5,this.dataMax-this.dataMin)));f-r<this.minRange&&(s=this.minRange,e=(s-f+r)/2,e=[r-e,n(h.min,r-e)],y&&(e[2]=this.dataMin),r=di(e),f=[r+s,n(h.max,r+s)],y&&(f[2]=this.dataMax),f=sr(f),f-r<s&&(e[0]=f-s,e[1]=n(h.min,f-s),r=di(e)));this.min=r;this.max=f},setAxisTranslation:function(n){var u=this,l=u.max-u.min,c=u.axisPointRange||0,f,s=0,h=0,e=u.linkedParent,y=!!u.categories,a=u.transA,v=u.isXAxis;(v||y||c)&&(e?(s=e.minPointOffset,h=e.pointRangePadding):t(u.series,function(n){var t=y?1:v?n.pointRange:u.axisPointRange||0,a=n.options.pointPlacement,e=n.closestPointRange;t>l&&(t=0);c=r(c,t);u.single||(s=r(s,bi(a)?0:t/2),h=r(h,a==="on"?0:t));!n.noSharedTooltip&&i(e)&&(f=i(f)?o(f,e):e)}),e=u.ordinalSlope&&f?u.ordinalSlope/f:1,u.minPointOffset=s*=e,u.pointRangePadding=h*=e,u.pointRange=o(c,l),v)&&(u.closestPointRange=f);n&&(u.oldTransA=a);u.translationSlope=u.transA=a=u.len/(l+h||1);u.transB=u.horiz?u.left:u.bottom;u.minPixelPadding=a*s},minFromRange:function(){return this.max-this.range},setTickInterval:function(u){var f=this,s=f.chart,e=f.options,v=f.isLog,y=f.isDatetimeAxis,b=f.isXAxis,c=f.isLinked,p=e.maxPadding,w=e.minPadding,h=e.tickInterval,l=e.tickPixelInterval,a=f.categories;y||a||c||this.getTickAmount();c?(f.linkedParent=s[f.coll][e.linkedTo],s=f.linkedParent.getExtremes(),f.min=n(s.min,s.dataMin),f.max=n(s.max,s.dataMax),e.type!==f.linkedParent.options.type&&ii(11,1)):(f.min=n(f.userMin,e.min,f.dataMin),f.max=n(f.userMax,e.max,f.dataMax));v&&(!u&&o(f.min,n(f.dataMin,f.min))<=0&&ii(10,1),f.min=pt(ki(f.min),15),f.max=pt(ki(f.max),15));f.range&&i(f.max)&&(f.userMin=f.min=r(f.min,f.minFromRange()),f.userMax=f.max,f.range=null);f.beforePadding&&f.beforePadding();f.adjustForMinRange();a||f.axisPointRange||f.usePercentage||c||!i(f.min)||!i(f.max)||!(s=f.max-f.min)||(!i(e.min)&&!i(f.userMin)&&w&&(f.dataMin<0||!f.ignoreMinPadding)&&(f.min-=s*w),!i(e.max)&&!i(f.userMax)&&p&&(f.dataMax>0||!f.ignoreMaxPadding)&&(f.max+=s*p));si(e.floor)&&(f.min=r(f.min,e.floor));si(e.ceiling)&&(f.max=o(f.max,e.ceiling));f.tickInterval=f.min===f.max||f.min===void 0||f.max===void 0?1:c&&!h&&l===f.linkedParent.options.tickPixelInterval?h=f.linkedParent.tickInterval:n(h,this.tickAmount?(f.max-f.min)/r(this.tickAmount-1,1):void 0,a?1:(f.max-f.min)*l/r(f.len,l));b&&!u&&t(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&&(f.tickInterval=r(f.pointRange,f.tickInterval));u=n(e.minTickInterval,f.isDatetimeAxis&&f.closestPointRange);!h&&f.tickInterval<u&&(f.tickInterval=u);y||v||h||(f.tickInterval=yu(f.tickInterval,null,vu(f.tickInterval),n(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,r=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,r&&(r=r.apply(this,[this.min,this.max])))&&(this.tickPositions=n=r);this.isLinked||(this.trimTicks(n,e,o),this.min===this.max&&i(this.min)&&!this.tickAmount&&(f=!0,this.min-=.5,this.max+=.5),this.single=f,!u&&!r&&this.adjustTickAmount())},trimTicks:function(n,t,r){var u=n[0],f=n[n.length-1],e=this.minPointOffset||0;t?this.min=u:this.min-e>u&&n.shift();r?this.max=f:this.max+e<f&&n.pop();n.length===0&&i(u)&&n.push((f+u)/2)},getTickAmount:function(){var u={},f,r=this.options,n=r.tickAmount,e=r.tickPixelInterval;!i(r.tickInterval)&&this.len<e&&!this.isRadial&&!this.isLog&&r.startOnTick&&r.endOnTick&&(n=2);n||this.chart.options.chart.alignTicks===!1||r.alignTicks===!1||(t(this.chart[this.coll],function(n){var t=n.options,i=n.horiz,t=[i?t.left:t.top,i?t.width:t.height,t.pane].join(",");u[t]?n.series.length&&(f=!0):u[t]=1}),f&&(n=ci(this.len/e)+1));n<4&&(this.finalTickAmt=n,n=5);this.tickAmount=n},adjustTickAmount:function(){var t=this.tickInterval,n=this.tickPositions,r=this.tickAmount,f=this.finalTickAmt,e=n&&n.length;if(e<r){for(;n.length<r;)n.push(pt(n[n.length-1]+t));this.transA*=(e-1)/(r-1);this.max=n[n.length-1]}else e>r&&(this.tickInterval*=2,this.setTickPositions());if(i(f)){for(t=r=n.length;t--;)(f===3&&t%2==1||f<=2&&t>0&&t<r-1)&&n.splice(t,1);this.finalTickAmt=u}},setScale:function(){var i,n;this.oldMin=this.min;this.oldMax=this.max;this.oldAxisLength=this.len;this.setAxisSize();n=this.len!==this.oldAxisLength;t(this.series,function(n){(n.isDirtyData||n.isDirty||n.xAxis.isDirty)&&(i=!0)});n||i||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax?(this.resetStacks&&this.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty)||(this.isDirty=n||this.min!==this.oldMin||this.max!==this.oldMax):this.cleanStacks&&this.cleanStacks()},setExtremes:function(i,r,u,f,o){var s=this,h=s.chart,u=n(u,!0);t(s.series,function(n){delete n.kdTree});o=e(o,{min:i,max:r});w(s,"setExtremes",o,function(){s.userMin=i;s.userMax=r;s.eventArgs=o;u&&h.redraw(f)})},zoom:function(t,f){var s=this.dataMin,h=this.dataMax,e=this.options,c=o(s,n(e.min,s)),e=r(h,n(e.max,h));return this.allowZoomOutside||(i(s)&&t<=c&&(t=c),i(h)&&f>=e&&(f=e)),this.displayBtn=t!==u||f!==u,this.setExtremes(t,f,!1,u,{trigger:"zoom"}),!0},setAxisSize:function(){var i=this.chart,t=this.options,e=t.offsetLeft||0,s=this.horiz,o=n(t.width,i.plotWidth-e+(t.offsetRight||0)),u=n(t.height,i.plotHeight),f=n(t.top,i.plotTop),t=n(t.left,i.plotLeft+e),e=/%$/;e.test(u)&&(u=parseFloat(u)/100*i.plotHeight);e.test(f)&&(f=parseFloat(f)/100*i.plotHeight+i.plotTop);this.left=t;this.top=f;this.width=o;this.height=u;this.bottom=i.chartHeight-u-f;this.right=i.chartWidth-o-t;this.len=r(s?o:u,0);this.pos=s?t:f},getExtremes:function(){var n=this.isLog;return{min:n?pt(gt(this.min)):this.min,max:n?pt(gt(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(n){var t=this.isLog,i=t?gt(this.min):this.min,t=t?gt(this.max):this.max;return n===null?n=t<0?t:i:i>n?n=i:t<n&&(n=t),this.translate(n,0,1,0,1)},autoLabelAlign:function(t){return t=(n(t,0)-this.side*90+720)%360,t>15&&t<165?"right":t>195&&t<345?"left":"center"},unsquish:function(){var h=this.ticks,r=this.options.labels,w=this.horiz,u=this.tickInterval,f=u,c=this.len/(((this.categories?1:0)+this.max-this.min)/u),l,e=r.rotation,a=this.chart.renderer.fontMetrics(r.style.fontSize,h[0]&&h[0].label),o,v=Number.MAX_VALUE,s,y=function(n){return n/=c||1,n=n>1?ci(n):1,n*u};return w?(s=i(e)?[e]:c<n(r.autoRotationLimit,80)&&!r.staggerLines&&!r.step&&r.autoRotation)&&t(s,function(n){var t;(n===e||n&&n>=-90&&n<=90)&&(o=y(p(a.h/at(kt*n))),t=o+p(n/360),t<v&&(v=t,l=n,f=o))}):r.step||(f=y(a.h)),this.autoRotation=s,this.labelRotation=l,f},renderUnsquish:function(){var i=this.chart,w=i.renderer,e=this.tickPositions,l=this.ticks,u=this.options.labels,p=this.horiz,o=i.margin,y=this.categories?e.length:e.length-1,a=this.slotWidth=p&&!u.step&&!u.rotation&&(this.staggerLines||1)*i.plotWidth/y||!p&&(o[3]&&o[3]-i.spacing[3]||i.chartWidth*.33),n=r(1,f(a-2*(u.padding||5))),h={},o=w.fontMetrics(u.style.fontSize,l[0]&&l[0].label),y=u.style.textOverflow,c,v=0;if(bi(u.rotation)||(h.rotation=u.rotation||0),this.autoRotation)t(e,function(n){(n=l[n])&&n.labelLength>v&&(v=n.labelLength)}),v>n&&v>o.h?h.rotation=this.labelRotation:this.labelRotation=0;else if(a&&(c={width:n+"px"},!y))for(c.textOverflow="clip",a=e.length;!p&&a--;)(n=e[a],n=l[n].label)&&(n.styles.textOverflow==="ellipsis"&&n.css({textOverflow:"clip"}),n.getBBox().height>this.len/e.length-(o.h-o.f))&&(n.specCss={textOverflow:"ellipsis"});h.rotation&&(c={width:(v>i.chartHeight*.5?i.chartHeight*.33:i.chartHeight)+"px"},!y)&&(c.textOverflow="ellipsis");this.labelAlign=h.align=u.align||this.autoLabelAlign(this.labelRotation);t(e,function(n){var t=(n=l[n])&&n.label;t&&(c&&t.css(s(c,t.specCss)),delete t.specCss,t.attr(h),n.rotation=h.rotation)});this.tickRotCorr=w.rotCorr(o.b,this.labelRotation||0,this.side===2)},hasData:function(){return this.hasVisibleSeries||i(this.min)&&i(this.max)&&!!this.tickPositions},getOffset:function(){var u=this,s=u.chart,c=s.renderer,e=u.options,g=u.tickPositions,h=u.ticks,l=u.horiz,o=u.side,nt=s.inverted?[1,0,3,2][o]:o,y,p,tt=0,w,it=0,f=e.title,v=e.labels,a=0,b=s.axisOffset,s=s.clipOffset,k=[-1,1,1,-1][o],d;if(y=u.hasData(),u.showAxis=p=y||n(e.showEmpty,!0),u.staggerLines=u.horiz&&v.staggerLines,u.axisGroup||(u.gridGroup=c.g("grid").attr({zIndex:e.gridZIndex||1}).add(),u.axisGroup=c.g("axis").attr({zIndex:e.zIndex||2}).add(),u.labelGroup=c.g("axis-labels").attr({zIndex:v.zIndex||7}).addClass("highcharts-"+u.coll.toLowerCase()+"-labels").add()),y||u.isLinked)(t(g,function(n){h[n]?h[n].addLabel():h[n]=new ar(u,n)}),u.renderUnsquish(),t(g,function(n){(o===0||o===2||{1:"left",3:"right"}[o]===u.labelAlign)&&(a=r(h[n].getLabelSize(),a))}),u.staggerLines)&&(a*=u.staggerLines,u.labelOffset=a);else for(d in h)h[d].destroy(),delete h[d];f&&f.text&&f.enabled!==!1&&(u.axisTitle||(u.axisTitle=c.text(f.text,0,0,f.useHTML).attr({zIndex:7,rotation:f.rotation||0,align:f.textAlign||{low:"left",middle:"center",high:"right"}[f.align]}).addClass("highcharts-"+this.coll.toLowerCase()+"-title").css(f.style).add(u.axisGroup),u.axisTitle.isNew=!0),p&&(tt=u.axisTitle.getBBox()[l?"height":"width"],w=f.offset,it=i(w)?0:n(f.margin,l?5:10)),u.axisTitle[p?"show":"hide"]());u.offset=k*n(e.offset,b[o]);u.tickRotCorr=u.tickRotCorr||{x:0,y:0};c=o===2?u.tickRotCorr.y:0;l=a+it+(a&&k*(l?n(v.y,u.tickRotCorr.y+8):v.x)-c);u.axisTitleMargin=n(w,l);b[o]=r(b[o],u.axisTitleMargin+tt+k*u.offset,l);e=e.offset?0:ft(e.lineWidth/2)*2;s[nt]=r(s[nt],e)},getLinePath:function(n){var i=this.chart,u=this.opposite,t=this.offset,r=this.horiz,f=this.left+(u?this.width:0)+t,t=i.chartHeight-this.bottom-(u?this.height:0)+t;return u&&(n*=-1),i.renderer.crispLine(["M",r?this.left:f,r?t:this.top,"L",r?i.chartWidth-this.right:f,r?t:i.chartHeight-this.bottom],n)},getTitlePosition:function(){var n=this.horiz,i=this.left,e=this.top,t=this.len,r=this.options.title,u=n?i:e,f=this.opposite,o=this.offset,s=r.x||0,h=r.y||0,c=a(r.style.fontSize||12),t={low:u+(n?0:t),middle:u+t/2,high:u+(n?t:0)}[r.align],i=(n?e+this.height:i)+(n?1:-1)*(f?-1:1)*this.axisTitleMargin+(this.side===2?c:0);return{x:n?t+s:i+(f?this.width:0)+o+s,y:n?i+h-(f?this.height:0)+o:t+h}},render:function(){var n=this,l=n.chart,b=l.renderer,o=n.options,k=n.isLog,d=n.isLinked,s=n.tickPositions,h=n.axisTitle,r=n.ticks,e=n.minorTicks,f=n.alternateBands,g=o.stackLabels,nt=o.alternateGridColor,a=n.tickmarkOffset,v=o.lineWidth,y,tt=l.hasRendered&&i(n.oldMin)&&!isNaN(n.oldMin),it=n.showAxis,rt=b.globalAnimation,p,w;n.labelEdge.length=0;n.overlap=!1;t([r,e,f],function(n){for(var t in n)n[t].isActive=!1});(n.hasData()||d)&&(n.minorTickInterval&&!n.categories&&t(n.getMinorTickPositions(),function(t){e[t]||(e[t]=new ar(n,t,"minor"));tt&&e[t].isNew&&e[t].render(null,!0);e[t].render(null,!1,1)}),s.length&&(t(s,function(t,i){(!d||t>=n.min&&t<=n.max)&&(r[t]||(r[t]=new ar(n,t)),tt&&r[t].isNew&&r[t].render(i,!0,.1),r[t].render(i))}),a&&(n.min===0||n.single))&&(r[-1]||(r[-1]=new ar(n,-1,null,!0)),r[-1].render(-1)),nt&&t(s,function(t,i){i%2==0&&t<n.max&&(f[t]||(f[t]=new c.PlotLineOrBand(n)),p=t+a,w=s[i+1]!==u?s[i+1]+a:n.max,f[t].options={from:k?gt(p):p,to:k?gt(w):w,color:nt},f[t].render(),f[t].isActive=!0)}),n._addedPlotLB||(t((o.plotLines||[]).concat(o.plotBands||[]),function(t){n.addPlotBandOrLine(t)}),n._addedPlotLB=!0));t([r,e,f],function(n){var t,i,r=[],u=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));n===f||!l.hasRendered||!u?e():u&&setTimeout(e,u)});v&&(y=n.getLinePath(v),n.axisLine?n.axisLine.animate({d:y}):n.axisLine=b.path(y).attr({stroke:o.lineColor,"stroke-width":v,zIndex:7}).add(n.axisGroup),n.axisLine[it?"show":"hide"]());h&&it&&(h[h.isNew?"attr":"animate"](n.getTitlePosition()),h.isNew=!1);g&&g.enabled&&n.renderStackTotals();n.isDirty=!1},redraw:function(){this.render();t(this.plotLinesAndBands,function(n){n.render()});t(this.series,function(n){n.isDirty=!0})},destroy:function(n){var i=this,r=i.stacks,u,f=i.plotLinesAndBands;n||ht(i);for(u in r)hr(r[u]),r[u]=null;for(t([i.ticks,i.minorTicks,i.alternateBands],function(n){hr(n)}),n=f.length;n--;)f[n].destroy();t("stackTotalGroup,axisLine,axisTitle,axisGroup,cross,gridGroup,labelGroup".split(","),function(n){i[n]&&(i[n]=i[n].destroy())});this.cross&&this.cross.destroy()},drawCrosshair:function(t,r){var f,e=this.crosshair,u=e.animation;!this.crosshair||(i(r)||!n(this.crosshair.snap,!0))===!1||r&&r.series&&r.series[this.coll]!==this?this.hideCrosshair():(n(e.snap,!0)?i(r)&&(f=this.isXAxis?r.plotX:this.len-r.plotY):f=this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos,f=this.isRadial?this.getPlotLinePath(this.isXAxis?r.x:n(r.stackY,r.y))||null:this.getPlotLinePath(null,null,null,null,f)||null,f===null)?this.hideCrosshair():this.cross?this.cross.attr({visibility:"visible"})[u?"animate":"attr"]({d:f},u):(u=this.categories&&!this.isRadial,u={"stroke-width":e.width||(u?this.transA:1),stroke:e.color||(u?"rgba(155,200,255,0.2)":"#C0C0C0"),zIndex:e.zIndex||2},e.dashStyle&&(u.dashstyle=e.dashStyle),this.cross=this.chart.renderer.path(f).attr(u).add())},hideCrosshair:function(){this.cross&&this.cross.hide()}},e(bt.prototype,{getPlotBandPath:function(n,t){var i=this.getPlotLinePath(t,null,null,!0),r=this.getPlotLinePath(n,null,null,!0);return r&&i&&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 c.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,i=r.length;i--;)r[i].id===n&&r[i].destroy();t([u.plotLines||[],f.plotLines||[],u.plotBands||[],f.plotBands||[]],function(t){for(i=t.length;i--;)t[i].id===n&&ni(t,t[i])})}}),bt.prototype.getTimeTicks=function(r,u,f,o){var a=[],y={},p=rt.global.useUTC,l,s=new pi(u-wr(u)),h=r.unitRange,c=r.count;if(i(u)){s[vf](h>=v.second?0:c*ft(s.getMilliseconds()/c));h>=v.second&&s[yf](h>=v.minute?0:c*ft(s.getSeconds()/c));h>=v.minute&&s[pf](h>=v.hour?0:c*ft(s[du]()/c));h>=v.hour&&s[wf](h>=v.day?0:c*ft(s[gu]()/c));h>=v.day&&s[tf](h>=v.month?1:c*ft(s[gr]()/c));h>=v.month&&(s[rf](h>=v.year?0:c*ft(s[nu]()/c)),l=s[tu]());h>=v.year&&(l-=l%c,s[uf](l));h===v.week&&s[tf](s[gr]()-s[nf]()+n(o,1));u=1;(ku||su)&&(s=s.getTime(),s=new pi(s+wr(s)));l=s[tu]();for(var o=s.getTime(),w=s[nu](),b=s[gr](),k=(v.day+(p?wr(s):s.getTimezoneOffset()*6e4))%v.day;o<f;)a.push(o),h===v.year?o=ou(l+u*c,0):h===v.month?o=ou(l,w+u*c):!p&&(h===v.day||h===v.week)?o=ou(l,w,b+u*c*(h===v.day?1:7)):o+=h*c,u++;a.push(o);t(cu(a,function(n){return h<=v.hour&&n%v.day===k}),function(n){y[n]="day"})}return a.info=e(r,{higherRanks:y,totalRange:h*c}),a},bt.prototype.normalizeTimeTickInterval=function(n,t){for(var i=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]],u=i[i.length-1],f=v[u[0]],o=u[1],e=0;e<i.length;e++)if(u=i[e],f=v[u[0]],o=u[1],i[e+1]&&n<=(f*o[o.length-1]+v[i[e+1][0]])/2)break;return f===v.year&&n<5*f&&(o=[1,2,5]),i=yu(n/f,o,u[0]==="year"?r(vu(n/f),1):1),{unitRange:f,count:i,unitName:u[0]}},bt.prototype.getLogTickPositions=function(t,i,r,e){var s=this.options,o=this.len,c=[],l,y,a,h,v;if(e||(this._minorAutoInterval=null),t>=.5)t=f(t),c=this.getLinearTickPositions(t,i,r);else if(t>=.08)for(o=ft(i),s=t>.3?[1,2,4]:t>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];o<r+1&&!v;o++)for(y=s.length,l=0;l<y&&!v;l++)a=ki(gt(o)*s[l]),a>i&&(!e||h<=r)&&h!==u&&c.push(h),h>r&&(v=!0),h=a;else(i=gt(i),r=gt(r),t=s[e?"minorTickInterval":"tickInterval"],t=n(t==="auto"?null:t,this._minorAutoInterval,(r-i)*(s.tickPixelInterval/(e?5:1))/((e?o/this.tickPositions.length:o)||1)),t=yu(t,null,vu(t)),c=pr(this.getLinearTickPositions(t,i,r),ki),e)||(this._minorAutoInterval=t/5);return e||(this.tickInterval=t),c},ff=c.Tooltip=function(){this.init.apply(this,arguments)},ff.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});wt||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 f=this,o=f.now,s=f.options.animation!==!1&&!f.isHidden&&(p(n-o.x)>1||p(t-o.y)>1),h=f.followPointer||f.len>1;e(o,{x:s?(2*o.x+n)/3:n,y:s?(o.y+t)/2:t,anchorX:h?u:s?(2*o.anchorX+i)/3:i,anchorY:h?u:s?(o.anchorY+r)/2:r});f.label.attr(o);s&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){f&&f.move(n,t,i,r)},32))},hide:function(t){var i=this;clearTimeout(this.hideTimer);this.isHidden||(this.hideTimer=setTimeout(function(){i.label.fadeOut();i.isHidden=!0},n(t,this.options.hideDelay,500)))},getAnchor:function(n,i){var e,r=this.chart,o=r.inverted,c=r.plotTop,v=r.plotLeft,s=0,h=0,l,a,n=hi(n);return e=n[0].tooltipPos,this.followPointer&&i&&(i.chartX===u&&(i=r.pointer.normalize(i)),e=[i.chartX-r.plotLeft,i.chartY-c]),e||(t(n,function(n){l=n.series.yAxis;a=n.series.xAxis;s+=n.plotX+(!o&&a?a.left-v:0);h+=(n.plotLow?(n.plotLow+n.plotHigh)/2:n.plotY)+(!o&&l?l.top-c:0)}),s/=n.length,h/=n.length,e=[o?r.plotWidth-h:s,this.shared&&!o&&n.length>1&&i?i.chartY-c:o?r.plotHeight-s:h]),pr(e,f)},getPosition:function(t,i,u){var f=this.chart,s=this.distance,e={},h=u.h||0,c,l=["y",f.chartHeight,i,u.plotY+f.plotTop,f.plotTop,f.plotTop+f.plotHeight],a=["x",f.chartWidth,t,u.plotX+f.plotLeft,f.plotLeft,f.plotLeft+f.plotWidth],p=n(u.ttBelow,f.inverted&&!u.negative||!f.inverted&&u.negative),w=function(n,t,i,u,f,c){var a=i<u-s,v=u+s+i<t,l=u-s-i;if(u+=s,p&&v)e[n]=u;else if(!p&&a)e[n]=l;else if(a)e[n]=o(c-i,l-h<0?l:l-h);else if(v)e[n]=r(f,u+h+i>t?u:u+h);else return!1},b=function(n,t,i,r){if(r<s||r>t-s)return!1;e[n]=r<i/2?1:r>t-i/2?t-i-2:r-i/2},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||hi(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(i,r){var e=this.chart,o=this.label,v=this.options,h,c,s,u={},f,l=[],a,y;f=v.formatter||this.defaultFormatter;u=e.hoverPoints;y=this.shared;clearTimeout(this.hideTimer);this.followPointer=hi(i)[0].series.tooltipOptions.followPointer;s=this.getAnchor(i,r);h=s[0];c=s[1];y&&(!i.series||!i.series.noSharedTooltip)?(e.hoverPoints=i,u&&t(u,function(n){n.setState()}),t(i,function(n){n.setState("hover");l.push(n.getLabelConfig())}),u={x:i[0].category,y:i[0].y},u.points=l,this.len=l.length,i=i[0]):u=i.getLabelConfig();f=f.call(u,this);u=i.series;this.distance=n(u.tooltipOptions.distance,16);f===!1?this.hide():(this.isHidden&&(au(o),o.attr("opacity",1).show()),o.attr({text:f}),a=v.borderColor||i.color||u.color||"#606060",o.attr({stroke:a}),this.updatePosition({plotX:h,plotY:c,negative:i.negative,ttBelow:i.ttBelow,h:s[2]||0}),this.isHidden=!1);w(e,"tooltipRefresh",{text:f,x:h+e.plotLeft,y:c+e.plotTop,borderColor:a})},updatePosition:function(n){var i=this.chart,t=this.label,t=(this.options.positioner||this.getPosition).call(this,t.width,t.height,n);this.move(f(t.x),f(t.y||0),n.plotX+i.plotLeft,n.plotY+i.plotTop)},getXDateFormat:function(n,t,i){var u,t=t.dateTimeLabelFormats,f=i&&i.closestPointRange,r,e={millisecond:15,second:12,minute:9,hour:6,day:3},o,s="millisecond";if(f){o=vr("%m-%d %H:%M:%S.%L",n.x);for(r in v){if(f===v.week&&+vr("%w",n.x)===i.options.startOfWeek&&o.substr(6)==="00:00:00.000"){r="week";break}else if(v[r]>f){r=s;break}else if(e[r]&&o.substr(e[r])!=="01-01 00:00:00.000".substr(e[r]))break;r!=="week"&&(s=r)}r&&(u=t[r])}else u=t.day;return u||t.year},tooltipFooterHeaderFormatter:function(n,t){var i=t?"footer":"header",u=n.series,f=u.tooltipOptions,r=f.xDateFormat,e=u.xAxis,o=e&&e.options.type==="datetime"&&si(n.key),i=f[i+"Format"];return o&&!r&&(r=this.getXDateFormat(n,f,e)),o&&r&&(i=i.replace("{point.key}","{point.key:"+r+"}")),rr(i,{point:n,series:u})},bodyFormatter:function(n){return pr(n,function(n){var t=n.series.tooltipOptions;return(t.pointFormatter||n.point.tooltipFormatter).call(n.point,t.pointFormat)})}},kr=h.documentElement.ontouchstart!==u,or=c.Pointer=function(n,t){this.init(n,t)},or.prototype={init:function(t,i){var r=i.chart,e=r.events,u=wt?"":r.zoomType,r=t.inverted,f;this.options=i;this.chart=t;this.zoomX=f=/x/.test(u);this.zoomY=u=/y/.test(u);this.zoomHor=f&&!r||u&&r;this.zoomVert=u&&!r||f&&r;this.hasZoom=f||u;this.runChartClick=e&&!!e.click;this.pinchDown=[];this.lastValidTouch={};c.Tooltip&&i.tooltip.enabled&&(t.tooltip=new ff(t,i.tooltip),this.followTouchMove=n(i.tooltip.followTouchMove,!0));this.setDOMEvents()},normalize:function(n,t){var o,i,n=n||window.event,n=re(n);return n.target||(n.target=n.srcElement),i=n.touches?n.touches.length?n.touches.item(0):n.changedTouches[0]:n,t||(this.chartPosition=t=ie(this.chart.container)),i.pageX===u?(o=r(n.x,n.clientX-t.left),i=n.y):(o=i.pageX-t.left,i=i.pageY-t.top),e(n,{chartX:f(o),chartY:f(i)})},getCoordinates:function(n){var i={xAxis:[],yAxis:[]};return t(this.chart.axes,function(t){i[t.isXAxis?"xAxis":"yAxis"].push({axis:t,value:t.toValue(n[t.horiz?"chartX":"chartY"])})}),i},runPointActions:function(i){var c=this.chart,f=c.series,r=c.tooltip,l=r?r.shared:!1,a=c.hoverPoint,o=c.hoverSeries,e,y=c.chartWidth,v,p,s=[],u,w;if(!l&&!o)for(e=0;e<f.length;e++)(f[e].directTouch||!f[e].options.stickyTracking)&&(f=[]);if(!l&&o&&o.directTouch&&a?u=a:(t(f,function(t){v=t.noSharedTooltip&&l;p=!l&&t.directTouch;t.visible&&!v&&!p&&n(t.options.enableMouseTracking,!0)&&(w=t.searchPoint(i,!v&&t.kdDimensions===1))&&s.push(w)}),t(s,function(n){n&&typeof n.dist=="number"&&n.dist<y&&(y=n.dist,u=n)})),u&&(u!==this.prevKDPoint||r&&r.isHidden)){if(l&&!u.series.noSharedTooltip){for(e=s.length;e--;)(s[e].clientX!==u.clientX||s[e].series.noSharedTooltip)&&s.splice(e,1);s.length&&r&&r.refresh(s,i);t(s,function(n){n.onMouseOver(i,n!==(o&&o.directTouch&&a||u))})}else if(r&&r.refresh(u,i),!o||!o.directTouch)u.onMouseOver(i);this.prevKDPoint=u}else f=o&&o.tooltipOptions.followPointer,r&&f&&!r.isHidden&&(f=r.getAnchor([{}],i),r.updatePosition({plotX:f[0],plotY:f[1]}));r&&!this._onDocumentMouseMove&&(this._onDocumentMouseMove=function(n){if(st[ei])st[ei].pointer.onDocumentMouseMove(n)},d(h,"mousemove",this._onDocumentMouseMove));t(c.axes,function(t){t.drawCrosshair(i,n(u,a))})},reset:function(i,r){var f=this.chart,l=f.hoverSeries,e=f.hoverPoint,s=f.hoverPoints,o=f.tooltip,c=o&&o.shared?s:e;(i=i&&o&&c)&&hi(c)[0].plotX===u&&(i=!1);i?(o.refresh(c),e&&(e.setState(e.state,!0),t(f.axes,function(t){n(t.options.crosshair&&t.options.crosshair.snap,!0)?t.drawCrosshair(null,e):t.hideCrosshair()}))):(e&&e.onMouseOut(),s&&t(s,function(n){n.setState()}),l&&l.onMouseOut(),o&&o.hide(r),this._onDocumentMouseMove&&(ht(h,"mousemove",this._onDocumentMouseMove),this._onDocumentMouseMove=null),t(f.axes,function(n){n.hideCrosshair()}),this.hoverX=f.hoverPoints=f.hoverPoint=null)},scaleGroups:function(n,i){var r=this.chart,u;t(r.series,function(t){u=n||t.getPlotBox();t.xAxis&&t.xAxis.zoomEnabled&&(t.group.attr(u),t.markerGroup&&(t.markerGroup.attr(u),t.markerGroup.clip(i?r.clipRect:null)),t.dataLabelsGroup&&t.dataLabelsGroup.attr(u))});r.clipRect.attr(i||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 i=this.chart,o=i.options.chart,t=n.chartX,u=n.chartY,v=this.zoomHor,y=this.zoomVert,f=i.plotLeft,e=i.plotTop,c=i.plotWidth,l=i.plotHeight,a,r=this.selectionMarker,s=this.mouseDownX,h=this.mouseDownY,w=o.panKey&&n[o.panKey+"Key"];r&&r.touch||(t<f?t=f:t>f+c&&(t=f+c),u<e?u=e:u>e+l&&(u=e+l),this.hasDragged=Math.sqrt(Math.pow(s-t,2)+Math.pow(h-u,2)),this.hasDragged>10)&&(a=i.isInsidePlot(s-f,h-e),i.hasCartesianSeries&&(this.zoomX||this.zoomY)&&a&&!w&&!r&&(this.selectionMarker=r=i.renderer.rect(f,e,v?1:c,y?1:l,0).attr({fill:o.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add()),r&&v&&(t-=s,r.attr({width:p(t),x:(t>0?0:t)+s})),r&&y&&(t=u-h,r.attr({height:p(t),y:(t>0?0:t)+h})),a&&!r&&o.panning&&i.pan(n,o.panning))},drop:function(n){var v=this,f=this.chart,s=this.hasPinched;if(this.selectionMarker){var h={xAxis:[],yAxis:[],originalEvent:n.originalEvent||n},u=this.selectionMarker,c=u.attr?u.attr("x"):u.x,l=u.attr?u.attr("y"):u.y,p=u.attr?u.attr("width"):u.width,b=u.attr?u.attr("height"):u.height,a;(this.hasDragged||s)&&(t(f.axes,function(t){if(t.zoomEnabled&&i(t.min)&&(s||v[{xAxis:"zoomX",yAxis:"zoomY"}[t.coll]])){var u=t.horiz,f=n.type==="touchend"?t.minPixelPadding:0,e=t.toValue((u?c:l)+f),u=t.toValue((u?c+p:l+b)-f);h[t.coll].push({axis:t,min:o(e,u),max:r(e,u)});a=!0}}),a&&w(f,"selection",h,function(n){f.zoom(e(n,s?{animation:!1}:null))}));this.selectionMarker=this.selectionMarker.destroy();s&&this.scaleGroups()}f&&(y(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){st[ei]&&st[ei].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=st[ei];n&&(n.pointer.reset(),n.pointer.chartPosition=null)},onContainerMouseMove:function(n){var t=this.chart;ei=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=nt(n,"class")){if(i.indexOf(t)!==-1)return!0;if(i.indexOf("highcharts-container")!==-1)return!1}n=n.parentNode}},onTrackerMouseOut:function(n){var t=this.chart.hoverSeries,i=(n=n.relatedTarget||n.toElement)&&n.point&&n.point.series;!t||t.options.stickyTracking||this.inClass(n,"highcharts-tooltip")||i===t||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,"highcharts-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)};d(t,"mouseleave",n.onContainerMouseLeave);dr===1&&d(h,"mouseup",n.onDocumentMouseUp);kr&&(t.ontouchstart=function(t){n.onContainerTouchStart(t)},t.ontouchmove=function(t){n.onContainerTouchMove(t)},dr===1&&d(h,"touchend",n.onDocumentTouchEnd))},destroy:function(){var n;ht(this.chart.container,"mouseleave",this.onContainerMouseLeave);dr||(ht(h,"mouseup",this.onDocumentMouseUp),ht(h,"touchend",this.onDocumentTouchEnd));clearInterval(this.tooltipTimeout);for(n in this)this[n]=null}},e(c.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 a=this.chart,c=n?"x":"y",d=n?"X":"Y",v="chart"+d,rt=n?"width":"height",g=a["plot"+(n?"Left":"Top")],l,nt,s=o||1,tt=a.inverted,y=a.bounds[n?"h":"v"],w=t.length===1,b=t[0][v],h=i[0][v],ut=!w&&t[1][v],k=!w&&i[1][v],it,i=function(){!w&&p(b-ut)>20&&(s=o||p(h-k)/p(b-ut));nt=(g-h)/s+b;l=a["plot"+(n?"Width":"Height")]/s};i();t=nt;t<y.min?(t=y.min,it=!0):t+l>y.max&&(t=y.max-l,it=!0);it?(h-=.8*(h-e[c][0]),w||(k-=.8*(k-e[c][1])),i()):e[c]=[h,k];tt||(f[c]=nt-g,f[rt]=l);f=tt?1/s:s;u[rt]=l;u[c]=t;r[tt?n?"scaleY":"scaleX":"scale"+d]=s;r["translate"+d]=f*g+(h-f*b)},pinch:function(i){var u=this,s=u.chart,f=u.pinchDown,h=i.touches,c=h.length,l=u.lastValidTouch,a=u.hasZoom,v=u.selectionMarker,y={},w=c===1&&(u.inClass(i.target,"highcharts-tracker")&&s.runTrackerClick||u.runChartClick),p={};c>1&&(u.initiated=!0);a&&u.initiated&&!w&&i.preventDefault();pr(h,function(n){return u.normalize(n)});i.type==="touchstart"?(t(h,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],t(s.axes,function(t){if(t.zoomEnabled){var u=s.bounds[t.horiz?"h":"v"],f=t.minPixelPadding,i=t.toPixels(n(t.options.min,t.dataMin)),e=t.toPixels(n(t.options.max,t.dataMax)),h=o(i,e),i=r(i,e);u.min=o(t.pos,h-f);u.max=r(t.pos+t.len,i+f)}}),u.res=!0):f.length&&(v||(u.selectionMarker=v=e({destroy:li,touch:!0},s.plotBox)),u.pinchTranslate(f,h,y,v,p,l),u.hasPinched=a,u.scaleGroups(y,p),!a&&u.followTouchMove&&c===1?this.runPointActions(u.normalize(i)):u.res&&(u.res=!1,this.reset(!1,0)))},touch:function(n,t){var i=this.chart;ei=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){st[ei]&&st[ei].pointer.drop(n)}}),g.PointerEvent||g.MSPointerEvent){var ai={},ef=!!g.PointerEvent,oe=function(){var n,t=[];t.item=function(n){return this[n]};for(n in ai)ai.hasOwnProperty(n)&&t.push({pageX:ai[n].pageX,pageY:ai[n].pageY,target:ai[n].target});return t},of=function(n,t,i,r){n=n.originalEvent||n;(n.pointerType==="touch"||n.pointerType===n.MSPOINTER_TYPE_TOUCH)&&st[ei]&&(r(n),r=st[ei].pointer,r[t]({type:i,target:n.currentTarget,preventDefault:li,touches:oe()}))};e(or.prototype,{onContainerPointerDown:function(n){of(n,"onContainerTouchStart","touchstart",function(n){ai[n.pointerId]={pageX:n.pageX,pageY:n.pageY,target:n.currentTarget}})},onContainerPointerMove:function(n){of(n,"onContainerTouchMove","touchmove",function(n){ai[n.pointerId]={pageX:n.pageX,pageY:n.pageY};ai[n.pointerId].target||(ai[n.pointerId].target=n.currentTarget)})},onDocumentPointerUp:function(n){of(n,"onDocumentTouchEnd","touchend",function(n){delete ai[n.pointerId]})},batchMSEvents:function(n){n(this.chart.container,ef?"pointerdown":"MSPointerDown",this.onContainerPointerDown);n(this.chart.container,ef?"pointermove":"MSPointerMove",this.onContainerPointerMove);n(h,ef?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}});yr(or.prototype,"init",function(n,t,i){n.call(this,t,i);this.hasZoom&&y(t.container,{"-ms-touch-action":ut,"touch-action":ut})});yr(or.prototype,"setDOMEvents",function(n){n.apply(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(d)});yr(or.prototype,"destroy",function(n){this.batchMSEvents(ht);n.call(this)})}iu=c.Legend=function(n,t){this.init(n,t)};iu.prototype={init:function(t,i){var r=this,u=i.itemStyle,f=i.itemMarginTop||0;this.options=i;i.enabled&&(r.itemStyle=u,r.itemHiddenStyle=s(u,i.itemHiddenStyle),r.itemMarginTop=f,r.padding=u=n(i.padding,8),r.initialItemX=u,r.initialItemY=u-5,r.maxItemWidth=0,r.chart=t,r.itemHeight=0,r.symbolWidth=n(i.symbolWidth,16),r.pages=[],r.render(),d(r.chart,"endResize",function(){r.positionCheckboxes()}))},colorizeItem:function(n,t){var f=this.options,r=n.legendItem,c=n.legendLine,e=n.legendSymbol,i=this.itemHiddenStyle.color,f=t?f.itemStyle.color:i,o=t?n.legendColor||n.color||"#CCC":i,i=n.options&&n.options.marker,s={fill:o},h;if(r&&r.css({fill:f,color:f}),c&&c.attr({stroke:o}),e){if(i&&e.isMarker)for(h in s.stroke=o,i=n.convertAttribs(i),i)r=i[h],r!==u&&(s[h]=r);e.attr(s)}},positionItem:function(n){var i=this.options,f=i.symbolPadding,i=!i.rtl,t=n._legendItemPos,r=t[0],t=t[1],u=n.checkbox;(n=n.legendGroup)&&n.element&&n.translate(i?r:this.legendWidth-r-2*f-4,t);u&&(u.x=r,u.y=t)},destroyItem:function(n){var i=n.checkbox;t(["legendItem","legendLine","legendSymbol","legendGroup"],function(t){n[t]&&(n[t]=n[t].destroy())});i&&cr(n.checkbox)},destroy:function(){var n=this.group,t=this.box;t&&(this.box=t.destroy());n&&(this.group=n.destroy())},positionCheckboxes:function(n){var r=this.group.alignAttr,i,u=this.clipHeight||this.legendHeight;r&&(i=r.translateY,t(this.allItems,function(t){var f=t.checkbox,e;f&&(e=i+f.y+(n||0)+3,y(f,{left:r.translateX+t.checkboxOffset+f.x-20+"px",top:e+"px",display:e>i-6&&e<i+u-6?"":ut}))}))},renderTitle:function(){var n=this.padding,t=this.options.title,i=0;t.text&&(this.title||(this.title=this.chart.renderer.label(t.text,n-3,n-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(t.style).add(this.group)),n=this.title.getBBox(),i=n.height,this.offsetWidth=n.width,this.contentGroup.attr({translateY:i}));this.titleHeight=i},setText:function(n){var t=this.options;n.legendItem.attr({text:t.labelFormat?rr(t.labelFormat,n):t.labelFormatter.call(n)})},renderItem:function(t){var w=this.chart,o=w.renderer,i=this.options,l=i.layout==="horizontal",u=this.symbolWidth,e=i.symbolPadding,y=this.itemStyle,b=this.itemHiddenStyle,k=this.padding,d=l?n(i.itemDistance,20):0,g=!i.rtl,nt=i.width,p=i.itemMarginBottom||0,a=this.itemMarginTop,v=this.initialItemX,h=t.legendItem,tt=t.series&&t.series.drawLegendSymbol?t.series:t,c=tt.options,c=this.createCheckboxForItem&&c&&c.showCheckbox,it=i.useHTML;h||(t.legendGroup=o.g("legend-item").attr({zIndex:1}).add(this.scrollGroup),t.legendItem=h=o.text("",g?u+e:-e,this.baseline||0,it).css(s(t.visible?y:b)).attr({align:g?"left":"right",zIndex:2}).add(t.legendGroup),this.baseline||(this.fontMetrics=o.fontMetrics(y.fontSize,h),this.baseline=this.fontMetrics.f+3+a,h.attr("y",this.baseline)),tt.drawLegendSymbol(this,t),this.setItemEvents&&this.setItemEvents(t,h,it,y,b),this.colorizeItem(t,t.visible),c&&this.createCheckboxForItem(t));this.setText(t);o=h.getBBox();u=t.checkboxOffset=i.itemWidth||t.legendItemWidth||u+e+o.width+d+(c?20:0);this.itemHeight=e=f(t.legendItemHeight||o.height);l&&this.itemX-v+u>(nt||w.chartWidth-2*k-v-i.x)&&(this.itemX=v,this.itemY+=a+this.lastLineHeight+p,this.lastLineHeight=0);this.maxItemWidth=r(this.maxItemWidth,u);this.lastItemY=a+this.itemY+p;this.lastLineHeight=r(e,this.lastLineHeight);t._legendItemPos=[this.itemX,this.itemY];l?this.itemX+=u:(this.itemY+=a+e+p,this.lastLineHeight=e);this.offsetWidth=nt||r((l?this.itemX-v-d:u)+k,this.offsetWidth)},getAllItems:function(){var r=[];return t(this.chart.series,function(t){var f=t.options;n(f.showInLegend,i(f.linkedTo)?!1:u,!0)&&(r=r.concat(t.legendItems||(f.legendType==="point"?t.data:t)))}),r},adjustMargins:function(u,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&&t([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/],function(t,h){t.test(s)&&!i(u[h])&&(o[eu[h]]=r(o[eu[h]],o.legend[(h+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][h]*e[h%2?"x":"y"]+n(e.margin,12)+f[h]))})},render:function(){var n=this,a=n.chart,h=a.renderer,s=n.group,f,c,o,i,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();pu(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;t(f,function(t){n.renderItem(t)});o=(u.width||n.offsetWidth)+v;i=n.lastItemY+n.lastLineHeight+n.titleHeight;i=n.handleOverflow(i);i+=v;(l||y)&&(r?o>0&&i>0&&(r[r.isNew?"attr":"animate"](r.crisp({width:o,height:i})),r.isNew=!1):(n.box=r=h.rect(0,0,o,i,u.borderRadius,l||0).attr({stroke:u.borderColor,"stroke-width":l||0,fill:y||ut}).add(s).shadow(u.shadow),r.isNew=!0),r[c?"show":"hide"]());n.legendWidth=o;n.legendHeight=i;t(f,function(t){n.positionItem(t)});c&&s.align(e({width:o,height:i},u),!0,"spacingBox");a.isResizing||this.positionCheckboxes()},handleOverflow:function(i){var e=this,b=this.chart,c=b.renderer,l=this.options,u=l.y,u=b.spacingBox.height+(l.verticalAlign==="top"?-u:u)-this.padding,d=l.maxHeight,a,v=this.clipRect,k=l.navigation,g=n(k.animation,!0),y=k.arrowSize||12,s=this.nav,h=this.pages,p=this.padding,w,nt=this.allItems,tt=function(n){v.attr({height:n});e.contentGroup.div&&(e.contentGroup.div.style.clip="rect("+p+"px,9999px,"+(p+n)+"px,0)")};return l.layout==="horizontal"&&(u/=2),d&&(u=o(u,d)),h.length=0,i>u?(this.clipHeight=a=r(u-20-this.titleHeight-p,0),this.currentPage=n(this.currentPage,1),this.fullHeight=i,t(nt,function(n,t){var i=n._legendItemPos[1],u=f(n.legendItem.getBBox().height),r=h.length;(!r||i-h[r-1]>a&&(w||i)!==h[r-1])&&(h.push(w||i),r++);t===nt.length-1&&i+u-h[r-1]>a&&h.push(i);i!==w&&(w=i)}),v||(v=e.clipRect=c.clipRect(0,p,9999,0),e.contentGroup.clip(v)),tt(a),s||(this.nav=s=c.g().attr({zIndex:1}).add(this.group),this.up=c.symbol("triangle",0,0,y,y).on("click",function(){e.scroll(-1,g)}).add(s),this.pager=c.text("",15,10).css(k.style).add(s),this.down=c.symbol("triangle-down",0,0,y,y).on("click",function(){e.scroll(1,g)}).add(s)),e.scroll(0),i=u):s&&(tt(b.chartHeight),s.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),i},scroll:function(n,t){var r=this.pages,f=r.length,i=this.currentPage+n,s=this.clipHeight,e=this.options.navigation,o=e.activeColor,e=e.inactiveColor,h=this.pager,c=this.padding;i>f&&(i=f);i>0&&(t!==u&&lr(t,this.chart),this.nav.attr({translateX:c,translateY:s+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:i===1?e:o}).css({cursor:i===1?"default":"pointer"}),h.attr({text:i+"/"+f}),this.down.attr({x:18+this.pager.getBBox().width,fill:i===f?e:o}).css({cursor:i===f?"default":"pointer"}),r=-r[i-1]+this.initialItemY,this.scrollGroup.animate({translateY:r}),this.currentPage=i,this.positionCheckboxes(r))}};nr=c.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=n.symbolWidth;var e=this.chart.renderer,o=this.legendGroup,n=n.baseline-f(n.fontMetrics.b*.3),u;t.lineWidth&&(u={"stroke-width":t.lineWidth},t.dashStyle&&(u.dashstyle=t.dashStyle),this.legendLine=e.path(["M",0,n,"L",i,n]).attr(u).add(o));r&&r.enabled!==!1&&(t=r.radius,this.legendSymbol=i=e.symbol(this.symbol,i/2-t,n-t,2*t,2*t).add(o),i.isMarker=!0)}};(/Trident\/7\.0/.test(vi)||ur)&&yr(iu.prototype,"positionItem",function(n,t){var r=this,i=function(){t._legendItemPos&&n.call(r,t)};i();setTimeout(i)});l=c.Chart=function(){this.init.apply(this,arguments)};l.prototype={callbacks:[],init:function(t,i){var f,u=t.series,e,r,o;if(t.series=null,f=s(rt,t),f.series=t.series=u,this.userOptions=t,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=st.length,st.push(r),dr++,u.reflow!==!1&&d(r,"load",function(){r.initReflow()}),e)for(o in e)d(r,o,e[o]);r.xAxis=[];r.yAxis=[];r.animation=wt?!1:n(u.animation,!0);r.pointCount=r.colorCounter=r.symbolCounter=0;r.firstRender()},initSeries:function(n){var t=this.options.chart;return(t=k[n.type||t.type||t.defaultSeriesType])||ii(17,!0),t=new t,t.init(this,n),t},isInsidePlot:function(n,t,i){var r=i?t:n,n=i?n:t;return r>=0&&r<=this.plotWidth&&n>=0&&n<=this.plotHeight},redraw:function(n){var u=this.axes,i=this.series,s=this.pointer,h=this.legend,c=this.isDirtyLegend,f,l,a=this.hasCartesianSeries,o=this.isDirtyBox,v=i.length,r=v,y=this.renderer,p=y.isHidden(),b=[];for(lr(n,this),p&&this.cloneRenderTo(),this.layOutTitles();r--;)if(n=i[r],n.options.stacking&&(f=!0,n.isDirty)){l=!0;break}if(l)for(r=v;r--;)(n=i[r],n.options.stacking)&&(n.isDirty=!0);t(i,function(n){n.isDirty&&n.options.legendType==="point"&&(n.updateTotals&&n.updateTotals(),c=!0)});c&&h.options.enabled&&(h.render(),this.isDirtyLegend=!1);f&&this.getStacks();a&&!this.isResizing&&(this.maxTicks=null,t(u,function(n){n.setScale()}));this.getMargins();a&&(t(u,function(n){n.isDirty&&(o=!0)}),t(u,function(n){var t=n.min+","+n.max;n.extKey!==t&&(n.extKey=t,b.push(function(){w(n,"afterSetExtremes",e(n.eventArgs,n.getExtremes()));delete n.eventArgs}));(o||f)&&n.redraw()}));o&&this.drawChartBox();t(i,function(n){n.isDirty&&n.visible&&(!n.isCartesian||n.xAxis)&&n.redraw()});s&&s.reset(!0);y.draw();w(this,"redraw");p&&this.cloneRenderTo(!0);t(b,function(n){n.call()})},get:function(n){for(var i=this.axes,r=this.series,u,t=0;t<i.length;t++)if(i[t].options.id===n)return i[t];for(t=0;t<r.length;t++)if(r[t].options.id===n)return r[t];for(t=0;t<r.length;t++)for(u=r[t].points||[],i=0;i<u.length;i++)if(u[i].id===n)return u[i];return null},getAxes:function(){var r=this,n=this.options,i=n.xAxis=hi(n.xAxis||{}),n=n.yAxis=hi(n.yAxis||{});t(i,function(n,t){n.index=t;n.isX=!0});t(n,function(n,t){n.index=t});i=i.concat(n);t(i,function(n){new bt(r,n)})},getSelectedPoints:function(){var n=[];return t(this.series,function(t){n=n.concat(cu(t.points||[],function(n){return n.selected}))}),n},getSelectedSeries:function(){return cu(this.series,function(n){return n.selected})},setTitle:function(n,i,r){var e,u=this,f=u.options,o;o=f.title=s(f.title,n);e=f.subtitle=s(f.subtitle,i);f=e;t([["title",n,o],["subtitle",i,f]],function(n){var t=n[0],i=u[t],r=n[1],n=n[2];i&&r&&(u[t]=i=i.destroy());n&&n.text&&!i&&(u[t]=u.renderer.text(n.text,0,0,n.useHTML).attr({align:n.align,"class":"highcharts-"+t,zIndex:n.zIndex||4}).css(n.style).add())});u.layOutTitles(r)},layOutTitles:function(t){var f=0,i=this.title,o=this.subtitle,r=this.options,u=r.title,r=r.subtitle,s=this.renderer,h=this.spacingBox.width-44;!i||(i.css({width:(u.width||h)+"px"}).align(e({y:s.fontMetrics(u.style.fontSize,i).b-3},u),!1,"spacingBox"),u.floating||u.verticalAlign)||(f=i.getBBox().height);o&&(o.css({width:(r.width||h)+"px"}).align(e({y:f+(u.margin-13)+s.fontMetrics(u.style.fontSize,o).b},r),!1,"spacingBox"),!r.floating&&!r.verticalAlign&&(f=ci(f+o.getBBox().height)));i=this.titleOffset!==f;this.titleOffset=f;!this.isDirtyBox&&i&&(this.isDirtyBox=i,this.hasRendered&&n(t,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var t=this.options.chart,u=t.width,t=t.height,f=this.renderToClone||this.renderTo;i(u)||(this.containerWidth=hu(f,"width"));i(t)||(this.containerHeight=hu(f,"height"));this.chartWidth=r(0,u||this.containerWidth||600);this.chartHeight=r(0,n(t,this.containerHeight>19?this.containerHeight:400))},cloneRenderTo:function(n){var t=this.renderToClone,i=this.container;n?t&&(this.renderTo.appendChild(i),cr(t),delete this.renderToClone):(i&&i.parentNode===this.renderTo&&this.renderTo.removeChild(i),this.renderToClone=t=this.renderTo.cloneNode(0),y(t,{position:"absolute",top:"-9999px",display:"block"}),t.style.setProperty&&t.style.setProperty("display","block","important"),h.body.appendChild(t),i&&t.appendChild(i))},getContainer:function(){var n,i=this.options.chart,t,r,u;this.renderTo=n=i.renderTo;u="highcharts-"+wu++;bi(n)&&(this.renderTo=n=h.getElementById(n));n||ii(13,!0);t=a(nt(n,"data-highcharts-chart"));!isNaN(t)&&st[t]&&st[t].hasRendered&&st[t].destroy();nt(n,"data-highcharts-chart",this.index);n.innerHTML="";i.skipClone||n.offsetWidth||this.cloneRenderTo();this.getChartSize();t=this.chartWidth;r=this.chartHeight;this.container=n=lt(fr,{className:"highcharts-container"+(i.className?" "+i.className:""),id:u},e({position:"relative",overflow:"hidden",width:t+"px",height:r+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},i.style),this.renderToClone||n);this._cursor=n.style.cursor;this.renderer=i.forExport?new fi(n,t,r,i.style,!0):new br(n,t,r,i.style);wt&&this.renderer.create(this,n,t,r);this.renderer.chartIndex=this.index},getMargins:function(n){var t=this.spacing,u=this.margin,f=this.titleOffset;this.resetMargins();f&&!i(u[0])&&(this.plotTop=r(this.plotTop,f+this.options.title.margin+t[0]));this.legend.adjustMargins(u,t);this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin);this.extraTopMargin&&(this.plotTop+=this.extraTopMargin);n||this.getAxisMargins()},getAxisMargins:function(){var n=this,r=n.axisOffset=[0,0,0,0],u=n.margin;n.hasCartesianSeries&&t(n.axes,function(n){n.getOffset()});t(eu,function(t,f){i(u[f])||(n[t]+=r[f])});n.setChartSize()},reflow:function(n){var t=this,i=t.options.chart,r=t.renderTo,u=i.width||hu(r,"width"),f=i.height||hu(r,"height"),i=n?n.target:g,r=function(){t.container&&(t.setSize(u,f,!1),t.hasUserSize=null)};!t.hasUserSize&&!t.isPrinting&&u&&f&&(i===g||i===h)&&((u!==t.containerWidth||f!==t.containerHeight)&&(clearTimeout(t.reflowTimeout),n?t.reflowTimeout=setTimeout(r,100):r()),t.containerWidth=u,t.containerHeight=f)},initReflow:function(){var n=this,t=function(t){n.reflow(t)};d(g,"resize",t);d(n,"destroy",function(){ht(g,"resize",t)})},setSize:function(n,u,e){var o=this,h,c,l,a=o.renderer,s=a.globalAnimation;o.isResizing+=1;l=function(){o&&w(o,"endResize",null,function(){o.isResizing-=1})};lr(e,o);o.oldChartHeight=o.chartHeight;o.oldChartWidth=o.chartWidth;i(n)&&(o.chartWidth=h=r(0,f(n)),o.hasUserSize=!!h);i(u)&&(o.chartHeight=c=r(0,f(u)));(s?lu:y)(o.container,{width:h+"px",height:c+"px"},s);o.setChartSize(!0);a.setSize(h,c,e);o.maxTicks=null;t(o.axes,function(n){n.isDirty=!0;n.setScale()});t(o.series,function(n){n.isDirty=!0});o.isDirtyLegend=!0;o.isDirtyBox=!0;o.layOutTitles();o.getMargins();o.redraw(e);o.oldChartHeight=null;w(o,"resize");s===!1?l():setTimeout(l,s&&s.duration||500)},setChartSize:function(n){var e=this.inverted,o=this.renderer,i=this.chartWidth,v=this.chartHeight,y=this.options.chart,u=this.spacing,s=this.clipOffset,l,a,h,c;this.plotLeft=l=f(this.plotLeft);this.plotTop=a=f(this.plotTop);this.plotWidth=h=r(0,f(i-l-this.marginRight));this.plotHeight=c=r(0,f(v-a-this.marginBottom));this.plotSizeX=e?c:h;this.plotSizeY=e?h:c;this.plotBorderWidth=y.plotBorderWidth||0;this.spacingBox=o.spacingBox={x:u[3],y:u[0],width:i-u[3]-u[1],height:v-u[0]-u[2]};this.plotBox=o.plotBox={x:l,y:a,width:h,height:c};i=2*ft(this.plotBorderWidth/2);e=ci(r(i,s[3])/2);o=ci(r(i,s[0])/2);this.clipBox={x:e,y:o,width:ft(this.plotSizeX-r(i,s[1])/2-e),height:r(0,ft(this.plotSizeY-r(i,s[2])/2-o))};n||t(this.axes,function(n){n.setAxisSize();n.setAxisTranslation()})},resetMargins:function(){var i=this;t(eu,function(t,r){i[t]=n(i.margin[r],i.spacing[r])});i.axisOffset=[0,0,0,0];i.clipOffset=[0,0,0,0]},drawChartBox:function(){var n=this.options.chart,r=this.renderer,a=this.chartWidth,v=this.chartHeight,t=this.chartBackground,y=this.plotBackground,c=this.plotBorder,p=this.plotBGImage,u=n.borderWidth||0,w=n.backgroundColor,b=n.plotBackgroundColor,k=n.plotBackgroundImage,f=n.plotBorderWidth||0,i,e=this.plotLeft,o=this.plotTop,s=this.plotWidth,h=this.plotHeight,d=this.plotBox,g=this.clipRect,l=this.clipBox;i=u+(n.shadow?8:0);(u||w)&&(t?t.animate(t.crisp({width:a-i,height:v-i})):(t={fill:w||ut},u&&(t.stroke=n.borderColor,t["stroke-width"]=u),this.chartBackground=r.rect(i/2,i/2,a-i,v-i,n.borderRadius,u).attr(t).addClass("highcharts-background").add().shadow(n.shadow)));b&&(y?y.animate(d):this.plotBackground=r.rect(e,o,s,h,0).attr({fill:b}).add().shadow(n.plotShadow));k&&(p?p.animate(d):this.plotBGImage=r.image(k,e,o,s,h).add());g?g.animate({width:l.width,height:l.height}):this.clipRect=r.clipRect(l);f&&(c?c.animate(c.crisp({x:e,y:o,width:s,height:h,strokeWidth:-f})):this.plotBorder=r.rect(e,o,s,h,0,-f).attr({stroke:n.plotBorderColor,"stroke-width":f,fill:ut,zIndex:1}).add());this.isDirtyBox=!1},propFromSeries:function(){var i=this,u=i.options.chart,n,f=i.options.series,e,r;t(["inverted","angular","polar"],function(t){for(n=k[u.type||u.defaultSeriesType],r=i[t]||u[t]||n&&n.prototype[t],e=f&&f.length;!r&&e--;)(n=k[f[e].type])&&n.prototype[t]&&(r=!0);i[t]=r})},linkSeries:function(){var i=this,r=i.series;t(r,function(n){n.linkedSeries.length=0});t(r,function(t){var r=t.options.linkedTo;bi(r)&&(r=r===":previous"?i.series[t.index-1]:i.get(r))&&(r.linkedSeries.push(t),t.linkedParent=r,t.visible=n(t.options.visible,r.options.visible,t.visible))})},renderSeries:function(){t(this.series,function(n){n.translate();n.render()})},renderLabels:function(){var n=this,i=n.options.labels;i.items&&t(i.items,function(t){var r=e(i.style,t.style),u=a(r.left)+n.plotLeft,f=a(r.top)+n.plotTop+12;delete r.left;delete r.top;n.renderer.text(t.html,u,f).attr({zIndex:2}).css(r).add()})},render:function(){var n=this.axes,o=this.renderer,u=this.options,f,e,i,r;this.setTitle();this.legend=new iu(this,u.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();f=this.plotWidth;e=this.plotHeight-=13;t(n,function(n){n.setScale()});this.getAxisMargins();i=f/this.plotWidth>1.1;r=e/this.plotHeight>1.1;(i||r)&&(this.maxTicks=null,t(n,function(n){(n.horiz&&i||!n.horiz&&r)&&n.setTickInterval(!0)}),this.getMargins());this.drawChartBox();this.hasCartesianSeries&&t(n,function(n){n.render()});this.seriesGroup||(this.seriesGroup=o.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.showCredits(u.credits);this.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,f=n.axes,e=n.series,r=n.container,i,o=r&&r.parentNode;for(w(n,"destroy"),st[n.index]=u,dr--,n.renderTo.removeAttribute("data-highcharts-chart"),ht(n),i=f.length;i--;)f[i]=f[i].destroy();for(i=e.length;i--;)e[i]=e[i].destroy();t("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(t){var i=n[t];i&&i.destroy&&(n[t]=i.destroy())});r&&(r.innerHTML="",ht(r),o&&cr(r));for(i in n)delete n[i]},isReadyToRender:function(){var n=this;return!vt&&g==g.top&&h.readyState!=="complete"||wt&&!g.canvg?(wt?bf.push(function(){n.firstRender()},n.options.global.canvasToolsURL):h.attachEvent("onreadystatechange",function(){h.detachEvent("onreadystatechange",n.firstRender);h.readyState==="complete"&&n.firstRender()}),!1):!0},firstRender:function(){var n=this,i=n.options,r=n.callback;n.isReadyToRender()&&(n.getContainer(),w(n,"init"),n.resetMargins(),n.setChartSize(),n.propFromSeries(),n.getAxes(),t(i.series||[],function(t){n.initSeries(t)}),n.linkSeries(),w(n,"beforeRender"),c.Pointer&&(n.pointer=new or(n,i)),n.render(),n.renderer.draw(),r&&r.apply(n,[n]),t(n.callbacks,function(t){n.index!==u&&t.apply(n,[n])}),w(n,"load"),n.cloneRenderTo(!0))},splashArray:function(t,i){var r=i[t],r=yt(r)?r:[r,r,r,r];return[n(i[t+"Top"],r[0]),n(i[t+"Right"],r[1]),n(i[t+"Bottom"],r[2]),n(i[t+"Left"],r[3])]}};kf=c.CenteredSeriesMixin={getCenter:function(){for(var r=this.options,u=this.chart,e=2*(r.slicedOffset||0),s=u.plotWidth-2*e,u=u.plotHeight-2*e,i=r.center,i=[n(i[0],"50%"),n(i[1],"50%"),r.size||"100%",r.innerSize||0],h=o(s,u),f,t=0;t<4;++t)f=i[t],r=t<2||t===2&&/%$/.test(f),i[t]=(/%$/.test(f)?[s,u,h,i[2]][t]*parseFloat(f)/100:parseFloat(f))+(r?e:0);return i}};wi=function(){};wi.prototype={init:function(n,t,i){return this.series=n,this.color=n.color,this.applyOptions(t,i),this.pointAttr={},n.options.colorByPoint&&(t=n.options.colors||n.chart.options.colors,this.color=this.color||t[n.colorCounter++],n.colorCounter===t.length)&&(n.colorCounter=0),n.chart.pointCount++,this},applyOptions:function(n,t){var i=this.series,r=i.options.pointValKey||i.pointValKey,n=wi.prototype.optionsToObject.call(this,n);return e(this,n),this.options=this.options?e(this.options,n):n,r&&(this.y=this[r]),this.x===u&&i&&(this.x=t===u?i.autoIncrement():t),this},optionsToObject:function(n){var i={},t=this.series,u=t.options.keys,r=u||t.pointArrayMap||["y"],f=r.length,e=0,o=0;if(typeof n=="number"||n===null)i[r[0]]=n;else if(tr(n))for(!u&&n.length>f&&(t=typeof n[0],t==="string"?i.name=n[0]:t==="number"&&(i.x=n[0]),e++);o<f;)i[r[o++]]=n[e++];else typeof n=="object"&&(i=n,n.dataLabels&&(t._hasPointLabels=!0),n.marker&&(t._hasPointMarkers=!0));return i},destroy:function(){var n=this.series.chart,t=n.hoverPoints,i;n.pointCount--;t&&(this.setState(),ni(t,this),!t.length)&&(n.hoverPoints=null);this===n.hoverPoint&&this.onMouseOut();(this.graphic||this.dataLabel)&&(ht(this),this.destroyElements());this.legendItem&&n.legend.destroyItem(this);for(i in this)this[i]=null},destroyElements:function(){for(var i="graphic,dataLabel,dataLabelUpper,group,connector,shadowGroup".split(","),n,t=6;t--;)n=i[t],this[n]&&(this[n]=this[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(i){var u=this.series,r=u.tooltipOptions,o=n(r.valueDecimals,""),f=r.valuePrefix||"",e=r.valueSuffix||"";return t(u.pointArrayMap||["y"],function(n){n="{point."+n;(f||e)&&(i=i.replace(n+"}",f+n+"}"+e));i=i.replace(n+"}",n+":,."+o+"f}")}),rr(i,{point:this,series:this.series})},firePointEvent:function(n,t,i){var r=this,u=this.series.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)}};b=c.Series=function(){};b.prototype={isCartesian:!0,type:"line",pointClass:wi,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(i,r){var u=this,s,f,o=i.series,h=function(t,i){return n(t.options.index,t._i)-n(i.options.index,i._i)};u.chart=i;u.options=r=u.setOptions(r);u.linkedSeries=[];u.bindAxes();e(u,{name:r.name,state:"",pointAttr:{},visible:r.visible!==!1,selected:r.selected===!0});wt&&(r.animation=!1);f=r.events;for(s in f)d(u,s,f[s]);(f&&f.click||r.point&&r.point.events&&r.point.events.click||r.allowPointSelect)&&(i.runTrackerClick=!0);u.getColor();u.getSymbol();t(u.parallelArrays,function(n){u[n+"Data"]=[]});u.setData(r.data,!1);u.isCartesian&&(i.hasCartesianSeries=!0);o.push(u);u._i=o.length-1;pu(o,h);this.yAxis&&pu(this.yAxis.series,h);t(o,function(n,t){n.index=t;n.name=n.name||"Series "+(t+1)})},bindAxes:function(){var n=this,i=n.options,f=n.chart,r;t(n.axisTypes||[],function(e){t(f[e],function(t){r=t.options;(i[e]===r.index||i[e]!==u&&i[e]===r.id||i[e]===u&&r.index===0)&&(t.series.push(n),n[e]=t,t.isDirty=!0)});n[e]||n.optionalAxis===e||ii(18,!0)})},updateParallelArrays:function(n,i){var r=n.series,u=arguments;t(r.parallelArrays,typeof i=="number"?function(t){var u=t==="y"&&r.toYData?r.toYData(n):n[t];r[t+"Data"][i]=u}:function(n){Array.prototype[i].apply(r[n+"Data"],Array.prototype.slice.call(u,2))})},autoIncrement:function(){var t=this.options,i=this.xIncrement,r,u=t.pointIntervalUnit,i=n(i,t.pointStart,0);return this.pointInterval=r=n(this.pointInterval,t.pointInterval,1),(u==="month"||u==="year")&&(t=new pi(i),t=u==="month"?+t[rf](t[nu]()+r):+t[uf](t[tu]()+r),r=t-i),this.xIncrement=i+r,i},getSegments:function(){var i=-1,r=[],u,n=this.points,f=n.length;if(f)if(this.options.connectNulls){for(u=f;u--;)n[u].y===null&&n.splice(u,1);n.length&&(r=[n])}else t(n,function(t,u){t.y===null?(u>i+1&&r.push(n.slice(i+1,u)),i=u):u===f-1&&r.push(n.slice(i+1,u+1))});this.segments=r},setOptions:function(n){var r=this.chart,t=r.options.plotOptions,r=r.userOptions||{},u=r.plotOptions||{},f=t[this.type];return this.userOptions=n,t=s(f,t.series,n),this.tooltipOptions=s(rt.tooltip,rt.plotOptions[this.type].tooltip,r.tooltip,u.series&&u.series.tooltip,u[this.type]&&u[this.type].tooltip,n.tooltip),f.marker===null&&delete t.marker,this.zoneAxis=t.zoneAxis,n=this.zones=(t.zones||[]).slice(),(t.negativeColor||t.negativeFillColor)&&!t.zones&&n.push({value:t[this.zoneAxis+"Threshold"]||t.threshold||0,color:t.negativeColor,fillColor:t.negativeFillColor}),n.length&&i(n[n.length-1].value)&&n.push({color:this.color,fillColor:this.fillColor}),t},getCyclic:function(n,t,r){var u=this.userOptions,f="_"+n+"Index",e=n+"Counter";t||(i(u[f])?t=u[f]:(u[f]=t=this.chart[e]%r.length,this.chart[e]+=1),t=r[t]);this[n]=t},getColor:function(){this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||ct[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:nr.drawLineMarker,setData:function(r,f,e,o){var s=this,l=s.points,b=l&&l.length||0,c,h=s.options,k=s.chart,y=null,a=s.xAxis,v=a&&!!a.categories,d=h.turboThreshold,w=this.xData,p=this.yData,g=(c=s.pointArrayMap)&&c.length,r=r||[];if(c=r.length,f=n(f,!0),o!==!1&&c&&b===c&&!s.cropped&&!s.hasGroupedData&&s.visible)t(r,function(n,t){l[t].update&&l[t].update(n,!1,null,!1)});else{if(s.xIncrement=null,s.pointRange=v?1:h.pointRange,s.colorCounter=0,t(this.parallelArrays,function(n){s[n+"Data"].length=0}),d&&c>d){for(e=0;y===null&&e<c;)y=r[e],e++;if(si(y)){for(v=n(h.pointStart,0),h=n(h.pointInterval,1),e=0;e<c;e++)w[e]=v,p[e]=r[e],v+=h;s.xIncrement=v}else if(tr(y))if(g)for(e=0;e<c;e++)h=r[e],w[e]=h[0],p[e]=h.slice(1,g+1);else for(e=0;e<c;e++)h=r[e],w[e]=h[0],p[e]=h[1];else ii(12)}else for(e=0;e<c;e++)r[e]!==u&&(h={series:s},s.pointClass.prototype.applyOptions.apply(h,[r[e]]),s.updateParallelArrays(h,e),v&&i(h.name))&&(a.names[h.x]=h.name);for(bi(p[0])&&ii(14,!0),s.data=[],s.options.data=r,e=b;e--;)l[e]&&l[e].destroy&&l[e].destroy();a&&(a.minRange=a.userMinRange);s.isDirty=s.isDirtyData=k.isDirtyBox=!0;e=!1}f&&k.redraw(e)},processData:function(n){var t=this.xData,c=this.yData,i=t.length,f,v,e,o,r,l,a,s,h;if(f=0,o=this.xAxis,l=this.options,r=l.cropThreshold,a=this.isCartesian,a&&!this.isDirty&&!o.isDirty&&!this.yAxis.isDirty&&!n)return!1;for(o&&(n=o.getExtremes(),s=n.min,h=n.max),a&&this.sorted&&(!r||i>r||this.forceCrop)&&(t[i-1]<s||t[0]>h?(t=[],c=[]):(t[0]<s||t[i-1]>h)&&(f=this.cropData(this.xData,this.yData,s,h),t=f.xData,c=f.yData,f=f.start,v=!0)),r=t.length-1;r>=0;r--)i=t[r]-t[r-1],i>0&&(e===u||i<e)?e=i:i<0&&this.requireSorting&&ii(15);this.cropped=v;this.cropStart=f;this.processedXData=t;this.processedYData=c;l.pointRange===null&&(this.pointRange=e||1);this.closestPointRange=e},cropData:function(t,i,u,f){for(var h=t.length,o=0,s=h,c=n(this.cropShoulder,1),e=0;e<h;e++)if(t[e]>=u){o=r(0,e-c);break}for(;e<h;e++)if(t[e]>f){s=e+c;break}return{xData:t.slice(o,s),yData:i.slice(o,s),start:o,end:s}},generatePoints:function(){var e=this.options.data,t=this.data,c,o=this.processedXData,v=this.processedYData,l=this.pointClass,s=o.length,a=this.cropStart||0,i,r=this.hasGroupedData,h,f=[],n;for(t||r||(t=[],t.length=e.length,t=this.data=t),n=0;n<s;n++)i=a+n,r?f[n]=(new l).init(this,[o[n]].concat(hi(v[n]))):(t[i]?h=t[i]:e[i]!==u&&(t[i]=h=(new l).init(this,e[i],o[n])),f[n]=h),f[n].index=i;if(t&&(s!==(c=t.length)||r))for(n=0;n<c;n++)(n===a&&!r&&(n+=s),t[n])&&(t[n].destroyElements(),t[n].plotX=u);this.data=t;this.points=f},getExtremes:function(n){var c=this.yAxis,s=this.processedXData,f,o=[],h=0;f=this.xAxis.getExtremes();var l=f.min,a=f.max,r,e,t,i,n=n||this.stackedYData||this.processedYData;for(f=n.length,i=0;i<f;i++)if(e=s[i],t=n[i],r=t!==null&&t!==u&&(!c.isLog||t.length||t>0),e=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||(s[i+1]||e)>=l&&(s[i-1]||e)<=a,r&&e)if(r=t.length)for(;r--;)t[r]!==null&&(o[h++]=t[r]);else o[h++]=t;this.dataMin=sr(o);this.dataMax=di(o)},translate:function(){var h;this.processedXData||this.processData();this.generatePoints();for(var s=this.options,d=s.stacking,a=this.xAxis,w=a.categories,c=this.yAxis,g=this.points,it=g.length,rt=!!this.modifyValue,b=s.pointPlacement,ut=b==="between"||si(b),v=s.threshold,nt=s.startFromThreshold?v:0,l,e,tt,k=Number.MAX_VALUE,s=0;s<it;s++){var t=g[s],y=t.x,f=t.y;e=t.low;h=d&&c.stacks[(this.negStacks&&f<(nt?0:v)?"-":"")+this.stackKey];c.isLog&&f!==null&&f<=0&&(t.y=f=null,ii(10));t.plotX=l=o(r(-1e5,a.translate(y,0,0,0,1,b,this.type==="flags")),1e5);d&&this.visible&&h&&h[y]&&(h=h[y],f=h.points[this.index+","+s],e=f[0],f=f[1],e===nt&&(e=n(v,c.min)),c.isLog&&e<=0&&(e=null),t.total=t.stackTotal=h.total,t.percentage=h.total&&t.y/h.total*100,t.stackY=f,h.setOffset(this.pointXOffset||0,this.barW||0));t.yBottom=i(e)?c.translate(e,0,1,0,1):null;rt&&(f=this.modifyValue(f,t));t.plotY=e=typeof f=="number"&&f!==Infinity?o(r(-1e5,c.translate(f,0,1,0,1)),1e5):u;t.isInside=e!==u&&e>=0&&e<=c.len&&l>=0&&l<=a.len;t.clientX=ut?a.translate(y,0,0,0,1):l;t.negative=t.y<(v||0);t.category=w&&w[t.x]!==u?w[t.x]:t.x;s&&(k=o(k,p(l-tt)));tt=l}this.closestPointRangePx=k;this.getSegments()},setClip:function(n){var t=this.chart,e=t.renderer,o=t.inverted,u=this.clipBox,f=u||t.clipBox,i=this.sharedClipKey||["_sharedClip",n&&n.duration,n&&n.easing,f.height].join(","),r=t[i],s=t[i+"m"];r||(n&&(f.width=0,t[i+"m"]=s=e.clipRect(-99,o?-t.plotLeft:-t.plotTop,99,o?t.chartWidth:t.chartHeight)),t[i]=r=e.clipRect(f));n&&(r.count+=1);this.options.clip!==!1&&(this.group.clip(n||u?r:t.clipRect),this.markerGroup.clip(s),this.sharedClipKey=i);n||(r.count-=1,r.count<=0&&i&&t[i]&&(u||(t[i]=t[i].destroy()),t[i+"m"]&&(t[i+"m"]=t[i+"m"].destroy())))},animate:function(n){var i=this.chart,t=this.options.animation,r;t&&!yt(t)&&(t=ct[this.type].animation);n?this.setClip(t):(r=this.sharedClipKey,(n=i[r])&&n.animate({width:i.plotSizeX},t),i[r+"m"]&&i[r+"m"].animate({width:i.plotSizeX+99},t),this.animate=null)},afterAnimate:function(){this.setClip();w(this,"afterAnimate")},drawPoints:function(){var f,y=this.points,b=this.chart,c,o,l,t,i,a,p,r,h=this.options.marker,k=this.pointAttr[""],s,w,v,d=this.markerGroup,g=n(h.enabled,this.xAxis.isRadial,this.closestPointRangePx>2*h.radius);if(h.enabled!==!1||this._hasPointMarkers)for(l=y.length;l--;)(t=y[l],c=ft(t.plotX),o=t.plotY,r=t.graphic,s=t.marker||{},w=!!t.marker,f=g&&s.enabled===u||s.enabled,v=t.isInside,f&&o!==u&&!isNaN(o)&&t.y!==null)?(f=t.pointAttr[t.selected?"select":""]||k,i=f.r,a=n(s.symbol,this.symbol),p=a.indexOf("url")===0,r)?r[v?"show":"hide"](!0).animate(e({x:c-i,y:o-i},r.symbolName?{width:2*i,height:2*i}:{})):v&&(i>0||p)&&(t.graphic=b.renderer.symbol(a,c-i,o-i,2*i,2*i,w?s:h).attr(f).add(d)):r&&(t.graphic=r.destroy())},convertAttribs:function(t,i,r,u){var e=this.pointAttrToOptions,f,o,s={},t=t||{},i=i||{},r=r||{},u=u||{};for(f in e)o=e[f],s[f]=n(t[o],i[f],r[f],u[f]);return s},getAttribs:function(){var o=this,a=o.options,r=ct[o.type].marker?a.marker:a,c=r.states,u=c.hover,s,l=o.color,y=o.options.negativeColor,b,k,v,d,g;s={stroke:l,fill:l};var p=o.points||[],f,n,h=[],w=o.pointAttrToOptions;if(f=o.hasPointSpecificOptions,b=r.lineColor,k=r.fillColor,n=a.turboThreshold,v=o.zones,d=o.zoneAxis||"y",a.marker?(u.radius=u.radius||r.radius+u.radiusPlus,u.lineWidth=u.lineWidth||r.lineWidth+u.lineWidthPlus):(u.color=u.color||ui(u.color||l).brighten(u.brightness).get(),u.negativeColor=u.negativeColor||ui(u.negativeColor||y).brighten(u.brightness).get()),h[""]=o.convertAttribs(r,s),t(["hover","select"],function(n){h[n]=o.convertAttribs(c[n],h[""])}),o.pointAttr=h,l=p.length,!n||l<n||f)for(;l--;){if(n=p[l],(r=n.options&&n.options.marker||n.options)&&r.enabled===!1&&(r.radius=0),v.length){for(f=0,s=v[f];n[d]>=s.value;)s=v[++f];s.color&&(n.color=n.fillColor=s.color)}if(f=a.colorByPoint||n.color,n.options)for(g in w)i(r[w[g]])&&(f=!0);f?(r=r||{},f=[],c=r.states||{},s=c.hover=c.hover||{},a.marker||(s.color=s.color||!n.options.color&&u[n.negative&&y?"negativeColor":"color"]||ui(n.color).brighten(s.brightness||u.brightness).get()),s={color:n.color},k||(s.fillColor=n.color),b||(s.lineColor=n.color),r.hasOwnProperty("color")&&!r.color&&delete r.color,f[""]=o.convertAttribs(e(s,r),h[""]),f.hover=o.convertAttribs(c.hover,h.hover,f[""]),f.select=o.convertAttribs(c.select,h.select,f[""])):f=h;n.pointAttr=f}},destroy:function(){var n=this,f=n.chart,s=/AppleWebKit\/533/.test(vi),r,o=n.data||[],e,i,u;for(w(n,"destroy"),ht(n),t(n.axisTypes||[],function(t){(u=n[t])&&(ni(u.series,n),u.isDirty=u.forceRedraw=!0)}),n.legendItem&&n.chart.legend.destroyItem(n),r=o.length;r--;)(e=o[r])&&e.destroy&&e.destroy();n.points=null;clearTimeout(n.animationTimeout);for(i in n)n[i]instanceof tt&&!n[i].survive&&(r=s&&i==="group"?"hide":"destroy",n[i][r]());f.hoverSeries===n&&(f.hoverSeries=null);ni(f.series,n);for(i in n)delete n[i]},getSegmentPath:function(n){var r=this,i=[],u=r.options.step;return t(n,function(t,f){var o=t.plotX,s=t.plotY,e;r.getPointSpline?i.push.apply(i,r.getPointSpline(n,t,f)):(i.push(f?"L":"M"),u&&f&&(e=n[f-1],u==="right"?i.push(e.plotX,s):u==="center"?i.push((e.plotX+o)/2,e.plotY,(e.plotX+o)/2,s):i.push(o,e.plotY)),i.push(t.plotX,t.plotY))}),i},getGraphPath:function(){var n=this,i=[],r,u=[];return t(n.segments,function(t){r=n.getSegmentPath(t);t.length>1?i=i.concat(r):u.push(t[0])}),n.singlePoints=u,n.graphPath=i},drawGraph:function(){var i=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||ut;t(this.zones,function(t,r){u.push(["zoneGraph"+r,t.color||i.color,t.dashStyle||n.dashStyle])});t(u,function(t,u){var h=t[0],s=i[h];s?s.animate({d:r}):(f||e)&&r.length&&(s={stroke:t[1],"stroke-width":f,fill:e,zIndex:1},t[2]?s.dashstyle=t[2]:o&&(s["stroke-linecap"]=s["stroke-linejoin"]="round"),i[h]=i.chart.renderer.path(r).attr(s).add(i.group).shadow(u<2&&n.shadow))})},applyZones:function(){var g=this,i=this.chart,nt=i.renderer,tt=this.zones,h,c,l=this.clips||[],e,v=this.graph,y=this.area,p=r(i.chartWidth,i.chartHeight),s=this[(this.zoneAxis||"y")+"Axis"],a,it=s.reversed,rt=i.inverted,w=s.horiz,d,b,k,ut=!1;tt.length&&(v||y)&&s.min!==u&&(v&&v.hide(),y&&y.hide(),a=s.getExtremes(),t(tt,function(t,u){h=it?w?i.plotWidth:0:w?0:s.toPixels(a.min);h=o(r(n(c,h),0),p);c=o(r(f(s.toPixels(n(t.value,a.max),!0)),0),p);ut&&(h=c=s.toPixels(a.max));d=Math.abs(h-c);b=o(h,c);k=r(h,c);s.isXAxis?(e={x:rt?k:b,y:0,width:d,height:p},w)||(e.x=i.plotHeight-e.x):(e={x:0,y:rt?k:b,width:p,height:d},w)&&(e.y=i.plotWidth-e.y);i.inverted&&nt.isVML&&(e=s.isXAxis?{x:0,y:it?b:k,height:e.width,width:i.chartWidth}:{x:e.y-i.plotLeft-i.spacingBox.x,y:0,width:e.height,height:i.chartHeight});l[u]?l[u].animate(e):(l[u]=nt.clipRect(e),v&&g["zoneGraph"+u].clip(l[u]),y&&g["zoneArea"+u].clip(l[u]));ut=t.value>a.max}),this.clips=l)},invertGroups:function(){function i(){var i={width:n.yAxis.len,height:n.xAxis.len};t(["group","markerGroup"],function(t){n[t]&&n[t].attr(i).invert()})}var n=this,r=n.chart;n.xAxis&&(d(r,"resize",i),d(n,"destroy",function(){ht(r,"resize",i)}),i(),n.invertGroups=i)},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[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 i=this,r=i.chart,u,e=i.options,f=(u=e.animation)&&!!i.animate&&r.renderer.isSVG&&n(u.duration,500)||0,o=i.visible?"visible":"hidden",s=e.zIndex,h=i.hasRendered,c=r.seriesGroup;u=i.plotGroup("group","series",o,s,c);i.markerGroup=i.plotGroup("markerGroup","markers",o,s,c);f&&i.animate(!0);i.getAttribs();u.inverted=i.isCartesian?r.inverted:!1;i.drawGraph&&(i.drawGraph(),i.applyZones());t(i.points,function(n){n.redraw&&n.redraw()});i.drawDataLabels&&i.drawDataLabels();i.visible&&i.drawPoints();i.drawTracker&&i.options.enableMouseTracking!==!1&&i.drawTracker();r.inverted&&i.invertGroups();e.clip===!1||i.sharedClipKey||h||u.clip(r.clipRect);f&&i.animate();h||(f?i.animationTimeout=setTimeout(function(){i.afterAnimate()},f):i.afterAnimate());i.isDirty=i.isDirtyData=!1;i.hasRendered=!0},redraw:function(){var t=this.chart,r=this.isDirtyData,e=this.isDirty,i=this.group,u=this.xAxis,f=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:n(u&&u.left,t.plotLeft),translateY:n(f&&f.top,t.plotTop)}));this.translate();this.render();r&&w(this,"updatedData");(e||r)&&delete this.kdTree},kdDimensions:1,kdAxisArray:["clientX","plotY"],searchPoint:function(n,t){var i=this.xAxis,r=this.yAxis,u=this.chart.inverted;return this.searchKDTree({clientX:u?i.len-n.chartY+i.pos:n.chartX-i.pos,plotY:u?r.len-n.chartX+r.pos:n.chartY-r.pos},t)},buildKDTree:function(){function t(i,r,u){var e,f;if(f=i&&i.length)return e=n.kdAxisArray[r%u],i.sort(function(n,t){return n[e]-t[e]}),f=Math.floor(f/2),{point:i[f],left:t(i.slice(0,f),r+1,u),right:t(i.slice(f+1),r+1,u)}}function i(){var i=cu(n.points||[],function(n){return n.y!==null});n.kdTree=t(i,r,r)}var n=this,r=n.kdDimensions;delete n.kdTree;n.options.kdSync?i():setTimeout(i)},searchKDTree:function(n,t){function e(n,t,s,h){var l=t.point,a=o.kdAxisArray[s%h],c,v,y=l;return v=i(n[u])&&i(l[u])?Math.pow(n[u]-l[u],2):null,c=i(n[f])&&i(l[f])?Math.pow(n[f]-l[f],2):null,c=(v||0)+(c||0),l.dist=i(c)?Math.sqrt(c):Number.MAX_VALUE,l.distX=i(v)?Math.sqrt(v):Number.MAX_VALUE,a=n[a]-l[a],c=a<0?"left":"right",v=a<0?"right":"left",t[c]&&(c=e(n,t[c],s+1,h),y=c[r]<y[r]?c:l),t[v]&&Math.sqrt(a*a)<y[r]&&(n=e(n,t[v],s+1,h),y=n[r]<y[r]?n:y),y}var o=this,u=this.kdAxisArray[0],f=this.kdAxisArray[1],r=t?"distX":"dist";return this.kdTree||this.buildKDTree(),this.kdTree?e(n,this.kdTree,this.kdDimensions,this.kdDimensions):void 0}};hf.prototype={destroy:function(){hr(this,this.axis)},render:function(n){var t=this.options,i=t.format,i=i?rr(i,this):t.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):this.label=this.axis.chart.renderer.text(i,null,null,t.useHTML).css(t.style).attr({align:this.textAlign,rotation:t.rotation,visibility:"hidden"}).add(n)},setOffset:function(n,t){var i=this.axis,e=i.chart,u=e.inverted,r=i.reversed,r=this.isNegative&&!r||!this.isNegative&&r,f=i.translate(i.usePercentage?100:this.total,0,0,0,1),i=i.translate(0),i=p(f-i),s=e.xAxis[0].translate(this.x)+n,o=e.plotHeight,r={x:u?r?f:f-i:s,y:u?o-s-t:r?o-f-i:o-f,width:u?i:t,height:u?t:i};(u=this.label)&&(u.align(this.alignOptions,null,r),r=u.alignAttr,u[this.options.crop===!1||e.isInsidePlot(r.x,r.y)?"show":"hide"](!0))}};l.prototype.getStacks=function(){var i=this;t(i.yAxis,function(n){n.stacks&&n.hasVisibleSeries&&(n.oldStacks=n.stacks)});t(i.series,function(t){t.options.stacking&&(t.visible===!0||i.options.chart.ignoreHiddenSeries===!1)&&(t.stackKey=t.type+n(t.options.stack,""))})};bt.prototype.buildStacks=function(){var i=this.series,r=n(this.options.reversedStacks,!0),t=i.length;if(!this.isXAxis){for(this.usePercentage=!1;t--;)i[r?t:i.length-t-1].setStackedPoints();if(this.usePercentage)for(t=0;t<i.length;t++)i[t].setPercentStacks()}};bt.prototype.renderStackTotals=function(){var n=this.chart,f=n.renderer,i=this.stacks,r,u,t=this.stackTotalGroup;t||(this.stackTotalGroup=t=f.g("stack-labels").attr({visibility:"visible",zIndex:6}).add());t.translate(n.plotLeft,n.plotTop);for(r in i)for(u in n=i[r],n)n[u].render(t)};bt.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)};bt.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}};b.prototype.setStackedPoints=function(){if(this.options.stacking&&!(this.visible!==!0&&this.chart.options.chart.ignoreHiddenSeries!==!1)){var g=this.processedXData,y=this.processedYData,w=[],nt=y.length,o=this.options,b=o.threshold,c=o.startFromThreshold?b:0,tt=o.stack,o=o.stacking,l=this.stackKey,k="-"+l,d=this.negStacks,e=this.yAxis,u=e.stacks,a=e.oldStacks,f,t,v,s,i,h;for(e.stacksTouched+=1,s=0;s<nt;s++)i=g[s],h=y[s],v=this.index+","+s,t=(f=d&&h<(c?0:b))?k:l,u[t]||(u[t]={}),u[t][i]||(a[t]&&a[t][i]?(u[t][i]=a[t][i],u[t][i].total=null):u[t][i]=new hf(e,e.options.stackLabels,f,i,tt)),t=u[t][i],t.points[v]=[n(t.cum,c)],t.touched=e.stacksTouched,o==="percent"?(f=f?l:k,d&&u[f]&&u[f][i]?(f=u[f][i],t.total=f.total=r(f.total,t.total)+p(h)||0):t.total=pt(t.total+(p(h)||0))):t.total=pt(t.total+(h||0)),t.cum=n(t.cum,c)+(h||0),t.points[v].push(t.cum),w[s]=t.cum;o==="percent"&&(e.usePercentage=!0);this.stackedYData=w;e.oldStacks={}}};b.prototype.setPercentStacks=function(){var n=this,i=n.stackKey,r=n.yAxis.stacks,u=n.processedXData;t([i,"-"+i],function(t){for(var o,i,f,e=u.length;e--;)(i=u[e],o=(f=r[t]&&r[t][i])&&f.points[n.index+","+e],i=o)&&(f=f.total?100/f.total:0,i[0]=pt(i[0]*f),i[1]=pt(i[1]*f),n.stackedYData[e]=i[1])})};e(l.prototype,{addSeries:function(t,i,r){var f,u=this;return t&&(i=n(i,!0),w(u,"addSeries",{options:t},function(){f=u.initSeries(t);u.isDirtyLegend=!0;u.linkSeries();i&&u.redraw(r)})),f},addAxis:function(t,i,r,u){var f=i?"xAxis":"yAxis",e=this.options;new bt(this,s(t,{index:this[f].length,isX:i}));e[f]=hi(e[f]||{});e[f].push(t);n(r,!0)&&this.redraw(u)},showLoading:function(n){var t=this,u=t.options,i=t.loadingDiv,r=u.loading,f=function(){i&&y(i,{left:t.plotLeft+"px",top:t.plotTop+"px",width:t.plotWidth+"px",height:t.plotHeight+"px"})};i||(t.loadingDiv=i=lt(fr,{className:"highcharts-loading"},e(r.style,{zIndex:10,display:ut}),t.container),t.loadingSpan=lt("span",null,r.labelStyle,i),d(t,"redraw",f));t.loadingSpan.innerHTML=n||u.lang.loading;t.loadingShown||(y(i,{opacity:0,display:""}),lu(i,{opacity:r.style.opacity},{duration:r.showDuration||0}),t.loadingShown=!0);f()},hideLoading:function(){var t=this.options,n=this.loadingDiv;n&&lu(n,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){y(n,{display:ut})}});this.loadingShown=!1}});e(wi.prototype,{update:function(t,i,r,u){function c(){f.applyOptions(t);f.y===null&&o&&(f.graphic=o.destroy());yt(t)&&!tr(t)&&(f.redraw=function(){o&&o.element&&t&&t.marker&&t.marker.symbol&&(f.graphic=o.destroy());t&&t.dataLabels&&f.dataLabel&&(f.dataLabel=f.dataLabel.destroy());f.redraw=null});s=f.index;e.updateParallelArrays(f,s);a&&f.name&&(a[f.x]=f.name);l.data[s]=f.options;e.isDirty=e.isDirtyData=!0;!e.fixedBox&&e.hasCartesianSeries&&(h.isDirtyBox=!0);l.legendType==="point"&&(h.isDirtyLegend=!0);i&&h.redraw(r)}var f=this,e=f.series,o=f.graphic,s,h=e.chart,l=e.options,a=e.xAxis&&e.xAxis.names,i=n(i,!0);u===!1?c():f.firePointEvent("update",{options:t},c)},remove:function(n,t){this.series.removePoint(er(this,this.series.data),n,t)}});e(b.prototype,{addPoint:function(i,r,u,f){var e=this,a=e.options,c=e.data,h=e.graph,o=e.area,v=e.chart,y=e.xAxis&&e.xAxis.names,w=h&&h.shift||0,s=["graph","area"],h=a.data,p,l=e.xData;if(lr(f,v),u){for(f=e.zones.length;f--;)s.push("zoneGraph"+f,"zoneArea"+f);t(s,function(n){e[n]&&(e[n].shift=w+1)})}if(o&&(o.isArea=!0),r=n(r,!0),o={series:e},e.pointClass.prototype.applyOptions.apply(o,[i]),s=o.x,f=l.length,e.requireSorting&&s<l[f-1])for(p=!0;f&&l[f-1]>s;)f--;e.updateParallelArrays(o,"splice",f,0,0);e.updateParallelArrays(o,f);y&&o.name&&(y[s]=o.name);h.splice(f,0,i);p&&(e.data.splice(f,0,null),e.processData());a.legendType==="point"&&e.generatePoints();u&&(c[0]&&c[0].remove?c[0].remove(!1):(c.shift(),e.updateParallelArrays(o,"shift"),h.shift()));e.isDirty=!0;e.isDirtyData=!0;r&&(e.getAttribs(),v.redraw())},removePoint:function(t,i,r){var u=this,e=u.data,f=e[t],o=u.points,s=u.chart,h=function(){e.length===o.length&&o.splice(t,1);e.splice(t,1);u.options.data.splice(t,1);u.updateParallelArrays(f||{series:u},"splice",t,1);f&&f.destroy();u.isDirty=!0;u.isDirtyData=!0;i&&s.redraw()};lr(r,s);i=n(i,!0);f?f.firePointEvent("remove",null,h):h()},remove:function(t,i){var r=this,u=r.chart,t=n(t,!0);r.isRemoving||(r.isRemoving=!0,w(r,"remove",null,function(){r.destroy();u.isDirtyLegend=u.isDirtyBox=!0;u.linkSeries();t&&u.redraw(i)}));r.isRemoving=!1},update:function(i,r){var o=this,h=this.chart,a=this.userOptions,c=this.type,v=k[c].prototype,f=["group","markerGroup","dataLabelsGroup"],l;(i.type&&i.type!==c||i.zIndex!==void 0)&&(f.length=0);t(f,function(n){f[n]=o[n];delete o[n]});i=s(a,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},i);this.remove(!1);for(l in v)this[l]=u;e(this,k[i.type||c].prototype);t(f,function(n){o[n]=f[n]});this.init(h,i);h.linkSeries();n(r,!0)&&h.redraw(!1)}});e(bt.prototype,{update:function(t,i){var r=this.chart,t=r.options[this.coll][this.options.index]=s(this.userOptions,t);this.destroy(!0);this._addedPlotLB=this.chart._labelPanes=u;this.init(r,e(t,{events:u}));r.isDirtyBox=!0;n(i,!0)&&r.redraw()},remove:function(i){for(var r=this.chart,u=this.coll,f=this.series,e=f.length;e--;)f[e]&&f[e].remove(!1);ni(r.axes,this);ni(r[u],this);r.options[u].splice(this.options.index,1);t(r[u],function(n,t){n.options.index=t});this.destroy();r.isDirtyBox=!0;n(i,!0)&&r.redraw()},setTitle:function(n,t){this.update({title:n},t)},setCategories:function(n,t){this.update({categories:n},t)}});oi=ti(b);k.line=oi;ct.area=s(it,{threshold:0});dt=ti(b,{type:"area",getSegments:function(){var a=this,u=[],r=[],f=[],v=this.xAxis,e=this.yAxis,o=e.stacks[this.stackKey],i={},s,h,c=this.points,y=this.options.connectNulls,n,l;if(this.options.stacking&&!this.cropped){for(n=0;n<c.length;n++)i[c[n].x]=c[n];for(l in o)o[l].total!==null&&f.push(+l);f.sort(function(n,t){return n-t});t(f,function(t){var u=0,f;if(!y||i[t]&&i[t].y!==null)if(i[t])r.push(i[t]);else{for(n=a.index;n<=e.series.length;n++)if(f=o[t].points[n+","+t]){u=f[1];break}s=v.translate(t);h=e.toPixels(u,!0);r.push({y:null,plotX:s,clientX:s,plotY:h,yBottom:h,onMouseOver:li})}});r.length&&u.push(r)}else b.prototype.getSegments.call(this),u=this.segments;this.segments=u},getSegmentPath:function(t){var r=b.prototype.getSegmentPath.call(this,t),u=[].concat(r),i,f=this.options,e,o;if(i=r.length,e=this.yAxis.getThreshold(f.threshold),i===3&&u.push("L",r[1],r[2]),f.stacking&&!this.closedStacks)for(i=t.length-1;i>=0;i--)o=n(t[i].yBottom,e),i<t.length-1&&f.step&&u.push(t[i+1].plotX,o),u.push(t[i].plotX,o);else this.closeSegment(u,t,e);return this.areaPath=this.areaPath.concat(u),r},closeSegment:function(n,t,i){n.push("L",t[t.length-1].plotX,i,"L",t[0].plotX,i)},drawGraph:function(){this.areaPath=[];b.prototype.drawGraph.apply(this);var i=this,u=this.areaPath,r=this.options,f=[["area",this.color,r.fillColor]];t(this.zones,function(n,t){f.push(["zoneArea"+t,n.color||i.color,n.fillColor||r.fillColor])});t(f,function(t){var f=t[0],e=i[f];e?e.animate({d:u}):i[f]=i.chart.renderer.path(u).attr({fill:n(t[2],ui(t[1]).setOpacity(n(r.fillOpacity,.75)).get()),zIndex:0}).add(i.group)})},drawLegendSymbol:nr.drawRectangle});k.area=dt;ct.spline=s(it);oi=ti(b,{type:"spline",getPointSpline:function(n,t,i){var c=t.plotX,u=t.plotY,h=n[i-1],s=n[i+1],a,e,l,f,v;return h&&s&&(n=h.plotY,l=s.plotX,s=s.plotY,a=(1.5*c+h.plotX)/2.5,e=(1.5*u+n)/2.5,l=(1.5*c+l)/2.5,f=(1.5*u+s)/2.5,v=(f-e)*(l-c)/(l-a)+u-f,e+=v,f+=v,e>n&&e>u?(e=r(n,u),f=2*u-e):e<n&&e<u&&(e=o(n,u),f=2*u-e),f>s&&f>u?(f=r(s,u),e=2*u-f):f<s&&f<u&&(f=o(s,u),e=2*u-f),t.rightContX=l,t.rightContY=f),i?(t=["C",h.rightContX||h.plotX,h.rightContY||h.plotY,a||c,e||u,c,u],h.rightContX=h.rightContY=null):t=["M",c,u],t}});k.spline=oi;ct.areaspline=s(ct.area);dt=dt.prototype;oi=ti(oi,{type:"areaspline",closedStacks:!0,getSegmentPath:dt.getSegmentPath,closeSegment:dt.closeSegment,drawGraph:dt.drawGraph,drawLegendSymbol:nr.drawRectangle});k.areaspline=oi;ct.column=s(it,{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},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0});oi=ti(b,{type:"column",pointAttrToOptions:{stroke:"borderColor",fill:"color",r:"borderRadius"},cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){b.prototype.init.apply(this,arguments);var n=this,i=n.chart;i.hasRendered&&t(i.series,function(t){t.type===n.type&&(t.isDirty=!0)})},getColumnMetrics:function(){var r=this,i=r.options,f=r.xAxis,v=r.yAxis,y=f.reversed,s,h={},c,e=0;i.grouping===!1?e=1:t(r.chart.series,function(n){var t=n.options,i=n.yAxis;n.type===r.type&&n.visible&&v.len===i.len&&v.pos===i.pos&&(t.stacking?(s=n.stackKey,h[s]===u&&(h[s]=e++),c=h[s]):t.grouping!==!1&&(c=e++),n.columnIndex=c)});var l=o(p(f.transA)*(f.ordinalSlope||i.pointRange||f.closestPointRange||f.tickInterval||1),f.len),w=l*i.groupPadding,a=(l-2*w)/e,i=o(i.maxPointWidth||f.len,n(i.pointWidth,a*(1-2*i.pointPadding)));return r.columnMetrics={width:i,offset:(a-i)/2+(w+((y?e-(r.columnIndex||0):r.columnIndex)||0)*a-l/2)*(y?-1:1)}},translate:function(){var i=this,s=i.chart,h=i.options,l=i.borderWidth=n(h.borderWidth,i.closestPointRange*i.xAxis.transA<2?0:1),u=i.yAxis,c=i.translatedThreshold=u.getThreshold(h.threshold),e=n(h.minPointLength,5),y=i.getColumnMetrics(),w=y.width,a=i.barW=r(w,1+2*l),d=i.pointXOffset=y.offset,k=-(l%2?.5:0),v=l%2?.5:1;s.inverted&&(c-=.5,s.renderer.isVML&&(v+=1));h.pointPadding&&(a=ci(a));b.prototype.translate.apply(i);t(i.points,function(t){var g=n(t.yBottom,c),b=999+p(g),b=o(r(-b,t.plotY),u.len+b),y=t.plotX+d,nt=a,h=o(b,g),l,tt;l=r(b,g)-h;p(l)<e&&e&&(l=e,tt=!u.reversed&&!t.negative||u.reversed&&t.negative,h=f(p(h-c)>e?g-e:c-(tt?e:0)));t.barX=y;t.pointWidth=w;nt=f(y+nt)+k;y=f(y)+k;nt-=y;g=p(h)<.5;l=o(f(h+l)+v,9e4);h=f(h)+v;l-=h;g&&(h-=1,l+=1);t.tooltipPos=s.inverted?[u.len+u.pos-s.plotLeft-b,i.xAxis.len-y-nt/2,l]:[y+nt/2,b+u.pos-s.plotTop,l];t.shapeType="rect";t.shapeArgs={x:y,y:h,width:nt,height:l}})},getSymbol:li,drawLegendSymbol:nr.drawRectangle,drawGraph:li,drawPoints:function(){var n=this,e=this.chart,r=n.options,h=e.renderer,c=r.animationLimit||250,f,o;t(n.points,function(t){var l=t.plotY,a=t.graphic;l===u||isNaN(l)||t.y===null?a&&(t.graphic=a.destroy()):(f=t.shapeArgs,l=i(n.borderWidth)?{"stroke-width":n.borderWidth}:{},o=t.pointAttr[t.selected?"select":""]||n.pointAttr[""],a?(au(a),a.attr(l)[e.pointCount<c?"animate":"attr"](s(f))):t.graphic=h[t.shapeType](f).attr(l).attr(o).add(n.group).shadow(r.shadow,null,r.stacking&&!r.borderRadius))})},animate:function(n){var i=this.yAxis,f=this.options,u=this.chart.inverted,t={};vt&&(n?(t.scaleY=.001,n=o(i.pos+i.len,r(i.pos,i.toPixels(f.threshold))),u?t.translateX=n-i.len:t.translateY=n,this.group.attr(t)):(t.scaleY=1,t[u?"translateX":"translateY"]=i.pos,this.group.animate(t,this.options.animation),this.animate=null))},remove:function(){var n=this,i=n.chart;i.hasRendered&&t(i.series,function(t){t.type===n.type&&(t.isDirty=!0)});b.prototype.remove.apply(n,arguments)}});k.column=oi;ct.bar=s(ct.column);dt=ti(oi,{type:"bar",inverted:!0});k.bar=dt;ct.scatter=s(it,{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/>"}});dt=ti(b,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,kdDimensions:2,drawGraph:function(){this.options.lineWidth&&b.prototype.drawGraph.call(this)}});k.scatter=dt;ct.pie=s(it,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){if(this.y!==null)return 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}});it={type:"pie",isCartesian:!1,pointClass:ti(wi,{init:function(){wi.prototype.init.apply(this,arguments);var t=this,i;return e(t,{visible:t.visible!==!1,name:n(t.name,"Slice")}),i=function(n){t.slice(n.type==="select")},d(t,"select",i),d(t,"unselect",i),t},setVisible:function(i,r){var f=this,e=f.series,o=e.chart,s=e.options.ignoreHiddenPoint,r=n(r,s);i!==f.visible&&(f.visible=f.options.visible=i=i===u?!f.visible:i,e.options.data[er(f,e.data)]=f.options,t(["graphic","dataLabel","connector","shadowGroup"],function(n){f[n]&&f[n][i?"show":"hide"](!0)}),f.legendItem&&o.legend.colorizeItem(f,i),i||f.state!=="hover"||f.setState(""),s&&(e.isDirty=!0),r&&o.redraw())},slice:function(t,r,u){var f=this.series;lr(u,f.chart);n(r,!0);this.sliced=this.options.sliced=t=i(t)?t:!this.sliced;f.options.data[er(this,f.data)]=this.options;t=t?this.slicedTranslation:{translateX:0,translateY:0};this.graphic.animate(t);this.shadowGroup&&this.shadowGroup.animate(t)},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})}}),requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},animate:function(n){var i=this,u=i.points,r=i.startAngleRad;n||(t(u,function(n){var t=n.graphic,u=n.shapeArgs;t&&(t.attr({r:n.startR||i.center[3]/2,start:r,end:r}),t.animate({r:u.r,start:u.start,end:u.end},i.options.animation))}),i.animate=null)},setData:function(t,i,r,u){b.prototype.setData.call(this,t,!1,r,u);this.processData();this.generatePoints();n(i,!0)&&this.chart.redraw(r)},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(){b.prototype.generatePoints.call(this);this.updateTotals()},translate:function(t){this.generatePoints();var v=0,u=this.options,y=u.slicedOffset,l=y+u.borderWidth,e,s,i,c=u.startAngle||0,p=this.startAngleRad=ri/180*(c-90),c=(this.endAngleRad=ri/180*(n(u.endAngle,c+360)-90))-p,w=this.points,h=u.dataLabels.distance,u=u.ignoreHiddenPoint,a,b=w.length,r;for(t||(this.center=t=this.getCenter()),this.getX=function(n,r){return i=et.asin(o((n-t[1])/(t[2]/2+h),1)),t[0]+(r?-1:1)*ot(i)*(t[2]/2+h)},a=0;a<b;a++)r=w[a],e=p+v*c,(!u||r.visible)&&(v+=r.percentage/100),s=p+v*c,r.shapeType="arc",r.shapeArgs={x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2,start:f(e*1e3)/1e3,end:f(s*1e3)/1e3},i=(s+e)/2,i>1.5*ri?i-=2*ri:i<-ri/2&&(i+=2*ri),r.slicedTranslation={translateX:f(ot(i)*y),translateY:f(at(i)*y)},e=ot(i)*t[2]/2,s=at(i)*t[2]/2,r.tooltipPos=[t[0]+e*.7,t[1]+s*.7],r.half=i<-ri/2||i>ri/2?1:0,r.angle=i,l=o(l,h/2),r.labelPos=[t[0]+e+ot(i)*h,t[1]+s+at(i)*h,t[0]+e+ot(i)*l,t[1]+s+at(i)*l,t[0]+e,t[1]+s,h<0?"center":r.half?"right":"left",i]},drawGraph:null,drawPoints:function(){var n=this,f=n.chart.renderer,r,u,o=n.options.shadow,i,s,h;o&&!n.shadowGroup&&(n.shadowGroup=f.g("shadow").add(n.group));t(n.points,function(t){t.y!==null&&(u=t.graphic,s=t.shapeArgs,i=t.shadowGroup,o&&!i&&(i=t.shadowGroup=f.g("shadow").add(n.shadowGroup)),r=t.sliced?t.slicedTranslation:{translateX:0,translateY:0},i&&i.attr(r),u?u.animate(e(s,r)):(h={"stroke-linejoin":"round"},t.visible||(h.visibility="hidden"),t.graphic=u=f[t.shapeType](s).setRadialReference(n.center).attr(t.pointAttr[t.selected?"select":""]).attr(h).attr(r).add(n.group).shadow(o,i)))})},searchPoint:li,sortByAngle:function(n,t){n.sort(function(n,i){return n.angle!==void 0&&(i.angle-n.angle)*t})},drawLegendSymbol:nr.drawRectangle,getCenter:kf.getCenter,getSymbol:li};it=ti(b,it);k.pie=it;b.prototype.drawDataLabels=function(){var f=this,c=f.options,v=c.cursor,r=c.dataLabels,w=f.points,l,a,y=f.hasRendered||0,o,h,p=f.chart.renderer;(r.enabled||f._hasPointLabels)&&(f.dlProcessOptions&&f.dlProcessOptions(r),h=f.plotGroup("dataLabelsGroup","data-labels",r.defer?"hidden":"visible",r.zIndex||6),n(r.defer,!0)&&(h.attr({opacity:+y}),y||d(f,"afterAnimate",function(){f.visible&&h.show();h[c.animation?"animate":"attr"]({opacity:1},{duration:200})})),a=r,t(w,function(t){var w,y=t.dataLabel,k,d,nt=t.connector,tt=!0,b,g={};if(l=t.dlOptions||t.options&&t.options.dataLabels,w=n(l&&l.enabled,a.enabled),y&&!w)t.dataLabel=y.destroy();else if(w){if(r=s(a,l),b=r.style,w=r.rotation,k=t.getLabelConfig(),o=r.format?rr(r.format,k):r.formatter.call(k,r),b.color=n(r.color,b.color,f.color,"black"),y)i(o)?(y.attr({text:o}),tt=!1):(t.dataLabel=y=y.destroy(),nt)&&(t.connector=nt.destroy());else if(i(o)){y={fill:r.backgroundColor,stroke:r.borderColor,"stroke-width":r.borderWidth,r:r.borderRadius||0,rotation:w,padding:r.padding,zIndex:1};b.color==="contrast"&&(g.color=r.inside||r.distance<0||c.stacking?p.getContrast(t.color||f.color):"#000000");v&&(g.cursor=v);for(d in y)y[d]===u&&delete y[d];y=t.dataLabel=p[w?"text":"label"](o,0,-999,r.shape,null,null,r.useHTML).attr(y).css(e(b,g)).add(h).shadow(r.shadow)}y&&f.alignDataLabel(t,y,r,null,tt)}}))};b.prototype.alignDataLabel=function(t,i,r,u,o){var h=this.chart,s=h.inverted,l=n(t.plotX,-999),a=n(t.plotY,-999),c=i.getBBox(),y=h.renderer.fontMetrics(r.style.fontSize).b,v=this.visible&&(t.series.forceDL||h.isInsidePlot(l,f(a),s)||u&&h.isInsidePlot(l,s?u.x+1:u.y+u.height-1,s));v&&(u=e({x:s?h.plotWidth-a:l,y:f(s?h.plotHeight-l:a),width:0,height:0},u),e(r,{width:c.width,height:c.height}),r.rotation?(t=h.renderer.rotCorr(y,r.rotation),i[o?"attr":"animate"]({x:u.x+r.x+u.width/2+t.x,y:u.y+r.y+u.height/2}).attr({align:r.align})):(i.align(r,null,u),s=i.alignAttr,n(r.overflow,"justify")==="justify"?this.justifyDataLabel(i,r,s,c,u,o):n(r.crop,!0)&&(v=h.isInsidePlot(s.x,s.y)&&h.isInsidePlot(s.x+c.width,s.y+c.height)),r.shape&&i.attr({anchorX:t.plotX,anchorY:t.plotY})));v||(i.attr({y:-999}),i.placed=!1)};b.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))};k.pie&&(k.pie.prototype.drawDataLabels=function(){var a=this,d=a.data,e,st=a.chart,g=a.options.dataLabels,rt=n(g.connectorPadding,10),yt=n(g.connectorWidth,1),pt=st.plotWidth,wt=st.plotHeight,it,ct,dt=n(g.softConnector,!0),tt=g.distance,lt=a.center,ft=lt[2]/2,ht=lt[1],gt=tt>0,v,h,u,bt=[[],[]],y,s,et,ut,i,w=[0,0,0,0],kt=function(n,t){return t.y-n.y},vt,ot;if(a.visible&&(g.enabled||a._hasPointLabels)){for(b.prototype.drawDataLabels.apply(a),t(d,function(n){n.dataLabel&&n.visible&&bt[n.half].push(n)}),ut=2;ut--;){var k=[],at=[],l=bt[ut],nt=l.length,c;if(nt){for(a.sortByAngle(l,ut-.5),i=d=0;!d&&l[i];)d=l[i]&&l[i].dataLabel&&(l[i].dataLabel.getBBox().height||21),i++;if(tt>0){for(h=o(ht+ft+tt,st.plotHeight),i=r(0,ht-ft-tt);i<=h;i+=d)k.push(i);if(h=k.length,nt>h){for(e=[].concat(l),e.sort(kt),i=nt;i--;)e[i].rank=i;for(i=nt;i--;)l[i].rank>=h&&l.splice(i,1);nt=l.length}for(i=0;i<nt;i++){for(e=l[i],u=e.labelPos,e=9999,ot=0;ot<h;ot++)vt=p(k[ot]-u[1]),vt<e&&(e=vt,c=ot);if(c<i&&k[i]!==null)c=i;else for(h<nt-i+c&&k[i]!==null&&(c=h-nt+i);k[c]===null;)c++;at.push({i:c,y:k[c]});k[c]=null}at.sort(kt)}for(i=0;i<nt;i++)e=l[i],u=e.labelPos,v=e.dataLabel,et=e.visible===!1?"hidden":"inherit",e=u[1],tt>0?(h=at.pop(),c=h.i,s=h.y,e>s&&k[c+1]!==null||e<s&&k[c-1]!==null)&&(s=o(r(0,e),st.plotHeight)):s=e,y=g.justify?lt[0]+(ut?-1:1)*(ft+tt):a.getX(s===ht-ft-tt||s===ht+ft+tt?e:s,ut),v._attr={visibility:et,align:u[6]},v._pos={x:y+g.x+({left:rt,right:-rt}[u[6]]||0),y:s+g.y-10},v.connX=y,v.connY=s,this.options.size===null&&(h=v.width,y-h<rt?w[3]=r(f(h-y+rt),w[3]):y+h>pt-rt&&(w[1]=r(f(y+h-pt+rt),w[1])),s-d/2<0?w[0]=r(f(-s+d/2),w[0]):s+d/2>wt&&(w[2]=r(f(s+d/2-wt),w[2])))}}(di(w)===0||this.verifyDataLabelOverflow(w))&&(this.placeDataLabels(),gt&&yt&&t(this.points,function(n){it=n.connector;u=n.labelPos;(v=n.dataLabel)&&v._pos&&n.visible?(et=v._attr.visibility,y=v.connX,s=v.connY,ct=dt?["M",y+(u[6]==="left"?5:-5),s,"C",y,s,2*u[2]-u[4],2*u[3]-u[5],u[2],u[3],"L",u[4],u[5]]:["M",y+(u[6]==="left"?5:-5),s,"L",u[2],u[3],"L",u[4],u[5]],it?(it.animate({d:ct}),it.attr("visibility",et)):n.connector=it=a.chart.renderer.path(ct).attr({"stroke-width":yt,stroke:g.connectorColor||n.color||"#606060",visibility:et}).add(a.dataLabelsGroup)):it&&(n.connector=it.destroy())}))}},k.pie.prototype.placeDataLabels=function(){t(this.points,function(n){var t=n.dataLabel;t&&n.visible&&((n=t._pos)?(t.attr(t._attr),t[t.moved?"animate":"attr"](n),t.moved=!0):t&&t.attr({y:-999}))})},k.pie.prototype.alignDataLabel=li,k.pie.prototype.verifyDataLabelOverflow=function(n){var i=this.center,f=this.options,s=f.center,e=f.minSize||80,u=e,h;return s[0]!==null?u=r(i[2]-r(n[1],n[3]),e):(u=r(i[2]-n[1]-n[3],e),i[0]+=(n[3]-n[1])/2),s[1]!==null?u=r(o(u,i[2]-r(n[0],n[2])),e):(u=r(o(u,i[2]-n[0]-n[2]),e),i[1]+=(n[0]-n[2])/2),u<i[2]?(i[2]=u,i[3]=/%$/.test(f.innerSize||0)?u*parseFloat(f.innerSize||0)/100:parseFloat(f.innerSize||0),this.translate(i),t(this.points,function(n){n.dataLabel&&(n.dataLabel._pos=null)}),this.drawDataLabels&&this.drawDataLabels()):h=!0,h});k.column&&(k.column.prototype.alignDataLabel=function(t,i,r,u,f){var e=this.chart.inverted,h=t.series,l=t.dlBox||t.shapeArgs,o=n(t.below,t.plotY>n(this.translatedThreshold,h.yAxis.len)),c=n(r.inside,!!this.options.stacking);l&&(u=s(l),e&&(u={x:h.yAxis.len-u.y-u.height,y:h.xAxis.len-u.x-u.width,width:u.height,height:u.width}),!c)&&(e?(u.x+=o?0:u.width,u.width=0):(u.y+=o?u.height:0,u.height=0));r.align=n(r.align,!e||c?"center":o?"right":"left");r.verticalAlign=n(r.verticalAlign,e||c?"middle":o?"top":"bottom");b.prototype.alignDataLabel.call(this,t,i,r,u,f)}),function(n){var i=n.Chart,t=n.each,r=n.pick,u=HighchartsAdapter.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 h=n.length,f,i,u,e,o,s,r=0;r<h;r++)(f=n[r])&&(f.oldOpacity=f.opacity,f.newOpacity=1);for(n.sort(function(n,t){return(t.labelrank||0)-(n.labelrank||0)}),r=0;r<h;r++)for(i=n[r],f=r+1;f<h;++f)(u=n[f],i&&u&&i.placed&&u.placed&&i.newOpacity!==0&&u.newOpacity!==0&&(e=i.alignAttr,o=u.alignAttr,s=2*(i.box?0:i.padding),e=!(o.x>e.x+(i.width-s)||o.x+(u.width-s)<e.x||o.y>e.y+(i.height-s)||o.y+(u.height-s)<e.y)))&&((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)})}}(c);it=c.TrackerMixin={drawTrackerPoint:function(){var n=this,i=n.chart,e=i.pointer,r=n.options.cursor,o=r&&{cursor:r},f=function(n){for(var r=n.target,t;r&&!t;)t=r.point,r=r.parentNode;if(t!==u&&t!==i.hoverPoint)t.onMouseOver(n)};t(n.points,function(n){n.graphic&&(n.graphic.element.point=n);n.dataLabel&&(n.dataLabel.element.point=n)});n._hasTracking||(t(n.trackerGroups,function(t){if(n[t]&&(n[t].addClass("highcharts-tracker").on("mouseover",f).on("mouseout",function(n){e.onTrackerMouseOut(n)}).css(o),kr))n[t].on("touchstart",f)}),n._hasTracking=!0)},drawTrackerGraph:function(){var i=this,h=i.options,o=h.trackByArea,r=[].concat(o?i.areaPath:i.graphPath),u=r.length,s=i.chart,v=s.pointer,y=s.renderer,f=s.options.tooltip.snap,c=i.tracker,e=h.cursor,p=e&&{cursor:e},e=i.singlePoints,n,l=function(){s.hoverSeries!==i&&i.onMouseOver()},a="rgba(192,192,192,"+(vt?.0001:.002)+")";if(u&&!o)for(n=u+1;n--;)r[n]==="M"&&r.splice(n+1,0,r[n+1]-f,r[n+2],"L"),(n&&r[n]==="M"||n===u)&&r.splice(n,0,"L",r[n-2]+f,r[n-1]);for(n=0;n<e.length;n++)u=e[n],r.push("M",u.plotX-f,u.plotY,"L",u.plotX+f,u.plotY);c?c.attr({d:r}):(i.tracker=y.path(r).attr({"stroke-linejoin":"round",visibility:i.visible?"visible":"hidden",stroke:a,fill:o?a:ut,"stroke-width":h.lineWidth+(o?0:2*f),zIndex:2}).add(i.group),t([i.tracker,i.markerGroup],function(n){if(n.addClass("highcharts-tracker").on("mouseover",l).on("mouseout",function(n){v.onTrackerMouseOut(n)}).css(p),kr)n.on("touchstart",l)}))}};k.column&&(oi.prototype.drawTracker=it.drawTrackerPoint);k.pie&&(k.pie.prototype.drawTracker=it.drawTrackerPoint);k.scatter&&(dt.prototype.drawTracker=it.drawTrackerPoint);e(iu.prototype,{setItemEvents:function(n,t,i,r,u){var f=this;(i?t:n.legendGroup).on("mouseover",function(){n.setState("hover");t.css(f.options.itemHoverStyle)}).on("mouseout",function(){t.css(n.visible?r:u);n.setState()}).on("click",function(t){var i=function(){n.setVisible()},t={browserEvent:t};n.firePointEvent?n.firePointEvent("legendItemClick",t,i):w(n,"legendItemClick",t,i)})},createCheckboxForItem:function(n){n.checkbox=lt("input",{type:"checkbox",checked:n.selected,defaultChecked:n.selected},this.options.itemCheckboxStyle,this.chart.container);d(n.checkbox,"click",function(t){w(n.series||n,"checkboxClick",{checked:t.target.checked,item:n},function(){n.select()})})}});rt.legend.itemStyle.cursor="pointer";e(l.prototype,{showResetZoom:function(){var t=this,i=rt.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,function(){t.zoomOut()},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(i){var u,e=this.pointer,f=!1,r;!i||i.resetSelection?t(this.axes,function(n){u=n.zoom()}):t(i.xAxis.concat(i.yAxis),function(n){var t=n.axis,i=t.isXAxis;(e[i?"zoomX":"zoomY"]||e[i?"pinchX":"pinchY"])&&(u=t.zoom(n.min,n.max),t.displayBtn&&(f=!0))});r=this.resetZoomButton;f&&!r?this.showResetZoom():!f&&yt(r)&&(this.resetZoomButton=r.destroy());u&&this.redraw(n(this.options.chart.animation,i&&i.animation,this.pointCount<100))},pan:function(n,i){var u=this,f=u.hoverPoints,e;f&&t(f,function(n){n.setState()});t(i==="xy"?[1,0]:[1],function(t){var h=n[t?"chartX":"chartY"],i=u[t?"xAxis":"yAxis"][0],f=u[t?"mouseDownX":"mouseDownY"],s=(i.pointRange||0)/2,c=i.getExtremes(),l=i.toValue(f-h,!0)+s,s=i.toValue(f+u[t?"plotWidth":"plotHeight"]-h,!0)-s,f=f>h;i.series.length&&(f||l>o(c.dataMin,c.min))&&(!f||s<r(c.dataMax,c.max))&&(i.setExtremes(l,s,!1,!1,{trigger:"pan"}),e=!0);u[t?"mouseDownX":"mouseDownY"]=h});e&&u.redraw(!1);y(u.container,{cursor:"move"})}});e(wi.prototype,{select:function(i,r){var u=this,f=u.series,e=f.chart,i=n(i,!u.selected);u.firePointEvent(i?"select":"unselect",{accumulate:r},function(){u.selected=u.options.selected=i;f.options.data[er(u,f.data)]=u.options;u.setState(i&&"select");r||t(e.getSelectedPoints(),function(n){n.selected&&n!==u&&(n.selected=n.options.selected=!1,f.options.data[er(n,f.data)]=n.options,n.setState(""),n.firePointEvent("unselect"))})})},onMouseOver:function(n,t){var i=this.series,r=i.chart,u=r.tooltip,f=r.hoverPoint;r.hoverSeries!==i&&i.onMouseOver();f&&f!==this&&f.onMouseOut();this.series&&(this.firePointEvent("mouseOver"),u&&(!u.shared||i.noSharedTooltip)&&u.refresh(this,n),this.setState("hover"),!t)&&(r.hoverPoint=this)},onMouseOut:function(){var n=this.series.chart,t=n.hoverPoints;this.firePointEvent("mouseOut");t&&er(this,t)!==-1||(this.setState(),n.hoverPoint=null)},importEvents:function(){if(!this.hasImportedEvents){var n=s(this.series.options.point,this.options).events,t;this.events=n;for(t in n)d(this,t,n[t]);this.hasImportedEvents=!0}},setState:function(n,t){var f=this.plotX,a=this.plotY,u=this.series,v=u.options.states,i=ct[u.type].marker&&u.options.marker,p=i&&!i.enabled,h=i&&i.states[n],w=h&&h.enabled===!1,r=u.stateMarkerGraphic,o=this.marker||{},c=u.chart,l=u.halo,y,n=n||"";y=this.pointAttr[n]||u.pointAttr[n];n===this.state&&!t||this.selected&&n!=="select"||v[n]&&v[n].enabled===!1||n&&(w||p&&h.enabled===!1)||n&&o.states&&o.states[n]&&o.states[n].enabled===!1||(this.graphic?(i=i&&this.graphic.symbolName&&y.r,this.graphic.attr(s(y,i?{x:f-i,y:a-i,width:2*i,height:2*i}:{})),r&&r.hide()):(n&&h&&((i=h.radius,o=o.symbol||u.symbol,r&&r.currentSymbol!==o&&(r=r.destroy()),r)?r[t?"animate":"attr"]({x:f-i,y:a-i}):o&&(u.stateMarkerGraphic=r=c.renderer.symbol(o,f-i,a-i,2*i,2*i).attr(y).add(u.markerGroup),r.currentSymbol=o)),r&&(r[n&&c.isInsidePlot(f,a,c.inverted)?"show":"hide"](),r.element.point=this)),(f=v[n]&&v[n].halo)&&f.size?(l||(u.halo=l=c.renderer.path().add(c.seriesGroup)),l.attr(e({fill:ui(this.color||u.color).setOpacity(f.opacity).get()},f.attributes))[t?"animate":"attr"]({d:this.haloPath(f.size)})):l&&l.attr({d:[]}),this.state=n)},haloPath:function(n){var t=this.series,i=t.chart,r=t.getPlotBox(),u=i.inverted;return i.renderer.symbols.circle(r.translateX+(u?t.yAxis.len-this.plotY:this.plotX)-n,r.translateY+(u?t.xAxis.len-this.plotX:this.plotY)-n,n*2,n*2)}});e(b.prototype,{onMouseOver:function(){var t=this.chart,n=t.hoverSeries;n&&n!==this&&n.onMouseOut();this.options.events.mouseOver&&w(this,"mouseOver");this.setState("hover");t.hoverSeries=this},onMouseOut:function(){var i=this.options,n=this.chart,t=n.tooltip,r=n.hoverPoint;n.hoverSeries=null;r&&r.onMouseOut();this&&i.events.mouseOut&&w(this,"mouseOut");t&&!i.stickyTracking&&(!t.shared||this.noSharedTooltip)&&t.hide();this.setState()},setState:function(n){var t=this.options,r=this.graph,i=t.states,u=t.lineWidth,t=0,n=n||"";if(this.state!==n&&(this.state=n,!(i[n]&&i[n].enabled===!1)&&(n&&(u=i[n].lineWidth||u+(i[n].lineWidthPlus||0)),r&&!r.dashstyle)))for(n={"stroke-width":u},r.attr(n);this["zoneGraph"+t];)this["zoneGraph"+t].attr(n),t+=1},setVisible:function(n,i){var r=this,f=r.chart,o=r.legendItem,e,s=f.options.chart.ignoreHiddenSeries,h=r.visible;e=(r.visible=n=r.userOptions.visible=n===u?!h:n)?"show":"hide";t(["group","dataLabelsGroup","markerGroup","tracker"],function(n){r[n]&&r[n][e]()});(f.hoverSeries===r||(f.hoverPoint&&f.hoverPoint.series)===r)&&r.onMouseOut();o&&f.legend.colorizeItem(r,n);r.isDirty=!0;r.options.stacking&&t(f.series,function(n){n.options.stacking&&n.visible&&(n.isDirty=!0)});t(r.linkedSeries,function(t){t.setVisible(n,!1)});s&&(f.isDirtyBox=!0);i!==!1&&f.redraw();w(r,e)},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(n){this.selected=n=n===u?!this.selected:n;this.checkbox&&(this.checkbox.checked=n);w(this,n?"select":"unselect")},drawTracker:it.drawTrackerGraph});e(c,{Color:ui,Point:wi,Tick:ar,Renderer:br,SVGElement:tt,SVGRenderer:fi,arrayMin:sr,arrayMax:di,charts:st,dateFormat:vr,error:ii,format:rr,pathAnim:bu,getOptions:function(){return rt},hasBidiBug:df,isTouchDevice:lf,setOptions:function(n){return rt=s(!0,rt,n),sf(),rt},addEvent:d,removeEvent:ht,createElement:lt,discardElement:cr,css:y,each:t,map:pr,merge:s,splat:hi,extendClass:ti,pInt:a,svg:vt,canvas:wt,vml:!vt&&!wt,product:"Highcharts",version:"4.1.8"})})(),function(n){var l=n.Chart,e=n.addEvent,a=n.removeEvent,v=HighchartsAdapter.fireEvent,r=n.createElement,s=n.discardElement,o=n.css,u=n.merge,t=n.each,i=n.extend,p=n.splat,w=Math.max,f=document,y=window,b=n.isTouchDevice,k=n.Renderer.prototype.symbols,h=n.getOptions(),c;i(h.lang,{printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"});h.navigation={menuStyle:{border:"1px solid #A0A0A0",background:"#FFFFFF",padding:"5px 0"},menuItemStyle:{padding:"0 10px",background:"none",color:"#303030",fontSize:b?"14px":"11px"},menuItemHoverStyle:{background:"#4572A5",color:"#FFFFFF"},buttonOptions:{symbolFill:"#E0E0E0",symbolSize:14,symbolStroke:"#666",symbolStrokeWidth:3,symbolX:12.5,symbolY:10.5,align:"right",buttonSpacing:3,height:22,theme:{fill:"white",stroke:"none"},verticalAlign:"top",width:24}};h.exporting={type:"image/png",url:"http://export.highcharts.com/",buttons:{contextButton:{menuClassName:"highcharts-contextmenu",symbol:"menu",_titleKey:"contextButtonTitle",menuItems:[{textKey:"printChart",onclick:function(){this.print()}},{separator:!0},{textKey:"downloadPNG",onclick:function(){this.exportChart()}},{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}]}}};n.post=function(n,t,i){var e,n=r("form",u({method:"post",action:n,enctype:"multipart/form-data"},i),{display:"none"},f.body);for(e in t)r("input",{type:"hidden",name:e,value:t[e]},null,n);n.submit();s(n)};i(l.prototype,{sanitizeSVG:function(n){return n.replace(/zIndex="[^"]+"/g,"").replace(/isShadow="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (NS[0-9]+\:)?href=/g," xlink:href=").replace(/\n/," ").replace(/<\/svg>.*?$/,"<\/svg>").replace(/(fill|stroke)="rgba\(([ 0-9]+,[ 0-9]+,[ 0-9]+),([ 0-9\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g," ").replace(/&shy;/g,"­").replace(/<IMG /g,"<image ").replace(/<(\/?)TITLE>/g,"<$1title>").replace(/height=([^" ]+)/g,'height="$1"').replace(/width=([^" ]+)/g,'width="$1"').replace(/hc-svg-href="([^"]+)">/g,'xlink:href="$1"/>').replace(/ id=([^" >]+)/g,' id="$1"').replace(/class=([^" >]+)/g,'class="$1"').replace(/ transform /g," ").replace(/:(path|rect)/g,"$1").replace(/style="([^"]+)"/g,function(n){return n.toLowerCase()})},getChartHTML:function(){return this.container.innerHTML},getSVG:function(e){var c=this,v,l,h,y,a,o=u(c.options,e),w=o.exporting.allowHTML;return f.createElementNS||(f.createElementNS=function(n,t){return f.createElement(t)}),l=r("div",null,{position:"absolute",top:"-9999em",width:c.chartWidth+"px",height:c.chartHeight+"px"},f.body),h=c.renderTo.style.width,a=c.renderTo.style.height,h=o.exporting.sourceWidth||o.chart.width||/px$/.test(h)&&parseInt(h,10)||600,a=o.exporting.sourceHeight||o.chart.height||/px$/.test(a)&&parseInt(a,10)||400,i(o.chart,{animation:!1,renderTo:l,forExport:!w,width:h,height:a}),o.exporting.enabled=!1,delete o.data,o.series=[],t(c.series,function(n){y=u(n.options,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:n.visible});y.isInternal||o.series.push(y)}),e&&t(["xAxis","yAxis"],function(n){t(p(e[n]),function(t,i){o[n][i]=u(o[n][i],t)})}),v=new n.Chart(o,c.callback),t(["xAxis","yAxis"],function(n){t(c[n],function(t,i){var u=v[n][i],r=t.getExtremes(),f=r.userMin,r=r.userMax;u&&(f!==void 0||r!==void 0)&&u.setExtremes(f,r,!0,!1)})}),h=v.getChartHTML(),o=null,v.destroy(),s(l),w&&(l=h.match(/<\/svg>(.*?$)/))&&(l='<foreignObject x="0" y="0 width="200" height="200"><body xmlns="http://www.w3.org/1999/xhtml">'+l[1]+"<\/body><\/foreignObject>",h=h.replace("<\/svg>",l+"<\/svg>")),h=this.sanitizeSVG(h),h.replace(/(url\(#highcharts-[0-9]+)&quot;/g,"$1").replace(/&quot;/g,"'")},getSVGForExport:function(n,t){var i=this.options.exporting;return this.getSVG(u({chart:{borderRadius:0}},i.chartOptions,t,{exporting:{sourceWidth:n&&n.sourceWidth||i.sourceWidth,sourceHeight:n&&n.sourceHeight||i.sourceHeight}}))},exportChart:function(t,i){var r=this.getSVGForExport(t,i),t=u(this.options.exporting,t);n.post(t.url,{filename:t.filename||"chart",type:t.type,width:t.width||0,scale:t.scale||2,svg:r},t.formAttributes)},print:function(){var n=this,i=n.container,r=[],o=i.parentNode,u=f.body,e=u.childNodes;n.isPrinting||(n.isPrinting=!0,v(n,"beforePrint"),t(e,function(n,t){n.nodeType===1&&(r[t]=n.style.display,n.style.display="none")}),u.appendChild(i),y.focus(),y.print(),setTimeout(function(){o.appendChild(i);t(e,function(n,t){n.nodeType===1&&(n.style.display=r[t])});n.isPrinting=!1;v(n,"afterPrint")},1e3))},contextMenu:function(n,u,f,s,h,c,l){var v=this,d=v.options.navigation,g=d.menuItemStyle,nt=v.chartWidth,tt=v.chartHeight,it="cache-"+n,y=v[it],p=w(h,c),b,k,rt,ut=function(t){v.pointer.inClass(t.target,n)||k()};y||(v[it]=y=r("div",{className:n},{position:"absolute",zIndex:1e3,padding:p+"px"},v.container),b=r("div",null,i({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},d.menuStyle),y),k=function(){o(y,{display:"none"});l&&l.setState(0);v.openMenu=!1},e(y,"mouseleave",function(){rt=setTimeout(k,500)}),e(y,"mouseenter",function(){clearTimeout(rt)}),e(document,"mouseup",ut),e(v,"destroy",function(){a(document,"mouseup",ut)}),t(u,function(n){if(n){var t=n.separator?r("hr",null,null,b):r("div",{onmouseover:function(){o(this,d.menuItemHoverStyle)},onmouseout:function(){o(this,g)},onclick:function(t){t.stopPropagation();k();n.onclick&&n.onclick.apply(v,arguments)},innerHTML:n.text||v.options.lang[n.textKey]},i({cursor:"pointer"},g),b);v.exportDivElements.push(t)}}),v.exportDivElements.push(b,y),v.exportMenuWidth=y.offsetWidth,v.exportMenuHeight=y.offsetHeight);u={display:"block"};f+v.exportMenuWidth>nt?u.right=nt-f-h-p+"px":u.left=f-p+"px";s+c+v.exportMenuHeight>tt&&l.alignOptions.verticalAlign!=="top"?u.bottom=tt-s-p+"px":u.top=s+c-p+"px";o(y,u);v.openMenu=!0},addButton:function(t){var e=this,a=e.renderer,r=u(e.options.navigation.buttonOptions,t),v=r.onclick,y=r.menuItems,p,f,w={stroke:r.symbolStroke,fill:r.symbolFill},h=r.symbolSize||12;if(e.btnCount||(e.btnCount=0),e.exportDivElements||(e.exportDivElements=[],e.exportSVGElements=[]),r.enabled!==!1){var o=r.theme,s=o.states,b=s&&s.hover,s=s&&s.select,l;delete o.states;v?l=function(n){n.stopPropagation();v.call(e,n)}:y&&(l=function(){e.contextMenu(f.menuClassName,y,f.translateX,f.translateY,f.width,f.height,f);f.setState(2)});r.text&&r.symbol?o.paddingLeft=n.pick(o.paddingLeft,25):r.text||i(o,{width:r.width,height:r.height,padding:0});f=a.button(r.text,0,0,l,o,b,s).attr({title:e.options.lang[r._titleKey],"stroke-linecap":"round"});f.menuClassName=t.menuClassName||"highcharts-menu-"+e.btnCount++;r.symbol&&(p=a.symbol(r.symbol,r.symbolX-h/2,r.symbolY-h/2,h,h).attr(i(w,{"stroke-width":r.symbolStrokeWidth||1,zIndex:1})).add(f));f.add().align(i(r,{width:f.width,x:n.pick(r.x,c)}),!0,"spacingBox");c+=(f.width+r.buttonSpacing)*(r.align==="right"?-1:1);e.exportSVGElements.push(f,p)}},destroyExport:function(n){for(var n=n.target,t,i=0;i<n.exportSVGElements.length;i++)(t=n.exportSVGElements[i])&&(t.onclick=t.ontouchstart=null,n.exportSVGElements[i]=t.destroy());for(i=0;i<n.exportDivElements.length;i++)t=n.exportDivElements[i],a(t,"mouseleave"),n.exportDivElements[i]=t.onmouseout=t.onmouseover=t.ontouchstart=t.onclick=null,s(t)}});k.menu=function(n,t,i,r){return["M",n,t+2.5,"L",n+i,t+2.5,"M",n,t+r/2+.5,"L",n+i,t+r/2+.5,"M",n,t+r-1.5,"L",n+i,t+r-1.5]};l.prototype.callbacks.push(function(n){var t,i=n.options.exporting,r=i.buttons;if(c=0,i.enabled!==!1){for(t in r)n.addButton(r[t]);e(n,"destroy",n.destroyExport)}})}(Highcharts);!function(n,t,i){!function(n){"use strict";"function"==typeof define&&define.amd?define(["jquery"],n):jQuery&&!jQuery.fn.qtip&&n(jQuery)}(function(r){"use strict";function ui(n,t,i,f){this.id=i;this.target=n;this.tooltip=s;this.elements={target:n};this._id=o+"-"+i;this.timers={img:{}};this.options=t;this.plugins={};this.cache={event:{},target:r(),disabled:u,attr:f,onTooltip:u,lastClass:""};this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=u}function ft(n){return n===s||"object"!==r.type(n)}function vi(n){return!(r.isFunction(n)||n&&n.attr||n.length||"object"===r.type(n)&&(n.jquery||n.then))}function wt(n){var t,e,i,o;return ft(n)?u:(ft(n.metadata)&&(n.metadata={type:n.metadata}),"content"in n&&(t=n.content,ft(t)||t.jquery||t.done?t=n.content={text:e=vi(t)?u:t}:e=t.text,"ajax"in t&&(i=t.ajax,o=i&&i.once!==u,delete t.ajax,t.text=function(n,t){var u=e||r(this).attr(t.options.content.attr)||"Loading...",f=r.ajax(r.extend({},i,{context:t})).then(i.success,s,i.error).then(function(n){return n&&o&&t.set("content.text",n),n},function(n,i,r){t.destroyed||0===n.status||t.set("content.text",i+": "+r)});return o?u:(t.set("content.text",u),f)}),"title"in t&&(r.isPlainObject(t.title)&&(t.button=t.title.button,t.title=t.title.text),vi(t.title||u)&&(t.title=u))),"position"in n&&ft(n.position)&&(n.position={my:n.position,at:n.position}),"show"in n&&ft(n.show)&&(n.show=n.show.jquery?{target:n.show}:n.show===f?{ready:f}:{event:n.show}),"hide"in n&&ft(n.hide)&&(n.hide=n.hide.jquery?{target:n.hide}:{event:n.hide}),"style"in n&&ft(n.style)&&(n.style={classes:n.style}),r.each(h,function(){this.sanitize&&this.sanitize(n)}),n)}function yi(n,t){for(var u,f=0,i=n,r=t.split(".");i=i[r[f++]];)f<r.length&&(u=i);return[u||n,r.pop()]}function sr(n,t){var i,r,u;for(i in this.checks)for(r in this.checks[i])(u=new RegExp(r,"i").exec(n))&&(t.push(u),("builtin"===i||this.plugins[i])&&this.checks[i][r].apply(this.plugins[i]||this,t))}function bt(n){return yr.concat("").join(n?"-"+n+" ":" ")}function kt(n,t){return t>0?setTimeout(r.proxy(n,this),t):void n.call(this)}function hr(n){this.tooltip.hasClass(a)||(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this.timers.show=kt.call(this,function(){this.toggle(f,n)},this.options.show.delay))}function cr(n){if(!this.tooltip.hasClass(a)&&!this.destroyed){var t=r(n.relatedTarget),i=t.closest(rt)[0]===this.tooltip[0],f=t[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==t[0]&&"mouse"===this.options.position.target&&i||this.options.hide.fixed&&/mouse(out|leave|move)/.test(n.type)&&(i||f))try{n.preventDefault();n.stopImmediatePropagation()}catch(e){}else this.timers.hide=kt.call(this,function(){this.toggle(u,n)},this.options.hide.delay,this)}}function fi(n){!this.tooltip.hasClass(a)&&this.options.hide.inactive&&(clearTimeout(this.timers.inactive),this.timers.inactive=kt.call(this,function(){this.hide(n)},this.options.hide.inactive))}function pi(n){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(n)}function wi(n,i,u){r(t.body).delegate(n,(i.split?i:i.join("."+o+" "))+"."+o,function(){var n=c.api[r.attr(this,ni)];n&&!n.disabled&&u.apply(n,arguments)})}function lr(n,i,e){var y,l,v,h,b,k=r(t.body),p=n[0]===t?k:n,w=n.metadata?n.metadata(e.metadata):s,d="html5"===e.metadata.type&&w?w[e.metadata.name]:s,a=n.data(e.metadata.name||"qtipopts");try{a="string"==typeof a?r.parseJSON(a):a}catch(g){}if(h=r.extend(f,{},c.defaults,e,"object"==typeof a?wt(a):s,wt(d||w)),l=h.position,h.id=i,"boolean"==typeof h.content.text){if(v=n.attr(h.content.attr),h.content.attr===u||!v)return u;h.content.text=v}if(l.container.length||(l.container=k),l.target===u&&(l.target=p),h.show.target===u&&(h.show.target=p),h.show.solo===f&&(h.show.solo=l.container.closest("body")),h.hide.target===u&&(h.hide.target=p),h.position.viewport===f&&(h.position.viewport=l.container),l.container=l.container.eq(0),l.at=new tt(l.at,f),l.my=new tt(l.my),n.data(o))if(h.overwrite)n.qtip("destroy",!0);else if(h.overwrite===u)return u;return n.attr(ei,i),h.suppress&&(b=n.attr("title"))&&n.removeAttr("title").attr(ut,b).attr("title",""),y=new ui(n,h,i,!!v),n.data(o,y),y}function at(n){return n.charAt(0).toUpperCase()+n.slice(1)}function ar(n,t){var r,u,f=t.charAt(0).toUpperCase()+t.slice(1),e=(t+" "+wr.join(f+" ")+f).split(" "),o=0;if(ci[t])return n.css(ci[t]);for(;r=e[o++];)if((u=n.css(r))!==i)return ci[t]=r,u}function ot(n,t){return Math.ceil(parseFloat(ar(n,t)))}function bi(n,t){this._ns="tip";this.options=t;this.offset=t.offset;this.size=[t.width,t.height];this.init(this.qtip=n)}function ki(n,t){this.options=t;this._ns="-modal";this.init(this.qtip=n)}function di(n){this._ns="ie6";this.init(this.qtip=n)}var c,e,tt,dt,gt,f=!0,u=!1,s=null,w="x",y="y",d="width",vt="height",b="top",p="left",it="bottom",k="right",l="center",vr="flipinvert",et="shift",h={},o="qtip",ei="data-hasqtip",ni="data-qtip-id",yr=["ui-widget","ui-tooltip"],rt="."+o,gi="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),nr=o+"-fixed",oi=o+"-default",st=o+"-focus",pr=o+"-hover",a=o+"-disabled",ht="_replacedByqTip",ut="oldtitle",v={ie:function(){for(var n=4,i=t.createElement("div");(i.innerHTML="<!--[if gt IE "+n+"]><i><\/i><![endif]-->")&&i.getElementsByTagName("i")[0];n+=1);return n>4?n:NaN}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||u},tr,ir,yt,li,ai,g,ri,nt,er,or;e=ui.prototype;e._when=function(n){return r.when.apply(r,n)};e.render=function(n){if(this.rendered||this.destroyed)return this;var w,i=this,t=this.options,s=this.cache,y=this.elements,p=t.content.text,l=t.content.title,b=t.content.button,e=t.position,v=("."+this._id+" ",[]);return r.attr(this.target[0],"aria-describedby",this._id),s.posClass=this._createPosClass((this.position={my:e.my,at:e.at}).my),this.tooltip=y.tooltip=w=r("<div/>",{id:this._id,"class":[o,oi,t.style.classes,s.posClass].join(" "),width:t.style.width||"",height:t.style.height||"",tracking:"mouse"===e.target&&e.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":u,"aria-describedby":this._id+"-content","aria-hidden":f}).toggleClass(a,this.disabled).attr(ni,this.id).data(o,this).appendTo(e.container).append(y.content=r("<div />",{"class":o+"-content",id:this._id+"-content","aria-atomic":f})),this.rendered=-1,this.positioning=f,l&&(this._createTitle(),r.isFunction(l)||v.push(this._updateTitle(l,u))),b&&this._createButton(),r.isFunction(p)||v.push(this._updateContent(p,u)),this.rendered=f,this._setWidget(),r.each(h,function(n){var t;"render"===this.initialize&&(t=this(i))&&(i.plugins[n]=t)}),this._unassignEvents(),this._assignEvents(),this._when(v).then(function(){i._trigger("render");i.positioning=u;i.hiddenDuringWait||!t.show.ready&&!n||i.toggle(f,s.event,u);i.hiddenDuringWait=u}),c.api[this.id]=this,this};e.destroy=function(n){function t(){if(!this.destroyed){this.destroyed=f;var t,n=this.target,i=n.attr(ut);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove();r.each(this.plugins,function(){this.destroy&&this.destroy()});for(t in this.timers)clearTimeout(this.timers[t]);n.removeData(o).removeAttr(ni).removeAttr(ei).removeAttr("aria-describedby");this.options.suppress&&i&&n.attr("title",i).removeAttr(ut);this._unassignEvents();this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=s;delete c.api[this.id]}}return this.destroyed?this.target:(n===f&&"hide"!==this.triggering||!this.rendered?t.call(this):(this.tooltip.one("tooltiphidden",r.proxy(t,this)),!this.triggering&&this.hide()),this.target)};dt=e.checks={builtin:{"^id$":function(n,t,i,e){var s=i===f?c.nextid:i,h=o+"-"+s;s!==u&&s.length>0&&!r("#"+h).length?(this._id=h,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):n[t]=e},"^prerender":function(n,t,i){i&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(n,t,i){this._updateContent(i)},"^content.attr$":function(n,t,i,r){this.options.content.text===this.target.attr(r)&&this._updateContent(this.target.attr(i))},"^content.title$":function(n,t,i){return i?(i&&!this.elements.title&&this._createTitle(),void this._updateTitle(i)):this._removeTitle()},"^content.button$":function(n,t,i){this._updateButton(i)},"^content.title.(text|button)$":function(n,t,i){this.set("content."+t,i)},"^position.(my|at)$":function(n,t,i){"string"==typeof i&&(this.position[t]=n[t]=new tt(i,"at"===t))},"^position.container$":function(n,t,i){this.rendered&&this.tooltip.appendTo(i)},"^show.ready$":function(n,t,i){i&&(!this.rendered&&this.render(f)||this.toggle(f))},"^style.classes$":function(n,t,i,r){this.rendered&&this.tooltip.removeClass(r).addClass(i)},"^style.(width|height)":function(n,t,i){this.rendered&&this.tooltip.css(t,i)},"^style.widget|content.title":function(){this.rendered&&this._setWidget()},"^style.def":function(n,t,i){this.rendered&&this.tooltip.toggleClass(oi,!!i)},"^events.(render|show|move|hide|focus|blur)$":function(n,t,i){this.rendered&&this.tooltip[(r.isFunction(i)?"":"un")+"bind"]("tooltip"+t,i)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){if(this.rendered){var n=this.options.position;this.tooltip.attr("tracking","mouse"===n.target&&n.adjust.mouse);this._unassignEvents();this._assignEvents()}}}};e.get=function(n){if(this.destroyed)return this;var i=yi(this.options,n.toLowerCase()),t=i[0][i[1]];return t.precedance?t.string():t};tr=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i;ir=/^prerender|show\.ready/i;e.set=function(n,t){if(this.destroyed)return this;var o,h=this.rendered,i=u,e=this.options;return this.checks,"string"==typeof n?(o=n,n={},n[o]=t):n=r.extend({},n),r.each(n,function(t,u){if(h&&ir.test(t))return void delete n[t];var o,f=yi(e,t.toLowerCase());o=f[0][f[1]];f[0][f[1]]=u&&u.nodeType?r(u):u;i=tr.test(t)||i;n[t]=[f[0],f[1],u,o]}),wt(e),this.positioning=f,r.each(n,r.proxy(sr,this)),this.positioning=u,this.rendered&&this.tooltip[0].offsetWidth>0&&i&&this.reposition("mouse"===e.position.target?s:this.cache.event),this};e._update=function(n,t){var i=this,e=this.cache;return this.rendered&&n?(r.isFunction(n)&&(n=n.call(this.elements.target,e.event,this)||""),r.isFunction(n.then)?(e.waiting=f,n.then(function(n){return e.waiting=u,i._update(n,t)},s,function(n){return i._update(n,t)})):n===u||!n&&""!==n?u:(n.jquery&&n.length>0?t.empty().append(n.css({display:"block",visibility:"visible"})):t.html(n),this._waitForContent(t).then(function(n){i.rendered&&i.tooltip[0].offsetWidth>0&&i.reposition(e.event,!n.length)}))):u};e._waitForContent=function(n){var t=this.cache;return t.waiting=f,(r.fn.imagesLoaded?n.imagesLoaded():r.Deferred().resolve([])).done(function(){t.waiting=u}).promise()};e._updateContent=function(n,t){this._update(n,this.elements.content,t)};e._updateTitle=function(n,t){this._update(n,this.elements.title,t)===u&&this._removeTitle(u)};e._createTitle=function(){var n=this.elements,t=this._id+"-title";n.titlebar&&this._removeTitle();n.titlebar=r("<div />",{"class":o+"-titlebar "+(this.options.style.widget?bt("header"):"")}).append(n.title=r("<div />",{id:t,"class":o+"-title","aria-atomic":f})).insertBefore(n.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(n){r(this).toggleClass("ui-state-active ui-state-focus","down"===n.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(n){r(this).toggleClass("ui-state-hover","mouseover"===n.type)});this.options.content.button&&this._createButton()};e._removeTitle=function(n){var t=this.elements;t.title&&(t.titlebar.remove(),t.titlebar=t.title=t.button=s,n!==u&&this.reposition())};e._createPosClass=function(n){return o+"-pos-"+(n||this.options.position.my).abbrev()};e.reposition=function(i,e){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=f;var a,y,ut,at,c=this.cache,d=this.tooltip,w=this.options.position,o=w.target,et=w.my,g=w.at,ot=w.viewport,ht=w.container,ft=w.adjust,vt=ft.method.split(" "),ct=d.outerWidth(u),lt=d.outerHeight(u),nt=0,tt=0,yt=d.css("position"),s={left:0,top:0},wt=d[0].offsetWidth>0,bt=i&&"scroll"===i.type,st=r(n),pt=ht[0].ownerDocument,rt=this.mouse;if(r.isArray(o)&&2===o.length)g={x:p,y:b},s={left:o[0],top:o[1]};else if("mouse"===o)g={x:p,y:b},(!ft.mouse||this.options.hide.distance)&&c.origin&&c.origin.pageX?i=c.origin:!i||i&&("resize"===i.type||"scroll"===i.type)?i=c.event:rt&&rt.pageX&&(i=rt),"static"!==yt&&(s=ht.offset()),pt.body.offsetWidth!==(n.innerWidth||pt.documentElement.clientWidth)&&(y=r(t.body).offset()),s={left:i.pageX-s.left+(y&&y.left||0),top:i.pageY-s.top+(y&&y.top||0)},ft.mouse&&bt&&rt&&(s.left-=(rt.scrollX||0)-st.scrollLeft(),s.top-=(rt.scrollY||0)-st.scrollTop());else{if("event"===o?i&&i.target&&"scroll"!==i.type&&"resize"!==i.type?c.target=r(i.target):i.target||(c.target=this.elements.target):"event"!==o&&(c.target=r(o.jquery?o:this.elements.target)),o=c.target,o=r(o).eq(0),0===o.length)return this;o[0]===t||o[0]===n?(nt=v.iOS?n.innerWidth:o.width(),tt=v.iOS?n.innerHeight:o.height(),o[0]===n&&(s={top:(ot||o).scrollTop(),left:(ot||o).scrollLeft()})):h.imagemap&&o.is("area")?a=h.imagemap(this,o,g,h.viewport?vt:u):h.svg&&o&&o[0].ownerSVGElement?a=h.svg(this,o,g,h.viewport?vt:u):(nt=o.outerWidth(u),tt=o.outerHeight(u),s=o.offset());a&&(nt=a.width,tt=a.height,y=a.offset,s=a.position);s=this.reposition.offset(o,s,ht);(v.iOS>3.1&&v.iOS<4.1||v.iOS>=4.3&&v.iOS<4.33||!v.iOS&&"fixed"===yt)&&(s.left-=st.scrollLeft(),s.top-=st.scrollTop());(!a||a&&a.adjustable!==u)&&(s.left+=g.x===k?nt:g.x===l?nt/2:0,s.top+=g.y===it?tt:g.y===l?tt/2:0)}return s.left+=ft.x+(et.x===k?-ct:et.x===l?-ct/2:0),s.top+=ft.y+(et.y===it?-lt:et.y===l?-lt/2:0),h.viewport?(ut=s.adjusted=h.viewport(this,s,w,nt,tt,ct,lt),y&&ut.left&&(s.left+=y.left),y&&ut.top&&(s.top+=y.top),ut.my&&(this.position.my=ut.my)):s.adjusted={left:0,top:0},c.posClass!==(at=this._createPosClass(this.position.my))&&d.removeClass(c.posClass).addClass(c.posClass=at),this._trigger("move",[s,ot.elem||ot],i)?(delete s.adjusted,e===u||!wt||isNaN(s.left)||isNaN(s.top)||"mouse"===o||!r.isFunction(w.effect)?d.css(s):r.isFunction(w.effect)&&(w.effect.call(d,this,r.extend({},s)),d.queue(function(n){r(this).css({opacity:"",height:""});v.ie&&this.style.removeAttribute("filter");n()})),this.positioning=u,this):this};e.reposition.offset=function(n,i,u){function s(n,t){i.left+=t*n.scrollLeft();i.top+=t*n.scrollTop()}if(!u[0])return i;var o,h,e,c,l=r(n[0].ownerDocument),a=!!v.ie&&"CSS1Compat"!==t.compatMode,f=u[0];do"static"!==(h=r.css(f,"position"))&&("fixed"===h?(e=f.getBoundingClientRect(),s(l,-1)):(e=r(f).position(),e.left+=parseFloat(r.css(f,"borderLeftWidth"))||0,e.top+=parseFloat(r.css(f,"borderTopWidth"))||0),i.left-=e.left+(parseFloat(r.css(f,"marginLeft"))||0),i.top-=e.top+(parseFloat(r.css(f,"marginTop"))||0),o||"hidden"===(c=r.css(f,"overflow"))||"visible"===c||(o=r(f)));while(f=f.offsetParent);return o&&(o[0]!==l[0]||a)&&s(o,1),i};yt=(tt=e.reposition.Corner=function(n,t){n=(""+n).replace(/([A-Z])/," $1").replace(/middle/gi,l).toLowerCase();this.x=(n.match(/left|right/i)||n.match(/center/)||["inherit"])[0].toLowerCase();this.y=(n.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase();this.forceY=!!t;var i=n.charAt(0);this.precedance="t"===i||"b"===i?y:w}).prototype;yt.invert=function(n,t){this[n]=this[n]===p?k:this[n]===k?p:t||this[n]};yt.string=function(n){var t=this.x,i=this.y,r=t!==i?"center"===t||"center"!==i&&(this.precedance===y||this.forceY)?[i,t]:[t,i]:[t];return n!==!1?r.join(" "):r};yt.abbrev=function(){var n=this.string(!1);return n[0].charAt(0)+(n[1]&&n[1].charAt(0)||"")};yt.clone=function(){return new tt(this.string(),this.forceY)};e.toggle=function(n,i){var c=this.cache,b=this.options,e=this.tooltip;if(i){if(/over|enter/.test(i.type)&&c.event&&/out|leave/.test(c.event.type)&&b.show.target.add(i.target).length===b.show.target.length&&e.has(i.relatedTarget).length)return this;c.event=r.event.fix(i)}if(this.waiting&&!n&&(this.hiddenDuringWait=f),!this.rendered)return n?this.render(1):this;if(this.destroyed||this.disabled)return this;var y,p,l,w=n?"show":"hide",h=this.options[w],k=(this.options[n?"hide":"show"],this.options.position),a=this.options.content,d=this.tooltip.css("width"),g=this.tooltip.is(":visible"),nt=n||1===h.target.length,tt=!i||h.target.length<2||c.target[0]===i.target;return(typeof n).search("boolean|number")&&(n=!g),y=!e.is(":animated")&&g===n&&tt,p=y?s:!!this._trigger(w,[90]),this.destroyed?this:(p!==u&&n&&this.focus(i),!p||y?this:(r.attr(e[0],"aria-hidden",!n),n?(this.mouse&&(c.origin=r.event.fix(this.mouse)),r.isFunction(a.text)&&this._updateContent(a.text,u),r.isFunction(a.title)&&this._updateTitle(a.title,u),!gt&&"mouse"===k.target&&k.adjust.mouse&&(r(t).bind("mousemove."+o,this._storeMouse),gt=f),d||e.css("width",e.outerWidth(u)),this.reposition(i,arguments[2]),d||e.css("width",""),h.solo&&("string"==typeof h.solo?r(h.solo):r(rt,h.solo)).not(e).not(h.target).qtip("hide",r.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete c.origin,gt&&!r(rt+'[tracking="true"]:visible',h.solo).not(e).length&&(r(t).unbind("mousemove."+o),gt=u),this.blur(i)),l=r.proxy(function(){n?(v.ie&&e[0].style.removeAttribute("filter"),e.css("overflow",""),"string"==typeof h.autofocus&&r(this.options.show.autofocus,e).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):e.css({display:"",visibility:"",opacity:"",left:"",top:""});this._trigger(n?"visible":"hidden")},this),h.effect===u||nt===u?(e[w](),l()):r.isFunction(h.effect)?(e.stop(1,1),h.effect.call(e,this),e.queue("fx",function(n){l();n()})):e.fadeTo(90,n?1:0,l),n&&h.target.trigger("qtip-"+this.id+"-inactive"),this))};e.show=function(n){return this.toggle(f,n)};e.hide=function(n){return this.toggle(u,n)};e.focus=function(n){if(!this.rendered||this.destroyed)return this;var t=r(rt),i=this.tooltip,f=parseInt(i[0].style.zIndex,10),u=c.zindex+t.length;return i.hasClass(st)||this._trigger("focus",[u],n)&&(f!==u&&(t.each(function(){this.style.zIndex>f&&(this.style.zIndex=this.style.zIndex-1)}),t.filter("."+st).qtip("blur",n)),i.addClass(st)[0].style.zIndex=u),this};e.blur=function(n){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass(st),this._trigger("blur",[this.tooltip.css("zIndex")],n),this)};e.disable=function(n){return this.destroyed?this:("toggle"===n?n=!(this.rendered?this.tooltip.hasClass(a):this.disabled):"boolean"!=typeof n&&(n=f),this.rendered&&this.tooltip.toggleClass(a,n).attr("aria-disabled",n),this.disabled=!!n,this)};e.enable=function(){return this.disable(u)};e._createButton=function(){var e=this,n=this.elements,i=n.tooltip,t=this.options.content.button,s="string"==typeof t,f=s?t:"Close tooltip";n.button&&n.button.remove();n.button=t.jquery?t:r("<a />",{"class":"qtip-close "+(this.options.style.widget?"":o+"-icon"),title:f,"aria-label":f}).prepend(r("<span />",{"class":"ui-icon ui-icon-close",html:"&times;"}));n.button.appendTo(n.titlebar||i).attr("role","button").click(function(n){return i.hasClass(a)||e.hide(n),u})};e._updateButton=function(n){if(!this.rendered)return u;var t=this.elements.button;n?this._createButton():t.remove()};e._setWidget=function(){var t=this.options.style.widget,n=this.elements,i=n.tooltip,r=i.hasClass(a);i.removeClass(a);a=t?"ui-state-disabled":"qtip-disabled";i.toggleClass(a,r);i.toggleClass("ui-helper-reset "+bt(),t).toggleClass(oi,this.options.style.def&&!t);n.content&&n.content.toggleClass(bt("content"),t);n.titlebar&&n.titlebar.toggleClass(bt("header"),t);n.button&&n.button.toggleClass(o+"-icon",!t)};e._storeMouse=function(n){return(this.mouse=r.event.fix(n)).type="mousemove",this};e._bind=function(n,t,i,u,f){if(n&&i&&t.length){var e="."+this._id+(u?"-"+u:"");return r(n).bind((t.split?t:t.join(e+" "))+e,r.proxy(i,f||this)),this}};e._unbind=function(n,t){return n&&r(n).unbind("."+this._id+(t?"-"+t:"")),this};e._trigger=function(n,t,i){var f=r.Event("tooltip"+n);return f.originalEvent=i&&r.extend({},i)||this.cache.event||s,this.triggering=n,this.tooltip.trigger(f,[this].concat(t||[])),this.triggering=u,!f.isDefaultPrevented()};e._bindEvents=function(n,t,i,u,f,e){var o=i.filter(u).add(u.filter(i)),s=[];o.length&&(r.each(t,function(t,i){var u=r.inArray(i,n);u>-1&&s.push(n.splice(u,1)[0])}),s.length&&(this._bind(o,s,function(n){var t=this.rendered?this.tooltip[0].offsetWidth>0:!1;(t?e:f).call(this,n)}),i=i.not(o),u=u.not(o)));this._bind(i,n,f);this._bind(u,t,e)};e._assignInitialEvents=function(n){function i(n){return this.disabled||this.destroyed?u:(this.cache.event=n&&r.event.fix(n),this.cache.target=n&&r(n.target),clearTimeout(this.timers.show),void(this.timers.show=kt.call(this,function(){this.render("object"==typeof n||t.show.ready)},t.prerender?0:t.show.delay)))}var t=this.options,e=t.show.target,s=t.hide.target,h=t.show.event?r.trim(""+t.show.event).split(" "):[],o=t.hide.event?r.trim(""+t.hide.event).split(" "):[];this._bind(this.elements.target,["remove","removeqtip"],function(){this.destroy(!0)},"destroy");/mouse(over|enter)/i.test(t.show.event)&&!/mouse(out|leave)/i.test(t.hide.event)&&o.push("mouseleave");this._bind(e,"mousemove",function(n){this._storeMouse(n);this.cache.onTarget=f});this._bindEvents(h,o,e,s,i,function(){return this.timers?void clearTimeout(this.timers.show):u});(t.show.ready||t.prerender)&&i.call(this,n)};e._assignEvents=function(){var y=this,i=this.options,f=i.position,e=this.tooltip,s=i.show.target,o=i.hide.target,p=f.container,h=f.viewport,l=r(t),v=(r(t.body),r(n)),w=i.show.event?r.trim(""+i.show.event).split(" "):[],b=i.hide.event?r.trim(""+i.hide.event).split(" "):[];r.each(i.events,function(n,t){y._bind(e,"toggle"===n?["tooltipshow","tooltiphide"]:["tooltip"+n],t,null,e)});/mouse(out|leave)/i.test(i.hide.event)&&"window"===i.hide.leave&&this._bind(l,["mouseout","blur"],function(n){/select|option/.test(n.target.nodeName)||n.relatedTarget||this.hide(n)});i.hide.fixed?o=o.add(e.addClass(nr)):/mouse(over|enter)/i.test(i.show.event)&&this._bind(o,"mouseleave",function(){clearTimeout(this.timers.show)});(""+i.hide.event).indexOf("unfocus")>-1&&this._bind(p.closest("html"),["mousedown","touchstart"],function(n){var t=r(n.target),i=this.rendered&&!this.tooltip.hasClass(a)&&this.tooltip[0].offsetWidth>0,u=t.parents(rt).filter(this.tooltip[0]).length>0;t[0]===this.target[0]||t[0]===this.tooltip[0]||u||this.target.has(t[0]).length||!i||this.hide(n)});"number"==typeof i.hide.inactive&&(this._bind(s,"qtip-"+this.id+"-inactive",fi,"inactive"),this._bind(o.add(e),c.inactiveEvents,fi));this._bindEvents(w,b,s,o,hr,cr);this._bind(s.add(e),"mousemove",function(n){if("number"==typeof i.hide.distance){var t=this.cache.origin||{},r=this.options.hide.distance,u=Math.abs;(u(n.pageX-t.pageX)>=r||u(n.pageY-t.pageY)>=r)&&this.hide(n)}this._storeMouse(n)});"mouse"===f.target&&f.adjust.mouse&&(i.hide.event&&this._bind(s,["mouseenter","mouseleave"],function(n){return this.cache?void(this.cache.onTarget="mouseenter"===n.type):u}),this._bind(l,"mousemove",function(n){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass(a)&&this.tooltip[0].offsetWidth>0&&this.reposition(n)}));(f.adjust.resize||h.length)&&this._bind(r.event.special.resize?h:v,"resize",pi);f.adjust.scroll&&this._bind(v.add(f.container),"scroll",pi)};e._unassignEvents=function(){var u=this.options,f=u.show.target,e=u.hide.target,i=r.grep([this.elements.target[0],this.rendered&&this.tooltip[0],u.position.container[0],u.position.viewport[0],u.position.container.closest("html")[0],n,t],function(n){return"object"==typeof n});f&&f.toArray&&(i=i.concat(f.toArray()));e&&e.toArray&&(i=i.concat(e.toArray()));this._unbind(i)._unbind(i,"destroy")._unbind(i,"inactive")};r(function(){wi(rt,["mouseenter","mouseleave"],function(n){var u="mouseenter"===n.type,i=r(n.currentTarget),f=r(n.relatedTarget||n.target),t=this.options;u?(this.focus(n),i.hasClass(nr)&&!i.hasClass(a)&&clearTimeout(this.timers.hide)):"mouse"===t.position.target&&t.position.adjust.mouse&&t.hide.event&&t.show.target&&!f.closest(t.show.target[0]).length&&this.hide(n);i.toggleClass(pr,u)});wi("["+ni+"]",gi,fi)});c=r.fn.qtip=function(n,t,e){var a=(""+n).toLowerCase(),y=s,p=r.makeArray(arguments).slice(1),v=p[p.length-1],l=this[0]?r.data(this[0],o):s;return!arguments.length&&l||"api"===a?l:"string"==typeof n?(this.each(function(){var n=r.data(this,o);if(!n)return f;if(v&&v.timeStamp&&(n.cache.event=v),t&&("option"===a||"options"===a)){if(e===i&&!r.isPlainObject(t))return y=n.get(t),u;n.set(t,e)}else n[a]&&n[a].apply(n,p)}),y!==s?y:this):"object"!=typeof n&&arguments.length?void 0:(l=wt(r.extend(f,{},n)),this.each(function(n){var i,t;return t=r.isArray(l.id)?l.id[n]:l.id,t=!t||t===u||t.length<1||c.api[t]?c.nextid++:t,i=lr(r(this),t,l),i===u?f:(c.api[t]=i,r.each(h,function(){"initialize"===this.initialize&&this(i)}),void i._assignInitialEvents(v))}))};r.qtip=ui;c.api={};r.each({attr:function(n,t){if(this.length){var u=this[0],f="title",i=r.data(u,"qtip");if(n===f&&i&&"object"==typeof i&&i.options.suppress)return arguments.length<2?r.attr(u,ut):(i&&i.options.content.attr===f&&i.cache.attr&&i.set("content.text",t),this.attr(ut,t))}return r.fn["attr"+ht].apply(this,arguments)},clone:function(n){var t=(r([]),r.fn["clone"+ht].apply(this,arguments));return n||t.filter("["+ut+"]").attr("title",function(){return r.attr(this,ut)}).removeAttr(ut),t}},function(n,t){if(!t||r.fn[n+ht])return f;var i=r.fn[n+ht]=r.fn[n];r.fn[n]=function(){return t.apply(this,arguments)||i.apply(this,arguments)}});r.ui||(r["cleanData"+ht]=r.cleanData,r.cleanData=function(n){for(var t,i=0;(t=r(n[i])).length;i++)if(t.attr(ei))try{t.triggerHandler("removeqtip")}catch(u){}r["cleanData"+ht].apply(this,arguments)});c.version="2.2.1";c.nextid=0;c.inactiveEvents=gi;c.zindex=15e3;c.defaults={prerender:u,id:u,overwrite:f,suppress:f,content:{text:f,attr:"title",title:u,button:u},position:{my:"top left",at:"bottom right",target:u,container:u,viewport:u,adjust:{x:0,y:0,mouse:f,scroll:f,resize:f,method:"flipinvert flipinvert"},effect:function(n,t){r(this).animate(t,{duration:200,queue:u})}},show:{target:u,event:"mouseenter",effect:f,delay:90,solo:u,ready:u,autofocus:u},hide:{target:u,event:"mouseleave",effect:f,delay:0,fixed:u,inactive:u,leave:"window",distance:u},style:{classes:"",widget:u,width:u,height:u,def:f},events:{render:s,move:s,show:s,hide:s,toggle:s,visible:s,hidden:s,focus:s,blur:s}};var si,hi="margin",ti="border",pt="color",ct="background-color",rr="transparent",ur=" !important",ii=!!t.createElement("canvas").getContext,fr=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,ci={},wr=["Webkit","O","Moz","ms"];if(ii)var br=n.devicePixelRatio||1,kr=function(){var n=t.createElement("canvas").getContext("2d");return n.backingStorePixelRatio||n.webkitBackingStorePixelRatio||n.mozBackingStorePixelRatio||n.msBackingStorePixelRatio||n.oBackingStorePixelRatio||1}(),lt=br/kr;else li=function(n,t,i){return"<qtipvml:"+n+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(t||"")+' style="behavior: url(#default#VML); '+(i||"")+'" />'};r.extend(bi.prototype,{init:function(n){var t,i;i=this.element=n.elements.tip=r("<div />",{"class":o+"-tip"}).prependTo(n.tooltip);ii?(t=r("<canvas />").appendTo(this.element)[0].getContext("2d"),t.lineJoin="miter",t.miterLimit=1e5,t.save()):(t=li("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(t+t),n._bind(r("*",i).add(i),["click","mousedown"],function(n){n.stopPropagation()},this._ns));n._bind(n.tooltip,"tooltipmove",this.reposition,this._ns,this);this.create()},_swapDimensions:function(){this.size[0]=this.options.height;this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width;this.size[1]=this.options.height},_useTitle:function(n){var t=this.qtip.elements.titlebar;return t&&(n.y===b||n.y===l&&this.element.position().top+this.size[1]/2+this.options.offset<t.outerHeight(f))},_parseCorner:function(n){var t=this.qtip.options.position.my;return n===u||t===u?n=u:n===f?n=new tt(t.string()):n.string||(n=new tt(n),n.fixed=f),n},_parseWidth:function(n,t,i){var r=this.qtip.elements,u=ti+at(t)+"Width";return(i?ot(i,u):ot(r.content,u)||ot(this._useTitle(n)&&r.titlebar||r.content,u)||ot(r.tooltip,u))||0},_parseRadius:function(n){var t=this.qtip.elements,i=ti+at(n.y)+at(n.x)+"Radius";return v.ie<9?0:ot(this._useTitle(n)&&t.titlebar||t.content,i)||ot(t.tooltip,i)||0},_invalidColour:function(n,t,i){var r=n.css(t);return!r||i&&r===n.css(i)||fr.test(r)?u:r},_parseColours:function(n){var i=this.qtip.elements,u=this.element.css("cssText",""),f=ti+at(n[n.precedance])+at(pt),o=this._useTitle(n)&&i.titlebar||i.content,t=this._invalidColour,e=[];return e[0]=t(u,ct)||t(o,ct)||t(i.content,ct)||t(i.tooltip,ct)||u.css(ct),e[1]=t(u,f,pt)||t(o,f,pt)||t(i.content,f,pt)||t(i.tooltip,f,pt)||i.tooltip.css(f),r("*",u).add(u).css("cssText",ct+":"+rr+ur+";"+ti+":0"+ur+";"),e},_calculateSize:function(n){var o,f,e,s=n.precedance===y,h=this.options.width,r=this.options.height,c="c"===n.abbrev(),l=(s?h:r)*(c?.5:1),i=Math.pow,a=Math.round,u=Math.sqrt(i(l,2)+i(r,2)),t=[this.border/l*u,this.border/r*u];return t[2]=Math.sqrt(i(t[0],2)-i(this.border,2)),t[3]=Math.sqrt(i(t[1],2)-i(this.border,2)),o=u+t[2]+t[3]+(c?0:t[0]),f=o/u,e=[a(f*h),a(f*r)],s?e:e.reverse()},_calculateTip:function(n,t,i){i=i||1;t=t||this.size;var r=t[0]*i,u=t[1]*i,e=Math.ceil(r/2),o=Math.ceil(u/2),f={br:[0,0,r,u,r,0],bl:[0,0,r,0,0,u],tr:[0,u,r,0,r,u],tl:[0,0,0,u,r,u],tc:[0,u,e,0,r,u],bc:[0,0,r,0,e,u],rc:[0,0,r,o,0,u],lc:[r,0,r,u,0,o]};return f.lt=f.br,f.rt=f.bl,f.lb=f.tr,f.rb=f.tl,f[n.abbrev()]},_drawCoords:function(n,t){n.beginPath();n.moveTo(t[0],t[1]);n.lineTo(t[2],t[3]);n.lineTo(t[4],t[5]);n.closePath()},create:function(){var n=this.corner=(ii||v.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=n.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(t,i){if(!this.enabled)return this;var a,et,h,c,ot,g,o,s,ht=this.qtip.elements,st=this.element,rt=st.children(),ut=this.options,nt=this.size,e=ut.mimic,ft=Math.round;t||(t=this.qtip.cache.corner||this.corner);e===u?e=t:(e=new tt(e),e.precedance=t.precedance,"inherit"===e.x?e.x=t.x:"inherit"===e.y?e.y=t.y:e.x===e.y&&(e[t.precedance]=t[t.precedance]));et=e.precedance;t.precedance===w?this._swapDimensions():this._resetDimensions();a=this.color=this._parseColours(t);a[1]!==rr?(s=this.border=this._parseWidth(t,t[t.precedance]),ut.border&&1>s&&!fr.test(a[1])&&(a[0]=a[1]),this.border=s=ut.border!==f?ut.border:s):this.border=s=0;o=this.size=this._calculateSize(t);st.css({width:o[0],height:o[1],lineHeight:o[1]+"px"});g=t.precedance===y?[ft(e.x===p?s:e.x===k?o[0]-nt[0]-s:(o[0]-nt[0])/2),ft(e.y===b?o[1]-nt[1]:0)]:[ft(e.x===p?o[0]-nt[0]:0),ft(e.y===b?s:e.y===it?o[1]-nt[1]-s:(o[1]-nt[1])/2)];ii?(h=rt[0].getContext("2d"),h.restore(),h.save(),h.clearRect(0,0,6e3,6e3),c=this._calculateTip(e,nt,lt),ot=this._calculateTip(e,this.size,lt),rt.attr(d,o[0]*lt).attr(vt,o[1]*lt),rt.css(d,o[0]).css(vt,o[1]),this._drawCoords(h,ot),h.fillStyle=a[1],h.fill(),h.translate(g[0]*lt,g[1]*lt),this._drawCoords(h,c),h.fillStyle=a[0],h.fill()):(c=this._calculateTip(e),c="m"+c[0]+","+c[1]+" l"+c[2]+","+c[3]+" "+c[4]+","+c[5]+" xe",g[2]=s&&/^(r|b)/i.test(t.string())?8===v.ie?2:1:0,rt.css({coordsize:o[0]+s+" "+(o[1]+s),antialias:""+(e.string().indexOf(l)>-1),left:g[0]-g[2]*Number(et===w),top:g[1]-g[2]*Number(et===y),width:o[0]+s,height:o[1]+s}).each(function(n){var t=r(this);t[t.prop?"prop":"attr"]({coordsize:o[0]+s+" "+(o[1]+s),path:c,fillcolor:a[0],filled:!!n,stroked:!n}).toggle(!(!s&&!n));n||t.html(li("stroke",'weight="'+2*s+'px" color="'+a[1]+'" miterlimit="1000" joinstyle="miter"'))}));n.opera&&setTimeout(function(){ht.tip.css({display:"inline-block",visibility:"visible"})},1);i!==u&&this.calculate(t,o)},calculate:function(n,t){if(!this.enabled)return u;var i,o,e=this,s=this.qtip.elements,c=this.element,h=this.options.offset,f=(s.tooltip.hasClass("ui-widget"),{});return n=n||this.corner,i=n.precedance,t=t||this._calculateSize(n),o=[n.x,n.y],i===w&&o.reverse(),r.each(o,function(r,u){var o,a,c;u===l?(o=i===y?p:b,f[o]="50%",f[hi+"-"+o]=-Math.round(t[i===y?0:1]/2)+h):(o=e._parseWidth(n,u,s.tooltip),a=e._parseWidth(n,u,s.content),c=e._parseRadius(n),f[u]=Math.max(-e.border,r?a:h+(c>o?c:-o)))}),f[n[i]]-=t[i===w?0:1],c.css({margin:"",top:"",bottom:"",left:"",right:""}).css(f),f},reposition:function(n,t,r){function tt(n,t,i,r,u){n===et&&s.precedance===t&&h[r]&&s[i]!==l?s.precedance=s.precedance===w?y:w:n!==et&&h[r]&&(s[t]=s[t]===l?h[r]>0?r:u:s[t]===r?u:r)}function rt(n,t,f){s[n]===l?nt[hi+"-"+t]=o[n]=e[hi+"-"+t]-h[t]:(a=e[f]!==i?[h[t],-e[t]]:[-h[t],e[t]],(o[n]=Math.max(a[0],a[1]))>a[0]&&(r[t]-=h[t],o[t]=u),nt[e[f]!==i?f:t]=o[n])}if(this.enabled){var e,a,c=t.cache,s=this.corner.clone(),h=r.adjusted,v=t.options.position.adjust.method.split(" "),d=v[0],g=v[1]||v[0],o={left:u,top:u,x:0,y:0},nt={};this.corner.fixed!==f&&(tt(d,w,y,p,k),tt(g,y,w,b,it),(s.string()!==c.corner.string()||c.cornerTop!==h.top||c.cornerLeft!==h.left)&&this.update(s,u));e=this.calculate(s);e.right!==i&&(e.left=-e.right);e.bottom!==i&&(e.top=-e.bottom);e.user=this.offset;(o.left=d===et&&!!h.left)&&rt(w,p,k);(o.top=g===et&&!!h.top)&&rt(y,b,it);this.element.css(nt).toggle(!(o.x&&o.y||s.x===l&&o.y||s.y===l&&o.x));r.left-=e.left.charAt?e.user:d!==et||o.top||!o.left&&!o.top?e.left+this.border:0;r.top-=e.top.charAt?e.user:g!==et||o.left||!o.left&&!o.top?e.top+this.border:0;c.cornerLeft=h.left;c.cornerTop=h.top;c.corner=s.clone()}},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns);this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}});si=h.tip=function(n){return new bi(n,n.options.style.tip)};si.initialize="render";si.sanitize=function(n){if(n.style&&"tip"in n.style){var t=n.style.tip;"object"!=typeof t&&(t=n.style.tip={corner:t});/string|boolean/i.test(typeof t.corner)||(t.corner=f)}};dt.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create();this.qtip.reposition()},"^style.tip.(height|width)$":function(n){this.size=[n.width,n.height];this.update();this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}};r.extend(f,c.defaults,{style:{tip:{corner:f,mimic:u,width:6,height:6,border:f,offset:0}}});ri="qtip-modal";nt="."+ri;g=function(){function l(n){if(r.expr[":"].focusable)return r.expr[":"].focusable;var t,i,u,e=!isNaN(r.attr(n,"tabindex")),f=n.nodeName&&n.nodeName.toLowerCase();return"area"===f?(t=n.parentNode,i=t.name,n.href&&i&&"map"===t.nodeName.toLowerCase()?(u=r("img[usemap=#"+i+"]")[0],!!u&&u.is(":visible")):!1):/input|select|textarea|button|object/.test(f)?!n.disabled:"a"===f?n.href||e:e}function h(n){o.length<1&&n.length?n.not("body").blur():o.first().focus()}function a(t){if(n.is(":visible")){var e,f=r(t.target),s=i.tooltip,c=f.closest(rt);e=c.length<1?u:parseInt(c[0].style.zIndex,10)>parseInt(s[0].style.zIndex,10);e||f.closest(rt)[0]===s[0]||h(f);v=t.target===o[o.length-1]}}var i,v,c,n,e=this,o={};r.extend(e,{init:function(){return n=e.elem=r("<div />",{id:"qtip-overlay",html:"<div><\/div>",mousedown:function(){return u}}).hide(),r(t.body).bind("focusin"+nt,a),r(t).bind("keydown"+nt,function(n){i&&i.options.show.modal.escape&&27===n.keyCode&&i.hide(n)}),n.bind("click"+nt,function(n){i&&i.options.show.modal.blur&&i.hide(n)}),e},update:function(n){i=n;o=n.options.show.modal.stealfocus!==u?n.tooltip.find("*").filter(function(){return l(this)}):[]},toggle:function(o,l,a){var p=(r(t.body),o.tooltip),v=o.options.show.modal,y=v.effect,w=l?"show":"hide",b=n.is(":visible"),k=r(nt).filter(":visible:not(:animated)").not(p);return e.update(o),l&&v.stealfocus!==u&&h(r(":focus")),n.toggleClass("blurs",v.blur),l&&n.appendTo(t.body),n.is(":animated")&&b===l&&c!==u||!l&&k.length?e:(n.stop(f,u),r.isFunction(y)?y.call(n,l):y===u?n[w]():n.fadeTo(parseInt(a,10)||90,l?1:0,function(){l||n.hide()}),l||n.queue(function(t){n.css({left:"",top:""});r(nt).length||n.detach();t()}),c=l,i.destroyed&&(i=s),e)}});e.init()};g=new g;r.extend(ki.prototype,{init:function(n){var t=n.tooltip;return this.options.on?(n.elements.overlay=g.elem,t.addClass(ri).css("z-index",c.modal_zindex+r(nt).length),n._bind(t,["tooltipshow","tooltiphide"],function(n,i,u){var f=n.originalEvent;if(n.target===t[0])if(f&&"tooltiphide"===n.type&&/mouse(leave|enter)/.test(f.type)&&r(f.relatedTarget).closest(g.elem[0]).length)try{n.preventDefault()}catch(e){}else(!f||f&&"tooltipsolo"!==f.type)&&this.toggle(n,"tooltipshow"===n.type,u)},this._ns,this),n._bind(t,"tooltipfocus",function(n,i){if(!n.isDefaultPrevented()&&n.target===t[0]){var u=r(nt),f=c.modal_zindex+u.length,e=parseInt(t[0].style.zIndex,10);g.elem[0].style.zIndex=f-1;u.each(function(){this.style.zIndex>e&&(this.style.zIndex-=1)});u.filter("."+st).qtip("blur",n.originalEvent);t.addClass(st)[0].style.zIndex=f;g.update(i);try{n.preventDefault()}catch(o){}}},this._ns,this),void n._bind(t,"tooltiphide",function(n){n.target===t[0]&&r(nt).filter(":visible").not(t).last().qtip("focus",n)},this._ns,this)):this},toggle:function(n,t,i){return n&&n.isDefaultPrevented()?this:void g.toggle(this.qtip,!!t,i)},destroy:function(){this.qtip.tooltip.removeClass(ri);this.qtip._unbind(this.qtip.tooltip,this._ns);g.toggle(this.qtip,u);delete this.qtip.elements.overlay}});ai=h.modal=function(n){return new ki(n,n.options.show.modal)};ai.sanitize=function(n){n.show&&("object"!=typeof n.show.modal?n.show.modal={on:!!n.show.modal}:"undefined"==typeof n.show.modal.on&&(n.show.modal.on=f))};c.modal_zindex=c.zindex-200;ai.initialize="render";dt.modal={"^show.modal.(on|blur)$":function(){this.destroy();this.init();this.qtip.elems.overlay.toggle(this.qtip.tooltip[0].offsetWidth>0)}};r.extend(f,c.defaults,{show:{modal:{on:u,effect:f,blur:f,stealfocus:f,escape:f}}});h.viewport=function(i,r,f,e,o,s,h){function at(n,t,i,u,f,e,o,s,h){var y=r[f],c=v[n],k=kt[n],rt=i===et,tt=c===f?h:c===e?-h:-h/2,ut=k===f?s:k===e?-s:-s/2,it=st[f]+nt[f]-(yt?0:g[f]),b=it-y,w=y+h-(o===d?ft:ot)-it,p=tt-(v.precedance===n||c===v[t]?ut:0)-(k===l?s/2:0);return rt?(p=(c===f?1:-1)*tt,r[f]+=b>0?b:w>0?-w:0,r[f]=Math.max(-g[f]+nt[f],y-p,Math.min(Math.max(-g[f]+nt[f]+(o===d?ft:ot),y+p),r[f],"center"===c?y-tt:1e9))):(u*=i===vr?2:0,b>0&&(c!==f||w>0)?(r[f]-=p+u,a.invert(n,f)):w>0&&(c!==e||b>0)&&(r[f]-=(c===l?-p:p)+u,a.invert(n,e)),r[f]<st&&-r[f]>w&&(r[f]=y,a=v.clone())),r[f]-y}var ut,a,g,yt,ft,ot,st,nt,pt=f.target,bt=i.elements.tooltip,v=f.my,kt=f.at,tt=f.adjust,ht=tt.method.split(" "),ct=ht[0],lt=ht[1]||ht[0],c=f.viewport,wt=f.container,rt=(i.cache,{left:0,top:0});return c.jquery&&pt[0]!==n&&pt[0]!==t.body&&"none"!==tt.method?(g=wt.offset()||rt,yt="static"===wt.css("position"),ut="fixed"===bt.css("position"),ft=c[0]===n?c.width():c.outerWidth(u),ot=c[0]===n?c.height():c.outerHeight(u),st={left:ut?0:c.scrollLeft(),top:ut?0:c.scrollTop()},nt=c.offset()||rt,("shift"!==ct||"shift"!==lt)&&(a=v.clone()),rt={left:"none"!==ct?at(w,y,ct,tt.x,p,k,d,e,s):0,top:"none"!==lt?at(y,w,lt,tt.y,b,it,vt,o,h):0,my:a}):rt};h.polys={polygon:function(n,t){for(var r,h,c,i={width:0,height:0,position:{top:1e10,right:0,bottom:0,left:1e10},adjustable:u},f=0,e=[],o=1,s=1,a=0,v=0,f=n.length;f--;)r=[parseInt(n[--f],10),parseInt(n[f+1],10)],r[0]>i.position.right&&(i.position.right=r[0]),r[0]<i.position.left&&(i.position.left=r[0]),r[1]>i.position.bottom&&(i.position.bottom=r[1]),r[1]<i.position.top&&(i.position.top=r[1]),e.push(r);if(h=i.width=Math.abs(i.position.right-i.position.left),c=i.height=Math.abs(i.position.bottom-i.position.top),"c"===t.abbrev())i.position={left:i.position.left+i.width/2,top:i.position.top+i.height/2};else{for(;h>0&&c>0&&o>0&&s>0;)for(h=Math.floor(h/2),c=Math.floor(c/2),t.x===p?o=h:t.x===k?o=i.width-h:o+=Math.floor(h/2),t.y===b?s=c:t.y===it?s=i.height-c:s+=Math.floor(c/2),f=e.length;f--&&!(e.length<2);)a=e[f][0]-i.position.left,v=e[f][1]-i.position.top,(t.x===p&&a>=o||t.x===k&&o>=a||t.x===l&&(o>a||a>i.width-o)||t.y===b&&v>=s||t.y===it&&s>=v||t.y===l&&(s>v||v>i.height-s))&&e.splice(f,1);i.position={left:e[0][0],top:e[0][1]}}return i},rect:function(n,t,i,r){return{width:Math.abs(i-n),height:Math.abs(r-t),position:{left:Math.min(n,i),top:Math.min(t,r)}}},_angles:{tc:1.5,tr:7/4,tl:5/4,bc:.5,br:.25,bl:.75,rc:2,lc:1,c:0},ellipse:function(n,t,i,r,f){var e=h.polys._angles[f.abbrev()],o=0===e?0:i*Math.cos(e*Math.PI),s=r*Math.sin(e*Math.PI);return{width:2*i-Math.abs(o),height:2*r-Math.abs(s),position:{left:n+o,top:t+s},adjustable:u}},circle:function(n,t,i,r){return h.polys.ellipse(n,t,i,i,r)}};h.svg=function(n,i,f){for(var a,b,p,k,w,v,s,o,c,e=(r(t),i[0]),y=r(e.ownerSVGElement),l=e.ownerDocument,d=(parseInt(i.css("stroke-width"),10)||0)/2;!e.getBBox;)e=e.parentNode;if(!e.getBBox||!e.parentNode)return u;switch(e.nodeName){case"ellipse":case"circle":o=h.polys.ellipse(e.cx.baseVal.value,e.cy.baseVal.value,(e.rx||e.r).baseVal.value+d,(e.ry||e.r).baseVal.value+d,f);break;case"line":case"polygon":case"polyline":for(s=e.points||[{x:e.x1.baseVal.value,y:e.y1.baseVal.value},{x:e.x2.baseVal.value,y:e.y2.baseVal.value}],o=[],v=-1,k=s.numberOfItems||s.length;++v<k;)w=s.getItem?s.getItem(v):s[v],o.push.apply(o,[w.x,w.y]);o=h.polys.polygon(o,f);break;default:o=e.getBBox();o={width:o.width,height:o.height,position:{left:o.x,top:o.y}}}return c=o.position,y=y[0],y.createSVGPoint&&(b=e.getScreenCTM(),s=y.createSVGPoint(),s.x=c.left,s.y=c.top,p=s.matrixTransform(b),c.left=p.x,c.top=p.y),l!==t&&"mouse"!==n.position.target&&(a=r((l.defaultView||l.parentWindow).frameElement).offset(),a&&(c.left+=a.left,c.top+=a.top)),l=r(l),c.left+=l.scrollLeft(),c.top+=l.scrollTop(),o};h.imagemap=function(n,t,i){t.jquery||(t=r(t));var e,s,c,o,v,l=(t.attr("shape")||"rect").toLowerCase().replace("poly","polygon"),f=r('img[usemap="#'+t.parent("map").attr("name")+'"]'),y=r.trim(t.attr("coords")),a=y.replace(/,$/,"").split(",");if(!f.length)return u;if("polygon"===l)o=h.polys.polygon(a,i);else{if(!h.polys[l])return u;for(c=-1,v=a.length,s=[];++c<v;)s.push(parseInt(a[c],10));o=h.polys[l].apply(this,s.concat(i))}return e=f.offset(),e.left+=Math.ceil((f.outerWidth(u)-f.width())/2),e.top+=Math.ceil((f.outerHeight(u)-f.height())/2),o.position.left+=e.left,o.position.top+=e.top,o};or='<iframe class="qtip-bgiframe" frameborder="0" tabindex="-1" src="javascript:\'\';"  style="display:block; position:absolute; z-index:-1; filter:alpha(opacity=0); -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";"><\/iframe>';r.extend(di.prototype,{_scroll:function(){var t=this.qtip.elements.overlay;t&&(t[0].style.top=r(n).scrollTop()+"px")},init:function(i){var u=i.tooltip;r("select, object").length<1&&(this.bgiframe=i.elements.bgiframe=r(or).appendTo(u),i._bind(u,"tooltipmove",this.adjustBGIFrame,this._ns,this));this.redrawContainer=r("<div/>",{id:o+"-rcontainer"}).appendTo(t.body);i.elements.overlay&&i.elements.overlay.addClass("qtipmodal-ie6fix")&&(i._bind(n,["scroll","resize"],this._scroll,this._ns,this),i._bind(u,["tooltipshow"],this._scroll,this._ns,this));this.redraw()},adjustBGIFrame:function(){var t,n,i=this.qtip.tooltip,e={height:i.outerHeight(u),width:i.outerWidth(u)},r=this.qtip.plugins.tip,f=this.qtip.elements.tip;n=parseInt(i.css("borderLeftWidth"),10)||0;n={left:-n,top:-n};r&&f&&(t="x"===r.corner.precedance?[d,p]:[vt,b],n[t[1]]-=f[t[0]]());this.bgiframe.css(n).css(e)},redraw:function(){if(this.qtip.rendered<1||this.drawing)return this;var f,n,t,i,r=this.qtip.tooltip,u=this.qtip.options.style,e=this.qtip.options.position.container;return this.qtip.drawing=1,u.height&&r.css(vt,u.height),u.width?r.css(d,u.width):(r.css(d,"").appendTo(this.redrawContainer),n=r.width(),1>n%2&&(n+=1),t=r.css("maxWidth")||"",i=r.css("minWidth")||"",f=(t+i).indexOf("%")>-1?e.width()/100:0,t=(t.indexOf("%")>-1?f:1)*parseInt(t,10)||n,i=(i.indexOf("%")>-1?f:1)*parseInt(i,10)||0,n=t+i?Math.min(Math.max(n,i),t):n,r.css(d,Math.round(n)).appendTo(e)),this.drawing=0,this},destroy:function(){this.bgiframe&&this.bgiframe.remove();this.qtip._unbind([n,this.qtip.tooltip],this._ns)}});er=h.ie6=function(n){return 6===v.ie?new di(n):u};er.initialize="render";dt.ie6={"^content|style$":function(){this.redraw()}}})}(window,document);!function(n){"function"==typeof define&&define.amd?define(["jquery"],n):"object"==typeof module&&"object"==typeof module.exports?module.exports=n(require("jquery")):n(jQuery)}(function(n){return function(t){"use strict";var i=t.tablesorter={version:"2.28.4",parsers:[],widgets:[],defaults:{theme:"default",widthFixed:!1,showProcessing:!1,headerTemplate:"{content}",onRenderTemplate:null,onRenderHeader:null,cancelSelection:!0,tabIndex:!0,dateFormat:"mmddyyyy",sortMultiSortKey:"shiftKey",sortResetKey:"ctrlKey",usNumberFormat:!0,delayInit:!1,serverSideSorting:!1,resort:!0,headers:{},ignoreCase:!0,sortForce:null,sortList:[],sortAppend:null,sortStable:!1,sortInitialOrder:"asc",sortLocaleCompare:!1,sortReset:!1,sortRestart:!1,emptyTo:"bottom",stringTo:"max",duplicateSpan:!0,textExtraction:"basic",textAttribute:"data-text",textSorter:null,numberSorter:null,initWidgets:!0,widgetClass:"widget-{name}",widgets:[],widgetOptions:{zebra:["even","odd"]},initialized:null,tableClass:"",cssAsc:"",cssDesc:"",cssNone:"",cssHeader:"",cssHeaderRow:"",cssProcessing:"",cssChildRow:"tablesorter-childRow",cssInfoBlock:"tablesorter-infoOnly",cssNoSort:"tablesorter-noSort",cssIgnoreRow:"tablesorter-ignoreRow",cssIcon:"tablesorter-icon",cssIconNone:"",cssIconAsc:"",cssIconDesc:"",pointerClick:"click",pointerDown:"mousedown",pointerUp:"mouseup",selectorHeaders:"> thead th, > thead td",selectorSort:"th, td",selectorRemove:".remove-me",debug:!1,headerList:[],empties:{},strings:{},parsers:[],globalize:0,imgAttr:0},css:{table:"tablesorter",cssHasChild:"tablesorter-hasChildRow",childRow:"tablesorter-childRow",colgroup:"tablesorter-colgroup",header:"tablesorter-header",headerRow:"tablesorter-headerRow",headerIn:"tablesorter-header-inner",icon:"tablesorter-icon",processing:"tablesorter-processing",sortAsc:"tablesorter-headerAsc",sortDesc:"tablesorter-headerDesc",sortNone:"tablesorter-headerUnSorted"},language:{sortAsc:"Ascending sort applied, ",sortDesc:"Descending sort applied, ",sortNone:"No sort applied, ",sortDisabled:"sorting is disabled",nextAsc:"activate to apply an ascending sort",nextDesc:"activate to apply a descending sort",nextNone:"activate to remove the sort"},regex:{templateContent:/\{content\}/g,templateIcon:/\{icon\}/g,templateName:/\{name\}/i,spaces:/\s+/g,nonWord:/\W/g,formElements:/(input|select|button|textarea)/i,chunk:/(^([+\-]?(?:\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi,chunks:/(^\\0|\\0$)/,hex:/^0x[0-9a-f]+$/i,comma:/,/g,digitNonUS:/[\s|\.]/g,digitNegativeTest:/^\s*\([.\d]+\)/,digitNegativeReplace:/^\s*\(([.\d]+)\)/,digitTest:/^[\-+(]?\d+[)]?$/,digitReplace:/[,.'"\s]/g},string:{max:1,min:-1,emptymin:1,emptymax:-1,zero:0,none:0,"null":0,top:!0,bottom:!1},keyCodes:{enter:13},dates:{},instanceMethods:{},setup:function(n,r){if(!n||!n.tHead||0===n.tBodies.length||n.hasInitialized===!0)return void(r.debug&&(n.hasInitialized?console.warn("Stopping initialization. Tablesorter has already been initialized"):console.error("Stopping initialization! No table, thead or tbody",n)));var f="",u=t(n),e=t.metadata;n.hasInitialized=!1;n.isProcessing=!0;n.config=r;t.data(n,"tablesorter",r);r.debug&&(console[console.group?"group":"log"]("Initializing tablesorter v"+i.version),t.data(n,"startoveralltimer",new Date));r.supportsDataObject=function(n){return n[0]=parseInt(n[0],10),n[0]>1||1===n[0]&&parseInt(n[1],10)>=4}(t.fn.jquery.split("."));r.emptyTo=r.emptyTo.toLowerCase();r.stringTo=r.stringTo.toLowerCase();r.last={sortList:[],clickedIndex:-1};/tablesorter\-/.test(u.attr("class"))||(f=""!==r.theme?" tablesorter-"+r.theme:"");r.table=n;r.$table=u.addClass(i.css.table+" "+r.tableClass+f).attr("role","grid");r.$headers=u.find(r.selectorHeaders);r.namespace=r.namespace?"."+r.namespace.replace(i.regex.nonWord,""):".tablesorter"+Math.random().toString(16).slice(2);r.$table.children().children("tr").attr("role","row");r.$tbodies=u.children("tbody:not(."+r.cssInfoBlock+")").attr({"aria-live":"polite","aria-relevant":"all"});r.$table.children("caption").length&&(f=r.$table.children("caption")[0],f.id||(f.id=r.namespace.slice(1)+"caption"),r.$table.attr("aria-labelledby",f.id));r.widgetInit={};r.textExtraction=r.$table.attr("data-text-extraction")||r.textExtraction||"basic";i.buildHeaders(r);i.fixColumnWidth(n);i.addWidgetFromClass(n);i.applyWidgetOptions(n);i.setupParsers(r);r.totalRows=0;i.validateOptions(r);r.delayInit||i.buildCache(r);i.bindEvents(n,r.$headers,!0);i.bindMethods(r);r.supportsDataObject&&"undefined"!=typeof u.data().sortlist?r.sortList=u.data().sortlist:e&&u.metadata()&&u.metadata().sortlist&&(r.sortList=u.metadata().sortlist);i.applyWidget(n,!0);r.sortList.length>0?i.sortOn(r,r.sortList,{},!r.initWidgets):(i.setHeadersCss(r),r.initWidgets&&i.applyWidget(n,!1));r.showProcessing&&u.unbind("sortBegin"+r.namespace+" sortEnd"+r.namespace).bind("sortBegin"+r.namespace+" sortEnd"+r.namespace,function(t){clearTimeout(r.timerProcessing);i.isProcessing(n);"sortBegin"===t.type&&(r.timerProcessing=setTimeout(function(){i.isProcessing(n,!0)},500))});n.hasInitialized=!0;n.isProcessing=!1;r.debug&&(console.log("Overall initialization time:"+i.benchmark(t.data(n,"startoveralltimer"))),r.debug&&console.groupEnd&&console.groupEnd());u.triggerHandler("tablesorter-initialized",n);"function"==typeof r.initialized&&r.initialized(n)},bindMethods:function(n){var u=n.$table,r=n.namespace,f="sortReset update updateRows updateAll updateHeaders addRows updateCell updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup mouseleave ".split(" ").join(r+" ");u.unbind(f.replace(i.regex.spaces," ")).bind("sortReset"+r,function(n,t){n.stopPropagation();i.sortReset(this.config,t)}).bind("updateAll"+r,function(n,t,r){n.stopPropagation();i.updateAll(this.config,t,r)}).bind("update"+r+" updateRows"+r,function(n,t,r){n.stopPropagation();i.update(this.config,t,r)}).bind("updateHeaders"+r,function(n,t){n.stopPropagation();i.updateHeaders(this.config,t)}).bind("updateCell"+r,function(n,t,r,u){n.stopPropagation();i.updateCell(this.config,t,r,u)}).bind("addRows"+r,function(n,t,r,u){n.stopPropagation();i.addRows(this.config,t,r,u)}).bind("updateComplete"+r,function(){this.isUpdating=!1}).bind("sorton"+r,function(n,t,r,u){n.stopPropagation();i.sortOn(this.config,t,r,u)}).bind("appendCache"+r,function(n,r,u){n.stopPropagation();i.appendCache(this.config,u);t.isFunction(r)&&r(this)}).bind("updateCache"+r,function(n,t,r){n.stopPropagation();i.updateCache(this.config,t,r)}).bind("applyWidgetId"+r,function(n,t){n.stopPropagation();i.applyWidgetId(this,t)}).bind("applyWidgets"+r,function(n,t){n.stopPropagation();i.applyWidget(this,t)}).bind("refreshWidgets"+r,function(n,t,r){n.stopPropagation();i.refreshWidgets(this,t,r)}).bind("removeWidget"+r,function(n,t,r){n.stopPropagation();i.removeWidget(this,t,r)}).bind("destroy"+r,function(n,t,r){n.stopPropagation();i.destroy(this,t,r)}).bind("resetToLoadState"+r,function(r){r.stopPropagation();i.removeWidget(this,!0,!1);var u=t.extend(!0,{},n.originalSettings);n=t.extend(!0,i.defaults,u);n.originalSettings=u;this.hasInitialized=!1;i.setup(this,n)})},bindEvents:function(n,r,u){n=t(n)[0];var e,f=n.config,o=f.namespace,s=null;u!==!0&&(r.addClass(o.slice(1)+"_extra_headers"),e=t.fn.closest?r.closest("table")[0]:r.parents("table")[0],e&&"TABLE"===e.nodeName&&e!==n&&t(e).addClass(o.slice(1)+"_extra_table"));e=(f.pointerDown+" "+f.pointerUp+" "+f.pointerClick+" sort keyup ").replace(i.regex.spaces," ").split(" ").join(o+" ");r.find(f.selectorSort).add(r.filter(f.selectorSort)).unbind(e).bind(e,function(n,u){var l,h,e,c=t(n.target),o=" "+n.type+" ";if(!(1!==(n.which||n.button)&&!o.match(" "+f.pointerClick+" | sort | keyup ")||" keyup "===o&&n.which!==i.keyCodes.enter||o.match(" "+f.pointerClick+" ")&&"undefined"!=typeof n.which||o.match(" "+f.pointerUp+" ")&&s!==n.target&&u!==!0)){if(o.match(" "+f.pointerDown+" "))return s=n.target,e=c.jquery.split("."),void("1"===e[0]&&e[1]<4&&n.preventDefault());if(s=null,i.regex.formElements.test(n.target.nodeName)||c.hasClass(f.cssNoSort)||c.parents("."+f.cssNoSort).length>0||c.parents("button").length>0)return!f.cancelSelection;f.delayInit&&i.isEmptyObject(f.cache)&&i.buildCache(f);l=t.fn.closest?t(this).closest("th, td"):/TH|TD/.test(this.nodeName)?t(this):t(this).parents("th, td");e=r.index(l);f.last.clickedIndex=e<0?l.attr("data-column"):e;h=f.$headers[f.last.clickedIndex];h&&!h.sortDisabled&&i.initSort(f,h,n)}});f.cancelSelection&&r.attr("unselectable","on").bind("selectstart",!1).css({"user-select":"none",MozUserSelect:"none"})},buildHeaders:function(n){var u,f,e,r;for(n.headerList=[],n.headerContent=[],n.sortVars=[],n.debug&&(e=new Date),n.columns=i.computeColumnIndex(n.$table.children("thead, tfoot").children("tr")),f=n.cssIcon?'<i class="'+(n.cssIcon===i.css.icon?i.css.icon:n.cssIcon+" "+i.css.icon)+'"><\/i>':"",n.$headers=t(t.map(n.$table.find(n.selectorHeaders),function(r,u){var l,h,s,c,o,e=t(r);if(!e.parent().hasClass(n.cssIgnoreRow))return l=i.getColumnData(n.table,n.headers,u,!0),n.headerContent[u]=e.html(),""===n.headerTemplate||e.find("."+i.css.headerIn).length||(c=n.headerTemplate.replace(i.regex.templateContent,e.html()).replace(i.regex.templateIcon,e.find("."+i.css.icon).length?"":f),n.onRenderTemplate&&(h=n.onRenderTemplate.apply(e,[u,c]),h&&"string"==typeof h&&(c=h)),e.html('<div class="'+i.css.headerIn+'">'+c+"<\/div>")),n.onRenderHeader&&n.onRenderHeader.apply(e,[u,n,n.$table]),s=parseInt(e.attr("data-column"),10),r.column=s,o=i.getOrder(i.getData(e,l,"sortInitialOrder")||n.sortInitialOrder),n.sortVars[s]={count:-1,order:o?n.sortReset?[1,0,2]:[1,0]:n.sortReset?[0,1,2]:[0,1],lockedOrder:!1},o=i.getData(e,l,"lockedOrder")||!1,"undefined"!=typeof o&&o!==!1&&(n.sortVars[s].lockedOrder=!0,n.sortVars[s].order=i.getOrder(o)?[1,1]:[0,0]),n.headerList[u]=r,e.addClass(i.css.header+" "+n.cssHeader).parent().addClass(i.css.headerRow+" "+n.cssHeaderRow).attr("role","row"),n.tabIndex&&e.attr("tabindex",0),r})),n.$headerIndexed=[],r=0;r<n.columns;r++)i.isEmptyObject(n.sortVars[r])&&(n.sortVars[r]={}),u=n.$headers.filter('[data-column="'+r+'"]'),n.$headerIndexed[r]=u.length?u.not(".sorter-false").length?u.not(".sorter-false").filter(":last"):u.filter(":last"):t();n.$table.find(n.selectorHeaders).attr({scope:"col",role:"columnheader"});i.updateHeader(n);n.debug&&(console.log("Built headers:"+i.benchmark(e)),console.log(n.$headers))},addInstanceMethods:function(n){t.extend(i.instanceMethods,n)},setupParsers:function(n,t){var l,f,e,a,r,v,u,h,b,o,s,k,y,c,d=n.table,p=0,w={};if(n.$tbodies=n.$table.children("tbody:not(."+n.cssInfoBlock+")"),y="undefined"==typeof t?n.$tbodies:t,c=y.length,0===c)return n.debug?console.warn("Warning: *Empty table!* Not building a parser cache"):"";for(n.debug&&(k=new Date,console[console.group?"group":"log"]("Detecting parsers for each column")),f={extractors:[],parsers:[]};p<c;){if(l=y[p].rows,l.length)for(r=0,a=n.columns,v=0;v<a;v++){if(u=n.$headerIndexed[r],u&&u.length&&(h=i.getColumnData(d,n.headers,r),s=i.getParserById(i.getData(u,h,"extractor")),o=i.getParserById(i.getData(u,h,"sorter")),b="false"===i.getData(u,h,"parser"),n.empties[r]=(i.getData(u,h,"empty")||n.emptyTo||(n.emptyToBottom?"bottom":"top")).toLowerCase(),n.strings[r]=(i.getData(u,h,"string")||n.stringTo||"max").toLowerCase(),b&&(o=i.getParserById("no-parser")),s||(s=!1),o||(o=i.detectParserForColumn(n,l,-1,r)),n.debug&&(w["("+r+") "+u.text()]={parser:o.id,extractor:s?s.id:"none",string:n.strings[r],empty:n.empties[r]}),f.parsers[r]=o,f.extractors[r]=s,e=u[0].colSpan-1,e>0))for(r+=e,a+=e;e+1>0;)f.parsers[r-e]=o,f.extractors[r-e]=s,e--;r++}p+=f.parsers.length?c:1}n.debug&&(i.isEmptyObject(w)?console.warn("  No parsers detected!"):console[console.table?"table":"log"](w),console.log("Completed detecting parsers"+i.benchmark(k)),console.groupEnd&&console.groupEnd());n.parsers=f.parsers;n.extractors=f.extractors},addParser:function(n){for(var u=i.parsers.length,r=!0,t=0;t<u;t++)i.parsers[t].id.toLowerCase()===n.id.toLowerCase()&&(r=!1);r&&(i.parsers[i.parsers.length]=n)},getParserById:function(n){if("false"==n)return!1;for(var r=i.parsers.length,t=0;t<r;t++)if(i.parsers[t].id.toLowerCase()===n.toString().toLowerCase())return i.parsers[t];return!1},detectParserForColumn:function(n,r,u,f){for(var e,c,h,l=i.parsers.length,o=!1,s="",a=!0;""===s&&a;)u++,h=r[u],h&&u<50?h.className.indexOf(i.cssIgnoreRow)<0&&(o=r[u].cells[f],s=i.getElementText(n,o,f),c=t(o),n.debug&&console.log("Checking if value was empty on row "+u+", column: "+f+': "'+s+'"')):a=!1;for(;--l>=0;)if(e=i.parsers[l],e&&"text"!==e.id&&e.is&&e.is(s,n.table,o,c))return e;return i.getParserById("text")},getElementText:function(n,r,u){if(!r)return"";var o,e=n.textExtraction||"",f=r.jquery?r:t(r);return"string"==typeof e?"basic"===e&&"undefined"!=typeof(o=f.attr(n.textAttribute))?t.trim(o):t.trim(r.textContent||f.text()):"function"==typeof e?t.trim(e(f[0],n.table,u)):"function"==typeof(o=i.getColumnData(n.table,e,u))?t.trim(o(f[0],n.table,u)):t.trim(f[0].textContent||f.text())},getParsedText:function(n,t,r,u){"undefined"==typeof u&&(u=i.getElementText(n,t,r));var f=""+u,e=n.parsers[r],o=n.extractors[r];return e&&(o&&"function"==typeof o.format&&(u=o.format(u,n.table,t,r)),f="no-parser"===e.id?"":e.format(""+u,n.table,t,r),n.ignoreCase&&"string"==typeof f&&(f=f.toLowerCase())),f},buildCache:function(n,r,u){var a,s,w,v,e,y,g,h,nt,it,o,et,ot,b,k,tt,c,f,rt,d,l,p,ut=n.table,ft=n.parsers;if(n.$tbodies=n.$table.children("tbody:not(."+n.cssInfoBlock+")"),g="undefined"==typeof u?n.$tbodies:u,n.cache={},n.totalRows=0,!ft)return n.debug?console.warn("Warning: *Empty table!* Not building a cache"):"";for(n.debug&&(et=new Date),n.showProcessing&&i.isProcessing(ut,!0),y=0;y<g.length;y++){for(tt=[],a=n.cache[y]={normalized:[]},ot=g[y]&&g[y].rows.length||0,v=0;v<ot;++v)if(b={child:[],raw:[]},h=t(g[y].rows[v]),nt=[],!h.hasClass(n.selectorRemove.slice(1)))if(h.hasClass(n.cssChildRow)&&0!==v)for(l=a.normalized.length-1,k=a.normalized[l][n.columns],k.$row=k.$row.add(h),h.prev().hasClass(n.cssChildRow)||h.prev().addClass(i.css.cssHasChild),it=h.children("th, td"),l=k.child.length,k.child[l]=[],f=0,d=n.columns,e=0;e<d;e++)o=it[e],o&&(k.child[l][e]=i.getParsedText(n,o,e),c=it[e].colSpan-1,c>0&&(f+=c,d+=c)),f++;else{for(b.$row=h,b.order=v,f=0,d=n.columns,e=0;e<d;++e){if(o=h[0].cells[e],o&&f<n.columns&&(rt="undefined"!=typeof ft[f],!rt&&n.debug&&console.warn("No parser found for row: "+v+", column: "+e+'; cell containing: "'+t(o).text()+'"; does it have a header?'),s=i.getElementText(n,o,f),b.raw[f]=s,w=i.getParsedText(n,o,f,s),nt[f]=w,rt&&"numeric"===(ft[f].type||"").toLowerCase()&&(tt[f]=Math.max(Math.abs(w)||0,tt[f]||0)),c=o.colSpan-1,c>0)){for(p=0;p<=c;)w=n.duplicateSpan||0===p?s:"string"!=typeof n.textExtraction?i.getElementText(n,o,f+p)||"":"",b.raw[f+p]=w,nt[f+p]=w,p++;f+=c;d+=c}f++}nt[n.columns]=b;a.normalized[a.normalized.length]=nt}a.colMax=tt;n.totalRows+=a.normalized.length}if(n.showProcessing&&i.isProcessing(ut),n.debug){for(l=Math.min(5,n.cache[0].normalized.length),console[console.group?"group":"log"]("Building cache for "+n.totalRows+" rows (showing "+l+" rows in log) and "+n.columns+" columns"+i.benchmark(et)),s={},e=0;e<n.columns;e++)for(f=0;f<l;f++)s["row: "+f]||(s["row: "+f]={}),s["row: "+f][n.$headerIndexed[e].text()]=n.cache[0].normalized[f][e];console[console.table?"table":"log"](s);console.groupEnd&&console.groupEnd()}t.isFunction(r)&&r(ut)},getColumnText:function(n,r,u,f){n=t(n)[0];var h,c,l,e,b,k,a,v,y,p,d="function"==typeof u,w="all"===r,o={raw:[],parsed:[],$cell:[]},s=n.config;if(!i.isEmptyObject(s)){for(b=s.$tbodies.length,h=0;h<b;h++)for(l=s.cache[h].normalized,k=l.length,c=0;c<k;c++)e=l[c],f&&!e[s.columns].$row.is(f)||(p=!0,v=w?e.slice(0,s.columns):e[r],e=e[s.columns],a=w?e.raw:e.raw[r],y=w?e.$row.children():e.$row.children().eq(r),d&&(p=u({tbodyIndex:h,rowIndex:c,parsed:v,raw:a,$row:e.$row,$cell:y})),p!==!1&&(o.parsed[o.parsed.length]=v,o.raw[o.raw.length]=a,o.$cell[o.$cell.length]=y));return o}s.debug&&console.warn("No cache found - aborting getColumnText function!")},setHeadersCss:function(n){var f,r,e,u=n.sortList,o=u.length,c=i.css.sortNone+" "+n.cssNone,s=[i.css.sortAsc+" "+n.cssAsc,i.css.sortDesc+" "+n.cssDesc],h=[n.cssIconAsc,n.cssIconDesc,n.cssIconNone],a=["ascending","descending"],l=n.$table.find("tfoot tr").children("td, th").add(t(n.namespace+"_extra_headers")).removeClass(s.join(" "));for(n.$headers.add(t("thead "+n.namespace+"_extra_headers")).removeClass(s.join(" ")).addClass(c).attr("aria-sort","none").find("."+i.css.icon).removeClass(h.join(" ")).addClass(h[2]),r=0;r<o;r++)if(2!==u[r][1]&&(f=n.$headers.filter(function(t){for(var r=!0,f=n.$headers.eq(t),u=parseInt(f.attr("data-column"),10),e=u+n.$headers[t].colSpan;u<e;u++)r=!!r&&(r||i.isValueInArray(u,n.sortList)>-1);return r}),f=f.not(".sorter-false").filter('[data-column="'+u[r][0]+'"]'+(1===o?":last":"")),f.length)){for(e=0;e<f.length;e++)f[e].sortDisabled||f.eq(e).removeClass(c).addClass(s[u[r][1]]).attr("aria-sort",a[u[r][1]]).find("."+i.css.icon).removeClass(h[2]).addClass(h[u[r][1]]);l.length&&l.filter('[data-column="'+u[r][0]+'"]').removeClass(c).addClass(s[u[r][1]])}for(o=n.$headers.length,r=0;r<o;r++)i.setColumnAriaLabel(n,n.$headers.eq(r))},setColumnAriaLabel:function(n,r,u){if(r.length){var s=parseInt(r.attr("data-column"),10),f=n.sortVars[s],e=r.hasClass(i.css.sortAsc)?"sortAsc":r.hasClass(i.css.sortDesc)?"sortDesc":"sortNone",o=t.trim(r.text())+": "+i.language[e];r.hasClass("sorter-false")||u===!1?o+=i.language.sortDisabled:(e=(f.count+1)%f.order.length,u=f.order[e],o+=i.language[0===u?"nextAsc":1===u?"nextDesc":"nextNone"]);r.attr("aria-label",o)}},updateHeader:function(n){for(var f,r,u,e=n.table,o=n.$headers.length,t=0;t<o;t++)r=n.$headers.eq(t),u=i.getColumnData(e,n.headers,t,!0),f="false"===i.getData(r,u,"sorter")||"false"===i.getData(r,u,"parser"),i.setColumnSort(n,r,f)},setColumnSort:function(n,t,i){var r=n.table.id;t[0].sortDisabled=i;t[i?"addClass":"removeClass"]("sorter-false").attr("aria-disabled",""+i);n.tabIndex&&(i?t.removeAttr("tabindex"):t.attr("tabindex","0"));r&&(i?t.removeAttr("aria-controls"):t.attr("aria-controls",r))},updateHeaderSortCount:function(n,r){var f,u,s,o,h,c,l,e,a=r||n.sortList,v=a.length;for(n.sortList=[],o=0;o<v;o++)if(l=a[o],f=parseInt(l[0],10),f<n.columns){switch(n.sortVars[f].order||(e=i.getOrder(n.sortInitialOrder)?n.sortReset?[1,0,2]:[1,0]:n.sortReset?[0,1,2]:[0,1],n.sortVars[f].order=e,n.sortVars[f].count=0),e=n.sortVars[f].order,u=(""+l[1]).match(/^(1|d|s|o|n)/),u=u?u[0]:""){case"1":case"d":u=1;break;case"s":u=h||0;break;case"o":c=e[(h||0)%e.length];u=0===c?1:1===c?0:2;break;case"n":u=e[++n.sortVars[f].count%e.length];break;default:u=0}h=0===o?u:h;s=[f,parseInt(u,10)||0];n.sortList[n.sortList.length]=s;u=t.inArray(s[1],e);n.sortVars[f].count=u>=0?u:s[1]%e.length}},updateAll:function(n,t,r){var u=n.table;u.isUpdating=!0;i.refreshWidgets(u,!0,!0);i.buildHeaders(n);i.bindEvents(u,n.$headers,!0);i.bindMethods(n);i.commonUpdate(n,t,r)},update:function(n,t,r){var u=n.table;u.isUpdating=!0;i.updateHeader(n);i.commonUpdate(n,t,r)},updateHeaders:function(n,t){n.table.isUpdating=!0;i.buildHeaders(n);i.bindEvents(n.table,n.$headers,!0);i.resortComplete(n,t)},updateCell:function(n,r,u,f){if(i.isEmptyObject(n.cache))return i.updateHeader(n),void i.commonUpdate(n,u,f);n.table.isUpdating=!0;n.$table.find(n.selectorRemove).remove();var e,h,w,o,l,a,v=n.$tbodies,s=t(r),y=v.index(t.fn.closest?s.closest("tbody"):s.parents("tbody").filter(":first")),p=n.cache[y],c=t.fn.closest?s.closest("tr"):s.parents("tr").filter(":first");if(r=s[0],v.length&&y>=0){if(w=v.eq(y).find("tr").index(c),l=p.normalized[w],a=c[0].cells.length,a!==n.columns)for(o=0,e=!1,h=0;h<a;h++)e||c[0].cells[h]===r?e=!0:o+=c[0].cells[h].colSpan;else o=s.index();e=i.getElementText(n,r,o);l[n.columns].raw[o]=e;e=i.getParsedText(n,r,o,e);l[o]=e;l[n.columns].$row=c;"numeric"===(n.parsers[o].type||"").toLowerCase()&&(p.colMax[o]=Math.max(Math.abs(e)||0,p.colMax[o]||0));e="undefined"!==u?u:n.resort;e!==!1?i.checkResort(n,e,f):i.resortComplete(n,f)}else n.debug&&console.error("updateCell aborted, tbody missing or not within the indicated table"),n.table.isUpdating=!1},addRows:function(r,u,f,e){var v,y,h,s,k,c,d,p,o,w,l,a,b,g="string"==typeof u&&1===r.$tbodies.length&&/<tr/.test(u||""),nt=r.table;if(g)u=t(u),r.$tbodies.append(u);else if(!(u&&u instanceof n&&(t.fn.closest?u.closest("table")[0]:u.parents("table")[0])===r.table))return r.debug&&console.error("addRows method requires (1) a jQuery selector reference to rows that have already been added to the table, or (2) row HTML string to be added to a table with only one tbody"),!1;if(nt.isUpdating=!0,i.isEmptyObject(r.cache))i.updateHeader(r),i.commonUpdate(r,f,e);else{for(k=u.filter("tr").attr("role","row").length,h=r.$tbodies.index(u.parents("tbody").filter(":first")),r.parsers&&r.parsers.length||i.setupParsers(r),s=0;s<k;s++){for(o=0,d=u[s].cells.length,p=r.cache[h].normalized.length,l=[],w={child:[],raw:[],$row:u.eq(s),order:p},c=0;c<d;c++)a=u[s].cells[c],v=i.getElementText(r,a,o),w.raw[o]=v,y=i.getParsedText(r,a,o,v),l[o]=y,"numeric"===(r.parsers[o].type||"").toLowerCase()&&(r.cache[h].colMax[o]=Math.max(Math.abs(y)||0,r.cache[h].colMax[o]||0)),b=a.colSpan-1,b>0&&(o+=b),o++;l[r.columns]=w;r.cache[h].normalized[p]=l}i.checkResort(r,f,e)}},updateCache:function(n,t,r){n.parsers&&n.parsers.length||i.setupParsers(n,r);i.buildCache(n,t,r)},appendCache:function(n,t){var e,c,s,h,u,f,l,r=n.table,y=n.widgetOptions,a=n.$tbodies,o=[],v=n.cache;if(i.isEmptyObject(v))return n.appender?n.appender(r,o):r.isUpdating?n.$table.triggerHandler("updateComplete",r):"";for(n.debug&&(l=new Date),f=0;f<a.length;f++)if(s=a.eq(f),s.length){for(h=i.processTbody(r,s,!0),e=v[f].normalized,c=e.length,u=0;u<c;u++)o[o.length]=e[u][n.columns].$row,n.appender&&(!n.pager||n.pager.removeRows&&y.pager_removeRows||n.pager.ajax)||h.append(e[u][n.columns].$row);i.processTbody(r,h,!1)}n.appender&&n.appender(r,o);n.debug&&console.log("Rebuilt table"+i.benchmark(l));t||n.appender||i.applyWidget(r);r.isUpdating&&n.$table.triggerHandler("updateComplete",r)},commonUpdate:function(n,t,r){n.$table.find(n.selectorRemove).remove();i.setupParsers(n);i.buildCache(n);i.checkResort(n,t,r)},initSort:function(n,r,u){if(n.table.isUpdating)return setTimeout(function(){i.initSort(n,r,u)},50);var h,f,l,e,y,s,v,p=!u[n.sortMultiSortKey],a=n.table,w=n.$headers.length,o=parseInt(t(r).attr("data-column"),10),c=n.sortVars[o].order;if(n.$table.triggerHandler("sortStart",a),s=(n.sortVars[o].count+1)%c.length,n.sortVars[o].count=u[n.sortResetKey]?2:s,n.sortRestart)for(l=0;l<w;l++)v=n.$headers.eq(l),s=parseInt(v.attr("data-column"),10),o!==s&&(p||v.hasClass(i.css.sortNone))&&(n.sortVars[s].count=-1);if(p){if(n.sortList=[],n.last.sortList=[],null!==n.sortForce)for(h=n.sortForce,f=0;f<h.length;f++)h[f][0]!==o&&(n.sortList[n.sortList.length]=h[f]);if(e=c[n.sortVars[o].count],e<2&&(n.sortList[n.sortList.length]=[o,e],r.colSpan>1))for(f=1;f<r.colSpan;f++)n.sortList[n.sortList.length]=[o+f,e],n.sortVars[o+f].count=t.inArray(e,c)}else if(n.sortList=t.extend([],n.last.sortList),i.isValueInArray(o,n.sortList)>=0)for(f=0;f<n.sortList.length;f++)s=n.sortList[f],s[0]===o&&(s[1]=c[n.sortVars[o].count],2===s[1]&&(n.sortList.splice(f,1),n.sortVars[o].count=-1));else if(e=c[n.sortVars[o].count],e<2&&(n.sortList[n.sortList.length]=[o,e],r.colSpan>1))for(f=1;f<r.colSpan;f++)n.sortList[n.sortList.length]=[o+f,e],n.sortVars[o+f].count=t.inArray(e,c);if(n.last.sortList=t.extend([],n.sortList),n.sortList.length&&n.sortAppend&&(h=t.isArray(n.sortAppend)?n.sortAppend:n.sortAppend[n.sortList[0][0]],!i.isEmptyObject(h)))for(f=0;f<h.length;f++)if(h[f][0]!==o&&i.isValueInArray(h[f][0],n.sortList)<0){if(e=h[f][1],y=(""+e).match(/^(a|d|s|o|n)/))switch(s=n.sortList[0][1],y[0]){case"d":e=1;break;case"s":e=s;break;case"o":e=0===s?1:0;break;case"n":e=(s+1)%c.length;break;default:e=0}n.sortList[n.sortList.length]=[h[f][0],e]}n.$table.triggerHandler("sortBegin",a);setTimeout(function(){i.setHeadersCss(n);i.multisort(n);i.appendCache(n);n.$table.triggerHandler("sortBeforeEnd",a);n.$table.triggerHandler("sortEnd",a)},1)},multisort:function(n){var u,c,r,l,s,f=n.table,h=[],t=0,e=n.textSorter||"",o=n.sortList,a=o.length,v=n.$tbodies.length;if(!n.serverSideSorting&&!i.isEmptyObject(n.cache)){if(n.debug&&(c=new Date),"object"==typeof e)for(r=n.columns;r--;)s=i.getColumnData(f,e,r),"function"==typeof s&&(h[r]=s);for(u=0;u<v;u++)r=n.cache[u].colMax,l=n.cache[u].normalized,l.sort(function(u,s){for(var v,c,b,y,p,w,l=0;l<a;l++){if(c=o[l][0],b=o[l][1],t=0===b,n.sortStable&&u[c]===s[c]&&1===a)return u[n.columns].order-s[n.columns].order;if(v=/n/i.test(i.getSortType(n.parsers,c)),v&&n.strings[c]?(v="boolean"==typeof i.string[n.strings[c]]?(t?1:-1)*(i.string[n.strings[c]]?-1:1):n.strings[c]?i.string[n.strings[c]]||0:0,y=n.numberSorter?n.numberSorter(u[c],s[c],t,r[c],f):i["sortNumeric"+(t?"Asc":"Desc")](u[c],s[c],v,r[c],c,n)):(p=t?u:s,w=t?s:u,y="function"==typeof e?e(p[c],w[c],t,c,f):"function"==typeof h[c]?h[c](p[c],w[c],t,c,f):i["sortNatural"+(t?"Asc":"Desc")](u[c],s[c],c,n)),y)return y}return u[n.columns].order-s[n.columns].order});n.debug&&console.log("Applying sort "+o.toString()+i.benchmark(c))}},resortComplete:function(n,i){n.table.isUpdating&&n.$table.triggerHandler("updateComplete",n.table);t.isFunction(i)&&i(n.table)},checkResort:function(n,r,u){var f=t.isArray(r)?r:n.sortList,e="undefined"==typeof r?n.resort:r;e===!1||n.serverSideSorting||n.table.isProcessing?(i.resortComplete(n,u),i.applyWidget(n.table,!1)):f.length?i.sortOn(n,f,function(){i.resortComplete(n,u)},!0):i.sortReset(n,function(){i.resortComplete(n,u);i.applyWidget(n.table,!1)})},sortOn:function(n,r,u,f){var e=n.table;n.$table.triggerHandler("sortStart",e);i.updateHeaderSortCount(n,r);i.setHeadersCss(n);n.delayInit&&i.isEmptyObject(n.cache)&&i.buildCache(n);n.$table.triggerHandler("sortBegin",e);i.multisort(n);i.appendCache(n,f);n.$table.triggerHandler("sortBeforeEnd",e);n.$table.triggerHandler("sortEnd",e);i.applyWidget(e);t.isFunction(u)&&u(e)},sortReset:function(n,r){n.sortList=[];i.setHeadersCss(n);i.multisort(n);i.appendCache(n);t.isFunction(r)&&r(n.table)},getSortType:function(n,t){return n&&n[t]?n[t].type||"":""},getOrder:function(n){return/^d/i.test(n)||1===n},sortNatural:function(n,t){if(n===t)return 0;var u,f,e,s,r,h,o=i.regex;if(o.hex.test(t)){if(u=parseInt((n||"").match(o.hex),16),f=parseInt((t||"").match(o.hex),16),u<f)return-1;if(u>f)return 1}for(u=(n||"").replace(o.chunk,"\\0$1\\0").replace(o.chunks,"").split("\\0"),f=(t||"").replace(o.chunk,"\\0$1\\0").replace(o.chunks,"").split("\\0"),h=Math.max(u.length,f.length),r=0;r<h;r++){if(e=isNaN(u[r])?u[r]||0:parseFloat(u[r])||0,s=isNaN(f[r])?f[r]||0:parseFloat(f[r])||0,isNaN(e)!==isNaN(s))return isNaN(e)?1:-1;if(typeof e!=typeof s&&(e+="",s+=""),e<s)return-1;if(e>s)return 1}return 0},sortNaturalAsc:function(n,t,r,u){if(n===t)return 0;var f=i.string[u.empties[r]||u.emptyTo];return""===n&&0!==f?"boolean"==typeof f?f?-1:1:-f||-1:""===t&&0!==f?"boolean"==typeof f?f?1:-1:f||1:i.sortNatural(n,t)},sortNaturalDesc:function(n,t,r,u){if(n===t)return 0;var f=i.string[u.empties[r]||u.emptyTo];return""===n&&0!==f?"boolean"==typeof f?f?-1:1:f||1:""===t&&0!==f?"boolean"==typeof f?f?1:-1:-f||-1:i.sortNatural(t,n)},sortText:function(n,t){return n>t?1:n<t?-1:0},getTextValue:function(n,t,i){if(i){for(var f=n?n.length:0,u=i+t,r=0;r<f;r++)u+=n.charCodeAt(r);return t*u}return 0},sortNumericAsc:function(n,t,r,u,f,e){if(n===t)return 0;var o=i.string[e.empties[f]||e.emptyTo];return""===n&&0!==o?"boolean"==typeof o?o?-1:1:-o||-1:""===t&&0!==o?"boolean"==typeof o?o?1:-1:o||1:(isNaN(n)&&(n=i.getTextValue(n,r,u)),isNaN(t)&&(t=i.getTextValue(t,r,u)),n-t)},sortNumericDesc:function(n,t,r,u,f,e){if(n===t)return 0;var o=i.string[e.empties[f]||e.emptyTo];return""===n&&0!==o?"boolean"==typeof o?o?-1:1:o||1:""===t&&0!==o?"boolean"==typeof o?o?1:-1:-o||-1:(isNaN(n)&&(n=i.getTextValue(n,r,u)),isNaN(t)&&(t=i.getTextValue(t,r,u)),t-n)},sortNumeric:function(n,t){return n-t},addWidget:function(n){n.id&&!i.isEmptyObject(i.getWidgetById(n.id))&&console.warn('"'+n.id+'" widget was loaded more than once!');i.widgets[i.widgets.length]=n},hasWidget:function(n,i){return n=t(n),n.length&&n[0].config&&n[0].config.widgetInit[i]||!1},getWidgetById:function(n){for(var t,u=i.widgets.length,r=0;r<u;r++)if(t=i.widgets[r],t&&t.id&&t.id.toLowerCase()===n.toLowerCase())return t},applyWidgetOptions:function(n){var u,r,f=n.config,e=f.widgets.length;if(e)for(u=0;u<e;u++)r=i.getWidgetById(f.widgets[u]),r&&r.options&&(f.widgetOptions=t.extend(!0,{},r.options,f.widgetOptions),t.extend(!0,i.defaults.widgetOptions,r.options))},addWidgetFromClass:function(n){var f,t,u=n.config,o="^"+u.widgetClass.replace(i.regex.templateName,"(\\S+)+")+"$",e=new RegExp(o,"g"),r=(n.className||"").split(i.regex.spaces);if(r.length)for(f=r.length,t=0;t<f;t++)r[t].match(e)&&(u.widgets[u.widgets.length]=r[t].replace(e,"$1"))},applyWidgetId:function(n,r,u){n=t(n)[0];var s,h,e,f=n.config,c=f.widgetOptions,o=i.getWidgetById(r);o&&(e=o.id,s=!1,t.inArray(e,f.widgets)<0&&(f.widgets[f.widgets.length]=e),f.debug&&(h=new Date),!u&&f.widgetInit[e]||(f.widgetInit[e]=!0,n.hasInitialized&&i.applyWidgetOptions(n),"function"==typeof o.init&&(s=!0,f.debug&&console[console.group?"group":"log"]("Initializing "+e+" widget"),o.init(n,o,f,c))),u||"function"!=typeof o.format||(s=!0,f.debug&&console[console.group?"group":"log"]("Updating "+e+" widget"),o.format(n,f,c,!1)),f.debug&&s&&(console.log("Completed "+(u?"initializing ":"applying ")+e+" widget"+i.benchmark(h)),console.groupEnd&&console.groupEnd()))},applyWidget:function(n,r,u){n=t(n)[0];var o,s,h,e,l,f=n.config,c=[];if(r===!1||!n.hasInitialized||!n.isApplyingWidgets&&!n.isUpdating){if(f.debug&&(l=new Date),i.addWidgetFromClass(n),clearTimeout(f.timerReady),f.widgets.length){for(n.isApplyingWidgets=!0,f.widgets=t.grep(f.widgets,function(n,i){return t.inArray(n,f.widgets)===i}),h=f.widgets||[],s=h.length,o=0;o<s;o++)e=i.getWidgetById(h[o]),e&&e.id?(e.priority||(e.priority=10),c[o]=e):f.debug&&console.warn('"'+h[o]+'" widget code does not exist!');for(c.sort(function(n,t){return n.priority<t.priority?-1:n.priority===t.priority?0:1}),s=c.length,f.debug&&console[console.group?"group":"log"]("Start "+(r?"initializing":"applying")+" widgets"),o=0;o<s;o++)e=c[o],e&&e.id&&i.applyWidgetId(n,e.id,r);f.debug&&console.groupEnd&&console.groupEnd();r||"function"!=typeof u||u(n)}f.timerReady=setTimeout(function(){n.isApplyingWidgets=!1;t.data(n,"lastWidgetApplication",new Date);f.$table.triggerHandler("tablesorter-ready")},10);f.debug&&(e=f.widgets.length,console.log("Completed "+(r===!0?"initializing ":"applying ")+e+" widget"+(1!==e?"s":"")+i.benchmark(l)))}},removeWidget:function(n,r,u){n=t(n)[0];var e,f,o,h,s=n.config;if(r===!0)for(r=[],h=i.widgets.length,o=0;o<h;o++)f=i.widgets[o],f&&f.id&&(r[r.length]=f.id);else r=(t.isArray(r)?r.join(","):r||"").toLowerCase().split(/[\s,]+/);for(h=r.length,e=0;e<h;e++)f=i.getWidgetById(r[e]),o=t.inArray(r[e],s.widgets),o>=0&&u!==!0&&s.widgets.splice(o,1),f&&f.remove&&(s.debug&&console.log((u?"Refreshing":"Removing")+' "'+r[e]+'" widget'),f.remove(n,s,s.widgetOptions,u),s.widgetInit[r[e]]=!1)},refreshWidgets:function(n,r,u){n=t(n)[0];for(var f,c=n.config,l=c.widgets,h=i.widgets,a=h.length,o=[],s=function(n){t(n).triggerHandler("refreshComplete")},e=0;e<a;e++)f=h[e],f&&f.id&&(r||t.inArray(f.id,l)<0)&&(o[o.length]=f.id);i.removeWidget(n,o.join(","),!0);u!==!0?(i.applyWidget(n,r||!1,s),r&&i.applyWidget(n,!1,s)):s(n)},benchmark:function(n){return" ("+((new Date).getTime()-n.getTime())+" ms)"},log:function(){console.log(arguments)},isEmptyObject:function(n){for(var t in n)return!1;return!0},isValueInArray:function(n,t){for(var r=t&&t.length||0,i=0;i<r;i++)if(t[i][0]===n)return i;return-1},formatFloat:function(n,r){if("string"!=typeof n||""===n)return n;var u,f=r&&r.config?r.config.usNumberFormat!==!1:"undefined"==typeof r||r;return n=f?n.replace(i.regex.comma,""):n.replace(i.regex.digitNonUS,"").replace(i.regex.comma,"."),i.regex.digitNegativeTest.test(n)&&(n=n.replace(i.regex.digitNegativeReplace,"-$1")),u=parseFloat(n),isNaN(u)?t.trim(n):u},isDigit:function(n){return isNaN(n)?i.regex.digitTest.test(n.toString().replace(i.regex.digitReplace,"")):""!==n},computeColumnIndex:function(n,i){for(var h,r,c,u,l,f,v,y,o,p=i&&i.columns||0,e=[],a=new Array(p),s=0;s<n.length;s++)for(l=n[s].cells,h=0;h<l.length;h++){for(u=l[h],f=u.parentNode.rowIndex,v=u.rowSpan||1,y=u.colSpan||1,"undefined"==typeof e[f]&&(e[f]=[]),r=0;r<e[f].length+1;r++)if("undefined"==typeof e[f][r]){o=r;break}for(p&&u.cellIndex===o||(u.setAttribute?u.setAttribute("data-column",o):t(u).attr("data-column",o)),r=f;r<f+v;r++)for("undefined"==typeof e[r]&&(e[r]=[]),a=e[r],c=o;c<o+y;c++)a[c]="x"}return a.length},fixColumnWidth:function(n){n=t(n)[0];var o,s,e,h,f,r=n.config,u=r.$table.children("colgroup");if(u.length&&u.hasClass(i.css.colgroup)&&u.remove(),r.widthFixed&&0===r.$table.children("colgroup").length){for(u=t('<colgroup class="'+i.css.colgroup+'">'),o=r.$table.width(),e=r.$tbodies.find("tr:first").children(":visible"),h=e.length,f=0;f<h;f++)s=parseInt(e.eq(f).width()/o*1e3,10)/10+"%",u.append(t("<col>").css("width",s));r.$table.prepend(u)}},getData:function(n,i,r){var e,o,f="",u=t(n);return u.length?(e=!!t.metadata&&u.metadata(),o=" "+(u.attr("class")||""),"undefined"!=typeof u.data(r)||"undefined"!=typeof u.data(r.toLowerCase())?f+=u.data(r)||u.data(r.toLowerCase()):e&&"undefined"!=typeof e[r]?f+=e[r]:i&&"undefined"!=typeof i[r]?f+=i[r]:" "!==o&&o.match(" "+r+"-")&&(f=o.match(new RegExp("\\s"+r+"-([\\w-]+)"))[1]||""),t.trim(f)):""},getColumnData:function(n,i,r,u,f){if("object"!=typeof i||null===i)return i;n=t(n)[0];var h,e,o=n.config,c=f||o.$headers,s=o.$headerIndexed&&o.$headerIndexed[r]||c.filter('[data-column="'+r+'"]:last');if("undefined"!=typeof i[r])return u?i[r]:i[c.index(s)];for(e in i)if("string"==typeof e&&(h=s.filter(e).add(s.find(e)),h.length))return i[e]},isProcessing:function(n,r,u){n=t(n);var f=n[0].config,e=u||n.find("."+i.css.header);r?("undefined"!=typeof u&&f.sortList.length>0&&(e=e.filter(function(){return!this.sortDisabled&&i.isValueInArray(parseFloat(t(this).attr("data-column")),f.sortList)>=0})),n.add(e).addClass(i.css.processing+" "+f.cssProcessing)):n.add(e).removeClass(i.css.processing+" "+f.cssProcessing)},processTbody:function(n,i,r){if(n=t(n)[0],r)return n.isProcessing=!0,i.before('<colgroup class="tablesorter-savemyplace"/>'),t.fn.detach?i.detach():i.remove();var u=t(n).find("colgroup.tablesorter-savemyplace");i.insertAfter(u);u.remove();n.isProcessing=!1},clearTableBody:function(n){t(n)[0].config.$tbodies.children().detach()},characterEquivalents:{a:"áàâãäąå",A:"ÁÀÂÃÄĄÅ",c:"çćč",C:"ÇĆČ",e:"éèêëěę",E:"ÉÈÊËĚĘ",i:"íìİîïı",I:"ÍÌİÎÏ",o:"óòôõöō",O:"ÓÒÔÕÖŌ",ss:"ß",SS:"ẞ",u:"úùûüů",U:"ÚÙÛÜŮ"},replaceAccents:function(n){var t,u="[",r=i.characterEquivalents;if(!i.characterRegex){i.characterRegexArray={};for(t in r)"string"==typeof t&&(u+=r[t],i.characterRegexArray[t]=new RegExp("["+r[t]+"]","g"));i.characterRegex=new RegExp(u+"]")}if(i.characterRegex.test(n))for(t in r)"string"==typeof t&&(n=n.replace(i.characterRegexArray[t],t));return n},validateOptions:function(n){var r,f,u,o,s="headers sortForce sortList sortAppend widgets".split(" "),e=n.originalSettings;if(e){n.debug&&(o=new Date);for(r in e)if(u=typeof i.defaults[r],"undefined"===u)console.warn('Tablesorter Warning! "table.config.'+r+'" option not recognized');else if("object"===u)for(f in e[r])u=i.defaults[r]&&typeof i.defaults[r][f],t.inArray(r,s)<0&&"undefined"===u&&console.warn('Tablesorter Warning! "table.config.'+r+"."+f+'" option not recognized');n.debug&&console.log("validate options time:"+i.benchmark(o))}},restoreHeaders:function(n){for(var u,f=t(n)[0].config,e=f.$table.find(f.selectorHeaders),o=e.length,r=0;r<o;r++)u=e.eq(r),u.find("."+i.css.headerIn).length&&u.html(f.headerContent[r])},destroy:function(n,r,u){if(n=t(n)[0],n.hasInitialized){i.removeWidget(n,!0,!1);var o,e=t(n),f=n.config,c=f.debug,s=e.find("thead:first"),h=s.find("tr."+i.css.headerRow).removeClass(i.css.headerRow+" "+f.cssHeaderRow),l=e.find("tfoot:first > tr").children("th, td");r===!1&&t.inArray("uitheme",f.widgets)>=0&&(e.triggerHandler("applyWidgetId",["uitheme"]),e.triggerHandler("applyWidgetId",["zebra"]));s.find("tr").not(h).remove();o="sortReset update updateRows updateAll updateHeaders updateCell addRows updateComplete sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets removeWidget destroy mouseup mouseleave "+"keypress sortBegin sortEnd resetToLoadState ".split(" ").join(f.namespace+" ");e.removeData("tablesorter").unbind(o.replace(i.regex.spaces," "));f.$headers.add(l).removeClass([i.css.header,f.cssHeader,f.cssAsc,f.cssDesc,i.css.sortAsc,i.css.sortDesc,i.css.sortNone].join(" ")).removeAttr("data-column").removeAttr("aria-label").attr("aria-disabled","true");h.find(f.selectorSort).unbind("mousedown mouseup keypress ".split(" ").join(f.namespace+" ").replace(i.regex.spaces," "));i.restoreHeaders(n);e.toggleClass(i.css.table+" "+f.tableClass+" tablesorter-"+f.theme,r===!1);n.hasInitialized=!1;delete n.config.cache;"function"==typeof u&&u(n);c&&console.log("tablesorter has been removed")}}};t.fn.tablesorter=function(n){return this.each(function(){var r=this,u=t.extend(!0,{},i.defaults,n,i.instanceMethods);u.originalSettings=n;!r.hasInitialized&&i.buildTable&&"TABLE"!==this.nodeName?i.buildTable(r,u):i.setup(r,u)})};window.console&&window.console.log||(i.logs=[],console={},console.log=console.warn=console.error=console.table=function(){var n=arguments.length>1?arguments:arguments[0];i.logs[i.logs.length]={date:Date.now(),log:n}});i.addParser({id:"no-parser",is:function(){return!1},format:function(){return""},type:"text"});i.addParser({id:"text",is:function(){return!0},format:function(n,r){var u=r.config;return n&&(n=t.trim(u.ignoreCase?n.toLocaleLowerCase():n),n=u.sortLocaleCompare?i.replaceAccents(n):n),n},type:"text"});i.regex.nondigit=/[^\w,. \-()]/g;i.addParser({id:"digit",is:function(n){return i.isDigit(n)},format:function(n,r){var u=i.formatFloat((n||"").replace(i.regex.nondigit,""),r);return n&&"number"==typeof u?u:n?t.trim(n&&r.config.ignoreCase?n.toLocaleLowerCase():n):n},type:"numeric"});i.regex.currencyReplace=/[+\-,. ]/g;i.regex.currencyTest=/^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/;i.addParser({id:"currency",is:function(n){return n=(n||"").replace(i.regex.currencyReplace,""),i.regex.currencyTest.test(n)},format:function(n,r){var u=i.formatFloat((n||"").replace(i.regex.nondigit,""),r);return n&&"number"==typeof u?u:n?t.trim(n&&r.config.ignoreCase?n.toLocaleLowerCase():n):n},type:"numeric"});i.regex.urlProtocolTest=/^(https?|ftp|file):\/\//;i.regex.urlProtocolReplace=/(https?|ftp|file):\/\/(www\.)?/;i.addParser({id:"url",is:function(n){return i.regex.urlProtocolTest.test(n)},format:function(n){return n?t.trim(n.replace(i.regex.urlProtocolReplace,"")):n},type:"text"});i.regex.dash=/-/g;i.regex.isoDate=/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}/;i.addParser({id:"isoDate",is:function(n){return i.regex.isoDate.test(n)},format:function(n){var t=n?new Date(n.replace(i.regex.dash,"/")):n;return t instanceof Date&&isFinite(t)?t.getTime():n},type:"numeric"});i.regex.percent=/%/g;i.regex.percentTest=/(\d\s*?%|%\s*?\d)/;i.addParser({id:"percent",is:function(n){return i.regex.percentTest.test(n)&&n.length<15},format:function(n,t){return n?i.formatFloat(n.replace(i.regex.percent,""),t):n},type:"numeric"});i.addParser({id:"image",is:function(n,t,i,r){return r.find("img").length>0},format:function(n,i,r){return t(r).find("img").attr(i.config.imgAttr||"alt")||n},parsed:!0,type:"text"});i.regex.dateReplace=/(\S)([AP]M)$/i;i.regex.usLongDateTest1=/^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i;i.regex.usLongDateTest2=/^\d{1,2}\s+[A-Z]{3,10}\s+\d{4}/i;i.addParser({id:"usLongDate",is:function(n){return i.regex.usLongDateTest1.test(n)||i.regex.usLongDateTest2.test(n)},format:function(n){var t=n?new Date(n.replace(i.regex.dateReplace,"$1 $2")):n;return t instanceof Date&&isFinite(t)?t.getTime():n},type:"numeric"});i.regex.shortDateTest=/(^\d{1,2}[\/\s]\d{1,2}[\/\s]\d{4})|(^\d{4}[\/\s]\d{1,2}[\/\s]\d{1,2})/;i.regex.shortDateReplace=/[\-.,]/g;i.regex.shortDateXXY=/(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/;i.regex.shortDateYMD=/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/;i.convertFormat=function(n,t){n=(n||"").replace(i.regex.spaces," ").replace(i.regex.shortDateReplace,"/");"mmddyyyy"===t?n=n.replace(i.regex.shortDateXXY,"$3/$1/$2"):"ddmmyyyy"===t?n=n.replace(i.regex.shortDateXXY,"$3/$2/$1"):"yyyymmdd"===t&&(n=n.replace(i.regex.shortDateYMD,"$1/$2/$3"));var r=new Date(n);return r instanceof Date&&isFinite(r)?r.getTime():""};i.addParser({id:"shortDate",is:function(n){return n=(n||"").replace(i.regex.spaces," ").replace(i.regex.shortDateReplace,"/"),i.regex.shortDateTest.test(n)},format:function(n,t,r,u){if(n){var e=t.config,f=e.$headerIndexed[u],o=f.length&&f.data("dateFormat")||i.getData(f,i.getColumnData(t,e.headers,u),"dateFormat")||e.dateFormat;return f.length&&f.data("dateFormat",o),i.convertFormat(n,o)||n}return n},type:"numeric"});i.regex.timeTest=/^(0?[1-9]|1[0-2]):([0-5]\d)(\s[AP]M)$|^((?:[01]\d|[2][0-4]):[0-5]\d)$/i;i.regex.timeMatch=/(0?[1-9]|1[0-2]):([0-5]\d)(\s[AP]M)|((?:[01]\d|[2][0-4]):[0-5]\d)/i;i.addParser({id:"time",is:function(n){return i.regex.timeTest.test(n)},format:function(n){var f,e=(n||"").match(i.regex.timeMatch),t=new Date(n),u=n&&(null!==e?e[0]:"00:00 AM"),r=u?new Date("2000/01/01 "+u.replace(i.regex.dateReplace,"$1 $2")):u;return r instanceof Date&&isFinite(r)?(f=t instanceof Date&&isFinite(t)?t.getTime():0,f?parseFloat(r.getTime()+"."+t.getTime()):r.getTime()):n},type:"numeric"});i.addParser({id:"metadata",is:function(){return!1},format:function(n,i,r){var u=i.config,f=u.parserMetadataName?u.parserMetadataName:"sortValue";return t(r).metadata()[f]},type:"numeric"});i.addWidget({id:"zebra",priority:90,format:function(n,i,r){for(var e,o,s,h,f,c,a=new RegExp(i.cssChildRow,"i"),l=i.$tbodies.add(t(i.namespace+"_extra_table").children("tbody:not(."+i.cssInfoBlock+")")),u=0;u<l.length;u++)for(s=0,e=l.eq(u).children("tr:visible").not(i.selectorRemove),c=e.length,f=0;f<c;f++)o=e.eq(f),a.test(o[0].className)||s++,h=s%2==0,o.removeClass(r.zebra[h?1:0]).addClass(r.zebra[h?0:1])},remove:function(n,t,r,u){if(!u)for(var e,o=t.$tbodies,s=(r.zebra||["even","odd"]).join(" "),f=0;f<o.length;f++)e=i.processTbody(n,o.eq(f),!0),e.children().removeClass(s),i.processTbody(n,e,!1)}})}(n),n.tablesorter});var jqueryFunction,timer;$().ready(function(){jqueryFunction=function(n){clearTimeout(timer);timer=setTimeout(function(){$(".nav-search-players").load("/quickplayersearch.aspx?new=y&name="+encodeURIComponent(n))},150)}});Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(n,t){function e(n,t){return n===t||typeof n=="number"&&typeof t=="number"&&isNaN(n)&&isNaN(t)}var f,i,r,u;if(this==null)throw new TypeError('"this" is null or not defined');if(f=Object(this),i=f.length>>>0,i===0)return!1;for(r=t|0,u=Math.max(r>=0?r:i-Math.abs(r),0);u<i;){if(e(f[u],n))return!0;u++}return!1}}),function(n){var u=n(window),o={},f=[],e=[],h,s=null,c="_open",v="_close",i=[],l=null,a,y=/(iPad|iPhone|iPod)/g.test(navigator.userAgent),p="a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]",t={_init:function(i){var r=n(i),u=r.data("popupoptions");e[i.id]=!1;f[i.id]=0;r.data("popup-initialized")||(r.attr("data-popup-initialized","true"),t._initonce(i));u.autoopen&&setTimeout(function(){t.show(i,0)},0)},_initonce:function(i){var u=n(i),v=n("body"),f,r=u.data("popupoptions"),o,p,w,a,e;if(s=parseInt(v.css("margin-right"),10),l=document.body.style.webkitTransition!==undefined||document.body.style.MozTransition!==undefined||document.body.style.msTransition!==undefined||document.body.style.OTransition!==undefined||document.body.style.transition!==undefined,r.type=="tooltip"&&(r.background=!1,r.scrolllock=!1),r.backgroundactive&&(r.background=!1,r.blur=!1,r.scrolllock=!1),r.scrolllock&&typeof h=="undefined"&&(p=n('<div style="width:50px;height:50px;overflow:auto"><div/><\/div>').appendTo("body"),w=p.children(),h=w.innerWidth()-w.height(99).innerWidth(),p.remove()),u.attr("id")||u.attr("id","j-popup-"+parseInt(Math.random()*1e8,10)),u.addClass("popup_content"),r.background&&!n("#"+i.id+"_background").length&&(v.append('<div id="'+i.id+'_background" class="popup_background"><\/div>'),a=n("#"+i.id+"_background"),a.css({opacity:0,visibility:"hidden",backgroundColor:r.color,position:"fixed",top:0,right:0,bottom:0,left:0}),r.setzindex&&!r.autozindex&&a.css("z-index","100000"),r.transition&&a.css("transition",r.transition)),v.append(i),u.wrap('<div id="'+i.id+'_wrapper" class="popup_wrapper" />'),f=n("#"+i.id+"_wrapper"),f.css({opacity:0,visibility:"hidden",position:"absolute"}),y&&f.css("cursor","pointer"),r.type=="overlay"&&f.css("overflow","auto"),u.css({opacity:0,visibility:"hidden",display:"inline-block"}),r.setzindex&&!r.autozindex&&f.css("z-index","100001"),r.outline||u.css("outline","none"),r.transition&&(u.css("transition",r.transition),f.css("transition",r.transition)),u.attr("aria-hidden",!0),r.type=="overlay"&&(u.css({textAlign:"left",position:"relative",verticalAlign:"middle"}),o={position:"fixed",width:"100%",height:"100%",top:0,left:0,textAlign:"center"},r.backgroundactive&&(o.position="absolute",o.height="0",o.overflow="visible"),f.css(o),f.append('<div class="popup_align" />'),n(".popup_align").css({display:"inline-block",verticalAlign:"middle",height:"100%"})),u.attr("role","dialog"),e=r.openelement?r.openelement:"."+i.id+c,n(e).each(function(t,i){n(i).attr("data-popup-ordinal",t);i.id||n(i).attr("id","open_"+parseInt(Math.random()*1e8,10))}),u.attr("aria-labelledby")||u.attr("aria-label")||u.attr("aria-labelledby",n(e).attr("id")),r.action=="hover"){r.keepfocus=!1;n(e).on("mouseenter",function(){t.show(i,n(this).data("popup-ordinal"))});n(e).on("mouseleave",function(){t.hide(i)})}else n(document).on("click",e,function(r){r.preventDefault();var u=n(this).data("popup-ordinal");setTimeout(function(){t.show(i,u)},0)});r.closebutton&&t.addclosebutton(i);r.detach?u.hide().detach():f.hide()},show:function(o,c){var p=n(o),k,b;if(!p.data("popup-visible")){p.data("popup-initialized")||t._init(o);p.attr("data-popup-initialized","true");var d=n("body"),y=p.data("popupoptions"),w=n("#"+o.id+"_wrapper"),nt=n("#"+o.id+"_background");if(r(o,c,y.beforeopen),e[o.id]=c,setTimeout(function(){i.push(o.id)},0),y.autozindex){var tt=document.getElementsByTagName("*"),it=tt.length,g=0;for(k=0;k<it;k++)b=n(tt[k]).css("z-index"),b!=="auto"&&(b=parseInt(b,10),g<b&&(g=b));f[o.id]=g;y.background&&f[o.id]>0&&n("#"+o.id+"_background").css({zIndex:f[o.id]+1});f[o.id]>0&&w.css({zIndex:f[o.id]+2})}if(y.detach?(w.prepend(o),p.show()):w.show(),a=setTimeout(function(){w.css({visibility:"visible",opacity:1});n("html").addClass("popup_visible").addClass("popup_visible_"+o.id);w.addClass("popup_wrapper_visible")},20),y.scrolllock&&(d.css("overflow","hidden"),d.height()>u.height()&&d.css("margin-right",s+h)),y.backgroundactive&&p.css({top:(u.height()-(p.get(0).offsetHeight+parseInt(p.css("margin-top"),10)+parseInt(p.css("margin-bottom"),10)))/2+"px"}),p.css({visibility:"visible",opacity:1}),y.background&&(nt.css({visibility:"visible",opacity:y.opacity}),setTimeout(function(){nt.css({opacity:y.opacity})},0)),p.data("popup-visible",!0),t.reposition(o,c),p.data("focusedelementbeforepopup",document.activeElement),y.keepfocus&&(p.attr("tabindex",-1),setTimeout(function(){y.focuselement==="closebutton"?n("#"+o.id+" ."+o.id+v+":first").focus():y.focuselement?n(y.focuselement).focus():p.focus()},y.focusdelay)),n(y.pagecontainer).attr("aria-hidden",!0),p.attr("aria-hidden",!1),r(o,c,y.onopen),l)w.one("transitionend",function(){r(o,c,y.opentransitionend)});else r(o,c,y.opentransitionend);if(y.type=="tooltip")n(window).on("resize."+o.id,function(){t.reposition(o,c)})}},hide:function(t,u){var c=n.inArray(t.id,i);if(c!==-1){a&&clearTimeout(a);var v=n("body"),f=n(t),o=f.data("popupoptions"),h=n("#"+t.id+"_wrapper"),y=n("#"+t.id+"_background");if(f.data("popup-visible",!1),i.length===1?n("html").removeClass("popup_visible").removeClass("popup_visible_"+t.id):n("html").hasClass("popup_visible_"+t.id)&&n("html").removeClass("popup_visible_"+t.id),i.splice(c,1),h.hasClass("popup_wrapper_visible")&&h.removeClass("popup_wrapper_visible"),o.keepfocus&&!u&&setTimeout(function(){n(f.data("focusedelementbeforepopup")).is(":visible")&&f.data("focusedelementbeforepopup").focus()},0),h.css({visibility:"hidden",opacity:0}),f.css({visibility:"hidden",opacity:0}),o.background&&y.css({visibility:"hidden",opacity:0}),n(o.pagecontainer).attr("aria-hidden",!1),f.attr("aria-hidden",!0),r(t,e[t.id],o.onclose),l&&f.css("transition-duration")!=="0s")f.one("transitionend",function(){f.data("popup-visible")||(o.detach?f.hide().detach():h.hide());o.scrolllock&&setTimeout(function(){v.css({overflow:"visible","margin-right":s})},10);r(t,e[t.id],o.closetransitionend)});else o.detach?f.hide().detach():h.hide(),o.scrolllock&&setTimeout(function(){v.css({overflow:"visible","margin-right":s})},10),r(t,e[t.id],o.closetransitionend);o.type=="tooltip"&&n(window).off("resize."+t.id)}},toggle:function(i,r){n(i).data("popup-visible")?t.hide(i):setTimeout(function(){t.show(i,r)},0)},reposition:function(t,i){var s=n(t),r=s.data("popupoptions"),f=n("#"+t.id+"_wrapper"),h=n("#"+t.id+"_background"),o,e;i=i||0;r.type=="tooltip"?(f.css({position:"absolute"}),o=r.tooltipanchor?n(r.tooltipanchor):r.openelement?n(r.openelement).filter('[data-popup-ordinal="'+i+'"]'):n("."+t.id+c+'[data-popup-ordinal="'+i+'"]'),e=o.offset(),r.horizontal=="right"?f.css("left",e.left+o.outerWidth()+r.offsetleft):r.horizontal=="leftedge"?f.css("left",e.left+o.outerWidth()-o.outerWidth()+r.offsetleft):r.horizontal=="left"?f.css("right",u.width()-e.left-r.offsetleft):r.horizontal=="rightedge"?f.css("right",u.width()-e.left-o.outerWidth()-r.offsetleft):f.css("left",e.left+o.outerWidth()/2-s.outerWidth()/2-parseFloat(s.css("marginLeft"))+r.offsetleft),r.vertical=="bottom"?f.css("top",e.top+o.outerHeight()+r.offsettop):r.vertical=="bottomedge"?f.css("top",e.top+o.outerHeight()-s.outerHeight()+r.offsettop):r.vertical=="top"?f.css("bottom",u.height()-e.top-r.offsettop):r.vertical=="topedge"?f.css("bottom",u.height()-e.top-s.outerHeight()-r.offsettop):f.css("top",e.top+o.outerHeight()/2-s.outerHeight()/2-parseFloat(s.css("marginTop"))+r.offsettop)):r.type=="overlay"&&(r.horizontal?f.css("text-align",r.horizontal):f.css("text-align","center"),r.vertical?s.css("vertical-align",r.vertical):s.css("vertical-align","middle"))},addclosebutton:function(t){var i;i=n(t).data("popupoptions").closebuttonmarkup?n(o.closebuttonmarkup).addClass(t.id+"_close"):'<button class="popup_close '+t.id+'_close" title="Close" aria-label="Close"><span aria-hidden="true">×<\/span><\/button>';n(t).data("popup-initialized")&&n(t).append(i)}},r=function(t,i,r){var u=n(t).data("popupoptions"),f=u.openelement?u.openelement:"."+t.id+c,e=n(f+'[data-popup-ordinal="'+i+'"]');typeof r=="function"&&r.call(n(t),t,e)};n(document).on("keydown",function(r){if(i.length){var f=i[i.length-1],u=document.getElementById(f);n(u).data("popupoptions").escape&&r.keyCode==27&&t.hide(u)}});n(document).on("click",function(r){if(i.length){var f=i[i.length-1],u=document.getElementById(f),e=n(u).data("popupoptions").closeelement?n(u).data("popupoptions").closeelement:"."+u.id+v;n(r.target).closest(e).length&&(r.preventDefault(),t.hide(u));n(u).data("popupoptions").blur&&!n(r.target).closest("#"+f).length&&r.which!==2&&n(r.target).is(":visible")&&(n(u).data("popupoptions").background?(t.hide(u),r.preventDefault()):t.hide(u,!0))}});n(document).on("keydown",function(t){if(i.length&&t.which==9){var o=i[i.length-1],f=document.getElementById(o),s=n(f).find("*"),r=s.filter(p).filter(":visible"),h=n(":focus"),u=r.length,e=r.index(h);u===0?(n(f).focus(),t.preventDefault()):t.shiftKey?e===0&&(r.get(u-1).focus(),t.preventDefault()):e==u-1&&(r.get(0).focus(),t.preventDefault())}});n.fn.popup=function(i){return this.each(function(){var r=n(this),u;typeof i=="object"?(u=n.extend({},n.fn.popup.defaults,r.data("popupoptions"),i),r.data("popupoptions",u),o=r.data("popupoptions"),t._init(this)):typeof i=="string"?(r.data("popupoptions")||(r.data("popupoptions",n.fn.popup.defaults),o=r.data("popupoptions")),t[i].call(this,this)):(r.data("popupoptions")||(r.data("popupoptions",n.fn.popup.defaults),o=r.data("popupoptions")),t._init(this))})};n.fn.popup.defaults={type:"overlay",autoopen:!1,background:!0,backgroundactive:!1,color:"black",opacity:"0.5",horizontal:"center",vertical:"middle",offsettop:0,offsetleft:0,escape:!0,blur:!0,setzindex:!0,autozindex:!1,scrolllock:!1,closebutton:!1,closebuttonmarkup:null,keepfocus:!0,focuselement:null,focusdelay:50,outline:!1,pagecontainer:null,detach:!1,openelement:null,closeelement:null,transition:null,tooltipanchor:null,beforeopen:null,onclose:null,onopen:null,opentransitionend:null,closetransitionend:null}}(jQuery),function(){function ni(){ni=function(){};l.Symbol||(l.Symbol=er)}function er(n){return"jscomp_symbol_"+(n||"")+fr++}function ot(){ni();var n=l.Symbol.iterator;n||(n=l.Symbol.iterator=l.Symbol("iterator"));"function"!=typeof Array.prototype[n]&&ur(Array.prototype,n,{configurable:!0,writable:!0,value:function(){return ti(this)}});ot=function(){}}function ti(n){var t=0;return or(function(){return t<n.length?{done:!1,value:n[t++]}:{done:!0}})}function or(n){return ot(),n={next:n},n[l.Symbol.iterator]=function(){return this},n}function a(n){var t,i;if(!(n instanceof Array)){for(ot(),t=n[Symbol.iterator],n=t?t.call(n):ti(n),i=[];!(t=n.next()).done;)i.push(t.value);n=i}return n}function sr(n,t){function u(){}var i,r;u.prototype=t.prototype;n.prototype=new u;n.prototype.constructor=n;for(i in t)Object.defineProperties?(r=Object.getOwnPropertyDescriptor(t,i),r&&Object.defineProperty(n,i,r)):n[i]=t[i]}function ri(n,t){if(n&&1==n.nodeType&&t){if("string"==typeof t||1==t.nodeType)return n==t||ui(n,t);if("length"in t)for(var r=0,i;i=t[r];r++)if(n==i||ui(n,i))return!0}return!1}function ui(n,t){if("string"!=typeof t)return!1;if(ii)return ii.call(n,t);t=n.parentNode.querySelectorAll(t);for(var i=0,r;r=t[i];i++)if(r==n)return!0;return!1}function hr(n){for(var t=[];n&&n.parentNode&&1==n.parentNode.nodeType;)n=n.parentNode,t.push(n);return t}function st(n,t,i){function u(n){var u,e,f,o;if(r.composed&&"function"==typeof n.composedPath)for(e=n.composedPath(),f=0;o=e[f];f++)1==o.nodeType&&ri(o,t)&&(u=o);else n:{if((u=n.target)&&1==u.nodeType&&t)for(u=[u].concat(hr(u)),e=0;f=u[e];e++)if(ri(f,t)){u=f;break n}u=void 0}u&&i.call(u,n,u)}var f=document,r={composed:!0,S:!0},r=void 0===r?{}:r;return f.addEventListener(n,u,r.S),{j:function(){f.removeEventListener(n,u,r.S)}}}function cr(n){var t={},i,r;if(!n||1!=n.nodeType)return t;if(n=n.attributes,!n.length)return{};for(i=0;r=n[i];i++)t[r.name]=r.value;return t}function o(n){if(n=n&&"."!=n?n:location.href,ht[n])return ht[n];if(i.href=n,"."==n.charAt(0)||"/"==n.charAt(0))return o(i.href);var t="80"==i.port||"443"==i.port?"":i.port,t="0"==t?"":t,r=i.host.replace(lr,"");return ht[n]={hash:i.hash,host:r,hostname:i.hostname,href:i.href,origin:i.origin?i.origin:i.protocol+"//"+r,pathname:"/"==i.pathname.charAt(0)?i.pathname:"/"+i.pathname,port:t,protocol:i.protocol,search:i.search}}function fi(n,t){var i=this;this.context=n;this.P=t;this.f=(this.c=/Task$/.test(t))?n.get(t):n[t];this.b=[];this.a=[];this.i=function(){for(var t=[],n=0;n<arguments.length;++n)t[+n]=arguments[n];return i.a[i.a.length-1].apply(null,[].concat(a(t)))};this.c?n.set(t,this.i):n[t]=this.i}function s(n,t,i){n=oi(n,t);n.b.push(i);ei(n)}function h(n,t,i){n=oi(n,t);i=n.b.indexOf(i);-1<i&&(n.b.splice(i,1),0<n.b.length?ei(n):n.j())}function ei(n){var i,t,r;for(n.a=[],t=0;i=n.b[t];t++)r=n.a[t-1]||n.f.bind(n.context),n.a.push(i(r))}function oi(n,t){var i=k.filter(function(i){return i.context==n&&i.P==t})[0];return i||(i=new fi(n,t),k.push(i)),i}function r(n,i,r,u,f,e){if("function"==typeof u){var o=r.get("buildHitTask");return{buildHitTask:function(t){t.set(n,null,!0);t.set(i,null,!0);u(t,f,e);o(t)}}}return t({},n,i)}function d(n,t){var i=cr(n),r={};return Object.keys(i).forEach(function(n){if(!n.indexOf(t)&&n!=t+"on"){var u=i[n];"true"==u&&(u=!0);"false"==u&&(u=!1);n=yr(n.slice(t.length));r[n]=u}}),r}function ar(n){"loading"==document.readyState?document.addEventListener("DOMContentLoaded",function t(){document.removeEventListener("DOMContentLoaded",t);n()}):n()}function si(n,t){var i;return function(){for(var u=[],r=0;r<arguments.length;++r)u[+r]=arguments[r];clearTimeout(i);i=setTimeout(function(){return n.apply(null,[].concat(a(u)))},t)}}function hi(n){function t(){i||(i=!0,n())}var i=!1;return setTimeout(t,2e3),t}function vr(n,t){function u(){clearTimeout(i.timeout);i.send&&h(n,"send",i.send);delete g[r];i.R.forEach(function(n){return n()})}var r=n.get("trackingId"),i=g[r]=g[r]||{};clearTimeout(i.timeout);i.timeout=setTimeout(u,0);i.R=i.R||[];i.R.push(t);i.send||(i.send=function(n){return function(){for(var i=[],t=0;t<arguments.length;++t)i[+t]=arguments[t];u();n.apply(null,[].concat(a(i)))}},s(n,"send",i.send))}function yr(n){return n.replace(/[\-\_]+(\w?)/g,function(n,t){return t.toUpperCase()})}function ct(n){return"object"==typeof n&&null!==n}function f(n,t){var i=window.GoogleAnalyticsObject||"ga";window[i]=window[i]||function(){for(var t=[],n=0;n<arguments.length;++n)t[+n]=arguments[n];(window[i].q=window[i].q||[]).push(t)};window.gaDevIds=window.gaDevIds||[];0>window.gaDevIds.indexOf("i5iSjo")&&window.gaDevIds.push("i5iSjo");window[i]("provide",n,t);window.gaplugins=window.gaplugins||{};window.gaplugins[n.charAt(0).toUpperCase()+n.slice(1)]=t}function e(n,t){var i,r;if(n.set("&_av","2.3.2"),i=n.get("&_au"),i=parseInt(i||"0",16).toString(2),i.length<nt)for(r=nt-i.length;r;)i="0"+i,r--;t=nt-t;i=i.substr(0,t)+1+i.substr(t+1);n.set("&_au",parseInt(i||"0",2).toString(16))}function tt(n,i){e(n,u.T);this.a=t({},i);this.i=n;this.b=this.a.stripQuery&&this.a.queryDimensionIndex?"dimension"+this.a.queryDimensionIndex:null;this.f=this.f.bind(this);this.c=this.c.bind(this);s(n,"get",this.f);s(n,"buildHitTask",this.c)}function ci(n,t){var r=o(t.page||t.location),i=r.pathname,u;return n.a.indexFilename&&(u=i.split("/"),n.a.indexFilename==u[u.length-1]&&(u[u.length-1]="",i=u.join("/"))),"remove"==n.a.trailingSlash?i=i.replace(/\/+$/,""):"add"==n.a.trailingSlash&&(/\.\w+$/.test(i)||"/"==i.substr(-1)||(i+="/")),i={page:i+(n.a.stripQuery?"":r.search)},t.location&&(i.location=t.location),n.b&&(i[n.b]=r.search.slice(1)||"(not set)"),"function"==typeof n.a.urlFieldsFilter?(t=n.a.urlFieldsFilter(i,o),r={},r.page=t.page,r.location=t.location,r[n.b]=t[n.b],r):i}function lt(n,i){var r=this,f;e(n,u.U);window.addEventListener&&(this.a=t({events:["click"],fieldsObj:{},attributePrefix:"ga-"},i),this.f=n,this.c=this.c.bind(this),f="["+this.a.attributePrefix+"on]",this.b={},this.a.events.forEach(function(n){r.b[n]=st(n,f,r.c)}))}function li(n,i){var r=this;e(n,u.V);window.IntersectionObserver&&window.MutationObserver&&(this.a=t({rootMargin:"0px",fieldsObj:{},attributePrefix:"ga-"},i),this.c=n,this.M=this.M.bind(this),this.O=this.O.bind(this),this.K=this.K.bind(this),this.L=this.L.bind(this),this.b=null,this.items=[],this.h={},this.g={},ar(function(){r.a.elements&&r.observeElements(r.a.elements)}))}function at(n,t){var i=[],r={},u={};return t.length&&t.forEach(function(t){t=ai(t);i.push(t);u[t.id]=n.h[t.id]||null;r[t.threshold]=n.g[t.threshold]||null}),{items:i,h:u,g:r}}function vt(n,t,i){1==t.nodeType&&t.id in n.h&&i(t.id);for(var r=0,u;u=t.childNodes[r];r++)vt(n,u,i)}function ai(n){return"string"==typeof n&&(n={id:n}),t({threshold:0,trackFirstImpressionOnly:!0},n)}function vi(){this.a={}}function pr(n,t){(n.a.externalSet=n.a.externalSet||[]).push(t)}function w(n,t){t=void 0===t?{}:t;this.a={};this.b=n;this.w=t;this.l=null}function yt(n,t,i){return n=["autotrack",n,t].join(":"),c[n]||(c[n]=new w(n,i),it||(window.addEventListener("storage",pi),it=!0)),c[n]}function pt(){if(null!=p)return p;try{window.localStorage.setItem("autotrack","autotrack");window.localStorage.removeItem("autotrack");p=!0}catch(n){p=!1}return p}function yi(n){if(n.l={},pt())try{window.localStorage.removeItem(n.b)}catch(t){}}function pi(n){var i=c[n.key],r;i&&(r=t({},i.w,wt(n.oldValue)),n=t({},i.w,wt(n.newValue)),i.l=n,i.ca("externalSet",n,r))}function wt(n){var t={};if(n)try{t=JSON.parse(n)}catch(i){}return t}function b(n,t,i){this.f=n;this.timeout=t||rt;this.timeZone=i;this.b=this.b.bind(this);s(n,"sendHitTask",this.b);try{this.c=new Intl.DateTimeFormat("en-US",{timeZone:this.timeZone})}catch(r){}this.a=yt(n.get("trackingId"),"session",{hitTime:0,isExpired:!1})}function ut(n,i){e(n,u.W);window.addEventListener&&(this.a=t({increaseThreshold:20,sessionTimeout:rt,fieldsObj:{}},i),this.c=n,this.b=ki(this),this.f=si(this.f.bind(this),500),this.m=this.m.bind(this),this.i=yt(n.get("trackingId"),"plugins/max-scroll-tracker"),this.s=new b(n,this.a.sessionTimeout,this.a.timeZone),s(n,"set",this.m),bi(this))}function bi(n){100>(n.i.get()[n.b]||0)&&window.addEventListener("scroll",n.f)}function ki(n){return n=o(n.c.get("page")||n.c.get("location")),n.pathname+n.search}function kt(n,i){e(n,u.X);window.matchMedia&&(this.a=t({changeTemplate:this.changeTemplate,changeTimeout:1e3,fieldsObj:{}},i),ct(this.a.definitions)&&(i=this.a.definitions,this.a.definitions=Array.isArray(i)?i:[i],this.b=n,this.c=[],wr(this)))}function wr(n){n.a.definitions.forEach(function(t){if(t.name&&t.dimensionIndex){var i=di(t);n.b.set("dimension"+t.dimensionIndex,i);br(n,t)}})}function di(n){var t;return n.items.forEach(function(n){gi(n.media).matches&&(t=n)}),t?t.name:"(not set)"}function br(n,t){t.items.forEach(function(i){i=gi(i.media);var u=si(function(){var i=di(t),u=n.b.get("dimension"+t.dimensionIndex);i!==u&&(n.b.set("dimension"+t.dimensionIndex,i),i={transport:"beacon",eventCategory:t.name,eventAction:"change",eventLabel:n.a.changeTemplate(u,i),nonInteraction:!0},n.b.send("event",r(i,n.a.fieldsObj,n.b,n.a.hitFilter)))},n.a.changeTimeout);i.addListener(u);n.c.push({fa:i,da:u})})}function gi(n){return bt[n]||(bt[n]=window.matchMedia(n))}function ft(n,i){e(n,u.Y);window.addEventListener&&(this.a=t({formSelector:"form",shouldTrackOutboundForm:this.shouldTrackOutboundForm,fieldsObj:{},attributePrefix:"ga-"},i),this.b=n,this.c=st("submit",this.a.formSelector,this.f.bind(this)))}function et(n,i){var r=this;e(n,u.Z);window.addEventListener&&(this.a=t({events:["click"],linkSelector:"a, area",shouldTrackOutboundLink:this.shouldTrackOutboundLink,fieldsObj:{},attributePrefix:"ga-"},i),this.f=n,this.c=this.c.bind(this),this.b={},this.a.events.forEach(function(n){r.b[n]=st(n,r.a.linkSelector,r.c)}))}function nr(n,i){var f=this;e(n,u.$);document.visibilityState&&(this.a=t({sessionTimeout:rt,visibleThreshold:5e3,sendInitialPageview:!1,fieldsObj:{}},i),this.b=n,this.i=this.f=null,this.s=!1,this.v=this.v.bind(this),this.o=this.o.bind(this),this.G=this.G.bind(this),this.N=this.N.bind(this),this.c=yt(n.get("trackingId"),"plugins/page-visibility-tracker"),pr(this.c,this.N),this.m=new b(n,this.a.sessionTimeout,this.a.timeZone),s(n,"set",this.v),window.addEventListener("unload",this.G),document.addEventListener("visibilitychange",this.o),this.o(),vr(this.b,function(){if("visible"==document.visibilityState)f.a.sendInitialPageview&&(dt(f,{ea:!0}),f.s=!0);else if(f.a.sendInitialPageview&&f.a.pageLoadsMetricIndex){var n={},n=(n.transport="beacon",n.eventCategory="Page Visibility",n.eventAction="page load",n.eventLabel="(not set)",n["metric"+f.a.pageLoadsMetricIndex]=1,n.nonInteraction=!0,n);f.b.send("event",r(n,f.a.fieldsObj,f.b,f.a.hitFilter))}}))}function dr(n,t){return"visible"==n.f&&"hidden"==t.state&&t.pageId!=y&&(t.state="visible",t.pageId=y,n.c.set(t)),t}function tr(n,t,i){i=(i?i:{}).hitTime;var u={hitTime:i},u=(u?u:{}).hitTime;(t=t.time&&!n.m.isExpired()?(u||+new Date)-t.time:0)&&t>=n.a.visibleThreshold&&(t=Math.round(t/1e3),u={transport:"beacon",nonInteraction:!0,eventCategory:"Page Visibility",eventAction:"track",eventValue:t,eventLabel:"(not set)"},i&&(u.queueTime=+new Date-i),n.a.visibleMetricIndex&&(u["metric"+n.a.visibleMetricIndex]=t),n.b.send("event",r(u,n.a.fieldsObj,n.b,n.a.hitFilter)))}function dt(n,t){var i=t?t:{},u;t=i.hitTime;i=i.ea;u={transport:"beacon"};t&&(u.queueTime=+new Date-t);i&&n.a.pageLoadsMetricIndex&&(u["metric"+n.a.pageLoadsMetricIndex]=1);n.b.send("pageview",r(u,n.a.fieldsObj,n.b,n.a.hitFilter))}function ir(n,i){e(n,u.aa);window.addEventListener&&(this.a=t({fieldsObj:{},hitFilter:null},i),this.b=n,this.u=this.u.bind(this),this.J=this.J.bind(this),this.D=this.D.bind(this),this.A=this.A.bind(this),this.B=this.B.bind(this),this.F=this.F.bind(this),"complete"!=document.readyState?window.addEventListener("load",this.u):this.u())}function gr(n){try{window.twttr.ready(function(){window.twttr.events.unbind("tweet",n.D);window.twttr.events.unbind("follow",n.A)})}catch(t){}}function rr(n,i){e(n,u.ba);history.pushState&&window.addEventListener&&(this.a=t({shouldTrackUrlChange:this.shouldTrackUrlChange,trackReplaceState:!1,fieldsObj:{},hitFilter:null},i),this.b=n,this.c=location.pathname+location.search,this.H=this.H.bind(this),this.I=this.I.bind(this),this.C=this.C.bind(this),s(history,"pushState",this.H),s(history,"replaceState",this.I),window.addEventListener("popstate",this.C))}function gt(n,t){setTimeout(function(){var u=n.c,i=location.pathname+location.search;u!=i&&n.a.shouldTrackUrlChange.call(n,i,u)&&(n.c=i,n.b.set({page:i,title:document.title}),(t||n.a.trackReplaceState)&&n.b.send("pageview",r({transport:"beacon"},n.a.fieldsObj,n.b,n.a.hitFilter)))},0)}var n,ur="function"==typeof Object.defineProperties?Object.defineProperty:function(n,t,i){if(i.get||i.set)throw new TypeError("ES3 does not support getters and setters.");n!=Array.prototype&&n!=Object.prototype&&(n[t]=i.value)},l="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global&&null!=global?global:this,fr=0,v=window.Element.prototype,ii=v.matches||v.matchesSelector||v.webkitMatchesSelector||v.mozMatchesSelector||v.msMatchesSelector||v.oMatchesSelector,lr=/:(80|443)$/,i=document.createElement("a"),ht={},k=[],g,t,u,nt,c,it,p,wi,rt,bt,y;fi.prototype.j=function(){var n=k.indexOf(this);-1<n&&(k.splice(n,1),this.c?this.context.set(this.P,this.f):this.context[this.P]=this.f)};g={};t=Object.assign||function(n){for(var f,r,u,i=[],t=1;t<arguments.length;++t)i[t-1]=arguments[t];for(t=0,f=i.length;t<f;t++){r=Object(i[t]);for(u in r)Object.prototype.hasOwnProperty.call(r,u)&&(n[u]=r[u])}return n};u={T:1,U:2,V:3,X:4,Y:5,Z:6,$:7,aa:8,ba:9,W:10};nt=Object.keys(u).length;tt.prototype.f=function(n){var t=this;return function(i){if("page"==i||i==t.b){var r={location:n("location"),page:n("page")};return ci(t,r)[i]}return n(i)}};tt.prototype.c=function(n){var t=this;return function(i){var r=ci(t,{location:i.get("location"),page:i.get("page")});i.set(r,null,!0);n(i)}};tt.prototype.remove=function(){h(this.i,"get",this.f);h(this.i,"buildHitTask",this.c)};f("cleanUrlTracker",tt);lt.prototype.c=function(n,i){var u=this.a.attributePrefix,f;0>i.getAttribute(u+"on").split(/\s*,\s*/).indexOf(n.type)||(u=d(i,u),f=t({},this.a.fieldsObj,u),this.f.send(u.hitType||"event",r({transport:"beacon"},f,this.f,this.a.hitFilter,i,n)))};lt.prototype.remove=function(){var n=this;Object.keys(this.b).forEach(function(t){n.b[t].j()})};f("eventTracker",lt);n=li.prototype;n.observeElements=function(n){var i=this;n=at(this,n);this.items=this.items.concat(n.items);this.h=t({},n.h,this.h);this.g=t({},n.g,this.g);n.items.forEach(function(n){var t=i.g[n.threshold]=i.g[n.threshold]||new IntersectionObserver(i.O,{rootMargin:i.a.rootMargin,threshold:[+n.threshold]});(n=i.h[n.id]||(i.h[n.id]=document.getElementById(n.id)))&&t.observe(n)});this.b||(this.b=new MutationObserver(this.M),this.b.observe(document.body,{childList:!0,subtree:!0}));requestAnimationFrame(function(){})};n.unobserveElements=function(n){var r=[],u=[],t,i;this.items.forEach(function(t){n.some(function(n){return n=ai(n),n.id===t.id&&n.threshold===t.threshold&&n.trackFirstImpressionOnly===t.trackFirstImpressionOnly})?u.push(t):r.push(t)});r.length?(t=at(this,r),i=at(this,u),this.items=t.items,this.h=t.h,this.g=t.g,u.forEach(function(n){if(!t.h[n.id]){var u=i.g[n.threshold],r=i.h[n.id];r&&u.unobserve(r);t.g[n.threshold]||i.g[n.threshold].disconnect()}})):this.unobserveAllElements()};n.unobserveAllElements=function(){var n=this;Object.keys(this.g).forEach(function(t){n.g[t].disconnect()});this.b.disconnect();this.b=null;this.items=[];this.h={};this.g={}};n.M=function(n){for(var u,t,i,r=0;u=n[r];r++){for(t=0;i=u.removedNodes[t];t++)vt(this,i,this.L);for(t=0;i=u.addedNodes[t];t++)vt(this,i,this.K)}};n.O=function(n){for(var o,h,u,i,f,c,e=[],s=0;o=n[s];s++)for(h=0;u=this.items[h];h++)(i=o.target.id===u.id)&&((i=u.threshold)?i=o.intersectionRatio>=i:(i=o.intersectionRect,i=0<i.top||0<i.bottom||0<i.left||0<i.right)),i&&(f=u.id,i=document.getElementById(f),f={transport:"beacon",eventCategory:"Viewport",eventAction:"impression",eventLabel:f,nonInteraction:!0},c=t({},this.a.fieldsObj,d(i,this.a.attributePrefix)),this.c.send("event",r(f,c,this.c,this.a.hitFilter,i)),u.trackFirstImpressionOnly&&e.push(u));e.length&&this.unobserveElements(e)};n.K=function(n){var t=this,i=this.h[n]=document.getElementById(n);this.items.forEach(function(r){n==r.id&&t.g[r.threshold].observe(i)})};n.L=function(n){var t=this,i=this.h[n];this.items.forEach(function(r){n==r.id&&t.g[r.threshold].unobserve(i)});this.h[n]=null};n.remove=function(){this.unobserveAllElements()};f("impressionTracker",li);vi.prototype.ca=function(n){for(var i=[],t=1;t<arguments.length;++t)i[t-1]=arguments[t];(this.a[n]=this.a[n]||[]).forEach(function(n){return n.apply(null,[].concat(a(i)))})};c={};it=!1;sr(w,vi);w.prototype.get=function(){if(this.l)return this.l;if(pt())try{this.l=wt(window.localStorage.getItem(this.b))}catch(n){}return this.l=t({},this.w,this.l)};w.prototype.set=function(n){if(this.l=t({},this.w,this.l,n),pt())try{var i=JSON.stringify(this.l);window.localStorage.setItem(this.b,i)}catch(r){}};w.prototype.j=function(){delete c[this.b];Object.keys(c).length||(window.removeEventListener("storage",pi),it=!1)};wi={};b.prototype.isExpired=function(n){if(n=n?n:this.a.get(),n.isExpired)return!0;var t=new Date,i=(n=n.hitTime)&&new Date(n);return n&&(t-i>6e4*this.timeout||this.c&&this.c.format(t)!=this.c.format(i))?!0:!1};b.prototype.b=function(n){var t=this;return function(i){n(i);var r=t.a.get(),u=t.isExpired(r);i=i.get("sessionControl");r.hitTime=+new Date;("start"==i||u)&&(r.isExpired=!1);"end"==i&&(r.isExpired=!0);t.a.set(r)}};b.prototype.j=function(){h(this.f,"sendHitTask",this.b);this.a.j();delete wi[this.f.get("trackingId")]};rt=30;ut.prototype.f=function(){var n=document.documentElement,t=document.body,n=Math.min(100,Math.max(0,Math.round(window.pageYOffset/(Math.max(n.offsetHeight,n.scrollHeight,t.offsetHeight,t.scrollHeight)-window.innerHeight)*100))),i;this.s.isExpired()?yi(this.i):(t=this.i.get()[this.b]||0,n>t&&(100!=n&&100!=t||window.removeEventListener("scroll",this.f),t=n-t,100==n||t>=this.a.increaseThreshold))&&(i={},this.i.set((i[this.b]=n,i)),n={transport:"beacon",eventCategory:"Max Scroll",eventAction:"increase",eventValue:t,eventLabel:String(n),nonInteraction:!0},this.a.maxScrollMetricIndex&&(n["metric"+this.a.maxScrollMetricIndex]=t),this.c.send("event",r(n,this.a.fieldsObj,this.c,this.a.hitFilter)))};ut.prototype.m=function(n){var t=this;return function(i,r){n(i,r);var u={};(ct(i)?i:(u[i]=r,u)).page&&(i=t.b,t.b=ki(t),t.b!=i&&bi(t))}};ut.prototype.remove=function(){this.s.j();window.removeEventListener("scroll",this.f);h(this.c,"set",this.m)};f("maxScrollTracker",ut);bt={};kt.prototype.remove=function(){for(var t=0,n;n=this.c[t];t++)n.fa.removeListener(n.da)};kt.prototype.changeTemplate=function(n,t){return n+" => "+t};f("mediaQueryTracker",kt);ft.prototype.f=function(n,i){var u={transport:"beacon",eventCategory:"Outbound Form",eventAction:"submit",eventLabel:o(i.action).href},f;this.a.shouldTrackOutboundForm(i,o)&&(navigator.sendBeacon||(n.preventDefault(),u.hitCallback=hi(function(){i.submit()})),f=t({},this.a.fieldsObj,d(i,this.a.attributePrefix)),this.b.send("event",r(u,f,this.b,this.a.hitFilter,i,n)))};ft.prototype.shouldTrackOutboundForm=function(n,t){return n=t(n.action),n.hostname!=location.hostname&&"http"==n.protocol.slice(0,4)};ft.prototype.remove=function(){this.c.j()};f("outboundFormTracker",ft);et.prototype.c=function(n,i){if(this.a.shouldTrackOutboundLink(i,o)){var f=i.getAttribute("href")||i.getAttribute("xlink:href"),u=o(f),e={transport:"beacon",eventCategory:"Outbound Link",eventAction:n.type,eventLabel:u.href};navigator.sendBeacon||"click"!=n.type||"_blank"==i.target||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey||1<n.which||window.addEventListener("click",function(n){n.defaultPrevented||(n.preventDefault(),e.hitCallback=hi(function(){location.href=f}))});u=t({},this.a.fieldsObj,d(i,this.a.attributePrefix));this.f.send("event",r(e,u,this.f,this.a.hitFilter,i,n))}};et.prototype.shouldTrackOutboundLink=function(n,t){return n=n.getAttribute("href")||n.getAttribute("xlink:href"),t=t(n),t.hostname!=location.hostname&&"http"==t.protocol.slice(0,4)};et.prototype.remove=function(){var n=this;Object.keys(this.b).forEach(function(t){n.b[t].j()})};f("outboundLinkTracker",et);y=function kr(n){return n?(n^16*Math.random()>>n/4).toString(16):"10000000-1000-4000-8000-100000000000".replace(/[018]/g,kr)}();n=nr.prototype;n.o=function(){var i=this,n,t;("visible"==document.visibilityState||"hidden"==document.visibilityState)&&(n=dr(this,this.c.get()),t={time:+new Date,state:document.visibilityState,pageId:y},this.f&&"visible"==document.visibilityState&&this.a.sendInitialPageview&&!this.s&&(dt(this),this.s=!0),this.i&&"hidden"==document.visibilityState&&clearTimeout(this.i),this.m.isExpired()?"hidden"==this.f&&"visible"==document.visibilityState?(clearTimeout(this.i),this.i=setTimeout(function(){i.c.set(t);dt(i,{hitTime:t.time})},this.a.visibleThreshold)):"hidden"==document.visibilityState&&yi(this.c):(n.pageId==y&&"visible"==n.state&&tr(this,n),this.c.set(t)),this.f=document.visibilityState)};n.v=function(n){var t=this;return function(i,r){var u={},u=ct(i)?i:(u[i]=r,u);u.page&&u.page!==t.b.get("page")&&"visible"==t.f&&t.o();n(i,r)}};n.N=function(n,t){n.time!=t.time&&t.pageId==y&&"visible"==t.state&&tr(this,t,{hitTime:n.time})};n.G=function(){"hidden"!=this.f&&this.o()};n.remove=function(){this.c.j();this.m.j();h(this.b,"set",this.v);window.removeEventListener("unload",this.G);document.removeEventListener("visibilitychange",this.o)};f("pageVisibilityTracker",nr);n=ir.prototype;n.u=function(){if(window.FB)try{window.FB.Event.subscribe("edge.create",this.B);window.FB.Event.subscribe("edge.remove",this.F)}catch(n){}window.twttr&&this.J()};n.J=function(){var n=this;try{window.twttr.ready(function(){window.twttr.events.bind("tweet",n.D);window.twttr.events.bind("follow",n.A)})}catch(t){}};n.D=function(n){if("tweet"==n.region){var t={transport:"beacon",socialNetwork:"Twitter",socialAction:"tweet",socialTarget:n.data.url||n.target.getAttribute("data-url")||location.href};this.b.send("social",r(t,this.a.fieldsObj,this.b,this.a.hitFilter,n.target,n))}};n.A=function(n){if("follow"==n.region){var t={transport:"beacon",socialNetwork:"Twitter",socialAction:"follow",socialTarget:n.data.screen_name||n.target.getAttribute("data-screen-name")};this.b.send("social",r(t,this.a.fieldsObj,this.b,this.a.hitFilter,n.target,n))}};n.B=function(n){this.b.send("social",r({transport:"beacon",socialNetwork:"Facebook",socialAction:"like",socialTarget:n},this.a.fieldsObj,this.b,this.a.hitFilter))};n.F=function(n){this.b.send("social",r({transport:"beacon",socialNetwork:"Facebook",socialAction:"unlike",socialTarget:n},this.a.fieldsObj,this.b,this.a.hitFilter))};n.remove=function(){window.removeEventListener("load",this.u);try{window.FB.Event.unsubscribe("edge.create",this.B);window.FB.Event.unsubscribe("edge.remove",this.F)}catch(n){}gr(this)};f("socialWidgetTracker",ir);n=rr.prototype;n.H=function(n){var t=this;return function(){for(var r=[],i=0;i<arguments.length;++i)r[+i]=arguments[i];n.apply(null,[].concat(a(r)));gt(t,!0)}};n.I=function(n){var t=this;return function(){for(var r=[],i=0;i<arguments.length;++i)r[+i]=arguments[i];n.apply(null,[].concat(a(r)));gt(t,!1)}};n.C=function(){gt(this,!0)};n.shouldTrackUrlChange=function(n,t){return!(!n||!t)};n.remove=function(){h(history,"pushState",this.H);h(history,"replaceState",this.I);window.removeEventListener("popstate",this.C)};f("urlChangeTracker",rr)}()