o&&(o=u),!t.tooltips[i]||t.tooltips[i].x!==u){rt=!0;c=s.points[ft].y;t.tooltips[i]={x:u,y:c};k=r.unitFormat?r.unitFormat.replace("{y}",gt(c,t.axisY.decimalPlaces)):gt(c,t.axisY.decimalPlaces);f=tr(this,u);r.tooltipLabel&&(f=r.tooltipLabel(s,u,f));var ct=r.tooltipLineLabel?r.tooltipLineLabel(s,u,f):s.title,d=dt(f.toUpperCase(),a)+8+6.5*k.length+20,et=h(this,u),ot=yt(this,c),v=Math.round(it.plotAreaOffset.left+et),st=Math.round(window.pageYOffset+it.plotAreaOffset.top+ot),g="top";v-d/2<0?g="right":v+d/2>window.innerWidth&&(g="left");ht={top:st,left:v,bottom:st+t.tooltipHeight+15,right:v+d};b(t.tooltips[i],{label:f,lineLabel:ct,value:k,plottedX:et,plottedY:ot,rect:ht,position:g,color:s.color})}t.tooltips[i]&&t.tooltips[i].rect.top'+i.value+'<\/span>\n '+i.lineLabel+"<\/span>\n "),r.tooltips[e].style.visibility="hidden",i.plottedY&&(l.setAttribute("cx",i.plottedX),l.setAttribute("cy",i.plottedY),l.style.visibility="visible");var y=a[f.tooltips[0].position],k=y.cls,p=y.translate;r.groupTooltipLabel.innerHTML=u.gtLabel;r.groupTooltip.className=t.tooltip+" "+t.group_tooltip+" "+k;r.groupTooltip.style.transform=ru?"translate3d("+u.gtLeft+"px, "+u.gtTop+"px, 0) "+p:"translate("+u.gtLeft+"px, "+u.gtTop+"px) "+p;r.groupTooltip.style.visibility="visible"}else{for(o=0;o'+n.label+'<\/span>\n '+n.value+"<\/span>\n ";c.style.transform=ru?"translate3d("+n.rect.left+"px, "+n.rect.top+"px, 0) "+b:"translate("+n.rect.left+"px, "+n.rect.top+"px "+b;c.style.visibility="visible";v.setAttribute("cx",n.plottedX);v.setAttribute("cy",n.plottedY);v.style.visibility="visible"}else!1===n&&(c.style.visibility="hidden",v.style.visibility="hidden")}r.groupTooltip.style.visibility="hidden"}s.viewportHover&&document.documentElement.classList.add(t.chart_viewport_hover)}),this.emit("tooltipsupdated"),this):void 0}},{key:"changeData",value:function(n){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.options.enableValidation&&!yr(n).valid&&this.options.strictValidation?this:(this.data=pr(t?n:b({},this.data,n)),this.redraw(!0).emit("datachanged"),this)}},{key:"addLine",value:function(n){return this.data.lines.length1&&void 0!==arguments[1]&&arguments[1];return this.options=b({},t?iu:this.options,n),this.destroy().init().emit("optionschanged"),this}},{key:"redraw",value:function(){return!0===(arguments.length>0&&void 0!==arguments[0]&&arguments[0])&&this.createMetadata(),wr(this.el.id),this.clearSvg().draw().emit("redraw"),this}},{key:"scrollTo",value:function(n){var i=this.dom,t=-n;return i.plotArea.x(t),i.tooltipPoints.x(t),i.axisX.x(t),this.state.viewportOffset=t,this.updateZoomFade(),this}},{key:"scrollToPoint",value:function(n){return this.scrollTo(h(this,n)-this.metadata.axisX.plotOffset),this}},{key:"zoom",value:function(n){return r(this,"interactive","custom")&&this.changeOptions({zoomLevel:n}),this}},{key:"zoomToRange",value:function(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.data.labels.length,t=this.data.labels,r=this.metadata.axisX,u=n>=0?Math.min(n,t.length-1):Math.max(t.length+n,0),f=i>=0?Math.min(i,t.length-1):Math.max(t.length+i,0),s=Math.max(f-u,1),e=t[u].x,c=t[f].x,o;return this.zoom(r.range/s),o=h(this,c)-h(this,e)+2*r.plotOffset,this.zoom(this.dom.viewport.bbox().width/o),this.scrollToPoint(e),this}},{key:"zoomTimePeriod",value:function(n){if("date"===this.data.labelType||"date_range"===this.data.labelType){var t=new Date;t.setDate(t.getDate()+n);this.zoom(this.metadata.axisX.range/(t-new Date))}return this}},{key:"updateZoomFade",value:function(){var n=this.dom,t=n.plotArea.x()<0,i=n.plotArea.x()>n.viewportClipRect.width()-n.plotArea.width();return n.zoomFade.setAttribute("class",(t?"fade-start ":"")+(i?"fade-end":"")),n.zoomOverlay.front(),this}},{key:"getPointPosition",value:function(n){return{left:h(this,n.x),top:yt(this,n.y)}}},{key:"embedStyles",value:function(){var n=this.dom;return n.stylesheet=document.createElement("style"),n.stylesheet.innerHTML=ki.replace(new RegExp("."+t.chart,"g"),"#"+this.el.id),n.chart.appendChild(n.stylesheet),this}},{key:"clearSvg",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],n=this.dom;return n.chart.removeAllChildren(),t&&n.stylesheet&&n.chart.appendChild(n.stylesheet),this}},{key:"destroy",value:function(){return this.emit("destroy"),this.clearSvg(!1),this.dom.chart.remove(),wr(this.el.id),this.dom={chart:this.dom.chart},this.metadata={},this.state={},nt.splice(nt.indexOf(this),1),this}},{key:"resize",value:function(){var i=arguments.length>0&&void 0!==arguments[0]&&arguments[0],r=this.metadata,u=this.options,n=this.state,f=this.dom,t=this.el.getBoundingClientRect();t.width===n.svgRect.width&&!0!==i||(n.svgRect=t,n.innerWidth=t.width-2*n.chartPadding,n.innerHeight=t.height-2*n.chartPadding,n.tooltipCachedCursorX=null,u.ticks||(r.axisX.ticks=ou(this)),this.redraw().emit("resize"));n.plotAreaOffset=f.plotArea.node.getBoundingClientRect()}},{key:"scroll",value:function(){var t=this.dom,n=this.state;n.svgRect=this.el.getBoundingClientRect();n.plotAreaOffset=t.plotArea.node.getBoundingClientRect()}},{key:"scrollViewport",value:function(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state.dragLastEvent,t=this.state,i=this.dom;i.plotArea.x(n);i.tooltipPoints.x(n);i.axisX.x(n);this.updateZoomFade();t.tooltipsEnabled&&r?(t.plotAreaOffset=i.plotArea.node.getBoundingClientRect(),this.updateTooltips(r.clientX)):t.tooltipsEnabled&&t.viewportFocused&&(t.plotAreaOffset=i.plotArea.node.getBoundingClientRect())}},{key:"autoScroll",value:function(){var r=this,n=this.state,i,t;(n.autoScrolling=!0,n.lastAutoScrollID=n.autoScrollID,n.dragAmplitude)?(i=Date.now()-n.dragLastTime,t=-n.dragAmplitude*Math.exp(-i/325),t>1||t<-1?(this.scrollViewport(n.dragAutoTarget+t),n.autoScrollID="autoScroll"+Math.random(),p(function(){ht(n.lastAutoScrollID);r.autoScroll()},this.state.autoScrollID)):(this.scrollViewport(n.dragAutoTarget),n.autoScrolling=!1)):n.autoScrolling=!1}},{key:"resetVelocityTracker",value:function(){var t=this.dom,n=this.state;n.autoScrolling=!1;ht(n.autoScrollID);ht(n.lastAutoScrollID);this.stopVelocityTracker();n.autoScrolling=!1;n.dragVelocity=0;n.dragAmplitude=0;n.dragLastX=t.plotArea.x();n.dragLastTime=Date.now()}},{key:"startVelocityTracker",value:function(){var n=this;this.resetVelocityTracker();uu=setInterval(function(){return n.trackVelocity()},100)}},{key:"stopVelocityTracker",value:function(){this.state.dragVelocity=0;clearInterval(uu)}},{key:"startAutoScroll",value:function(){var t=this.dom,n=this.state;Math.abs(n.dragVelocity)>10&&!n.autoScrolling&&(ht("panning_update"),n.dragAmplitude=.8*n.dragVelocity,this.stopVelocityTracker(),n.dragAutoTarget=this.clampViewportX(t.plotArea.x()+n.dragAmplitude),n.autoScrollID="autoScroll"+Math.random(),p(this.autoScroll.bind(this),n.autoScrollID))}},{key:"clampViewportX",value:function(n){var t=this.metadata,i=this.dom;return Math.max(Math.min(n,t.axisX.plotOffset),i.viewportClipRect.width()-i.plotArea.width()-t.axisX.plotOffset)}},{key:"trackVelocity",value:function(){var i=this.dom,n=this.state;if(n.panning){var t=i.plotArea.x(),r=Date.now()-(n.dragLastTime||Date.now()),u=1e3*(t-(n.dragLastX||0))/(1+r);n.dragVelocity=.8*u+.2*n.dragVelocity;n.dragLastTime=Date.now();n.dragLastX=t}}},{key:"mouseEnter",value:function(){var n=this.state,t=this.dom;n.svgRect=this.el.getBoundingClientRect();n.plotAreaOffset=t.plotArea.node.getBoundingClientRect()}},{key:"mouseMove",value:function(n){var o=this,i=this.state,u=this.dom,s,h,c,l,a,v,f,e;vt=!1;f={x:n.clientX-i.svgRect.left,y:n.clientY-i.svgRect.top};e=(s=f.x,h=f.y,c=u.viewport.x(),l=u.viewport.y(),a=u.viewport.x()+u.viewportClipRect.width(),v=u.viewport.y()+u.viewportClipRect.height(),s>=c&&s<=a&&h>=l&&h<=v);i.viewportHover=e;(e||r(this,"interactive","custom"))&&(i.tooltipsEnabled&&!i.leftMouseDown?(this.state.dragLastEvent=n,bi(function(){o.updateTooltips(n.clientX)},"tooltip_update")):1!==i.zoomLevel&&(i.panning=!0,u.chart.addClass(t.chart_panning),i.dragLastEvent=n,p(function(){var t=o.clampViewportX(f.x-i.viewportOffset);o.scrollViewport(t,n)},"panning_update")));e||(ht("tooltip_update"),document.documentElement.classList.remove(t.chart_viewport_hover))}},{key:"touchMove",value:function(n){this.mouseMove({clientX:n.touches[0].clientX,clientY:n.touches[0].clientY})}},{key:"mouseLeave",value:function(n){r(this,"interactive","custom")&&1!==this.state.zoomLevel&&this.state.leftMouseDown&&(this.state.dragLastEvent=n,this.startAutoScroll())}},{key:"mouseDown",value:function(n){var t=this.state,i=this.dom;0===n.button&&(t.leftMouseDown=!0,r(this,"interactive","custom")&&1!==t.zoomLevel&&this.startVelocityTracker());t.viewportOffset=function(n){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.target).getBoundingClientRect();return{x:n.clientX-t.left,y:n.clientY-t.top}}(n,this.el).x-i.plotArea.x()}},{key:"touchStart",value:function(n){this.state.leftMouseDown=!0;this.mouseDown({clientX:n.touches[0].clientX,clientY:n.touches[0].clientY})}},{key:"mouseUp",value:function(n){var i=this.state,u=this.dom;0===n.button&&(i.leftMouseDown=!1);i.panning=!1;r(this,"interactive","custom")&&1!==i.zoomLevel&&(i.dragLastEvent=n,this.startAutoScroll());u.chart.removeClass(t.chart_panning)}},{key:"touchEnd",value:function(){this.mouseUp({button:0})}},{key:"focusStart",value:function(){var i=this,n=this.state,t;(n.viewportFocused=!0,!n.viewportHover&&n.tooltipsEnabled)&&(n.viewportHover=!0,n.focusIndex=0,at&&(vt=!0),this.scrollViewport(this.metadata.axisX.plotOffset),t=eu(this,0),bi(function(){i.updateTooltips(t)},"tooltip_update"))}},{key:"focusEnd",value:function(){var n=this.state;n.viewportFocused=!1;n.viewportHover=!1}},{key:"keyDown",value:function(n){var e=this,t=this.state,u=this.metadata.axisX,r,i,f;t.viewportFocused&&(r=void 0,"ArrowLeft"===n.key?r=t.focusIndex-1:"ArrowRight"===n.key&&(r=t.focusIndex+1),t.focusIndex=(r%u.values.length+u.values.length)%u.values.length,at&&(vt=!0),i=h(this,t.focusIndex),at&&(i=h(this,this.metadata.axisX.values[t.focusIndex])),0===t.focusIndex?this.scrollViewport(this.metadata.axisX.plotOffset):-(i-this.metadata.axisX.plotOffset)>this.dom.plotArea.x()?this.scrollViewport(-(i-this.metadata.axisX.plotOffset)):i+this.dom.plotArea.x()>this.dom.viewportClipRect.width()-this.metadata.axisX.plotOffset&&this.scrollViewport(-i+this.dom.viewportClipRect.width()-this.metadata.axisX.plotOffset),f=eu(this,t.focusIndex),bi(function(){e.updateTooltips(f)},"tooltip_update"))}}]),n}();b(ir,{MODE_ARTICLE:"article",MODE_TILE:w,MODE_INTERACTIVE:"interactive",MODE_CUSTOM:"custom"});window.addEventListener("resize",function(){p(function(){nt.forEach(function(n){return n.resize()})},"resize_update")});window.addEventListener("scroll",function(){p(function(){nt.forEach(function(n){return n.scroll()})},"scroll_update")});window.addEventListener("blur",function(){document.documentElement.classList.remove(t.chart_viewport_hover)});document.addEventListener("mouseup",function(n){nt.forEach(function(t){0===n.button&&(t.state.leftMouseDown=!1)})});document.addEventListener("DOMContentLoaded",function(){document.body.addEventListener("typekitLoaded",function(){kt={};nt.forEach(function(n){return n.redraw(!0)})})});rr=["above","below","left","right"];tt=[];hu=function(){function n(t){u(this,n);this.chart=t;this.selectedPoint={};this.init()}return o(n,[{key:"init",value:function(){var n=this,i=this.chart,r,u;this.build();i.data.lines.forEach(function(t,i){var r=document.createElement("option");r.value=i;r.textContent=t.title;n.lineSelect.appendChild(r)});r=function(){var t=i.data.lines[n.lineSelect.value];if(t){for(;n.pointSelect.firstChild;)n.pointSelect.removeChild(n.pointSelect.firstChild);t.points.forEach(function(t){var u=i.data.labels.find(function(n){return n.x===t.x}),r;u&&(r=document.createElement("option"),r.value=t.x,r.textContent=u.text,n.pointSelect.appendChild(r),"x"in n.selectedPoint&&n.selectedPoint.x===t.x&&(r.selected=!0))})}};u=function(){n.annotationChars.textContent=n.annotation.value.length};r();this.lineSelect.addEventListener("change",r);this.lineSelect.addEventListener("change",this.updateControls.bind(this));this.pointSelect.addEventListener("change",this.updateControls.bind(this));this.showLabel.addEventListener("change",this.updateChart.bind(this));this.labelPosition.addEventListener("change",function(){"manual"===n.labelPosition.value&&(n.labelTop=-20,n.labelLeft=0);n.updateChart()});this.showOnTile.addEventListener("change",this.updateChart.bind(this));this.annotation.addEventListener("keyup",u);this.annotation.addEventListener("change",function(){u();n.updateChart()});this.closeButton.addEventListener("click",this.close.bind(this));this.labelHandle.addEventListener("mousedown",function(i){n.draggingLabel=!0;var r=n.labelHandle.getBoundingClientRect();n.labelHandleOffset={x:Math.round(i.clientX-r.left),y:Math.round(i.clientY-r.top),width:r.width};document.body.classList.add(t.no_select)});i.on("dv.draw",this.reposition.bind(this)).on("dv.datachanged",this.close.bind(this)).on("dv.destroy",this.destroy.bind(this));tt.push(this);this.updateControls()}},{key:"build",value:function(){br('.dv-label-editor{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;width:250px;-webkit-box-sizing:border-box;box-sizing:border-box;padding:4px 8px;margin-left:-250px;font-family:aktiv-grotesk,aktiv-grotesk-std,Arial,Helvetica,sans-serif;font-size:13px;color:#e0e0e0;letter-spacing:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:#404040;-webkit-transform-origin:right;-ms-transform-origin:right;transform-origin:right;-webkit-animation:a .3s;animation:a .3s}.dv-label-editor.dv-editor-closing{-webkit-animation:b .3s;animation:b .3s}.dv-label-editor p{margin:0;line-height:1.65}.dv-label-editor label,.dv-label-editor select{font-size:12px}.dv-label-editor select,.dv-label-editor textarea{color:#e0e0e0;background-color:#404040;border:0}.dv-label-editor select:focus,.dv-label-editor textarea:focus{outline:none}.dv-label-editor textarea{padding:4px 0;line-height:1.4;-webkit-box-shadow:0 2px 0 #bbb;box-shadow:0 2px 0 #bbb}.dv-label-editor textarea:focus{-webkit-box-shadow:0 2px 0 #61c250;box-shadow:0 2px 0 #61c250}.dv-label-editor select{max-width:210px;height:20px;margin:0 -4px;border-bottom:2px solid transparent;-webkit-box-shadow:0 6px 0 -4px #bbb;box-shadow:0 6px 0 -4px #bbb}.dv-label-editor select:focus{outline:none;-webkit-box-shadow:0 0 0 1px #61c250;box-shadow:0 0 0 1px #61c250}.dv-label-editor .dv-editor-label-position{height:17px;margin-top:1px;margin-left:1px}.dv-editor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}.dv-editor-column,.dv-editor-row{display:-webkit-box;display:-ms-flexbox;display:flex}.dv-editor-column{margin:8px 12px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.dv-smallcaps{font-size:11px;color:#e0e0e0;text-transform:uppercase;letter-spacing:.1em}.dv-editor-line{width:100%}.dv-editor-point-value{color:#61c250}.dv-editor-point-options label,.dv-editor-point-options select{float:left}.dv-editor-point-options label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.dv-editor-point-options input[type=checkbox]{margin:0 6px 0 0}.dv-editor-annotation-row,.dv-editor-annotation-row .dv-editor-column,.dv-editor-annotation-row textarea{-webkit-box-flex:1;-ms-flex:1;flex:1}.dv-editor-annotation-row .dv-editor-column{display:-webkit-box;display:-ms-flexbox;display:flex}.dv-annotation-chars{margin-top:3px;font-size:11px}.dv-selected-point{width:7px;height:7px;border:3px solid #f0f8f0;border-radius:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.dv-label-handle,.dv-selected-point{position:absolute;-webkit-box-sizing:content-box;box-sizing:content-box}.dv-label-handle{display:none;padding:4px;margin:-4px;cursor:move;border-radius:3px}.dv-label-handle:hover{background-color:rgba(0,0,0,.1)}.dv-editor-close{position:absolute;top:8px;right:8px;width:18px;height:18px;padding:0;background-color:transparent;border:0}.dv-editor-close:after,.dv-editor-close:before{position:absolute;display:block;width:18px;height:2px;content:"";background-color:#61c250}.dv-editor-close:before{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.dv-editor-close:after{-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.dv-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@-webkit-keyframes a{0%{opacity:0;-webkit-transform:perspective(1000px) rotateY(-90deg);transform:perspective(1000px) rotateY(-90deg)}to{opacity:1;-webkit-transform:perspective(1000px) rotateY(0deg);transform:perspective(1000px) rotateY(0deg)}}@keyframes a{0%{opacity:0;-webkit-transform:perspective(1000px) rotateY(-90deg);transform:perspective(1000px) rotateY(-90deg)}to{opacity:1;-webkit-transform:perspective(1000px) rotateY(0deg);transform:perspective(1000px) rotateY(0deg)}}@-webkit-keyframes b{0%{opacity:1;-webkit-transform:perspective(1000px) rotateY(0deg);transform:perspective(1000px) rotateY(0deg)}to{opacity:0;-webkit-transform:perspective(1000px) rotateY(-90deg);transform:perspective(1000px) rotateY(-90deg)}}@keyframes b{0%{opacity:1;-webkit-transform:perspective(1000px) rotateY(0deg);transform:perspective(1000px) rotateY(0deg)}to{opacity:0;-webkit-transform:perspective(1000px) rotateY(-90deg);transform:perspective(1000px) rotateY(-90deg)}}');this.container=document.createElement("div");var n=this.container;n.className=t.label_editor;n.innerHTML='\n \n