/* Highcharts JS v7.0.0 (2018-12-11) Gantt series (c) 2016-2018 Lars A. V. Cabrera License: www.highcharts.com/license */ (function(C){"object"===typeof module&&module.exports?module.exports=C:"function"===typeof define&&define.amd?define(function(){return C}):C("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(C){(function(c){var v=c.addEvent,x=c.PlotLineOrBand,k=c.merge,m={currentDateIndicator:!0,color:"#ccd6eb",width:2,label:{format:"%a, %b %d %Y, %H:%M",formatter:void 0,rotation:0,style:{fontSize:"10px"}}};v(c.Axis,"afterSetOptions",function(){var c=this.options,q=c.currentDateIndicator;q&&("object"=== typeof q?(q.label&&q.label.format&&(q.label.formatter=void 0),q=k(m,q)):q=k(m),q.value=new Date,c.plotLines||(c.plotLines=[]),c.plotLines.push(q))});v(x,"render",function(){var k=this.options,q,n;k.currentDateIndicator&&k.label&&(q=k.label.format,n=k.label.formatter,k.value=new Date,k.label.text="function"===typeof n?n(this):c.dateFormat(q,new Date),this.label&&this.label.attr({text:k.label.text}))})})(C);(function(c){var v=function(a){return Array.prototype.slice.call(a,1)},x=c.dateFormat,k=c.defined, m=c.isArray,t=c.isNumber,q=function(a){return c.isObject(a,!0)},n=c.merge,B=c.pick,a=c.wrap,g=c.Axis,f=c.Tick,A={top:0,right:1,bottom:2,left:3,0:"top",1:"right",2:"bottom",3:"left"};g.prototype.isNavigatorAxis=function(){return/highcharts-navigator-[xy]axis/.test(this.options.className)};g.prototype.isOuterAxis=function(){var a=this,e=-1,b=!0;a.chart.axes.forEach(function(d,h){d.side!==a.side||d.isNavigatorAxis()||(d===a?e=h:0<=e&&h>e&&(b=!1))});return b};g.prototype.getMaxLabelDimensions=function(a, e){var b={width:0,height:0};e.forEach(function(d){d=a[d];var e;q(d)&&(e=q(d.label)?d.label:{},d=e.getBBox?e.getBBox().height:0,e=t(e.textPxLength)?e.textPxLength:0,b.height=Math.max(d,b.height),b.width=Math.max(e,b.width))});return b};c.dateFormats={W:function(a){a=new Date(a);var e;a.setHours(0,0,0,0);a.setDate(a.getDate()-(a.getDay()||7));e=new Date(a.getFullYear(),0,1);return Math.ceil(((a-e)/864E5+1)/7)},E:function(a){return x("%a",a,!0).charAt(0)}};a(g.prototype,"autoLabelAlign",function(a){return this.chart.isStock? "left":a.apply(this,v(arguments))});a(f.prototype,"getLabelPosition",function(a,e,b,d,h,l,f,c){var r=this.axis,w=r.reversed,u=r.chart,p=r.options,z=p&&q(p.grid)?p.grid:{},p=l.align,g=A[r.side],y=r.tickPositions,I=this.pos-f,J=t(y[c+1])?y[c+1]-f:r.max+f,G=r.tickSize("tick",!0),y=m(G)?G[0]:0,G=G&&G[1]/2,n;!0===z.enabled?("top"===g?(z=r.top+r.offset,n=z-y):"bottom"===g?(n=u.chartHeight-r.bottom+r.offset,z=n+y):(z=r.top+r.len-r.translate(w?J:I),n=r.top+r.len-r.translate(w?I:J)),"right"===g?(g=u.chartWidth- r.right+r.offset,w=g+y):"left"===g?(w=r.left+r.offset,g=w-y):(g=Math.round(r.left+r.translate(w?J:I))-G,w=Math.round(r.left+r.translate(w?I:J))-G),this.slotWidth=w-g,w={x:"left"===p?g:"right"===p?w:g+(w-g)/2,y:n+(z-n)/2},u=u.renderer.fontMetrics(l.style.fontSize,d.element),p=d.getBBox().height,l.useHTML?w.y+=u.b+-(p/2):(p=Math.round(p/u.h),w.y+=(u.b-(u.h-u.f))/2+-((p-1)*u.h/2)),w.x+=r.horiz&&l.x||0):w=a.apply(this,v(arguments));return w});a(g.prototype,"tickSize",function(a){var e=this.maxLabelDimensions, b=this.options,d=b&&q(b.grid)?b.grid:{},b=a.apply(this,v(arguments));!0===d.enabled&&(d=2*Math.abs(this.defaultLeftAxisOptions.labels.x),e=d+(this.horiz?e.height:e.width),m(b)?b[0]=e:b=[e]);return b});a(g.prototype,"getTitlePosition",function(a){var e=this.options;if(!0===(e&&q(e.grid)?e.grid:{}).enabled){var b=this.axisTitle,d=b&&b.getBBox().width,h=this.horiz,l=this.left,r=this.top,f=this.width,c=this.height,u=e.title,e=this.opposite,g=this.offset,p=this.tickSize()||[0],F=u.x||0,D=u.y||0,y=B(u.margin, h?5:10),b=this.chart.renderer.fontMetrics(u.style&&u.style.fontSize,b).f,p=(h?r+c:l)+p[0]/2*(e?-1:1)*(h?1:-1)+(this.side===A.bottom?b:0);return{x:h?l-d/2-y+F:p+(e?f:0)+g+F,y:h?p-(e?c:0)+(e?b:-b)/2+g+D:r-y+D}}return a.apply(this,v(arguments))});a(g.prototype,"unsquish",function(a){var e=this.options;return!0===(e&&q(e.grid)?e.grid:{}).enabled&&this.categories?this.tickInterval:a.apply(this,v(arguments))});c.addEvent(g,"afterSetOptions",function(a){var e=this.options;a=a.userOptions;var b,d=e&&q(e.grid)? e.grid:{};!0===d.enabled&&(b=n(!0,{className:"highcharts-grid-axis "+(a.className||""),dateTimeLabelFormats:{hour:{list:["%H:%M","%H"]},day:{list:["%A, %e. %B","%a, %e. %b","%E"]},week:{list:["Week %W","W%W"]},month:{list:["%B","%b","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"13px"}},title:{text:null,reserveSpace:!1,rotation:0},units:[["millisecond",[1,10,100]],["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},a),"xAxis"=== this.coll&&(k(a.linkedTo)&&!k(a.tickPixelInterval)&&(b.tickPixelInterval=350),k(a.tickPixelInterval)||!k(a.linkedTo)||k(a.tickPositioner)||k(a.tickInterval)||(b.tickPositioner=function(d,e){var a=this.linkedParent&&this.linkedParent.tickPositions&&this.linkedParent.tickPositions.info;if(a){var h,l,f,g,p=b.units;for(g=0;gc,p=fc,f=f>g&&f-uh?b:h;A=A+1+a.descendants;u=Math.max(a.height+1,u);return a});a&&(a.start=k(a.start,d),a.end=k(a.end,h));v(n,{children:b,descendants:A,height:u});"function"===typeof e&&e(n,f);return n};return{getListOfParents:m,getNode:t,getTree:function(c,n){var k=c.map(function(a){return a.id}); c=m(c,k);return t("",null,1,null,c,n)}}}(C),L=function(c){var v=c.extend,x=c.isArray,k=c.isObject,m=c.isNumber,t=c.merge,q=c.pick;return{getColor:function(n,k){var a=k.index,g=k.mapOptionsToLevel,f=k.parentColor,A=k.parentColorIndex,u=k.series,e=k.colors,b=k.siblings,d=u.points,h=u.chart.options.chart,l,r,z,E;if(n){d=d[n.i];n=g[n.level]||{};if(g=d&&n.colorByPoint)r=d.index%(e?e.length:h.colorCount),l=e&&e[r];if(!u.chart.styledMode){e=d&&d.options.color;h=n&&n.color;if(z=f)z=(z=n&&n.colorVariation)&& "brightness"===z.key?c.color(f).brighten(a/b*z.to).get():f;z=q(e,h,l,z,u.color)}E=q(d&&d.options.colorIndex,n&&n.colorIndex,r,A,k.colorIndex)}return{color:z,colorIndex:E}},getLevelOptions:function(c){var n=null,a,g,f,A;if(k(c))for(n={},f=m(c.from)?c.from:1,A=c.levels,g={},a=k(c.defaults)?c.defaults:{},x(A)&&(g=A.reduce(function(c,e){var b,d;k(e)&&m(e.level)&&(d=t({},e),b="boolean"===typeof d.levelIsConstant?d.levelIsConstant:a.levelIsConstant,delete d.levelIsConstant,delete d.level,e=e.level+(b?0: f-1),k(c[e])?v(c[e],d):c[e]=d);return c},{})),A=m(c.to)?c.to:1,c=0;c<=A;c++)n[c]=t({},a,k(g[c])?g[c]:{});return n},setTreeValues:function B(a,c){var f=c.before,g=c.idRoot,u=c.mapIdToNode[g],e=c.points[a.i],b=e&&e.options||{},d=0,h=[];v(a,{levelDynamic:a.level-(("boolean"===typeof c.levelIsConstant?c.levelIsConstant:1)?0:u.level),name:q(e&&e.name,""),visible:g===a.id||("boolean"===typeof c.visible?c.visible:!1)});"function"===typeof f&&(a=f(a,c));a.children.forEach(function(b,e){var f=v({},c);v(f, {index:e,siblings:a.children.length,visible:a.visible});b=B(b,f);h.push(b);b.visible&&(d+=b.val)});a.visible=0=e?(c-e)%f:f-(e-c)%f;return a.inclusive?c<=b:c=a)break;else if(b.isInBreak(e,a)){d-=a-e.from;break}return d}function e(a){var d,e;for(e=0;e=a);e++)d.tok;)D-=g;for(;Db.to||d>b.from&&gb.from&&gb.from&&g>b.to&&ga&&(a=g);e--;)k[e+1].x-k[e].x>a&&(g=(k[e].x+k[e+1].x)/2,k.splice(e+1,0,{isNull:!0,x:g}),this.options.stacking&&(g=b.stacks[this.stackKey][g]=new c.StackItem(b,b.options.stackLabels,!1,g,this.stack),g.total=0));return this.getGraphPath(k)};t(c.seriesTypes.column.prototype,"drawPoints",x);t(c.Series.prototype,"drawPoints",x)})(C);(function(c,v,x){var k= function(b){return Array.prototype.slice.call(b,1)},m=c.defined,t=c.extend,q=c.find,n=c.fireEvent,B=x.getLevelOptions,a=c.merge,g=c.isNumber,f=function(b){return c.isObject(b,!0)},A=c.isString,u=c.pick,e=c.wrap;x=c.Axis;var b=c.Tick,d=function(b,a){var d,c;for(d in a)a.hasOwnProperty(d)&&(c=a[d],e(b,d,c))},h=function(b,a){var d=b.collapseStart;b=b.collapseEnd;b>=a&&(d-=.5);return{from:d,to:b,showPoints:!1}},l=function(b){return Object.keys(b.mapOfPosToGridNode).reduce(function(a,d){d=+d;b.min<=d&& b.max>=d&&!b.isInAnyBreak(d)&&a.push(d);return a},[])},r=function(b,a){var d=b.options.breaks||[],e=h(a,b.max);return d.some(function(b){return b.from===e.from&&b.to===e.to})},z=function(b,a){var d=b.options.breaks||[];b=h(a,b.max);d.push(b);return d},E=function(b,a){var d=b.options.breaks||[],e=h(a,b.max);return d.reduce(function(b,a){a.to===e.to&&a.from===e.from||b.push(a);return b},[])},w=function(b,a){var d=b.labelIcon,e=!d,h=a.renderer,g=a.xy,f=a.options,l=f.width,r=f.height,p=g.x-l/2-f.padding, g=g.y-r/2,k=a.collapsed?90:180,w=a.show&&c.isNumber(g);e&&(b.labelIcon=d=h.path(h.symbols[f.type](f.x,f.y,l,r)).addClass("highcharts-label-icon").add(a.group));w||d.attr({y:-9999});h.styledMode||d.attr({"stroke-width":1,fill:u(a.color,"#666666")}).css({cursor:"pointer",stroke:f.lineColor,strokeWidth:f.lineWidth});d[e?"attr":"animate"]({translateX:p,translateY:g,rotation:k})},H=function(b,a,d){var e=[],c=[],h={},g={},l=-1,r="boolean"===typeof a?a:!1;b=v.getTree(b,{after:function(b){b=g[b.pos];var a= 0,d=0;b.children.forEach(function(b){d+=b.descendants+1;a=Math.max(b.height+1,a)});b.descendants=d;b.height=a;b.collapsed&&c.push(b)},before:function(b){var a=f(b.data)?b.data:{},d=A(a.name)?a.name:"",c=h[b.parent],c=f(c)?g[c.pos]:null,p=function(b){return b.name===d},k;r&&f(c)&&(k=q(c.children,p))?(p=k.pos,k.nodes.push(b)):p=l++;g[p]||(g[p]=k={depth:c?c.depth+1:0,name:d,nodes:[b],children:[],pos:p},-1!==p&&e.push(d),f(c)&&c.children.push(k));A(b.id)&&(h[b.id]=b);!0===a.collapsed&&(k.collapsed=!0); b.pos=p}});g=function(b,a){var d=function(b,e,c){var h=e+(-1===e?0:a-1),g=(h-e)/2,l=e+g;b.nodes.forEach(function(b){var a=b.data;f(a)&&(a.y=e+a.seriesIndex,delete a.seriesIndex);b.pos=l});c[l]=b;b.pos=l;b.tickmarkOffset=g+.5;b.collapseStart=h+.5;b.children.forEach(function(b){d(b,h+1,c);h=b.collapseEnd-.5});b.collapseEnd=h+.5;return c};return d(b["-1"],-1,{})}(g,d);return{categories:e,mapOfIdToNode:h,mapOfPosToGridNode:g,collapsedNodes:c,tree:b}};d(x.prototype,{init:function(b,d,e){var h=this,g,f= "treegrid"===e.type;f&&(e=a({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-5,height:10,width:10,padding:5}},uniqueNames:!1},e,{reversed:!0,grid:{columns:void 0}}));b.apply(h,[d,e]);f&&(c.addEvent(h.chart,"beforeRender",function(){var b=h.options&&h.options.labels;h.updateYNames();h.series.forEach(function(b){b.yData=b.options.data.map(function(b){return b.y})});h.mapOptionsToLevel=B({defaults:b,from:1,levels:b.levels, to:h.tree.height});g=c.addEvent(h,"foundExtremes",function(){h.collapsedNodes.forEach(function(b){b=z(h,b);h.setBreaks(b,!1)});g()})}),h.hasNames=!0,h.options.showLastLabel=!0)},getMaxLabelDimensions:function(b){var a=this.options,d=a&&a.labels,a=d&&g(d.indentation)?a.labels.indentation:0,d=b.apply(this,k(arguments)),e;"treegrid"===this.options.type&&(e=this.mapOfPosToGridNode[-1].height,d.width+=a*(e-1));return d},generateTick:function(a,d){var e=f(this.mapOptionsToLevel)?this.mapOptionsToLevel: {},c=this.ticks,h=c[d],g,l;"treegrid"===this.options.type?(l=this.mapOfPosToGridNode[d],(e=e[l.depth])&&(g={labels:e}),h?(h.parameters.category=l.name,h.options=g,h.addLabel()):c[d]=new b(this,d,null,void 0,{category:l.name,tickmarkOffset:l.tickmarkOffset,options:g})):a.apply(this,k(arguments))},setTickInterval:function(b){var a=this.options;"treegrid"===a.type?(this.min=u(this.userMin,a.min,this.dataMin),this.max=u(this.userMax,a.max,this.dataMax),n(this,"foundExtremes"),this.setAxisTranslation(!0), this.tickmarkOffset=.5,this.tickInterval=1,this.tickPositions=l(this)):b.apply(this,k(arguments))}});d(b.prototype,{getLabelPosition:function(b,a,d,e,c,h,l,r,k){var p=u(this.options&&this.options.labels,h);h=this.pos;var w=this.axis,z="treegrid"===w.options.type;b=b.apply(this,[a,d,e,c,p,l,r,k]);z&&(a=p&&f(p.symbol)?p.symbol:{},p=p&&g(p.indentation)?p.indentation:0,h=(h=(w=w.mapOfPosToGridNode)&&w[h])&&h.depth||1,b.x+=a.width+2*a.padding+(h-1)*p);return b},renderLabel:function(b){var a=this,d=a.pos, e=a.axis,h=a.label,g=e.mapOfPosToGridNode,l=e.options,p=u(a.options&&a.options.labels,l&&l.labels),z=p&&f(p.symbol)?p.symbol:{},n=(g=g&&g[d])&&g.depth,l="treegrid"===l.type,A=!(!h||!h.element),q=-1>1,e=c-a[k].xMin,0e)g=k-1;else return k;return 0=c.x)k=a[g],k=c.x<=k.xMax&&c.x>=k.xMin&&c.y<=k.yMax&&c.y>=k.yMin;if(k)return g}return-1}function k(a){var c=[];if(a.length){c.push("M",a[0].start.x,a[0].start.y);for(var f=0;fn(a[d]-b[d+"Max"]);return g(a,d,b,d+(c?"Max":"Min"),c?1:-1)}var e=[],b,d=B(f.startDirectionX,n(c.x-a.x)>n(c.y-a.y))?"x":"y",h=f.chartObstacles,l=x(h,a);f=x(h,c);var r;-1a[d]===f[d]>r[d]&&(d="y"===d?"x":"y",c=a[d]l?t(v(y,e.x),y.length-1):0;y[f]&&(0l&&y[f].xMax>=c.x);){if(y[f].xMin<=e.x&&y[f].xMax>=c.x&&y[f].yMin<=h.y&&y[f].yMax>=g.y)return d?{y:b.y,x:b.x=h[l+"Max"];var h=b[l+"Min"]<=h[l+"Min"],w=b[l+"Max"]>=f[l+"Max"],f=b[l+"Min"]<=f[l+"Min"],p= n(b[l+"Min"]-a[l]),z=n(b[l+"Max"]-a[l]);d=10>n(p-z)?a[l]n(c.y-a.y)),h=d?"x":"y",l,r,z=[],E=!1,w=f.obstacleMetrics,H=t(a.x,c.x)-w.maxWidth-10,p=q(a.x,c.x)+w.maxWidth+10,F=t(a.y,c.y)-w.maxHeight-10,D=q(a.y,c.y)+w.maxHeight+10,y=f.chartObstacles;l=v(y,H); w=v(y,p);y=y.slice(l,w+1);-1<(w=x(y,c))&&(r=b(y[w],c,a),z.push({end:c,start:r}),c=r);for(;-1<(w=x(y,c));)l=0>c[h]-a[h],r={x:c.x,y:c.y},r[h]=y[w][l?h+"Max":h+"Min"]+(l?1:-1),z.push({end:c,start:r}),c=r;a=e(a,c,d);a=a.concat(z.reverse());return{path:k(a),obstacles:a}},{requiresObstacles:!0})}}(C);(function(c){c.SVGRenderer.prototype.symbols.arrow=function(c,x,k,m){return["M",c,x+m/2,"L",c+k,x,"L",c,x+m/2,"L",c+k,x+m]};c.SVGRenderer.prototype.symbols["arrow-half"]=function(v,x,k,m){return c.SVGRenderer.prototype.symbols.arrow(v, x,k/2,m)};c.SVGRenderer.prototype.symbols["triangle-left"]=function(c,x,k,m){return["M",c+k,x,"L",c,x+m/2,"L",c+k,x+m,"Z"]};c.SVGRenderer.prototype.symbols["arrow-filled"]=c.SVGRenderer.prototype.symbols["triangle-left"];c.SVGRenderer.prototype.symbols["triangle-left-half"]=function(v,x,k,m){return c.SVGRenderer.prototype.symbols["triangle-left"](v,x,k/2,m)};c.SVGRenderer.prototype.symbols["arrow-filled-half"]=c.SVGRenderer.prototype.symbols["triangle-left-half"]})(C);(function(c,v){function x(b){var a= b.shapeArgs;return a?{xMin:a.x,xMax:a.x+a.width,yMin:a.y,yMax:a.y+a.height}:(a=b.graphic&&b.graphic.getBBox())?{xMin:b.plotX-a.width/2,xMax:b.plotX+a.width/2,yMin:b.plotY-a.height/2,yMax:b.plotY+a.height/2}:null}function k(b){for(var a=b.length,c=0,f,g,k=[],n=function(b,a,c){c=A(c,10);var d=b.yMax+c>a.yMin-c&&b.yMin-ca.xMin-c&&b.xMin-ca.xMax?b.xMin-a.xMax:a.xMin-b.xMax:Infinity,l=h?b.yMin>a.yMax?b.yMin-a.yMax:a.yMin-b.yMax:Infinity;return h&&d?c?n(b,a,Math.floor(c/ 2)):Infinity:e(f,l)};cg&&k.push(g);k.push(80);return u(Math.floor(k.sort(function(b,a){return b-a})[Math.floor(k.length/10)]/2-1),1)}function m(b,a,c){this.init(b,a,c)}function t(b){this.init(b)}function q(b){if(b.options.pathfinder||b.series.reduce(function(b,a){a.options&&f(!0,a.options.connectors=a.options.connectors||{},a.options.pathfinder);return b||a.options&&a.options.pathfinder},!1))f(!0,b.options.connectors=b.options.connectors||{},b.options.pathfinder), c.error('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')}var n=c.defined,B=c.deg2rad,a=c.extend,g=c.addEvent,f=c.merge,A=c.pick,u=Math.max,e=Math.min;a(c.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});m.prototype={init:function(b,a,c){this.fromPoint=b;this.toPoint=a;this.options=c;this.chart= b.series.chart;this.pathfinder=this.chart.pathfinder},renderPath:function(b,a,c){var d=this.chart,e=d.styledMode,h=d.pathfinder,f=!d.options.chart.forExport&&!1!==c,g=this.graphics&&this.graphics.path;h.group||(h.group=d.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(d.seriesGroup));h.group.translate(d.plotLeft,d.plotTop);g&&g.renderer||(g=d.renderer.path().add(h.group),e||g.attr({opacity:0}));g.attr(a);b={d:b};e||(b.opacity=1);g[f?"animate":"attr"](b,c);this.graphics= this.graphics||{};this.graphics.path=g},addMarker:function(b,a,c){var d=this.fromPoint.series.chart,e=d.pathfinder,d=d.renderer,h="start"===b?this.fromPoint:this.toPoint,f=h.getPathfinderAnchorPoint(a),g,k;a.enabled&&(c="start"===b?{x:c[4],y:c[5]}:{x:c[c.length-5],y:c[c.length-4]},c=h.getRadiansToVector(c,f),f=h.getMarkerVector(c,a.radius,f),c=-c/B,a.width&&a.height?(g=a.width,k=a.height):g=k=2*a.radius,this.graphics=this.graphics||{},f={x:f.x-g/2,y:f.y-k/2,width:g,height:k,rotation:c,rotationOriginX:f.x, rotationOriginY:f.y},this.graphics[b]?this.graphics[b].animate(f):(this.graphics[b]=d.symbol(a.symbol).addClass("highcharts-point-connecting-path-"+b+"-marker").attr(f).add(e.group),d.styledMode||this.graphics[b].attr({fill:a.color||this.fromPoint.color,stroke:a.lineColor,"stroke-width":a.lineWidth,opacity:0}).animate({opacity:1},h.series.options.animation)))},getPath:function(b){var a=this.pathfinder,e=this.chart,g=a.algorithms[b.type],k=a.chartObstacles;if("function"!==typeof g)c.error('"'+b.type+ '" is not a Pathfinder algorithm.');else return g.requiresObstacles&&!k&&(k=a.chartObstacles=a.getChartObstacles(b),e.options.connectors.algorithmMargin=b.algorithmMargin,a.chartObstacleMetrics=a.getObstacleMetrics(k)),g(this.fromPoint.getPathfinderAnchorPoint(b.startMarker),this.toPoint.getPathfinderAnchorPoint(b.endMarker),f({chartObstacles:k,lineObstacles:a.lineObstacles||[],obstacleMetrics:a.chartObstacleMetrics,hardBounds:{xMin:0,xMax:e.plotWidth,yMin:0,yMax:e.plotHeight},obstacleOptions:{margin:b.algorithmMargin}, startDirectionX:a.getAlgorithmStartDirection(b.startMarker)},b))},render:function(){var b=this.fromPoint,a=b.series,c=a.chart,g=c.pathfinder,k=f(c.options.connectors,a.options.connectors,b.options.connectors,this.options),z={};c.styledMode||(z.stroke=k.lineColor||b.color,z["stroke-width"]=k.lineWidth,k.dashStyle&&(z.dashstyle=k.dashStyle));z.class="highcharts-point-connecting-path highcharts-color-"+b.colorIndex;k=f(z,k);n(k.marker.radius)||(k.marker.radius=e(u(Math.ceil((k.algorithmMargin||8)/2)- 1,1),5));b=this.getPath(k);c=b.path;b.obstacles&&(g.lineObstacles=g.lineObstacles||[],g.lineObstacles=g.lineObstacles.concat(b.obstacles));this.renderPath(c,z,a.options.animation);this.addMarker("start",f(k.marker,k.startMarker),c);this.addMarker("end",f(k.marker,k.endMarker),c)},destroy:function(){this.graphics&&(c.objectEach(this.graphics,function(b){b.destroy()}),delete this.graphics)}};t.prototype={algorithms:v,init:function(b){this.chart=b;this.connections=[];g(b,"redraw",function(){this.pathfinder.update()})}, update:function(b){var a=this.chart,e=this,f=e.connections;e.connections=[];a.series.forEach(function(b){b.visible&&b.points.forEach(function(b){var d,h=b.options&&b.options.connect&&c.splat(b.options.connect);b.visible&&!1!==b.isInside&&h&&h.forEach(function(h){d=a.get("string"===typeof h?h:h.to);d instanceof c.Point&&d.series.visible&&d.visible&&!1!==d.isInside&&e.connections.push(new m(b,d,"string"===typeof h?{}:h))})})});for(var g=0,k,n,w=f.length,q=e.connections.length;gMath.PI;)b-=e;e=Math.tan(b);b>-h&&b<=h?(A=-1,k=!0):b>h&&b<=Math.PI-h?A=-1:b>Math.PI-h||b<=-(Math.PI-h)?(v=-1,k=!0):v=-1;k?(q+=v*f,u+=A*f*e):(q+=g/(2*e)*v,u+=A*n);c.x!==m&&(q=c.x);c.y!==d&&(u=c.y);t.x=q+a*Math.cos(b);t.y=u-a*Math.sin(b);return t}});c.Chart.prototype.callbacks.push(function(b){!1!==b.options.connectors.enabled&&(q(b),this.pathfinder=new t(this),this.pathfinder.update(!0))})})(C,K);(function(c){var v=c.addEvent,x=c.defined,k=c.Color,m=c.seriesTypes.column, t=c.correctFloat,q=c.isNumber,n=c.isObject,B=c.merge,a=c.pick,g=c.seriesType,f=c.Axis,A=c.Point,u=c.Series;g("xrange","column",{colorByPoint:!0,dataLabels:{verticalAlign:"middle",inside:!0,formatter:function(){var a=this.point.partialFill;n(a)&&(a=a.amount);x(a)||(a=0);return t(100*a)+"%"}},tooltip:{headerFormat:'\x3cspan style\x3d"font-size: 10px"\x3e{point.x} - {point.x2}\x3c/span\x3e\x3cbr/\x3e',pointFormat:'\x3cspan style\x3d"color:{point.color}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cb\x3e{point.yCategory}\x3c/b\x3e\x3cbr/\x3e'}, borderRadius:3,pointRange:0},{type:"xrange",parallelArrays:["x","x2","y"],requireSorting:!1,animate:c.seriesTypes.line.prototype.animate,cropShoulder:1,getExtremesFromAll:!0,autoIncrement:c.noop,getColumnMetrics:function(){function a(){c.series.forEach(function(b){var a=b.xAxis;b.xAxis=b.yAxis;b.yAxis=a})}var b,c=this.chart;a();b=m.prototype.getColumnMetrics.call(this);a();return b},cropData:function(a,b,c,f){b=u.prototype.cropData.call(this,this.x2Data,b,c,f);b.xData=a.slice(b.start,b.end);return b}, translatePoint:function(c){var b=this.xAxis,e=this.yAxis,f=this.columnMetrics,g=this.options,k=g.minPointLength||0,m=c.plotX,u=a(c.x2,c.x+(c.len||0)),w=b.translate(u,0,0,0,1),u=Math.abs(w-m),t=this.chart.inverted,p=a(g.borderWidth,1)%2/2,v=f.offset,A=Math.round(f.width);k&&(k-=u,0>k&&(k=0),m-=k/2,w+=k/2);m=Math.max(m,-10);w=Math.min(Math.max(w,-10),b.len+10);x(c.options.pointWidth)&&(v-=(Math.ceil(c.options.pointWidth)-A)/2,A=Math.ceil(c.options.pointWidth));g.pointPlacement&&q(c.plotY)&&e.categories&& (c.plotY=e.translate(c.y,0,1,0,1,g.pointPlacement));c.shapeArgs={x:Math.floor(Math.min(m,w))+p,y:Math.floor(c.plotY+v)+p,width:Math.round(Math.abs(w-m)),height:A,r:this.options.borderRadius};e=c.shapeArgs.x;g=e+c.shapeArgs.width;0>e||g>b.len?(e=Math.min(b.len,Math.max(0,e)),g=Math.max(0,Math.min(g,b.len)),b=g-e,c.dlBox=B(c.shapeArgs,{x:e,width:g-e,centerX:b?b/2:null})):c.dlBox=null;c.tooltipPos[0]+=t?0:u/2;c.tooltipPos[1]-=t?-u/2:f.width/2;if(b=c.partialFill)n(b)&&(b=b.amount),q(b)||(b=0),f=c.shapeArgs, c.partShapeArgs={x:f.x,y:f.y,width:f.width,height:f.height,r:this.options.borderRadius},c.clipRectArgs={x:f.x,y:f.y,width:Math.max(Math.round(u*b+(c.plotX-m)),0),height:f.height}},translate:function(){m.prototype.translate.apply(this,arguments);this.points.forEach(function(a){this.translatePoint(a)},this)},drawPoint:function(a,b){var c=this.options,e=this.chart.renderer,f=a.graphic,g=a.shapeType,m=a.shapeArgs,u=a.partShapeArgs,q=a.clipRectArgs,t=a.partialFill,p=a.selected&&"select",v=c.stacking&& !c.borderRadius;if(a.isNull)f&&(a.graphic=f.destroy());else{if(f)a.graphicOriginal[b](B(m));else a.graphic=f=e.g("point").addClass(a.getClassName()).add(a.group||this.group),a.graphicOriginal=e[g](m).addClass(a.getClassName()).addClass("highcharts-partfill-original").add(f);u&&(a.graphicOverlay?(a.graphicOverlay[b](B(u)),a.clipRect.animate(B(q))):(a.clipRect=e.clipRect(q.x,q.y,q.width,q.height),a.graphicOverlay=e[g](u).addClass("highcharts-partfill-overlay").add(f).clip(a.clipRect)));this.chart.styledMode|| (a.graphicOriginal.attr(this.pointAttribs(a,p)).shadow(c.shadow,null,v),u&&(n(t)||(t={}),n(c.partialFill)&&(t=B(t,c.partialFill)),b=t.fill||k(a.color||this.color).brighten(-.3).get(),a.graphicOverlay.attr(this.pointAttribs(a,p)).attr({fill:b}).shadow(c.shadow,null,v)))}},drawPoints:function(){var a=this,b=a.getAnimationVerb();a.points.forEach(function(c){a.drawPoint(c,b)})},getAnimationVerb:function(){return this.chart.pointCount<(this.options.animationLimit||250)?"animate":"attr"}},{applyOptions:function(){var a, b=A.prototype.applyOptions.apply(this,arguments),c=b.series;if(c.options.colorByPoint&&!b.options.color){a=c.options.colors||c.chart.options.colors;var f=b.y%(a?a.length:c.chart.options.chart.colorCount);a=a&&a[f];c.chart.styledMode||(b.color=a);b.options.colorIndex||(b.colorIndex=f)}return b},init:function(){A.prototype.init.apply(this,arguments);this.y||(this.y=0);return this},setState:function(){A.prototype.setState.apply(this,arguments);this.series.drawPoint(this,this.series.getAnimationVerb())}, getLabelConfig:function(){var a=A.prototype.getLabelConfig.call(this),b=this.series.yAxis.categories;a.x2=this.x2;a.yCategory=this.yCategory=b&&b[this.y];return a},tooltipDateKeys:["x","x2"],isValid:function(){return"number"===typeof this.x&&"number"===typeof this.x2}});v(f,"afterGetSeriesExtremes",function(){var c=this.series,b,d;this.isXAxis&&(b=a(this.dataMax,-Number.MAX_VALUE),c.forEach(function(a){a.x2Data&&a.x2Data.forEach(function(a){a>b&&(b=a,d=!0)})}),d&&(this.dataMax=b))})})(C);(function(c){var v= c.dateFormat,x=c.isObject,k=c.isNumber,m=c.merge,t=c.pick,q=c.seriesType,n=c.stop,B=c.seriesTypes.xrange;q("gantt","xrange",{grouping:!1,dataLabels:{enabled:!0,formatter:function(){var a=this.point.partialFill;x(a)&&(a=a.amount);if(k(a)&&0