1(self.webpackChunkwinds_mobi_client_web=self.webpackChunkwinds_mobi_client_web||[]).push([[9],{8009:(e,t,i)=>{var s,r,o;o=function(e){"use strict";var t=e?e._modules:{};function i(t,i,s,r){t.hasOwnProperty(i)||(t[i]=r.apply(null,s),"function"==typeof CustomEvent&&e.win.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:i,module:t[i]}})))}i(t,"Extensions/Boost/Boostables.js",[],(function(){return["area","areaspline","arearange","column","columnrange","bar","line","scatter","heatmap","bubble","treemap"]})),i(t,"Extensions/Boost/BoostableMap.js",[t["Extensions/Boost/Boostables.js"]],(function(e){let t={};return e.forEach((e=>{t[e]=!0})),t})),i(t,"Extensions/Boost/BoostChart.js",[t["Extensions/Boost/BoostableMap.js"],t["Core/Globals.js"],t["Core/Utilities.js"]],(function(e,t,i){let{composed:s}=t,{addEvent:r,pick:o,pushUnique:n}=i;function a(t){let i=t.series,s=t.boost=t.boost||{},r=t.options.boost||{},n=o(r.seriesThreshold,50);if(i.length>=n)return!0;if(1===i.length)return!1;let a=r.allowForce;if(void 0===a)for(let e of(a=!0,t.xAxis))if(o(e.min,-1/0)>o(e.dataMin,-1/0)||o(e.max,1/0)<o(e.dataMax,1/0)){a=!1;break}if(void 0!==s.forceChartBoost){if(a)return s.forceChartBoost;s.forceChartBoost=void 0}let l,h=0,d=0;for(let t of i)0!==(l=t.options).boostThreshold&&!1!==t.visible&&"heatmap"!==t.type&&(e[t.type]&&++h,function(...e){let t=-Number.MAX_VALUE;return e.forEach((function(e){if(null!=e&&void 0!==e.length&&e.length>0)return t=e.length,!0})),t}(t.processedXData,l.data,t.points)>=(l.boostThreshold||Number.MAX_VALUE)&&++d);return s.forceChartBoost=a&&(h===i.length&&d===h||d>5),s.forceChartBoost}function l(e){function t(){e.boost&&e.boost.wgl&&a(e)&&e.boost.wgl.render(e)}r(e,"predraw",(function(){e.boost=e.boost||{},e.boost.forceChartBoost=void 0,e.boosted=!1,e.axes.some((e=>e.isPanning))||e.boost.clear?.(),e.boost.canvas&&e.boost.wgl&&a(e)&&e.boost.wgl.allocateBuffer(e),e.boost.markerGroup&&e.xAxis&&e.xAxis.length>0&&e.yAxis&&e.yAxis.length>0&&e.boost.markerGroup.translate(e.xAxis[0].pos,e.yAxis[0].pos)})),r(e,"load",t,{order:-1}),r(e,"redraw",t);let i=-1,s=-1;r(e.pointer,"afterGetHoverData",(t=>{let r=t.hoverPoint?.series;if(e.boost=e.boost||{},e.boost.markerGroup&&r){let t=e.inverted?r.yAxis:r.xAxis,o=e.inverted?r.xAxis:r.yAxis;(t&&t.pos!==i||o&&o.pos!==s)&&(e.series.forEach((e=>{e.halo?.hide()})),e.boost.markerGroup.translate(t.pos,o.pos),i=t.pos,s=o.pos)}}))}return{compose:function(e,t){return t&&n(s,"Boost.Chart")&&e.prototype.callbacks.push(l),e},getBoostClipRect:function(e,t){let i=e.navigator,s={x:e.plotLeft,y:e.plotTop,width:e.plotWidth,height:e.plotHeight};if(i&&e.inverted?(s.width+=i.top+i.height,i.opposite||(s.x=i.left)):i&&!e.inverted&&(s.height=i.top+i.height-e.plotTop),t.getClipBox){let{xAxis:i,yAxis:r}=t;if(s=t.getClipBox(),e.inverted){let e=s.width;s.width=s.height,s.height=e,s.x=r.pos,s.y=i.pos}else s.x=i.pos,s.y=r.pos}if(t===e){let t=e.inverted?e.xAxis:e.yAxis;t.length<=1&&(s.y=Math.min(t[0].pos,s.y),s.height=t[0].pos-e.plotTop+t[0].len)}return s},isChartSeriesBoosting:a}}
1)),i(t,"Extensions/Boost/WGLDrawMode.js",[],(function(){return{area:"LINES",arearange:"LINES",areaspline:"LINES",column:"LINES",columnrange:"LINES",bar:"LINES",line:"LINE_STRIP",scatter:"POINTS",heatmap:"TRIANGLES",treemap:"TRIANGLES",bubble:"POINTS"}})),i(t,"Extensions/Boost/WGLShader.js",[t["Core/Utilities.js"]],(function(e){let{clamp:t,error:i,pick:s}=e;return class{constructor(e){this.errors=[],this.uLocations={},this.gl=e,!e||this.createShader()}bind(){this.gl&&this.shaderProgram&&this.gl.useProgram(this.shaderProgram)}createShader(){let e=this.stringToProgram("#version 100\n#define LN10 2.302585092994046\nprecision highp float;\nattribute vec4 aVertexPosition;\nattribute vec4 aColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform mat4 uPMatrix;\nuniform float pSize;\nuniform float translatedThreshold;\nuniform bool hasThreshold;\nuniform bool skipTranslation;\nuniform float xAxisTrans;\nuniform float xAxisMin;\nuniform float xAxisMinPad;\nuniform float xAxisPointRange;\nuniform float xAxisLen;\nuniform bool xAxisPostTranslate;\nuniform float xAxisOrdinalSlope;\nuniform float xAxisOrdinalOffset;\nuniform float xAxisPos;\nuniform bool xAxisCVSCoord;\nuniform bool xAxisIsLog;\nuniform bool xAxisReversed;\nuniform float yAxisTrans;\nuniform float yAxisMin;\nuniform float yAxisMinPad;\nuniform float yAxisPointRange;\nuniform float yAxisLen;\nuniform bool yAxisPostTranslate;\nuniform float yAxisOrdinalSlope;\nuniform float yAxisOrdinalOffset;\nuniform float yAxisPos;\nuniform bool yAxisCVSCoord;\nuniform bool yAxisIsLog;\nuniform bool yAxisReversed;\nuniform bool isBubble;\nuniform bool bubbleSizeByArea;\nuniform float bubbleZMin;\nuniform float bubbleZMax;\nuniform float bubbleZThreshold;\nuniform float bubbleMinSize;\nuniform float bubbleMaxSize;\nuniform bool bubbleSizeAbs;\nuniform bool isInverted;\nfloat bubbleRadius(){\nfloat value = aVertexPosition.w;\nfloat zMax = bubbleZMax;\nfloat zMin = bubbleZMin;\nfloat radius = 0.0;\nfloat pos = 0.0;\nfloat zRange = zMax - zMin;\nif (bubbleSizeAbs){\nvalue = value - bubbleZThreshold;\nzMax = max(zMax - bubbleZThreshold, zMin - bubbleZThreshold);\nzMin = 0.0;\n}\nif (value < zMin){\nradius = bubbleZMin / 2.0 - 1.0;\n} else {\npos = zRange > 0.0 ? (value - zMin) / zRange : 0.5;\nif (bubbleSizeByArea && pos > 0.0){\npos = sqrt(pos);\n}\nradius = ceil(bubbleMinSize + pos * (bubbleMaxSize - bubbleMinSize)) / 2.0;\n}\nreturn radius * 2.0;\n}\nfloat translate(float val,\nfloat pointPlacement,\nfloat localA,\nfloat localMin,\nfloat minPixelPadding,\nfloat pointRange,\nfloat len,\nbool cvsCoord,\nbool isLog,\nbool reversed\n){\nfloat sign = 1.0;\nfloat cvsOffset = 0.0;\nif (cvsCoord) {\nsign *= -1.0;\ncvsOffset = len;\n}\nif (isLog) {\nval = log(val) / LN10;\n}\nif (reversed) {\nsign *= -1.0;\ncvsOffset -= sign * len;\n}\nreturn sign * (val - localMin) * localA + cvsOffset + \n(sign * minPixelPadding);\n}\nfloat xToPixels(float value) {\nif (skipTranslation){\nreturn value;// + xAxisPos;\n}\nreturn translate(value, 0.0, xAxisTrans, xAxisMin, xAxisMinPad, xAxisPointRange, xAxisLen, xAxisCVSCoord, xAxisIsLog, xAxisReversed);// + xAxisPos;\n}\nfloat yToPixels(float value, float checkTreshold) {\nfloat v;\nif (skipTranslation){\nv = value;// + yAxisPos;\n} else {\nv = translate(value, 0.0, yAxisTrans, yAxisMin, yAxisMinPad, yAxisPointRange, yAxisLen, yAxisCVSCoord, yAxisIsLog, yAxisReversed);// + yAxisPos;\nif (v > yAxisLen) {\nv = yAxisLen;\n}\n}\nif (checkTreshold > 0.0 && hasThreshold) {\nv = min(v, translatedThreshold);\n}\nreturn v;\n}\nvoid main(void) {\nif (isBubble){\ngl_PointSize = bubbleRadius();\n} else {\ngl_PointSize = pSize;\n}\nvColor = aColor;\nif (skipTranslation && isInverted) {\ngl_Position = uPMatrix * vec4(aVertexPosition.y + yAxisPos, aVertexPosition.x + xAxisPos, 0.0, 1.0);\n} else if (isInverted) {\ngl_Position = uPMatrix * vec4(yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, xToPixels(aVertexPosition.x) + xAxisPos, 0.0, 1.0);\n} else {\ngl_Position = uPMatrix * vec4(xToPixels(aVertexPosition.x) + xAxisPos, yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, 0.0, 1.0);\n}\n}","vertex"),t=this.stringToProgram("precision highp float;\nuniform vec4 fillColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform sampler2D uSampler;\nuniform bool isCircle;\nuniform bool hasColor;\nvoid main(void) {\nvec4 col = fillColor;\nvec4 tcol = texture2D(uSampler, gl_PointCoord.st);\nif (hasColor) {\ncol = vColor;\n}\nif (isCircle) {\ncol *= tcol;\nif (tcol.r < 0.0) {\ndiscard;\n} else {\ngl_FragColor = col;\n}\n} else {\ngl_FragColor = col;\n}\n}","fragment"),i=e=>this.gl.getUniformLocation(this.shaderProgram,e);return e&&t?(this.shaderProgram=this.gl.createProgram(),this.gl.attachShader(this.shaderProgram,e),this.gl.attachShader(this.shaderProgram,t),this.gl.linkProgram(this.shaderProgram),this.gl.getProgramParameter(this.shaderProgram,this.gl.LINK_STATUS)?(this.gl.useProgram(this.shaderProgram),this.gl.bindAttribLocation(this.shaderProgram,0,"aVertexPosition"),this.pUniform=i("uPMatrix"),this.psUniform=i("pSize"),this.fcUniform=i("fillColor"),this.isBubbleUniform=i("isBubble"),this.bubbleSizeAbsUniform=i("bubbleSizeAbs"),this.bubbleSizeAreaUniform=i("bubbleSizeByArea"),this.uSamplerUniform=i("uSampler"),this.skipTranslationUniform=i("skipTranslation"),this.isCircleUniform=i("isCircle"),this.isInverted=i("isInverted"),!0):(this.errors.push(this.gl.getProgramInfoLog(this.shaderProgram)),this.handleErrors(),this.shaderProgram=!1,!1)):(this.shaderProgram=!1,this.handleErrors(),!1)}handleErrors(){this.errors.length&&i("[highcharts boost] shader error - "+this.errors.join("\n"))}stringToProgram(e,t){let i=this.gl.createShader("vertex"===t?this.gl.VERTEX_SHADER:this.gl.FRAGMENT_SHADER);return this.gl.shaderSource(i,e),this.gl.compileShader(i),this.gl.getShaderParameter(i,this.gl.COMPILE_STATUS)?i:(this.errors.push("when compiling "+t+" shader:\n"+this.gl.getShaderInfoLog(i)),!1)}destroy(){this.gl&&this.shaderProgram&&(this.gl.deleteProgram(this.shaderProgram),this.shaderProgram=!1)}fillColorUniform(){return this.fcUniform}getProgram(){return this.shaderProgram}pointSizeUniform(){return this.psUniform}perspectiveUniform(){return this.pUniform}reset(){this.gl&&this.shaderProgram&&(this.gl.uniform1i(this.isBubbleUniform,0),this.gl.uniform1i(this.isCircleUniform,0))}setBubbleUniforms(e,i,r,o=1){let n=e.options,a=Number.MAX_VALUE,l=-Number.MAX_VALUE;if(this.gl&&this.shaderProgram&&e.is("bubble")){let h=e.getPxExtremes();a=s(n.zMin,t(i,!1===n.displayNegative?n.zThreshold:-Number.MAX_VALUE,a)),l=s(n.zMax,Math.max(l,r)),this.gl.uniform1i(this.isBubbleUniform,1),this.gl.uniform1i(this.isCircleUniform,1),this.gl.uniform1i(this.bubbleSizeAreaUniform,"width"!==e.options.sizeBy),this.gl.uniform1i(this.bubbleSizeAbsUniform,e.options.sizeByAbsoluteValue),this.setUniform("bubbleMinSize",h.minPxSize*o),this.setUniform("bubbleMaxSize",h.maxPxSize*o),this.setUniform("bubbleZMin",a),this.setUniform("bubbleZMax",l),this.setUniform("bubbleZThreshold",e.options.zThreshold)}}setColor(e){this.gl&&this.shaderProgram&&this.gl.uniform4f(this.fcUniform,e[0]/255,e[1]/255,e[2]/255,e[3])}setDrawAsCircle(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isCircleUniform,e?1:0)}setInverted(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isInverted,e)}setPMatrix(e){this.gl&&this.shaderProgram&&this.gl.uniformMatrix4fv(this.pUniform,!1,e)}setPointSize(e){this.gl&&this.shaderProgram&&this.gl.uniform1f(this.psUniform,e)}setSkipTranslation(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.skipTranslationUniform,!0===e?1:0)}setTexture(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.uSamplerUniform,e)}setUniform(e,t){if(this.gl&&this.shaderProgram){let i=this.uLocations[e]=this.uLocations[e]||this.gl.getUniformLocation(this.shaderProgram,e);this.gl.uniform1f(i,t)}}}}
1)),i(t,"Extensions/Boost/WGLVertexBuffer.js",[],(function(){return class{constructor(e,t,i){this.buffer=!1,this.iterator=0,this.preAllocated=!1,this.vertAttribute=!1,this.components=i||2,this.dataComponents=i,this.gl=e,this.shader=t}allocate(e){this.iterator=-1,this.preAllocated=new Float32Array(4*e)}bind(){if(!this.buffer)return!1;this.gl.vertexAttribPointer(this.vertAttribute,this.components,this.gl.FLOAT,!1,0,0)}build(e,t,i){let s;return this.data=e||[],this.data&&0!==this.data.length||this.preAllocated?(this.components=i||this.components,this.buffer&&this.gl.deleteBuffer(this.buffer),this.preAllocated||(s=new Float32Array(this.data)),this.buffer=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.preAllocated||s,this.gl.STATIC_DRAW),this.vertAttribute=this.gl.getAttribLocation(this.shader.getProgram(),t),this.gl.enableVertexAttribArray(this.vertAttribute),s=!1,!0):(this.destroy(),!1)}destroy(){this.buffer&&(this.gl.deleteBuffer(this.buffer),this.buffer=!1,this.vertAttribute=!1),this.iterator=0,this.components=this.dataComponents||2,this.data=[]}push(e,t,i,s){this.preAllocated&&(this.preAllocated[++this.iterator]=e,this.preAllocated[++this.iterator]=t,this.preAllocated[++this.iterator]=i,this.preAllocated[++this.iterator]=s)}render(e,t,i){let s=this.preAllocated?this.preAllocated.length:this.data.length;return!(!this.buffer||!s||((!e||e>s||e<0)&&(e=0),(!t||t>s)&&(t=s),e>=t||(i=i||"POINTS",this.gl.drawArrays(this.gl[i],e/this.components,(t-e)/this.components),0)))}}}
1)),i(t,"Extensions/Boost/WGLRenderer.js",[t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Utilities.js"],t["Extensions/Boost/WGLDrawMode.js"],t["Extensions/Boost/WGLShader.js"],t["Extensions/Boost/WGLVertexBuffer.js"]],(function(e,t,i,s,r,o){let{parse:n}=e,{doc:a,win:l}=t,{isNumber:h,isObject:d,merge:f,objectEach:u,pick:c}=i,g={column:!0,columnrange:!0,bar:!0,area:!0,areaspline:!0,arearange:!0},m={scatter:!0,bubble:!0},p=["webgl","experimental-webgl","moz-webgl","webkit-3d"];class b{static orthoMatrix(e,t){return[2/e,0,0,0,0,-2/t,0,0,0,0,-2,0,-1,1,-1,1]}static seriesPointCount(e){let t,i,s;return e.boosted?(t=!!e.options.stacking,i=e.xData||e.options.xData||e.processedXData,s=(t?e.data:i||e.options.data).length,"treemap"===e.type?s*=12:"heatmap"===e.type?s*=6:g[e.type]&&(s*=2),s):0}constructor(e){this.data=[],this.height=0,this.isInited=!1,this.markerData=[],this.series=[],this.textureHandles={},this.width=0,this.postRenderCallback=e,this.settings={pointSize:1,lineWidth:1,fillColor:"#AA00AA",useAlpha:!0,usePreallocated:!1,useGPUTranslations:!1,debug:{timeRendering:!1,timeSeriesProcessing:!1,timeSetup:!1,timeBufferCopy:!1,timeKDTree:!1,showSkipSummary:!1}}}getPixelRatio(){return this.settings.pixelRatio||l.devicePixelRatio||1}setOptions(e){"pixelRatio"in e||(e.pixelRatio=1),f(!0,this.settings,e)}allocateBuffer(e){let t=this.vbuffer,i=0;this.settings.usePreallocated&&(e.series.forEach((e=>{e.boosted&&(i+=b.seriesPointCount(e))})),t&&t.allocate(i))}allocateBufferForSingleSeries(e){let t=this.vbuffer,i=0;this.settings.usePreallocated&&(e.boosted&&(i=b.seriesPointCount(e)),t&&t.allocate(i))}clear(){let e=this.gl;e&&e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}pushSeriesData(e,t){let i,s,r,o,a,l,h,f,u=this.data,c=this.settings,m=this.vbuffer,p=e.pointArrayMap&&"low,high"===e.pointArrayMap.join(","),{chart:b,options:x,sorted:A,xAxis:y,yAxis:P}=e,v=!!x.stacking,E=x.data,T=e.xAxis.getExtremes(),k=T.min-(e.xAxis.minPointOffset||0),S=T.max+(e.xAxis.minPointOffset||0),M=e.
1yAxis.getExtremes(),C=M.min-(e.yAxis.minPointOffset||0),w=M.max+(e.yAxis.minPointOffset||0),U=e.xData||x.xData||e.processedXData,R=e.yData||x.yData||e.processedYData,B=e.zData||x.zData||e.processedZData,D=!U||0===U.length,L=x.connectNulls,_=e.points||!1,G=v?e.data:U||E,z={x:Number.MAX_VALUE,y:0},N={x:-Number.MAX_VALUE,y:0},I=void 0===b.index,O=g[e.type],X=x.zoneAxis||"y",V=x.zones||!1,j=x.threshold,F=this.getPixelRatio(),W=e.chart.plotWidth,H=!1,Y=!1,q=0,Z=!1,K=-1,Q=!1,J=!1,$=!1,ee=!1,te=!1,ie=!1,se=!0,re=!0,oe=!1,ne=!1,ae=0;if(x.boostData&&x.boostData.length>0)return;x.gapSize&&(ne="value"!==x.gapUnit?x.gapSize*e.closestPointRange:x.gapSize),V&&(f=[],V.forEach(((e,t)=>{if(e.color){let i=n(e.color).rgba;i[0]/=255,i[1]/=255,i[2]/=255,f[t]=i,oe||void 0!==e.value||(oe=i)}})),oe||(oe=n(e.pointAttribs&&e.pointAttribs().fill||e.color).rgba,oe[0]/=255,oe[1]/=255,oe[2]/=255)),b.inverted&&(W=e.chart.plotHeight),e.closestPointRangePx=Number.MAX_VALUE;let le=e=>{e&&(t.colorData.push(e[0]),t.colorData.push(e[1]),t.colorData.push(e[2]),t.colorData.push(e[3]))},he=(e,i,s,r=1,o)=>{le(o),1!==F&&(!c.useGPUTranslations||t.skipTranslation)&&(e*=F,i*=F,r*=F),c.usePreallocated&&m?(m.push(e,i,s?1:0,r),ae+=4):(u.push(e),u.push(i),u.push(s?F:0),u.push(r))},de=()=>{t.segments.length&&(t.segments[t.segments.length-1].to=u.length||ae)},fe=()=>{t.segments.length&&t.segments[t.segments.length-1].from===(u.length||ae)||(de(),t.segments.push({from:u.length||ae}))},ue=(e,t,i,s,r)=>{le(r),he(e+i,t),le(r),he(e,t),le(r),he(e,t+s),le(r),he(e,t+s),le(r),he(e+i,t+s),le(r),he(e+i,t)};if(fe(),_&&_.length>0)return t.skipTranslation=!0,t.drawMode="TRIANGLES",_[0].node&&_[0].node.levelDynamic&&_.sort(((e,t)=>{if(e.node){if(e.node.levelDynamic>t.node.levelDynamic)return 1;if(e.node.levelDynamic<t.node.levelDynamic)return-1}return 0})),_.forEach((t=>{let i,r,o=t.plotY;if(void 0!==o&&!isNaN(o)&&null!==t.y&&t.shapeArgs){let{x:o=0,y:a=0,width:l=0,height:h=0}=t.shapeArgs;i=(r=b.styledMode?t.series.colorAttribs(t):r=t.series.pointAttribs(t))["stroke-width"]||0,te=n(r.fill).rgba,te[0]/=255,te[1]/=255,te[2]/=255,e.is("treemap")&&(i=i||1,s=n(r.stroke).rgba,s[0]/=255,s[1]/=255,s[2]/=255,ue(o,a,l,h,s),i/=2),e.is("heatmap")&&b.inverted&&(o=y.len-o,a=P.len-a,l=-l,h=-h),ue(o+i,a+i,l-2*i,h-2*i,te)}})),void de();for(;K<G.length-1;){if(void 0===(a=G[++K]))continue;if(I)break;let s=E&&E[K];if(!D&&d(s,!0)&&s.color&&(te=n(s.color).rgba,te[0]/=255,te[1]/=255,te[2]/=255),D?(r=a[0],o=a[1],G[K+1]&&(J=G[K+1][0]),G[K-1]&&(Q=G[K-1][0]),a.length>=3&&(l=a[2],a[2]>t.zMax&&(t.zMax=a[2]),a[2]<t.zMin&&(t.zMin=a[2]))):(r=a,o=R[K],G[K+1]&&(J=G[K+1]),G[K-1]&&(Q=G[K-1]),B&&B.length&&(l=B[K],B[K]>t.zMax&&(t.zMax=B[K]),B[K]<t.zMin&&(t.zMin=B[K]))),L||null!==r&&null!==o){if(J&&J>=k&&J<=S&&($=!0),Q&&Q>=k&&Q<=S&&(ee=!0),p?(D&&(o=a.slice(1,3)),h=o[0],o=o[1]):v&&(r=a.x,h=(o=a.stackY)-a.y),null!=C&&null!=w&&(se=o>=C&&o<=w),r>S&&N.x<S&&(N.x=r,N.y=o),r<k&&z.x>k&&(z.x=r,z.y=o),null!==o||!L){if(null===o||!se&&!$&&!ee){fe();continue}if(A&&(J>=k||r>=k)&&(Q<=S||r<=S)&&(ie=!0),ie||$||ee){if(ne&&r-Q>
1ne&&fe(),V){let e;V.some(((t,i)=>{let s=V[i-1];return"x"===X?void 0!==t.value&&r<=t.value&&(f[i]&&(!s||r>=s.value)&&(e=f[i]),!0):void 0!==t.value&&o<=t.value&&(f[i]&&(!s||o>=s.value)&&(e=f[i]),!0)})),te=e||oe||te}if(c.useGPUTranslations||(t.skipTranslation=!0,r=y.toPixels(r,!0),o=P.toPixels(o,!0),!(r>W)||"POINTS"!==t.drawMode)){if(t.hasMarkers&&ie&&!1!==H&&(e.closestPointRangePx=Math.min(e.closestPointRangePx,Math.abs(r-H))),!c.useGPUTranslations&&!c.usePreallocated&&H&&1>Math.abs(r-H)&&Y&&1>Math.abs(o-Y)){c.debug.showSkipSummary&&++q;continue}O&&(i=h,(!1===h||void 0===h)&&(i=o<0?o:0),(p||v)&&!P.logarithmic||(i=Math.max(null===j?C:j,C)),c.useGPUTranslations||(i=P.toPixels(i,!0)),he(r,i,0,0,te)),x.step&&!re&&he(r,Y,0,2,te),he(r,o,0,"bubble"===e.type?l||1:2,te),H=r,Y=o,Z=!0,re=!1}}}}else fe()}c.debug.showSkipSummary&&console.log("skipped points:",q);let ce=(e,i)=>{c.useGPUTranslations||(t.skipTranslation=!0,e.x=y.toPixels(e.x,!0),e.y=P.toPixels(e.y,!0)),i?this.data=[e.x,e.y,0,2].concat(this.data):he(e.x,e.y,0,2)};!Z&&!1!==L&&"line_strip"===e.drawMode&&(z.x<Number.MAX_VALUE&&ce(z,!0),N.x>-Number.MAX_VALUE&&ce(N)),de()}pushSeries(e){let t=this.markerData,i=this.series,r=this.settings;i.length>0&&i[i.length-1].hasMarkers&&(i[i.length-1].markerTo=t.length),r.debug.timeSeriesProcessing&&console.time("building "+e.type+" series");let o={segments:[],markerFrom:t.length,colorData:[],series:e,zMin:Number.MAX_VALUE,zMax:-Number.MAX_VALUE,hasMarkers:!!e.options.marker&&!1!==e.options.marker.enabled,showMarkers:!0,drawMode:s[e.type]||"LINE_STRIP"};e.index>=i.length?i.push(o):i[e.index]=o,this.pushSeriesData(e,o),r.debug.timeSeriesProcessing&&console.timeEnd("building "+e.type+" series")}flush(){let e=this.vbuffer;this.data=[],this.markerData=[],this.series=[],e&&e.destroy()}setXAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("xAxisTrans",e.transA*i),t.setUniform("xAxisMin",e.min),t.setUniform("xAxisMinPad",e.minPixelPadding*i),t.setUniform("xAxisPointRange",e.pointRange),t.setUniform("xAxisLen",e.len*i),t.setUniform("xAxisPos",e.pos*i),t.setUniform("xAxisCVSCoord",!e.horiz),t.setUniform("xAxisIsLog",!!e.logarithmic),t.setUniform("xAxisReversed",!!e.reversed)}setYAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("yAxisTrans",e.transA*i),t.setUniform("yAxisMin",e.min),t.setUniform("yAxisMinPad",e.minPixelPadding*i),t.setUniform("yAxisPointRange",e.pointRange),t.setUniform("yAxisLen",e.len*i),t.setUniform("yAxisPos",e.pos*i),t.setUniform("yAxisCVSCoord",!e.horiz),t.setUniform("yAxisIsLog",!!e.logarithmic),t.setUniform("yAxisReversed",!!e.reversed)}setThreshold(e,t){let i=this.shader;i&&(i.setUniform("hasThreshold",e),i.setUniform("translatedThreshold",t))}renderChart(i){let s=this.gl,r=this.settings,a=this.shader,l=this.vbuffer,d=this.getPixelRatio();if(!i)return!1;this.width=i.chartWidth*d,this.height=i.chartHeight*d;let f=this.height,u=this.width;if(!(s&&a&&u&&f))return!1;r.debug.timeRendering&&console.time("gl rendering"),s.canvas.width=u,s.canvas.height=f,a.bind(),s.viewport(0,0,u,f),a.setPMatrix(b.orthoMatrix(u,f)),r.lineWidth>1&&!t.isMS&&s.lineWidth(r.lineWidth),l&&(l.build(this.data,"aVertexPosition",4),l.bind()),a.setInverted(i.inverted),this.series.forEach(((t,f)=>{let u,g,p,b=t.series.options,x=b.marker,A=void 0!==b.lineWidth?b.lineWidth:1,y=b.threshold,P=h(y),v=t.series.yAxis.getThreshold(y),E=c(b.marker?b.marker.enabled:null,!!t.series.xAxis.isRadial||null,t.series.closestPointRangePx>2*((b.marker?b.marker.radius:10)||10)),T=this.textureHandles[x&&x.symbol||t.series.symbol]||this.textureHandles.circle,k=[];if(0!==t.segments.length&&t.segments[0].from!==t.segments[0].to&&(T.isReady&&(s.bindTexture(s.TEXTURE_2D,T.handle),a.setTexture(T.handle)),i.styledMode?t.series.markerGroup===t.series.chart.boost?.markerGroup?(delete t.series.markerGroup,t.series.markerGroup=t.series.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker"),p=t.series.markerGroup.getStyle("fill"),t.series.markerGroup.destroy(),t.series.markerGroup=t.series.chart.boost?.markerGroup):p=t.series.markerGroup?.getStyle("fill"):(p="POINTS"===t.drawMode&&t.series.pointAttribs&&t.series.pointAttribs().fill||t.series.color,b.colorByPoint&&(p=t.series.chart.options.colors[f])),t.series.fillOpacity&&b.fillOpacity&&(p=new e(p).setOpacity(c(b.fillOpacity,1)).get()),k=n(p).rgba,r.useAlpha||(k[3]=1),"add"===b.boostBlending?(s.blendFunc(s.SRC_ALPHA,s.ONE),s.blendEquation(s.FUNC_ADD)):"mult"===b.boostBlending||"multiply"===b.boostBlending?s.blendFunc(s.DST_COLOR,s.ZERO):"darken"===b.boostBlending?(s.blendFunc(s.ONE,s.ONE),s.blendEquation(s.FUNC_MIN)):s.blendFuncSeparate(s.SRC_ALPHA,s.ONE_MINUS_SRC_ALPHA,s.ONE,s.ONE_MINUS_SRC_ALPHA),a.reset(),t.colorData.length>0?(a.setUniform("hasColor",1),(g=new o(s,a)).build(Array(t.segments[0].from).concat(t.colorData),"aColor",4),g.bind()):(a.setUniform("hasColor",0),s.disableVertexAttribArray(s.getAttribLocation(a.getProgram(),"aColor"))),a.setColor(k),this.setXAxis(t.series.xAxis),this.setYAxis(t.series.yAxis),this.setThreshold(P,v),"POINTS"===t.drawMode&&a.setPointSize(2*c(b.marker&&b.marker.radiu
1s,.5)*d),a.setSkipTranslation(t.skipTranslation),"bubble"===t.series.type&&a.setBubbleUniforms(t.series,t.zMin,t.zMax,d),a.setDrawAsCircle(m[t.series.type]||!1),l)){if(A>0||"LINE_STRIP"!==t.drawMode)for(u=0;u<t.segments.length;u++)l.render(t.segments[u].from,t.segments[u].to,t.drawMode);if(t.hasMarkers&&E)for(a.setPointSize(2*c(b.marker&&b.marker.radius,5)*d),a.setDrawAsCircle(!0),u=0;u<t.segments.length;u++)l.render(t.segments[u].from,t.segments[u].to,"POINTS")}})),r.debug.timeRendering&&console.timeEnd("gl rendering"),this.postRenderCallback&&this.postRenderCallback(this),this.flush()}render(e){if(this.clear(),e.renderer.forExport)return this.renderChart(e);this.isInited?this.renderChart(e):setTimeout((()=>{this.render(e)}),1)}setSize(e,t){let i=this.shader;i&&(this.width!==e||this.height!==t)&&(this.width=e,this.height=t,i.bind(),i.setPMatrix(b.orthoMatrix(e,t)))}init(e,t){let i=this.settings;if(this.isInited=!1,!e)return!1;i.debug.timeSetup&&console.time("gl setup");for(let t=0;t<p.length&&(this.gl=e.getContext(p[t],{}),!this.gl);++t);let s=this.gl;if(!s)return!1;t||this.flush(),s.enable(s.BLEND),s.blendFunc(s.SRC_ALPHA,s.ONE_MINUS_SRC_ALPHA),s.disable(s.DEPTH_TEST),s.depthFunc(s.LESS);let n=this.shader=new r(s);if(!n)return!1;this.vbuffer=new o(s,n);let l=(e,t)=>{let i={isReady:!1,texture:a.createElement("canvas"),handle:s.createTexture()},r=i.texture.getContext("2d");this.textureHandles[e]=i,i.texture.width=512,i.texture.height=512,r.mozImageSmoothingEnabled=!1,r.webkitImageSmoothingEnabled=!1,r.msImageSmoothingEnabled=!1,r.imageSmoothingEnabled=!1,r.strokeStyle="rgba(255, 255, 255, 0)",r.fillStyle="#FFF",t(r);try{s.activeTexture(s.TEXTURE0),s.bindTexture(s.TEXTURE_2D,i.handle),s.texImage2D(s.TEXTURE_2D,0,s.RGBA,s.RGBA,s.UNSIGNED_BYTE,i.texture),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_S,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_T,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MAG_FILTER,s.LINEAR),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MIN_FILTER,s.LINEAR),s.bindTexture(s.TEXTURE_2D,null),i.isReady=!0}catch(e){}};return l("circle",(e=>{e.beginPath(),e.arc(256,256,256,0,2*Math.PI),e.stroke(),e.fill()})),l("square",(e=>{e.fillRect(0,0,512,512)})),l("diamond",(e=>{e.beginPath(),e.moveTo(256,0),e.lineTo(512,256),e.lineTo(256,512),e.lineTo(0,256),e.lineTo(256,0),e.fill()})),l("triangle",(e=>{e.beginPath(),e.moveTo(0,512),e.lineTo(256,0),e.lineTo(512,512),e.lineTo(0,512),e.fill()})),l("triangle-down",(e=>{e.beginPath(),e.moveTo(0,0),e.lineTo(256,512),e.lineTo(512,0),e.lineTo(0,0),e.fill()})),this.isInited=!0,i.debug.timeSetup&&console.timeEnd("gl setup"),!0}destroy(){let e=this.gl,t=this.shader,i=this.vbuffer;this.flush(),i&&i.destroy(),t&&t.destroy(),e&&(u(this.textureHandles,(t=>{t.handle&&e.deleteTexture(t.handle)})),e.canvas.width=1,e.canvas.height=1)}}return b}
1)),i(t,"Extensions/Boost/BoostSeries.js",[t["Extensions/Boost/BoostableMap.js"],t["Extensions/Boost/Boostables.js"],t["Extensions/Boost/BoostChart.js"],t["Core/Defaults.js"],t["Core/Globals.js"],t["Core/Utilities.js"],t["Extensions/Boost/WGLRenderer.js"]],(function(e,t,i,s,r,o,n){let a,l,{getBoostClipRect:h,isChartSeriesBoosting:d}=i,{getOptions:f}=s,{composed:u,doc:c,noop:g,win:m}=r,{addEvent:p,destroyObjectProperties:b,error:x,extend:A,fireEvent:y,isArray:P,isNumber:v,pick:E,pushUnique:T,wrap:k,defined:S}=o;function M(e,t){let i=t.boost;e&&i&&i.target&&i.canvas&&!d(t.chart)&&e.allocateBufferForSingleSeries(t)}function C(e){return E(e&&e.options&&e.options.boost&&e.options.boost.enabled,!0)}function w(e,t){let i=e.constructor,s=e.seriesGroup||t.group,r=e.chartWidth,o=e.chartHeight,a=e,f="undefined"!=typeof SVGForeignObjectElement,u=!1;d(e)?a=e:(a=t,u=!(!t.options.events?.click&&!t.options.point?.events?.click));let g=a.boost=a.boost||{};if(f=!1,l||(l=c.createElement("canvas")),!g.target&&(g.canvas=l,e.renderer.forExport,a.renderTarget=g.target=e.renderer.image("",0,0,r,o).addClass("highcharts-boost-canvas").add(s),g.clear=function(){g.target.attr({href:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="})},g.copy=function(){g.resize(),g.target.attr({href:g.canvas.toDataURL("image/png")})},g.resize=function(){r=e.chartWidth,o=e.chartHeight,(g.targetFo||g.target).attr({x:0,y:0,width:r,height:o}).css({pointerEvents:u?void 0:"none",mixedBlendMode:"normal",opacity:1}).addClass(u?"highcharts-tracker":""),a instanceof i&&a.boost?.markerGroup?.translate(e.plotLeft,e.plotTop)},g.clipRect=e.renderer.clipRect(),(g.targetFo||g.target).attr({zIndex:t.options.zIndex}),a instanceof i&&(a.boost.markerGroup=a.renderer.g().add(s).translate(t.xAxis.pos,t.yAxis.pos))),g.canvas.width=r,g.canvas.height=o,g.clipRect){let t=h(e,a),i=t.width===e.clipBox.width&&t.height===e.clipBox.height?s:g.targetFo||g.target;g.clipRect.attr(t),i?.clip(g.clipRect)}return g.resize(),g.clear(),!g.wgl&&(g.wgl=new n((e=>{e.settings.debug.timeBufferCopy&&console.time("buffer copy"),g.copy(),e.settings.debug.timeBufferCopy&&console.timeEnd("buffer copy")})),g.wgl.init(g.canvas)||x("[highcharts boost] - unable to init WebGL renderer"),g.wgl.setOptions(e.options.boost||{}),a instanceof i&&g.wgl.allocateBuffer(e)),g.wgl.setSize(r,o),g.wgl}function U(e){let t=e.points;if(t){let e,i;for(i=0;i<t.length;i+=1)(e=t[i])&&e.destroyElements&&e.destroyElements()}for(let t of(["graph","area","tracker"].forEach((t=>{let i=e[t];i&&(e[t]=i.destroy())})),e.zones))b(t,void 0,!0)}function R(e,t,i,s,r,o){let n=(r=r||0)+(s=s||3e3),a=!0;for(;a&&r<n&&r<e.length;)a=t(e[r],r),++r;a&&(r<e.length?o?R(e,t,i,s,r,o):m.requestAnimationFrame?m.requestAnimationFrame((function(){R(e,t,i,s,r)})):setTimeout(R,0,e,t,i,s,r):i&&i())}function B(e,t){let i=e.options,s=i.data,r=e.xAxis&&e.xAxis.options,o=e.yAxis&&e.yAxis.options,n=e.colorAxis&&e.colorAxis.options;return s.length>(i.boostThreshold||Number.MAX_VALUE)&&v(o.min)&&v(o.max)&&(!t||v(r.min)&&v(r.max))&&(!n||v(n.min)&&v(n.max))}let D=(e,t)=>!e.forceCrop&&(d(e.chart)||(t?t.length:0)>=(e.options.boostThreshold||Number.MAX_VALUE));function L(){let e=this,t=e.chart;t.boost&&t.boost.markerGroup===e.markerGroup&&(e.markerGroup=null),t.hoverPoints&&(t.hoverPoints=t.hoverPoints.filter((function(t){return t.series===e}))),t.hoverPoint&&t.hoverPoint.series===e&&(t.hoverPoint=null)}function _(){let e=this.boost;e&&e.canvas&&e.target&&(e.wgl&&e.wgl.clear(),e.clear&&e.clear())}function G(e){let t=e.boost;t&&t.canvas&&t.target&&t.wgl&&!d(e.chart)&&t.wgl.render(e.chart)}function z(e,t){let i=e.options,s=e.xAxis,r=e.pointClass;if(t instanceof r)return t;let o=e.xData||i.xData||e.processedXData||!1,n=new r(e,(e.options.data||[])[t.i],o?o[t.i]:void 0);return n.category=E(s.categories?s.categories[n.x]:n.x,n.x),n.dist=t.dist,n.distX=t.distX,n.plotX=t.plotX,n.plotY=t.plotY,n.index=t.i,n.percentage=t.percentage,n.isInside=e.isPointInside(n),n}function N(e){var t,i,s,r;let{options:o,xAxis:n,yAxis:a}=this;if(!(this.isDirty||n.isDirty||a.isDirty||e))return!1;this.yAxis.setTickInterval();let l=o.boostThreshold||0,h=o.cropThreshold,d=o.data||this.data,f=this.xData,u=n.getExtremes(),c=u.max??Number.MAX_VALUE,g=u.min??-Number.MAX_VALUE,m=this.yData,p=a.getExtremes(),b=p.max??Number.MAX_VALUE,x=p.min??-Number.MAX_VALUE;if(!this.boosted&&n.old&&a.old&&g>=(n.old.min??-Number.MAX_VALUE)&&c<=(n.old.max??Number.MAX_VALUE)&&x>=(a.old.min??-Number.MAX_VALUE)&&b<=(a.old.max??Number.MAX_VALUE))return this.processedXData??(this.processedXData=f),this.processedYData??(this.processedYData=m),!0;if(!l||d.length<l||h&&!this.forceCrop&&!this.getExtremesFromAll&&!o.getExtremesFromAll&&d.length<h)return this.processedXData=f,this.processedYData=m,!0;let A,y,P=[],E=[],T=[],k=!(v(u.max)||v(u.min)),S=!(v(p.max)||v(p.min)),M=!1,C=f[0],w=f[0],U=m[0],R=m[0];for(let e=0,t=f.length;e<t;++e)A=f[e],y=m[e],A>=g&&A<=c&&y>=x&&y<=b?(P.push({x:A,y}),E.push(A),T.push(y),k&&(C=Math.max(C,A),w=Math.min(w,A)),S&&(U=Math.max(U,y),R=Math.min(R,y))):M=!0;return k&&((t=n.options).max??(t.max=C),(i=n.options).min??(i.min=w)),S&&((s=a.options).max??(s.max=U),(r=a.options).min??(r.min=R)),this.cropped=M,this.cropStart=0,this.processedXData=E,this.processedYData=T,D(this,E)||(this.processedData=P),!0}function I(){let e,t,i,s,r,o=this.options||{},n=this.chart,l=n.boost,h=this.boost,f=this.xAxis,u=this.yAxis,c=o.xData||this.processedXData,m=o.yData||this.processedYData,p=this.processedData||o.data,b=f.getExtremes(),x=b.min-(f.minPointOffset||0),A=b.max+(f.minPointOffset||0),P=u.getExtremes(),v=P.min-(u.minPointOffset||0),T=P.max+(u.minPointOffset||0),k={},C=!!this.sampling,B=o.enableMouseTracking,D=o.threshold,L=this.pointArrayMap&&"low,high"===this.pointArrayMap.join(","),_=!!o.stacking,z=this.cropStart||0,N=this.requireSorting,I=!c,O="x"===o.findNearestPointBy,X=this.xData||this.options.xData||this.processedXData||!1,V=E(o.lineWidth,1),j=!1,F=u.getThreshold(D);if(f.isPanning||u.isPanning||(j=w(n,this),n.boosted=!0,!this.visible))return;(this.points||this.graph)&&U(this),d(n)?(this.markerGroup&&this.markerGroup!==l?.markerGroup&&this.markerGroup.destroy(),this.markerGroup=l?.markerGroup,h&&h.target&&(this.renderTarget=h.target=h.target.destroy())):(this.markerGroup===l?.markerGroup&&(this.markerGroup=void 0),this.markerGroup=this.plotGroup("markerGroup","markers","visible",1,n.seriesGroup).addClass("highcharts-tracker"));let W=this.points=[],H=(e,t,i,s)=>{let r=!!X&&X[z+i],o=e=>{n.inverted&&(e=f.len-e,t=u.len-t),W.push({destroy:g,x:r,clientX:e,plotX:e,plotY:t,i:z+i,percentage:s})};e=Math.ceil(e),a=O?e:e+","+t,B&&(k[a]?r===X[X.length-1]&&(W.length--,o(e)):(k[a]=!0,o(e)))};this.buildKDTree=g,y(this,"renderCanvas"),this.is("line")&&V>1&&h?.target&&l&&!l.lineWidthFilter&&(l.lineWidthFilter=n.renderer.definition({tagName:"filter",children:[{tagName:"feMorphology",attributes:{operator:"dilate",radius:.25*V}}],attributes:{id:"linewidth"}}
1),h.target.attr({filter:"url(#linewidth)"})),j&&(M(j,this),j.pushSeries(this),G(this));let Y=j.settings;n.renderer.forExport||(Y.debug.timeKDTree&&console.time("kd tree building"),R(_?this.data.slice(z):c||p,(function(o,a){let l,h,d,c,g,p=void 0===n.index,b=!1,y=!0;return!S(o)||(!p&&(I?(l=o[0],h=o[1]):(l=o,h=m[a]),L?(I&&(h=o.slice(1,3)),b=h[0],h=h[1]):_&&(l=o.x,b=(h=o.stackY)-o.y,g=o.percentage),N||(y=(h||0)>=v&&h<=T),null!==h&&l>=x&&l<=A&&y&&(d=f.toPixels(l,!0),C?((void 0===s||d===e)&&(L||(b=h),(void 0===r||h>i)&&(i=h,r=a),(void 0===s||b<t)&&(t=b,s=a)),O&&d===e||(void 0!==s&&(c=u.toPixels(i,!0),F=u.toPixels(t,!0),H(d,c,r,g),F!==c&&H(d,F,s,g)),s=r=void 0,e=d)):H(d,c=Math.ceil(u.toPixels(h,!0)),a,g))),!p)}),(()=>{y(this,"renderedCanvas"),delete this.buildKDTree,this.options&&this.buildKDTree(),Y.debug.timeKDTree&&console.timeEnd("kd tree building")})))}function O(e){let t=!0;if(this.chart.options&&this.chart.options.boost&&(t=void 0===this.chart.options.boost.enabled||this.chart.options.boost.enabled),!t||!this.boosted)return e.call(this);this.chart.boosted=!0;let i=w(this.chart,this);i&&(M(i,this),i.pushSeries(this)),G(this)}function X(e){if(this.boosted){if(B(this))return{};if(this.xAxis.isPanning||this.yAxis.isPanning)return this}return e.apply(this,[].slice.call(arguments,1))}function V(t){let i=this.options.data;if(C(this.chart)&&e[this.type]){let e=this.is("scatter")&&!this.is("bubble")&&!this.is("heatmap");if(!D(this,i)||e||this.options.stacking||!B(this,!0)){if(this.boosted&&(this.xAxis?.isPanning||this.yAxis?.isPanning))return;e&&!this.yAxis.treeGrid?N.call(this,arguments[1]):t.apply(this,[].slice.call(arguments,1)),i=this.processedXData}if(this.boosted=D(this,i),this.boosted){let e;this.options.data&&this.options.data.length&&!v(e=this.getFirstValidPoint(this.options.data))&&!P(e)&&x(12,!1,this.chart),function(e){e.boost=e.boost||{getPoint:t=>z(e,t)};let t=e.boost.altered=[];if(["allowDG","directTouch","stickyTracking"].forEach((i=>{t.push({prop:i,val:e[i],own:Object.hasOwnProperty.call(e,i)})})),e.allowDG=!1,e.directTouch=!1,e.stickyTracking=!0,e.finishedAnimating=!0,e.labelBySeries&&(e.labelBySeries=e.labelBySeries.destroy()),e.is("scatter")&&e.data.length){for(let t of e.data)t?.destroy?.();e.data.length=0,e.points.length=0,delete e.processedData}}(this)}else!function(e){let t=e.boost,i=e.chart,s=i.boost;if(s?.markerGroup)for(let e of(s.markerGroup.destroy(),s.markerGroup=void 0,i.series))e.markerGroup=void 0,e.markerGroup=e.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker");t&&((t.altered||[]).forEach((t=>{t.own?e[t.prop]=t.val:delete e[t.prop]})),t.clear&&t.clear()),(i.seriesGroup||e.group)?.clip()}(this)}else t.apply(this,[].slice.call(arguments,1))}function j(e){let t=e.apply(this,[].slice.call(arguments,1));return this.boost&&t?this.boost.getPoint(t):t}return{compose:function(i,s,r){if(T(u,"Boost.Series")){let o=f().plotOptions,n=i.prototype;if(p(i,"destroy",L),p(i,"hide",_),r&&(n.renderCanvas=I),k(n,"getExtremes",X),k(n,"processData",V),k(n,"searchPoint",j),["translate","generatePoints","drawTracker","drawPoints","render"].forEach((t=>function(t,i,s){function r(t){let i=this.options.stacking&&("translate"===s||"generatePoints"===s);this.boosted&&!i&&C(this.chart)&&"heatmap"!==this.type&&"treemap"!==this.type&&e[this.type]&&0!==this.options.boostThreshold?"render"===s&&this.renderCanvas&&this.renderCanvas():t.call(this)}if(k(t,s,r),"translate"===s)for(let e of["column","arearange","columnrange","heatmap","treemap"])i[e]&&k(i[e].prototype,s,r)}(n,s,t))),t.forEach((e=>{let t=o[e];t&&(t.boostThreshold=5e3,t.boostData=[],s[e].prototype.fillOpacity=!0)})),r){let{area:e,areaspline:t,bubble:i,column:r,heatmap:o,scatter:n,treemap:a}=s;if(e&&A(e.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),t&&A(t.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),i){let e=i.prototype;delete e.buildKDTree,k(e,"markerAttribs",(function(e){return!this.boosted&&e.apply(this,[].slice.call(arguments,1))}))}r&&A(r.prototype,{fill:!0,sampling:!0}),n&&(n.prototype.fill=!0),[o,a].forEach((e=>{e&&k(e.prototype,"drawPoints",O)}))}}return i},destroyGraphics:U,eachAsync:R,getPoint:z}}
1)),i(t,"Extensions/Boost/NamedColors.js",[],(function(){return{defaultHTMLColorMap:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",feldspar:"#d19275",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslateblue:"#8470ff",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",violetred:"#d02090",wheat:"#f5deb3",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"}}}
1)),i(t,"Extensions/Boost/Boost.js",[t["Extensions/Boost/BoostChart.js"],t["Extensions/Boost/BoostSeries.js"],t["Core/Globals.js"],t["Extensions/Boost/NamedColors.js"],t["Core/Utilities.js"]],(function(e,t,i,s,r){let{doc:o,win:n}=i,{addEvent:a,error:l}=r,h=["webgl","experimental-webgl","moz-webgl","webkit-3d"];function d(){let e;if(void 0!==n.WebGLRenderingContext){e=o.createElement("canvas");for(let t=0;t<h.length;++t)try{if(null!=e.getContext(h[t]))return!0}catch(e){}}return!1}return{compose:function(r,o,n,h,f){let u=d();u||(void 0!==i.initCanvasBoost?i.initCanvasBoost():l(26)),f&&!f.names.lightgoldenrodyellow&&(f.names={...f.names,...s.defaultHTMLColorMap}),e.compose(r,u),t.compose(n,h,u),a(o,"setExtremes",(function(e){for(let t of[this.chart,...this.series].map((e=>e.renderTarget)).filter(Boolean)){let{horiz:i,pos:s}=this,r=i?"scaleX":"scaleY",o=i?"translateX":"translateY",n=t?.[r]??1,a=1,l=0,h=1,d="none";this.isPanning&&(a=(e.scale??1)*n,l=(t?.[o]||0)-a*(e.move||0)+n*s-a*s,h=.7,d="blur(3px)"),t?.attr({[r]:a,[o]:l}).css({transition:"250ms filter, 250ms opacity",filter:d,opacity:h})}}))},hasWebGLSupport:d}})),i(t,"masters/modules/boost.src.js",[t["Core/Globals.js"],t["Extensions/
1Boost/Boost.js"]],(function(e,t){return e.hasWebGLSupport=t.hasWebGLSupport,t.compose(e.Chart,e.Axis,e.Series,e.seriesTypes,e.Color),e}))},e.exports?(o.default=o,e.exports=o):(s=[i(6147)],void 0===(r=function(e){return o(e),o.Highcharts=e,o}.apply(t,s))||(e.exports=r))}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.