import{o as Lt}from"./entry.223f6570.js";function Et(vt,yt){for(var I=0;I<yt.length;I++){const pt=yt[I];if(typeof pt!="string"&&!Array.isArray(pt)){for(const U in pt)if(U!=="default"&&!(U in vt)){const _=Object.getOwnPropertyDescriptor(pt,U);_&&Object.defineProperty(vt,U,_.get?_:{enumerable:!0,get:()=>pt[U]})}}}return Object.freeze(Object.defineProperty(vt,Symbol.toStringTag,{value:"Module"}))}var Mt={exports:{}};(function(vt){(function(yt){vt.exports?(yt.default=yt,vt.exports=yt):yt(typeof Highcharts<"u"?Highcharts:void 0)})(function(yt){var I=yt?yt._modules:{};function pt(U,_,rt,it){U.hasOwnProperty(_)||(U[_]=it.apply(null,rt),typeof CustomEvent=="function"&&yt.win.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:_,module:U[_]}})))}pt(I,"Series/ArcDiagram/ArcDiagramPoint.js",[I["Series/NodesComposition.js"],I["Core/Series/SeriesRegistry.js"],I["Core/Utilities.js"]],function(U,_,rt){let{seriesTypes:{sankey:{prototype:{pointClass:it}}}}=_,{extend:st}=rt;class ot extends it{isValid(){return!0}}return st(ot.prototype,{setState:U.setNodeState}),ot}),pt(I,"Series/ArcDiagram/ArcDiagramSeriesDefaults.js",[],function(){return{centeredLinks:!1,equalNodes:!1,dataLabels:{linkTextPath:{attributes:{startOffset:"25%"}}},marker:{fillOpacity:1,lineWidth:0,states:{},symbol:"circle"},offset:"100%",reversed:!1}}),pt(I,"Core/Foundation.js",[I["Core/Utilities.js"]],function(U){var _;let{addEvent:rt,isFunction:it,objectEach:st,removeEvent:ot}=U;return(_||(_={})).registerEventOptions=function(Z,b){Z.eventOptions=Z.eventOptions||{},st(b.events,function(x,E){Z.eventOptions[E]!==x&&(Z.eventOptions[E]&&(ot(Z,E,Z.eventOptions[E]),delete Z.eventOptions[E]),it(x)&&(Z.eventOptions[E]=x,rt(Z,E,x,{order:0})))})},_}),pt(I,"Core/Legend/LegendSymbol.js",[I["Core/Utilities.js"]],function(U){var _;let{extend:rt,merge:it,pick:st}=U;return function(ot){function Z(b,x,E){var J,W;let h=this.legendItem=this.legendItem||{},{chart:y,options:p}=this,{baseline:v=0,symbolWidth:k,symbolHeight:L}=b,G=this.symbol||"circle",V=L/2,B=y.renderer,d=h.group,N=v-Math.round((((J=b.fontMetrics)==null?void 0:J.b)||L)*(E?.4:.3)),w={},M,Q=p.marker,F=0;if(y.styledMode||(w["stroke-width"]=Math.min(p.lineWidth||0,24),p.dashStyle?w.dashstyle=p.dashStyle:p.linecap==="square"||(w["stroke-linecap"]="round")),h.line=B.path().addClass("highcharts-graph").attr(w).add(d),E&&(h.area=B.path().addClass("highcharts-area").add(d)),w["stroke-linecap"]&&(F=Math.min(h.line.strokeWidth(),k)/2),k){let z=[["M",F,N],["L",k-F,N]];h.line.attr({d:z}),(W=h.area)==null||W.attr({d:[...z,["L",k-F,v],["L",F,v]]})}if(Q&&Q.enabled!==!1&&k){let z=Math.min(st(Q.radius,V),V);G.indexOf("url")===0&&(Q=it(Q,{width:L,height:L}),z=0),h.symbol=M=B.symbol(G,k/2-z,N-z,2*z,2*z,rt({context:"legend"},Q)).addClass("highcharts-point").add(d),M.isMarker=!0}}ot.areaMarker=function(b,x){Z.call(this,b,x,!0)},ot.lineMarker=Z,ot.rectangle=function(b,x){let E=x.legendItem||{},h=b.options,y=b.symbolHeight,p=h.squareSymbol,v=p?y:b.symbolWidth;E.symbol=this.chart.renderer.rect(p?(b.symbolWidth-y)/2:0,b.baseline-y+1,v,y,st(b.options.symbolRadius,y/2)).addClass("highcharts-point").attr({zIndex:3}).add(E.group)}}(_||(_={})),_}),pt(I,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:U}=this.series.chart;return typeof this.y!="number"?"":U(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),pt(I,"Core/Series/Series.js",[I["Core/Animation/AnimationUtilities.js"],I["Core/Defaults.js"],I["Core/Foundation.js"],I["Core/Globals.js"],I["Core/Legend/LegendSymbol.js"],I["Core/Series/Point.js"],I["Core/Series/SeriesDefaults.js"],I["Core/Series/SeriesRegistry.js"],I["Core/Renderer/SVG/SVGElement.js"],I["Core/Utilities.js"]],function(U,_,rt,it,st,ot,Z,b,x,E){let{animObject:h,setAnimation:y}=U,{defaultOptions:p}=_,{registerEventOptions:v}=rt,{svg:k,win:L}=it,{seriesTypes:G}=b,{arrayMax:V,arrayMin:B,clamp:d,correctFloat:N,crisp:w,defined:M,destroyObjectProperties:Q,diffObjects:F,erase:J,error:W,extend:z,find:nt,fireEvent:R,getClosestDistance:Y,getNestedProperty:et,insertItem:ht,isArray:lt,isNumber:q,isString:bt,merge:ut,objectEach:xt,pick:$,removeEvent:Ct,splat:Dt,syncTimeout:g}=E;class A{constructor(){this.zoneAxis="y"}init(t,r){let e;R(this,"init",{options:r});let s=this,i=t.series;this.eventsToUnbind=[],s.chart=t,s.options=s.setOptions(r);let a=s.options,o=a.visible!==!1;s.linkedSeries=[],s.bindAxes(),z(s,{name:a.name,state:"",visible:o,selected:a.selected===!0}),v(this,a);let n=a.events;(n&&n.click||a.point&&a.point.events&&a.point.events.click||a.allowPointSelect)&&(t.runTrackerClick=!0),s.getColor(),s.getSymbol(),s.parallelArrays.forEach(function(l){s[l+"Data"]||(s[l+"Data"]=[])}),s.isCartesian&&(t.hasCartesianSeries=!0),i.length&&(e=i[i.length-1]),s._i=$(e&&e._i,-1)+1,s.opacity=s.options.opacity,t.orderItems("series",ht(this,i)),a.dataSorting&&a.dataSorting.enabled?s.setDataSortingOptions():s.points||s.data||s.setData(a.data,!1),R(this,"afterInit")}is(t){return G[t]&&this instanceof G[t]}bindAxes(){let t,r=this,e=r.options,s=r.chart;R(this,"bindAxes",null,function(){(r.axisTypes||[]).forEach(function(i){(s[i]||[]).forEach(function(a){t=a.options,($(e[i],0)===a.index||e[i]!==void 0&&e[i]===t.id)&&(ht(r,a.series),r[i]=a,a.isDirty=!0)}),r[i]||r.optionalAxis===i||W(18,!0,s)})}),R(this,"afterBindAxes")}updateParallelArrays(t,r,e){let s=t.series,i=q(r)?function(a){let o=a==="y"&&s.toYData?s.toYData(t):t[a];s[a+"Data"][r]=o}:function(a){Array.prototype[r].apply(s[a+"Data"],e)};s.parallelArrays.forEach(i)}hasData(){return this.visible&&this.dataMax!==void 0&&this.dataMin!==void 0||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(t,r){let e=t.marker,s=r.marker||{};return e&&(s.enabled&&!e.enabled||s.symbol!==e.symbol||s.height!==e.height||s.width!==e.width)}autoIncrement(t){let r=this.options,e=r.pointIntervalUnit,s=r.relativeXValue,i=this.chart.time,a=this.xIncrement,o,n;return a=$(a,r.pointStart,0),this.pointInterval=n=$(this.pointInterval,r.pointInterval,1),s&&q(t)&&(n*=t),e&&(o=new i.Date(a),e==="day"?i.set("Date",o,i.get("Date",o)+n):e==="month"?i.set("Month",o,i.get("Month",o)+n):e==="year"&&i.set("FullYear",o,i.get("FullYear",o)+n),n=o.getTime()-a),s&&q(t)?a+n:(this.xIncrement=a+n,a)}setDataSortingOptions(){let t=this.options;z(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),M(t.pointRange)||(t.pointRange=1)}setOptions(t){var C,X;let r,e=this.chart,s=e.options.plotOptions,i=e.userOptions||{},a=ut(t),o=e.styledMode,n={plotOptions:s,userOptions:a};R(this,"setOptions",n);let l=n.plotOptions[this.type],f=i.plotOptions||{},u=f.series||{},P=p.plotOptions[this.type]||{},m=f[this.type]||{};this.userOptions=n.userOptions;let c=ut(l,s.series,m,a);this.tooltipOptions=ut(p.tooltip,(C=p.plotOptions.series)==null?void 0:C.tooltip,P==null?void 0:P.tooltip,e.userOptions.tooltip,(X=f.series)==null?void 0:X.tooltip,m.tooltip,a.tooltip),this.stickyTracking=$(a.stickyTracking,m.stickyTracking,u.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||c.stickyTracking),l.marker===null&&delete c.marker,this.zoneAxis=c.zoneAxis||"y";let S=this.zones=(c.zones||[]).map(D=>({...D}));return(c.negativeColor||c.negativeFillColor)&&!c.zones&&(r={value:c[this.zoneAxis+"Threshold"]||c.threshold||0,className:"highcharts-negative"},o||(r.color=c.negativeColor,r.fillColor=c.negativeFillColor),S.push(r)),S.length&&M(S[S.length-1].value)&&S.push(o?{}:{color:this.color,fillColor:this.fillColor}),R(this,"afterSetOptions",{options:c}),c}getName(){return $(this.options.name,"Series "+(this.index+1))}getCyclic(t,r,e){let s,i,a=this.chart,o=`${t}Index`,n=`${t}Counter`,l=(e==null?void 0:e.length)||a.options.chart.colorCount;!r&&(M(i=$(t==="color"?this.options.colorIndex:void 0,this[o]))?s=i:(a.series.length||(a[n]=0),s=a[n]%l,a[n]+=1),e&&(r=e[s])),s!==void 0&&(this[o]=s),this[t]=r}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||p.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let t=this.options.marker;this.getCyclic("symbol",t.symbol,this.chart.options.symbols)}findPointIndex(t,r){let e,s,i,a=t.id,o=t.x,n=this.points,l=this.options.dataSorting;if(a){let f=this.chart.get(a);f instanceof ot&&(e=f)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let f=u=>!u.touched&&u.index===t.index;if(l&&l.matchByName?f=u=>!u.touched&&u.name===t.name:this.options.relativeXValue&&(f=u=>!u.touched&&u.options.x===t.x),!(e=nt(n,f)))return}return e&&(i=e&&e.index)!==void 0&&(s=!0),i===void 0&&q(o)&&(i=this.xData.indexOf(o,r)),i!==-1&&i!==void 0&&this.cropped&&(i=i>=this.cropStart?i-this.cropStart:i),!s&&q(i)&&n[i]&&n[i].touched&&(i=void 0),i}updateData(t,r){let e=this.options,s=e.dataSorting,i=this.points,a=[],o=this.requireSorting,n=t.length===i.length,l,f,u,P,m=!0;if(this.xIncrement=null,t.forEach(function(c,S){let C,X=M(c)&&this.pointClass.prototype.optionsToObject.call({series:this},c)||{},D=X.x;X.id||q(D)?((C=this.findPointIndex(X,P))===-1||C===void 0?a.push(c):i[C]&&c!==e.data[C]?(i[C].update(c,!1,null,!1),i[C].touched=!0,o&&(P=C+1)):i[C]&&(i[C].touched=!0),(!n||S!==C||s&&s.enabled||this.hasDerivedData)&&(l=!0)):a.push(c)},this),l)for(f=i.length;f--;)(u=i[f])&&!u.touched&&u.remove&&u.remove(!1,r);else!n||s&&s.enabled?m=!1:(t.forEach(function(c,S){c===i[S].y||i[S].destroyed||i[S].update(c,!1,null,!1)}),a.length=0);return i.forEach(function(c){c&&(c.touched=!1)}),!!m&&(a.forEach(function(c){this.addPoint(c,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=V(this.xData),this.autoIncrement()),!0)}setData(t,r=!0,e,s){var dt;let i=this,a=i.points,o=a&&a.length||0,n=i.options,l=i.chart,f=n.dataSorting,u=i.xAxis,P=n.turboThreshold,m=this.xData,c=this.yData,S=i.pointArrayMap,C=S&&S.length,X=n.keys,D,H,j,O=0,K=1,at;l.options.chart.allowMutatingData||(n.data&&delete i.options.data,i.userOptions.data&&delete i.userOptions.data,at=ut(!0,t));let tt=(t=at||t||[]).length;if(f&&f.enabled&&(t=this.sortData(t)),l.options.chart.allowMutatingData&&s!==!1&&tt&&o&&!i.cropped&&!i.hasGroupedData&&i.visible&&!i.boosted&&(j=this.updateData(t,e)),!j){i.xIncrement=null,i.colorCounter=0,this.parallelArrays.forEach(function(gt){i[gt+"Data"].length=0});let ct=P&&tt>P;if(ct){let gt=i.getFirstValidPoint(t),ft=i.getFirstValidPoint(t,tt-1,-1),mt=St=>!!(lt(St)&&(X||q(St[0])));if(q(gt)&&q(ft))for(D=0;D<tt;D++)m[D]=this.autoIncrement(),c[D]=t[D];else if(mt(gt)&&mt(ft))if(C)if(gt.length===C)for(D=0;D<tt;D++)m[D]=this.autoIncrement(),c[D]=t[D];else for(D=0;D<tt;D++)H=t[D],m[D]=H[0],c[D]=H.slice(1,C+1);else if(X&&(O=X.indexOf("x"),K=X.indexOf("y"),O=O>=0?O:0,K=K>=0?K:1),gt.length===1&&(K=0),O===K)for(D=0;D<tt;D++)m[D]=this.autoIncrement(),c[D]=t[D][K];else for(D=0;D<tt;D++)H=t[D],m[D]=H[O],c[D]=H[K];else ct=!1}if(!ct)for(D=0;D<tt;D++)H={series:i},i.pointClass.prototype.applyOptions.apply(H,[t[D]]),i.updateParallelArrays(H,D);for(c&&bt(c[0])&&W(14,!0,l),i.data=[],i.options.data=i.userOptions.data=t,D=o;D--;)(dt=a[D])==null||dt.destroy();u&&(u.minRange=u.userMinRange),i.isDirty=l.isDirtyBox=!0,i.isDirtyData=!!a,e=!1}n.legendType==="point"&&(this.processData(),this.generatePoints()),r&&l.redraw(e)}sortData(t){let r=this,e=r.options.dataSorting.sortKey||"y",s=function(i,a){return M(a)&&i.pointClass.prototype.optionsToObject.call({series:i},a)||{}};return t.forEach(function(i,a){t[a]=s(r,i),t[a].index=a},this),t.concat().sort((i,a)=>{let o=et(e,i),n=et(e,a);return n<o?-1:n>o?1:0}).forEach(function(i,a){i.x=a},this),r.linkedSeries&&r.linkedSeries.forEach(function(i){let a=i.options,o=a.data;a.dataSorting&&a.dataSorting.enabled||!o||(o.forEach(function(n,l){o[l]=s(i,n),t[l]&&(o[l].x=t[l].x,o[l].index=l)}),i.setData(o,!1))}),t}getProcessedData(t){let r=this,e=r.xAxis,s=r.options.cropThreshold,i=e==null?void 0:e.logarithmic,a=r.isCartesian,o,n,l=0,f,u,P,m=r.xData,c=r.yData,S=!1,C=m.length;e&&(u=(f=e.getExtremes()).min,P=f.max,S=!!(e.categories&&!e.names.length)),a&&r.sorted&&!t&&(!s||C>s||r.forceCrop)&&(m[C-1]<u||m[0]>P?(m=[],c=[]):r.yData&&(m[0]<u||m[C-1]>P)&&(m=(o=this.cropData(r.xData,r.yData,u,P)).xData,c=o.yData,l=o.start,n=!0));let X=Y([i?m.map(i.log2lin):m],()=>r.requireSorting&&!S&&W(15,!1,r.chart));return{xData:m,yData:c,cropped:n,cropStart:l,closestPointRange:X}}processData(t){let r=this.xAxis;if(this.isCartesian&&!this.isDirty&&!r.isDirty&&!this.yAxis.isDirty&&!t)return!1;let e=this.getProcessedData();this.cropped=e.cropped,this.cropStart=e.cropStart,this.processedXData=e.xData,this.processedYData=e.yData,this.closestPointRange=this.basePointRange=e.closestPointRange,R(this,"afterProcessData")}cropData(t,r,e,s){let i=t.length,a,o,n=0,l=i;for(a=0;a<i;a++)if(t[a]>=e){n=Math.max(0,a-1);break}for(o=a;o<i;o++)if(t[o]>s){l=o+1;break}return{xData:t.slice(n,l),yData:r.slice(n,l),start:n,end:l}}generatePoints(){let t=this.options,r=this.processedData||t.data,e=this.processedXData,s=this.processedYData,i=this.pointClass,a=e.length,o=this.cropStart||0,n=this.hasGroupedData,l=t.keys,f=[],u=t.dataGrouping&&t.dataGrouping.groupAll?o:0,P,m,c,S,C=this.data;if(!C&&!n){let X=[];X.length=r.length,C=this.data=X}for(l&&n&&(this.options.keys=!1),S=0;S<a;S++)m=o+S,n?((c=new i(this,[e[S]].concat(Dt(s[S])))).dataGroup=this.groupMap[u+S],c.dataGroup.options&&(c.options=c.dataGroup.options,z(c,c.dataGroup.options),delete c.dataLabels)):(c=C[m])||r[m]===void 0||(C[m]=c=new i(this,r[m],e[S])),c&&(c.index=n?u+S:m,f[S]=c);if(this.options.keys=l,C&&(a!==(P=C.length)||n))for(S=0;S<P;S++)S!==o||n||(S+=a),C[S]&&(C[S].destroyElements(),C[S].plotX=void 0);this.data=C,this.points=f,R(this,"afterGeneratePoints")}getXExtremes(t){return{min:B(t),max:V(t)}}getExtremes(t,r){let e=this.xAxis,s=this.yAxis,i=[],a=this.requireSorting&&!this.is("column")?1:0,o=!!s&&s.positiveValuesOnly,n=r||this.getExtremesFromAll||this.options.getExtremesFromAll,{processedXData:l,processedYData:f}=this,u,P,m,c,S,C,X,D=0,H=0,j=0;if(this.cropped&&n){let tt=this.getProcessedData(!0);l=tt.xData,f=tt.yData}let O=(t=t||this.stackedYData||f||[]).length,K=l||this.xData;for(e&&(D=(u=e.getExtremes()).min,H=u.max),C=0;C<O;C++)if(c=K[C],P=(q(S=t[C])||lt(S))&&((q(S)?S>0:S.length)||!o),m=r||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!e||(K[C+a]||c)>=D&&(K[C-a]||c)<=H,P&&m)if(X=S.length)for(;X--;)q(S[X])&&(i[j++]=S[X]);else i[j++]=S;let at={activeYData:i,dataMin:B(i),dataMax:V(i)};return R(this,"afterGetExtremes",{dataExtremes:at}),at}applyExtremes(){let t=this.getExtremes();return this.dataMin=t.dataMin,this.dataMax=t.dataMax,t}getFirstValidPoint(t,r=0,e=1){let s=t.length,i=r;for(;i>=0&&i<s;){if(M(t[i]))return t[i];i+=e}}translate(){var H;this.processedXData||this.processData(),this.generatePoints();let t=this.options,r=t.stacking,e=this.xAxis,s=e.categories,i=this.enabledDataSorting,a=this.yAxis,o=this.points,n=o.length,l=this.pointPlacementToXValue(),f=!!l,u=t.threshold,P=t.startFromThreshold?u:0,m,c,S,C,X=Number.MAX_VALUE;function D(j){return d(j,-1e9,1e9)}for(m=0;m<n;m++){let j,O=o[m],K=O.x,at,tt,dt=O.y,ct=O.low,gt=r&&((H=a.stacking)==null?void 0:H.stacks[(this.negStacks&&dt<(P?0:u)?"-":"")+this.stackKey]);c=e.translate(K,!1,!1,!1,!0,l),O.plotX=q(c)?N(D(c)):void 0,r&&this.visible&&gt&&gt[K]&&(C=this.getStackIndicator(C,K,this.index),!O.isNull&&C.key&&(tt=(at=gt[K]).points[C.key]),at&&lt(tt)&&(ct=tt[0],dt=tt[1],ct===P&&C.key===gt[K].base&&(ct=$(q(u)?u:a.min)),a.positiveValuesOnly&&M(ct)&&ct<=0&&(ct=void 0),O.total=O.stackTotal=$(at.total),O.percentage=M(O.y)&&at.total?O.y/at.total*100:void 0,O.stackY=dt,this.irregularWidths||at.setOffset(this.pointXOffset||0,this.barW||0,void 0,void 0,void 0,this.xAxis))),O.yBottom=M(ct)?D(a.translate(ct,!1,!0,!1,!0)):void 0,this.dataModify&&(dt=this.dataModify.modifyValue(dt,m)),q(dt)&&O.plotX!==void 0&&(j=q(j=a.translate(dt,!1,!0,!1,!0))?D(j):void 0),O.plotY=j,O.isInside=this.isPointInside(O),O.clientX=f?N(e.translate(K,!1,!1,!1,!0,l)):c,O.negative=(O.y||0)<(u||0),O.category=$(s&&s[O.x],O.x),O.isNull||O.visible===!1||(S!==void 0&&(X=Math.min(X,Math.abs(c-S))),S=c),O.zone=this.zones.length?O.getZone():void 0,!O.graphic&&this.group&&i&&(O.isNew=!0)}this.closestPointRangePx=X,R(this,"afterTranslate")}getValidPoints(t,r,e){let s=this.chart;return(t||this.points||[]).filter(function(i){let{plotX:a,plotY:o}=i;return!!((e||!i.isNull&&q(o))&&(!r||s.isInsidePlot(a,o,{inverted:s.inverted})))&&i.visible!==!1})}getClipBox(){let{chart:t,xAxis:r,yAxis:e}=this,{x:s,y:i,width:a,height:o}=ut(t.clipBox);return r&&r.len!==t.plotSizeX&&(a=r.len),e&&e.len!==t.plotSizeY&&(o=e.len),t.inverted&&!this.invertible&&([a,o]=[o,a]),{x:s,y:i,width:a,height:o}}getSharedClipKey(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0),this.sharedClipKey}setClip(){let{chart:t,group:r,markerGroup:e}=this,s=t.sharedClips,i=t.renderer,a=this.getClipBox(),o=this.getSharedClipKey(),n=s[o];n?n.animate(a):s[o]=n=i.clipRect(a),r&&r.clip(this.options.clip===!1?void 0:n),e&&e.clip()}animate(t){let{chart:r,group:e,markerGroup:s}=this,i=r.inverted,a=h(this.options.animation),o=[this.getSharedClipKey(),a.duration,a.easing,a.defer].join(","),n=r.sharedClips[o],l=r.sharedClips[o+"m"];if(t&&e){let f=this.getClipBox();if(n)n.attr("height",f.height);else{f.width=0,i&&(f.x=r.plotHeight),n=r.renderer.clipRect(f),r.sharedClips[o]=n;let u={x:-99,y:-99,width:i?r.plotWidth+199:99,height:i?99:r.plotHeight+199};l=r.renderer.clipRect(u),r.sharedClips[o+"m"]=l}e.clip(n),s==null||s.clip(l)}else if(n&&!n.hasClass("highcharts-animating")){let f=this.getClipBox(),u=a.step;(s!=null&&s.element.childNodes.length||r.series.length>1)&&(a.step=function(P,m){u&&u.apply(m,arguments),m.prop==="width"&&(l!=null&&l.element)&&l.attr(i?"height":"width",P+99)}),n.addClass("highcharts-animating").animate(f,a)}}afterAnimate(){this.setClip(),xt(this.chart.sharedClips,(t,r,e)=>{t&&!this.chart.container.querySelector(`[clip-path="url(#${t.id})"]`)&&(t.destroy(),delete e[r])}),this.finishedAnimating=!0,R(this,"afterAnimate")}drawPoints(t=this.points){let r,e,s,i,a,o,n,l=this.chart,f=l.styledMode,{colorAxis:u,options:P}=this,m=P.marker,c=this[this.specialGroup||"markerGroup"],S=this.xAxis,C=$(m.enabled,!S||!!S.isRadial||null,this.closestPointRangePx>=m.enabledThreshold*m.radius);if(m.enabled!==!1||this._hasPointMarkers)for(r=0;r<t.length;r++)if(i=(s=(e=t[r]).graphic)?"animate":"attr",a=e.marker||{},o=!!e.marker,(C&&a.enabled===void 0||a.enabled)&&!e.isNull&&e.visible!==!1){let X=$(a.symbol,this.symbol,"rect");n=this.markerAttribs(e,e.selected&&"select"),this.enabledDataSorting&&(e.startXPos=S.reversed?-(n.width||0):S.width);let D=e.isInside!==!1;if(!s&&D&&((n.width||0)>0||e.hasImage)&&(e.graphic=s=l.renderer.symbol(X,n.x,n.y,n.width,n.height,o?a:m).add(c),this.enabledDataSorting&&l.hasRendered&&(s.attr({x:e.startXPos}),i="animate")),s&&i==="animate"&&s[D?"show":"hide"](D).animate(n),s){let H=this.pointAttribs(e,f||!e.selected?void 0:"select");f?u&&s.css({fill:H.fill}):s[i](H)}s&&s.addClass(e.getClassName(),!0)}else s&&(e.graphic=s.destroy())}markerAttribs(t,r){let e=this.options,s=e.marker,i=t.marker||{},a=i.symbol||s.symbol,o={},n,l,f=$(i.radius,s&&s.radius);r&&(n=s.states[r],f=$((l=i.states&&i.states[r])&&l.radius,n&&n.radius,f&&f+(n&&n.radiusPlus||0))),t.hasImage=a&&a.indexOf("url")===0,t.hasImage&&(f=0);let u=t.pos();return q(f)&&u&&(e.crisp&&(u[0]=w(u[0],t.hasImage?0:a==="rect"?(s==null?void 0:s.lineWidth)||0:1)),o.x=u[0]-f,o.y=u[1]-f),f&&(o.width=o.height=2*f),o}pointAttribs(t,r){let e=this.options.marker,s=t&&t.options,i=s&&s.marker||{},a=s&&s.color,o=t&&t.color,n=t&&t.zone&&t.zone.color,l,f,u=this.color,P,m,c=$(i.lineWidth,e.lineWidth),S=1;return u=a||n||o||u,P=i.fillColor||e.fillColor||u,m=i.lineColor||e.lineColor||u,r=r||"normal",l=e.states[r]||{},c=$((f=i.states&&i.states[r]||{}).lineWidth,l.lineWidth,c+$(f.lineWidthPlus,l.lineWidthPlus,0)),P=f.fillColor||l.fillColor||P,{stroke:m=f.lineColor||l.lineColor||m,"stroke-width":c,fill:P,opacity:S=$(f.opacity,l.opacity,S)}}destroy(t){let r,e,s,i=this,a=i.chart,o=/AppleWebKit\/533/.test(L.navigator.userAgent),n=i.data||[];for(R(i,"destroy",{keepEventsForUpdate:t}),this.removeEvents(t),(i.axisTypes||[]).forEach(function(l){(s=i[l])&&s.series&&(J(s.series,i),s.isDirty=s.forceRedraw=!0)}),i.legendItem&&i.chart.legend.destroyItem(i),r=n.length;r--;)(e=n[r])&&e.destroy&&e.destroy();for(let l of i.zones)Q(l,void 0,!0);E.clearTimeout(i.animationTimeout),xt(i,function(l,f){l instanceof x&&!l.survive&&l[o&&f==="group"?"hide":"destroy"]()}),a.hoverSeries===i&&(a.hoverSeries=void 0),J(a.series,i),a.orderItems("series"),xt(i,function(l,f){t&&f==="hcEvents"||delete i[f]})}applyZones(){let{area:t,chart:r,graph:e,zones:s,points:i,xAxis:a,yAxis:o,zoneAxis:n}=this,{inverted:l,renderer:f}=r,u=this[`${n}Axis`],{isXAxis:P,len:m=0}=u||{},c=((e==null?void 0:e.strokeWidth())||0)/2+1,S=(C,X=0,D=0)=>{l&&(D=m-D);let{translated:H=0,lineClip:j}=C,O=D-H;j==null||j.push(["L",X,Math.abs(O)<c?D-c*(O<=0?-1:1):H])};if(s.length&&(e||t)&&u&&q(u.min)){let C=u.getExtremes().max,X=j=>{j.forEach((O,K)=>{(O[0]==="M"||O[0]==="L")&&(j[K]=[O[0],P?m-O[1]:O[1],P?O[2]:m-O[2]])})};if(s.forEach(j=>{j.lineClip=[],j.translated=d(u.toPixels($(j.value,C),!0)||0,0,m)}),e&&!this.showLine&&e.hide(),t&&t.hide(),n==="y"&&i.length<a.len)for(let j of i){let{plotX:O,plotY:K,zone:at}=j,tt=at&&s[s.indexOf(at)-1];at&&S(at,O,K),tt&&S(tt,O,K)}let D=[],H=u.toPixels(u.getExtremes().min,!0);s.forEach(j=>{var kt,At;let O=j.lineClip||[],K=Math.round(j.translated||0);a.reversed&&O.reverse();let{clip:at,simpleClip:tt}=j,dt=0,ct=0,gt=a.len,ft=o.len;P?(dt=K,gt=H):(ct=K,ft=H);let mt=[["M",dt,ct],["L",gt,ct],["L",gt,ft],["L",dt,ft],["Z"]],St=[mt[0],...O,mt[1],mt[2],...D,mt[3],mt[4]];D=O.reverse(),H=K,l&&(X(St),t&&X(mt)),at?(at.animate({d:St}),tt==null||tt.animate({d:mt})):(at=j.clip=f.path(St),t&&(tt=j.simpleClip=f.path(mt))),e&&((kt=j.graph)==null||kt.clip(at)),t&&((At=j.area)==null||At.clip(tt))})}else this.visible&&(e&&e.show(),t&&t.show())}plotGroup(t,r,e,s,i){let a=this[t],o=!a,n={visibility:e,zIndex:s||.1};return M(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(n.opacity=this.opacity),a||(this[t]=a=this.chart.renderer.g().add(i)),a.addClass("highcharts-"+r+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(M(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(a.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),a.attr(n)[o?"attr":"animate"](this.getPlotBox(r)),a}getPlotBox(t){let r=this.xAxis,e=this.yAxis,s=this.chart,i=s.inverted&&!s.polar&&r&&this.invertible&&t==="series";return s.inverted&&(r=e,e=this.xAxis),{translateX:r?r.left:s.plotLeft,translateY:e?e.top:s.plotTop,rotation:i?90:0,rotationOriginX:i?(r.len-e.len)/2:0,rotationOriginY:i?(r.len+e.len)/2:0,scaleX:i?-1:1,scaleY:1}}removeEvents(t){let{eventsToUnbind:r}=this;t||Ct(this),r.length&&(r.forEach(e=>{e()}),r.length=0)}render(){var f,u,P,m,c;let t=this,{chart:r,options:e,hasRendered:s}=t,i=h(e.animation),a=t.visible?"inherit":"hidden",o=e.zIndex,n=r.seriesGroup,l=t.finishedAnimating?0:i.duration;R(this,"render"),t.plotGroup("group","series",a,o,n),t.markerGroup=t.plotGroup("markerGroup","markers",a,o,n),e.clip!==!1&&t.setClip(),l&&((f=t.animate)==null||f.call(t,!0)),t.drawGraph&&(t.drawGraph(),t.applyZones()),t.visible&&t.drawPoints(),(u=t.drawDataLabels)==null||u.call(t),(P=t.redrawPoints)==null||P.call(t),e.enableMouseTracking&&((m=t.drawTracker)==null||m.call(t)),l&&((c=t.animate)==null||c.call(t)),s||(l&&i.defer&&(l+=i.defer),t.animationTimeout=g(()=>{t.afterAnimate()},l||0)),t.isDirty=!1,t.hasRendered=!0,R(t,"afterRender")}redraw(){let t=this.isDirty||this.isDirtyData;this.translate(),this.render(),t&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(t,r){let{xAxis:e,yAxis:s}=this,i=this.chart.inverted;return this.searchKDTree({clientX:i?e.len-t.chartY+e.pos:t.chartX-e.pos,plotY:i?s.len-t.chartX+s.pos:t.chartY-s.pos},r,t)}buildKDTree(t){this.buildingKdTree=!0;let r=this,e=r.options.findNearestPointBy.indexOf("y")>-1?2:1;delete r.kdTree,g(function(){r.kdTree=function s(i,a,o){let n,l,f=i==null?void 0:i.length;if(f)return n=r.kdAxisArray[a%o],i.sort((u,P)=>(u[n]||0)-(P[n]||0)),{point:i[l=Math.floor(f/2)],left:s(i.slice(0,l),a+1,o),right:s(i.slice(l+1),a+1,o)}}(r.getValidPoints(void 0,!r.directTouch),e,e),r.buildingKdTree=!1},r.options.kdNow||(t==null?void 0:t.type)==="touchstart"?0:1)}searchKDTree(t,r,e){let s=this,[i,a]=this.kdAxisArray,o=r?"distX":"dist",n=(s.options.findNearestPointBy||"").indexOf("y")>-1?2:1,l=!!s.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(e),this.kdTree)return function f(u,P,m,c){var at;let S=P.point,C=s.kdAxisArray[m%c],X,D,H=S;(function(tt,dt){var wt;let ct=tt[i],gt=dt[i],ft=M(ct)&&M(gt)?ct-gt:null,mt=tt[a],St=dt[a],kt=M(mt)&&M(St)?mt-St:0,At=l&&((wt=dt.marker)==null?void 0:wt.radius)||0;dt.dist=Math.sqrt((ft&&ft*ft||0)+kt*kt)-At,dt.distX=M(ft)?Math.abs(ft)-At:Number.MAX_VALUE})(u,S);let j=(u[C]||0)-(S[C]||0)+(l&&((at=S.marker)==null?void 0:at.radius)||0),O=j<0?"left":"right",K=j<0?"right":"left";return P[O]&&(H=(X=f(u,P[O],m+1,c))[o]<H[o]?X:S),P[K]&&Math.sqrt(j*j)<H[o]&&(H=(D=f(u,P[K],m+1,c))[o]<H[o]?D:H),H}(t,this.kdTree,n,n)}pointPlacementToXValue(){let{options:t,xAxis:r}=this,e=t.pointPlacement;return e==="between"&&(e=r.reversed?-.5:.5),q(e)?e*(t.pointRange||r.pointRange):0}isPointInside(t){let{chart:r,xAxis:e,yAxis:s}=this,{plotX:i=-1,plotY:a=-1}=t;return a>=0&&a<=(s?s.len:r.plotHeight)&&i>=0&&i<=(e?e.len:r.plotWidth)}drawTracker(){var P;let t=this,r=t.options,e=r.trackByArea,s=[].concat((e?t.areaPath:t.graphPath)||[]),i=t.chart,a=i.pointer,o=i.renderer,n=((P=i.options.tooltip)==null?void 0:P.snap)||0,l=()=>{r.enableMouseTracking&&i.hoverSeries!==t&&t.onMouseOver()},f="rgba(192,192,192,"+(k?1e-4:.002)+")",u=t.tracker;u?u.attr({d:s}):t.graph&&(t.tracker=u=o.path(s).attr({visibility:t.visible?"inherit":"hidden",zIndex:2}).addClass(e?"highcharts-tracker-area":"highcharts-tracker-line").add(t.group),i.styledMode||u.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:f,fill:e?f:"none","stroke-width":t.graph.strokeWidth()+(e?0:2*n)}),[t.tracker,t.markerGroup,t.dataLabelsGroup].forEach(m=>{m&&(m.addClass("highcharts-tracker").on("mouseover",l).on("mouseout",c=>{a==null||a.onTrackerMouseOut(c)}),r.cursor&&!i.styledMode&&m.css({cursor:r.cursor}),m.on("touchstart",l))})),R(this,"afterDrawTracker")}addPoint(t,r,e,s,i){let a,o,n=this.options,l=this.data,f=this.chart,u=this.xAxis,P=u&&u.hasNames&&u.names,m=n.data,c=this.xData;r=$(r,!0);let S={series:this};this.pointClass.prototype.applyOptions.apply(S,[t]);let C=S.x;if(o=c.length,this.requireSorting&&C<c[o-1])for(a=!0;o&&c[o-1]>C;)o--;this.updateParallelArrays(S,"splice",[o,0,0]),this.updateParallelArrays(S,o),P&&S.name&&(P[C]=S.name),m.splice(o,0,t),(a||this.processedData)&&(this.data.splice(o,0,null),this.processData()),n.legendType==="point"&&this.generatePoints(),e&&(l[0]&&l[0].remove?l[0].remove(!1):(l.shift(),this.updateParallelArrays(S,"shift"),m.shift())),i!==!1&&R(this,"addPoint",{point:S}),this.isDirty=!0,this.isDirtyData=!0,r&&f.redraw(s)}removePoint(t,r,e){let s=this,i=s.data,a=i[t],o=s.points,n=s.chart,l=function(){o&&o.length===i.length&&o.splice(t,1),i.splice(t,1),s.options.data.splice(t,1),s.updateParallelArrays(a||{series:s},"splice",[t,1]),a&&a.destroy(),s.isDirty=!0,s.isDirtyData=!0,r&&n.redraw()};y(e,n),r=$(r,!0),a?a.firePointEvent("remove",null,l):l()}remove(t,r,e,s){let i=this,a=i.chart;function o(){i.destroy(s),a.isDirtyLegend=a.isDirtyBox=!0,a.linkSeries(s),$(t,!0)&&a.redraw(r)}e!==!1?R(i,"remove",null,o):o()}update(t,r){var X,D,H;R(this,"update",{options:t=F(t,this.userOptions)});let e=this,s=e.chart,i=e.userOptions,a=e.initialType||e.type,o=s.options.plotOptions,n=G[a].prototype,l=e.finishedAnimating&&{animation:!1},f={},u,P,m=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],c=t.type||i.type||s.options.chart.type,S=!(this.hasDerivedData||c&&c!==this.type||t.pointStart!==void 0||t.pointInterval!==void 0||t.relativeXValue!==void 0||t.joinBy||t.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(j=>e.hasOptionChanged(j)));c=c||a,S&&(m.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),t.visible!==!1&&m.push("area","graph"),e.parallelArrays.forEach(function(j){m.push(j+"Data")}),t.data&&(t.dataSorting&&z(e.options.dataSorting,t.dataSorting),this.setData(t.data,!1))),t=ut(i,{index:i.index===void 0?e.index:i.index,pointStart:((X=o==null?void 0:o.series)==null?void 0:X.pointStart)??i.pointStart??((D=e.xData)==null?void 0:D[0])},!S&&{data:e.options.data},t,l),S&&t.data&&(t.data=e.options.data),(m=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(m)).forEach(function(j){m[j]=e[j],delete e[j]});let C=!1;if(G[c]){if(C=c!==e.type,e.remove(!1,!1,!1,!0),C)if(s.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(e,G[c].prototype);else{let j=Object.hasOwnProperty.call(e,"hcEvents")&&e.hcEvents;for(P in n)e[P]=void 0;z(e,G[c].prototype),j?e.hcEvents=j:delete e.hcEvents}}else W(17,!0,s,{missingModuleFor:c});if(m.forEach(function(j){e[j]=m[j]}),e.init(s,t),S&&this.points)for(let j of((u=e.options).visible===!1?(f.graphic=1,f.dataLabel=1):(this.hasMarkerChanged(u,i)&&(f.graphic=1),(H=e.hasDataLabels)!=null&&H.call(e)||(f.dataLabel=1)),this.points))j&&j.series&&(j.resolveColor(),Object.keys(f).length&&j.destroyElements(f),u.showInLegend===!1&&j.legendItem&&s.legend.destroyItem(j));e.initialType=a,s.linkSeries(),s.setSortedData(),C&&e.linkedSeries.length&&(e.isDirtyData=!0),R(this,"afterUpdate"),$(r,!0)&&s.redraw(!!S&&void 0)}setName(t){this.name=this.options.name=this.userOptions.name=t,this.chart.isDirtyLegend=!0}hasOptionChanged(t){var o,n;let r=this.chart,e=this.options[t],s=r.options.plotOptions,i=this.userOptions[t],a=$((o=s==null?void 0:s[this.type])==null?void 0:o[t],(n=s==null?void 0:s.series)==null?void 0:n[t]);return i&&!M(a)?e!==i:e!==$(a,e)}onMouseOver(){let t=this.chart,r=t.hoverSeries,e=t.pointer;e==null||e.setHoverChartIndex(),r&&r!==this&&r.onMouseOut(),this.options.events.mouseOver&&R(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this}onMouseOut(){let t=this.options,r=this.chart,e=r.tooltip,s=r.hoverPoint;r.hoverSeries=null,s&&s.onMouseOut(),this&&t.events.mouseOut&&R(this,"mouseOut"),e&&!this.stickyTracking&&(!e.shared||this.noSharedTooltip)&&e.hide(),r.series.forEach(function(i){i.setState("",!0)})}setState(t,r){let e=this,s=e.options,i=e.graph,a=s.inactiveOtherPoints,o=s.states,n=$(o[t||"normal"]&&o[t||"normal"].animation,e.chart.options.chart.animation),l=s.lineWidth,f=s.opacity;if(t=t||"",e.state!==t&&([e.group,e.markerGroup,e.dataLabelsGroup].forEach(function(u){u&&(e.state&&u.removeClass("highcharts-series-"+e.state),t&&u.addClass("highcharts-series-"+t))}),e.state=t,!e.chart.styledMode)){if(o[t]&&o[t].enabled===!1)return;if(t&&(l=o[t].lineWidth||l+(o[t].lineWidthPlus||0),f=$(o[t].opacity,f)),i&&!i.dashstyle&&q(l))for(let u of[i,...this.zones.map(P=>P.graph)])u==null||u.animate({"stroke-width":l},n);a||[e.group,e.markerGroup,e.dataLabelsGroup,e.labelBySeries].forEach(function(u){u&&u.animate({opacity:f},n)})}r&&a&&e.points&&e.setAllPointsToState(t||void 0)}setAllPointsToState(t){this.points.forEach(function(r){r.setState&&r.setState(t)})}setVisible(t,r){var n;let e=this,s=e.chart,i=s.options.chart.ignoreHiddenSeries,a=e.visible;e.visible=t=e.options.visible=e.userOptions.visible=t===void 0?!a:t;let o=t?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(l=>{var f;(f=e[l])==null||f[o]()}),(s.hoverSeries===e||((n=s.hoverPoint)==null?void 0:n.series)===e)&&e.onMouseOut(),e.legendItem&&s.legend.colorizeItem(e,t),e.isDirty=!0,e.options.stacking&&s.series.forEach(l=>{l.options.stacking&&l.visible&&(l.isDirty=!0)}),e.linkedSeries.forEach(l=>{l.setVisible(t,!1)}),i&&(s.isDirtyBox=!0),R(e,o),r!==!1&&s.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(t){this.selected=t=this.options.selected=t===void 0?!this.selected:t,this.checkbox&&(this.checkbox.checked=t),R(this,t?"select":"unselect")}shouldShowTooltip(t,r,e={}){return e.series=this,e.visiblePlotOnly=!0,this.chart.isInsidePlot(t,r,e)}drawLegendSymbol(t,r){var e;(e=st[this.options.legendSymbol||"rectangle"])==null||e.call(this,t,r)}}return A.defaultOptions=Z,A.types=b.seriesTypes,A.registerType=b.registerSeriesType,z(A.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:ot,requireSorting:!0,sorted:!0}),b.series=A,A}),pt(I,"Core/Renderer/RendererRegistry.js",[I["Core/Globals.js"]],function(U){var _,rt;let it;return(rt=_||(_={})).rendererTypes={},rt.getRendererType=function(st=it){return rt.rendererTypes[st]||rt.rendererTypes[it]},rt.registerRendererType=function(st,ot,Z){rt.rendererTypes[st]=ot,(!it||Z)&&(it=st,U.Renderer=ot)},_}),pt(I,"Core/Renderer/SVG/SVGLabel.js",[I["Core/Renderer/SVG/SVGElement.js"],I["Core/Utilities.js"]],function(U,_){let{defined:rt,extend:it,isNumber:st,merge:ot,pick:Z,removeEvent:b}=_;class x extends U{constructor(h,y,p,v,k,L,G,V,B,d){let N;super(h,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=y,this.x=p,this.y=v,this.anchorX=L,this.anchorY=G,this.baseline=B,this.className=d,this.addClass(d==="button"?"highcharts-no-tooltip":"highcharts-label"),d&&this.addClass("highcharts-"+d),this.text=h.text(void 0,0,0,V).attr({zIndex:1}),typeof k=="string"&&((N=/^url\((.*?)\)$/.test(k))||this.renderer.symbols[k])&&(this.symbolKey=k),this.bBox=x.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=h.styledMode||N,this.deferredAttr={},this.alignFactor=0}alignSetter(h){let y={left:0,center:.5,right:1}[h];y!==this.alignFactor&&(this.alignFactor=y,this.bBox&&st(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(h,y){this.anchorX=h,this.boxAttr(y,Math.round(h)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(h,y){this.anchorY=h,this.boxAttr(y,h-this.ySetting)}boxAttr(h,y){this.box?this.box.attr(h,y):this.deferredAttr[h]=y}css(h){if(h){let y={};h=ot(h),x.textProps.forEach(p=>{h[p]!==void 0&&(y[p]=h[p],delete h[p])}),this.text.css(y),"fontSize"in y||"fontWeight"in y?this.updateTextPadding():("width"in y||"textOverflow"in y)&&this.updateBoxSize()}return U.prototype.css.call(this,h)}destroy(){b(this.element,"mouseenter"),b(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),U.prototype.destroy.call(this)}fillSetter(h,y){h&&(this.needsBox=!0),this.fill=h,this.boxAttr(y,h)}getBBox(h,y){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:p,height:v=0,translateX:k=0,translateY:L=0,width:G=0}=this,V=Z(this.paddingLeft,p),B=y??(this.rotation||0),d={width:G,height:v,x:k+this.bBox.x-V,y:L+this.bBox.y-p+this.baselineOffset};return B&&(d=this.getRotatedBox(d,B)),d}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(h){this.heightSetting=h,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:Z(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&rt(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(h,y){st(h)?h!==this[y]&&(this[y]=h,this.updateTextPadding()):this[y]=void 0}rSetter(h,y){this.boxAttr(y,h)}strokeSetter(h,y){this.stroke=h,this.boxAttr(y,h)}"stroke-widthSetter"(h,y){h&&(this.needsBox=!0),this["stroke-width"]=h,this.boxAttr(y,h)}"text-alignSetter"(h){this.textAlign=h}textSetter(h){h!==void 0&&this.text.attr({text:h}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let h,y=this.text,p={},v=this.padding,k=this.bBox=(!st(this.widthSetting)||!st(this.heightSetting)||this.textAlign)&&rt(y.textStr)?y.getBBox(void 0,0):x.emptyBBox;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||k.height||0)+2*v;let L=this.renderer.fontMetrics(y);if(this.baselineOffset=v+Math.min((this.text.firstLineMetrics||L).b,k.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-L.h)/2),this.needsBox&&!y.textPath){if(!this.box){let G=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();G.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),G.add(this)}h=this.getCrispAdjust(),p.x=h,p.y=(this.baseline?-this.baselineOffset:0)+h,p.width=Math.round(this.width),p.height=Math.round(this.height),this.box.attr(it(p,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let h=this.text;if(!h.textPath){this.updateBoxSize();let y=this.baseline?0:this.baselineOffset,p=Z(this.paddingLeft,this.padding);rt(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(p+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(p!==h.x||y!==h.y)&&(h.attr("x",p),h.hasBoxWidthChanged&&(this.bBox=h.getBBox(!0)),y!==void 0&&h.attr("y",y)),h.x=p,h.y=y}}widthSetter(h){this.widthSetting=st(h)?h:void 0,this.doUpdate=!0}getPaddedWidth(){let h=this.padding,y=Z(this.paddingLeft,h),p=Z(this.paddingRight,h);return(this.widthSetting||this.bBox.width||0)+y+p}xSetter(h){this.x=h,this.alignFactor&&(h-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(h),this.attr("translateX",this.xSetting)}ySetter(h){this.ySetting=this.y=Math.round(h),this.attr("translateY",this.ySetting)}}return x.emptyBBox={width:0,height:0,x:0,y:0},x.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],x}),pt(I,"Core/Renderer/SVG/Symbols.js",[I["Core/Utilities.js"]],function(U){let{defined:_,isNumber:rt,pick:it}=U;function st(b,x,E,h,y){let p=[];if(y){let v=y.start||0,k=it(y.r,E),L=it(y.r,h||E),G=2e-4/(y.borderRadius?1:Math.max(k,1)),V=Math.abs((y.end||0)-v-2*Math.PI)<G,B=(y.end||0)-(V?G:0),d=y.innerR,N=it(y.open,V),w=Math.cos(v),M=Math.sin(v),Q=Math.cos(B),F=Math.sin(B),J=it(y.longArc,B-v-Math.PI<G?0:1),W=["A",k,L,0,J,it(y.clockwise,1),b+k*Q,x+L*F];W.params={start:v,end:B,cx:b,cy:x},p.push(["M",b+k*w,x+L*M],W),_(d)&&((W=["A",d,d,0,J,_(y.clockwise)?1-y.clockwise:0,b+d*w,x+d*M]).params={start:B,end:v,cx:b,cy:x},p.push(N?["M",b+d*Q,x+d*F]:["L",b+d*Q,x+d*F],W)),N||p.push(["Z"])}return p}function ot(b,x,E,h,y){return y&&y.r?Z(b,x,E,h,y):[["M",b,x],["L",b+E,x],["L",b+E,x+h],["L",b,x+h],["Z"]]}function Z(b,x,E,h,y){let p=(y==null?void 0:y.r)||0;return[["M",b+p,x],["L",b+E-p,x],["A",p,p,0,0,1,b+E,x+p],["L",b+E,x+h-p],["A",p,p,0,0,1,b+E-p,x+h],["L",b+p,x+h],["A",p,p,0,0,1,b,x+h-p],["L",b,x+p],["A",p,p,0,0,1,b+p,x],["Z"]]}return{arc:st,callout:function(b,x,E,h,y){let p=Math.min(y&&y.r||0,E,h),v=p+6,k=y&&y.anchorX,L=y&&y.anchorY||0,G=Z(b,x,E,h,{r:p});if(!rt(k)||k<E&&k>0&&L<h&&L>0)return G;if(b+k>E-v)if(L>x+v&&L<x+h-v)G.splice(3,1,["L",b+E,L-6],["L",b+E+6,L],["L",b+E,L+6],["L",b+E,x+h-p]);else if(k<E){let V=L<x+v,B=V?x:x+h;G.splice(V?2:5,0,["L",k,L],["L",b+E-p,B])}else G.splice(3,1,["L",b+E,h/2],["L",k,L],["L",b+E,h/2],["L",b+E,x+h-p]);else if(b+k<v)if(L>x+v&&L<x+h-v)G.splice(7,1,["L",b,L+6],["L",b-6,L],["L",b,L-6],["L",b,x+p]);else if(k>0){let V=L<x+v,B=V?x:x+h;G.splice(V?1:6,0,["L",k,L],["L",b+p,B])}else G.splice(7,1,["L",b,h/2],["L",k,L],["L",b,h/2],["L",b,x+p]);else L>h&&k<E-v?G.splice(5,1,["L",k+6,x+h],["L",k,x+h+6],["L",k-6,x+h],["L",b+p,x+h]):L<0&&k>v&&G.splice(1,1,["L",k-6,x],["L",k,x-6],["L",k+6,x],["L",E-p,x]);return G},circle:function(b,x,E,h){return st(b+E/2,x+h/2,E/2,h/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(b,x,E,h){return[["M",b+E/2,x],["L",b+E,x+h/2],["L",b+E/2,x+h],["L",b,x+h/2],["Z"]]},rect:ot,roundedRect:Z,square:ot,triangle:function(b,x,E,h){return[["M",b+E/2,x],["L",b+E,x+h],["L",b,x+h],["Z"]]},"triangle-down":function(b,x,E,h){return[["M",b,x],["L",b+E,x],["L",b+E/2,x+h],["Z"]]}}}),pt(I,"Core/Renderer/SVG/TextBuilder.js",[I["Core/Renderer/HTML/AST.js"],I["Core/Globals.js"],I["Core/Utilities.js"]],function(U,_,rt){let{doc:it,SVG_NS:st,win:ot}=_,{attr:Z,extend:b,fireEvent:x,isString:E,objectEach:h,pick:y}=rt;return class{constructor(p){let v=p.styles;this.renderer=p.renderer,this.svgElement=p,this.width=p.textWidth,this.textLineHeight=v&&v.lineHeight,this.textOutline=v&&v.textOutline,this.ellipsis=!!(v&&v.textOverflow==="ellipsis"),this.noWrap=!!(v&&v.whiteSpace==="nowrap")}buildSVG(){let p=this.svgElement,v=p.element,k=p.renderer,L=y(p.textStr,"").toString(),G=L.indexOf("<")!==-1,V=v.childNodes,B=!p.added&&k.box,d=[L,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,p.getStyle("font-size"),this.width].join(",");if(d!==p.textCache){p.textCache=d,delete p.actualWidth;for(let N=V.length;N--;)v.removeChild(V[N]);if(G||this.ellipsis||this.width||p.textPath||L.indexOf(" ")!==-1&&(!this.noWrap||/<br.*?>/g.test(L))){if(L!==""){B&&B.appendChild(v);let N=new U(L);this.modifyTree(N.nodes),N.addToDOM(v),this.modifyDOM(),this.ellipsis&&(v.textContent||"").indexOf("…")!==-1&&p.attr("title",this.unescapeEntities(p.textStr||"",["&lt;","&gt;"])),B&&B.removeChild(v)}}else v.appendChild(it.createTextNode(this.unescapeEntities(L)));E(this.textOutline)&&p.applyTextOutline&&p.applyTextOutline(this.textOutline)}}modifyDOM(){let p,v=this.svgElement,k=Z(v.element,"x");for(v.firstLineMetrics=void 0;(p=v.element.firstChild)&&/^[\s\u200B]*$/.test(p.textContent||" ");)v.element.removeChild(p);[].forEach.call(v.element.querySelectorAll("tspan.highcharts-br"),(B,d)=>{B.nextSibling&&B.previousSibling&&(d===0&&B.previousSibling.nodeType===1&&(v.firstLineMetrics=v.renderer.fontMetrics(B.previousSibling)),Z(B,{dy:this.getLineHeight(B.nextSibling),x:k}))});let L=this.width||0;if(!L)return;let G=(B,d)=>{let N=B.textContent||"",w=N.replace(/([^\^])-/g,"$1- ").split(" "),M=!this.noWrap&&(w.length>1||v.element.childNodes.length>1),Q=this.getLineHeight(d),F=0,J=v.actualWidth;if(this.ellipsis)N&&this.truncate(B,N,void 0,0,Math.max(0,L-.8*Q),(W,z)=>W.substring(0,z)+"…");else if(M){let W=[],z=[];for(;d.firstChild&&d.firstChild!==B;)z.push(d.firstChild),d.removeChild(d.firstChild);for(;w.length;)w.length&&!this.noWrap&&F>0&&(W.push(B.textContent||""),B.textContent=w.join(" ").replace(/- /g,"-")),this.truncate(B,void 0,w,F===0&&J||0,L,(nt,R)=>w.slice(0,R).join(" ").replace(/- /g,"-")),J=v.actualWidth,F++;z.forEach(nt=>{d.insertBefore(nt,B)}),W.forEach(nt=>{d.insertBefore(it.createTextNode(nt),B);let R=it.createElementNS(st,"tspan");R.textContent="​",Z(R,{dy:Q,x:k}),d.insertBefore(R,B)})}},V=B=>{[].slice.call(B.childNodes).forEach(d=>{d.nodeType===ot.Node.TEXT_NODE?G(d,B):(d.className.baseVal.indexOf("highcharts-br")!==-1&&(v.actualWidth=0),V(d))})};V(v.element)}getLineHeight(p){let v=p.nodeType===ot.Node.TEXT_NODE?p.parentElement:p;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(v||this.svgElement.element).h}modifyTree(p){let v=(k,L)=>{let{attributes:G={},children:V,style:B={},tagName:d}=k,N=this.renderer.styledMode;if(d==="b"||d==="strong"?N?G.class="highcharts-strong":B.fontWeight="bold":(d==="i"||d==="em")&&(N?G.class="highcharts-emphasized":B.fontStyle="italic"),B&&B.color&&(B.fill=B.color),d==="br"){G.class="highcharts-br",k.textContent="​";let w=p[L+1];w&&w.textContent&&(w.textContent=w.textContent.replace(/^ +/gm,""))}else d==="a"&&V&&V.some(w=>w.tagName==="#text")&&(k.children=[{children:V,tagName:"tspan"}]);d!=="#text"&&d!=="a"&&(k.tagName="tspan"),b(k,{attributes:G,style:B}),V&&V.filter(w=>w.tagName!=="#text").forEach(v)};p.forEach(v),x(this.svgElement,"afterModifyTree",{nodes:p})}truncate(p,v,k,L,G,V){let B,d,N=this.svgElement,{rotation:w}=N,M=[],Q=k?1:0,F=(v||k||"").length,J=F,W=function(z,nt){let R=nt||z,Y=p.parentNode;if(Y&&M[R]===void 0&&Y.getSubStringLength)try{M[R]=L+Y.getSubStringLength(0,k?R+1:R)}catch{}return M[R]};if(N.rotation=0,L+(d=W(p.textContent.length))>G){for(;Q<=F;)J=Math.ceil((Q+F)/2),k&&(B=V(k,J)),d=W(J,B&&B.length-1),Q===F?Q=F+1:d>G?F=J-1:Q=J;F===0?p.textContent="":v&&F===v.length-1||(p.textContent=B||V(v||k,J))}k&&k.splice(0,J),N.actualWidth=d,N.rotation=w}unescapeEntities(p,v){return h(this.renderer.escapes,function(k,L){v&&v.indexOf(k)!==-1||(p=p.toString().replace(RegExp(k,"g"),L))}),p}}}),pt(I,"Core/Renderer/SVG/SVGRenderer.js",[I["Core/Renderer/HTML/AST.js"],I["Core/Defaults.js"],I["Core/Color/Color.js"],I["Core/Globals.js"],I["Core/Renderer/RendererRegistry.js"],I["Core/Renderer/SVG/SVGElement.js"],I["Core/Renderer/SVG/SVGLabel.js"],I["Core/Renderer/SVG/Symbols.js"],I["Core/Renderer/SVG/TextBuilder.js"],I["Core/Utilities.js"]],function(U,_,rt,it,st,ot,Z,b,x,E){let h,{defaultOptions:y}=_,{charts:p,deg2rad:v,doc:k,isFirefox:L,isMS:G,isWebKit:V,noop:B,SVG_NS:d,symbolSizes:N,win:w}=it,{addEvent:M,attr:Q,createElement:F,crisp:J,css:W,defined:z,destroyObjectProperties:nt,extend:R,isArray:Y,isNumber:et,isObject:ht,isString:lt,merge:q,pick:bt,pInt:ut,replaceNested:xt,uniqueKey:$}=E;class Ct{constructor(g,A,T,t,r,e,s){let i,a,o=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),n=o.element;s||o.css(this.getStyle(t||{})),g.appendChild(n),Q(g,"dir","ltr"),g.innerHTML.indexOf("xmlns")===-1&&Q(n,"xmlns",this.SVG_NS),this.box=n,this.boxWrapper=o,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(k.createTextNode("Created with Highcharts 11.4.8")),this.defs=this.createElement("defs").add(),this.allowHTML=e,this.forExport=r,this.styledMode=s,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=o.getStyle("font-size"),this.setSize(A,T,!1),L&&g.getBoundingClientRect&&((i=function(){W(g,{left:0,top:0}),a=g.getBoundingClientRect(),W(g,{left:Math.ceil(a.left)-a.left+"px",top:Math.ceil(a.top)-a.top+"px"})})(),this.unSubPixelFix=M(w,"resize",i))}definition(g){return new U([g]).addToDOM(this.defs.element)}getReferenceURL(){if((L||V)&&k.getElementsByTagName("base").length){if(!z(h)){let g=$(),A=new U([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:g},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${g})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(k.body);W(A,{position:"fixed",top:0,left:0,zIndex:9e5});let T=k.elementFromPoint(6,6);h=(T&&T.id)==="hitme",k.body.removeChild(A)}if(h)return xt(w.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(g){return this.style=R({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},g),this.style}setStyle(g){this.boxWrapper.css(this.getStyle(g))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let g=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),nt(this.gradients||{}),this.gradients=null,this.defs=g.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(g){return new this.Element(this,g)}getRadialAttr(g,A){return{cx:g[0]-g[2]/2+(A.cx||0)*g[2],cy:g[1]-g[2]/2+(A.cy||0)*g[2],r:(A.r||0)*g[2]}}shadowDefinition(g){let A=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(g).map(t=>`${t}-${g[t]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),T=q({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},g);return this.defs.element.querySelector(`#${A}`)||this.definition({tagName:"filter",attributes:{id:A,filterUnits:T.filterUnits},children:this.getShadowFilterContent(T)}),A}getShadowFilterContent(g){return[{tagName:"feDropShadow",attributes:{dx:g.offsetX,dy:g.offsetY,"flood-color":g.color,"flood-opacity":Math.min(5*g.opacity,1),stdDeviation:g.width/2}}]}buildText(g){new x(g).buildSVG()}getContrast(g){let A=rt.parse(g).rgba.map(t=>{let r=t/255;return r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4)}),T=.2126*A[0]+.7152*A[1]+.0722*A[2];return 1.05/(T+.05)>(T+.05)/.05?"#FFFFFF":"#000000"}button(g,A,T,t,r={},e,s,i,a,o){let n=this.label(g,A,T,a,void 0,void 0,o,void 0,"button"),l=this.styledMode,f=arguments,u=0;r=q(y.global.buttonTheme,r),l&&(delete r.fill,delete r.stroke,delete r["stroke-width"]);let P=r.states||{},m=r.style||{};delete r.states,delete r.style;let c=[U.filterUserAttributes(r)],S=[m];return l||["hover","select","disabled"].forEach((C,X)=>{c.push(q(c[0],U.filterUserAttributes(f[X+5]||P[C]||{}))),S.push(c[X+1].style),delete c[X+1].style}),M(n.element,G?"mouseover":"mouseenter",function(){u!==3&&n.setState(1)}),M(n.element,G?"mouseout":"mouseleave",function(){u!==3&&n.setState(u)}),n.setState=(C=0)=>{if(C!==1&&(n.state=u=C),n.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][C]),!l){n.attr(c[C]);let X=S[C];ht(X)&&n.css(X)}},n.attr(c[0]),!l&&(n.css(R({cursor:"default"},m)),o&&n.text.css({pointerEvents:"none"})),n.on("touchstart",C=>C.stopPropagation()).on("click",function(C){u!==3&&t.call(n,C)})}crispLine(g,A){let[T,t]=g;return z(T[1])&&T[1]===t[1]&&(T[1]=t[1]=J(T[1],A)),z(T[2])&&T[2]===t[2]&&(T[2]=t[2]=J(T[2],A)),g}path(g){let A=this.styledMode?{}:{fill:"none"};return Y(g)?A.d=g:ht(g)&&R(A,g),this.createElement("path").attr(A)}circle(g,A,T){let t=ht(g)?g:g===void 0?{}:{x:g,y:A,r:T},r=this.createElement("circle");return r.xSetter=r.ySetter=function(e,s,i){i.setAttribute("c"+s,e)},r.attr(t)}arc(g,A,T,t,r,e){let s;ht(g)?(A=(s=g).y,T=s.r,t=s.innerR,r=s.start,e=s.end,g=s.x):s={innerR:t,start:r,end:e};let i=this.symbol("arc",g,A,T,T,s);return i.r=T,i}rect(g,A,T,t,r,e){let s=ht(g)?g:g===void 0?{}:{x:g,y:A,r,width:Math.max(T||0,0),height:Math.max(t||0,0)},i=this.createElement("rect");return this.styledMode||(e!==void 0&&(s["stroke-width"]=e,R(s,i.crisp(s))),s.fill="none"),i.rSetter=function(a,o,n){i.r=a,Q(n,{rx:a,ry:a})},i.rGetter=function(){return i.r||0},i.attr(s)}roundedRect(g){return this.symbol("roundedRect").attr(g)}setSize(g,A,T){this.width=g,this.height=A,this.boxWrapper.animate({width:g,height:A},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:bt(T,!0)?void 0:0}),this.alignElements()}g(g){let A=this.createElement("g");return g?A.attr({class:"highcharts-"+g}):A}image(g,A,T,t,r,e){let s={preserveAspectRatio:"none"};et(A)&&(s.x=A),et(T)&&(s.y=T),et(t)&&(s.width=t),et(r)&&(s.height=r);let i=this.createElement("image").attr(s),a=function(o){i.attr({href:g}),e.call(i,o)};if(e){i.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let o=new w.Image;M(o,"load",a),o.src=g,o.complete&&a({})}else i.attr({href:g});return i}symbol(g,A,T,t,r,e){let s,i,a,o,n=this,l=/^url\((.*?)\)$/,f=l.test(g),u=!f&&(this.symbols[g]?g:"circle"),P=u&&this.symbols[u];if(P)typeof A=="number"&&(i=P.call(this.symbols,A||0,T||0,t||0,r||0,e)),s=this.path(i),n.styledMode||s.attr("fill","none"),R(s,{symbolName:u||void 0,x:A,y:T,width:t,height:r}),e&&R(s,e);else if(f){a=g.match(l)[1];let m=s=this.image(a);m.imgwidth=bt(e&&e.width,N[a]&&N[a].width),m.imgheight=bt(e&&e.height,N[a]&&N[a].height),o=c=>c.attr({width:c.width,height:c.height}),["width","height"].forEach(c=>{m[`${c}Setter`]=function(S,C){this[C]=S;let{alignByTranslate:X,element:D,width:H,height:j,imgwidth:O,imgheight:K}=this,at=C==="width"?O:K,tt=1;e&&e.backgroundSize==="within"&&H&&j&&O&&K?(tt=Math.min(H/O,j/K),Q(D,{width:Math.round(O*tt),height:Math.round(K*tt)})):D&&at&&D.setAttribute(C,at),!X&&O&&K&&this.translate(((H||0)-O*tt)/2,((j||0)-K*tt)/2)}}),z(A)&&m.attr({x:A,y:T}),m.isImg=!0,m.symbolUrl=g,z(m.imgwidth)&&z(m.imgheight)?o(m):(m.attr({width:0,height:0}),F("img",{onload:function(){let c=p[n.chartIndex];this.width===0&&(W(this,{position:"absolute",top:"-999em"}),k.body.appendChild(this)),N[a]={width:this.width,height:this.height},m.imgwidth=this.width,m.imgheight=this.height,m.element&&o(m),this.parentNode&&this.parentNode.removeChild(this),n.imgCount--,n.imgCount||!c||c.hasLoaded||c.onload()},src:a}),this.imgCount++)}return s}clipRect(g,A,T,t){return this.rect(g,A,T,t,0)}text(g,A,T,t){let r={};if(t&&(this.allowHTML||!this.forExport))return this.html(g,A,T);r.x=Math.round(A||0),T&&(r.y=Math.round(T)),z(g)&&(r.text=g);let e=this.createElement("text").attr(r);return t&&(!this.forExport||this.allowHTML)||(e.xSetter=function(s,i,a){let o=a.getElementsByTagName("tspan"),n=a.getAttribute(i);for(let l=0,f;l<o.length;l++)(f=o[l]).getAttribute(i)===n&&f.setAttribute(i,s);a.setAttribute(i,s)}),e}fontMetrics(g){let A=ut(ot.prototype.getStyle.call(g,"font-size")||0),T=A<24?A+3:Math.round(1.2*A),t=Math.round(.8*T);return{h:T,b:t,f:A}}rotCorr(g,A,T){let t=g;return A&&T&&(t=Math.max(t*Math.cos(A*v),4)),{x:-g/3*Math.sin(A*v),y:t}}pathToSegments(g){let A=[],T=[],t={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2};for(let r=0;r<g.length;r++)lt(T[0])&&et(g[r])&&T.length===t[T[0].toUpperCase()]&&g.splice(r,0,T[0].replace("M","L").replace("m","l")),typeof g[r]=="string"&&(T.length&&A.push(T.slice(0)),T.length=0),T.push(g[r]);return A.push(T.slice(0)),A}label(g,A,T,t,r,e,s,i,a){return new Z(this,g,A,T,t,r,e,s,i,a)}alignElements(){this.alignedObjects.forEach(g=>g.align())}}return R(Ct.prototype,{Element:ot,SVG_NS:d,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:b,draw:B}),st.registerRendererType("svg",Ct,!0),Ct}),pt(I,"Series/ArcDiagram/ArcDiagramSeries.js",[I["Series/ArcDiagram/ArcDiagramPoint.js"],I["Series/ArcDiagram/ArcDiagramSeriesDefaults.js"],I["Series/Sankey/SankeyColumnComposition.js"],I["Core/Series/Series.js"],I["Core/Series/SeriesRegistry.js"],I["Core/Renderer/SVG/SVGRenderer.js"],I["Core/Utilities.js"],I["Core/Renderer/SVG/SVGElement.js"],I["Extensions/TextPath.js"]],function(U,_,rt,it,st,ot,Z,b,x){x.compose(b);let{prototype:{symbols:E}}=ot,{seriesTypes:{column:h,sankey:y}}=st,{crisp:p,extend:v,merge:k,pick:L,relativeLength:G}=Z;class V extends y{createNodeColumns(){let d=this,N=d.chart,w=rt.compose([],d);return w.sankeyColumn.maxLength=N.inverted?N.plotHeight:N.plotWidth,w.sankeyColumn.getTranslationFactor=M=>{let Q=w.slice(),F=this.options.minLinkWidth||0,J,W=0,z,nt,R=0,Y=1,et=0,ht=(N.plotSizeX||0)-(M.options.marker&&M.options.marker.lineWidth||0)-(w.length-1)*M.nodePadding;for(;w.length;){for(W=ht/w.sankeyColumn.sum(),J=!1,z=w.length;z--;){nt=w[z].getSum()*W*Y;let lt=Math.min(N.plotHeight,N.plotWidth);nt>lt?Y=Math.min(lt/nt,Y):nt<F&&(w.splice(z,1),ht-=F,nt=F,J=!0),et+=nt*(1-Y)/2,R=Math.max(R,nt)}if(!J)break}return w.length=0,Q.forEach(lt=>{lt.scale=Y,w.push(lt)}),w.sankeyColumn.maxRadius=R,w.sankeyColumn.scale=Y,w.sankeyColumn.additionalSpace=et,W},w.sankeyColumn.offset=function(M,Q){let F=M.series.options.equalNodes,J=d.nodePadding,W=Math.min(N.plotWidth,N.plotHeight,(w.sankeyColumn.maxLength||0)/d.nodes.length-J),z=w.sankeyColumn.additionalSpace||0,nt;for(let R=0;R<w.length;R++){let Y=w[R].getSum()*(w.sankeyColumn.scale||0),et=F?W:Math.max(Y*Q,d.options.minLinkWidth||0);if(nt=Y?et+J:0,w[R]===M)return{relativeLeft:z+G(M.options.offset||0,nt)};z+=nt}},d.nodes.forEach(function(M){M.column=0,w.push(M)}),[w]}translateLink(d){let N=d.fromNode,w=d.toNode,M=this.chart,Q=this.translationFactor,F=d.options,J=this.options,W=L(F.linkWeight,J.linkWeight,Math.max((d.weight||0)*Q*N.scale,this.options.minLinkWidth||0)),z=d.series.options.centeredLinks,nt=N.nodeY,R=(q,bt)=>{let ut=(q.offset(d,bt)||0)*Q;return Math.min(q.nodeX+ut,q.nodeX+(q.shapeArgs&&q.shapeArgs.height||0)-W)},Y=z?N.nodeX+((N.shapeArgs.height||0)-W)/2:R(N,"linksFrom"),et=z?w.nodeX+((w.shapeArgs.height||0)-W)/2:R(w,"linksTo"),ht=nt;Y>et&&([Y,et]=[et,Y]),J.reversed&&([Y,et]=[et,Y],ht=(M.plotSizeY||0)-ht),d.shapeType="path",d.linkBase=[Y,Y+W,et,et+W];let lt=(et+W-Y)/Math.abs(et+W-Y)*L(J.linkRadius,Math.min(Math.abs(et+W-Y)/2,N.nodeY-Math.abs(W)));d.shapeArgs={d:[["M",Y,ht],["A",(et+W-Y)/2,lt,0,0,1,et+W,ht],["L",et,ht],["A",(et-Y-W)/2,lt-W,0,0,0,Y+W,ht],["Z"]]},d.dlBox={x:Y+(et-Y)/2,y:ht-lt,height:W,width:0},d.tooltipPos=M.inverted?[(M.plotSizeY||0)-d.dlBox.y-W/2,(M.plotSizeX||0)-d.dlBox.x]:[d.dlBox.x,d.dlBox.y+W/2],d.y=d.plotY=1,d.x=d.plotX=1,d.color||(d.color=N.color)}translateNode(d,N){var bt;let w=this.translationFactor,M=this.chart,Q=M.inverted?M.plotWidth:M.plotHeight,F=this.options,J=Math.min(M.plotWidth,M.plotHeight,Q/d.series.nodes.length-this.nodePadding),W=d.getSum()*(N.sankeyColumn.scale||0),z=F.equalNodes?J:Math.max(W*w,this.options.minLinkWidth||0),nt=((bt=F.marker)==null?void 0:bt.lineWidth)||0,R=N.sankeyColumn.offset(d,w),Y=p(L(R&&R.absoluteLeft,(N.sankeyColumn.left(w)||0)+(R&&R.relativeLeft||0)),nt),et=k(F.marker,d.options.marker),ht=et.symbol,lt=et.radius,q=parseInt(F.offset,10)*((M.inverted?M.plotWidth:M.plotHeight)-(p(this.colDistance*(d.column||0)+(et.lineWidth||0)/2,nt)+(N.sankeyColumn.scale||0)*(N.sankeyColumn.maxRadius||0)/2))/100;if(d.sum=W,W){d.nodeX=Y,d.nodeY=q;let ut=d.options.width||F.width||z,xt=d.options.height||F.height||z,$=q;F.reversed&&($=(M.plotSizeY||0)-q,M.inverted&&($=(M.plotSizeY||0)-q)),this.mapOptionsToLevel&&(d.dlOptions=y.getDLOptions({level:this.mapOptionsToLevel[d.level],optionsPoint:d.options})),d.plotX=1,d.plotY=1,d.tooltipPos=M.inverted?[(M.plotSizeY||0)-$-xt/2,(M.plotSizeX||0)-Y-ut/2]:[Y+ut/2,$+xt/2],d.shapeType="path",d.shapeArgs={d:E[ht||"circle"](Y,$-(lt||xt)/2,lt||ut,lt||xt),width:lt||ut,height:lt||xt},d.dlBox={x:Y+ut/2,y:$,height:0,width:0}}else d.dlOptions={enabled:!1}}drawDataLabels(){if(this.options.dataLabels){let d=this.options.dataLabels.textPath;h.prototype.drawDataLabels.call(this,this.nodes),this.options.dataLabels.textPath=this.options.dataLabels.linkTextPath,h.prototype.drawDataLabels.call(this,this.data),this.options.dataLabels.textPath=d}}pointAttribs(d,N){if(d&&d.isNode){let{...w}=it.prototype.pointAttribs.apply(this,arguments);return w}return super.pointAttribs.apply(this,arguments)}markerAttribs(d){return d.isNode?super.markerAttribs.apply(this,arguments):{}}}return V.defaultOptions=k(y.defaultOptions,_),v(V.prototype,{orderNodes:!1}),V.prototype.pointClass=U,st.registerSeriesType("arcdiagram",V),V}),pt(I,"masters/modules/arc-diagram.src.js",[I["Core/Globals.js"]],function(U){return U})})})(Mt);var Ot=Mt.exports;const Tt=Lt(Ot),jt=Et({__proto__:null,default:Tt},[Ot]);export{jt as a};
